从零到我们能用的一个LLM模型,不止是做训练,还有一系列的工作要做。包括数据准备、模型训练、后训练、评测、部署、推理优化、线上反馈等。

在这个过程中,Pre-training、SFT、LoRA、DPO、RAG、量化等概念经常同时出现,但它们解决的问题并不相同:有些决定模型学什么,有些决定如何更新参数,还有一些关注怎样低成本地提供服务。本文先从全局视角梳理一遍完整链路,再区分这些容易混淆的概念。

一条主线理解 LLM 落地:

数据与模型准备 → 预训练 → 领域适配 → 后训练与对齐 → 评测 → 部署与推理 → 线上反馈与迭代

一、LLM 落地的完整流程

1. 数据与模型准备

这一阶段决定了模型能力的上限,也是后续所有训练工作的基础。

  • 数据准备:数据采集、清洗、去重、质量过滤与预处理;
  • Tokenizer:确定文本如何被切分并转换为模型能够处理的 Token;
  • 模型选型:根据任务、数据规模和算力选择合适的 Transformer 架构或开源基座模型;
  • 训练基础设施:准备计算资源、分布式训练框架、数据管线、监控与 Checkpoint 管理。

2. Pre-training(预训练)

使用海量无标注文本进行 Next Token Prediction(下一个 Token 预测),让模型学习语言规律、知识表示和基础推理能力,最终得到一个 Base Model(基座模型)

简单来说,这一阶段解决的是:让模型先学会“说话”。

3. Continual Pre-training(持续预训练,可选)

在通用基座模型上继续使用领域语料进行预训练,也常被称为 Mid-trainingDomain Adaptation。它适合金融、医疗、法律等专业语料较多、领域知识要求较高的场景。

这一阶段的产物仍然是 Base Model,但它对特定领域的知识和语言风格更加熟悉。

4. Post-training(后训练)

后训练的目标是让基座模型从“会续写文本”变成“能够理解要求、完成任务并符合人类偏好”的助手。常见环节包括:

  • SFT(Supervised Fine-tuning):使用指令—回答数据进行监督微调,让模型学会按照指令回答;
  • Preference Optimization:使用偏好数据优化回答风格与质量,常见方法包括 DPO、KTO 等;
  • RL / RLHF / RLAIF:通过奖励信号进一步优化模型,常见算法包括 PPO、GRPO 等;
  • Reasoning Training:增强数学、逻辑和多步骤推理能力;
  • Tool Use / Agent:训练模型调用搜索、代码执行器、数据库等外部工具;
  • Safety Alignment:降低有害输出、越权操作和提示词攻击等风险。

可以将后训练理解为三个逐步递进的目标:听懂指令、符合偏好、可靠地完成任务。

5. Evaluation(评测)

评测不应只在上线前进行,而应贯穿模型训练、选型和迭代的全过程。常见评测维度包括:

  • 通用能力:知识、理解、生成质量等 Benchmark;
  • 专项能力:推理、数学、代码、工具调用等;
  • 安全性:有害内容、偏见、越狱与隐私泄露风险;
  • 业务效果:领域测试集上的准确率、召回率或任务完成率;
  • 人工评测:回答是否正确、有用、自然,并符合真实用户偏好。

离线指标只能说明模型在测试集上的表现,最终仍需要结合线上反馈、成本与延迟综合判断。

6. Deployment & Inference(部署与推理)

部署阶段关注如何以可接受的成本和延迟,稳定地向用户提供模型能力。

  • 模型压缩:通过 FP16、INT8、INT4 等量化方式降低显存占用;
  • 推理优化:使用 KV Cache、Continuous Batching 等技术提升吞吐量;
  • 推理框架:使用 vLLM 等框架管理并发请求和显存;
  • 应用增强:通过 Prompt Engineering、RAG 和工具调用补充外部知识与能力;
  • 服务治理:处理限流、监控、日志、降级、回滚与内容安全。

7. 线上反馈与持续迭代

LLM 系统上线并不意味着流程结束。线上数据会暴露离线评测难以覆盖的长尾问题,因此还需要持续收集失败案例,更新数据集与评测集,再回到 SFT、偏好优化或应用层进行迭代。

一个完整的 LLM 产品,本质上是一个“数据—训练—评测—部署—反馈”的闭环系统,而不是一次性的模型训练任务。

二、容易混淆的概念

下面这些术语位于不同层次,可以用它们各自回答的问题来区分:

关注的问题 对应概念 主要作用
我要让模型学什么? Pre-training / SFT / DPO / RL 决定训练目标与模型能力
模型参数如何更新? Full Fine-tuning / LoRA / QLoRA 决定参数更新范围与训练成本
训练数据是什么? Raw Text / Instruction / Preference 决定训练样本的组织形式
训练结果如何保存? Full Weights / Adapter 决定模型权重的保存与加载方式
模型如何高效部署? FP16 / INT8 / INT4 / vLLM 决定推理精度、显存占用与吞吐量
如何接入外部知识? RAG / Tool Use 扩展模型知识边界与行动能力

例如,LoRA 并不是一种训练目标。SFT 和 DPO 描述的是“用什么目标训练模型”,而 LoRA 描述的是“以什么方式更新参数”。同理,RAG 通常不会直接修改模型参数,而是在推理时检索外部资料,并将其作为上下文交给模型。