As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Cada resposta de um agente do Amazon Bedrock é acompanhada por um rastreamento que detalha as etapas que estão sendo orquestradas pelo agente. O rastreamento ajuda você a acompanhar o processo de raciocínio do agente que o leva à resposta que ele dá naquele momento da conversa.
Use o rastreamento para rastrear o caminho do agente desde a entrada do usuário até a resposta que ele retorna. O rastreamento fornece informações sobre as entradas dos grupos de ação que o agente invoca e as bases de conhecimento que ele consulta para responder ao usuário. Além disso, o rastreamento fornece informações sobre os resultados que os grupos de ação e as bases de conhecimento exibem. Você pode ver o raciocínio que o agente usa para determinar a ação que ele executa ou a consulta que ele faz a uma base de conhecimento. Se uma etapa do rastreamento falhar, o rastreamento retornará o motivo da falha. Use as informações detalhadas no rastreamento para solucionar problemas com o agente. Você pode identificar etapas nas quais o agente tem problemas ou nas quais ele produz um comportamento inesperado. Assim, você pode usar essas informações para considerar maneiras de melhorar o comportamento do agente.
Estrutura do rastreamento
Se você ativar o rastreamento, no InvokeAgentresposta, cada uma chunk
no fluxo é acompanhada por um trace
campo mapeado para um TracePartobjeto. O tracePart
objeto contém informações sobre o agente e as sessões, juntamente com o processo de raciocínio do agente e os resultados da chamada de funções da API.
{
"agentId": "string",
"agentName": "string",
"collaboratorName": "string",
"agentAliasId": "string",
"sessionId": "string",
"agentVersion": "string",
"trace": { ...},
"callerChain": [{
"agentAliasArn": "agent alias arn
"
}]
}
A lista a seguir descreve os campos de TracePartobjeto:
-
agentId
— O identificador exclusivo do agente. -
agentName
— O nome do agente. -
collaboratorName
— Se a colaboração multiagente estiver ativada, o nome do agente colaborador. -
agentVersion
— A versão do agente. -
agentAliasId
— O identificador exclusivo do alias do agente. -
sessionId
— O identificador exclusivo da sessão com o agente. -
trace
— Contém o processo de raciocínio do agente e os resultados da chamada de ações da API. Veja a seguir mais informações. -
callerChain
— Lista de chamadores entre o agente que publicou esse rastreamento e o usuário final.Se for um único agente, esse campo conterá o alias Arn do mesmo agente que publicou o rastreamento.
Se a colaboração multiagente estiver ativada, esse campo conterá o alias Arn de todos os agentes que encaminharam a solicitação do usuário final para o agente atual.
Dentro do TraceParté um trace
campo que mapeia para um Traceobjeto. O rastreamento é mostrado como um objeto JSON no console e na API. Cada etapa no console ou Tracena API pode estar um dos seguintes rastreamentos:
-
PreProcessingTrace— Rastreia a entrada e a saída da etapa de pré-processamento, na qual o agente contextualiza e categoriza a entrada do usuário e determina se ela é válida.
-
OrchestrationTrace— Rastreia a entrada e a saída da etapa de orquestração, na qual o agente interpreta a entrada, invoca grupos de ação e consulta as bases de conhecimento. Em seguida, o agente exibe a saída para continuar a orquestração ou responder ao usuário.
-
PostProcessingTrace— Rastreia a entrada e a saída da etapa de pós-processamento, na qual o agente manipula a saída final da orquestração e determina como retornar a resposta ao usuário.
-
FailureTrace— Rastreia o motivo pelo qual uma etapa falhou.
-
GuardrailTrace— Rastreia as ações do Guardrail.
Cada um dos traços (excetoFailureTrace
) contém um ModelInvocationInputobjeto. A ModelInvocationInputO objeto contém configurações definidas no modelo de solicitação da etapa, junto com a solicitação fornecida ao agente nessa etapa. Para obter mais informações sobre como modificar os modelos de prompt, consulte Melhorar a precisão dos agentes usando modelos de prompt avançados no Amazon Bedrock. A estrutura do objeto ModelInvocationInput
é descrita assim:
{
"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"
}
A lista a seguir descreve os campos do ModelInvocationInputobjeto:
-
traceId
: o identificador exclusivo do rastreamento. -
text
: o texto do prompt fornecido ao agente nesta etapa. -
type
: a etapa atual no processo do agente. -
foundationModel
— O modelo básico do agente colaborador na colaboração multiagente. Esse campo é preenchido somente setype
forROUTING_CLASSIFIER
. Se o modelo padrão usado para rotear o prompt for substituído, esse campo mostrará o modelo do agente supervisor usado para rotear o prompt. -
inferenceConfiguration
: parâmetros de inferência que influenciam a geração de resposta. Para obter mais informações, consulte Geração de resposta de influência com parâmetros de inferência.. -
promptCreationMode
: se o modelo de prompt de base padrão do agente foi substituído para essa etapa. Para obter mais informações, consulte Melhorar a precisão dos agentes usando modelos de prompt avançados no Amazon Bedrock. -
parserMode
: se o analisador de respostas padrão do agente foi substituído nessa etapa. Para obter mais informações, consulte Melhorar a precisão dos agentes usando modelos de prompt avançados no Amazon Bedrock. -
overrideLambda
: o nome do recurso da Amazon (ARN) da função do Lambda analisadora usada para analisar a resposta, caso o analisador padrão tenha sido substituído. Para obter mais informações, consulte Melhorar a precisão dos agentes usando modelos de prompt avançados no Amazon Bedrock.
Para obter mais informações sobre cada tipo de rastreamento, consulte as seguintes seções:
{
"modelInvocationInput": { // see above for details }
"modelInvocationOutput": {
"metadata": {
"usage": {
"inputToken":: int,
"outputToken":: int
},
"rawResponse": {
"content": "string"
}
"parsedResponse": {
"isValid": boolean,
"rationale": "string"
},
"traceId": "string"
}
}
O PreProcessingTraceconsiste em um ModelInvocationInputobjeto e um PreProcessingModelInvocationOutputobjeto. A PreProcessingModelInvocationOutputcontém os seguintes campos.
-
metadata
: contém as informações a seguir sobre a saída do modelo de base.usage
: contém as informações a seguir sobre o uso do modelo de base.-
inputTokens
: contém as informações sobre os tokens de entrada do uso do modelo de base. -
outputTokens
: contém as informações sobre os tokens de saída do uso do modelo de base.
-
-
rawResponse
: contém a saída bruta do modelo de base.-
content
: o conteúdo de saída bruto do modelo de base.
-
-
parsedResponse
: contém os detalhes a seguir sobre o prompt do usuário analisado.-
isValid
: especifica se o prompt do usuário é válido. -
rationale
: especifica o raciocínio do agente para as próximas etapas a serem tomadas.
-
-
traceId
: o identificador exclusivo do rastreamento.
O OrchestrationTraceconsiste no ModelInvocationInputobjeto, OrchestrationModelInvocationOutputobjeto e qualquer combinação dos objetos Razão InvocationInpute Observação. A OrchestrationModelInvocationOutputcontém os seguintes campos. Para obter mais informações sobre objetos de InvocationInputRazão e Observação, selecione nas guias a seguir.
{
"modelInvocationInput": { // see above for details },
"modelInvocationOutput": {
"metadata": {
"usage": {
"inputToken":: int,
"outputToken":: int
},
"rawResponse": {
"content": "string"
},
"rationale": { ... },
"invocationInput": { ... },
"observation": { ... }
}
Se type
for AGENT_COLLABORATOR
e se o roteamento estiver habilitado para o agente supervisor, OrchestrationModelInvocationOutputconterá a seguinte estrutura:
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"
}
}
O PostProcessingTraceconsiste em um ModelInvocationInputobjeto e um PostProcessingModelInvocationOutputobjeto. A PostProcessingModelInvocationOutputcontém os seguintes campos:
-
rawResponse
: contém a saída bruta do modelo de base.-
content
: o conteúdo de saída bruto do modelo de base.
-
-
metadata
: contém as informações a seguir sobre a saída do modelo de base.usage
: contém as informações a seguir sobre o uso do modelo de base.-
inputTokens
: contém as informações sobre os tokens de entrada do uso do modelo de base. -
outputTokens
: contém as informações sobre os tokens de saída do uso do modelo de base.
-
-
parsedResponse
: contém otext
a ser retornado para o usuário depois de o texto ser processado pela função analisadora. -
traceId
: o identificador exclusivo do rastreamento.
{
"failureReason": "string",
"traceId": "string"
}
A lista a seguir descreve os campos do objeto FailureTrace.
-
failureReason
: o motivo pelo qual a etapa falhou. -
traceId
: o identificador exclusivo do rastreamento.
{
"action": "GUARDRAIL_INTERVENED" | "NONE",
"inputAssessments": [GuardrailAssessment],
"outputAssessments": [GuardrailAssessment]
}
A lista a seguir descreve os campos do GuardrailAssessment objeto:
-
action
: indica se as barreiras de proteção intervieram ou não nos dados de entrada. As opções sãoGUARDRAIL_INTERVENED
ouNONE
. -
inputAssessments
: os detalhes da avaliação da barreira de proteção na entrada do usuário. -
outputAssessments
: os detalhes da avaliação da barreira de proteção na resposta.
Para obter mais detalhes sobre o objeto GuardrailAssessment
e testar uma barreira de proteção, consulte Testar uma barreira de proteção.
GuardrailAssessment exemplo:
{
"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"
}]
}
}