ManipLLM 的官方程式碼庫:以物件為中心的機器人操作的具體多模態大型語言模型 (CVPR 2024)
該儲存庫受益於 LLama_Adapter 和Where2act。感謝他們的精彩作品。
conda 建立 --name manipllm python=3.8
conda 激活馬尼普林
pip install -r 要求.txt
./asset/original_sapien_dataset
├── 148
| └── mobility.urdf
├── 149
| └── mobility.urdf
├── ...
│ ...
└── ...
cd ./ManipLLM/data_collection/code
bash scripts/run_gen_offline_data.sh
該命令將首先產生訓練資料集,然後產生測試資料集。
準備:
下載 CLIP、LLaMa-Adapter 的檢查點。下載的檢查點應放置在 /ManipLLM/train/ckpts 下。使用此表格取得 LLaMA 主幹權重。請注意,非官方來源(例如 BitTorrent)的檢查點可能包含惡意程式碼,應謹慎使用。按以下結構組織下載的檢查點:
./ckpts/llama_model_weights
├── 7B
│ ├── checklist.chk
│ ├── consolidated.00.pth
│ └── params.json
└── tokenizer.model
./ckpts/BIAS_LORA_NORM-336-Chinese-7B.pth
./ckpts/ViT-L-14-336px.pt
模型訓練:訓練要求伺服器至少40g記憶體。該命令會先生成訓練json,然後開始訓練
cd ./ManipLLM/train
bash finetune.sh
公共代碼只推斷最終的提示,沒有思路,直接預測姿勢。
記得在 /ManipLLM/test/ckpts 下方加入 CLIP、[LLaMa](與訓練過程相同)和 LLaMa-Adapter 的檢查點。
我們發布檢查點:checkpoint-9-ori.pth。請注意,由於資料收集的隨機性,提供的測試資料集與論文中的資料集不同,因此與論文中的結果相比,您可能會得到略有不同但具有可比性的結果。下載已發佈的 checkpoint-9-ori 或使用您自己訓練的檢查點。我們提供的連結是百度雲下載連結。如果您需要Google Drive下載鏈接,請將您的Google帳戶透過電子郵件發送至[email protected],然後我們將與您分享該鏈接。請記住將 test.sh 中的第 5 行更改為放置 ckpts 的目錄。
下載我們的測試資料或自行收集測試資料。下載的「test_data」資料夾應解壓縮到 /ManipLLM/data_collection/data 下。從其官方網站下載partnet mobile urdf並將其放置在/ManipLLM/data_collection/asset下。
測試要求伺服器至少有40g記憶體。該命令將首先使用模型來推斷所有測試樣本,然後與模擬器(SAPIEN)中的物件進行交互作用。
cd ./ManipLLM/test
bash test.sh