Kode untuk kertas teks2reward: pembentukan hadiah dengan model bahasa untuk pembelajaran penguatan. Silakan merujuk ke halaman proyek kami untuk lebih banyak demonstrasi dan sumber daya terkait terkini.
Untuk membangun lingkungan, jalankan kode ini di shell:
# set up conda
conda create -n text2reward python=3.7
conda activate text2reward
# set up ManiSkill2 environment
cd ManiSkill2
pip install -e .
pip install stable-baselines3==1.8.0 wandb tensorboard
cd ..
cd run_maniskill
bash download_data.sh
# set up MetaWorld environment
cd ..
cd Metaworld
pip install -e .
# set up code generation
pip install langchain chromadb==0.4.0mujoco , silakan ikuti instruksi dari sini untuk menginstalnya. Setelah itu, coba perintah berikut untuk mengonfirmasi instalasi yang berhasil: $ python3
>>> import mujoco_pyRuntimeError: vk::Instance::enumeratePhysicalDevices: ErrorInitializationFailedSome required Vulkan extension is not present. You may not use the renderer to render, however, CPU resources will be still available.Segmentation fault (core dumped) Untuk mengimplementasikan hasil eksperimen kami, Anda dapat menjalankan skrip berikut:
Maniskill2:
bash run_oracle.sh
bash run_zero_shot.sh
bash run_few_shot.shAdalah normal untuk menghadapi peringatan berikut:
[svulkan2] [error] GLFW error: X11: The DISPLAY environment variable is missing
[svulkan2] [warning] Continue without GLFW.Metaworld:
bash run_oracle.sh
bash run_zero_shot.sh Pertama, harap tambahkan variabel lingkungan berikut ke .bashrc Anda (atau .zshrc , dll.).
export PYTHONPATH= $PYTHONPATH : ~ /path/to/text2reward Kemudian arahkan ke direktori text2reward/code_generation/single_flow dan jalankan skrip berikut:
# generate reward code for Maniskill
bash run_maniskill_zeroshot.sh
bash run_maniskill_fewshot.sh
# generate reward code for MetaWorld
bash run_metaworld_zeroshot.sh Secara default, skrip run_oracle.sh di atas menggunakan imbalan yang ditulis oleh ahli yang disediakan oleh lingkungan; skrip run_zero_shot.sh dan run_few_shot.sh menggunakan hadiah yang dihasilkan yang digunakan dalam percobaan kami. Jika Anda ingin menjalankan percobaan baru berdasarkan hadiah yang Anda berikan, cukup ikuti skrip bash di atas dan ubah parameter --reward_path ke jalur hadiah Anda sendiri.
Jika Anda merasa pekerjaan kami bermanfaat, silakan kutip kami:
@inproceedings { xietext2reward ,
title = { Text2Reward: Reward Shaping with Language Models for Reinforcement Learning } ,
author = { Xie, Tianbao and Zhao, Siheng and Wu, Chen Henry and Liu, Yitao and Luo, Qian and Zhong, Victor and Yang, Yanchao and Yu, Tao } ,
booktitle = { The Twelfth International Conference on Learning Representations }
}