Offline Eval 和 Online Eval 有什么区别?一套 AI 系统为什么两个都需要

Offline Eval 负责发布前的可重复比较,Online Eval 负责发现真实生产分布与新失败。本文给出两者的边界、数据闭环与落地方式。

发布 ·更新 ·约 8 分钟 ·hugfeature

AI Eval 系列 #07
上一篇:Eval 指标怎么设计?为什么 Pass Rate 远远不够

很多团队做 Eval 时会走向两个极端。

一种是:

“我们有离线 Benchmark,所以质量没问题。”

另一种是:

“线上有监控,真实用户会告诉我们问题。”

两种都不够。

更完整的体系应该是:

Offline Eval
      ↓
Release
      ↓
Online Observation
      ↓
New Failure
      ↓
Offline Regression

Offline 和 Online 不是替代关系。

它们解决的是不同问题。

一、Offline Eval:发布之前回答“这次改动安全吗”

Offline Eval 的特点是:

  • 固定 Dataset;
  • 可重复运行;
  • 环境尽量稳定;
  • 有明确 Grader;
  • 可以对比版本。

典型用途:

Model A vs Model B
Prompt v3 vs v4
Tool Schema old vs new
Harness old vs new

它最适合做回归验证。

因为你希望输入尽量不变,只观察系统改动带来的变化。

二、Offline Eval 的核心价值是可比较

例如:

Eval Set = 200 cases

v1:
Pass = 81%

v2:
Pass = 87%

如果环境、数据和 Grader 都稳定,你才有资格说 v2 相对 v1 有改善。

所以 Offline Eval 特别强调:

  • 环境隔离;
  • Dataset 版本;
  • Prompt / Model 版本;
  • Trial 配置;
  • Grader 版本。

否则每次跑出来的差异里,会混入大量基础设施噪声。

三、但 Offline 永远覆盖不了真实世界

再好的 Dataset,也只是:

你已经知道要测什么。

真实用户会不断带来:

  • 新表达方式;
  • 新业务组合;
  • 新异常数据;
  • 新攻击方式;
  • 新长尾流程;
  • 新环境状态。

因此上线之后还需要 Online。

四、Online Eval 更接近“生产质量观测”

Online Eval 不一定意味着“线上每个请求都让 Judge 再评一次”。

它可以包含很多方式:

Production Metrics
User Feedback
Human Review
Shadow Evaluation
LLM Judge Sampling
Rule Violation Detection
Failure Mining

核心是:

在真实分布里持续观察系统。

成熟团队常见的组合也是自动 Eval、生产监控和周期性人工 Review 一起使用。

五、Online 最重要的产物不是分数,而是新 Case

假设线上发现:

用户:
撤回刚才那个申请,但保留附件。

Agent:
直接删除整条业务单据。

这个失败不能只留在日志里。

应该变成:

Production Failure
      ↓
Root Cause
      ↓
Eval Case
      ↓
Regression Set

下一版发布前必须重新跑。

这一步连接了 Online 和 Offline。

六、可以怎么做 Online Eval

1. 规则型监控

适合确定性风险:

  • Tool Error;
  • Timeout;
  • Retry 次数;
  • Permission Denied;
  • Schema Invalid;
  • Forbidden Tool;
  • Critical State Change。

这些不需要 LLM。

2. 抽样 LLM Judge

从线上流量抽样:

1% sessions
↓
Judge
↓
Correctness / Completeness / Risk

重点不是覆盖所有请求,而是发现趋势和新失败模式。

3. Human Sampling

高风险业务可以保留人工抽查,尤其用于校准 Judge、审核 Judge 分歧,以及检查新 Failure Type。

4. User Feedback

用户点踩、人工修改、重新执行、客服升级,都是非常强的质量信号。

不要只把它们当产品指标,它们应该进入 Eval 数据管道。

七、Shadow Eval 是升级模型时很有用的一层

如果准备从 Model A 切到 Model B,可以:

Real Traffic
    ↓
Model A → production result

同一输入
    ↓
Model B → shadow result

Model B 不产生真实副作用,只记录输出。

然后比较:

  • Task Success;
  • Judge Preference;
  • Tool Plan;
  • Latency;
  • Cost;
  • Critical Failure。

这比只用静态 Benchmark 更接近真实任务分布。

八、Online Eval 不适合直接替代发布 Gate

线上数据有几个问题:

  • 分布一直变化;
  • Ground Truth 不完整;
  • 用户反馈有偏;
  • 事件存在延迟;
  • 很多结果无法立即验证。

所以:

Online → discover
Offline → verify

Online 更适合发现问题,Offline 更适合确认问题已经修复。

九、一条完整的数据闭环

成熟一点的系统应该逐渐形成:

Production
  ↓
Trace / Feedback / Failure
  ↓
Failure Triage
  ↓
Failure Corpus
  ↓
Offline Eval
  ↓
Fix
  ↓
Regression
  ↓
Quality Gate
  ↓
Release

这时 Online 和 Offline 才真正连起来。

十、不要把 Production Monitoring 和 Eval 分成两个世界

常见问题是:

Observability 团队看线上指标
Eval 团队跑离线测试

两边数据互不流通。

最后:

  • 线上真实失败进不了 Eval;
  • Eval 里修好的问题也无法确认线上是否消失。

更好的设计应该共享:

Run ID
Task Type
Model Version
Prompt Version
Trace
Failure Type
Eval Case ID

让一次失败可以从 Production 追到 Regression。

十一、最小落地方式

如果系统刚开始,不需要复杂平台。

先做:

Offline:
30~100 个真实 Case
每次关键改动自动跑

Online:
记录 Trace
收集用户反馈
每周抽样人工 Review

Bridge:
线上失败 → 新增 Regression Case

这已经能形成第一版质量闭环。

下一篇继续把这座桥做具体:

线上失败到底怎么沉淀成 Failure Corpus?

参考资料

继续阅读这个系列

AI Eval:从大模型评测到 Agent Reliability →
  1. 大模型评测到底在评什么?Benchmark、Eval、业务评测一次讲清
  2. 排行榜第一,为什么到了你的业务里可能不好用?
  3. Model Eval 和 Agent Eval 有什么区别?从单次输出到完整执行轨迹
  4. 怎样构造一套真正有用的业务 Eval Dataset?
  5. LLM-as-a-Judge 怎么做才靠谱?从 Rubric、偏差到人工校准
  6. Eval 指标怎么设计?为什么 Pass Rate 远远不够
  7. Offline Eval 和 Online Eval 有什么区别?一套 AI 系统为什么两个都需要 · 当前篇
  8. 线上失败怎么变成 Failure Corpus?从一次事故到持续回归
  9. Agent Trace Grading 怎么设计?结果正确,过程也可能已经失控
  10. 怎么把 AI Eval 接进 CI / Quality Gate?让评测真正阻断坏版本
  11. 需求不完整时,测试用例生成的 Gate 应该怎么判?
  12. 测试用例 Agent 的门禁落地:一条需求缺口,应该挡住哪些用例?

沿着问题继续探索

从执行机制走向验证与交付。

相关文章

在 GitHub 反馈 ↗