评估智能体搜索需端到端衡量整个「智能体+LLM+搜索+提取」栈,构建黄金数据集,在帕累托前沿上比较准确率-成本-延迟,而非只看单次搜索响应。

PARALLEL WEB SYSTEMS(@P0)教程 · 已翻译 · 约 11 分钟
阅览室 · AI 最佳实践#搜索#评估#智能体#数据#端到端#模式#前沿原文

作者:@everythingmeta,Parallel 公司 MTS

请阅读本文,或将其交给您的智能代理,以帮助您有效评估网络搜索 API。

如果您正在使用 Parallel,并希望今天就能充分利用我们的 Search API,请阅读我们的 最佳实践

搜索已成为智能体系统中不可或缺的一部分。无论您是在构建编程智能体、个人助理、知识应用,还是其他完全不同的东西——AI 加上搜索会更好!

但一旦开始,您很快就会发现:选择太多了!提供商、模型、不同的评估技术。如何决定?应该使用现成的评估工具吗?还是快速编写一个?或是找一位被遗忘在角落里的领域专家来生成数据,并让他们标注一份黄金数据集?

答案是……看情况!(抱歉。)

本指南的目标是解释为什么搜索评估比看起来更复杂——但绝非不可能——并为您提供一份运行评估的清单,让您和您的子智能体对您在这一领域的深厚专业知识印象深刻。

准备好了吗?让我们开始吧。

搜索、提取,还是任务?

对普通人来说,“搜索”就是在Google里输入关键词或短语。但对于使用搜索的智能体而言,世界要丰富得多,也奇特得多。

人们通常称之为“搜索”的,其实有三种相关任务。它们恰好与我们的产品对应得很好:

  • 搜索 在网络上查找相关信息,供智能体纳入其上下文窗口。不仅有助于找到页面,还能提取其中的关键信息。
  • 提取 读取你已有URL(或搜索返回的URL)的内容。也称为“网页抓取”。
  • 研究或任务API 接受更大的目标,并为你完成大部分搜索、阅读以及基于LLM的整合工作。

搜索和提取几乎总是配合使用。LLM经过专门训练,期望能深入页面内容。像Parallel这样的智能体搜索,专门设计为返回密集的片段——与查询相关的页面摘要——从而尽量减少对提取的依赖。因此,将搜索和提取结合使用总是一个好主意,因为模型可以自行决定是否需要深入探索。

尽管大多数开发者首先会想到使用搜索API,但值得确认的是,你的用例是否更适合研究(任务)API。如果任务是“接受这个目标和输出模式,进行搜索和阅读,并返回有来源、结构化的答案”——比如丰富公司列表、生成带引用的研究报告——任务API只需一个便捷的端点即可完成全部工作。

在配置任何内容之前,先确定你要衡量什么

如果你在评估搜索功能,很可能有一个待解决的问题。也许你正在丰富客户列表、为智能体添加搜索能力,或翻阅旧财报。无论你做什么,你关注的公式大概是:

智能体框架 + 大语言模型 + 搜索 + 提取 = 答案

最重要的是确保你有一套可信的黄金标准标签,并端到端评估整个“框架 + 模型 + 搜索”堆栈。避免只看输出(如特定搜索响应)或仅关注搜索成本。不要直接将查询传给搜索 API——你无法预知智能体会如何格式化查询或目标,而且你可能会惊讶地发现,智能体在提示方面比人类更擅长。始终评估最终答案。

构建黄金数据集

最好的数据是你已有的数据。也许你曾费心手工收集过往数据。如果这些数据与你预期使用搜索 API 的数据类型匹配,它们将构成一个极佳的评估集。

如果必须生成合成数据(唉),先手工编写几个问题,再让智能体生成更多。生成后,确保这些数据在尽可能多的维度上与你预期的生产数据匹配:措辞、领域、答案类型和时效性。

