本次课程由XTuner 贡献者李剑锋、汪周谦、王群老师讲解【XTuner 微调 LLM:1.8B、多模态和 Agent】课程
课程视频:http:// https://b23.tv/QUhT6ni
课程文档:https://github.com/InternLM/Tutorial/blob/camp2/xtuner/readme.md
两种Finetune范式
- 增量预训练:让基座模型学习到一些新知识,如某个垂类领域的常识
- 指令跟随微调:让模型学会对话模板,根据人类指令进行对话
若直接用预训练的模型或增量预训练模型,可能不能回答用户的问题;经过该领域的指令微调,模型以对话的方式准确回答用户的问题。例如:
数据处理流程:
原始数据->标准格式数据->添加对话模板->Tokenized数据->添加Label
高效微调方法:LoRA、QLoRA
XTuner:
- 多种微调算法,多种微调策略与算法,覆兰各类 SFT 场景
- 适配多种开源生态,支持加载 HuggingFace、 Modelscope 模型或数据集
- 自动优化加速,开发者无需关注复杂的显存优化与计算加速细节
LLaMa-Factory和Xtuner性能对比
Xtuner快速上手示例
InternLM2 1.8B模型
- InternLM2-1.88:具有高质量和高适应灵活性的基础模型,为下游深度适应提供了良好的起点。
- InternLM2-Chat-1.8B-SFT:在 InternLM2-1.88 上进行监督微调(SFT)后得到的对话模型。
- InternLM2-Chat-1.88:通过在线 RLHF 在 InternLM2-Chat-1.8B-SFT 之上进一步对齐。InternLM2-Chat-1.88 表现出更好的指令跟随、聊天体验和函数调用,推荐下游应用程序使用。(模型大小仅为3.78GB)