Recommandations
Les recommandations utilisent l'IA pour générer des configurations d'agents optimisées à partir de traces de session réelles. Au lieu de réécrire manuellement les instructions ou les descriptions des outils, vous redirigez le service sur les traces de votre agent, vous spécifiez un évaluateur cible comme signal de récompense et vous recevez une configuration optimisée.
Note
Les recommandations sont générées par les LLM. Révisez-les et testez-les avant de les appliquer.
Amazon Bedrock AgentCore prend en charge deux types de recommandations :
-
Recommandation rapide du système : analyse les traces des agents et génère une invite système optimisée qui améliore les performances de l'évaluateur cible. Le service identifie les modèles de défaillance et ajoute des instructions comportementales spécifiques.
-
Recommandation concernant la description de l'outil : analyse les traces des agents et génère des descriptions d'outils plus précises afin de réduire la confusion lors de la sélection des outils. Cela est utile lorsque les agents sélectionnent le mauvais outil pour des demandes ambiguës.
Chaque recommandation nécessite deux entrées : la configuration actuelle de l'agent à optimiser et les traces de l'agent à analyser.
Rubriques
Modes de saisie de configuration
Vous pouvez fournir la configuration actuelle de deux manières :
-
Texte intégré : fournissez la configuration directement sous forme de chaîne dans la demande d'API. Pour les recommandations d'invite du système, transmettez le texte de l'invite dans le
systemPrompt.textchamp. Pour les recommandations relatives à la description des outils, transmettez le nom et la description de chaque outil dans latoolDescription.toolDescriptionText.toolsliste. Ce mode est utile pour une expérimentation rapide, lorsque vous souhaitez tester une invite sur laquelle vous êtes en train d'itérer activement ou lorsque votre configuration n'est pas stockée dans un bundle.Type de recommandation Drapeaux CLI Champ API Invite système
--inline "prompt text"ou--prompt-file ./path.txtsystemPrompt.textDescription de l'outil
--tools "name:description, name:description"toolDescription.toolDescriptionText.tools: liste d'objets avectoolNameettoolDescription -
Ensemble de configuration : faites référence à une version d'ensemble de configuration existante. Le service lit la configuration actuelle à partir du bundle en utilisant le chemin JSON que vous spécifiez, génère la version optimisée et réécrit le résultat dans une nouvelle version du bundle. Cela permet de conserver votre historique d'optimisation versionné en même temps que votre offre groupée. Ce mode est utile lorsque vous gérez les configurations de manière centralisée avec des ensembles de configuration et que vous souhaitez que la sortie optimisée soit automatiquement réécrite dans le bundle.
Type de recommandation Drapeaux CLI Champ API Invite système
--bundle-name <bundle-name>+--bundle-version <bundle-version>+--system-prompt-json-path <path>systemPrompt.configurationBundleavecbundleArnversionId,systemPromptJsonPathDescription de l'outil
--bundle-name <bundle-name>+--bundle-version <bundle-version>+--tool-desc-json-path "name:jsonpath"(répétez pour chaque outil)toolDescription.configurationBundleavecbundleArnversionId, et unetoolsliste contenanttoolNameettoolDescriptionJsonPathLorsque vous utilisez un bundle de configuration, le résultat de la recommandation inclut un
configurationBundlechamp avec lebundleArnet un nouveauversionIdpointant vers la version du bundle contenant la configuration optimisée.
Sources de traçage des agents
Le agentTraces paramètre accepte l'une des deux sources suivantes :
-
CloudWatch Journaux : à utiliser lorsque l'environnement d'exécution de votre agent écrit des données de télémétrie dans. CloudWatch Le service lit les traces directement à partir des groupes de journaux spécifiés dans un intervalle de temps requis. Vous devez fournir
logGroupArnsserviceNames,startTime, etendTime. Unrulechamp facultatif vous permet de filtrer les traces (par exemple, en sélectionnant uniquement les sessions dont le chiffregoal_success_rateest inférieur à un seuil).Note
L'API de recommandations utilise des ARN de groupes de journaux (
logGroupArns), et non des noms de groupes de journaux. Cela diffère des évaluations par lots, qui utilisentlogGroupNames.Champ Type Obligatoire Description cloudwatchLogs.logGroupArnsListe de chaînes
Oui
CloudWatch Les journaux enregistrent les ARN des groupes dans lesquels la télémétrie de l'agent est stockée. Format :
arn:aws:logs:{region}:{account}:log-group:{log-group-name}.cloudwatchLogs.serviceNamesListe de chaînes
Oui
Noms de service qui identifient les traces de votre agent dans CloudWatch. Convention :
{RuntimeName}.DEFAULT.cloudwatchLogs.startTimeDate/heure ISO 8601
Oui
Début de la fenêtre de collecte de traces. Seules les traces passées ce délai sont incluses.
cloudwatchLogs.endTimeDate/heure ISO 8601
Oui
Fin de la fenêtre de collecte de traces. Seules les traces antérieures à cette heure sont incluses.
cloudwatchLogs.ruleObjet
Non
Règle de filtre facultative pour affiner la sélection des traces. Contient une
filtersliste dans laquelle chaque filtre spécifie unkey,operator(tel queLESS_THAN), etvalue(tel que{"doubleValue": 0.5}).Exemple
-
Durée des sessions en ligne : à utiliser lorsque des traces sont disponibles localement (par exemple, à partir d'un test local, d'un CI/CD pipeline ou d'une session spécifique pour laquelle vous souhaitez optimiser). Vous fournissez les intervalles directement dans le corps de la demande d'API sous forme de liste d'objets OpenTelemetry-compatible span.
Champ Type Obligatoire Description sessionSpansListe d’objets
Oui
La trace de l'agent s'étend au OpenTelemetry-compatible format. Chaque intervalle inclut l'ID de trace, l'ID de l'intervalle, le nom, les horodatages et les attributs.
Exemple
Note
agentcore run recommendationest asynchrone. Sans--wait, la commande soumet la tâche de recommandation et revient immédiatement ; la tâche démarre dans un état non terminal (tel que PENDING ouIN_PROGRESS), et vous récupérez le résultat ultérieurement. Passez --wait au bloc jusqu'à ce que la recommandation atteigne un état terminal. Pour rechercher ou récupérer le résultat d'une tâche soumise, exécutezagentcore view recommendation <id>, où se id trouve l'ID de la tâche de recommandation.
La AgentCore CLI fournit des indicateurs pratiques qui correspondent aux types de sources de suivi de l'API sous-jacents :
| Drapeau CLI | Mappage d’API | Description |
|---|---|---|
|
|
|
Collecte les traces des N derniers jours via CloudWatch les journaux. La CLI résout les ARN des groupes de journaux et les noms de service à partir de la configuration d'exécution. |
|
|
|
Collecte les intervalles pour la session spécifiée côté client et les transmet sous forme d'intervalles de session en ligne. L'API de recommandation elle-même ne prend pas en charge le filtrage des identifiants de session sur les CloudWatch sources. |
|
|
|
Lit les spans à partir d'un fichier JSON local et les transmet sous forme d'intervalles de session en ligne. |
|
|
n/a (sondage côté client) |
Bloquez jusqu'à ce que la recommandation atteigne un état terminal. |