务必审查由大语言模型生成的黄金标签。你在获得结果时会重复这一过程,但最好在花费搜索和推理的令牌与金钱之前现在就做。

以下是一些可以混入的常见类型,只要它们与你的实际工作负载相似即可:

  • 多跳问题,需要跨来源组合事实。
  • 时效性问题,其答案在模型权重中无法获得。
  • 领域特定问题,与你的实际流量相匹配。

避免过度依赖公开基准测试。尽管它们在业界很流行,但它们反映的是特定领域的问题,很可能与你的实际情况不符。此外,一些答案早已在网上公开,并已被纳入LLM和搜索引擎索引的数据集中。如果你使用公开基准测试,如BrowseComp、SealQA等,务必理解每项测试衡量的是什么,以及它是否适合你的场景。

搭建测试框架

现在你已准备好运行第一次评估,而且还没到午饭时间。首先,保持除搜索工具外的一切不变:相同的模型、相同的提示词、相同的预算、相同的评判标准。将每个提供商作为唯一可用的搜索工具,让代理进行多轮交互——代理经过训练,会搜索、缩小范围、再搜索。不要通过限制轮数来扼杀它们的能力。相反,考虑限制它们的总搜索预算,以反映你的实际成本考量。

然后,按照各提供商的文档建议进行配置。不同提供商有不同的方式让搜索发挥最佳效果。

对于Parallel,我们常向客户推荐一些通用做法(更多详情见我们的最佳实践):

  • 目标描述。 除了搜索查询外,提供目标描述字段可以显著提升搜索结果,改善幅度达10%–20%。这让代理能够表达它们正在解决的目标,而不仅仅是生成的简短查询。
  • 查询操作符。 建议代理避免使用site:after:;改用include_domains CLI/API参数来包含和排除域名。
  • 限制条件。 代理有时喜欢花哨的调节选项,会频繁设置和取消高级配置。在大多数情况下,最好告诉代理保持这些设置不变。

将搜索模式与搜索模型相匹配

除了查询本身,搜索模式是你在使用Parallel的搜索API时最重要的控制手段之一。思考模式的一种方式是看它们搜索的广度和深度。fast模式非常适合大多数需要接近前沿质量且成本较低的代理型用例(成本更低 => 更多搜索!),而advanced模式则最大化质量。

哪个更好?坏消息又来了:这要看情况!

有时答案很明确,比如你有一个特定的产品限制需要解决:也许你的延迟要求迫使你使用turbo,或者你的预算要求你使用fast。但在大多数情况下,你应该评估多种模式,并找到最便宜、最快且能达到满意结果的模式。

当然,名称可能具有误导性,所以要看实际结果。

模型也很重要。将经济实惠的LLM与昂贵的搜索配对,或反之,通常是不合理的。所以不要只问:“哪个搜索提供商最好?”而要问:

哪种模型×搜索配置,在我们能承受的成本和延迟下,最适合这个任务?

为模型评分

在真正执行评估之前,您应考虑如何为答案评分。大多数人会采用某种“以LLM为裁判”的方法,利用高端模型将已验证的基准答案与结果进行对比。以下是一些常见的衡量技巧:

任务形态评分方式示例
事实性问题对照标准答案的正确性,并附引用支持“供应商Y当前的取消截止日期是什么?”
列表/发现对照标准列表的召回率和精确率“此列表中哪些公司在过去30天内宣布了融资?”
结构化输出/信息丰富化对照标准记录的字段级准确性“为这500家公司填写CEO、总部及最近一轮融资信息”
开放式研究基于评分标准的评判(覆盖度、来源、论断正确性)“总结X的监管环境”

请记住,召回率指的是“我们找到了正确列表中的多少内容?”;精确率则指“我们返回的结果中有多少是正确的?”

信任但验证

