TRL documentation

Eksperimental

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

Eksperimental

Direktori ini berisi ruang minimal yang dipisahkan dengan jelas untuk iterasi cepat pada ide-ide baru.

Kontrak stabilitas: Apa pun di bawah trl.experimental dapat berubah atau dihapus pada setiap rilis (termasuk versi patch) tanpa deprekasi sebelumnya. Jangan andalkan API ini untuk beban kerja produksi.

Jalur Promosi (Sederhana)

  1. Prototipe di luar repo utama: Mulai pengembangan di fork Anda sendiri atau repositori terpisah untuk iterasi yang cepat.
  2. Inklusi eksperimental: Setelah siap untuk pengguna awal, pindahkan ide tersebut ke trl.experimental.<feature>.
  3. Perbaiki: Tambahkan pengujian, dokumentasi/contoh singkat, dan tunjukkan cara penggunaannya.
  4. Promosikan: Setelah API terbukti stabil dan terdapat minat atau adopsi yang jelas dari komunitas, pindahkan ke trl.<feature> (modul stabil).

Penghapusan

Experimental adalah area staging, bukan penyimpanan jangka panjang: sebuah fitur akan dipromosikan atau dihapus. Penghapusan tidak memerlukan siklus deprecation, sebagaimana dinyatakan dalam kontrak stabilitas di atas. Kode tetap tersedia dalam riwayat git, dan entri indeks paper tetap ada, menunjuk ke rilis terakhir yang menyertakan implementasi tersebut.

Tidak ada ambang batas yang memicu penghapusan. Ini adalah keputusan penilaian, yang dibuat dalam pull request penghapusan dengan angka-angka di depan semua orang. Yang ditimbang oleh penilaian tersebut:

  • Penggunaan. Telemetri, tag Hub, dan balasan pada pull request atau pada thread diskusi. Tidak ada satu pun yang bersifat konklusif secara mandiri, tetapi jika semuanya senyap, itu merupakan sinyal yang kuat.
  • Isu eksternal dan pull request yang berasal dari menjalankan fitur, bukan laporan yang dihasilkan dari pemindaian kode.
  • Apakah trainer yang stabil sudah mencakupnya. Jika iya, hal itu lebih penting daripada penggunaan.
  • Biaya. Waktu CI, pemeliharaan, beban triase.
  • Pengguna hilir. Perpustakaan yang mengimpor itu.
  • Pemilik. Seseorang yang inginnya dipromosikan dan bersedia melakukan pekerjaannya.
  • Usia. Apakah model tersebut sudah tersedia cukup lama sehingga komunitas dapat menemukannya dan mencobanya.

FAQ

Mengapa tidak cukup menggunakan cabang? Karena cabang tidak dikirimkan ke pengguna; kode eksperimental di dalam paket memungkinkan pengguna awal untuk mencoba hal-hal baru dan memberikan umpan balik.

Apakah API-API ini dapat berubah atau hilang tanpa peringatan? Ya. Apa pun di dalam trl.experimental dapat berubah atau hilang di setiap rilis.

Apakah saya harus menggunakan ini di produksi? Hanya jika Anda tidak keberatan memperbarui kode Anda dengan cepat ketika ada perubahan.

Apakah maintainer akan segera memperbaiki masalah di trl.experimental? Belum tentu. Modul eksperimental adalah tempat bermain untuk ide-ide baru, dan maintainer mungkin tidak memprioritaskan perbaikan bug atau permintaan fitur di sana. Masalah mungkin tetap tidak terselesaikan sampai (atau kecuali) fitur tersebut lulus ke API stabil.

Saya berkontribusi pada implementasi paper. Bisakah dihapus? Ya. Apa pun di bawah trl.experimental dapat dihapus, termasuk implementasi paper. Jika itu terjadi, entri indeks paper tetap ada dan menunjuk ke rilis terakhir yang menyertakan kode tersebut.

Cara membisukan pemberitahuan runtime?

Gunakan: export TRL_EXPERIMENTAL_SILENCE=1.

Update on GitHub