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.
Verfolgen Sie den step-by-step Argumentationsprozess des Agenten mithilfe von Trace
Jede Antwort eines Amazon Bedrock-Agenten wird von einer Ablaufverfolgung begleitet, in der die vom Agenten orchestrierten Schritte detailliert beschrieben werden. Der Trace hilft Ihnen dabei, den Argumentationsprozess des Agenten zu verfolgen, der diesen zu der Antwort führt, die er zu diesem Zeitpunkt in der Konversation gibt.
Verwenden Sie den Trace, um den Pfad des Agenten von der Benutzereingabe bis zur zurückgegebenen Antwort nachzuverfolgen. Der Trace liefert Informationen über die Eingaben in die Aktionsgruppen, die der Agent aufruft, sowie über die Wissensdatenbanken, die er abfragt, um dem Benutzer zu antworten. Darüber hinaus liefert der Trace Informationen über die Ausgaben, die die Aktionsgruppen und Wissensdatenbanken zurückgeben. Sie können sich die Argumentation ansehen, anhand derer der Agent bestimmt, welche Aktion er ausführt, oder die Abfrage, die er an eine Wissensdatenbank stellt. Wenn ein Schritt im Trace fehlschlägt, gibt der Trace einen Grund für den Fehler zurück. Verwenden Sie die detaillierten Informationen in der Ablaufverfolgung, um Probleme mit Ihrem Agenten zu beheben. Sie können Schritte identifizieren, bei denen der Agent Probleme hat oder bei denen er zu unerwartetem Verhalten führt. Anhand dieser Informationen können Sie dann überlegen, wie Sie das Verhalten des Agenten verbessern können.
Struktur der Spur
Wenn Sie den Trace aktivieren, in der InvokeAgentJede Antwort chunk
im Stream wird von einem trace
Feld begleitet, das einem zugeordnet ist TracePartObjekt. Das tracePart
Objekt enthält Informationen über den Agenten und die Sitzungen sowie über den Argumentationsprozess des Agenten und die Ergebnisse des Aufrufs von API-Funktionen.
{ "agentId": "string", "agentName": "string", "collaboratorName": "string", "agentAliasId": "string", "sessionId": "string", "agentVersion": "string", "trace": { ...}, "callerChain": [{ "agentAliasArn": "
agent alias arn
" }] }
In der folgenden Liste werden die Felder von beschrieben TracePartObjekt:
-
agentId
— Die eindeutige Kennung des Agenten. -
agentName
— Der Name des Agenten. -
collaboratorName
— Wenn die Zusammenarbeit mit mehreren Agenten aktiviert ist, der Name des Collaborator-Agenten. -
agentVersion
— Die Version des Agenten. -
agentAliasId
— Die eindeutige Kennung des Alias des Agenten. -
sessionId
— Die eindeutige Kennung der Sitzung mit dem Agenten. -
trace
— Enthält den Argumentationsprozess des Agenten und die Ergebnisse des Aufrufs von API-Aktionen. Weitere Informationen hierzu finden Sie unten. -
callerChain
— Liste der Anrufer zwischen dem Agenten, der diesen Trace veröffentlicht hat, und dem Endbenutzer.Wenn es sich um einen einzelnen Agenten handelt, enthält dieses Feld den Alias Arn desselben Agenten, der den Trace veröffentlicht hat.
Wenn die Zusammenarbeit mit mehreren Agenten aktiviert ist, enthält dieses Feld den Alias Arn aller Agenten, die die Endbenutzeranfrage an den aktuellen Agenten weitergeleitet haben.
Innerhalb der TracePartist ein trace
Feld, das einem zugeordnet ist TraceObjekt. Der Trace wird sowohl in der Konsole als auch in der API als JSON-Objekt angezeigt. Jeder Schritt in der Konsole oder Tracein der API kann sich einer der folgenden Traces befinden:
-
PreProcessingTrace— Verfolgt die Eingabe und Ausgabe des Vorverarbeitungsschritts, in dem der Agent Benutzereingaben kontextualisiert und kategorisiert und feststellt, ob sie gültig sind.
-
OrchestrationTrace— Verfolgt die Eingabe und Ausgabe des Orchestrierungsschritts, in dem der Agent die Eingabe interpretiert, Aktionsgruppen aufruft und Wissensdatenbanken abfragt. Anschließend gibt der Agent die Ausgabe zurück, um entweder die Orchestrierung fortzusetzen oder dem Benutzer zu antworten.
-
PostProcessingTrace— Verfolgt die Eingabe und Ausgabe des Nachbearbeitungsschritts, in dem der Agent die endgültige Ausgabe der Orchestrierung verarbeitet, und bestimmt, wie die Antwort an den Benutzer zurückgegeben werden soll.
-
FailureTrace— Verfolgt den Grund, warum ein Schritt fehlgeschlagen ist.
-
GuardrailTrace— Zeichnet die Aktionen der Leitplanke nach.
Jede der Spuren (außerFailureTrace
) enthält eine ModelInvocationInputObjekt. Die ModelInvocationInputDas Objekt enthält Konfigurationen, die in der Eingabeaufforderungsvorlage für den Schritt festgelegt wurden, sowie die Aufforderung, die dem Agenten in diesem Schritt zur Verfügung gestellt wurde. Weitere Informationen zum Ändern von Eingabeaufforderungsvorlagen finden Sie unterVerbessern Sie die Genauigkeit Ihrer Mitarbeiter mithilfe erweiterter Vorlagen für Eingabeaufforderungen in Amazon Bedrock. Die Struktur des ModelInvocationInput
Objekts ist wie folgt:
{ "traceId": "string", "text": "string", "type": "PRE_PROCESSING | ORCHESTRATION | ROUTING_CLASSIFIER | KNOWLEDGE_BASE_RESPONSE_GENERATION | POST_PROCESSING", "foundationModel:string", "inferenceConfiguration": { "maximumLength": number, "stopSequences": ["string"], "temperature": float, "topK": float, "topP": float }, "promptCreationMode": "DEFAULT | OVERRIDDEN", "parserMode": "DEFAULT | OVERRIDDEN", "overrideLambda": "string" }
Die folgende Liste beschreibt die Felder des ModelInvocationInputObjekt:
-
traceId
– die eindeutige Kennung des Trace. -
text
: Der Text aus der Eingabeaufforderung, die dem Agenten in diesem Schritt zur Verfügung gestellt wurde. -
type
: Der aktuelle Schritt im Prozess des Agenten. -
foundationModel
— Das Grundmodell des Kollaborationsagenten in der Zusammenarbeit mit mehreren Agenten. Dieses Feld wird nur ausgefüllt, wenntype
ROUTING_CLASSIFIER
Wenn das für die Weiterleitung der Aufforderung verwendete Standardmodell außer Kraft gesetzt wird, zeigt dieses Feld das Modell des Supervisor-Agenten, der für die Weiterleitung der Aufforderung verwendet wird. -
inferenceConfiguration
: Inferenzparameter, die die Antwortgenerierung beeinflussen. Weitere Informationen finden Sie unter Beeinflussen Sie die Antwortgenerierung mit Inferenzparametern. -
promptCreationMode
— Ob die standardmäßige Basisvorlage für Eingabeaufforderungen des Agenten für diesen Schritt außer Kraft gesetzt wurde. Weitere Informationen finden Sie unter Verbessern Sie die Genauigkeit Ihrer Mitarbeiter mithilfe erweiterter Vorlagen für Eingabeaufforderungen in Amazon Bedrock. -
parserMode
— Ob der Standard-Antwortparser des Agenten für diesen Schritt überschrieben wurde. Weitere Informationen finden Sie unter Verbessern Sie die Genauigkeit Ihrer Mitarbeiter mithilfe erweiterter Vorlagen für Eingabeaufforderungen in Amazon Bedrock. -
overrideLambda
— Der Amazon-Ressourcenname (ARN) der Parser-Lambda-Funktion, die zum Analysieren der Antwort verwendet wurde, falls der Standardparser überschrieben wurde. Weitere Informationen finden Sie unter Verbessern Sie die Genauigkeit Ihrer Mitarbeiter mithilfe erweiterter Vorlagen für Eingabeaufforderungen in Amazon Bedrock.
Weitere Informationen zu den einzelnen Trace-Typen finden Sie in den folgenden Abschnitten:
{ "modelInvocationInput": { // see above for details } "modelInvocationOutput": { "metadata": { "usage": { "inputToken":: int, "outputToken":: int }, "rawResponse": { "content": "string" } "parsedResponse": { "isValid": boolean, "rationale": "string" }, "traceId": "string" } }
Der PreProcessingTracebesteht aus einem ModelInvocationInputObjekt und ein PreProcessingModelInvocationOutputObjekt. Die PreProcessingModelInvocationOutputenthält die folgenden Felder.
-
metadata
— Enthält die folgenden Informationen zur Ausgabe des Foundation-Modells.usage
— Enthält die folgenden Informationen zur Verwendung des Foundation-Modells.-
inputTokens
— Enthält die Informationen über die Eingabe-Token aus der Verwendung des Foundation-Modells. -
outputTokens
— Enthält die Informationen über die Ausgabetokens aus der Verwendung des Foundation-Modells.
-
-
rawResponse
— Enthält die Rohausgabe des Foundation-Modells.-
content
— Der Rohausgabeinhalt des Foundation-Modells.
-
-
parsedResponse
: Enthält die folgenden Details zur analysierten Benutzeraufforderung.-
isValid
— Gibt an, ob die Benutzeraufforderung gültig ist. -
rationale
: Gibt die Argumentation des Agenten für die nächsten Schritte an.
-
-
traceId
– die eindeutige Kennung des Trace.
Der OrchestrationTracebesteht aus ModelInvocationInputObjekt, OrchestrationModelInvocationOutputObjekt und eine beliebige Kombination der Objekte Rationale InvocationInput, und Observation. Die OrchestrationModelInvocationOutputenthält die folgenden Felder. Weitere Informationen zu den Objekten Rationale und Observation erhalten Sie, wenn Sie eine der folgenden Registerkarten auswählen. InvocationInput
{ "modelInvocationInput": { // see above for details }, "modelInvocationOutput": { "metadata": { "usage": { "inputToken":: int, "outputToken":: int }, "rawResponse": { "content": "string" }, "rationale": { ... }, "invocationInput": { ... }, "observation": { ... } }
Wenn das type
ist AGENT_COLLABORATOR
und ob das Routing für den Supervisor-Agent aktiviert wurde, OrchestrationModelInvocationOutputwird die folgende Struktur enthalten:
routingClassifierModelInvocationOutput: { traceId: "string", rawResponse: "string", routerClassifierParsedResponse: {...} metadata: { inputTokens: "..." outputTokens: "..." } }
{ "modelInvocationInput": { // see above for details } "modelInvocationOutput": { "rawResponse": { "content": "string" }, "metadata": { "usage": { "inputToken": int, "outputToken": int } }, "parsedResponse": { "text": "string" }, "traceId": "string" } }
Das PostProcessingTracebesteht aus einem ModelInvocationInputObjekt und ein PostProcessingModelInvocationOutputObjekt. Die PostProcessingModelInvocationOutputenthält die folgenden Felder:
-
rawResponse
— Enthält die Rohausgabe des Foundation-Modells.-
content
— Der Rohausgabeinhalt des Foundation-Modells.
-
-
metadata
— Enthält die folgenden Informationen zur Ausgabe des Foundation-Modells.usage
— Enthält die folgenden Informationen zur Verwendung des Foundation-Modells.-
inputTokens
— Enthält die Informationen über die Eingabe-Token aus der Verwendung des Foundation-Modells. -
outputTokens
— Enthält die Informationen über die Ausgabetokens aus der Verwendung des Foundation-Modells.
-
-
parsedResponse
— Enthält die Informationentext
, die an den Benutzer zurückgegeben werden sollen, nachdem der Text von der Parser-Funktion verarbeitet wurde. -
traceId
– die eindeutige Kennung des Trace.
{ "failureReason": "string", "traceId": "string" }
Die folgende Liste beschreibt die Felder des FailureTraceObjekts:
-
failureReason
: Der Grund, warum der Schritt fehlgeschlagen ist. -
traceId
– die eindeutige Kennung des Trace.
{ "action": "GUARDRAIL_INTERVENED" | "NONE", "inputAssessments": [GuardrailAssessment], "outputAssessments": [GuardrailAssessment] }
In der folgenden Liste werden die Felder des GuardrailAssessment Objekts beschrieben:
-
action
— gibt an, ob Leitplanken in die Eingabedaten eingegriffen haben oder nicht. Die Optionen sind oder.GUARDRAIL_INTERVENED
NONE
-
inputAssessments
— Die Einzelheiten der Guardrail-Bewertung anhand der Benutzereingabe. -
outputAssessments
— Die Einzelheiten der Guardrail-Bewertung in der Antwort.
Weitere Informationen zum GuardrailAssessment
Objekt und zum Testen eines Guardrails finden Sie unter. Testen Sie eine Leitplanke
GuardrailAssessment Beispiel:
{ "topicPolicy": { "topics": [{ "name": "string", "type": "string", "action": "string" }] }, "contentPolicy": { "filters": [{ "type": "string", "confidence": "string", "action": "string" }] }, "wordPolicy": { "customWords": [{ "match": "string", "action": "string" }], "managedWordLists": [{ "match": "string", "type": "string", "action": "string" }] }, "sensitiveInformationPolicy": { "piiEntities": [{ "type": "string", "match": "string", "action": "string" }], "regexes": [{ "name": "string", "regex": "string", "match": "string", "action": "string" }] } }