View a markdown version of this page

Instâncias - Base da Amazônia AgentCore

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

Instâncias

Quando você hospeda um agente no tipo de computação Instances, o Amazon Bedrock AgentCore Runtime executa seu agente em instâncias gerenciadas do Amazon EC2 que ele provisiona e opera dentro de sua própria AWS conta. Assim, você obtém os benefícios de seleção de hardware e preços do Amazon EC2 sem gerenciar o ciclo de vida da instância, o sistema operacional e a aplicação de patches, escalabilidade ou desmontagem. Um provedor de capacidade define a infraestrutura que essas instâncias usam e AgentCore gerencia o provisionamento, a aplicação de patches, a escalabilidade e a desmontagem em seu nome. Como as instâncias são executadas em sua conta, seus dados permanecem em sua conta, seus controles de conta existentes se aplicam e você pode usar seus contratos de preços do EC2, como planos de poupança, instâncias reservadas e reservas de On-Demand capacidade (ODCRs). Com as instâncias, você obtém computação persistente e pode executar vários agentes colaboradores em uma única instância, mantendo a visibilidade e o controle sobre a infraestrutura subjacente.

Quando usar instâncias

Escolha o tipo de computação de instâncias quando sua carga de trabalho precisar de recursos além do que o modelo de microVM sem servidor oferece:

  • Sessões persistentes e de longa duração — as sessões podem durar até 14 dias, em comparação com um máximo de 8 horas para microVMs. Isso é adequado para automação de longa duração, trabalhos de transformação e agentes que pausam e retomam por longos períodos.

  • Hardware especializado — escolha um tipo de instância de GPU compatível para cargas de trabalho de computação intensiva, como renderização 3D, simulação ou inferência de modelo. AgentCore provisiona os drivers de GPU na instância, para que as imagens de contêiner padrão funcionem sem agrupar drivers, e as cargas de trabalho de computação (CUDA) e gráficas sejam suportadas. Para as famílias suportadas, consulte Usar tipos de instância de GPU.

  • Multi-agent colaboração — Vários agentes podem ser executados na mesma instância, compartilhar um sistema de arquivos e coordenar a mesma tarefa.

  • Sua conta, seus controles — As instâncias são executadas em sua conta, para que seus dados permaneçam em sua conta e você possa usar os mecanismos de custo existentes, como planos de poupança e reservas de On-Demand capacidade (ODCRs).

Se sua carga de trabalho for uma API-driven interação leve e concluída rapidamente, o tipo de computação padrão de microVMS geralmente é o mais adequado. Para obter mais informações, consulte Comparar tipos de computação.

Principais conceitos

Hospedar um agente em instâncias introduz alguns recursos além dos principais conceitos de AgentCore tempo de execução descritos em MicroVMs microVMS.

Provedor de capacidade

Um provedor de capacidade define a infraestrutura do EC2 na qual seus agentes são executados: o sistema operacional, os tipos de instância permitidos, a rede (VPC e sub-redes), os volumes de armazenamento e as funções do IAM usadas para provisionar e acessar as instâncias. Um provedor de capacidade é um modelo reutilizável — você pode associá-lo a vários tempos de execução do agente e AgentCore usá-lo para iniciar instâncias quando esses tempos de execução são invocados.

Características principais:

  • Um provedor de capacidade é criado em um CREATING estado e se torna READY depois que sua configuração é validada. Se a validação falhar, ela entraráCREATE_FAILED.

  • Depois que um provedor de capacidade é criado, somente sua descrição pode ser editada. Para alterar outras configurações, duplique o provedor de capacidade e faça suas atualizações no fluxo duplicado.

  • Você pode listar os tempos de execução (e as versões de tempo de execução) associados a um provedor de capacidade e deve desassociá-los antes que o provedor de capacidade possa ser excluído.

  • A exclusão de um provedor de capacidade interrompe e exclui todas as sessões associadas e seu armazenamento persistente.

Tempo de execução do agente em instâncias

Ao criar um tempo de execução do agente, você escolhe seu tipo de computação. A seleção de instâncias associa o tempo de execução a um provedor de capacidade por meio do capacityProviderConfiguration parâmetro. O tempo de execução ainda define qual agente é executado (o código ou artefato do contêiner) e como ele é configurado (protocolo, autenticação, endpoints, versões); o provedor de capacidade define a computação em que ele é executado.

Você não pode alterar o tipo de computação após a criação de um tempo de execução.

Sessão

