¡Entrena un chatbot multimodal con instrucciones visuales y de lenguaje!
Basado en el modelo multimodal de código abierto OpenFlamingo, creamos varios datos de instrucciones visuales con conjuntos de datos abiertos, incluidos VQA, subtítulos de imágenes, razonamiento visual, OCR de texto y diálogo visual. Además, también capacitamos el componente del modelo de idioma de OpenFlamingo utilizando solo datos de instrucciones de solo lenguaje .
¡La capacitación conjunta de las instrucciones visuales y del lenguaje mejora efectivamente el rendimiento del modelo! Para obtener más detalles, consulte nuestro informe técnico.
¡Bienvenido a unirse a nosotros!
Inglés | 简体中文











Para instalar el paquete en un entorno existente, ejecute
git clone https://github.com/open-mmlab/Multimodal-GPT.git
cd Multimodal-GPT
pip install -r requirements.txt
pip install -v -e .o crear un nuevo entorno de condena
conda env create -f environment.ymlDescargue los pesos previamente capacitados.
Use este script para convertir pesas de llama en formato de cara abrazada.
Descargue el modelo pre-entrenado OpenFlamingo desde OpenFlamingo/OpenFlamingo-9B.
Descargue nuestro peso de Lora desde aquí.
Luego coloque estos modelos en carpetas de checkpoints como esta:
checkpoints
├── llama-7b_hf
│ ├── config.json
│ ├── pytorch_model-00001-of-00002.bin
│ ├── ......
│ └── tokenizer.model
├── OpenFlamingo-9B
│ └──checkpoint.pt
├──mmgpt-lora-v0-release.pt
Iniciar la demostración de Gradio
python app.py



A-okvqa
Descargue la anotación de este enlace y descifra a data/aokvqa/annotations .
También requiere imágenes del conjunto de datos de Coco que se pueden descargar desde aquí.
Subtítulos
Descargue desde este enlace y descomprima a data/coco .
También requiere imágenes del conjunto de datos de Coco que se pueden descargar desde aquí.
OCR VQA
Descargue desde este enlace y coloque en data/OCR_VQA/ .
Llava
Descargue de Liuhaotian/Llava-Instructo-150k y coloque en data/llava/ .
También requiere imágenes del conjunto de datos de Coco que se pueden descargar desde aquí.
Mini-GPT4
Descargar desde Vision-Cair/CC_SBU_Align y colocar en data/cc_sbu_align/ .
Dolly 15k
Descargue de Databricks/Databricks-Dolly-15k y colóquelo en data/dolly/databricks-dolly-15k.jsonl .
Alpaca GPT4
Descárguelo desde este enlace y colóquelo en data/alpaca_gpt4/alpaca_gpt4_data.json .
También puede personalizar la ruta de datos en Configs/DataSet_Config.py.
Bayeta
Descárguelo desde este enlace y colóquelo en data/baize/quora_chat_data.json .
torchrun --nproc_per_node=8 mmgpt/train/instruction_finetune.py
--lm_path checkpoints/llama-7b_hf
--tokenizer_path checkpoints/llama-7b_hf
--pretrained_path checkpoints/OpenFlamingo-9B/checkpoint.pt
--run_name train-my-gpt4
--learning_rate 1e-5
--lr_scheduler cosine
--batch_size 1
--tuning_config configs/lora_config.py
--dataset_config configs/dataset_config.py
--report_to_wandbSi encuentra útil nuestro proyecto para su investigación y aplicaciones, cite con este bibtex:
@misc { gong2023multimodalgpt ,
title = { MultiModal-GPT: A Vision and Language Model for Dialogue with Humans } ,
author = { Tao Gong and Chengqi Lyu and Shilong Zhang and Yudong Wang and Miao Zheng and Qian Zhao and Kuikun Liu and Wenwei Zhang and Ping Luo and Kai Chen } ,
year = { 2023 } ,
eprint = { 2305.04790 } ,
archivePrefix = { arXiv } ,
primaryClass = { cs.CV }
}