跳转到内容
搜索文档

查询重写

最后更新 查看 MarkdownAgent 设置

查询重写是 AI Search 流水线中的一个可选步骤,它可以提高后续查询的检索质量。它适用于 SearchChat Completions 请求。

为什么使用查询重写?

用户提问的措辞可能与您文档的编写方式不匹配。查询重写通过以下方式帮助消除这种差距:

  • 将非正式或模糊的查询改写为精确、信息密集的词汇
  • 添加同义词或相关的关键词
  • 移除无意义的填充词或不相关的细节
  • 解析引用先前消息的后续查询(例如,“告诉我更多相关内容” 会根据对话历史记录转换为特定的具体查询)

这会带来更相关的搜索匹配,从而提高结果和生成的响应的准确性。

工作原理

查询重写需要使用 messages 格式,在使用 query 格式时不可用。第一条消息始终按原样使用。对于后续查询,AI Search 会将对话历史记录、最新的用户消息以及 查询重写系统提示 发送到配置好的大语言模型 (LLM)。然后对重写的查询进行嵌入并用于执行搜索。

示例

第一条消息: What is Cloudflare Workers? (原样使用,不进行重写)

后续消息: How do I deploy one? 重写后的查询: deploy Cloudflare Worker getting started

后续的 “How do I deploy one?” 单独看是很模糊的。查询重写利用对话上下文来理解其中的 “one” 指的是 Cloudflare Worker。查询如何被重写取决于您的 查询重写系统提示

注意事项

启用查询重写会在查询流水线中增加一次额外的大模型 (LLM) 调用,这可能会增加延迟。

这篇文档对您有帮助吗?