新一代面壁小钢炮 MiniCPM-V 2.6 微调指南
新一代面壁小钢炮 MiniCPM-V 2.6 微调指南
2024年08月09日 13:15 北京
面壁「小钢炮」 MiniCPM-V 2.6 模型重磅上新!发布两天即登顶GitHub Trending 榜首,广受开源社区好评!目前MiniCPM-V系列目前已斩获 9000+星标🌟谢谢大家喜欢小钢炮,一起加油呀💪🏻
今天,为大家带来的是「MiniCPM-V 2.6 微调指南」,手把手带你实操MiniCPM-V 2.6 全量微调与Lora微调,一键定制你的专属端侧多模态模型!
➤ 模型介绍
🔗
➤ GitHub地址
🔗 https://github.com/OpenBMB/MiniCPM-V
➤ HuggingFace地址
🔗 https://huggingface.co/openbmb/MiniCPM-Llama3-V-2_5
➤ B站配套视频 ,搭配食用更佳
🔗 https://www.bilibili.com/video/BV1YT42167mF/
公众号后台回复“小钢炮”,可解锁知识库全文。
MiniCPM-V 2.6 训练指南
1. 获取MiniCPM-V的GitHub代码
git clone https://github.com/OpenBMB/MiniCPM-V.git
2. 安装依赖包
cd MiniCPM-V
3. 处理数据集
处理数据集成以下形式:
id值不可重复
<image>\n应该出现在每个数据集对话数据的开头
"image"对应的地址需要存在图片
每个conversations对应的列表中是一个多轮对话,content代表对话内容,role对应user代表用户输入,role对应assistant代表模型输出
每条数据仅包含一张图片
[ { "id": "0", "conversations": [ { "content": "<image>\nWho are they?", "role": "user" }, { "content": "They're Kane and Gretzka from Bayern Munich.", "role": "assistant" }, { "content": "What are they doing?", "role": "user" }, { "content": "They are celebrating on the soccer field.", "role": "assistant" } ], "image": "/root/ld/ld_project/LLaMA-Factory/data/mllm_demo_data/1.jpg" } ...以上是单个条数据,列表中可存在多个相同格式的数据 ]
4. lora微调
修改MiniCPM-V/finetue/finetune_lora.sh
#!/bin/bash
需要重点关注的参数:
MODEL="/root/ld/ld_model_pretrained/MiniCPM-Llama3-V-2_5" # 本地模型路径 or huggingface id
开始训练
cd MiniCPM-V/finetune
lora与模型合并保存
from peft import PeftModel
5. 全量微调
修改MiniCPM-V/finetune/finetune_ds.sh参数:
#!/bin/bash
开始训练:
cd MiniCPM-V/finetune