基础闯关任务要求:
使用 XTuner 微调 InternLM2-Chat-1.8B 实现自己的小助手认知,如下图所示(图中的伍鲜同志需替换成自己的昵称),记录复现过程并截图。
(补充说明:你在实战营做什么,这个问题微调后能回答。但请介绍一下自己这个问题,微调前后都能回答的。)
微调前:
微调后:
(进阶任务随后抽空完成)
附:以下为学习笔记
一、 概览:
微调(fine-tuning)是一种基于预训练模型,通过少量的调整(fine-tune)来适应新的任务或数据的方法。Finetune的两种范式:增量预训练(比如:InternLM垂类基座模型)和 指令跟随(比如:InternLM垂类对话模型)
微调技术:LORA QLORA
XTuner :一个大语言模型&多模态模型微调工具箱。由 MMRazor 和 MMDeploy 联合开发。傻瓜化: 以 配置文件 的形式封装了大部分微调场景,0基础的非专业人员也能一键开始微调。轻量级: 对于 7B 参数量的LLM,微调所需的最小显存仅为 8GB : 消费级显卡✅,colab✅
二 、微调前:
(课程说无法回答自己是谁,现在实验可以的。但模型无法回答它来是实战营做什么的问题。)
三、 指令微调:
在准备好了模型和数据集后,我们就要根据我们选择的微调方法结合微调方案来找到与我们最匹配的配置文件了,从而减少我们对配置文件的修改量。配置文件其实是一种用于定义和控制模型训练和测试过程中各个方面的参数和设置的工具。XTuner 提供多个开箱即用的配置文件,可以通过以下命令查看
步骤(指令微调和增量微调都有这些步骤):
1.微调数据采用json格式
2.微调配置文件可以在现成的基础上修改,包括基础模型、数据来源、测试问题等
3.训练完成后用工具将模型格式转为hf(huggingface支持的模型格式)
4.如果不是全量训练,则还需要将上面的hf格式和原模型进行合并操作才能使用
四、 XTuner微调高级进阶:
- 增量预训练的知识
数据格式json如下:
[
{
"text": "书生·浦语大模型实战营第三期是上海人工智能实验室推出的书生·浦语大模型实战营系列活动的第三批次,将于2024年7月正式进行。"
}
]
另外看起来全参数训练,只用选择对应的配置文件稍作修改就可以了。
2. 多卡微调
3. 分布式微调