TRL documentation

Thử nghiệm

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v1.17.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Thử nghiệm

Thư mục này chứa một không gian tối giản, được tách biệt rõ ràng để lặp lại nhanh chóng các ý tưởng mới.

Cam kết về tính ổn định: Mọi thứ nằm trong trl.experimental có thể bị thay đổi hoặc loại bỏ trong bất kỳ phiên bản phát hành nào (bao gồm cả các phiên bản vá) mà không cần thông báo ngừng hỗ trợ trước. Không nên dựa vào các API này cho các tác vụ sản xuất.

Lộ trình thăng tiến (Đơn giản)

  1. Nguyên mẫu bên ngoài kho chính: Bắt đầu phát triển trong fork của bạn hoặc một kho riêng để lặp lại nhanh chóng.
  2. Bao gồm thử nghiệm: Khi đã sẵn sàng cho người dùng sớm, hãy chuyển ý tưởng vào trl.experimental.<feature>.
  3. Cải thiện: Thêm các bài kiểm tra, một tài liệu/ví dụ ngắn và minh họa cách sử dụng.
  4. Đưa lên: Khi API được chứng minh là ổn định và có sự quan tâm hoặc áp dụng rõ ràng từ cộng đồng, hãy chuyển nó vào trl.<feature> (module ổn định).

Xóa

Experimental là khu vực tạm thời, không phải nơi lưu trữ dài hạn: một tính năng sẽ được nâng cấp hoặc loại bỏ. Việc loại bỏ không cần chu kỳ ngừng hỗ trợ, như đã nêu trong cam kết về độ ổn định ở trên. Mã nguồn vẫn có sẵn trong lịch sử git, và mục chỉ mục bài báo vẫn được giữ lại, trỏ đến phiên bản phát hành cuối cùng có chứa triển khai đó.

Không có ngưỡng nào kích hoạt việc loại bỏ. Đây là một quyết định mang tính phán đoán, được đưa ra trong yêu cầu kéo (pull request) loại bỏ với các con số được đặt ra trước mắt tất cả mọi người. Những yếu tố mà phán đoán đó cân nhắc:

  • Cách sử dụng. Telemetry, các thẻ Hub, và các phản hồi trên pull request hoặc trên một luồng thảo luận. Không có yếu tố nào trong số đó là quyết định một cách riêng lẻ, nhưng nếu tất cả đều im lặng thì đó là một tín hiệu mạnh.
  • Các vấn đề và yêu cầu kéo (pull request) bên ngoài phát sinh từ việc chạy tính năng, trái ngược với các báo cáo được tạo ra từ việc quét mã nguồn.
  • Trainer ổn định có sẵn đã bao gồm tính năng này chưa. Nếu có, điều đó quan trọng hơn mức độ sử dụng.
  • Chi phí. Thời gian CI, bảo trì, khối lượng phân loại sự cố.
  • Người dùng hạ nguồn. Các thư viện nhập nó.
  • Người sở hữu. Người muốn đề xuất nâng cấp và sẵn sàng thực hiện công việc.
  • Độ tuổi. Liệu nó đã có mặt đủ lâu để cộng đồng tìm thấy và thử nghiệm.

Câu hỏi thường gặp

Vì sao không chỉ dùng nhánh (branch)? Vì nhánh không được phát hành cho người dùng; mã thử nghiệm bên trong gói cho phép những người dùng sớm thử nghiệm và đưa ra phản hồi.

Các API này có thể thay đổi hoặc biến mất mà không có cảnh báo không? Có. Bất kỳ thứ gì bên trong trl.experimental đều có thể thay đổi hoặc biến mất trong bất kỳ bản phát hành nào.

Tôi có nên sử dụng điều này trong môi trường production không? Chỉ khi bạn sẵn sàng cập nhật mã nguồn của mình nhanh chóng khi có thay đổi.

Người duy trì có sửa nhanh các vấn đề trong trl.experimental không? Không nhất thiết. Module thử nghiệm là nơi thử nghiệm các ý tưởng mới, và người duy trì có thể không ưu tiên sửa lỗi hoặc yêu cầu tính năng ở đó. Các vấn đề có thể vẫn chưa được giải quyết cho đến khi (hoặc trừ khi) tính năng được đưa vào API ổn định.

Tôi đã đóng góp một bản cài đặt từ bài báo. Nó có thể bị gỡ bỏ không? Có. Bất kỳ thứ gì nằm dưới trl.experimental đều có thể bị gỡ bỏ, bao gồm cả các bản cài đặt từ bài báo. Nếu điều đó xảy ra, mục chỉ mục bài báo sẽ được giữ lại và trỏ đến phiên bản phát hành cuối cùng có chứa mã nguồn đó.

Cách tắt thông báo thời gian chạy?

Cách sử dụng: export TRL_EXPERIMENTAL_SILENCE=1.

Update on GitHub