

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.

# Configuration d’un agent en ligne au moment de l’exécution
<a name="agents-create-inline"></a>

Vous pouvez configurer et appeler un agent Amazon Bedrock en ligne de manière dynamique lors de l'exécution à l'aide [InvokeInlineAgent](https://docs.aws.amazon.com//bedrock/latest/APIReference/API_agent-runtime_InvokeInlineAgent.html)de l'API. L’utilisation d’un agent en ligne vous permet de spécifier les fonctionnalités de votre agent, telles que les modèles de fondation, les instructions, les groupes d’action, les barrières de protection et les bases de connaissances, au moment même où vous invoquez votre agent. Il n’est pas nécessaire de prédéfinir les fonctionnalités de l’agent avant de pouvoir l’utiliser. 

Voici certains des cas d’utilisation où l’utilisation d’agents en ligne peut vous aider en offrant la flexibilité de configurer l’agent au moment de l’invocation :
+ Procéder à des expérimentations rapides en testant différentes fonctionnalités d’agent avec différentes configurations et en mettant à jour de manière dynamique les outils mis à la disposition de votre agent sans créer d’agents distincts
+ Invoquer dynamiquement un agent pour effectuer des tâches spécifiques sans créer de nouvelles versions de l’agent ni le préparer 
+ Exécuter des requêtes simples ou utiliser un interpréteur de code pour des tâches simples en créant et en invoquant l’agent au moment de l’exécution
+ Créer plusieurs agents dans une configuration de [collaboration multi-agent](agents-multi-agent-collaboration.md) pour qu’ils travaillent ensemble sur une tâche ou une conversation

  Pour utiliser la collaboration multi-agents, vous pouvez créer vos agents dans les combinaisons suivantes à l'aide d'agents en ligne. APIs  
**Types d’agents**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/bedrock/latest/userguide/agents-create-inline.html)

**Modèles et régions pris en charge**

