图片

        前两篇讲了 SFT 和 DPO,从「会做」到「做得好」。

        这一篇我们聊一个每个业务团队迟早都要面对的问题:

怎么把通用大模型变成「行业专家」?

        打开 HuggingFace,你能看到一堆这样的名字:

Med-PaLM 2          (医疗)
BloombergGPT        (金融)
LawGPT / DISC-LawLLM (法律)
ChatLaw             (法律)
HuatuoGPT          (中医)
FinGPT             (金融)
CodeLlama           (代码)
...

        每一个都是某个行业的「垂直大模型」。背后的工程问题极其现实:

  • 法律团队:合同审查、案例检索、文书生成

  •  医疗团队:辅助诊断、病历摘要、医学问答

  •  金融团队:研报生成、风险分析、客户服务

  •  客服团队:行业知识 QA、工单分类、智能回复

        这些场景用通用 Claude / GPT 也能跑,但有三个不可回避的痛点:

  1. 专业术语理解不准——「再保险分入」「除权除息」「丙肝抗体阳性」需要更深度的领域知识

  2. 数据合规要求——金融、医疗、法律的数据往往不能出本地

  3. 响应速度与成本——大流量场景下通用 API 太贵太慢

        垂直大模型就是为了解决这三个痛点。但做不做、怎么做、做了值不值——这是一系列复杂的工程决策。

        读完本文你将能:

  1.  判断你的场景到底要不要做垂直微调

  2. 选对适配路线(Prompt / RAG / SFT / CPT)

  3. 设计垂直微调的完整数据 + 训练流程

  4. 用一个法律领域案例理解全流程

  5. 避免 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% warmup
DPO 配方(可选,效果加成)
学习率: 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 的几种场景:

  1. 数据量 < 1000 条——训不出名堂

  2. 业务还在快速变——刚训完就过时

  3. 专业判断核心(医疗诊断)——可信赖性不够

  4. 预算 < 5 万——大概率不够覆盖完整流程

  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

  •  永远要保留通用能力——灾难遗忘是垂直化的头号杀手。

Logo

免费领 200 小时云算力,进群参与显卡、AI PC 幸运抽奖

更多推荐