你的团队里是不是也有这种混乱:A 组做安全告警分析,B 组做企业知识问答,每组都在构建自己的 Agent,也各自造了一套评估数据集、各存各的 trace、各跑各的评测脚本。改动一个模型或 Prompt,没人知道会不会把另一个团队的功能搞坏。Elastic 的主数据科学家 Susan Chang 在 QCon 上分享了他们从这种状态走向统一评估框架的全过程,里面有大量接地气的实操细节,值得每一个正在把 Agent 推向生产的人参考。
先看他们跑在线上的是什么。Elastic 的核心产品是 Elasticsearch,全世界很多公司在用它的关键词搜索和向量检索,像 Stack Overflow、Uber、GitHub、Tinder 都是客户。因为覆盖面太广,用户拿它干的事五花八门,所以 Elastic 内部也干脆自己在一堆 Elasticsearch 之上构建可复用的智能体,供不会写复杂查询的用户直接使用。一种是安全场景的 attack discovery(攻击发现),从海量日志里自动筛出可能的攻击线索,代替安全分析师手工翻日志;另一种是企业聊天机器人,让用户用自然语言查询存在 Elasticsearch 里的私有文档。这两种 Agent 差别很大,但都面临同一个拷问:怎么知道它回答得好不好?怎么在迭代时防止回归?
以前每个团队自己搭一套评测。安全团队会找安全专家编造一些新颖的攻击场景,做成评测数据集,还需要大量正常场景作为负样本。指标上用了 precision 和 recall(精确率和召回率,一个看查得准不准,一个看漏没漏),用来匹配告警 ID,防止 AI 胡编乱造;还要算相似度分数、事实性分数,并核对 MITRE 战术(一套给网络攻击分类的行业标准),确保模型别把不相关的攻击类型关联上来。而做企业聊天机器人的团队,评测数据完全是另一套:比如“我想在 Google Workspace 里验证我的域名,需不需要改 DNS?”这类问题,答案要从现有文档里抽取。他们用的指标也有重复的 precision/recall 和事实性,但更关心回答的相关性和完整性。还额外看重一个叫 ES|QL 的东西——这是 Elastic 专门做的查询语言。聊天机器人回答关于 Elastic 的问题时,必须生成正确的 ES|QL 语法,甚至要能调用工具去格式化或校验查询。可以看到,每个团队都在用重复的框架逻辑,却各自存放在不同的数据存储里,跑在不同的地方。
问题很清楚:做评估这件事本身成了另一份重复劳动,而且难以横向比较。Susan 先强调一个基础层——tracing(追踪,就是把一次 Agent 执行过程中的所有调用和中间步骤都记录下来)。Elastic 内部重度使用 LangSmith 和 Phoenix 这类工具,也试过其他很多方案。在 LangGraph 这类框架里画一个 Agent 的流程图很容易,但一旦真正跑起来,你看到的是成千上万个 LLM 调用、工具调用、检索结果。没有 tracing,评估就是瞎抓。它能让你看清每一个节点输出什么、在哪一步开始出错,才能有针对性地设计评估指标。
于是他们把各团队的经验沉淀成一个共享评估框架。核心思路不是让每个组继续各写各的评估器,而是把公共构建块抽出来:统一的测试数据集管理、统一的评测执行管道、统一的指标库。每个团队仍然可以补充自己的领域特殊指标,但底层的数据格式、存储位置、运行方式都对齐了。这样改一个模型或 Prompt,可以同时跑所有相关 Agent 的回归测试,任何质量下降都能立刻看见。
最让我意外的是他们并没有把评估做成一把万能尺子,而是保留了各领域的“方言”。安全团队必须盯紧 MITRE 战术,聊天机器人团队必须盯紧 ES|QL 语法,这些是不能用一个通用 metric 糊弄过去的。共享框架的价值在于把“测什么”的灵活性留给团队,把“怎么测”的基建统一起来。
对我们有什么启发?如果你正在同时维护两个以上 Agent,或者准备把一个 Agent 从原型推到生产,我建议立刻做两件事。第一,把 tracing 先落地,不管用 LangSmith、Phoenix 还是自己攒,没有完整的 trace 数据,后面所有评估都是盲人摸象。第二,别急着写一堆一次性评估脚本,先花一两天把团队现有的评测流程里重复的部分抽出来——比如数据集的存取、指标计算、报告生成——统一成一个内部库。后续新增 Agent 时,接上这个库就能马上开始评测,还能顺便享受其他团队补进去的新指标。
这里有个坑:不要让共享框架变成僵硬的标准化。每个 Agent 的成败指标天然不同,框架要提供的是公共底座和可插拔的扩展点,而不是强迫大家都用同一个“综合评分”。Elastic 的实践表明,好的评估框架是“共享的管道 + 各团队的专有指标”,这样才能既保证回归安全,又不抹杀领域的专业性。









内容与图片版权归原作者所有 · 原文: https://www.infoq.com/presentations/elastic-ai-agent-evaluations/?utm_campaign=infoq_content&utm_source=infoq&utm_medium=feed&utm_term=global