Официальная база кода ManipLLM: воплощенная мультимодальная модель большого языка для объектно-ориентированных роботизированных манипуляций (CVPR 2024).
В этом репозитории используются LLama_Adapter и Where2act. Спасибо за их замечательные работы.
conda create --name manipllm python=3.8
Конда активирует манипуллм
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
Обучение модели: для обучения требуется, чтобы на сервере было не менее 40 ГБ памяти. Команда сначала сгенерирует тренировочный json, а затем начнет обучение.
cd ./ManipLLM/train
bash finetune.sh
Публичный код делает вывод только по последней подсказке без цепочки мыслей, напрямую предсказывая позу.
Не забудьте также добавить контрольные точки CLIP, [LLaMa] (то же самое, что и в процессе обучения) и LLaMa-Adapter в /ManipLLM/test/ckpts.
Освобождаем чекпоинт: checkpoint-9-ori.pth. Обратите внимание, что из-за случайности сбора данных предоставленный набор тестовых данных отличается от тех, что приведены в статье, поэтому вы можете получить немного другие, но сопоставимые результаты по сравнению с результатами в статье. Загрузите выпущенную контрольную точку-9-ори или используйте собственную обученную контрольную точку. Ссылка, которую мы предоставляем, является ссылкой для скачивания baiduyun. Если вам нужна ссылка для загрузки с Google Диска, отправьте свою учетную запись Google по электронной почте [email protected], и мы поделимся с вами ссылкой. Не забудьте изменить строку 5 в test.sh на каталог, в который вы поместили ckpts.
Загрузите НАШИ тестовые данные или соберите тестовые данные самостоятельно. Загруженную папку test_data следует разархивировать в папку /ManipLLM/data_collection/data. Загрузите urdf partnet mobile с официального сайта и поместите его в /ManipLLM/data_collection/asset.
Для тестирования требуется, чтобы на сервере было не менее 40 ГБ памяти. Эта команда сначала будет использовать модель для вывода всех тестовых образцов, а затем взаимодействовать с объектом в симуляторе (SAPIEN).
cd ./ManipLLM/test
bash test.sh