Einen Prompt-Datensatz für retrieve-and-generate RAG-Evaluierungsjobs erstellen - Amazon Bedrock

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.

Einen Prompt-Datensatz für retrieve-and-generate RAG-Evaluierungsjobs erstellen

Für retrieve-and-generate Evaluierungsjobs ist ein Prompt-Datensatz im JSON-Zeilenformat erforderlich. Sie können über maximal 1 000 Prompts in Ihrem Datensatz verfügen.

Bereiten Sie einen Datensatz für eine retrieve-and-generate Bewertungsaufgabe vor, bei der Amazon Bedrock Ihre Wissensdatenbank aufruft

Zum Erstellen eines Bewertungsauftrags nur zum Abrufen, bei dem Amazon Bedrock Ihre Wissensdatenbank aufruft, muss Ihr Prompt-Datensatz die folgenden Schlüssel-Wert-Paare enthalten:

  • referenceResponses – Dieser übergeordnete Schlüssel wird verwendet, um die Ground-Truth-Antwort anzugeben, von der Sie erwarten, dass RetrieveAndGenerate sie zurückgeben wird. Geben Sie die Ground Truth im text-Schlüssel an. referenceResponses ist erforderlich, wenn Sie in Ihrem Bewertungsauftrag die Metrik Kontextabdeckung auswählen.

  • prompt – Dieser übergeordnete Schlüssel wird verwendet, um den Prompt (Benutzerabfrage) anzugeben, auf die das Modell während der Ausführung des Bewertungsauftrags antworten soll.

Im Folgenden finden Sie ein Beispiel für einen benutzerdefinierten Datensatz, der 6 Eingaben enthält und das JSON-Zeilenformat verwendet.

{"conversationTurns":[{"prompt":{"content":[{"text":"Provide the prompt you want to use during inference"}]},"referenceResponses":[{"content":[{"text":"Specify a ground-truth response"}]}]}]} {"conversationTurns":[{"prompt":{"content":[{"text":"Provide the prompt you want to use during inference"}]},"referenceResponses":[{"content":[{"text":"Specify a ground-truth response"}]}]}]} {"conversationTurns":[{"prompt":{"content":[{"text":"Provide the prompt you want to use during inference"}]},"referenceResponses":[{"content":[{"text":"Specify a ground-truth response"}]}]}]} {"conversationTurns":[{"prompt":{"content":[{"text":"Provide the prompt you want to use during inference"}]},"referenceResponses":[{"content":[{"text":"Specify a ground-truth response"}]}]}]} {"conversationTurns":[{"prompt":{"content":[{"text":"Provide the prompt you want to use during inference"}]},"referenceResponses":[{"content":[{"text":"Specify a ground-truth response"}]}]}]} {"conversationTurns":[{"prompt":{"content":[{"text":"Provide the prompt you want to use during inference"}]},"referenceResponses":[{"content":[{"text":"Specify a ground-truth response"}]}]}]}

Der folgende Prompt wurde aus Gründen der Übersichtlichkeit erweitert. In Ihrem tatsächlichen Prompt-Datensatz muss jede Zeile (ein Prompt) ein gültiges JSON-Objekt sein.

{ "conversationTurns": [ { "prompt": { "content": [ { "text": "What is the recommended service interval for your product?" } ] }, "referenceResponses": [ { "content": [ { "text": "The recommended service interval for our product is two years." } ] } ] } ] }

Bereiten Sie einen Datensatz für eine retrieve-and-generate Bewertungsaufgabe vor und verwenden Sie dabei Ihre eigenen Inferenzantwortdaten

Um einen retrieve-and-generate Bewertungsjob zu erstellen, bei dem Sie Ihre eigenen Daten zur Inferenzantwort angeben, besteht Ihr Prompt-Datensatz aus einer Liste von Konversationsrunden und enthält für jede Runde Folgendes. Sie können nur eine RAG-Quelle pro Auftrag bewerten.

  • prompt – Dies ist der Prompt, dem Sie Ihrem Modell bereitgestellt haben, um die Ergebnisse zu generieren.

  • referenceResponses – Dieser übergeordnete Schlüssel wird verwendet, um die Ground-Truth-Antwort anzugeben, die Sie für die endgültige Ausgabe Ihres LLM erwarten würden, nachdem es die Abrufergebnisse und die Eingabeabfrage erfasst hat.

  • referenceContexts (optional) – Dieser optionale übergeordnete Schlüssel wird verwendet, um die Ground-Truth-Passagen anzugeben, von denen Sie erwarten würden, dass sie aus der RAG-Quelle abgerufen werden. Sie müssen diesen Schlüssel nur angeben, wenn Sie ihn in Ihren eigenen benutzerdefinierten Bewertungsmetriken verwenden möchten. Die integrierten Metriken, die Amazon Bedrock bereitstellt, verwenden diese Eigenschaft nicht.

  • output – Die Ausgabe aus Ihrer RAG-Quelle, die Folgendes umfasst:

    • text – Die endgültige Ausgabe des LLM in Ihrem RAG-System

    • retrievedPassages – Dieser übergeordnete Schlüssel wird verwendet, um den Inhalt zu spezifizieren, den Ihre RAG-Quelle abgerufen hat.

Ihre output-Daten müssen auch die Zeichenfolge knowledgeBaseIdentifier enthalten, die die RAG-Quelle definiert, mit der Sie die Inferenzantworten generiert haben. Sie können auch eine optionale Zeichenfolge modelIdentifier angeben, die das von Ihnen verwendete LLM identifiziert. Für die retrievalResults und retrievedReferences können Sie optionale Namen und Metadaten angeben.

