模型选择:质量、延迟、成本与上下文

# 模型选择:质量、延迟、成本与上下文

本篇目标

学会从任务、质量、延迟、成本、上下文和稳定性选择模型,并使用固定评测集代替 “最大模型一定最好” 的直觉判断。

拆解任务需求比较模型能力设计模型路由建立升级门禁

# 先记住一句话

模型选择不是找一个排行榜第一的模型,而是在真实任务上选择达到质量底线,同时满足延迟、成本、上下文和合规约束的方案。

# 先定义任务,再比较模型

同一个产品可能包含多种任务:

任务 更重要的能力 常见约束
意图分类 稳定、快速、结构准确 低延迟、高并发
长文摘要 长上下文、忠实度 输入费用、截断风险
复杂代码分析 推理与代码能力 响应时间较长
信息抽取 Schema 遵循和事实准确 字段不能漏
Embedding 语义检索效果 向量维度和索引成本
图片理解 多模态能力 图片大小和隐私

如果不先拆任务,只问 “哪个模型最好” ,就无法判断更高费用是否带来有价值的提升。

# 六个核心选择维度

# 1. 质量

质量要落到具体指标,例如分类准确率、摘要忠实度、JSON 通过率、代码测试通过率和正确拒答率。不能只看几次演示或通用榜单。

# 2. 延迟

至少区分:

  • 首 Token 延迟:用户多久看到第一段内容;
  • 总延迟:整个请求多久完成;
  • P50:典型请求表现;
  • P95 / P99:慢请求和容量风险。

流式输出可以改善用户感知,但不会自动缩短模型完成全部计算的时间。

# 3. 成本

成本通常受输入、缓存输入、输出、推理投入和工具调用影响。除单次价格外,还要乘以真实流量、重试率和上下文长度。

# 4. 上下文与输出限制

窗口是否能容纳指令、用户输入、历史、检索资料和输出预算?模型支持长上下文,不代表应该把所有资料都装入。

# 5. 功能与接口

检查是否支持结构化输出、流式、多模态、工具调用和所需语言 SDK。API 名称相同也不代表每个模型支持完全相同的参数。

# 6. 安全、隐私与合规

确认数据保留、区域、审计、内容安全和组织策略。敏感数据是否允许发送给外部模型,应由系统规则决定,而不是由开发者临时猜测。

# 为什么需要任务级模型路由

一个大型模型处理所有任务最简单,但可能浪费成本和容量。任务级路由可以让简单分类使用轻量模型,复杂推理再升级到更强模型。

请求进入
  ↓ 程序先判断任务类型和风险
简单抽取 → 轻量模型 → Schema 校验
复杂推理 → 强模型 → 结果评测
高风险动作 → 强模型 + 人工确认
1
2
3
4
5

路由条件应尽量由可解释规则或经过评测的分类器决定。不能让一个不稳定模型在没有上限的情况下反复升级和重试。

# Fallback 不是随便换模型重试

备用模型能提高可用性,但可能改变输出结构、上下文限制、语言风格和安全行为。设计 Fallback 时要明确:

  • 哪些错误允许切换,例如提供方暂时不可用;
  • 哪些错误不应重试,例如输入非法或权限失败;
  • 备用模型是否通过同一套 Schema 和评测;
  • 是否会重复计费或重复执行工具;
  • 结果中是否需要记录实际使用的模型。

质量不足时盲目换模型重试,容易把一次请求变成不可控费用循环。

# 怎样建立模型评测集

从真实业务中收集代表性样本,覆盖:

  • 常见正常输入;
  • 超长、模糊和信息不足输入;
  • 多语言、代码和专业术语;
  • 结构化输出边界;
  • 安全拒绝和越权请求;
  • 历史线上失败。

每个样本写清成功条件。确定性字段用代码判断,语义质量可以由人工或经过校准的模型评审,并同时记录延迟、Token 和费用。

# 模型升级为什么要经过回归

新模型可能总体更强,但在某种语言、格式或拒答策略上发生变化。升级时应:

  1. 固定旧模型作为基线;
  2. 对同一评测集运行候选模型;
  3. 比较质量、延迟、费用和失败切片;
  4. 对关键差异进行人工复核;
  5. 小流量发布并监控线上指标;
  6. 保留快速回退能力。

生产配置要记录模型标识和 Prompt 版本,避免出现结果变化却无法定位原因。

# 项目面试怎样表达

我不会按榜单直接选择模型,而是先把任务拆成分类、抽取、摘要和复杂推理,再为每类定义质量底线、P95 延迟和单次成本预算。候选模型运行同一套真实评测集,达到质量要求后选择成本更低的方案;简单任务走轻量模型,复杂或高风险任务才升级,并让备用模型也通过相同 Schema 和回归测试。

# 高频面试题与回答

1. 为什么不直接使用能力最强的模型?参考答案

能力最强不代表最适合所有任务。简单分类可能使用轻量模型就能达到质量要求,同时延迟和费用更低。正确做法是先定义任务指标,再用真实评测比较质量、延迟、成本和稳定性。

2. 模型路由有什么风险?参考答案

路由错误会把复杂任务交给能力不足的模型,或者让简单任务承担不必要成本。路由条件要可解释、有调用上限,并单独评测误分率、升级率和端到端结果。

3. 模型升级时主要验证什么?参考答案

用同一评测集比较任务正确率、结构通过率、安全行为、延迟和费用,并按语言、难度和风险切片。通过后先小流量发布,记录模型与 Prompt 版本,同时保留回退方案。

4. Fallback 为什么也要做评测?参考答案

不同模型的输出结构、上下文限制和安全行为可能不同。备用模型如果没有通过相同契约和质量测试,主模型故障时虽然接口可用,却可能返回无法解析或业务错误的结果。

# 接下来学什么

下一篇学习 模型调用的可靠性、延迟与成本,把模型选择放进真实流量、限流和故障场景中验证。

# 参考资料