跳转到内容
搜索文档

重排序

最后更新 查看 MarkdownAgent 设置

重排序 (Reranking) 可以根据与用户查询的语义相关性重新排列检索到的文档,从而帮助提高 AI Search 结果的质量。它在检索后应用第二个模型,在返回前对顶部结果进行重新排序。

工作原理

默认情况下,所有 AI Search 实例都 禁用 了重排序。您可以在创建实例期间或稍后在设置页面中启用它。

启用后,AI Search 将:

  1. 从您的索引中检索一组相关的结果,受您的 max_num_resultsscore_threshold 参数的限制。
  2. 将这些结果传递给 重排序模型
  3. 返回重新排序后的结果,文本生成模型可以使用这些结果来生成答案。

重排序有助于提高准确性,特别是在大型或包含噪点的数据集中,此时仅凭向量相似度可能无法产生最佳排序。

配置

当您使用 Workers 绑定REST API 发起 /search/chat/completions 请求时,您可以按请求启用或禁用重排序,并指定重排序模型。

const instance = env.AI_SEARCH.get("my-instance");

const results = await instance.search({
	messages: [{ role: "user", content: "What is Cloudflare?" }],
	ai_search_options: {
		reranking: {
			enabled: true,
			model: "@cf/baai/bge-reranker-base",
		},
	},
});

注意事项

添加重排序会在查询请求中增加一个额外步骤。因此,请求的延迟可能会有所增加。

这篇文档对您有帮助吗?