874 字
约 2 分钟
8
S20-J04 · 微调与意图识别:BERT / LoRA / 双模型路由
适用读者:想用训练"解决"效果问题的人。
前置:S20-J03。
覆盖旧文:710(670) 731(151) 730(116) 732(104) 733(66) 734(4) 729(0) = 1,111 点。
覆盖扩展:E-S20-009(微调 vs 提示 vs RAG)。
上一篇:S20-J03 · Agent:Function Calling 与工作流
下一篇:S20-A01 · 性能与成本。
1. 一句话结论
三种手段解决三种问题:提示解决"怎么说"、RAG 解决"知道什么"、微调解决"稳定地怎么做"。选错手段,钱花了效果还差。
| 手段 | 解决 | 成本 | 更新速度 |
|---|---|---|---|
| 提示工程 | 表达/格式/约束 | 极低 | 立即 |
| RAG | 事实/私有知识 | 中 | 改文档即生效 |
| 微调 | 风格/任务/小模型替代 | 高 | 需重训 |
判据(E-S20-009):
缺"知识" → RAG
缺"格式/风格一致性" → 微调(或提示 + 结构化输出)
缺"能力"(推理) → 换更强模型
2. BERT 与 LLM 做分类的差别(A-730/A-729)
| 维度 | BERT(编码器) | 生成式 LLM |
|---|---|---|
| 任务 | 分类/抽取 | 生成/推理 |
| 输出 | 标签 + 概率 | 文本 |
| 成本 | 低(小模型、低延迟) | 高 |
| 可控性 | 高(可设阈值) | 低(易漂移) |
"为什么意图识别常用 BERT 类":延迟低、可控、能给置信度——生成式模型给"概率"很麻烦。
3. LoRA:为什么要"低秩"(A-731)
| 全量微调 | LoRA |
|---|---|
| 更新全部参数(显存大) | 只训练低秩矩阵(显存小) |
| 一个任务一份权重 | 可切换多个适配器 |
| 灾难性遗忘风险 | 原模型冻结,风险低 |
"LoRA 适合什么":小样本、单任务、要保留基座能力——如"把回答改成客服语气"。
4. 双模型路由(A-732/A-733)
实测记录(旧文的训练记录,作为案例引用):用小模型做意图分类、大模型做生成。
请求 → 意图分类器(BERT,毫秒级)→ 路由到不同提示词/工具 → LLM 生成
| 优点 | 代价 |
|---|---|
| 省 token(简单请求走轻路径) | 需维护分类器 |
| 可控(能设阈值/兜底) | 分类错误会走错路径 |
判据:"请求类型差异大、且简单请求占多数吗?" 是 → 路由收益明显。
5. 五个误区
| 误区 | 真相 |
|---|---|
| "效果差就微调" | 常是检索/提示问题 |
| "微调能注入知识" | 知识更新要及时,RAG 更合适 |
| "LoRA 不如全量微调" | 多数任务足够 |
| "分类必须用大模型" | BERT 更快更可控 |
| "路由不会出错" | 需阈值与兜底 |
6. 自检
- 提示/RAG/微调各解决什么?
- BERT 与 LLM 做分类的权衡?
- LoRA 为什么省显存?
- 双模型路由的收益与风险?
- 什么情况下"微调是错的手段"?
7. 下一篇
S20-A01 · 性能与成本:向量规模与存储选型
微调讲完,进架构师层:100 万向量到底能不能"硬扛"(附实测)。
本篇属于系列《S20 · AI 应用与工程》。旧文来源:A-710/731/730/732/733/734/729;扩展点 E-S20-009。
S20-J04 · 微调与意图识别:BERT / LoRA / 双模型路由
https://www.clxhxhhr.top/posts/5471/ 评论
0 条
还没有评论,先写一条吧。