Rerank#

介绍#

Rerank 是一种语义搜索工具,它通过基于语义的重新排序系统提高搜索质量,该系统可以根据上下文理解用户查询的含义,而不仅仅是关键字相关性。此工具最适合与查找工具一起使用,作为初始检索后的排序器。当前支持的排序方法列表如下。

名称

描述

BM25

BM25 是一种开源排序算法,用于衡量文档与给定查询的相关性

Scaled Score Fusion(缩放分数融合)

Scaled Score Fusion 计算缩放后的相关性分数。

Cohere Rerank

Cohere Rerank 是市场上领先的重新排序模型,用于语义搜索和检索增强生成(RAG)。

要求#

  • 对于 AzureML 用户,该工具已安装在默认映像中,无需额外安装即可使用。

  • 对于本地用户,

    pip install promptflow-vectordb

先决条件#

BM25 和 Scaled Score Fusion 作为默认的重新排序方法。要使用 Cohere Rerank 模型,您应该为该模型创建无服务器部署,并按如下方式建立工具与资源之间的连接。

  • 添加无服务器模型连接。在“API base”和“API key”字段中填写您的无服务器部署信息。

输入#

名称

类型

描述

必填

query

字符串

与您的输入文档相关的问题

ranker_parameters

字符串

要使用的排序方法类型

result_groups

object

要重新排序的文档块列表。通常这是查找的输出

top_k

int

要返回的最大相关文档数

No

输出#

返回类型

描述

text

实体的文本

metadata

元数据,如文件路径和 URL

additional_fields

元数据和重新排序分数

输出
[
  {
      "text": "sample text",
      "metadata":
      {
          "filepath": "sample_file_path",
          "metadata_json_string": "meta_json_string"
          "title": "",
          "url": ""
      },
      "additional_fields":
      {
          "filepath": "sample_file_path",
          "metadata_json_string": "meta_json_string"
          "title": "",
          "url": "",
          "@promptflow_vectordb.reranker_score": 0.013795365
      }
  }
]