View a markdown version of this page

instances - Base rocheuse de l'Amazonie AgentCore

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

instances

Lorsque vous hébergez un agent sur le type de calcul Instances, Amazon Bedrock AgentCore Runtime exécute votre agent sur des instances gérées par Amazon EC2 qu'il provisionne et gère sur votre propre AWS compte. Vous bénéficiez ainsi des avantages d'Amazon EC2 en termes de sélection de matériel et de tarification sans avoir à gérer le cycle de vie des instances, le système d'exploitation et les correctifs, la mise à l'échelle ou le démontage. Un fournisseur de capacité définit l'infrastructure utilisée par ces instances et AgentCore gère le provisionnement, l'application des correctifs, la mise à l'échelle et le démontage en votre nom. Étant donné que les instances s'exécutent sur votre compte, vos données y restent, les contrôles existants de votre compte s'appliquent et vous pouvez utiliser vos contrats de tarification EC2 tels que les plans d'épargne, les instances réservées et les réservations de On-Demand capacité (ODCR). Avec Instances, vous bénéficiez d'un calcul permanent et pouvez exécuter plusieurs agents collaboratifs sur une seule instance, tout en conservant la visibilité et le contrôle de l'infrastructure sous-jacente.

Quand utiliser les instances

Choisissez le type de calcul des instances lorsque votre charge de travail nécessite des fonctionnalités supérieures à celles proposées par le modèle microVM sans serveur :

  • Sessions persistantes et de longue durée  : les sessions peuvent durer jusqu'à 14 jours, contre un maximum de 8 heures pour les micromachines virtuelles. Cela convient à l'automatisation de longue durée, aux tâches de transformation et aux agents qui font des pauses et reprennent leurs activités sur de longues périodes.

  • Matériel spécialisé  : choisissez un type d'instance GPU compatible pour les charges de travail gourmandes en calcul telles que le rendu 3D, la simulation ou l'inférence de modèles. AgentCore provisionne les pilotes GPU sur l'instance, de sorte que les images de conteneurs standard fonctionnent sans regrouper les pilotes, et que les charges de travail informatiques (CUDA) et graphiques soient prises en charge. Pour les familles prises en charge, consultez la section Utiliser les types d'instances GPU.

  • Multi-agent collaboration  : plusieurs agents peuvent s'exécuter sur la même instance, partager un système de fichiers et se coordonner sur la même tâche.

  • Votre compte, vos contrôles  : les instances s'exécutent sur votre compte, vos données y restent donc conservées et vous pouvez utiliser les mécanismes de coûts existants tels que les plans d'épargne et les réservations de On-Demand capacité (ODCR).

Si votre charge de travail est une API-driven interaction légère qui s'effectue rapidement, le type de calcul MicroVMS par défaut est généralement le mieux adapté. Pour plus d'informations, voir Comparer les types de calcul.

Concepts de base

L'hébergement d'un agent sur des instances introduit quelques ressources en plus des concepts fondamentaux AgentCore d'exécution décrits dans MicroVMS.

Fournisseur de capacité

Un fournisseur de capacité définit l'infrastructure EC2 sur laquelle vos agents s'exécutent : le système d'exploitation, les types d'instances autorisés, le réseau (VPC et sous-réseaux), les volumes de stockage et les rôles IAM utilisés pour provisionner les instances et y accéder. Un fournisseur de capacité est un modèle réutilisable : vous pouvez l'associer à plusieurs environnements d'exécution d'agents et l' AgentCore utiliser pour lancer des instances lorsque ces environnements d'exécution sont invoqués.

Caractéristiques principales :

  • Un fournisseur de capacité est créé dans un CREATING état et devient une READY fois sa configuration validée. Si la validation échoue, il entreCREATE_FAILED.

  • Une fois qu'un fournisseur de capacité est créé, seule sa description peut être modifiée. Pour modifier d'autres configurations, dupliquez le fournisseur de capacité et effectuez vos mises à jour dans le flux dupliqué.

  • Vous pouvez répertorier les environnements d'exécution (et les versions d'exécution) associés à un fournisseur de capacité, et vous devez les dissocier avant de supprimer le fournisseur de capacité.

  • La suppression d'un fournisseur de capacité arrête et supprime toutes ses sessions associées ainsi que leur stockage persistant.

Exécution de l'agent sur les instances

