Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Important
Agent Optimizer est actuellement en version préliminaire. Cette version préliminaire est fournie sans contrat de niveau de service, et nous la déconseillons pour les charges de travail en production. Certaines fonctionnalités peuvent ne pas être prises en charge ou avoir des fonctionnalités contraintes. Pour plus d’informations, consultez Conditions d'utilisation supplémentaires pour les versions préliminaires de Microsoft Azure.
L’optimiseur d’agent dans Service de l’agent Foundry améliore automatiquement les agents de prompts et les agents hébergés en évaluant leur comportement et en générant de meilleures configurations. Selon le type d’agent, ces configurations peuvent inclure des instructions améliorées, des compétences, des descriptions d’outils et une sélection de modèles.
La création d’agents IA efficaces nécessite une ingénierie rapide étendue. Vous déployez un agent avec des instructions manuelles, le testez sur des scénarios réels, identifiez les faiblesses, révisez la requête et répétez. Cette boucle est lente, subjective et n’est pas mise à l’échelle. L’optimiseur d’agent automatise ce cycle pour vous permettre de vous concentrer sur la logique principale de votre agent.
Types d’agents pris en charge
L’optimiseur utilise la même boucle d’amélioration pilotée par l’évaluation pour les deux types d’agent, mais l’installation, les cibles d’optimisation et l’expérience de déploiement diffèrent.
| Type d’agent | Ce que l’optimiseur peut améliorer | Comment démarrer une exécution |
|---|---|---|
| Agent de commande | Instructions, descriptions des outils d’appel de fonction et sélection de modèle | Utilisez l’Assistant Optimisation dans le portail Foundry. Aucune modification du code n’est requise. |
| Agent hébergé | Instructions, compétences, descriptions des outils d’appel de fonction et sélection de modèle | Utilisez Foundry Toolkit, qui configure automatiquement la prise en charge de l’optimisation, ou préparez l’agent pour l’optimisation et utilisez Azure Developer CLI. |
Agents déclencheurs
Pour un agent de prompt, l’optimiseur évalue une version sélectionnée de l’agent et génère des instructions alternatives. Il peut également améliorer les descriptions des outils d’appel de fonctions et comparer le prompt entre plusieurs déploiements candidats de modèles.
Les outils d’appel de fonctions des agents de prompts s’exécutent côté client. L’optimiseur peut améliorer l’outil et les descriptions de paramètres qui guident les appels de fonction du modèle, mais il ne peut pas évaluer l’exécution de l’outil pendant l’optimisation de la description de l’outil.
Démarrez l’assistant d’optimisation depuis l’onglet Optimize de l’agent dans le portail Foundry. L’assistant vous guide dans la sélection de la version de l’agent, du jeu de données, des critères d’évaluation et des modèles d’optimisation avant de lancer l’exécution. Vous pouvez générer un jeu de données à partir de traces d’agent, sélectionner un jeu de données Foundry existant ou charger un jeu de données dans l’assistant.
Une fois l’exécution terminée, comparez les variations de score, passez en revue le prompt avant et après modification, puis examinez les résultats par évaluateur. Vous pouvez ensuite promouvoir un candidat sélectionné en une nouvelle version de l’agent de prompt issue de l’exécution d’optimisation.
Pour découvrir l’expérience complète du portail, consultez Démarrage rapide : optimiser un agent de prompt.
Agents hébergés
Pour un agent hébergé, l’optimiseur améliore la configuration que votre code charge au moment de l’exécution. L’agent a besoin du package d’optimisation et d’une configuration de base qui expose les instructions et, éventuellement, des compétences et des définitions d’outils d’appel de fonction. Foundry Toolkit peut générer automatiquement la structure de base de cette intégration. Pour le flux de travail CLI Azure développeur, ajoutez l’intégration avant d’exécuter l’optimiseur. L’optimiseur peut ensuite générer et évaluer des configurations candidates sans modifier la logique principale de votre agent.
L’optimisation de l’agent hébergé prend en charge les jeux de données JSONL locaux et les jeux de données inscrits dans votre projet Foundry, y compris les jeux de données d’évaluation générés à partir de traces. Après une exécution, appliquez le candidat sélectionné à votre configuration locale, passez en revue les modifications et redéployez l’agent.
Pour obtenir l’expérience de l’agent hébergé de bout en bout, consultez Démarrage rapide : Optimiser un agent hébergé.
Flux de travail d’optimisation
Les deux types d’agents suivent les mêmes grandes étapes :
- Sélectionnez la base de référence de l’agent. Choisissez la version de l’agent basé sur des prompts ou la configuration de l’agent hébergé avec laquelle vous comparez les candidats.
- Sélectionnez un jeu de données d’évaluation. Utilisez des tâches représentatives à partir d’un jeu de données existant ou chargé. Vous pouvez également utiliser un jeu de données enregistré généré à partir des traces d’un agent.
- Sélectionnez les critères d’évaluation. Choisissez des évaluateurs intégrés ou personnalisés qui mesurent les comportements que vous souhaitez améliorer.
- Exécutez l’optimiseur. Choisissez les cibles et les modèles d’optimisation disponibles, puis générez et évaluez les candidats. Pour les agents de prompt, consultez l’estimation des coûts dans le portail avant de lancer l’exécution.
- Passez en revue les résultats. Comparez les scores des candidats à votre base de référence, puis choisissez le meilleur candidat. Lorsque cette option est disponible, passez en revue l’utilisation des jetons mesurés après l’exécution. Consultez Comprendre les résultats de l’optimisation.
- Appliquez le candidat sélectionné. Promouvoir une version candidate de prompt-agent vers une nouvelle version de l’agent, ou appliquer la configuration de l’agent hébergé et redéployer.
Les agents hébergés nécessitent une intégration de code prête pour l’optimiseur. Foundry Toolkit génère automatiquement cette intégration lorsque vous démarrez une optimisation. Pour le workflow Azure Developer CLI, ajoutez le package d’optimisation et une configuration de référence avant de commencer. Veuillez consulter la section Préparer votre agent pour l'optimiseur. Les agents de prompt ne nécessitent pas cette intégration de code.
Comment fonctionne l’optimiseur d’agent
L’optimiseur d’agent exécute un cycle d’évaluation et d’amélioration de boucle fermée :
- Évaluez la ligne de base. L’optimiseur appelle votre agent sur un jeu de données de tâches et note chaque réponse par rapport aux critères que vous définissez ou un ensemble par défaut intégré. La ligne de base est le score de votre agent avant toute modification.
- Générez des candidats. L’optimiseur produit des configurations alternatives appelées candidates, telles que des instructions réécrites, des compétences découvertes, des descriptions d’outils améliorées ou différentes sélections de modèles. Les types candidats disponibles dépendent du type d’agent.
- Évaluer les candidats. L’optimiseur teste chaque candidat sur le même jeu de données.
- Classement et recommandation. L’optimiseur classe les résultats par score composite, une valeur comprise entre 0,0 et 1,0 qui représente les performances agrégées et marque le meilleur candidat avec ★ . Vous appliquez ensuite la version gagnante et la déployez.
L’ensemble du processus s’exécute dans le cloud. Le temps d’exécution dépend de la taille du jeu de données, du nombre de candidats et des modèles sélectionnés.
Pour les agents hébergés, après avoir préparé votre optimiseur d’agent, aucune autre modification du code n’est nécessaire entre les exécutions.
load_config() retourne normalement votre base de référence et fournit une configuration optimisée pendant une exécution sans indicateurs de fonctionnalité ni logique conditionnelle.
Warning
Pendant l’optimisation, l’optimiseur évalue votre agent en l’appelant sur chaque tâche de votre jeu de données. Si votre agent appelle des outils externes, tels que des API, des bases de données ou des services tiers, ces appels s’exécutent pendant chaque exécution d’évaluation. Pour éviter les effets secondaires inattendus (frais, mutations d’état ou limitation de débit), envisagez d’utiliser des points de terminaison de test ou des implémentations d’outils fictifs pendant l’optimisation.
Cibles d’optimisation
Une cible d’optimisation est un aspect spécifique de la configuration de votre agent que l’optimiseur peut améliorer. Les cibles disponibles dépendent du type d’agent. Pour les agents hébergés, l’optimiseur active automatiquement les cibles applicables à partir de la configuration de référence et des paramètres eval.yaml.
| Cible | Ce que l’optimiseur améliore | Agent de prompt | Agent hébergé |
|---|---|---|---|
| Réglage des instructions | Réécrit et affine l'invite système afin d'obtenir un meilleur score. | Utilise la version sélectionnée de prompt-agent comme référence. | S’active lorsque la base de référence a un instructions.md fichier. |
| Amélioration des compétences | Affine le contenu de chaque compétence réutilisable tout en conservant son objectif. | Non prise en charge. | S’active lorsque la base de référence contient un répertoire skills/ avec des fichiers SKILL.md. |
| Optimisation des outils | Améliore l’outil d’appel de fonction et les descriptions de paramètres afin que le modèle appelle plus précisément les outils. Il ne modifie pas les types, les valeurs par défaut ou les champs obligatoires. | Disponible pour les outils d’appel de fonctions. Étant donné que le client exécute ces outils, l’exécution des outils n’est pas évaluée lors de l’optimisation. | S’active lorsque la base de référence a un tools.json fichier. Seuls les outils d’appel de fonction sont pris en charge. |
| Sélection du modèle | Évalue l’agent sur plusieurs déploiements de modèles pour trouver le meilleur compromis qualité-coût. | Sélectionnez les modèles candidats dans l’Assistant Optimisation. | Ajoutez des déploiements candidats à model_search_space dans eval.yaml. |
Pour les paramètres d’entrée de référence de l’agent hébergé, consultez Préparer votre agent pour l’optimiseur. Pour exécuter et configurer des cibles d’agent hébergé, consultez Optimiser les instructions de l’agent, les compétences, les outils et les modèles.
Models
L’optimiseur d’agent utilise deux modèles lors d’une exécution d’optimisation. Les deux doivent être déployés dans votre projet Foundry.
| Modèle | Clé de configuration de l’agent hébergé | Indicateur CLI de l’agent hébergé | Rôle | Modèles pris en charge |
|---|---|---|---|---|
| Modèle Eval | eval_model |
--eval-model |
Scores des réponses de l’agent par rapport aux critères dans le jeu de données | Tout modèle de complétion de chat (par exemple, gpt-4.1-mini) |
| Modèle d’optimisation | optimization_model |
--optimize-model |
Génère des configurations candidates (instructions, compétences, outils, sélection de modèle) |
gpt-5, gpt-5.1, gpt-5.2, gpt-5.4, gpt-5.5, DeepSeek-V4-Pro, DeepSeek-V-3.2 |
Le modèle d’évaluation s’exécute une fois pour chaque évaluateur, tâche et évaluation candidate. Il lit la réponse de l’agent et chaque critère, puis retourne un score binaire. Le modèle d’optimisation analyse les résultats de référence et génère des candidats améliorés sur les cibles configurées, notamment les instructions, les compétences, les outils et les modèles. Parce qu’il prend en compte l’ensemble du jeu de données, un modèle d’optimisation plus performant produit généralement de meilleurs candidats.
Pour les agents de prompt, sélectionnez le modèle d’évaluation et les modèles candidats dans l’assistant d’optimisation. Pour les agents hébergés, spécifiez les modèles dans eval.yaml ou avec des indicateurs CLI. Le optimization_model paramètre est requis pour les exécutions de l’agent hébergé. Pour connaître les étapes de configuration, consultez Choisir les modèles d’optimisation et d’évaluation.
Comprendre les résultats de l’optimisation
Cette section explique le tableau des résultats, la façon dont le score composite est calculé et comment interpréter les améliorations.
Conseil / Astuce
Afficher les résultats de l’optimisation dans le portail Foundry. Accédez à votre projet, sélectionnez Agents, choisissez votre agent, puis sélectionnez l’onglet Optimiser pour afficher les comparaisons de score, les invites ou les modifications de configuration et les détails de l’évaluateur.
Pour les agents de prompt, une exécution terminée affiche les scores de référence et du candidat, une comparaison du prompt avant/après, ainsi qu’une comparaison des descriptions du modèle et des outils, et les scores pour chaque évaluateur.
Pour les agents hébergés, l’interface CLI affiche également un tableau de résultats :
Results:
Candidate Score Eval Strategy
──────────────────── ─────── ──── ────────
baseline 0.93 View
candidate_1 0.90 View skill_policy-reviewer
candidate_2 ★ 0.94 View skill_policy-reviewer, tools
candidate_3 0.94 View skill_policy-reviewer, system_prompt, tools
candidate_4 0.93 View skill_policy-reviewer, tools
Candidate IDs:
baseline cand_a8a951...
candidate_1 cand_8d5c85...
★ candidate_2 cand_a0ea2e...
candidate_3 cand_2ae7bb...
candidate_4 cand_0f6485...
Apply the best candidate locally, then deploy:
azd ai agent optimize apply --candidate cand_a0ea2e...
azd deploy
Colonnes de la table des résultats
| Column | Description |
|---|---|
| Candidat | Nom de la configuration.
baseline est votre agent actuel avant l’optimisation. |
| Score | Score composite sur toutes les tâches et critères, compris entre 0,0 et 1,0. |
| Eval | Lien vers le travail d’évaluation dans le portail Foundry. |
| Strategy | Cibles de mutation incluses dans le candidat, telles que skill_policy-reviewer, tools. |
Marque ★ le candidat avec le score composite le plus élevé. Il s’agit du candidat recommandé pour le déploiement.
Calcul des scores
Chaque évaluateur de votre jeu de données produit un score brut pour la réponse de l’agent. L’optimiseur traite ces scores pour produire le score composite affiché dans les résultats :
- Rescale : le score brut de chaque évaluateur est recalé jusqu’à 0 à 1.
- Inverser si nécessaire : si un évaluateur est configuré de sorte que plus bas est préférable, le score est inversé afin que tous les évaluateurs utilisent la logique « plus élevé est préférable ».
- Moyenne : la moyenne des scores mis à l’échelle sur l’ensemble des évaluateurs et des tâches est calculée pour produire le score composite.
Score composite : la moyenne de tous les scores des évaluateurs mis à l’échelle sur l’ensemble des tâches.
Interpréter les améliorations du score
| Amélioration | Interprétation |
|---|---|
| Inférieur à 0,03 | Bruit. Pas une amélioration significative. |
| 0.03 à 0.10 | Amélioration modérée. Il vaut la peine de déployer. |
| 0.10 à 0.20 | Amélioration significative. |
| Supérieur à 0,20 | Amélioration majeure. Probablement à partir d’une base de référence médiocre. |
Compromis liés aux jetons
Les instructions optimisées sont souvent plus longues et plus détaillées, ce qui peut augmenter l’utilisation des jetons de réponse. Tenez compte de ces facteurs :
- Indique si l’augmentation du jeton est proportionnelle à l’amélioration du score
- Indique si l’augmentation du coût correspond à votre budget
- Le fait que les réponses soient inutilement verbeuses ou qu’elles apportent une valeur ajoutée grâce à leur longueur supplémentaire
Pour plus d’informations sur la fourchette de coûts avant l’exécution et l’utilisation mesurée après l’exécution, consultez Estimations des coûts de l’optimiseur d’agent et utilisation des jetons.
Limitations et disponibilité
- L’optimiseur d’agents prend en charge les agents de prompt et les agents hébergés en préversion.
- Les exécutions d’optimisation des agents de prompts démarrent dans le portail Foundry. Vous pouvez promouvoir un candidat sélectionné vers une nouvelle version de l’agent à partir de l’exécution terminée.
- L’optimisation de l’agent hébergé est disponible dans toutes les régions où les agents hébergés sont disponibles, à l’exception de la Norvège Est.
- L’optimisation de l’agent hébergé nécessite le protocole Réponses.
Contenu connexe
- Premier pas : Créer un agent conversationnel
- Démarrage rapide : Optimiser un agent de prompt
- Démarrage rapide : Optimiser un agent hébergé
- Estimations des coûts de l’optimiseur d’agent et utilisation des jetons
- Préparer votre agent pour l’optimisation
- Créer un jeu de données d’évaluation et des évaluateurs
- Optimiser les instructions de l’agent, les compétences, les outils et les modèles
- Convertir des traces d’agent en jeux de données d’évaluation
- Exécuter des évaluations d’agent avec l’interface CLI azd