Robot pada satu tumpukan: Strands, LeRobot, dan Kotak Penyimpanan Wajah Hugging untuk loop penuh - dari rekaman ke penyebaran

21 Agustus 202620 tampilan

Dalam materi Amazon baru, hal ini ditunjukkan bagaimana membangun proses akhir dari Strands Agents SDK: robot merekam demonstrasi untuk Storage Bucket, model kereta api pada data streaming langsung dari Hub, dan pos pemeriksaan selesai kembali ke perangkat keras yang sama dengan mengubah parameter tunggal. Pendekatan ini menghilangkan kebutuhan untuk konversi dan penyimpanan lokal dari salinan data.

Robot pada satu tumpukan: Strands, LeRobot, dan Kotak Penyimpanan Wajah Hugging untuk loop penuh - dari rekaman ke penyebaran

Loop tertutup tanpa pergantian konteks

Pipa proyek robotika tradisional dibagi menjadi tahap yang terisolasi: pertama, demonstrasi dikumpulkan pada perangkat keras nyata atau simulasi, maka data dipindahkan ke sistem terpisah untuk pelatihan, dan setelah itu, model terlatih perlu disebarkan kembali ke robot. Setiap transisi membutuhkan konversi format, sinkronisasi manual, dan setup lingkungan. Akibatnya, banyak waktu berlalu dari merekam episode pertama ke menjalankan kebijakan, dan setiap perubahan ke data menjadi operasi terpisah.

Pendekatan baru, disajikan oleh tim AWS pada Agustus 2026, menutup loop ini di satu tempat. Alih-alih beberapa alat tidak terhubung, satu agen diusulkan yang dapat merekam demonstrasi, mengirim mereka ke penyimpanan awan, melatih model pada mereka, dan kembali pos pemeriksaan terbaru ke robot. Ide kuncinya bukan untuk mentransfer data antar sistem, tapi untuk bekerja dengannya secara streaming, langsung dari penyimpanan.

Perkakas Agen dan SDK

Dasar dari solusi adalah Strands Robot - SDK terbuka dari AWS yang didistribusikan dengan lisensi Apache 2.0. Ini menyediakan abstrak robotika, simulasi, dan LeRobot stack sebagai set dari AgentTools. Alat-alat ini dibuat menjadi satu agen Strands: robot, simulator, dan pemrosesan data menjadi modul yang dapat diubah.

Pusat Robot() pabrik memecahkan nama terhadap registri perangkat yang didukung. Daftar ini termasuk manipulator, robot humanoid, basis mobile, dan senjata berdiri sendiri. Salah satu konfigurasi yang tersedia adalah SO- 100, manipulator ringan sering digunakan untuk percobaan. Terima kasih untuk registry ini, kode yang sama bekerja dengan baik simulasi dan perangkat nyata: Anda hanya perlu mengubah parameter mode.

Agen menerima perintah dalam bahasa alam, seperti "merekam demonstrasi dan sinkronisasi ke ember", dan panggilan alat yang tepat itu sendiri. Hal ini memungkinkan skenario kompleks tanpa urutan hardcode langkah - kontrol logika didelegasikan ke model bahasa, sedangkan SDK menangani operasi tingkat rendah dengan robot dan data.

Format data unified

Sebuah detail penting adalah LeRobot format dataset. Pada saat publikasi, lebih dari 90.000 data dan model pada Hugging Face Hub sudah menggunakan format ini, diterbitkan oleh lebih dari 8.000 penulis yang berbeda. Berkat adopsi ini, LeRobot telah menjadi standar de facto untuk menyimpan demonstrasi robot.

Sebuah rekaman dibuat melalui Strands Robots disimpan langsung dalam format LeRobotDataset. Ini berarti alat apapun yang dapat membaca LeRobot dapat bekerja dengan data ini tanpa konversi apapun. Tidak perlu menulis konverter terpisah untuk setiap backend: data dibaca dengan baik dalam skrip pelatihan, alat visualisasi, dan framework robotika lainnya.

Penyimpanan stream

Untuk menyimpan besar volume demonstrasi, Kotak Penyimpanan Wajah Hugging Digunakan - jenis baru penyimpanan objek diperkenalkan pada bulan Maret 2026. Tidak seperti repositori dataset biasa, ember adalah mutable, penyimpanan non- versioned dibangun di teknologi Xet. Ini menyediakan dua keuntungan penting: menulis dan memperbarui data tanpa membuat versi baru, dan secara efisien mentransfer hanya byte yang berubah selama sinkronisasi.