Lorsque vous créez un environnement d'exécution d'agent, vous choisissez son type de calcul. La sélection d'Instances associe le runtime à un fournisseur de capacité via le capacityProviderConfiguration paramètre. L'environnement d'exécution définit toujours l'agent exécuté (le code ou l'artefact du conteneur) et la manière dont il est configuré (protocole, authentification, points de terminaison, versions) ; le fournisseur de capacité définit le calcul sur lequel il s'exécute.

Vous ne pouvez pas modifier le type de calcul après la création d'un runtime.

Session

Une session est une instance EC2 isolée instanciée à partir du fournisseur de capacité d'un environnement d'exécution. Chaque session possède son propre cycle de vie et son propre état persistant, et vous l'identifiez à l'aide d'un code runtimeSessionId que vous fournissez lors de l'invocation. AgentCore crée une session lors de la première invocation avec un nouvel identifiant de session, et la session conserve son état à chaque arrêt.

La durée maximale d'une session est de 14 jours. Lorsqu'une session atteint cette durée de vie maximale, elle s'arrête AgentCore automatiquement. Il met fin à l'instance EC2 mais conserve les volumes persistants de la session. Pour reprendre le travail après l'arrêt d'une session, appelez à nouveau le moteur d'exécution avec le mêmeruntimeSessionId. AgentCore provisionne une nouvelle instance et rattache les volumes persistants afin que vos données soient intactes. Étant donné que la nouvelle instance peut être lancée à partir d'une image de machine mise à jour, une session redémarrée peut s'exécuter sur une instance dotée des derniers correctifs. Lorsque vous supprimez une session, tout est AgentCore déprovisionné, y compris les volumes persistants.

Pour le modèle d'isolation des sessions et de sécurité mutualisé, voir Modèle de sécurité et autorisations pour les instances d'exécution.

Agent

Un agent est une charge de travail exécutée au sein d'une session. Contrairement au modèle MicroVM, dans lequel un environnement d'exécution héberge un agent, une seule session Instances peut héberger plusieurs agents. Lorsque deux environnements d'exécution d'agents partagent le même fournisseur de capacité, vous pouvez les invoquer avec le même fournisseur runtimeSessionId pour placer les deux agents sur la même instance EC2. Ils y partagent un système de fichiers et peuvent collaborer sur la même tâche.

Comprendre les instances gérées

Les instances EC2 qui soutiennent vos sessions sont des instances gérées par Amazon EC2. Elles sont AgentCore provisionnées et exploitées sur votre compte en votre nom, de sorte que vous disposez d'autorisations restreintes par rapport aux instances EC2 standard. Vous pouvez les identifier par le Operator champ de la DescribeInstances sortie EC2 et par la balise AgentCore capacity provider sur l'instance.

Vous n'effectuez pas directement les opérations standard du cycle de vie EC2 sur ces instances. Par exemple, vous ne les lancez pas, ne les corrigez pas et ne les résiliez pas vous-même. AgentCore gère leur cycle de vie ; pour les supprimer, supprimez le fournisseur de capacité associé, qui arrête et supprime ses sessions et leur stockage persistant. Les instances gérées sont masquées dans les vues de votre console EC2 et dans les opérations de liste d'API par défaut ; vous pouvez modifier cela à l'aide du paramètre de visibilité des ressources gérées. Ils restent pleinement opérationnels et facturables sur votre compte.

Comparez les types de calcul

Le tableau suivant compare les types de calcul MicroVMS et Instances pour vous aider à choisir celui qui convient le mieux à votre charge de travail.

Caractéristiques MicroVM instances

Idéal pour

API-driven Des agents légers qui démarrent rapidement, évoluent à la demande et exécutent leurs tâches en quelques heures

Long-running, charges de travail dynamiques ou collaboratives nécessitant des GPU ou des sessions multi-agents

Modèle de gestion

Entièrement AWS géré, sans serveur, évolutif à la demande

AWS gestion de l'EC2 sur votre compte ; AWS gère les correctifs et les mises à jour, avec des sessions persistantes

Durée maximale de session

Jusqu'à 8 heures

Jusqu'à 14 jours

Operating systems

Conteneurs Linux (arm64)

Linux (x86_64etarm64)

Mise en réseau

PUBLICou VPC

VPC

Modalité de l'agent

API, CLI

API, CLI

Agents par session

Un environnement d'exécution héberge un agent (1:1)

Une session peut héberger plusieurs agents (1:N)

Artefacts supportés

Image du conteneur et source Amazon S3

Image du conteneur et source Amazon S3

Accès au GPU

Non pris en charge

Choisissez un type d'instance GPU compatible ; les pilotes sont provisionnés pour vous

Tarification

Consumption-based, facturé par AgentCore

Les instances EC2 s'exécutent sur votre compte ; utilisez vos plans d'épargne et vos ODCR

Modèles et cadres

N’importe lequel

N’importe lequel

Utiliser des types d'instances GPU

Pour les charges de travail gourmandes en calcul telles que l'inférence de modèles, le rendu 3D et le traitement multimédia, incluez un type d'instance GPU dans les types d'instance autorisés de votre fournisseur de capacité. AgentCore provisionne les pilotes GPU sur l'instance, de sorte que vous ne configurez pas les chemins des périphériques, les index GPU ou les versions des pilotes, et les images de conteneurs standard (par exemple, les images CUDA) fonctionnent sans regrouper les pilotes. Les charges de travail informatiques (CUDA) et graphiques (telles que Vulkan, EGL et GLX) sont prises en charge. Lorsque plusieurs agents s'exécutent sur la même instance, tous les agents partagent l'accès à ses GPU.

Les familles d'instances de GPU et d'accélérateurs suivantes sont prises en charge :

  • Familles de GPU NVIDIA : g4dn g5g6,g6e,gr6,g6f,gr6f, etg7e.

  • AWS familles d'accélérateurs — inf2 (alimentées par AWS Inferentia2).

Si vous incluez un type d'instance d'accélérateur appartenant à une famille qui n'est pas prise en charge, CreateCapacityProvider échoue avec un nom ValidationException qui nomme le type d'instance et répertorie les familles prises en charge. Non-accelerator les types d'instances ne sont pas affectés.

Flux d'invocation

L'appel d'un environnement d'exécution d'agent soutenu par un fournisseur de capacité suit le même point InvokeAgentRuntime d'entrée que le modèle MicroVM. AgentCore résout le fournisseur de capacité, s'assure qu'une instance et un agent sont en cours d'exécution pour votre session et transmet la demande par proxy à l'agent :

  1. Vous appelez InvokeAgentRuntime avec l'ARN d'exécution et unruntimeSessionId.

  2. S'il n'existe aucune session pour cet ID de session, AgentCore provisionnez une instance EC2 depuis le fournisseur de capacité de l'environnement d'exécution sur votre compte et lancez l'agent sur celle-ci. La première invocation d'une session prend plus de temps car elle inclut le provisionnement des instances.

  3. Si une session existe déjà, AgentCore réutilise l'instance en cours d'exécution. L'appel d'un second environnement d'exécution qui partage le même fournisseur de capacité avec le même ID de session lance cet agent aux côtés du premier sur la même instance.

  4. AgentCore transmet la demande par proxy à l'agent et vous renvoie la réponse. Chaque agent s'exécute avec ses propres informations d'identification IAM dérivées du rôle d'exécution de son environnement d'exécution.

Étant donné que l'agent s'exécute sur une instance de votre compte, l'instance EC2, ses interfaces réseau et tous les volumes persistants sont visibles dans la console EC2 de votre compte et facturés sur votre compte. Il s'agit d'instances gérées par Amazon EC2, c'est-à-dire des instances qui AgentCore provisionnent et gèrent votre compte en votre nom. Vous pouvez contrôler leur apparition dans les affichages de votre console EC2 et dans les opérations de liste d'API à l'aide des paramètres de visibilité des ressources gérées.

Stockage persistant entre les sessions

Un fournisseur de capacité peut définir un ou plusieurs volumes Amazon EBS. Lorsque vous enregistrez le fournisseur de capacité, AgentCore enregistrez la configuration du volume et créez le volume EBS lors du premier lancement de la session. Lorsqu'un environnement d'exécution d'un agent monte un volume via sa configuration de stockage, les données du volume survivent aux arrêts de session :

  1. Lors de la première invocation d'une session, AgentCore crée le volume et l'attache à l'instance EC2.

  2. Lorsque AgentCore la session est arrêtée, elle met fin à l'instance EC2 mais conserve le volume.

  3. Lors de l'appel suivantruntimeSessionId, AgentCore provisionnez une nouvelle instance et rattachez le volume existant, afin que l'agent conserve ses données précédentes intactes.

Cela permet d'activer des flux de travail d'agent dynamiques dans lesquels les fichiers de l'espace de travail, les caches et les points de contrôle persistent lors des redémarrages de session. La suppression de la session déprovisionne les ressources EC2 (instance, interface réseau et volume EBS), de sorte que vous n'avez plus à encourir de coûts pour une infrastructure dont vous n'avez plus besoin.

Rôles IAM

L'hébergement d'agents sur des instances implique les rôles suivants, en plus du rôle d'exécution de l'agent qui accorde à votre code d'agent ses autorisations d'exécution :

  • Profil d'instance  : rôle IAM attaché à l'instance EC2. AgentCore l'utilise pour collecter les journaux système de l'instance ; il n'accorde pas d'autorisations au code de votre agent (c'est le rôle d'exécution de l'agent qui le fait).

  • Rôle d'infrastructure  : rôle IAM qui AgentCore suppose de provisionner et de gérer les instances EC2 de votre compte en votre nom (lancement, balisage et configuration de la mise en réseau pour les instances et leurs interfaces réseau).

Vous pouvez laisser la console créer des rôles par défaut pour vous ou fournir des rôles existants. Étant donné que le rôle d'infrastructure permet de gérer AgentCore le calcul dans votre compte, limitez-le au minimum requis par vos charges de travail et utilisez les conditions IAM pour le limiter à des VPC, des sous-réseaux ou des types d'instances spécifiques, le cas échéant.