Passagen werden abgerufen - Amazon Kendra

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Passagen werden abgerufen

Sie können das verwenden RetrieveAPI als Retriever für Retrieval Augmented Generation (RAG) -Systeme.

RAG-Systeme verwenden generative künstliche Intelligenz, um Anwendungen zur Beantwortung von Fragen zu erstellen. RAG-Systeme bestehen aus einem Retriever und großen Sprachmodellen (LLM). Bei einer Anfrage identifiziert der Retriever die relevantesten Textblöcke aus einem Korpus von Dokumenten und leitet sie an das LLM weiter, um die nützlichste Antwort zu erhalten. Anschließend analysiert das LLM die relevanten Textblöcke oder Passagen und generiert eine umfassende Antwort auf die Anfrage.

Die Retrieve API betrachtet Textblöcke oder Auszüge, die als Passagen bezeichnet werden, und gibt die wichtigsten Passagen zurück, die für die Abfrage am relevantesten sind.

Wie die QueryAPI, die Retrieve API sucht auch nach relevanten Informationen. Beim Informationsabruf der Retrieve API werden der Kontext der Anfrage und alle verfügbaren Informationen aus den indizierten Dokumenten berücksichtigt. Standardmäßig gibt die Query API jedoch nur Auszüge von bis zu 100 Stichwörtern zurück. Mit der Retrieve API können Sie längere Passagen mit bis zu 200 Token-Wörtern und bis zu 100 semantisch relevanten Passagen abrufen. Dies schließt keine Antworten vom Typ Frage-Antwort oder häufig gestellte Fragen aus Ihrem Index ein. Die Passagen, auch Chunks genannt, sind Textauszüge, die semantisch aus mehreren Dokumenten und mehreren Teilen desselben Dokuments extrahiert werden können. Der GenAI Enterprise Edition-Index von Kendra bietet hochgenaue Ergebnisse für den Abruf. Er verwendet eine hybride Suche über Vektor- und Schlüsselwortindizes sowie eine Rangfolge nach Deep-Learning-Modellen.

Mit der API können Sie auch Folgendes Retrieve tun:

  • Überschreiben Sie das Boosting auf Indexebene

  • Filtern Sie auf der Grundlage von Dokumentfeldern oder Attributen

  • Filtern Sie basierend auf dem Benutzer- oder Gruppenzugriff auf Dokumente

  • Sehen Sie sich den Bereich mit dem Konfidenzwert für ein abgerufenes Passageergebnis an. Das Konfidenzfeld bietet eine relative Rangfolge, die angibt, wie sicher Amazon Kendra es ist, dass die Antwort für die Abfrage relevant ist.

    Anmerkung

    Buckets mit Konfidenzwerten sind derzeit nur für Englisch verfügbar.

Sie können der Antwort auch bestimmte Felder hinzufügen, die möglicherweise nützliche Zusatzinformationen enthalten.

Die Retrieve API unterstützt derzeit die folgenden Funktionen nicht: Abfragen mit erweiterter Abfragesyntax, vorgeschlagene Rechtschreibkorrekturen für Abfragen, Facettierung, Abfragevorschläge zur automatischen Vervollständigung von Suchanfragen und inkrementelles Lernen. Abfragen zum Abrufen der API werden nicht im Analyse-Dashboard angezeigt.

Die Retrieve API teilt sich die Anzahl der Abfragekapazitätseinheiten, die Sie für Ihren Index festgelegt haben. Weitere Informationen darüber, was in einer einzelnen Kapazitätseinheit enthalten ist, und zur Standard-Basiskapazität für einen Index finden Sie unter Kapazität anpassen.

Anmerkung

Sie können keine Kapazität hinzufügen, wenn Sie die Amazon Kendra Developer Edition verwenden. Sie können Kapazität nur hinzufügen, wenn Sie die Amazon Kendra Enterprise Edition verwenden. Weitere Informationen darüber, was in der Developer Edition und der Enterprise Edition enthalten ist, finden Sie unter Amazon Kendra Editionen.

Im Folgenden finden Sie ein Beispiel für die Verwendung der Retrieve API, um die 100 relevantesten Passagen aus Dokumenten in einem Index für die Abfrage abzurufen "how does amazon kendra work?"

Python
import boto3 import pprint kendra = boto3.client("kendra") # Provide the index ID index_id = "index-id" # Provide the query text query = "how does amazon kendra work?" # You can retrieve up to 100 relevant passages # You can paginate 100 passages across 10 pages, for example page_size = 10 page_number = 10 result = kendra.retrieve( IndexId = index_id, QueryText = query, PageSize = page_size, PageNumber = page_number) print("\nRetrieved passage results for query: " + query + "\n") for retrieve_result in result["ResultItems"]: print("-------------------") print("Title: " + str(retrieve_result["DocumentTitle"])) print("URI: " + str(retrieve_result["DocumentURI"])) print("Passage content: " + str(retrieve_result["Content"])) print("------------------\n\n")
Java
package com.amazonaws.kendra; import software.amazon.awssdk.services.kendra.KendraClient; import software.amazon.awssdk.services.kendra.model.RetrieveRequest; import software.amazon.awssdk.services.kendra.model.RetrieveResult; import software.amazon.awssdk.services.kendra.model.RetrieveResultItem; public class RetrievePassageExample { public static void main(String[] args) { KendraClient kendra = KendraClient.builder().build(); String indxId = "index-id"; String query = "how does amazon kendra work?"; Integer pgSize = 10; Integer pgNumber = 10; RetrieveRequest retrieveRequest = retrieveRequest .builder() .indexId(indxId) .queryText(query) .pageSize(pgSize) .pageNumber(pgNumber) .build(); RetrieveResult retrieveResult = kendra.retrieve(retrieveRequest); System.out.println(String.format("\nRetrieved passage results for query: %s", query)); for(RetrieveResultItem item: retrieveResult.resultItems()) { System.out.println("----------------------"); System.out.println(String.format("Title: %s", documentTitle)); System.out.println(String.format("URI: %s", documentURI)); System.out.println(String.format("Passage content: %s", content)); System.out.println("-----------------------\n"); } } }