← 返回笔记列表
AI 技术与原理 第 20 / 28 篇

AI 原理学习笔记(二十):怎样评估一个大模型应用

查看“AI 技术与原理”专题目录(20/28)
本文目录 11 个小节

返回系列导读 · 先修:指标与统计

1. 测模型与测应用不是同一件事

公开 Benchmark 关注特定数据、任务和评分设置。实际应用还包含文档、检索、工具、权限、缓存和界面流程。

模型在榜单上高分,不代表公司知识库能找到最新制度,也不代表申请工具会正确执行。

因此至少分三层:组件是否正常,整条任务是否完成,实际业务是否获得收益。

2. 先写“什么算成功”

一个年假问题不能只按“回答里出现 5 天”判对。还要看适用人群、累计工作年限、制度版本与证据。

可以建立以下题目字段:

{
  "id": "leave-001",
  "question": "入职两年能休几天?",
  "scenario": "missing_information",
  "expected_behavior": "指出需确认累计工作年限",
  "evidence_ids": ["policy-1"],
  "forbidden_behavior": "直接编造具体天数"
}

标准答案不一定是一段唯一文字。对于开放回答,应规定必含要点、允许差异、错误条件和证据要求。

3. 评测集至少覆盖哪些情况

类型为什么需要
常见且有答案检查基本可用性
资料不足检查追问与拒答
多条件、跨段问题检查条件组合
旧新版本冲突检查时效判断
无权访问检查权限边界
诱导与提示注入检查不可信内容处理
工具超时或失败检查恢复与诚实报告
长输入、并发与异常格式检查工程稳定性

样本尽量来自真实需求并经过脱敏与授权。保留难例,但也记录真实分布;只有刁钻题或只有简单题,都会使结论偏离用途。

4. 回答与检索分别打分

回答可检查正确性、完整性、证据支持、引用准确、格式、拒答与可操作性。

检索单独看正确证据是否出现在候选、是否靠前、元数据与版本是否正确。生成失败时,先确认正确证据是否真的送进了模型。

RAG 的“忠实性”通常关心回答是否受提供材料支持;“事实正确性”还可能涉及材料本身是否正确。模型忠实复述过期制度,也会在真实业务上出错。

5. Agent 需要看最终动作

对于“生成申请草稿”,应检查草稿存在、字段正确、没有提前提交。对于“已批准提交”,应核对实际回执与后台状态。

过程指标包括工具选择、参数、越权尝试、重试、无进展循环、人工介入、步数与费用。单次工具成功率高,不必然整任务成功率高。

“模型说任务完成”只能作为待验证信号,不能直接充当完成标签。

6. 人工评审与模型评审

人工评审需要明确规则、培训、抽样复核和分歧处理。为减少先入为主,比较两个版本时可以随机交换显示顺序、隐藏模型名。

LLM-as-a-judge 用模型辅助评分,适合规模化初筛,但可能偏爱较长答案、某种文风或自身风格,也会受输入顺序影响。

应拿一批人工标注检查评审模型是否一致,关键失败继续人工核对。用于评分的输入不能让被测答案里的恶意指令轻易控制评审器。

7. 延迟、吞吐与 P95

平均值容易掩盖慢请求。P95 表示在所用统计口径下,大约 95% 请求不超过该延迟;不是“95% 的请求恰好花这么久”。

例如 20 个请求里 19 个是 1 秒、1 个是 20 秒,平均 1.95 秒,已经是大多数请求的近两倍。单看平均值仍无法完整表达长尾。

还应区分端到端延迟、TTFT、TPOT、吞吐和失败率。吞吐高不表示每个请求都低延迟。

下面采用 nearest-rank 的教学分位数定义:

from math import ceil
from statistics import mean

latencies = [1.0] * 19 + [20.0]
def percentile_nearest_rank(values, p):
    if not values or not 0 < p <= 1:
        raise ValueError("需要非空数据,且 0<p<=1")
    ordered = sorted(values)
    return ordered[ceil(p * len(ordered)) - 1]

print(mean(latencies))  # 1.95
print(percentile_nearest_rank(latencies, 0.95))  # 1.0
print(percentile_nearest_rank(latencies, 0.99))  # 20.0

这个例子还提醒:小样本的分位数非常粗,P95 可能没有抓住那一个最慢请求。要同时看样本数、最大值、更多分位数与分布,不要只挑一个指标。

8. 公平比较怎样做

尽量固定题集、文档快照、工具环境和评分规则,记录模型、Prompt、检索配置与采样设置。随机性较大时重复测量,并保留每题结果。

若新版本提升总体分数却降低关键安全题表现,要分别报告,不能用总平均掩盖。

指标差异结合样本量、配对统计与业务意义判断。统计上可区分的微小提升,也未必值得更高延迟和成本。

9. 离线到线上

离线通过后,可以小流量灰度,与旧版本对照,并预设回滚条件。线上收集失败样本时需要保护个人信息,避免把完整机密内容无差别写日志。

用户满意度、问题解决率、人工接管和节省工时是业务指标,但也要防止“用户没有投诉”被误当作事实正确。

将失败归类后补入回归集,形成“发现问题 → 定位环节 → 修改 → 固定集回归 → 灰度”的闭环。

复习卡片与自测

  • 先定义成功,再收集题目和证据。
  • 检索、回答、工具与业务分层评估。
  • 评审器本身也需要验证。
  • 效果、延迟、成本、权限与失败恢复一起看。

1. 公开榜单最高的模型一定最适合知识库吗?

参考答案不一定。领域数据、检索、部署、权限和成本都可能影响真实任务结果,应使用自己的评测集比较。

2. 为什么模型评审不能直接当绝对标准?

参考答案它可能有风格、顺序与共同错误偏差,必须用人工标注校准,并核查关键失败。

3. 为什么 P95 也不能单独代表全部体验?

参考答案它依赖样本量与统计口径,仍可能掩盖更慢尾部、失败和不同任务群体的差异。

原文定位

依据:原资料 第十篇、1.10、19.3、19.7。

继续学习本专题