Uma sessão é uma instância isolada do EC2 instanciada do provedor de capacidade de um tempo de execução. Cada sessão tem seu próprio ciclo de vida e estado persistente, e você a identifica com um runtimeSessionId que você fornece na invocação. AgentCore cria uma sessão na primeira invocação com um novo ID de sessão, e a sessão mantém seu estado entre as paradas.

Uma sessão dura no máximo 14 dias. Quando uma sessão atinge essa vida útil máxima, ela é interrompida AgentCore automaticamente. Ele encerra a instância do EC2, mas retém os volumes persistentes da sessão. Para retomar o trabalho após a interrupção de uma sessão, invoque o tempo de execução novamente com o mesmoruntimeSessionId. AgentCore provisiona uma nova instância e reconecta os volumes persistentes, para que seus dados fiquem intactos. Como a nova instância pode ser iniciada a partir de uma imagem de máquina atualizada, uma sessão reiniciada pode ser executada em uma instância com os patches mais recentes. Quando você exclui uma sessão, AgentCore desprovisiona tudo, incluindo os volumes persistentes.

Para o isolamento da sessão e o modelo de segurança multilocatário, consulte Modelo de segurança e permissões para instâncias de tempo de execução.

Agente

Um agente é uma carga de trabalho em execução em uma sessão. Diferentemente do modelo microVM, em que um tempo de execução hospeda um agente, uma única sessão de instâncias pode hospedar vários agentes. Quando dois tempos de execução de agentes compartilham o mesmo provedor de capacidade, você pode invocá-los com o mesmo runtimeSessionId para colocar os dois agentes na mesma instância do EC2. Lá, eles compartilham um sistema de arquivos e podem colaborar na mesma tarefa.

Noções básicas sobre instâncias gerenciadas

As instâncias do EC2 que respaldam suas sessões são instâncias gerenciadas pelo Amazon EC2 — AgentCore as provisionam e as operam em sua conta em seu nome, portanto, você tem permissões restritas sobre elas em comparação com as instâncias padrão do EC2. Você pode identificá-los pelo Operator campo na DescribeInstances saída do EC2 e pela tag AgentCore capacity-provider na instância.

Você não executa operações de ciclo de vida padrão do EC2 diretamente nessas instâncias — por exemplo, você não as inicia, corrige ou encerra você mesmo. AgentCore gerencia seu ciclo de vida; para removê-los, exclua o provedor de capacidade associado, que interrompe e exclui suas sessões e seu armazenamento persistente. As instâncias gerenciadas estão ocultas das visualizações do console do EC2 e das operações da lista de APIs por padrão; você pode alterar isso com a configuração de visibilidade de recursos gerenciados. Eles permanecem totalmente operacionais e faturáveis em sua conta.

Compare os tipos de computação

A tabela a seguir compara os tipos de computação de microVMs e Instâncias para ajudar você a escolher a correta para sua carga de trabalho.

Característica MicroVMs Instâncias

Mais adequado para

API-driven Agentes leves que iniciam rapidamente, escalam sob demanda e concluem em poucas horas

Long-running, cargas de trabalho dinâmicas ou colaborativas que precisam de GPUs ou sessões com vários agentes

Modelo de gestão

Totalmente AWS gerenciado, sem servidor, escalável sob demanda

AWS gerenciou o EC2 em sua conta; AWS gerencia patches e atualizações, com sessões persistentes

Duração máxima da sessão

Até 8 horas

Até 14 dias

Sistemas operacionais

Contêineres Linux (arm64)

Linux (x86_64earm64)

Redes

PUBLICou VPC

VPC

Modalidade de agente

API, CLI

API, CLI

Agentes por sessão

Um tempo de execução hospeda um agente (1:1)

Uma sessão pode hospedar vários agentes (1:N)

Artefatos compatíveis

Imagem do contêiner e fonte do Amazon S3

Imagem do contêiner e fonte do Amazon S3

Acesso à GPU

Não compatível

Escolha um tipo de instância de GPU compatível; os drivers são provisionados para você

Preços

Consumption-based, cobrado por AgentCore

As instâncias do EC2 são executadas em sua conta; use seus planos de poupança e ODCRs

Modelos e estruturas

Any

Any

Use tipos de instância de GPU

Para cargas de trabalho de computação intensiva, como inferência de modelo, renderização 3D e processamento de mídia, inclua um tipo de instância de GPU nos tipos de instância permitidos do seu provedor de capacidade. AgentCore provisiona os drivers de GPU na instância, para que você não configure caminhos de dispositivos, índices de GPU ou versões de drivers, e as imagens de contêiner padrão (por exemplo, imagens CUDA) funcionem sem agrupar drivers. Há suporte para cargas de trabalho computacionais (CUDA) e gráficas (como Vulkan, EGL e GLX). Quando mais de um agente é executado na mesma instância, todos os agentes compartilham o acesso às suas GPUs.

