尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

从“跑起来”到“跑得住”:用 DeepEval 构建可进入 CI/CD 的 Agent 评测工程体系

从“跑起来”到“跑得住”:用 DeepEval 构建可进入 CI/CD 的 Agent 评测工程体系 目录一、Agent 评测已经从“答案打分”进入“行为系统验证”一传统 LLM 评测为什么不够1、一个正确答案可能来自一条错误路径2、Agent 的失败具有级联性二从三个常用指标扩展为四层质量模型1、第一层结果质量——任务到底完成了吗2、第二层动作质量——工具是否选对、参数是否正确3、第三层推理质量——计划是否合理、执行是否遵循4、第四层运行约束——效率、安全、成本与权限二、先把最小评测跑起来但不要停在 Hello World一最小闭环的意义是验证评测基础设施1、第一条测试不应该追求“指标齐全”2. 写一个确定性更强的工具契约测试二版本锁定比“代码能运行一次”更重要1、评测框架本身也在快速变化2. 不要把默认 Judge 模型当成永久配置三、Trace-firstAgent 评测真正的工程分水岭一为什么 Trace 是 Agent 评测的“数据底座”1、没有 Trace评测只能看到结果不能解释结果2、端到端与组件级不是二选一而是上下两层二用 Trace 把测试从“文本样例”升级为“执行样例”1、Trace 中应该保存哪些最小信息2、不要把敏感原始数据无限制写入 Trace四、指标体系不要堆指标要建立职责分工一TaskCompletionMetric用“是否达成目标”做北极星指标1、它衡量的是 Outcome而不是文案质量2、Task Completion 不能替代全部指标二ToolCorrectnessMetric把动作层变成可测试契约1、工具名正确只是最低要求2、确定性规则优先于 LLM Judge三PlanQualityMetric 与 PlanAdherenceMetric分别评“想得对”和“做得像”1、Plan Quality 解决“第一步就想错了”2、Plan Adherence 解决“计划很好但中途跑偏”没有显式计划时计划指标可能产生“虚假的好成绩”四StepEfficiencyMetric让 Agent 不仅成功还要少走弯路五GEval把业务标准写进评测但必须可操作五、LLM-as-Judge 不是“自动真理”而是一套需要校准的测量系统一为什么强 Judge 仍然会不稳定1、Judge 会受到顺序、长度与自我偏好影响2、评判器与被评测对象必须一起版本化二构建 Judge 信任度的五步法1、先用小规模人工标注建立校准集2、对边界样例做重复评测3、优先让规则承担客观判断4、对关键指标设置“灰区”而不是单一阈值5、定期用人工复核检查 Judge 漂移六、评测数据集才是长期壁垒从样例集合走向失败模式资产一为什么手写 20 条测试永远不够二建议把数据集拆成四类1、Golden Set稳定验证核心能力2、Regression Set每次线上事故都“买一张永久门票”3、Edge Set专门打边界条件4、Adversarial Set验证提示注入与越权风险三数据集版本化比不断加样例更重要七、CI/CD 质量门禁评测必须参与“能不能合并”的决策一不要把全部评测都塞进每个 PR二夜间回归承担“广覆盖”三生产评测承担“真实分布监控”离线数据集无法永久代表线上流量四质量门禁应关注“绝对阈值 相对退化”八、一个更可靠的 Agent 评测金字塔一第一层确定性 Contract Tests二第二层语义 Evals三第三层场景回放与端到端集成测试四第四层生产在线评测与人工复核九、企业级落地示例退款客服 Agent 应该怎么评一先定义失败模式再选指标二一个推荐的 4 指标组合三测试代码应该和 Agent 一起演进十、DeepEval 的真正价值不是替你决定“什么叫好”而是把标准工程化一评测框架解决的是执行问题不是业务定义问题二一个成熟评测体系的标志是“失败可以推动下一步行动”十一、落地路线图从 1 天试跑到 4 周形成工程闭环一第 1 天建立最小可运行评测二第 1 周把 Agent 运行变成可观察 Trace三第 2 周建立指标职责与 Judge 校准四第 3 周建立数据集飞轮五第 4 周形成三层质量门禁十二、结语把 Agent 评测当成软件工程而不是模型打分可参考文章与资料干货分享感谢您的阅读Agent 评测真正困难的地方不是“给回答打一个分”而是验证一个会规划、会调用工具、会访问外部系统、会多步执行的自治流程是否完成了正确目标、采取了正确动作、遵守了必要约束并且能够在版本迭代后稳定复现质量。我们以 DeepEval 为工程抓手从最小可运行测试出发进一步构建 Trace-first 的评测架构、分层指标体系、LLM-as-Judge 校准机制、数据集飞轮与 CI/CD 质量门禁。重点不是“多用几个指标”而是把评测变成 Agent 软件交付过程中的基础设施。同时按 DeepEval 当前官方文档重新核对 API 与指标命名。较早实践中常见的AgentGoalCompletionMetric思路在当前官方 Agentic Metrics 体系中应优先对照TaskCompletionMetric官方当前还将ArgumentCorrectnessMetric、StepEfficiencyMetric、PlanQualityMetric等列入 Agent 核心指标。实际项目必须以锁定版本的文档与测试结果为准而不是复制历史代码片段。一、Agent 评测已经从“答案打分”进入“行为系统验证”一传统 LLM 评测为什么不够1、一个正确答案可能来自一条错误路径普通问答模型通常可以被抽象为“输入 → 输出”。因此相关性、事实性、完整性、风格等指标往往足够描述主要质量问题。但 Agent 不是单一生成器它更接近一个由模型驱动的动态工作流模型会拆解任务、选择工具、生成参数、读取工具返回、更新状态、决定下一步最后才形成对用户的回复。这会带来一个关键差异最终输出正确不代表执行过程可靠。例如一个退款 Agent 最终告诉用户“退款申请已提交”但它可能根本没有调用退款接口一个采购 Agent 给出正确价格却读取了无权限的数据源一个旅行 Agent 完成了机票预订却先进行了三次无意义搜索并产生额外费用。若评测只检查最后一句话这些失败都会被“正确答案”掩盖。2、Agent 的失败具有级联性Agent 的每个中间步骤都可能改变后续状态。一次工具选择错误可能导致错误上下文进入下一轮推理一次参数偏差可能让工具返回合法但错误的数据一个糟糕计划即使后续每个步骤都严格执行也可能稳定地产生错误结果。所以 Agent 质量不应被理解为某个单点分数而应被理解为一条链目标理解 → 计划形成 → 动作选择 → 参数构造 → 工具执行 → 状态更新 → 结果生成 → 用户目标达成。只要链上的关键节点不可观察评测就很难从“发现失败”进一步走到“定位失败”。二从三个常用指标扩展为四层质量模型1、第一层结果质量——任务到底完成了吗这一层回答的是最根本的问题用户目标有没有被实质完成。当前 DeepEval 的TaskCompletionMetric以完整 Trace 为基础从任务与结果之间的对齐程度进行判断。它适合做 Agent 的端到端主指标因为它关心的是“任务结果”而不是仅看文本表面是否漂亮。2、第二层动作质量——工具是否选对、参数是否正确ToolCorrectnessMetric适合检查 Agent 是否调用了预期工具并可进一步考虑参数、输出与调用顺序。对于交易、客服、运维、数据查询类 Agent这一层通常比回答风格更重要因为真正改变业务状态的是工具调用而不是语言描述。3、第三层推理质量——计划是否合理、执行是否遵循PlanQualityMetric与PlanAdherenceMetric可以分别回答两个不同问题计划本身是否足以完成任务Agent 后续是否按自己的计划执行。把二者分开非常重要。一个 Agent 可能“计划很好但执行跑偏”也可能“计划本来就错但执行得非常忠实”。两种故障的修复方向完全不同。4、第四层运行约束——效率、安全、成本与权限生产级 Agent 还必须考虑步骤效率、调用成本、时延、权限边界和风险动作。DeepEval 当前提供StepEfficiencyMetric等 Agent 指标而在企业系统里成本、P95/P99 时延、工具权限、重试次数、外部 API 错误率等往往需要与评测框架之外的可观测性数据结合。一个可用的 Agent不仅要“做成事”还要“用正确方式、在合理成本和权限内做成事”。二、先把最小评测跑起来但不要停在 Hello World一最小闭环的意义是验证评测基础设施1、第一条测试不应该追求“指标齐全”初次接入时最重要的是确认四件事测试用例能被稳定构造指标能正常执行并给出分数/原因测试失败能让进程返回非零状态结果可以进入本地报告或团队平台。DeepEval 延续了 Pytest 风格的工程体验把评测写成测试使用assert_test或测试运行命令执行。在团队工程里这个设计的价值不是“语法熟悉”而是可以直接复用现有的软件测试工作流。2. 写一个确定性更强的工具契约测试下面这个例子不依赖复杂 Agent Trace先验证“预期工具是否被正确调用”。它非常适合作为第一条 CI 测试from deepeval import assert_test from deepeval.metrics import ToolCorrectnessMetric from deepeval.test_case import LLMTestCase, ToolCall def test_refund_tool_contract(): case LLMTestCase( input用户要求取消订单并退款, actual_output退款申请已提交。, tools_called[ ToolCall(nameQueryOrder), ToolCall(nameSubmitRefund), ], expected_tools[ ToolCall(nameQueryOrder), ToolCall(nameSubmitRefund), ], ) metric ToolCorrectnessMetric( threshold1.0, should_consider_orderingTrue, should_exact_matchTrue, ) assert_test(case, [metric])这个测试的工程价值在于它先把“行为契约”固定下来。当模型、Prompt 或工具描述变化后只要 Agent 不再按预期路径调用关键工具PR 就会直接失败。二版本锁定比“代码能运行一次”更重要1、评测框架本身也在快速变化Agent 评测库仍处在高频演进阶段。指标命名、默认 Judge 模型、Trace API、框架集成方式都可能变化。因此在真实项目中建议锁定deepeval版本在仓库中记录评测框架升级日志把“评测指标变化”视为测试基础设施变更而不是普通依赖升级升级后先重跑固定基线集再决定是否调整阈值。2. 不要把默认 Judge 模型当成永久配置当前 DeepEval 文档对部分 Agentic Metrics 给出了默认 Judge 模型但这类默认值会随框架版本更新。生产项目应显式配置 Judge并在实验元数据中记录 Judge 名称、版本、Prompt/模板与运行时间。否则同一个 Agent 在两个月后的“同一套测试”里可能因为评判器变化而出现不可解释的分数漂移。三、Trace-firstAgent 评测真正的工程分水岭Trace 对应一次完整 Agent 运行Span 对应检索、LLM、工具或子 Agent 等组件。端到端指标与组件级指标应放在不同层级。一为什么 Trace 是 Agent 评测的“数据底座”1、没有 Trace评测只能看到结果不能解释结果DeepEval 当前的 Agent Quickstart 把 Agent 评测建立在 tracing 上一次完整运行形成 Trace内部每个组件形成 Span。这个抽象非常关键因为它把“黑盒输出”变成了“可审计执行轨迹”。一旦 Trace 完整你可以回答更多工程问题哪一步选择了错误工具哪个参数导致业务 API 返回异常检索阶段是否已经丢失关键信息计划是否在中途发生不必要偏移哪个子 Agent 贡献了主要时延2、端到端与组件级不是二选一而是上下两层端到端评测负责告诉你“整件事是否成功”组件级评测负责告诉你“失败发生在哪里”。端到端指标适合做质量门禁组件级指标适合做故障定位。如果只做组件级你可能得到“每个局部都不错但最终任务没完成”的假象如果只做端到端你只知道失败却不知道修哪个模块。二用 Trace 把测试从“文本样例”升级为“执行样例”1、Trace 中应该保存哪些最小信息对于工具型 Agent建议至少保留用户原始输入最终输出工具名工具输入参数工具输出摘要关键中间状态子 Agent/子流程边界错误、重试、超时总时延与主要 Span 时延。2、不要把敏感原始数据无限制写入 Trace评测可观测性越强数据治理要求越高。订单号、身份证号、账户余额、医疗信息、密钥、内部文档内容等不应该因为“方便调试”就无条件进入日志。生产 Trace 需要脱敏、分级授权、留存期限和审计策略。四、指标体系不要堆指标要建立职责分工指标应围绕失败模式选择而不是追求数量。一个场景通常用 3-5 个互补指标即可形成有效信号。一TaskCompletionMetric用“是否达成目标”做北极星指标1、它衡量的是 Outcome而不是文案质量TaskCompletionMetric的核心价值在于评判“任务与结果是否对齐”。对于执行型 Agent这比传统“回答相关性”更接近真实业务目标。例如用户要求“把下周一 10 点的会议改到 11 点并通知参与者”。如果 Agent 只是回复“好的已为您处理”但实际上没有更新日历文本可能很流畅任务却没有完成。2、Task Completion 不能替代全部指标一个 Agent 可以完成目标但过程依然存在问题多调用了昂贵工具使用了错误权限进行了无关搜索计划偏离后碰巧得到正确结果。因此 Task Completion 最适合作为“结果层主指标”而不是唯一指标。二ToolCorrectnessMetric把动作层变成可测试契约1、工具名正确只是最低要求当前 DeepEval 的ToolCorrectnessMetric可以从工具名扩展到输入参数、输出以及调用顺序。工程上建议按风险分级低风险查询检查工具名即可有状态写操作必须检查参数严格工作流检查顺序金融、审批、退款等关键流程尽量使用严格匹配与额外业务断言。2、确定性规则优先于 LLM Judge如果一个条件能用代码明确判断就不要首先交给 LLM 判断。例如是否调用了SubmitRefund退款金额是否小于订单实付金额是否禁止调用DeleteAccount参数中的币种是否符合账户币种是否在写操作前完成鉴权。确定性规则成本低、可重复、可解释是最适合做 CI Gate 的指标。LLM Judge 更适合处理语义层和开放式质量标准。三PlanQualityMetric 与 PlanAdherenceMetric分别评“想得对”和“做得像”1、Plan Quality 解决“第一步就想错了”如果 Agent 的任务需要多步规划计划质量会决定后续执行上限。一个包含错误依赖关系的计划即使工具调用百分之百正确也无法得到可靠结果。2、Plan Adherence 解决“计划很好但中途跑偏”计划遵循度更像执行纪律。它帮助发现 Agent 在长链任务中临时偏航、跳步、重复、绕路等问题。没有显式计划时计划指标可能产生“虚假的好成绩”DeepEval 当前文档说明若 Trace 中无法识别明确计划部分计划类指标会默认通过。这意味着一个“全是 1.0”的计划分数未必是好消息也可能意味着你的 Trace 根本没有暴露可评估的计划信息。所以在使用计划指标之前先确认两个问题Agent 是否真的有可观察的规划阶段记录的 reasoning/thinking 是否足以支撑评测而不只是最终结果四StepEfficiencyMetric让 Agent 不仅成功还要少走弯路Agent 经常出现一种“看起来没错”的退化最终任务仍能完成但步骤越来越多、工具调用次数越来越高、成本越来越贵、响应越来越慢。StepEfficiencyMetric可以把这种退化从“用户感觉变慢了”提前变成可观测信号。企业场景还应配合确定性指标平均工具调用次数、Token 使用、外部 API 成本、P95 时延、重试率等。五GEval把业务标准写进评测但必须可操作GEval 适合表达难以完全代码化的业务标准例如客服回复是否明确说明处理状态与预计时间合规助手是否区分事实、判断与建议数据分析 Agent 是否明确说明数据口径和不确定性销售 Agent 是否避免未经证实的承诺。但“回答是否优秀”“是否专业”这样的标准太宽泛。评测标准越抽象Judge 波动越大失败后也越难定位。一个更好的原则是每个自定义指标只负责一种可以描述、复核、修复的质量属性。五、LLM-as-Judge 不是“自动真理”而是一套需要校准的测量系统一为什么强 Judge 仍然会不稳定1、Judge 会受到顺序、长度与自我偏好影响LLM-as-Judge 让开放式质量评测变得可规模化但研究已经反复提示其偏差问题包括位置偏差、冗长偏好、自我增强偏差等。因此“换一个更强模型做 Judge”是必要条件之一却不是完整解决方案。2、评判器与被评测对象必须一起版本化建议把以下信息记录为一次评测运行的不可缺省元数据被测 Agent 版本系统 Prompt / 工具描述版本Judge 模型与版本指标 Prompt / 模板版本数据集版本阈值配置运行日期与环境。如果这些信息没有版本化所谓“回归测试”就缺少可比性。二构建 Judge 信任度的五步法1、先用小规模人工标注建立校准集从核心业务场景中抽取 50-200 条样例由领域专家给出“通过/失败”或分级评分。这个小集合不追求覆盖全部场景而用于判断自动 Judge 是否与人类标准基本一致。2、对边界样例做重复评测对靠近阈值的样例重复运行若干次观察评分方差。若同一个案例在 0.55 与 0.85 间反复跳动说明当前指标不适合直接作为硬门禁。3、优先让规则承担客观判断格式、数值、权限、工具调用、参数范围、禁止动作等规则尽量用代码判断把 Judge 留给语义正确性、完整性、解释质量等更适合模型的领域。4、对关键指标设置“灰区”而不是单一阈值例如≥0.85通过0.70-0.85需要二次评判或人工抽检0.70失败。这比把 0.79 与 0.80 视为本质不同更符合概率性评测的特点。5、定期用人工复核检查 Judge 漂移当 Judge 模型升级、指标模板变化或业务规范变化后应重新计算人机一致性。否则评测基础设施可能在团队不知情的情况下“改了尺子”。六、评测数据集才是长期壁垒从样例集合走向失败模式资产生产失败应被沉淀为回归样例形成“日志 → 归因 → Golden → CI → 生产”的持续学习闭环。一为什么手写 20 条测试永远不够Agent 最危险的问题往往不是标准路径而是组合边界模糊指令、冲突要求、缺失信息、异常工具返回、权限不足、上下文过长、连续追问、跨语言表达、恶意提示等。手写测试适合建立初始骨架但真正高价值的数据往往来自生产失败。二建议把数据集拆成四类1、Golden Set稳定验证核心能力覆盖最重要、最常见、业务价值最高的标准路径。数量不一定大但每条样例都应有明确预期。2、Regression Set每次线上事故都“买一张永久门票”只要生产中出现过有代表性的失败就应该在修复后加入回归集。这样团队不会在几个月后重新踩同一个坑。3、Edge Set专门打边界条件包括参数缺失、工具超时、重复请求、权限不足、时区问题、单位换算、并发状态变化等。4、Adversarial Set验证提示注入与越权风险对于能读取外部内容或执行写操作的 Agent必须覆盖提示注入、工具诱导、越权访问、数据外泄等安全场景。安全失败通常不适合用“平均分”稀释而应使用硬失败门禁。三数据集版本化比不断加样例更重要建议给测试样例附加元数据scenario业务场景risk_level风险等级source人工设计 / 生产日志 / 事故复盘failure_mode工具错误 / 规划错误 / 幻觉 / 越权等created_atownerexpected_tools或关键断言。这样数据集不再是一堆 JSON而是一张可以分析质量债务的“失败模式地图”。七、CI/CD 质量门禁评测必须参与“能不能合并”的决策PR 阶段运行快速硬门禁夜间运行更完整的语义回归生产阶段进行异步抽样评测。三层不应使用完全相同的成本策略。一不要把全部评测都塞进每个 PRPR 阶段建议优先运行关键工具契约权限与安全规则核心 Golden 子集少量高稳定性语义指标失败即阻止合并的 P0/P1 场景。如果每次提交都运行几千条 LLM Judge 评测研发会因为等待时间和成本绕过测试。二夜间回归承担“广覆盖”夜间评测可以覆盖完整 Regression Set多模型对比多次重复测量更强 Judge成本、时延、步骤效率趋势失败样例自动聚类。三生产评测承担“真实分布监控”离线数据集无法永久代表线上流量用户行为、外部工具、知识库与模型都在变化因此上线后仍需要对 Trace 进行采样评测。生产评测更适合异步执行避免把 Judge 时延叠加到用户请求上。四质量门禁应关注“绝对阈值 相对退化”如果主版本 Task Completion 长期为 0.93新 PR 跑出 0.85即使仍高于 0.80也可能是明显回归。因此建议同时判断是否低于最低阈值是否相对基线下降超过容忍区间P0/P1 场景是否出现新增失败成本或时延是否显著上升。八、一个更可靠的 Agent 评测金字塔一第一层确定性 Contract Tests便宜、快速、适合每次提交检查工具、参数、权限、格式、数值范围、状态机约束。这一层越扎实越不需要用昂贵 Judge 处理本可以写成assert的问题。二第二层语义 Evals用 LLM Judge 判断“规则无法完全表达”的质量Task Completion、GEval、Plan Quality 等放在这一层。它们提供了更强的语义覆盖但需要校准和成本治理。三第三层场景回放与端到端集成测试让 Agent 在尽量真实的工具与环境里执行Mock 可以验证逻辑但无法暴露真实 API 变化、数据质量、权限配置、网络失败等问题。高风险场景应在隔离环境中做真实或半真实回放。四第四层生产在线评测与人工复核自动评测不能完全替代真实用户反馈上线后的真实分布、事故、投诉与人工质检应持续回流。真正成熟的体系不是“自动化率 100%”而是知道哪些问题适合机器判断、哪些问题必须由人承担最终责任。九、企业级落地示例退款客服 Agent 应该怎么评一先定义失败模式再选指标假设退款 Agent 的主要风险是没查订单就直接退款调错工具退款金额错误不满足政策仍执行最终回复没有说明处理状态遇到工具失败后重复提交虽完成退款但路径过长、成本失控。对应的测试设计可以是失败模式首选检测方式是否适合硬门禁未查订单直接退款工具顺序 Contract是调错退款工具ToolCorrectness是金额错误Python 数值断言是违反退款政策规则引擎 业务断言是回复缺少状态说明GEval视稳定性重复提交Trace 次数断言是步骤冗余StepEfficiency 调用次数通常趋势门禁最终未解决用户目标TaskCompletion是/灰区复核二一个推荐的 4 指标组合对于这类工具型 Agent可采用ToolCorrectnessMetric关键工具及顺序TaskCompletionMetric用户目标是否真正达成一个业务GEval回复是否包含处理状态、后续步骤与时间预期一个确定性业务指标金额/权限/重复提交等。必要时再加入StepEfficiencyMetric但不建议一开始就堆到十几个分数。DeepEval 官方 FAQ 当前仍建议总指标数不要过多典型上限是 5 个左右原因正是为了让结果可解释、可行动。三测试代码应该和 Agent 一起演进Agent 研发中“只是改了几句话”并不等于低风险。系统 Prompt、工具描述、路由条件、输出格式都会改变模型行为。建议把以下规则写进团队开发流程Prompt / 工具描述变更必须触发 Agent Eval新工具上线必须新增工具契约测试线上事故修复必须新增 Regression CaseJudge 或评测框架升级必须重跑基线集质量门禁调整必须有历史数据支撑。十、DeepEval 的真正价值不是替你决定“什么叫好”而是把标准工程化一评测框架解决的是执行问题不是业务定义问题DeepEval 可以提供 Trace、指标、Judge 接口、Pytest 集成、数据集与运行机制但它无法替团队回答什么错误是不能接受的哪些场景比平均分更重要一次错误退款和一次语气不够礼貌是否应该同权什么样的成本上涨值得阻止上线哪些样例必须人工复核这些问题必须由产品、工程、业务、风险与运营共同定义。二一个成熟评测体系的标志是“失败可以推动下一步行动”如果一个评测失败后团队只能得到“0.67不通过”这个指标价值有限。好的评测应该能够回答失败发生在哪个 Trace / Span是结果、工具、参数、计划还是数据问题是否为历史已知失败模式是单点失败还是系统性退化应该改 Prompt、模型、工具描述、业务规则还是数据集。评测的终点不是排行榜而是缩短“发现问题 → 定位问题 → 修复问题 → 防止复发”的时间。十一、落地路线图从 1 天试跑到 4 周形成工程闭环一第 1 天建立最小可运行评测目标是跑通而不是完美需要完成安装并锁定 DeepEval 版本写 5-10 条核心 Golden接入一个工具契约指标接入一个端到端任务完成指标在本地与 CI 都能执行。二第 1 周把 Agent 运行变成可观察 Trace优先补齐高风险组件基本完成Agent、工具、检索、子 Agent 的 Span错误与重试记录关键工具参数脱敏后的 Trace失败样例能够定位到具体步骤。三第 2 周建立指标职责与 Judge 校准从“能打分”升级为“分数可信”具体完成3-5 个核心指标50-200 条人工校准集Judge 与人工的一致性检查灰区和人工复核策略基线版本冻结。四第 3 周建立数据集飞轮把线上失败变成永久测试资产完成Golden / Regression / Edge / Adversarial 分层测试样例元数据线上失败自动进入候选池每周复盘新增失败模式。五第 4 周形成三层质量门禁PR、Nightly、Production 分工运行完成PR 快速门禁夜间完整回归生产 Trace 异步抽样质量趋势、成本趋势与失败聚类明确责任人和回滚条件。十二、结语把 Agent 评测当成软件工程而不是模型打分Agent 评测最容易掉进两个极端一种是完全依赖人工体验“感觉新版本更聪明”另一种是堆满自动指标最后团队面对几十个分数却不知道该改什么。更有效的道路在二者之间用确定性规则守住不可违反的底线用 Trace 让过程可观察用少量互补指标描述主要失败模式用 LLM Judge 处理语义判断用数据集记录历史教训再把这些能力嵌入 CI/CD 和生产监控。DeepEval 的意义恰恰在这里它降低了把评测写进工程流程的门槛。但真正让 Agent 从 Demo 走向可靠产品的不是某一个 Metric而是团队是否建立了持续、可解释、可回归、可治理的质量体系。当每一次线上失败都能沉淀为新的测试当每一次 Prompt 或工具修改都能在合并前得到质量证据当每一次分数下降都能定位到具体 Trace 和失败模式Agent 评测才从“实验报告”变成了真正的软件工程能力。可参考文章与资料DeepEval - AI Agent Evaluation Quickstart —— 当前官方 Agent 评测快速入门重点是 Trace 与组件级/端到端评测。DeepEval - LLM Tracing —— Trace、Span 与组件级评测的官方说明。DeepEval - Tool Correctness —— 工具名、参数、输出、顺序与严格匹配的当前文档。DeepEval - Task Completion —— 当前 Agent 端到端任务完成指标。DeepEval - AI Agent Evaluation Metrics —— Plan Quality、Plan Adherence、Tool Correctness 等指标组合建议。DeepEval - Metrics FAQ —— 指标数量、GEval/DAG 等常见实践建议。DeepEval GitHub —— 项目 README、版本与集成能力。G-Eval: NLG Evaluation using GPT-4 with Better Human Alignment —— LLM-as-Judge / G-Eval 的经典研究。Judging LLM-as-a-Judge with MT-Bench and Chatbot Arena —— 讨论 LLM Judge 的可用性与位置、冗长、自我增强等偏差。Judging the Judges: A Systematic Study of Position Bias in LLM-as-a-Judge —— 对 LLM Judge 位置偏差进行系统研究。AgentBench: Evaluating LLMs as Agents —— 从多环境、多步交互角度理解 Agent 评测的复杂性。
返回列表