Invocar um agente em linha - Amazon Bedrock

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á.

Invocar um agente em linha

nota

Os recursos de configuração e invocação de um recurso de agente em linha está em uma versão prévia do Amazon Bedrock e está sujeito a alterações.

Para invocar o agente em linha, primeiro verifique se os pré-requisitos foram atendidos.

Para invocar um agente em linha, envie uma solicitação de InvokeInlineAgentAPI com um endpoint de tempo de execução do Agents for Amazon Bedrock e inclua minimamente os seguintes campos.

Campo Caso de uso
instruction Forneça instruções que digam ao agente em linha o que ele deve fazer e como ele deve interagir com os usuários.
foundationModel Especifique um modelo de base a ser usado para orquestração pelo agente em linha criado por você. Por exemplo, Claude da Anthropic, Llama3.1 da Meta etc.
sessionId Um identificador exclusivo da sessão. Use o mesmo valor em todas as solicitações para continuar a mesma conversa.

Os seguintes campos são opcionais:

Campo Caso de uso
actionGroups Lista de grupos de ação em que cada grupo de ação define as ações que o agente integrado pode realizar.
knowledgeBases Associações da base de conhecimento com o agente em linha para aumentar a resposta gerada pelo modelo.
guardrailConfiguration Configurações de barreira de proteção para bloquear tópicos, evitar alucinações e implementar proteções para sua aplicação.
agentCollaboration Define como o agente colaborador lida com as informações de vários agentes colaboradores para coordenar uma resposta final. O agente colaborador também pode ser o supervisor.
collaboratorConfigurations Configurações para o agente colaborador.
collaborators Lista de agentes colaboradores.
promptOverrideConfiguration Configurações para prompts avançados usados para substituir os prompts padrão.
enableTrace Especifique se deseja ativar ou não o rastreamento do processo de raciocínio do agente em linha.
Segundos da sessão ociosa TTLIn Especifique a duração após a qual o agente em linha deve encerrar a sessão e excluir todas as informações armazenadas.
customerEncryptionKeyArn Especifique o ARN de uma chave do KMS para criptografar recursos do agente.
endSession Especifique se a sessão deve ser encerrada com o agente ou não.
inlineSessionState Parâmetros que especificam os vários atributos de uma sessão.
inputText Especifique o texto do prompt a ser enviado ao agente.
reasoning_config Para habilitar o raciocínio de modelo para que o modelo explique como chegou às respectivas conclusões. Use dentro de um campo additionalModelRequestFields. Você deve especificar o número de budget_tokens que é usado para o raciocínio de modelo, que são um subconjunto dos tokens de saída. Para ter mais informações, consulte Aprimorar as respostas do modelo com o raciocínio de modelo.

O exemplo da API InvokeInlineAgent a seguir fornece configurações completas de agentes em linha, como modelo de base, instruções, grupos de ação com interpretador de código, barreiras de proteção e bases de conhecimento.

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 = {...}, } }

Também é possível incluir parâmetros de raciocínio de modelo na solicitação. Veja a seguir um exemplo de um único prompt que ativa o raciocínio de modelo em additionalModelRequestFields.

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