Invocación de un agente insertado - Amazon Bedrock

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Invocación de un agente insertado

nota

La configuración e invocación de una característica de un agente insertado está en versión preliminar para Amazon Bedrock y está sujeta a cambios.

Antes de invocar un agente insertado, asegúrese de haber cumplido los requisitos previos.

Para invocar un agente en línea, envíe una solicitud de InvokeInlineAgentAPI con un punto de ejecución de Agents for Amazon Bedrock e incluya como mínimo los siguientes campos.

Campo Caso de uso
instruction Proporcione instrucciones para decirle al agente insertado lo que hacer y cómo debe interactuar con los usuarios.
foundationModel Especifique un modelo fundacional para la orquestación del agente insertado que va a crear. Por ejemplo, anthropic claude, meta Llama3.1, etc.
sessionId Identificador único de la sesión. Use el mismo valor en todas las solicitudes para continuar la misma conversación.

Los siguientes campos son opcionales:

Campo Caso de uso
actionGroups Lista de grupos de acciones en la que cada grupo de acciones define las acciones que el agente insertado puede llevar a cabo.
knowledgeBases La base de conocimiento se asocia con un agente insertado para aumentar la respuesta generada por el modelo.
guardrailConfiguration Configuraciones de barreras de protección para bloquear temas, evitar alucinaciones e implementar protecciones para su aplicación.
agentCollaboration Define cómo el agente colaborador trata la información de varios agentes colaboradores para coordinar una respuesta final. El agente colaborador también puede ser el supervisor.
collaboratorConfigurations Configuraciones para el agente colaborador.
collaborators Lista de agentes colaboradores.
promptOverrideConfiguration Las configuraciones de las peticiones avanzadas se utilizan para invalidar las peticiones predeterminadas.
enableTrace Especifique si desea activar o no el seguimiento del proceso de razonamiento del agente insertado.
TTLInSegundos de sesión inactiva Especifique la duración tras la cual el agente finaliza la sesión y elimina la información almacenada.
customerEncryptionKeyArn Especifique el ARN de una clave de KMS para cifrar los recursos del agente.
endSession Especifique si se debe finalizar la sesión con el agente o no.
inlineSessionState Parámetros que especifican los distintos atributos de una sesión.
inputText Especifique el texto de la petición que se envía al agente.
reasoning_config Permitir el razonamiento del modelo para que el modelo explique cómo llegó a sus conclusiones. Úselo dentro de un campo additionalModelRequestFields. Debe especificar el número de budget_tokens que se utilizan para el razonamiento del modelo, que son un subconjunto de los tokens de salida. Para obtener más información, consulte Mejora de las respuestas de los modelos con el razonamiento de modelos.

El siguiente ejemplo de API InvokeInlineAgent proporciona configuraciones completas del agente insertado, que incluyen el modelo fundacional, las instrucciones, los grupos de acción con un intérprete de código, las barreras de protección y las bases de conocimiento.

response = bedrock_agent_runtime.invoke_inline_agent( // Initialization parameters: cannot be changed for a conversation sessionId='uniqueSessionId', customerEncryptionKeyArn: String, // Input inputText="Hello, can you help me with a task?", endSession=False, enableTrace=True, // Agent configurations foundationModel='anthropic.claude-3-7-sonnet-20250219-v1:0', instruction="You are a helpful assistant...", actionGroups=[ { 'name': 'CodeInterpreterAction', 'parentActionGroupSignature': 'AMAZON.CodeInterpreter' }, { 'actionGroupName': 'FetchDetails', 'parentActionGroupSignature': '', "actionGroupExecutor": { ... }, "apiSchema": { ... }, "description": "string", "functionSchema": { ... } } ], knowledgeBases=[ { knowledgeBaseId: "string", description: 'Use this KB to get all the info', retrievalConfiguration: { vectorSearchConfiguration: { filter: { ... }, numberOfResults: number, overrideSearchType: "string" } } } ], guardrailConfiguration={ guardrailIdentifier: 'BlockEverything', gurardrailVersion: '1.0' }, promptOverrideConfiguration: {...} // session properties: persisted throughout conversation inlineSessionState = { sessionAttributes = { 'key': 'value' }, promptSessionAttributes = {k:v}, returnControlInvocationResults = {...}, invocationId = 'abc', files = {...}, } }

Puede incluir parámetros de razonamiento del modelo en la solicitud. A continuación, se muestra un ejemplo de una única petición que activa el razonamiento del modelo en additionalModelRequestFields.

{ "basePromptTemplate": " ... ", "inferenceConfiguration": { "stopSequences": [ "</answer>" ] }, "parserMode": "DEFAULT", "promptCreationMode": "DEFAULT", "promptState": "DISABLED", "promptType": "ORCHESTRATION", "additionalModelRequestFields": "reasoning_config": { "type": "enabled", "budget_tokens": 1024 } }