InternVL 多模态模型部署微调实践
任务描述
- 理解多模态大模型的常见设计模式,可以大概讲出多模态大模型的工作原理。
- 了解InternVL2的设计模式,可以大概描述InternVL2的模型架构和训练流程。
- 了解LMDeploy部署多模态大模型的核心代码,并运行提供的gradio代码,在UI界面体验与InternVL2的对话。
- 了解XTuner,并利用给定数据集微调InternVL2-2B后,再次启动UI界面,体验模型美食鉴赏能力的变化。
- 将训练好的模型上传到 Hugging Face 或 ModelScope 上,模型名称包含 InternVL 关键词(优秀学员必做)。
多模态大模型
常见设计模式
目前主要有两种常见设计模式,第一种是Q-Former,第二种是LLaVa。
QFormer
Q-former模式,以BLIP2和MiniGPT-4为代表。
LLaVA
LLaVA设计模式,以LLaVA-NeXT为代表。
QFormer vs. LLaVA
InternVL2 的设计模式
InternVL2属于LLaVA设计模式。
训练流程包含两阶段。
微调 InternVL2-2B 模型
环境配置
训练环境配置
conda create --name xtuner python=3.10 -y
conda activate xtuner
pip install xtuner==0.1.23 timm==1.0.9
pip install 'xtuner[deepspeed]'
pip install torch==2.4.1 torchvision==