Vous pouvez utiliser n’importe quel modèle de fondation pris en charge par les agents Amazon Bedrock pour configurer votre agent en ligne, et vous pouvez invoquer ce dernier dans toutes les régions où les agents Amazon Bedrock sont pris en charge. Pour plus d’informations sur les régions et les modèles pris en charge par les agents Amazon Bedrock, consultez les rubriques suivantes :
+ [Régions prises en charge par les agents Amazon Bedrock](https://docs.aws.amazon.com//bedrock/latest/userguide/agents-supported.html)
+ [Prise en charge des modèles par fonctionnalité](https://docs.aws.amazon.com//bedrock/latest/userguide/models-features.html)

Avec les agents en ligne, vous pouvez passer d’un modèle à l’autre. Nous vous recommandons de passer d’un modèle à l’autre au sein de la même famille. Le passage à un modèle appartenant à une famille différente peut entraîner des comportements incohérents et entraîner des échecs. 

La configuration et l’invocation d’un agent en ligne ne sont actuellement pas prises en charge dans la console Amazon Bedrock.

## Directives relatives à l’utilisation de modèles d’invite avancés pour les agents en ligne
<a name="advanced-prompts-inline-guidelines"></a>
+ **Modèles d’invite de base** : Amazon Bedrock utilise le modèle d’invite de base par défaut pour votre agent en ligne et les invites peuvent être modifiées en arrière-plan à tout moment. Cela peut entraîner des réponses incohérentes. Si vous souhaitez obtenir des réponses cohérentes à vos requêtes, personnalisez le comportement de votre agent en ligne en remplaçant la logique du modèle d’invite de base par défaut par vos propres configurations. Pour plus d’informations sur les invites avancées, consultez [Modèles d’invites avancés](https://docs.aws.amazon.com//bedrock/latest/userguide/advanced-prompts-templates.html).
+ **Chiffrement** : utilisez `customer managed key ` pour chiffrer les détails de la session au repos/en stockage. Si une session est démarrée avec une clé gérée par le client, elle sera requise pour toutes les futures demandes effectuées pour la même session. L’utilisation d’une autre clé gérée par le client pour les mêmes sessions entraînera une exception. 
+ **Partage de session** : à l’avenir, toutes les sessions se dérouleront au niveau du compte plutôt qu’au niveau du rôle. Vous pouvez isoler les sessions au niveau de l’agent en spécifiant une valeur unique pour `agentName`.
+ **État des sessions en ligne** : les attributs dans `InlineSessionState` sont conservés tout au long de la session. Utilisez les attributs pour fournir un contexte supplémentaire à votre modèle et pour vous demander des [invites avec peu d’exemples](https://docs.aws.amazon.com//bedrock/latest/userguide/what-is-a-prompt.html#few-shot-prompting-vs-zero-shot-prompting).

# Conditions préalables
<a name="inline-agent-prereq"></a>

**Note**  
La configuration et l’invocation d’une fonctionnalité d’agent en ligne sont disponibles en version préliminaire pour Amazon Bedrock et peuvent encore évoluer.

Avant d’invoquer votre agent en ligne, remplissez les conditions préalables suivantes :

1. Choisissez le modèle de fondation que vous souhaitez utiliser pour configurer votre agent en ligne, la région dans laquelle vous souhaitez invoquer l’agent et une instruction indiquant à l’agent en ligne ce qu’il doit faire. 

1. Créez ou préparez une ou plusieurs des propriétés d’agent Amazon Bedrock suivantes que vous souhaitez utiliser pour votre agent en ligne.   
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/bedrock/latest/userguide/inline-agent-prereq.html)

1. Créez un rôle AWS Identity and Access Management (IAM) et associez la politique mentionnée dans cette étape au rôle. 

   Avant de pouvoir invoquer un agent en ligne, vous devez créer un rôle IAM qui fournit les autorisations nécessaires pour utiliser l’API `InvokeInlineAgent` et accéder à des ressources telles que les fonctions Lambda, les bases de connaissances et les modèles de fondation. 

   Créez un rôle de service personnalisé pour votre agent en ligne en suivant les étapes sous [Création d’un rôle pour déléguer des autorisations à un utilisateur IAM](https://docs.aws.amazon.com//bedrock/latest/userguide/getting-started.html). Après avoir créé le rôle IAM, attachez la stratégie suivante au rôle.
**Note**  
Pour des raisons de sécurité, remplacez le, et *\$1.ids* par Region *\$1\$1region\$1**\$1\$1account-id\$1*, votre identifiant de compte et les identifiants de ressource spécifiques une fois que vous les avez créés.

# Invocation d’un agent en ligne
<a name="inline-agent-invoke"></a>

**Note**  
La configuration et l’invocation d’une fonctionnalité d’agent en ligne sont disponibles en version préliminaire pour Amazon Bedrock et peuvent encore évoluer.

Avant d’invoquer votre agent en ligne, assurez-vous d’avoir rempli les [conditions préalables](https://docs.aws.amazon.com//bedrock/latest/userguide/inline-agent-prereq.html).

Pour appeler un agent en ligne, envoyez une demande d'[InvokeInlineAgent](https://docs.aws.amazon.com//bedrock/latest/APIReference/API_agent-runtime_InvokeInlineAgent.html)API avec un point de [terminaison Agents for Amazon Bedrock et](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-rt) incluez au minimum les champs suivants.


****  

| Champ | Cas d’utilisation | 
| --- | --- | 
| instruction | Fournissez des instructions indiquant à l’agent en ligne ce qu’il doit faire et comment il doit interagir avec les utilisateurs. | 
| foundationModel | Spécifiez un [modèle de fondation](https://docs.aws.amazon.com//bedrock/latest/userguide/foundation-models-reference.html) à utiliser pour l’orchestration par l’agent en ligne que vous créez. Par exemple, anthropic claude, meta Llama3.1, etc. | 
| sessionId | Identifiant unique de la session. Utilisez la même valeur pour toutes les demandes afin de poursuivre la même conversation. | 

Les champs suivants sont facultatifs :


****  

| Champ | Cas d’utilisation | 
| --- | --- | 
| actionGroups | Liste des groupes d’actions, chaque groupe d’actions définissant les actions que l’agent en ligne peut effectuer.  | 
| knowledgeBases | Associations de bases de connaissances avec un agent en ligne pour améliorer la réponse générée par le modèle.  | 
| guardrailConfiguration | Configurations de barrières de protection pour bloquer des sujets, prévenir les hallucinations et mettre en place des mesures de sécurité pour votre application.  | 
| agentCollaboration | Définit la manière dont l’agent collaborateur traite les informations entre plusieurs agents collaborateurs afin de coordonner une réponse finale. L’agent collaborateur peut également être le superviseur. | 
| collaboratorConfigurations | Configurations pour l’agent collaborateur.  | 
| collaborators | Liste des agents collaborateurs. | 
| promptOverrideConfiguration | Configurations pour les invites avancées utilisées pour remplacer les invites par défaut. | 
| enableTrace | Spécifiez s’il faut activer ou non la trace afin de suivre le processus de raisonnement de l’agent en ligne. | 
| Secondes de session inactives TTLIn | Spécifiez la durée après laquelle l’agent en ligne doit mettre fin à la session et supprimer toutes les informations stockées. | 
| customerEncryptionKeyArn | Spécifiez l’ARN d’une clé KMS pour chiffrer les ressources de l’agent, | 
| endSession | Spécifiez s’il faut mettre fin à la session avec l’agent en ligne ou non. | 
| inlineSessionState | Paramètres qui spécifient les différents attributs d’une session. | 
| inputText | Spécifiez le texte d’invite à envoyer à l’agent. | 
| reasoning\$1config | Pour activer le raisonnement du modèle afin que celui-ci explique comment il est parvenu à ses conclusions. À utiliser à l’intérieur d’un champ additionalModelRequestFields. Vous devez spécifier le nombre de budget\$1tokens utilisés pour le raisonnement du modèle, qui constituent un sous-ensemble des jetons de sortie. Pour plus d’informations, consultez [Améliorer les réponses du modèle grâce au raisonnement du modèle](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-reasoning.html). | 

L’exemple d’API `InvokeInlineAgent` suivant fournit des configurations d’agent en ligne complètes, notamment le modèle de fondation, les instructions, les groupes d’actions avec interpréteur de code, les barrières de protection et les bases de connaissances. 

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

Vous pouvez inclure les paramètres de raisonnement du modèle dans la demande. Voici un exemple d’invite unique activant le raisonnement du modèle dans `additionalModelRequestFields`.

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