Rerank#

Einleitung#

Rerank ist ein semantisches Suchwerkzeug, das die Suchqualität mit einem semantikbasierten Reranking-System verbessert, das die Bedeutung einer Benutzeranfrage über die Stichwortrelevanz hinaus kontextualisieren kann. Dieses Tool funktioniert am besten mit dem Look-up-Tool als Ranker nach der anfänglichen Abfrage. Die Liste der derzeit unterstützten Ranking-Methoden ist wie folgt.

Name

Beschreibung

BM25

BM25 ist ein Open-Source-Ranking-Algorithmus zur Messung der Relevanz von Dokumenten für eine gegebene Abfrage.

Skalierte Score-Fusion

Skalierte Score-Fusion berechnet einen skalierten Relevanz-Score.

Cohere Rerank

Cohere Rerank ist das führende Reranking-Modell des Marktes, das für die semantische Suche und die Retrieval-Augmented Generation (RAG) verwendet wird.

Anforderungen#

  • Für AzureML-Benutzer ist das Tool im Standard-Image installiert. Sie können das Tool ohne zusätzliche Installation verwenden.

  • Für lokale Benutzer,

    pip install promptflow-vectordb

Voraussetzungen#

BM25 und skalierte Score-Fusion sind als standardmäßige Reranking-Methoden enthalten. Um das Cohere Rerank-Modell zu verwenden, sollten Sie eine serverlose Bereitstellung für das Modell erstellen und eine Verbindung zwischen dem Tool und der Ressource wie folgt herstellen.

  • Fügen Sie eine Serverless Model-Verbindung hinzu. Füllen Sie die Felder „API Base“ und „API Key“ mit Ihrer serverlosen Bereitstellung.

Eingaben#

Name

Typ

Beschreibung

Erforderlich

query

string

die Frage, die für Ihre Eingabedokumente relevant ist.

Ja

ranker_parameters

string

der zu verwendende Ranking-Methodentyp.

Ja

result_groups

object

die Liste der zu rerankenden Dokumentenabschnitte. Normalerweise ist dies die Ausgabe von „lookup“.

Ja

top_k

int

die maximale Anzahl relevanter Dokumente, die zurückgegeben werden sollen.

Nein

Ausgaben#

Rückgabetyp

Beschreibung

text

Text der Entität.

metadata

Metadaten wie Dateipfad und URL.

additional_fields

Metadaten und Reranking-Score.

Ausgabe
[
  {
      "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
      }
  }
]