Im Folgenden finden Sie ein Beispiel für einen benutzerdefinierten Datensatz, der 6 Eingaben enthält und das JSON-Zeilenformat verwendet.

{"conversationTurns":[{"prompt":{"content":[{"text":"Provide the prompt you used to generate the response"}]},"referenceResponses":[{"content":[{"text":"A ground truth for the final response generated by the LLM"}]}],"referenceContexts":[{"content":[{"text":"A ground truth for a received passage"}]}],"output":{"text":"The output of the LLM","modelIdentifier":"(Optional) a string identifying your model","knowledgeBaseIdentifier":"A string identifying your RAG source","retrievedPassages":{"retrievalResults":[{"name":"(Optional) a name for your retrieval","content":{"text":"The retrieved content"},"metadata":{"(Optional) a key for your metadata":"(Optional) a value for your metadata"}}]}}}]} {"conversationTurns":[{"prompt":{"content":[{"text":"Provide the prompt you used to generate the response"}]},"referenceResponses":[{"content":[{"text":"A ground truth for the final response generated by the LLM"}]}],"referenceContexts":[{"content":[{"text":"A ground truth for a received passage"}]}],"output":{"text":"The output of the LLM","modelIdentifier":"(Optional) a string identifying your model","knowledgeBaseIdentifier":"A string identifying your RAG source","retrievedPassages":{"retrievalResults":[{"name":"(Optional) a name for your retrieval","content":{"text":"The retrieved content"},"metadata":{"(Optional) a key for your metadata":"(Optional) a value for your metadata"}}]}}}]} {"conversationTurns":[{"prompt":{"content":[{"text":"Provide the prompt you used to generate the response"}]},"referenceResponses":[{"content":[{"text":"A ground truth for the final response generated by the LLM"}]}],"referenceContexts":[{"content":[{"text":"A ground truth for a received passage"}]}],"output":{"text":"The output of the LLM","modelIdentifier":"(Optional) a string identifying your model","knowledgeBaseIdentifier":"A string identifying your RAG source","retrievedPassages":{"retrievalResults":[{"name":"(Optional) a name for your retrieval","content":{"text":"The retrieved content"},"metadata":{"(Optional) a key for your metadata":"(Optional) a value for your metadata"}}]}}}]} {"conversationTurns":[{"prompt":{"content":[{"text":"Provide the prompt you used to generate the response"}]},"referenceResponses":[{"content":[{"text":"A ground truth for the final response generated by the LLM"}]}],"referenceContexts":[{"content":[{"text":"A ground truth for a received passage"}]}],"output":{"text":"The output of the LLM","modelIdentifier":"(Optional) a string identifying your model","knowledgeBaseIdentifier":"A string identifying your RAG source","retrievedPassages":{"retrievalResults":[{"name":"(Optional) a name for your retrieval","content":{"text":"The retrieved content"},"metadata":{"(Optional) a key for your metadata":"(Optional) a value for your metadata"}}]}}}]} {"conversationTurns":[{"prompt":{"content":[{"text":"Provide the prompt you used to generate the response"}]},"referenceResponses":[{"content":[{"text":"A ground truth for the final response generated by the LLM"}]}],"referenceContexts":[{"content":[{"text":"A ground truth for a received passage"}]}],"output":{"text":"The output of the LLM","modelIdentifier":"(Optional) a string identifying your model","knowledgeBaseIdentifier":"A string identifying your RAG source","retrievedPassages":{"retrievalResults":[{"name":"(Optional) a name for your retrieval","content":{"text":"The retrieved content"},"metadata":{"(Optional) a key for your metadata":"(Optional) a value for your metadata"}}]}}}]} {"conversationTurns":[{"prompt":{"content":[{"text":"Provide the prompt you used to generate the response"}]},"referenceResponses":[{"content":[{"text":"A ground truth for the final response generated by the LLM"}]}],"referenceContexts":[{"content":[{"text":"A ground truth for a received passage"}]}],"output":{"text":"The output of the LLM","modelIdentifier":"(Optional) a string identifying your model","knowledgeBaseIdentifier":"A string identifying your RAG source","retrievedPassages":{"retrievalResults":[{"name":"(Optional) a name for your retrieval","content":{"text":"The retrieved content"},"metadata":{"(Optional) a key for your metadata":"(Optional) a value for your metadata"}}]}}}]}

Im Folgenden wird das Format des Prompt-Datensatzes aus Gründen der Übersichtlichkeit erweitert dargestellt. In Ihrem tatsächlichen Prompt-Datensatz muss jede Zeile (ein Prompt) ein gültiges JSON-Objekt sein.

{ "conversationTurns": [ { "prompt": { "content": [ { "text": "Provide the prompt you used to generate the responses" } ] }, "referenceResponses": [ { "content": [ { "text": "A ground truth for the final response generated by the LLM" } ] } ], "referenceContexts": [ { "content": [ { "text": "A ground truth for a received passage" } ] } ], "output": { "text": "The output of the LLM", "modelIdentifier": "(Optional) a string identifying your model", "knowledgeBaseIdentifier": "A string identifying your RAG source", "retrievedPassages": { "retrievalResults": [ { "name": "(Optional) a name for your retrieval", "content": { "text": "The retrieved content" }, "metadata": { "(Optional) a key for your metadata": "(Optional) a value for your metadata" } } ] } } } ] }