Untuk robot, Perancangan Tugas ialah masalah yang tidak dapat dielakkan.
Untuk menyelesaikan tugas dunia sebenar, anda mesti terlebih dahulu mengetahui berapa banyak langkah yang diperlukan untuk memasang gajah di dalam peti sejuk.
Malah tugasan melempar epal yang agak mudah mengandungi berbilang sub-langkah, dan robot perlu memerhati kedudukan epal dahulu, jika anda tidak nampak epal itu , anda perlu terus mencari , kemudian dekat dengan epal , ambil epal dan , cari dan Berhampiran tong sampah.
Jika tong sampah ditutup , anda perlu membukanya dahulu, dan kemudian Buang epal dalam , tutup tong sampah .
Tetapi perincian pelaksanaan khusus setiap tugasan tidak boleh direka oleh manusia Cara menjana urutan tindakan dengan hanya satu arahan sudah memadai masalah .
Gunakan perintah untuk menjana jujukan ? Bukankah ini betul-betul tugas Model Bahasa?
Pada masa lalu, penyelidik telah menggunakan model bahasa besar (LLM) untuk menjaringkan potensi ruang tindakan seterusnya berdasarkan arahan tugasan input dan kemudian menjana urutan tindakan. Arahan diterangkan dalam bahasa semula jadi dan tidak mengandungi maklumat domain tambahan.
Tetapi kaedah sedemikian sama ada perlu menghitung semua kemungkinan tindakan seterusnya untuk pemarkahan, atau teks yang dijana tidak mempunyai sekatan dalam bentuk, yang mungkin mengandungi robot tertentu dalam persekitaran semasaTindakan yang mustahil .
Baru-baru ini, University of Southern California dan NVIDIA bersama-sama melancarkan model baharu ProgPrompt, yang turut menggunakan model bahasa untuk melaksanakan perancangan tugas pada arahan input, yang merangkumi a Struktur segera yang diprogramkan membolehkan rancangan yang dihasilkan berfungsi dalam persekitaran yang berbeza, robot dengan kebolehan yang berbeza dan tugas yang berbeza.
Untuk memastikan penyeragaman tugas, penyelidik menggunakan untuk menjana kod gaya python untuk menggesa model bahasa tindakan yang manakah tersedia, objek yang ada dalam persekitaran, dan program yang boleh dilaksanakan.
Contohnya, masukkan arahan "Throw Apple" untuk menjana program berikut.
Model ProgPrompt mencapai prestasi sota dalam tugas rumah maya, dan penyelidik juga menggunakan model itu dalam Satu lengan robotik fizikal untuk tugasan desktop dihidupkan.
Model bahasa yang menarikMenyelesaikan tugas rumah tangga harian memerlukan pemahaman yang waras tentang dunia dan pengetahuan situasi persekitaran semasa.
Untuk mencipta pelan tugas "memasak makan malam", pengetahuan minimum yang perlu diketahui oleh ejen termasuk: Fungsi objek, seperti dapur dan ketuhar gelombang mikro boleh digunakan pemanasan; urutan logik tindakan, ketuhar mesti dipanaskan terlebih dahulu sebelum menambah makanan; dan perkaitan tugas objek dan tindakan, seperti pemanasan dan mencari bahan-bahan yang pertama berkaitan; kepada tindakan "makan malam".
Tetapi tanpa maklum balas nyata , alasan ini tidak boleh diteruskan.
Ejen perlu tahu di mana terdapat makanan dalam persekitaran semasa, seperti ada ikan di dalam peti sejuk, atau ada ayam di dalam peti sejuk .
Model bahasa berskala besar autoregresif yang dilatih pada korpus besar boleh menjana jujukan teks di bawah gesaan input, dengan keupayaan generalisasi berbilang tugas yang ketara.
Sebagai contoh, jika anda memasukkan "buat makan malam", model bahasa boleh menjana urutan seterusnya, seperti membuka peti sejuk, mengambil ayam, mengambil soda, menutup peti sejuk , menghidupkan suis lampu, dsb.
Jujukan teks yang dijana perlu dipetakan ke ruang tindakan ejen Contohnya, arahan yang dijana ialah "jangkau dan ambil balang jeruk", dan yang sepadan tindakan boleh laku mungkin "pick up jar", model kemudian mengira skor kebarangkalian untuk tindakan.
Namun, jika tiada maklum balas alam sekitar, jika tiada ayam di dalam peti sejuk dan anda masih memilih untuk "mengambil ayam", tugas itu akan gagal kerana "membuat makan malam" tidak termasuk Sebarang maklumat tentang keadaan dunia.
Model ProgPrompt bijak menggunakan binaan bahasa pengaturcaraan dalam perancangan tugas, kerana model bahasa berskala besar sedia ada biasanya dijalankan dalam korpus tutorial pengaturcaraan dan dokumen kod Pra-latihan.
ProgPrompt menyediakan pengepala program Pythonic sebagai gesaan untuk model bahasa, mengimport ruang tindakan yang tersedia, parameter yang dijangkakan dan objek yang tersedia dalam persekitaran.
Kemudian mentakrifkan seperti membuat_makan malam, buang_pisang dan lain-lain fungsi , badan utamanya ialah untuk mengendalikan objek urutan tindakan, dan kemudian menggabungkan ini dengan menegaskan prasyarat yang dirancang, seperti mendekati peti sejuk sebelum cuba membukanya, dan bertindak balas terhadap kegagalan penegasan dengan pemulihan tindakan Maklum balas status persekitaran .
Paling penting, program ProgPrompt turut menyertakan komen yang ditulis dalam bahasa semula jadi untuk menerangkan matlamat tindakan, sekali gus meningkatkan pelaksanaan program rancangan yang dihasilkan Kejayaan misi kadar.
Dengan idea yang lengkap, aliran kerja keseluruhan ProgPrompt adalah jelas, terutamanya termasuk tiga bahagian, Pembinaan fungsi Python, Pembinaan gesaan bahasa pengaturcaraan, Penjanaan dan pelaksanaan pelan tugas.
1 Ekspresikan pelan robot sebagai fungsi Pythonic
<.>Fungsi perancangan termasuk panggilan API ke primitif tindakan, meringkaskan tindakan dan menambah ulasan dan penegasan untuk menjejaki pelaksanaan.
Setiap tindakan primitif memerlukan objek sebagai parameter Contohnya, tugas "Masukkan salmon ke dalam ketuhar gelombang mikro" termasuk panggilan untuk mencari(salmon), di mana find adalah tindakan primitif. .
Gunakan ulasan dalam kod untuk menyediakan ringkasan bahasa semula jadi untuk urutan tindakan seterusnya Ulasan membantu memecahkan tugasan peringkat tinggi kepada yang sesuai Subtugas logik adalah "tangkap salmon" dan "masukkan salmon ke dalam ketuhar gelombang mikro".
Anotasi juga boleh membenarkan model bahasa memahami matlamat semasa dan mengurangkan kemungkinan keluaran yang tidak koheren, tidak konsisten atau berulang, serupa dengan rantaian pemikiran Menjana hasil perantaraan .
Penegasan menyediakan mekanisme maklum balas persekitaran untuk memastikan prasyarat adalah benar dan untuk melaksanakan pemulihan ralat apabila ia tidak benar, seperti sebelum operasi rangkak menegaskan bahawa ejen itu hampir dengan salmon, jika tidak ejen perlu melakukan tindakan mencari terlebih dahulu.
2. Bina bahasa pengaturcaraan segera
prompt perlu menyediakan maklumat tentang persekitaran kepada model bahasa dan maklumat tindakan utama, termasuk pemerhatian, primitif tindakan, contoh, dan menjana gesaan Pythonic untuk penyiapan model bahasa.
Kemudian, model bahasa meramalkan
dalam microwave salmon Dalam ini tugasan, langkah pertama yang munasabah yang LLM boleh hasilkan ialah mengeluarkan salmon, tetapi ejen yang bertanggungjawab untuk melaksanakan rancangan itu mungkin tidak mempunyai tindakan primitif sedemikian.
Untuk model bahasa memahami primitif tindakan ejen, importnya melalui pernyataan import dalam segera, yang juga mengehadkan output kepada fungsi yang tersedia dalam persekitaran semasa.
Untuk menukar ruang tingkah laku ejen, anda hanya perlu kemas kini senarai fungsi import.
Objek pembolehubah menyediakan semua objek yang tersedia dalam persekitaran dalam bentuk senarai rentetan.
prompt juga termasuk beberapa rancangan program yang boleh dilaksanakan sepenuhnya sebagai contoh
3. Penjanaan dan pelaksanaan pelan tugasan
Tugas yang diberikan Selepas itu, pelan disimpulkan sepenuhnya oleh model bahasa berdasarkan gesaan ProgPrompt, dan kemudian pelan yang dijana boleh dilaksanakan pada ejen maya atau sistem robot fizikal Seorang jurubahasa diperlukan untuk melaksanakan setiap arahan tindakan mengikut persekitaran.
Semasa pelaksanaan, semakan penegasan dilakukan dalam cara gelung tertutup dan maklum balas disediakan berdasarkan keadaan persekitaran semasa.
Dalam bahagian eksperimen, penyelidik menilai kaedah pada platform simulasi Virtual Home (VH).
Status VH termasuk set objek dan atribut yang sepadan, seperti salmon di dalam ketuhar gelombang mikro (dalam), atau dekat dengan (agent_close_to), dsb.
Ruang tindakan termasuk ambil, putin, putback, berjalan, cari, buka, tutup tutup) dsb.
Akhirnya, 3 persekitaran VH telah diuji, setiap persekitaran termasuk 115 objek berbeza Para penyelidik mencipta set data yang mengandungi 70 tugasan isi rumah, dengan tahap abstraksi dan perintah yang tinggi Ini semua tentang ". salmon gelombang mikro" dan mencipta urutan tindakan kebenaran asas untuknya.
Selepas menilai program yang dihasilkan pada keluarga maya, penunjuk penilaian termasuk Kadar Kejayaan (SR), Recall Bersyarat Matlamat (GCR) dan Kebolehlaksanaan (Exec), daripada keputusan Ia boleh melihat bahawa ProgPrompt jauh lebih baik daripada garis dasar dan LangPrompt Jadual juga menunjukkan cara setiap ciri meningkatkan prestasi.
Para penyelidik juga menjalankan eksperimen dalam dunia sebenar, menggunakan robot panda Franka-Emika dengan kuku selari, Dan menganggap bahawa strategi pilih dan tempat boleh diperolehi.
Strategi ini mengambil sebagai input awan dua titik objek sasaran dan bekas sasaran, dan melakukan operasi pilih dan letak untuk meletakkan objek pada atau di dalam bekas.
Pelaksanaan sistem memperkenalkan model pengesanan objek perbendaharaan kata terbuka ViLD untuk mengenal pasti dan membahagikan objek dalam tempat kejadian dan membina senarai objek yang tersedia dalam gesaan.
Tidak seperti dalam persekitaran maya, di sini senarai objek ialah pembolehubah setempat bagi setiap fungsi perancangan, yang membolehkan lebih fleksibiliti dalam menyesuaikan diri dengan objek baharu.
Output pelan oleh model bahasa mengandungi panggilan fungsi dalam bentuk grab dan putin.
Disebabkan ketidakpastian dunia sebenar, pilihan gelung tertutup berasaskan penegasan tidak dilaksanakan dalam persediaan percubaan .
Seperti yang anda lihat, dalam tugas pengelasan, robot itu dapat mengenal pasti pisang dan strawberi sebagai buah dan menjana langkah perancangan untuk meletakkannya pinggan di dalam dan masukkan botol ke dalam kotak.
Atas ialah kandungan terperinci Berapa banyak langkah yang diperlukan untuk memasang gajah di dalam peti sejuk? NVIDIA mengeluarkan ProgPrompt, membenarkan model bahasa mengatur rancangan untuk robot. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!