As seguintes famílias de instâncias de GPU e acelerador são suportadas:

  • Famílias de GPU NVIDIA — g4dn g5g6,g6e,gr6,, g6fgr6f, e. g7e

  • AWS famílias de aceleradores — inf2 (desenvolvido pela AWS Inferentia2).

Se você incluir um tipo de instância aceleradora de uma família que não é compatível, CreateCapacityProvider falhará com um ValidationException que nomeia o tipo de instância e lista as famílias suportadas. Non-accelerator os tipos de instância não são afetados.

Fluxo de invocação

A invocação de um tempo de execução do agente apoiado por um provedor de capacidade segue o mesmo ponto de InvokeAgentRuntime entrada do modelo microVM. AgentCore resolve o provedor de capacidade, garante que uma instância e um agente estejam em execução para sua sessão e envia a solicitação por proxy para o agente:

  1. Você chama InvokeAgentRuntime com o ARN de tempo de execução e umruntimeSessionId.

  2. Se não existir nenhuma sessão para esse ID de sessão, AgentCore provisione uma instância do EC2 do provedor de capacidade do tempo de execução em sua conta e inicie o agente nela. A primeira invocação de uma sessão leva mais tempo porque inclui o provisionamento de instâncias.

  3. Se uma sessão já existir, AgentCore reutilizará a instância em execução. A invocação de um segundo tempo de execução que compartilha o mesmo provedor de capacidade com o mesmo ID de sessão inicia esse agente junto com o primeiro na mesma instância.

  4. AgentCore envia a solicitação por proxy para o agente e transmite a resposta de volta para você. Cada agente é executado com suas próprias credenciais do IAM derivadas da função de execução de seu tempo de execução.

Como o agente é executado em uma instância em sua conta, a instância do EC2, suas interfaces de rede e quaisquer volumes persistentes são visíveis no console do EC2 da sua conta e cobrados em sua conta. Essas são instâncias gerenciadas do Amazon EC2 — instâncias que AgentCore provisionam e operam em sua conta em seu nome. Você pode controlar se elas aparecem nas visualizações do console do EC2 e nas operações da lista de APIs com configurações https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/amazon-ec2-managed-instances.html#managed-resource-visibility-settings gerenciadas de visibilidade de recursos.

Armazenamento persistente em todas as sessões

Um provedor de capacidade pode definir um ou mais volumes do Amazon EBS. Quando você salva o provedor de capacidade, AgentCore salva a configuração do volume e cria o volume do EBS na primeira inicialização da sessão. Quando o tempo de execução de um agente monta um volume por meio de sua configuração de armazenamento, os dados do volume sobrevivem às paradas da sessão:

  1. Na primeira invocação de uma sessão, AgentCore cria o volume e o anexa à instância do EC2.

  2. Quando AgentCore interrompe a sessão, ela encerra a instância do EC2, mas retém o volume.

  3. Na próxima invocação com a mesmaruntimeSessionId, AgentCore provisiona uma nova instância e reconecta o volume existente, para que o agente veja seus dados anteriores intactos.

Isso permite fluxos de trabalho de agentes com estado em que os arquivos, caches e pontos de verificação do espaço de trabalho persistem nas reinicializações da sessão. A exclusão da sessão desprovisiona os recursos do EC2 — instância, interface de rede e volume do EBS — para que você pare de incorrer em custos com a infraestrutura de que não precisa mais.

Perfis do IAM

A hospedagem de agentes em instâncias envolve as seguintes funções, além da função de execução de tempo de execução do agente, que concede ao código do agente suas permissões de tempo de execução:

  • Perfil da instância — Uma função do IAM anexada à instância do EC2. AgentCore o usa para coletar registros do sistema da instância; ele não concede permissões ao código do seu agente (a função de execução de tempo de execução do agente faz isso).

  • Função de infraestrutura — Uma função do IAM que AgentCore pressupõe provisionar e gerenciar instâncias do EC2 em sua conta em seu nome (iniciando, marcando e configurando a rede para instâncias e suas interfaces de rede).

Você pode permitir que o console crie funções padrão para você ou forneça funções existentes. Como a função de infraestrutura concede AgentCore a capacidade de gerenciar a computação em sua conta, defina-a com o menor privilégio que suas cargas de trabalho exigem e use as condições do IAM para restringi-la a VPCs, sub-redes ou tipos de instância específicos, quando apropriado.