LeRobot documentation

Cara berkontribusi pada 🤗 LeRobot

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

and get access to the augmented documentation experience

to get started

Cara berkontribusi pada 🤗 LeRobot

Semua orang dipersilakan untuk berkontribusi, dan kami menghargai kontribusi setiap orang. Kode bukanlah satu-satunya cara untuk membantu komunitas. Menjawab pertanyaan, membantu orang lain, menjalin kontak, dan meningkatkan dokumentasi sangat bernilai.

Bagaimana pun cara Anda memilih untuk berkontribusi, harap perhatikan untuk menghormati kode etik dan kebijakan AI kami.

Cara Berkontribusi

Anda dapat berkontribusi dengan berbagai cara:

  • Memperbaiki masalah: Menyelesaikan bug atau meningkatkan kode yang sudah ada.
  • Fitur baru: Kembangkan fitur baru.
  • Perluas: Implementasikan model/kebijakan, robot, atau lingkungan simulasi baru dan unggah dataset ke Hugging Face Hub.
  • Dokumentasi: Perbaiki contoh, panduan, dan docstring.
  • Masukan: Kirim tiket terkait bug atau fitur baru yang diinginkan.

Menambahkan perangkat keras baru? Robot, teleoperator, dan kamera biasanya paling baik berfungsi sebagai paket plugin mandiri daripada perubahan pada pustaka inti. Ikuti Bring Your Own Hardware, terbitkan paket Anda, lalu buka PR untuk menambahkannya ke Third-Party Robots & Teleoperators atau Third-Party Cameras & Sensors.

Jika Anda belum yakin harus mulai dari mana, bergabunglah dengan Kanal Discord kami.

Pengaturan Pengembangan

Untuk berkontribusi kode, Anda perlu menyiapkan lingkungan pengembangan.

1. Fork dan Clone

Fork repositori di GitHub, lalu clone fork Anda:

git clone https://github.com/<your-handle>/lerobot.git
cd lerobot
git remote add upstream https://github.com/huggingface/lerobot.git

2. Instalasi Lingkungan

Silakan ikuti Panduan Instalasi kami untuk pengaturan lingkungan & instalasi dari sumber.

Menjalankan Tes & Pengecekan Kualitas

Gaya Kode (Pre-commit)

Instal hook pre-commit untuk menjalankan pemeriksaan secara otomatis sebelum Anda melakukan commit:

pre-commit install

Untuk menjalankan pemeriksaan secara manual pada semua file:

pre-commit run --all-files

Docstring

Referensi API dibuat dari docstring di src/lerobot/. Jika Anda menambahkan atau mengubah sesuatu yang bersifat publik, ikuti standar docstring — formatnya diparsing oleh renderer dan diperiksa di CI.

Menjalankan Tes

Kami menggunakan pytest. Pertama, pastikan Anda memiliki artefak pengujian dengan menginstal git-lfs:

git lfs install
git lfs pull

Jalankan seluruh suite (hal ini mungkin memerlukan instalasi extras):

pytest -sv ./tests

Atau jalankan file tes tertentu selama pengembangan:

pytest -sv tests/test_specific_feature.py

CI Fast Tests menjalankan satu tier per extra (base, dataset, hardware, viz) dan memilih tes dari masing-masing tier dengan pytest mark. Jika tes Anda memerlukan extra dataset, hardware atau viz, beri tanda (pytestmark = pytest.mark.dataset untuk seluruh file, @pytest.mark.dataset untuk satu tes). Tes tanpa tanda hanya dijalankan di tier base, di mana tes yang memerlukan extra akan dilewati. Untuk menjalankan satu tier secara lokal:

pytest -sv tests -m dataset

CI Uji GPU hanya menjalankan uji yang ditandai gpu. Setiap uji di bawah tests/policies dan setiap uji @require_cuda mendapatkannya secara otomatis; tandai uji lain yang menggunakan CUDA dengan @pytest.mark.gpu.

Mengirimkan Masalah & Permintaan Tarikan

Gunakan template untuk bidang wajib dan contoh.

  • Isu: Ikuti template tiket.
  • Pull request: Rebase pada upstream/main, gunakan branch yang deskriptif (jangan bekerja di main), jalankan pre-commit dan tes secara lokal, serta ikuti template PR.

Kebijakan Ulasan Komunitas: Untuk membantu memperluas upaya kami dan menumbuhkan lingkungan kolaboratif, kami meminta kontributor untuk meninjau setidaknya satu PR terbuka milik orang lain sebelum PR mereka sendiri mendapat perhatian. Tanggung jawab bersama ini melipatgandakan kapasitas peninjauan kami dan membantu kode semua orang digabungkan lebih cepat!

Setelah Anda mengirim PR dan menyelesaikan peer review, anggota tim LeRobot akan meninjau kontribusi Anda.

Terima kasih telah berkontribusi pada LeRobot!

Update on GitHub