大模型从“训练”到“使用”
大模型从“训练”到“使用”,可以理解为:先让模型学习海量知识和语言规律,再教它按照人类意图回答,最后部署到服务器供用户调用。
1. 数据准备
首先从互联网、书籍、论文、代码库、问答数据等来源收集大量数据。
随后进行处理:
- 去除重复、乱码和低质量内容
- 过滤违法、有害、隐私数据
- 对数据进行分类和质量评分
- 将文本切分成 Token
- 划分训练集、验证集和测试集
Token 是模型处理文本的基本单位。它可能是一个汉字、一个单词或单词的一部分。
例如:
用户输入:大模型是如何训练的
Token:大 / 模型 / 是 / 如何 / 训练 / 的
实际切分结果取决于模型使用的分词器。
2. 预训练
预训练是成本最高、规模最大的训练阶段。
模型会阅读海量文本,并反复完成一个核心任务:
根据前面的 Token,预测下一个 Token。
例如:
输入:法国的首都是
目标:巴黎
模型预测错误后,通过反向传播调整内部参数。这个过程会重复数万亿次。
经过预训练后,模型会逐渐学会:
- 语言和语法规律
- 一般事实和知识
- 代码结构
- 上下文关系
- 一定程度的推理模式
但预训练后的模型更像一个“文本续写器”,不一定能够很好地理解和执行用户指令。
3. 指令微调
接下来使用高质量的“指令—答案”数据继续训练,也叫监督微调,英文简称 SFT。
例如:
指令:请解释什么是 WebSocket
答案:WebSocket 是一种支持客户端与服务器双向通信的协议……
这一阶段主要教会模型:
- 理解用户要求
- 按指定格式回答
- 进行总结、翻译和代码生成
- 完成多轮对话
- 在信息不足时提出问题
预训练负责“获得基础能力”,指令微调负责“学会怎么帮助用户”。
4. 人类偏好和安全对齐
对于同一个问题,模型可能生成多个答案。人类标注人员或其他模型会对答案进行比较,例如:
- 哪个答案更准确
- 哪个表达更清楚
- 哪个更符合用户意图
- 哪个答案更加安全
- 哪个更少出现虚假信息
然后使用这些偏好数据继续优化模型。
常见方法包括:
- RLHF:基于人类反馈的强化学习
- RLAIF:基于 AI 反馈的强化学习
- DPO:直接偏好优化
- 规则奖励和可验证奖励
经过这一阶段,模型通常会变得更有帮助、更守规则,也更符合人类的表达习惯。
5. 评测和优化
训练完成后,需要从多个方面评估模型:
| 评测方向 | 主要内容 |
|---|---|
| 知识能力 | 是否掌握事实和专业知识 |
| 推理能力 | 数学、逻辑、规划和问题分析 |
| 编程能力 | 代码生成、调试和代码理解 |
| 指令遵循 | 是否严格执行用户要求 |
| 安全性 | 是否生成有害或违规内容 |
| 幻觉率 | 是否会编造事实、链接或数据 |
| 性能 | 响应速度、显存占用和调用成本 |
如果评测不理想,可能需要重新清洗数据、调整训练方式或继续进行专项训练。
6. 模型压缩和部署
训练模型通常需要大量 GPU,但用户使用模型时,服务也必须足够快、足够便宜。
部署前可能进行:
- 量化:把 FP16 参数转换为 INT8、INT4 等低精度格式
- 蒸馏:让小模型学习大模型的能力
- 剪枝:删除影响较小的参数
- 推理引擎优化:提升 GPU 利用率
- KV Cache:缓存历史上下文的计算结果
- 批处理:同时处理多个用户请求
之后,模型会部署到 GPU 服务器或本地设备,并通过 API、网页、App 等方式提供服务。
7. 用户实际使用:推理阶段
用户向模型发送问题时,并不会重新训练模型,而是执行“推理”。
例如用户输入:
请介绍一下 WebSocket
系统大致会进行以下处理:
- 将系统规则、历史对话和当前问题组合成上下文
- 使用分词器转换为 Token
- 输入神经网络进行计算
- 预测下一个 Token
- 将新 Token 加入上下文
- 继续预测,直到生成结束
也就是说,模型的回答是一个 Token 一个 Token 生成的。
生成时还会受到一些参数影响:
- Temperature:越高,回答越随机
- Top-p:限制候选 Token 的概率范围
- Max tokens:控制最大输出长度
- Context window:决定一次可以处理多少上下文
8. 大模型如何获得最新或私有信息
模型训练完成后,参数通常不会因为一次对话立即发生变化。因此,模型本身可能不知道训练之后发生的事情。
实际产品通常会增加外部能力:
RAG 知识检索
先从企业知识库、文档或搜索引擎中找资料,再把资料放进上下文,让模型回答。
用户问题
→ 搜索相关文档
→ 将文档片段提供给模型
→ 模型根据文档生成答案
工具调用
模型判断需要调用某个工具,例如:
- 查询天气
- 搜索网页
- 运行代码
- 查询数据库
- 发送邮件
- 创建日程
工具返回结果后,模型再组织成自然语言答案。
微调
如果企业需要模型长期掌握特定表达方式或任务模式,可以使用行业数据继续微调模型。
简单来说:
RAG 用来补充知识,工具调用用来执行操作,微调用来改变模型的行为习惯。
9. 持续迭代
模型上线后,开发者会收集经过脱敏和授权的反馈,例如:
- 用户喜欢或不喜欢哪些回答
- 哪些问题经常回答错误
- 是否存在安全漏洞
- 推理速度和成本是否合理
- 新模型是否优于旧模型
这些数据不会让当前模型瞬间“边用边学”,而是通常经过处理后,用于训练或优化下一版本。
一句话总结
大模型的完整生命周期是:
用海量数据预训练基础能力,通过指令微调和偏好对齐让它学会帮助人类,经过评测和推理优化后部署到服务器,用户使用时再结合上下文、知识库和外部工具生成答案。
更多推荐
所有评论(0)