【学习笔记】垂直领域大模型:行业微调实战指南(9/35)
前两篇讲了 SFT 和 DPO,从「会做」到「做得好」。
这一篇我们聊一个每个业务团队迟早都要面对的问题:
怎么把通用大模型变成「行业专家」?
打开 HuggingFace,你能看到一堆这样的名字:
Med-PaLM 2 (医疗) BloombergGPT (金融) LawGPT / DISC-LawLLM (法律) ChatLaw (法律) HuatuoGPT (中医) FinGPT (金融) CodeLlama (代码) ...每一个都是某个行业的「垂直大模型」。背后的工程问题极其现实:
法律团队:合同审查、案例检索、文书生成
医疗团队:辅助诊断、病历摘要、医学问答
金融团队:研报生成、风险分析、客户服务
客服团队:行业知识 QA、工单分类、智能回复
这些场景用通用 Claude / GPT 也能跑,但有三个不可回避的痛点:
专业术语理解不准——「再保险分入」「除权除息」「丙肝抗体阳性」需要更深度的领域知识
数据合规要求——金融、医疗、法律的数据往往不能出本地
响应速度与成本——大流量场景下通用 API 太贵太慢
垂直大模型就是为了解决这三个痛点。但做不做、怎么做、做了值不值——这是一系列复杂的工程决策。
读完本文你将能:
判断你的场景到底要不要做垂直微调
选对适配路线(Prompt / RAG / SFT / CPT)
设计垂直微调的完整数据 + 训练流程
用一个法律领域案例理解全流程
避免 5 个最常见的垂直化陷阱
我们开始。
一、垂直领域大模型的「需求与现实」
1.1 通用大模型在垂直场景的局限
通用大模型(如 Qwen3-72B、Claude)在垂直任务上表现究竟怎样?
我们用三个真实场景看:
场景 1:合同审查
用户:请审查这份合同的违约责任条款。
通用 Claude:(给出 5 条通用建议)
DISC-LawLLM 微调版:(识别出"逾期超过 30 日"、"履约保证金"等条款的合规性问题,引用《民法典》第 577 条)
通用模型给的是"教科书答案",垂直模型给的是"实务答案"。
场景 2:医疗问答
用户:请解释"非小细胞肺癌 IIIA 期 T2aN2M0"的含义。
通用 GPT-5:(给出基本解释,可能漏掉"N2 表示纵隔淋巴结转移"的临床意义)
HuatuoGPT-II:(结合 TNM 分期 + 治疗指南 + 预后判断给出深度分析)
通用模型有"广度",垂直模型有"深度 + 准确性"。
场景 3:金融研报
用户:用这季报数据生成一份新能源板块研报。
通用 GPT:(套通用模板,关键指标命名错误)
FinGPT-X:(用券商研报标准格式,引用同花顺/Wind 字段命名规范)
核心区别:垂直大模型不是"更强",而是更懂行业的语言和惯例。
1.2 工程师做垂直化的常见动机
动机 | 占比 | 典型问题 |
| 效果不够 ——通用模型在专业任务表现差 | 40% | 术语错误、推理不深 |
| 合规性 ——数据不能出本地 | 25% | 金融、医疗、政府 |
| 成本压力 ——API 调用量过大 | 20% | 客服、高频问答 |
| 延迟要求 ——通用 API 延迟不可接受 | 10% | 实时辅助决策 |
| 品牌定位 ——专业领域形象 | 5% | ToB 销售卖点 |
很多团队选择垂直化只是因为"觉得听起来很 ToB"——这是最容易踩坑的动机,因为如果只是为了营销,往往做完发现效果还不如直接调 API。
1.3 一个关键认知:垂直化 ≠ 越大越好
工业上反复验证过的事实:
垂直场景下,一个微调过的 7B / 14B 模型,往往比通用的 70B 模型更好用。
原因:
垂直数据让小模型学到了"懂行话"
推理速度快 5-10×
部署成本低 10×
微调后效果在专业任务上能达到甚至超过通用大模型
这也是为什么 ToB 市场上 7-14B 微调模型非常受欢迎——通用大模型杀鸡用牛刀,垂直微调小模型刚好。
二、垂直适配的三条路线
不是所有垂直化都要训模型。按"轻重"排列,有三条路:
轻 ────────────────────────────────────── 重 Prompt + RAG → SFT → Continued Pretraining每条路线都有自己的"性价比甜区"。
2.1 路线一:Prompt + RAG(最轻)
做法:
准备好行业 prompt 模板(system prompt + 示例)
把行业知识库做成向量索引
推理时从知识库检索 → 拼到 prompt → 调用通用大模型
适用场景:
知识查询为主(FAQ、政策、产品信息)
数据更新频繁(每天/每周)
团队没有训练资源
业务还在快速迭代
优势:
0 训练成本
数据可以增量更新
上手快(1-2 周可上线)
劣势:
术语理解依赖检索质量
复杂推理任务表现一般
对通用模型能力有依赖
典型场景:客服 QA、企业知识助手、政策咨询。
2.2 路线二:SFT 微调(中等)
做法:
选一个开源基座(Qwen3、DeepSeek、Llama 等)
准备数千-数万条领域指令对
用 QLoRA 等方法 SFT
可选:再做 DPO 提升体验
适用场景:
需要让模型"会用行业术语"
输出格式严格(病历、合同、研报模板)
工具调用专业(医疗 ICD 编码、金融 API)
数据量适中(5K-10万条)
优势:
比 Prompt 效果好 10-30%
可以做到推理快、成本低
数据隐私可控
劣势:
需要构造高质量训练数据
训练有成本(虽然 QLoRA 大幅降低)
灾难遗忘风险
-----------------------------------------------------
注:灾难遗忘(Catastrophic Forgetting):在SFT微调语境下,是指模型在学习新指令能力的同时,大幅丧失基座模型原本具备的通用知识和推理能力。
本质原因:神经网络在持续学习新数据时,权重更新会覆盖掉之前学到的通用表征,尤其是当新数据分布与原始预训练数据分布差异较大、或新数据量相对较小时,这种现象更明显。
灾难遗忘的本质是共享权重空间中新旧任务的梯度冲突。
工业界当前的银弹组合是:LoRA + 数据混合回放 + 低学习率早停。如果必须做全参微调,务必混入预训练数据并使用严格的 warmup/cosine 调度。
------------------------------------------------------
典型场景:行业客服、文档生成、专业问答。
2.3 路线三:Continued Pretraining(最重)
做法:
在通用 base 模型上继续做预训练
用大量领域无标注语料(几十 GB-几 TB)
算力:几十-数百 H100 小时
再接 SFT + DPO
适用场景:
行业有独特语言(古文、医学拉丁、法律条款引用)
行业有大量私有数据(医疗病历、法律案例库)
业务长期投入+ 想构建数据壁垒
优势:
模型对行业的"内化"最深
长尾术语理解最好
可以做出"行业基座"持续复用
劣势:
成本最高(10-100 万人民币级)
周期长(1-3 个月)
需要专门团队
严重的灾难遗忘风险(要小心配比)
典型场景:行业基座(如 BloombergGPT、Med-PaLM)。
2.4 三种路线决策表
场景特征 | 推荐路线 |
知识库为主、需快速上线 | Prompt + RAG |
输出格式固定、术语适中 | SFT |
高频问答、有 5K+ 数据 | SFT |
行业语言极独特 | CPT + SFT |
数据隐私要求高 | SFT 或 CPT(自部署) |
长期投入、想做基座 | CPT + SFT + DPO |
团队没有训练经验 | Prompt + RAG 先跑 |
数据 < 1000 条 | 不要训,用 Prompt |
核心原则:从轻到重渐进。先做 Prompt + RAG 跑通业务,再判断需不需要 SFT,再判断要不要上 CPT。
三、垂直微调的完整流程
下面以SFT 路线为主线(最常见),详细讲完整流程。
3.1 第一步:选基座
选错基座,后面全是补救成本。判断维度:
维度 1:基础能力
看模型在通用能力 benchmark(MMLU / CEval / GSM8K)的成绩——这是你微调后的能力下限。
维度 2:领域基础
很多基座已经在某些领域有偏向:
DeepSeek-V3 / Coder:代码、数学、推理强
Qwen3 系列:中文、知识广度强
Llama 3 / 4:英文为主,生态丰富
Phi 系列:小尺寸、数学好
InternLM:中文垂直友好
选模型时:找一个已经偏向你的行业的基座,微调效果会好很多。
维度 3:模型规模
业务规模 | 推荐规模 |
单卡部署、低成本 | 7B-14B |
双卡部署、中等流量 | 32B |
集群部署、高质量 | 70B+ |
端侧/移动 | 1.5-3B |
维度 4:License
Llama 系列:商业可用但有 700M 月活上限条款
Qwen / DeepSeek / GLM:完全商业开源
Mistral:分商用版和开源版
国内业务建议优先 Qwen / DeepSeek——中文好 + license 干净 + 国产合规友好。
3.2 第二步:数据构建
这是垂直微调成败的关键。
数据来源 4 大类
来源 | 优势 | 难点 |
| 业务积累数据 | 真实分布 | 量少、需脱敏 |
| 公开领域语料 | 量大 | 质量参差 |
| 合成数据 (用 GPT-4 / Claude 生成) | 量可控 | 知识产权 + "近亲繁殖" |
| 专家标注 | 质量极高 | 成本高 |
数据构造模板
CPT 数据(如果走 CPT 路线):
原始领域文档(无标注) ↓ 清洗 / 去重 / 质量过滤 ↓ Tokenize → 拼成长序列(typically 2K-8K)SFT 数据(更常见):
{ "messages":[ {"role":"system","content":"你是一名资深律师"}, {"role":"user","content":"请审查这份合同的违约责任条款..."}, {"role":"assistant","content":"根据《民法典》第 577 条..."} ] }数据量参考
任务类型 | 推荐数据量 |
简单格式适配 | 1K-3K |
中等复杂度领域 QA | 5K-20K |
深度专业能力 | 50K-200K |
多任务领域大模型 | 100K-1M |
新手常犯错误:以为越多越好,结果数据噪声大、训练效果反而退化。5K 精数据 > 50K 噪声数据。
3.3 第三步:训练配方
按CPT → SFT → DPO三阶段,每阶段配方都不同。
CPT 配方(可选)
学习率: 1e-5~5e-5 # 必须比预训练小 10× Batch size:1M-4Mtokens # 跟预训练接近 Schedule:cosine+10%warmup 通用语料配比:20-30% # 防灾难遗忘 训练步数:看数据量,通常 5K-50K通用语料配比是关键——纯领域数据训会让模型"忘了说人话"。Llama 3 的领域适配版基本都混了 20% 通用数据。
SFT 配方
方法: QLoRA(r=64,alpha=128) 学习率:2e-4 Batch size:16-32(累积梯度) Epochs:2-3 通用SFT数据混入:10-20% # 防遗忘 学习率调度:cosine+3% warmupDPO 配方(可选,效果加成)
学习率: 5e-6 ~ 1e-5 # 比 SFT 低 Beta: 0.1 Epochs: 1 偏好对来源: 专家标注 + 自动生成3.4 第四步:评估
垂直模型评估要做三个维度,缺一不可。
维度 1:领域能力
法律:法考真题、案例分析准确率
医疗:USMLE / MedQA / 临床指南问答
金融:CFA 真题、研报评估
注意:要有hold-out 测试集(不在训练集里)。
----------------------------------------------------------
----------------------------------------------------------
维度 2:通用能力
跑 MMLU、CEval、GSM8K,确认没有灾难遗忘。
经验值:相比 base 模型下降 < 5% 算正常,下降 > 10% 必须调配方。
维度 3:人工 / LLM 评估
对真实业务问题做 A/B 测试:
盲测:让专家给 base / 微调 模型回复打分(不告诉哪个是哪个)
GPT-4 as Judge:用 GPT-4 / Claude 自动打分
真实用户灰度:上线 5-10% 流量看反馈
四、实战案例:法律领域大模型
下面用一个完整的法律领域案例串起整个流程。
4.1 项目背景
目标:做一个面向中小律所的"合同审查 + 法律咨询"助手
预算:30-50 万元(含数据、算力)
团队:3 名 AI 工程师 + 2 名法律顾问
周期:3 个月
4.2 选型决策
经过对比测试:
候选 | 优势 | 劣势 | 决定 |
Llama-3-70B | 通用能力强 | 中文法律弱、显存大 | ❌ |
Qwen3-32B | 中文强、规模适中 | 法律基础一般 | ✅ |
DeepSeek-V3 | 推理强 | 太大、成本高 | ❌ |
Qwen3-14B | 单卡部署、便宜 | 能力上限略低 | 备选 |
决定:主线 Qwen3-32B + LoRA,备选 14B 做端侧部署。
4.3 数据构建
总数据量:约 12 万条 SFT,5 GB CPT 语料。
数据来源 | 数据量 | 用途 |
北大法宝 / 中国裁判文书网 | 50 GB 原始 → 5 GB 清洗后 | CPT |
法律法规库(民法、刑法等) | 1 GB | CPT + SFT |
业务合作律所案例 | 2 万条 | SFT |
合成问答(GPT-4 + 法律条款) | 8 万条 | SFT |
法考真题与解析 | 2 万条 | SFT |
通用指令混入(Alpaca-zh) | 1.2 万条 | SFT |
4.4 训练流程
Step 1:CPT(轻量)
基座: Qwen3-32B-Base 方法:LoRA(r=256) # CPT 用更大 rank 学习率:3e-5 数据:5GB法律语料+20%通用 训练:5epochon法律部分 算力:8×H100×5天≈1000 H100小时 成本:约2 万人民币Step 2:SFT
基座: 上一步CPT结果 方法:QLoRA(r=64,alpha=128) 学习率:2e-4 数据:12万条SFT(含10%通用) 训练:3epoch 算力:2×H100×3天≈144H100小时 成本:约3000 人民币Step 3:DPO(增强)
基座: 上一步SFT结果 方法:QLoRADPO 学习率:5e-6 数据:5000条专家偏好对(律师评审) 训练:1epoch 算力:2×H100×2天≈96H100小时 成本:约2000人民币+5000条标注(约5 万人民币)合计成本:~58 万人民币(包括数据采集、标注、算力、人工)。
4.5 评估结果
经过 3 个月迭代,最终模型在法律领域 benchmark 上的表现:
指标 | base Qwen3-32B | 微调后 | 提升 |
法考客观题准确率 | 68% | 84% | +16 pt |
合同条款识别 F1 | 0.71 | 0.89 | +18 pt |
案例引用准确率 | 52% | 81% | +29 pt |
MMLU(通用) | 76% | 74% | -2 pt(可接受) |
用户满意度(5 分制) | 3.8 | 4.4 | +0.6 |
对比商业 API:
模型 | 合同条款识别 F1 | 单次推理成本 |
Claude Opus 4.7 | 0.92 | $0.05 |
GPT-5 | 0.88 | $0.04 |
| 我们的微调 32B | 0.89 | $0.005 |
结论:微调 32B 在领域任务上接近顶级闭源,但成本仅 1/10。这就是垂直化的工程价值。
五、避坑清单 + 决策建议
5.1 5 大常见陷阱
坑 1:灾难遗忘
症状:法律模型连"今天天气怎样"都答不好。
对策:
SFT 数据混入 10-20% 通用指令
学习率小一些(QLoRA 2e-4 已经偏大)
训练 epoch 不要超过 3
不要忘了 base 模型评估
坑 2:数据"近亲繁殖"
症状:用 GPT-4 合成数据训自己,效果反而下降。
对策:
合成数据 + 专家标注混合(至少 20% 真实数据)
多个 teacher 模型混合生成
严格去重和质量过滤
坑 3:评估"过拟合"
症状:领域 benchmark 飙升,真实业务反而退步。
根因:测试集和训练集分布太相似。
对策:
Hold-out 测试集严格隔离
用真实业务样本做评估
人工 / LLM Judge 评估必不可少
坑 4:通用能力"塌方"
症状:MMLU 下降 10%+,模型"变笨"。
对策:
通用数据配比加到 30%
用 LoRA 而非全参(自带保护)
学习率减半
退一步:放弃 CPT,只做 SFT
坑 5:"过度训练"
症状:训越多越差。
对策:
监控 val loss,早停
不要用同一份数据多 epoch
用 cosine schedule 不要 constant LR
5.2 何时该放弃自己训
老老实实用通用 API的几种场景:
数据量 < 1000 条——训不出名堂
业务还在快速变——刚训完就过时
专业判断核心(医疗诊断)——可信赖性不够
预算 < 5 万——大概率不够覆盖完整流程
团队没微调经验——先用 Prompt + RAG 跑通
反之,可以考虑训:
数据量 > 5K,且质量可控
业务稳定,3 个月以上保留期
有明确的成本/合规驱动
有微调经验或顾问支持
5.3 端侧化部署
垂直微调后,可以进一步做端侧化:
微调 32B → 蒸馏到 7B / 3B → INT4 量化 → 端侧部署典型场景:
律所内网部署(数据完全不出域)
医院本地工作站(HIPAA / 等保合规)
销售移动端(离线可用)
👉 详见系列第 33 篇:端侧大模型。
六、扩展话题与下一篇预告
6.1 多领域共存:单基座 + 多 LoRA
如果你需要服务多个领域(法律 + 医疗 + 金融),有两种方案:
方案 A:训一个"通用专业"大模型(一个 base + 一份混合 SFT)
方案 B:训多个 LoRA,按业务热切换
方案 B 更工程友好——一份 base 部署,按请求加载不同 LoRA,资源效率高。vLLM、SGLang 都已支持。
6.2 RAG + 微调:混合最强
实战中最常见的高效组合:
微调让模型"懂行话"(术语、格式、风格) + RAG 给模型"实时知识"(最新法规、案例) = 准确性 + 时效性 + 成本可控👉 详见系列第 26 篇:RAG 实战。
6.3 行业基座 vs 通用基座 + 微调
2025-2026 的一个新观察:通用大模型进步太快,垂直预训练的小厂被卷死。
很多曾经的"行业大模型"已经被通用模型 + 简单微调超过。这意味着:
完整自研 CPT 越来越不划算
「通用基座 + LoRA」越来越主流
数据 + 工程优化比"自研基座"更重要
未来趋势:基座由几家头部公司提供,行业团队的核心价值在数据、评估、应用工程化。
结语:垂直化是「精打细算」的工程艺术
读完本文你应该明白:
垂直化不是"训个新模型",而是Prompt → RAG → SFT → CPT 的渐进式工程
小模型微调 > 大模型通用——在专业任务上,这个公式很多场景成立
数据 + 评估 + 工程化是垂直团队的核心竞争力,不是基座本身
80% 场景,SFT + QLoRA 就够,不要轻易上 CPT
永远要保留通用能力——灾难遗忘是垂直化的头号杀手。
