El código base oficial de ManipLLM: modelo de lenguaje grande multimodal incorporado para manipulación robótica centrada en objetos (CVPR 2024)
Este repositorio se beneficia de LLama_Adapter y Where2act. Gracias por sus maravillosos trabajos.
conda crear --nombre manipllm python=3.8
conda activar manipllm
instalación de pip -r requisitos.txt
./asset/original_sapien_dataset
├── 148
| └── mobility.urdf
├── 149
| └── mobility.urdf
├── ...
│ ...
└── ...
cd ./ManipLLM/data_collection/code
bash scripts/run_gen_offline_data.sh
Este comando generará primero un conjunto de datos de entrenamiento y luego generará un conjunto de datos de prueba.
Preparación:
Descargue puntos de control para CLIP, LLaMa-Adapter. Los puntos de control descargados deben colocarse en /ManipLLM/train/ckpts. Obtenga los pesos de la columna vertebral de LLaMA utilizando este formulario. Tenga en cuenta que los puntos de control de fuentes no oficiales (por ejemplo, BitTorrent) pueden contener código malicioso y deben usarse con cuidado. Organice los puntos de control descargados en la siguiente estructura:
./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
Entrenamiento del modelo: el entrenamiento requiere que el servidor tenga al menos 40 g de memoria. El comando primero generará el json de entrenamiento y luego comenzará a entrenar.
cd ./ManipLLM/train
bash finetune.sh
El código público sólo infiere la indicación final sin cadena de pensamiento, prediciendo la pose directamente.
Recuerde agregar los puntos de control de CLIP, [LLaMa] (lo mismo con el proceso en entrenamiento) y LLaMa-Adapter en /ManipLLM/test/ckpts también.
Liberamos el punto de control: checkpoint-9-ori.pth. Tenga en cuenta que, debido a la aleatoriedad en la recopilación de datos, el conjunto de datos de prueba proporcionado es diferente de los que están en papel, por lo que puede obtener resultados ligeramente diferentes pero comparables en comparación con los resultados en papel. Descargue el checkpoint-9-ori publicado o utilice su propio punto de control capacitado. El enlace que proporcionamos es el enlace de descarga de baiduyun. Si necesita un enlace de descarga de Google Drive, envíe su cuenta de Google por correo electrónico a [email protected] y luego compartiremos el enlace con usted. Recuerde cambiar la línea 5 en test.sh al directorio donde colocó los ckpts.
Descargue NUESTROS datos de prueba o recopile los datos de prueba usted mismo. La carpeta 'test_data' descargada debe descomprimirse en /ManipLLM/data_collection/data. Descargue partnet mobile urdf desde su sitio web oficial y colóquelo en /ManipLLM/data_collection/asset.
La prueba requiere que el servidor tenga al menos 40 g de memoria. Este comando primero utilizará el modelo para inferir todas las muestras de prueba y luego interactuará con el objeto en el simulador (SAPIEN).
cd ./ManipLLM/test
bash test.sh