趋近智
当你部署一个预训练 (pre-training)的小语言模型时,很快就会发现它缺乏关于私有数据或特定任务的专门知识。为了填补这一空白,工程师通常依赖两种主要方法:微调(Fine-Tuning)和检索增强生成(RAG)。在投入计算资源进行训练之前,必须理清这两种方法的差异。
检索增强生成将语言模型视为推理 (inference)引擎,而非事实数据库。当用户提交查询时,系统首先搜索外部数据库(通常是向量 (vector)库)以寻找相关文档。这些文档会被附加到用户提示词 (prompt)中。随后,小语言模型完全基于这些注入的上下文 (context)来生成答案。
我们可以将 RAG 中的提示词构建表示为一个简单的函数:
这里, 是发送给模型的提示词, 是原始查询, 代表外部文档库。模型不会学习新的参数 (parameter),其权重 (weight)保持不变。这使得 RAG 在信息更新频繁的场景(如新闻汇总或客户支持文档)中表现出色。如果某个事实发生了变化,你只需要更新数据库即可。
微调则采用了完全不同的方式。微调不是在推理阶段提供上下文,而是修改模型本身的内部结构。通过让网络处理特定的“指令-回答”对并计算损失,利用梯度下降 (gradient descent)算法来更新模型权重。
权重的更新改变了模型词表生成的概率分布。如果你专门针对法律合同训练模型,那么生成法律术语的概率就会增加。知识和风格模式直接嵌入 (embedding)到了参数之中。
在推理阶段提供上下文与在训练阶段改变模型权重之间的架构差异。
为了做出合理的架构决策,你必须评估首要目标。RAG 是知识注入的最佳选择。如果你正在构建一个用于回答庞大员工手册相关问题的系统,RAG 是合适的方案。小语言模型不需要背诵手册,只需在运行时阅读提供给它的特定段落。
微调则是行为调整的最佳选择。如果你希望小语言模型读取自然语言查询并输出有效的 SQL 字符串,微调的效果会更好。模型会学习语法、表结构以及预期的格式规范。由于这些行为已经固化在模型中,你可以节省提示词占用的空间,不需要在每次用户请求时都提供 SQL 语法示例。
例如,从运行成本来看:RAG 会带来延迟,因为系统在生成文本前必须查询数据库。微调虽然需要前期的训练计算成本,但由于提示词更短且无需调用外部数据库,推理速度通常更快。
你也可以结合这两种技术。先进 AI 系统中常见的一种模式是:先微调一个小语言模型使其遵循特定的输出格式,然后使用 RAG 向其提供填充该格式所需的具体事实。这种混合方案能发挥两者的长处,同时规避各自的短板。
这部分内容有帮助吗?
© 2026 ApX Machine LearningAI伦理与透明度•