第三天,老板问你:「你这个 Agent 到底行不行?有没有量化指标
1️⃣ 考察意图
面试官真正想看的是:你能否从“感觉还行”跳到“数据说话”,系统性地定义Agent的评估体系。这不是背概念题,而是工程系统设计题。刁钻点在于:Agent是多步骤、多工具、有状态的系统,传统NLP指标(如BLEU、ROUGE)完全失效。答好了能展示:你懂离线/在线评估分层、能设计可复现的测试集、会用LLM-as-Judge做自动化评估,并且有迭代优化的工程完整流程思维。
2️⃣ 标准答
我会从三个层面回答:离线评估、在线A/B测试、持续监控与迭代。
1. 离线评估:构建可复现的“金标准”
- 测试集设计:不能只靠随机采样。我会构建三类case:
- 典型场景(70%):从线上日志抽1000条成功/失败对话,人工标注“任务是否完成”(二分类)和“步骤正确性”(多分类,如工具调用顺序、参数正确性)。
- 边界case(20%):故意构造模糊指令(如“帮我查一下,但我不确定具体日期”)、多工具冲突(如同时调用天气和日历,但时间冲突)、长上下文(超过10轮对话)。
- 对抗case(10%):注入幻觉诱导(如“你确定吗?我查到的数据不一样”)、工具返回异常(如API超时、返回空结果)。
- 核心指标:
- 任务完成率:最终目标达成比例。例如客服Agent,用户问题是否被解决(人工标注为1/0)。
- 工具调用成功率:每个工具调用是否成功(如API返回200、参数格式正确)。注意:工具调用成功≠任务完成,例如调了天气API但没回答用户问题。
- 平均步骤数:衡量效率。理想Agent应尽量少步骤(如3步内解决),但复杂任务允许更多。
- 幻觉率:用LLM-as-Judge(如GPT-4)逐句判断输出是否基于工具返回或上下文。具体做法:给Judge一个prompt,包含工具返回结果和Agent输出,让它标记“忠实/幻觉/无关”。【通用知识】一致性通常能达到85%以上。
- LLM-as-Judge的坑与解法:
- 坑:Judge会偏向自己(如GPT-4 judge GPT-4 Agent),导致高估。解法:用不同模型(如Claude judge GPT-4 Agent),或引入人工抽检(每100条抽10条,计算Cohen's Kappa,要求>0.7)。
- 坑:Judge对长上下文敏感,容易忽略中间细节。解法:分段评估,每轮对话单独打分,最后加权平均。
2. 在线A/B测试:用业务指标说话
- 对比基线:通常用旧版Agent(如纯规则系统)或随机策略。流量分配:50%基线,50%新Agent,持续1周。
- 业务指标:
- 用户满意度:通过点赞/点踩、后续是否重复提问(如用户问完又回来问类似问题,说明没解决)。
- 任务留存:用户是否在24小时内再次发起同类请求。例如客服Agent,如果用户第二天又投诉同一问题,说明没彻底解决。
- 转化率:如果是电商Agent,看用户是否完成下单。
- 统计显著性:用t-test或卡方检验,p<0.05才算有效。注意:不要只看均值,要看分布(如90分位响应时间)。
3. 持续监控与迭代
- Dashboard:实时展示任务完成率、平均步骤数、工具调用失败率。设置告警:如果任务完成率低于80%或工具调用失败率超过5%,自动触发告警。
- 迭代完整流程:每周分析失败case,归类(如“工具参数错误”、“上下文丢失”、“幻觉”),然后针对性优化:
- 工具参数错误 → 改进工具描述或增加参数校验。
- 上下文丢失 → 优化chunking策略或增加记忆模块。
- 幻觉 → 调整prompt约束或引入外部知识库。
- Trade-off:离线指标高不一定线上好。例如,为了降低步骤数,Agent可能过早给出错误答案。所以离线评估必须包含“鲁棒性”维度(如对抗case),线上则关注用户长期留存。
3️⃣ 答题模板(30 秒电梯版)
“这个问题我从离线评估、在线A/B测试、持续监控三个层面回答。离线层面,我会构建包含典型场景、边界case和对抗case的测试集,用任务完成率、工具调用成功率、平均步骤数和幻觉率作为核心指标,并用LLM-as-Judge配合人工抽检来保证评估一致性。在线层面,通过A/B测试对比基线,关注用户满意度和任务留存等业务指标。持续监控层面,建立Dashboard并设置告警,每周分析失败case并迭代优化。总结一句:Agent评估不是一次性工作,而是一个从离线到在线、从指标到优化的完整流程系统。”
4️⃣ 高频追问 & 应对
追问 1:LLM-as-Judge 的准确率怎么保证?如果 Judge 本身有偏见怎么办?
首先,我会用人工抽检来校准:每100条抽10条,让两个标注员独立打分,计算Cohen's Kappa(要求>0.7)。如果一致性低,说明Judge的prompt有问题,需要调整(如增加few-shot示例)。其次,我会用不同模型做Judge(如Claude judge GPT-4 Agent),避免自评偏见。最后,我会计算Judge与人工的准确率,如果低于85%,则回退到全人工标注(成本高但可靠)。
追问 2:如果线上A/B测试发现新Agent的离线指标高但用户满意度低,怎么排查?
首先,检查用户满意度指标是否合理:例如,用户点踩可能是因为Agent回答太长(效率问题),而不是任务没完成。我会细分用户反馈:是“回答错误”还是“回答太啰嗦”?其次,分析失败case:离线测试集可能覆盖不全,比如漏了多轮对话中的上下文丢失。我会从线上日志抽100条低满意度case,人工标注失败原因,然后补充到离线测试集中。最后,调整迭代优先级:如果用户更在意效率,我会优先优化平均步骤数,而不是任务完成率。
追问 3:Agent 的评估指标怎么跟业务 KPI 对齐?比如老板只关心 GMV。
我会建立指标映射:任务完成率 → 用户留存(完成任务的用户更可能复购),平均步骤数 → 用户满意度(步骤少体验好),幻觉率 → 退货率(幻觉导致用户买错东西)。然后做相关性分析:用历史数据计算任务完成率与GMV的Pearson相关系数(比如0.6),证明优化Agent指标能直接提升业务。最后,在A/B测试中同时监控Agent指标和GMV,如果Agent指标提升但GMV没变,说明需要调整业务目标(如从GMV转向用户长期价值)。
5️⃣ 避坑 · 常见错误答法
- ❌ “用BLEU/ROUGE评估Agent输出,跟标准答案对比。” → ✅ “Agent输出是开放式的,没有标准答案。应该用任务完成率(二分类)和工具调用成功率(结构化指标),而不是文本相似度。”
- ❌ “只提离线指标,比如准确率、召回率。” → ✅ “离线指标只是起点,必须结合在线A/B测试和业务指标(如用户满意度、任务留存),才能反映真实效果。”
- ❌ “用单一指标,比如任务完成率,就够用了。” → ✅ “单一指标容易过拟合。比如为了高任务完成率,Agent可能多轮追问(增加步骤数),导致用户满意度下降。必须用多个指标(任务完成率、平均步骤数、幻觉率)综合评估。”
6️⃣ 简历呼应
- 如果你有RAG项目:从“检索质量对Agent任务完成率的影响”切入,展示你如何用评估指标(如检索召回率、生成忠实度)优化chunking和rerank策略。
- 如果你只做过传统NLP:用“分类任务评估”类比,比如把Agent的每一步工具调用看作一个分类任务(正确/错误),然后迁移到多步骤评估。强调你懂混淆矩阵和F1-score。
- 如果你是校招无项目:聚焦“LLM-as-Judge”的论文复现(如《Judging LLM-as-a-Judge》),展示你理解评估的偏差和校准方法。可以提一个demo:用GPT-4评估一个简单的客服Agent,计算与人工标注的一致性。
- 《Judging LLM-as-a-Judge with MT-Bench and Chatbot Arena》
- 《Evaluating Tool-Augmented Agents: A Survey》
- 《AgentBench: Evaluating LLMs as Agents》
- 《RAGAS: Automated Evaluation of Retrieval Augmented Generation》
- 《The Cost of LLM-as-a-Judge: A Case Study on Bias and Calibration》