LLMNotes

第 02 章:模型能力边界

zjc 于 2026-01-02 发布

这是《LLM 应用开发 零基础实战指南》的独立章节版。本章从概念、实操和生产排查三个视角展开,代码块保留了原书可直接运行的版本。 选型的第一步不是找“最强模型”,而是判断任务是否适合模型,以及模型出错时业务能否承受。本章讨论 LLM 的能力边界、适用任务和工程降级方案。

2.1 模型擅长什么

任务类型 适合程度 原因
非结构化文本理解 语义归纳是核心能力
意图识别与分类 较高 可用少量示例适配
信息抽取 较高 适合文本到结构化字段
摘要与改写 较高 允许多种合理表达
代码生成与解释 较高 需要测试和评审兜底
精确数学计算 容易算错,应交给程序
强规则校验 应由代码实现
实时事实问答 必须接入外部数据
高危自动决策 需要规则、权限和人工确认

一个实用原则:让模型处理模糊性和语言理解,让程序处理确定性计算、权限和事务。

2.2 上下文窗口不是记忆

上下文窗口表示单次请求能容纳的输入和输出 token 数,不等于模型能可靠使用所有内容。

上下文窗口
  |-- system
  |-- 历史消息
  |-- 检索资料
  |-- 工具结果
  |-- 用户问题
  +-- 输出预留

常见问题:

  1. 长上下文中间部分容易被忽略;
  2. 无关内容会稀释关键信息;
  3. 历史消息累积导致成本和延迟上升;
  4. 超限请求会被拒绝或被截断;
  5. 上下文很长不代表事实准确;
  6. 用户隐私可能随历史被带入后续请求。

工程做法:

保留:任务指令、当前问题、相关资料、必要状态
压缩:历史摘要、工具结果摘要
丢弃:过期轮次、重复文档、无关日志

2.3 知识边界

模型参数中的知识来自训练数据,存在截止时间、语料偏差和错误事实。

问题 现象 处理
知识过期 新政策、新版本不知道 接入检索或 API
私有知识缺失 不了解内部系统 RAG 或数据库查询
冷门事实错误 编造来源 引用校验
数据冲突 多个资料说法不同 时间戳、权威度排序
业务规则变化 沿用旧规则 规则外置并版本化

生产系统不要依赖“模型记得”,而要让答案基于当前上下文。

2.4 不确定性与置信度

LLM 输出的 confidence 字段不一定等于真实概率。它可以作为辅助信号,但不能作为唯一风控依据。

{
  "intent": "refund",
  "confidence": 0.92,
  "evidence": "用户提到申请退款和订单号"
}

更可靠的策略:

  1. 要求模型给出证据;
  2. 校验证据是否存在于输入;
  3. 多次采样观察稳定性;
  4. 使用分类器或规则交叉判断;
  5. 低置信场景进入人工确认;
  6. 关键字段用数据库验证。

2.5 模型版本差异

同一个 Prompt 在不同模型、不同版本、不同服务商上可能表现不同。

可能变化:

  1. 指令遵循程度;
  2. JSON 输出稳定性;
  3. 工具调用协议;
  4. 上下文窗口;
  5. 输入输出价格;
  6. 安全策略;
  7. 分词方式;
  8. 停止词和格式偏好。

版本管理建议:

应用版本
  +-- Prompt 版本
  +-- 模型版本
  +-- 检索配置版本
  +-- 工具 schema 版本
  +-- 评测集版本

升级模型时必须跑回归评测,不能只看几条人工体验。

2.6 成本与延迟边界

token 是 LLM 系统的主要资源。

总成本 = 输入 token 价格 * 输入量 + 输出 token 价格 * 输出量

影响延迟的因素:

因素 说明
输入长度 预处理和注意力计算变慢
输出长度 生成是逐 token 进行
模型规模 能力强但通常更慢
网络链路 客户端、网关、服务商
并发限制 429 或排队
工具调用 数据库、搜索、内部 API
重试 失败后成本叠加

优化顺序通常是:减少无效上下文、限制输出长度、增加缓存、选择合适模型,再考虑并发和批处理。

2.7 安全边界

模型没有天然的企业权限边界。它会按上下文生成内容,不会自动理解“这个用户不能看哪些数据”。

常见风险:

  1. Prompt 注入改变任务指令;
  2. 检索内容中携带攻击指令;
  3. 工具结果泄露敏感字段;
  4. 历史会话跨越权限场景;
  5. 输出系统提示或密钥;
  6. 诱导模型生成有害内容。

边界设计:

数据读取:按用户权限过滤
工具调用:最小权限 + 白名单
输出展示:字段级脱敏
关键动作:独立审批流

2.8 任务适配矩阵

业务任务 推荐方案 不建议
订单状态查询 API + 模型组织语言 让模型猜状态
合同字段抽取 OCR + LLM + schema 校验 直接写库
客服路由 分类 + 阈值 + 人工兜底 全自动闭环
报表生成 数据库取数 + 模板 模型计算总额
代码助手 生成 + 编译测试 + 评审 直接部署
知识问答 RAG + 引用 依赖参数记忆
数据修改 生成 SQL 预览 + 权限确认 自动执行

2.9 降级方案

模型不可用不代表业务必须停摆。

主模型
  -> 失败/超时
     -> 备用模型
        -> 仍失败
           -> 规则模板
              -> 人工客服

降级策略:

  1. 只读场景返回固定提示;
  2. 分类场景回退关键词规则;
  3. 生成场景使用模板;
  4. 高风险动作直接禁止;
  5. 保留失败请求用于重放;
  6. 明确告知用户服务降级;
  7. 监控降级比例。

本章小结

LLM 擅长理解、归纳、改写和结构化,但不擅长精确计算、实时事实、强规则校验和自主承担高危决策。生产系统要控制上下文、外置知识、校验输出、隔离权限,并为模型不可用准备降级路径。边界清楚后,模型能力才能被安全放大。

思考题

  1. 为什么长上下文不能替代 RAG?
  2. 模型输出的置信度可以怎样被验证?
  3. 哪些业务字段不应该交给模型直接判断?
  4. 模型升级时为什么要同时记录 Prompt 和检索配置版本?
  5. 如何为一个客服入口设计模型不可用时的降级链?