使用LLM评判器时,切勿盲目信任其结论。确保评判器在返回结果的同时附带其推理依据。务必人工抽查至少10%的运行——包括失败与成功案例。此时你很可能会有有趣的发现,并希望将其纳入下一轮评判中。请确保你的代理跟踪已收集的答案,这样你就不必从头重新生成答案,只需执行评判步骤即可。

这并不引人注目,但你的代理可能失败的一些原因将是……基本的基础设施问题。以下是我们曾见过的一些情况:

  1. 未进行搜索调用 — 代理从未调用工具
  2. 提供商错误 — 超时、5xx错误、拒绝服务
  3. 检索未命中 — 查询合理但结果错误
  4. 综合失败 — 正确结果已在上下文中,但模型仍回答错误。

只有检索未命中和提供商错误是搜索API的直接失败。由于评估通常在高负载下运行,许多失败可能反映的是账户限制而非实际能力。

做生意的成本

请记住,归根结底,重要的是完成任务的端到端成本:搜索开销加上智能体在推理搜索结果时消耗的LLM令牌费用。一个单次调用更便宜但返回结果嘈杂、密度低的API,总体成本可能更高——更多的调用、更多的跳转、每次调用中更多的上下文令牌。

因此,要以智能体的实际体验来衡量成本:

每个已解决任务的成本 =(搜索 + 提取 + 模型令牌费用)/ 已解决任务数

结果长度和跳转次数作为效率代理指标很诱人,但单独使用并不可靠:冗长的结果可能帮助智能体提前退出,过度压缩的结果可能迫使额外跳转,而并行工具调用会让跳转次数低估实际工作量。追踪每次运行的总体工具调用次数、端到端延迟和端到端成本——绝不要用替代指标。

解读结果

很少存在单一的“最佳”搜索工具;它们分布在权衡曲面上,即帕累托前沿。将结果绘制在XY图上——准确度对成本,以及准确度对延迟。你通常是在寻找一个在你最关心的象限中“位于前沿”的提供商。

有几个做法能将一个人们信任的基准与一个会被忽视或争论的基准区分开来:

  • 置信区间,以及对平局的坦诚。 在约100个问题的情况下,一两分的分数差异通常属于噪声范围内。使用自助法计算置信区间,并在结果在统计上无法区分时如实报告。一个说“这四个并列”的基准,比一个在重叠区间上将其排名为1-2-3-4的基准更可信。
  • 给所有内容标注日期。 搜索质量和定价不断变化;基准只是一个快照。标注运行日期,并优先考虑让重新运行变得便宜,而不是维护一个过时的排行榜。
  • 发布配置。 明确说明模型、每个提供商的模式/层级及参数、结果数量、成本公式和日期。供应商与基准测试作者之间的大多数争议,归根结底都是因为配置未被记录在案。

检查清单

  1. 确认是否需要搜索(而非提取或研究型API);如果产品用例需要同时进行发现和内容获取(通常如此),则将搜索与提取配对使用。
  2. 定义具有可验证答案的任务;对代理的最终答案进行评分。
  3. 构建约100个具有生产代表性、以代理口吻表述的问题:多跳、新鲜、领域特定。隔离已饱和的基准测试。
  4. 保持代理固定不变;仅变化搜索工具;允许多轮交互。
  5. 根据各提供商的文档进行配置;引导代理避免使用site:操作符;仅因产品原因进行限制。
  6. 匹配层级;每项运行3次以上;报告方差。
  7. 使用部署模型进行评估;在选择两者时,评估模型×搜索配对。
  8. 对照已验证答案进行评判;审计引用;人工抽查10%;将失败分类为四类。
  9. 测量每个已解决任务的成本、总工具调用次数、每任务令牌数,以及p50/p95/p99延迟。
  10. 绘制准确率-成本及准确率-延迟的前沿图;报告置信区间;平局即平局;注明日期并发布方法论。

这就是评估代理搜索的方式。现在,你可以将领域专家从被遗忘的隔间中释放出来了。

已读完 · 本文由熊猫易读翻译重排