Weaviate Blog

Scaling Test-Time Compute in Search Mode

8.5内容质量
Scaling Test-Time Compute in Search Mode

TL;DR · AI 摘要

Weaviate的Search Mode通过调整effort参数显著提升检索效果,ultrahigh级别在BRIGHT Biology基准上将nDCG@10从13.0提升至57.5。

核心要点

  • Search Mode的ultrahigh effort在BRIGHT Biology基准上提升nDCG@10至57.5
  • Weaviate 1.8.0版本引入effort参数,支持Python和TypeScript
  • 高effort级别通过更深入的查询分解和重排序提升准确性,但增加延迟

结构提纲

按章节快速跳转。

  1. 介绍Search Mode通过effort参数提升检索效果的核心价值。

  2. 解释medium/high/ultrahigh三级effort对查询分解和重排序的影响。

  3. 展示在8个基准中ultrahigh effort相比Hybrid Search的性能提升。

  4. 提供Python和TypeScript的代码示例说明参数使用方式。

  5. 说明实验对比Hybrid Search的RRF融合方案及统计方法。

思维导图

用一张图看清主题之间的关系。

查看大纲文本(无障碍 / 无 JS 友好)
  • Search Mode扩展测试时计算
    • effort参数分级
      • medium/high/ultrahigh
    • 性能提升
      • BRIGHT Biology nDCG@10 57.5
    • 实现方式
      • Python/TypeScript SDK

金句 / Highlights

值得收藏与分享的关键句。

#Search Mode#Weaviate#检索#effort参数
打开原文

在搜索模式中扩展测试时计算 | Weaviate

在搜索模式中扩展测试时计算

2026年8月11日

·

9分钟阅读

Connor Shorten

产品研究员

在基础模型时代,扩展测试时计算已成为最显著的成功之一。在推理过程中投入更多计算资源,可以获得更好的结果。检索也不例外。查询代理搜索模式中的新努力参数现在允许您控制这一点。在BRIGHT Biology这一最具挑战性的推理密集型检索基准测试中,超高努力的搜索模式将nDCG@10提升至57.5,而单独使用混合搜索时仅为13.0。

不同的应用场景在准确率/延迟权衡曲线上的位置各不相同。在weaviate-agents 1.8.0和agents-typescript-client 1.7.0中,努力参数允许您按请求选择查询代理在每次搜索中投入的工作量。

  • Python
  • JS/TS
code
from
weaviate
.
agents
.
query
import
QueryAgent
qa
=
QueryAgent
(
client
=
client
,
collections
=
[
"IRPAPERS"
]
)
response
=
qa
.
search
(
"What are Listwise Rerankers?"
,
effort
=
"ultrahigh"
)
code
import
{
QueryAgent
}
from
"weaviate-agents"
;
const
qa
=
new
QueryAgent
(
client
,
{
collections
:
[
"IRPAPERS"
]
,
}
)
;
const
response
=
await
qa
.
search
(
"What are Setwise Rerankers?"
,
{
effort
:
"ultrahigh"
,
}
)
;

搜索模式的三个努力层级:中等、高和超高,在搜索模式执行工作的两个阶段(查询编写和重排序)中扩展计算。在更高努力层级下,代理会更长时间思考如何分解查询并更彻底地重排序结果。在较低努力层级下,它会牺牲一些深度以换取速度和成本。当答案至关重要时提高努力层级,当延迟更重要时降低努力层级!

基准测试 ​

下表比较了搜索模式中的中等、高和超高努力层级与Weaviate的混合搜索在8个基准测试中的表现:来自BRIGHT、IRPAPERS、WixQA和OBLIQ-Bench的子集。我们选择这些基准测试,因为它们展示了推理密集型和领域特定的检索问题。

方法论 ​

与我们的第一篇搜索模式基准测试博客一致,我们与Weaviate的混合搜索进行比较,混合搜索结合了BM25与Snowflake Arctic 2.0嵌入的向量搜索,并通过倒数排名融合(RRF)进行融合。然后我们在相同的集合上以三种努力层级运行搜索模式。为了考虑搜索模式中使用模型的随机性,每种搜索模式配置都运行了3次试验,我们报告了试验的均值和标准差。混合搜索在固定集合下几乎确定性,因此我们报告单次运行结果。

#### 指标术语表 ​

  • 黄金文档:在信息检索基准测试中,“黄金文档”是指针对特定查询标记的相关文档或文档。
  • Success@K:衡量前K个检索文档是否为黄金文档。通常在设置K=1时报告Success,以考虑每个查询可能有多个黄金文档。
  • Recall@K:衡量黄金文档中有多少在前K个结果中。
  • nDCG@K:归一化折扣累积增益的缩写,nDCG不仅考虑相关文档是否被检索到,还考虑它们的排序。其优势在于捕捉分级相关性而非二元相关性,并奖励将最佳结果排在列表前面的系统。

对于所有指标而言,数值越高表示性能越好。每个指标都强调信息检索的不同方面,它们共同提供了更全面的评估图景。

