你的团队里是不是也有这种混乱: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 的实践表明,好的评估框架是“共享的管道 + 各团队的专有指标”,这样才能既保证回归安全,又不抹杀领域的专业性。

Accelerating Performance by Incrementally Integrating Rust into Existing Codebas
Accelerating Performance by Incrementally Integrating Rust into Existing Codebas
Managing Asynchronous APIs at Scale
Managing Asynchronous APIs at Scale
Building Reusable Evaluation Frameworks for Agentic AI Products
Building Reusable Evaluation Frameworks for Agentic AI Products
Keeping the Mainline Green across Diverse Language Monorepos
Keeping the Mainline Green across Diverse Language Monorepos
Future Cybersecurity: Hardware Memory Safety, Automated Governance and Post-Quan
Future Cybersecurity: Hardware Memory Safety, Automated Governance and Post-Quan
QCon AI is a practitioner-led event focused entirely on the engineering discipli
QCon AI is a practitioner-led event focused entirely on the engineering discipli
阅读原文 → 返回 AI 技术文档

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