Ember hidup di sama hf:// namespace sebagai dataset reguler, sehingga akrab hf CLI digunakan untuk bekerja dengan itu. Data dapat streaming langsung dari penyimpanan tanpa mengunduh seluruh data. Untuk video demonstrasi besar, ini penting: tidak perlu menunggu unduhan penuh untuk memulai pelatihan.

Loop data dalam praktek

Untuk memahami bagaimana semua ini bekerja sama, mari kita lihat contoh dari blog AWS resmi, di mana Strands Robot, LeRobot, dan Kotak Penyimpanan Wajah Hugging stack digunakan untuk sebuah loop penuh. Seorang agen dengan alat robot dibuat, dengan mode simulasi aktif secara baku:

python dari strands impor Agen dari untai _ robot impor Robot

sim = Robot ("so100") agen = Agen (tools = [sim])

The agent can be given a command in natural language: "record a pick-the-cube demonstration and sync it to the my-org/robot-fave repositori ". Perintah tidak diurai oleh template yang telah ditentukan - model penalaran agen menentukan urutan aksi itu sendiri: mulai merekam, bentuk suatu dataset, dan kirim ke ember.

Agen python ("Rekam demo pick-the- kube dan sinkronkan ke my-org / robot-fave".)

Sinkronisasi dirancang sehingga pada berjalan berulang, hanya mengubah byte yang diunggah - tidak perlu untuk menulis ulang seluruh dataset. Setelah demonstrasi disimpan, sama Robot() objek dapat stream data kembali. Di dalam stream_dataset() metode, data dibaca frame demi frame, video diterjemahkan pada lalat, dan karena itu tidak ada salinan lokal dari dataset dibutuhkan.

python untuk batch dalam sim.stream _ dataset ("my-org / robot-fave / cube _ pick," repo _ type = "bucket,") .dataloader (batch _ size = 64):...

Kode ini dapat digunakan langsung dalam proses pelatihan: batch berasal dari penyimpanan, model dilatih, dan maka pos pemeriksaan disiapkan dikerahkan pada sama Robot() - Untuk ini, Anda hanya perlu mengubah satu argumen kata kunci. Demonstrasi yang tercatat pada perangkat keras nyata dikembalikan ke ember yang sama dengan cara yang sama dan tersedia untuk pelatihan iterasi berikutnya. Hasilnya adalah loop yang terus-menerus: data dikumpulkan, model yang dilatih pada data streaming, kebijakan terbaru digulung kepada robot, dan proses berulang.

Permintaan untuk berjalan

Untuk mereproduksi percobaan, Anda akan membutuhkan Python 3.12 atau yang lebih baru dan Linux atau MacOS. Pada Silikon Apple, MuJoCo backend didukung untuk simulasi. Paket dipasang dengan perintah:

pip install "strands-robot [sim-mujoco, lerobot] > = 0.5.1"

Selain itu, lerobot set disertakan, yang termasuk LeRobot (setidaknya versi 0.6.1), datasets, av, dan torchcodec perpustakaan. Untuk menjalankan agen, salah satu model penyedia yang didukung diperlukan: Amazon Bedrock dengan konfigurasi kredensial AWS, API Anthropic, OpenAI, atau lokal OllamaMemiliki pilihan ini memungkinkan bereksperimen baik di awan dan sepenuhnya lokal.

Seorang pendamping dapat berjalan tersedia di samping artikel - notebook examples/notebooks/05_streaming_data_loop.ipynb, yang mereproduksi seluruh loop dijelaskan. Ini adalah titik awal yang nyaman untuk melihat Strands Robot, Kotak Penyimpanan Wajah Hugging, dan LeRobot stack in action.

Kesimpulan

Hasil utamanya adalah kemampuan untuk mengemas seluruh pengembangan kebijakan robotika ke dalam satu sirkuit. Rekaman, penyimpanan, pelatihan, dan penyebaran menggunakan abstraksi dan format yang sama. Ini secara radikal mengurangi jumlah langkah "lem" antara tahap dan eksperimen sederhana: untuk mengubah data, Anda hanya perlu memperbarui demonstrasi di ember, dan untuk memperbarui kebijakan, Anda hanya melatih ulang model pada data streaming dan mengubah satu argumen ketika membuat robot.

Pertanyaan yang sering ditanyakan

Strands Robots, LeRobot and Storage Buckets review