#### 基准测试术语表 ​

  • BRIGHT:在ICLR 2025中发表,BRIGHT通过从StackExchange帖子中采样的长描述性查询测试需要推理的检索任务。黄金文档是被接受或高票数回答中引用的网页。我们使用5个子集:生物学、地球科学、经济学、心理学和机器人学。
  • IRPAPERS:我们的信息检索论文基准测试,于2026年初发布,用于研究领域特定检索并比较基于文本和图像的系统。我们报告的是文本转录结果的性能。
  • WixQA:由Wix.com AI研究团队于2025年5月发布,WixQA通过200个专家撰写的客户查询测试领域特定的技术支持检索任务,每个查询都配有Wix支持专家撰写的黄金文档。
  • OBLIQ-Bench:由MIT研究团队于2026年5月推出,OBLIQ-Bench针对隐含相关性(而非显式表述)的查询进行测试。我们使用国会听证会子集,包含254个"舌尖上的知识"查询,覆盖213,650段国会听证会文本。

在所有八个基准测试中,趋势保持一致:每个搜索模式努力层级都优于混合搜索,且努力程度越高平均准确率越高。层级间的差距大小取决于具体问题。在需要多步推理的BRIGHT基准中,各层级差异显著。在生物学子集中,超高努力使nDCG@10从13.0提升至57.5,在心理学子集中从22.2提升至54.4,每增加一个努力层级都能带来显著的准确率提升。而在IRPAPERS和WixQA这类领域特定但推理强度较低的基准中,差距明显缩小。在此类基准中,中等努力已能捕获混合搜索的大部分增益,更高层级的提升幅度相对较小。

由于搜索模式的推理流程具有随机性,相邻层级在单个数据集上可能出现重叠。例如在BRIGHT经济学子集中,中等努力的表现优于高等级。但跨基准和试验的平均结果表明,层级顺序保持稳定,更高努力始终带来更高的准确率。每个系统的标准差是基于三次试验计算的,运行结果的一致性使我们确信这些增益是稳健的,而非单一样本的偶然现象。

BRIGHT ​

BRIGHT子集对努力层级的奖励方式存在差异。在生物学和心理学子集中,每个努力层级的提升都能带来显著增益,其中超高努力使生物学的nDCG@10达到混合搜索的约4倍。地球科学子集呈现出不同趋势:中等努力已使混合搜索基准值提升3倍,更高层级的增益相对较小。机器人学子集是最具代表性的案例:中等和高等努力对混合搜索的改进幅度有限,但超高努力显著超越两者,使Success@1从中等努力的25.7提升至高等努力的45.9。机器人学子集的查询长度在五个子集中最长,平均819个token,这表明最困难的查询正是额外计算投入回报最显著的领域。

IRPAPERS ​

与BRIGHT相比,IRPAPERS上各努力层级的差距要小得多。中等努力已能捕获混合搜索的大部分增益,高等和超高努力仅带来几个百分点的额外提升。

WixQA ​

OBLIQ-Bench

这是本分析中绝对得分最低的部分。Hybrid Search 几乎达到最低水平,在 12 个查询中不到 1 个的黄金段落会出现在其前 20 个结果中。Search Mode 显著改变了这一局面。超高努力级别达到 24.4 的 Success@1,相比 Hybrid Search 提升了约 7 倍,这也是唯一一个在所有指标上层级始终保持清晰区分的基准。每提升一个努力层级都能带来实际收益,进一步印证了 BRIGHT 中的模式:最难的问题往往需要最多的计算资源才能解决。

Search Mode 是什么?

Query Agent 是 Weaviate 的智能接口,用于访问您的数据。您无需手动编写搜索查询、过滤器和聚合,只需用自然语言描述需求,Query Agent 会自动从 Weaviate 数据集中找到答案。它有三种模式:Ask Mode(基于数据生成回答)、Search Mode(直接返回文档)和 Suggest Queries Mode(提出问题帮助用户探索数据集)。

Search Mode 是任何需要排序搜索结果且能容忍额外延迟的流程的即插即用升级方案,无论是 RAG 系统、智能工作流,甚至搜索栏都适用。

迄今为止的基准测试主要验证了 Search Mode 找到相关文档的能力,但它还能做更多。由于 Query Agent 理解您的数据集结构,它可以将自然语言转换为结构化查询。例如,当收到“帮我找几双价格低于 70 美元的复古鞋”这样的查询时,Search Mode 会识别“低于 70 美元”为结构化过滤条件,对价格属性施加硬性约束,并在符合条件的结果中搜索复古鞋。这使您可以通过一个系统同时结合语义含义和结构化约束。

结论

我们的基准测试表明,Search Mode 中更高努力层级带来的收益是:随着检索问题难度的增加,准确率持续提升。额外的努力需要以延迟和成本为代价来换取质量。如果您的应用依赖于找到正确结果(如智能工作流、深度研究或高风险问答),我们建议尝试新的努力层级。如果您的应用对延迟敏感,中等努力层级的 Search Mode 或 Weaviate 的 Hybrid Search 仍是理想选择。

所有结果都可以通过我们的开源工具 query-agent-benchmarking 进行复现。该工具支持总共 22 个基准测试,包括 BEIR、LoTTe、EnronQA 和 FreshStack 等,如需扩展比较范围可使用这些基准。该工具还支持在 Weaviate 中存储的自定义搜索评估上运行努力层级对比分析。

感谢您的阅读!

准备开始构建了吗?

查看快速入门教程,或注册免费的 Weaviate Cloud 账户。

GitHub

Forum

X (Twitter)

不想错过下一篇博客文章?

订阅我们的双周刊通讯以保持更新!

通过提交,我同意

服务条款

隐私政策