microsoft-foundry

Déployer, évaluer et gérer les agents Foundry de bout en bout : Docker build, ACR push, création d'agent hébergé/prompt, démarrage du conteneur, évaluation par lot, optimisation des prompts, workflows d'optimisation des prompts, agent.yaml, curation de dataset à partir des traces. À UTILISER POUR : déployer un agent vers Foundry, agent hébergé, créer un agent, invoquer un agent, évaluer un agent, exécuter une évaluation par lot, optimiser les prompts, améliorer les prompts, optimisation des prompts, optimiseur de prompts, améliorer les instructions de l'agent, optimiser les instructions de l'agent, optimiser le system prompt, déployer un modèle, projet Foundry, RBAC, attribution de rôle, permissions, quota, capacité, région, dépanner l'agent, échec du déploiement, créer un dataset à partir des traces, versioning de dataset, tendance d'évaluation, créer des AI Services, Cognitive Services, créer une ressource Foundry, provisionner une ressource, index de connaissances, monitoring de l'agent, personnaliser le déploiement, intégration, disponibilité. À NE PAS UTILISER POUR : Azure Functions, App Service, déploiement Azure général (utiliser azure-deploy), préparation Azure général (utiliser azure-prepare).

npx skills add https://github.com/microsoft/skills --skill microsoft-foundry

Compétence Microsoft Foundry

Cette compétence aide les développeurs à travailler avec les ressources Microsoft Foundry, couvrant la découverte et le déploiement de modèles, le cycle de développement complet de l'agent IA, les workflows d'évaluation et la résolution des problèmes.

Conditions Préalables à l'Exécution

OBLIGATOIRE : Avant d'exécuter UN QUELCONQUE workflow, vous DEVEZ d'abord appeler l'outil Azure MCP foundry et inspecter les outils Foundry MCP disponibles et les paramètres connexes. Traitez cet appel foundry initial comme une étape de découverte/aide. Pour cette compétence, Azure MCP foundry est le point d'entrée requis pour les opérations MCP liées à Foundry.

Sous-Compétences

OBLIGATOIRE : Avant d'exécuter UN QUELCONQUE workflow-spécifique, vous DEVEZ lire le document de sous-compétence correspondant. N'appelez pas les outils MCP spécifiques aux workflows sans lire son document de compétence. Cela s'applique même si vous connaissez déjà les paramètres des outils MCP — le document de compétence contient les étapes de workflow requises, les pré-vérifications et la logique de validation qui doivent être suivies. Cette règle s'applique à chaque nouveau message utilisateur qui déclenche un workflow différent, même si la compétence est déjà chargée.

Cette compétence inclut des sous-compétences spécialisées pour des workflows spécifiques. Utilisez-les à la place de la compétence principale quand ils correspondent à votre tâche :

Sous-Compétence Quand l'Utiliser Référence
deploy Conteneuriser, construire, envoyer vers ACR, créer/mettre à jour/cloner les déploiements d'agent deploy
invoke Envoyer des messages à un agent, conversations mono ou multi-tours invoke
observe Évaluer la qualité de l'agent, exécuter des evals par lot, analyser les échecs, optimiser les prompts, améliorer les instructions de l'agent, comparer les versions et configurer la surveillance CI/CD observe
trace Interroger les traces, analyser la latence/les défaillances, corréler les résultats d'eval aux réponses spécifiques via App Insights customEvents trace
troubleshoot Afficher les journaux des agents hébergés, interroger la télémétrie, diagnostiquer les défaillances troubleshoot
create Créer de nouvelles applications d'agent hébergé. Supporte Microsoft Agent Framework, LangGraph ou des frameworks personnalisés en Python ou C#, sur les protocoles responses ou invocations. create
eval-datasets Récolter les traces de production dans des ensembles de données d'évaluation, gérer les versions et divisions des ensembles de données, suivre les métriques d'évaluation dans le temps, détecter les régressions et maintenir la traçabilité complète de la trace au déploiement. À utiliser pour : créer un ensemble de données à partir de traces, versionnage des ensembles de données, tendances d'évaluation, détection de régressions, comparaison des ensembles de données, traçabilité eval. eval-datasets
project/create Créer un nouveau projet Azure AI Foundry pour héberger des agents et des modèles. À utiliser lors de l'intégration à Foundry ou de la configuration de nouvelles infrastructures. project/create/create-foundry-project.md
resource/create Créer une ressource multi-service Azure AI Services (ressource Foundry) à l'aide d'Azure CLI. À utiliser pour un provisionnement manuel de ressources AI Services avec contrôle granulaire. resource/create/create-foundry-resource.md
models/deploy-model Déploiement de modèle unifié avec routage intelligent. Gère les déploiements rapides de présélection, les déploiements entièrement personnalisés (version/SKU/capacité/RAI) et la découverte de capacité entre les régions. Route vers les sous-compétences : preset (déploiement rapide), customize (contrôle total), capacity (trouver la disponibilité). models/deploy-model/SKILL.md
quota Gestion des quotas et de la capacité pour les ressources Microsoft Foundry. À utiliser lors de la vérification de l'utilisation des quotas, de la résolution des défaillances de déploiement dues à une capacité insuffisante, de la demande d'augmentation des quotas ou de la planification de la capacité. quota/quota.md
rbac Gestion des permissions RBAC, attributions de rôles, identités gérées et principaux de service pour les ressources Microsoft Foundry. À utiliser pour le contrôle d'accès, l'audit des permissions et la configuration CI/CD. rbac/rbac.md

? Conseil : Pour un flux d'intégration complet : project/create → workflows d'agent (deployinvoke).

? Déploiement de Modèle : Utilisez models/deploy-model pour tous les scénarios de déploiement — il route intelligemment entre le déploiement rapide de présélection, le déploiement personnalisé avec contrôle total et la découverte de capacité entre les régions.

? Optimisation des Prompts : Pour les demandes comme « optimisez mon prompt » ou « améliorez mes instructions d'agent », chargez observe et utilisez l'outil MCP prompt_optimize via ce workflow piloté par eval.

Cycle de Vie du Développement de l'Agent

Associez l'intention de l'utilisateur au workflow correct. Lisez chaque sous-compétence dans l'ordre avant d'exécuter.

Intention Utilisateur Workflow (lire dans l'ordre)
Créer un nouvel agent à partir de zéro createdeployinvoke
Déployer un agent (code déjà existant) deploy → invoke
Mettre à jour/redéployer un agent après des modifications de code deploy → invoke
Invoquer/tester/discuter avec un agent invoke
Optimiser / améliorer le prompt de l'agent ou les instructions observe (Étape 4 : Optimiser)
Évaluer et optimiser l'agent (boucle complète) observe
Résoudre un problème d'agent invoke → troubleshoot
Corriger un agent cassé (troubleshoot + redéploiement) invoke → troubleshoot → appliquer les corrections → deploy → invoke

Agent : Norme de l'Espace de Travail .foundry

Chaque dossier source d'agent doit garder l'état spécifique à Foundry sous .foundry/ :

<agent-root>/
  .foundry/
    agent-metadata.yaml
    datasets/
    evaluators/
    results/
  • agent-metadata.yaml est la source de vérité requise pour les paramètres spécifiques à l'environnement, les noms d'agent, les détails du registre et les cas de test d'évaluation.
  • datasets/ et evaluators/ sont des dossiers de cache local. Réutilisez-les quand ils sont à jour, et demandez avant de les actualiser ou de les remplacer.
  • Voir Contrat de Métadonnées d'Agent pour le schéma canonique et les règles de workflow.

Agent : Références de Configuration

Agent : Résolution du Contexte du Projet

Les compétences d'agent devraient exécuter cette étape uniquement quand elles ont besoin de valeurs de configuration qu'elles n'ont pas déjà. Si une valeur (par exemple, racine d'agent, environnement, point de terminaison du projet ou nom de l'agent) est déjà connue du message de l'utilisateur ou d'une compétence précédente dans la même session, ignorez la résolution pour cette valeur.

Étape 1 : Découvrir les Racines d'Agent

Recherchez dans l'espace de travail le fichier .foundry/agent-metadata.yaml.

  • Une correspondance → utilisez cette racine d'agent.
  • Correspondances multiples → demandez à l'utilisateur de choisir le dossier d'agent cible.
  • Pas de correspondances → pour les workflows create/deploy, initialisez un nouveau dossier .foundry/ pendant la configuration ; pour tous les autres workflows, arrêtez et demandez à l'utilisateur quel dossier source d'agent initialiser.

Étape 2 : Résoudre l'Environnement

Lisez .foundry/agent-metadata.yaml et résolvez l'environnement dans cet ordre :

  1. Environnement explicitement nommé par l'utilisateur
  2. Environnement déjà sélectionné plus tôt dans la session
  3. defaultEnvironment des métadonnées

Si les métadonnées contiennent plusieurs environnements et qu'aucune des règles ci-dessus n'en sélectionne un, invitez l'utilisateur à en choisir un. Gardez la racine de l'agent sélectionné et l'environnement visibles dans chaque résumé de workflow.

Étape 3 : Résoudre la Configuration Commune

Utilisez l'environnement sélectionné dans agent-metadata.yaml comme source principale :

Champ des Métadonnées Résout à Utilisé Par
environments.<env>.projectEndpoint Point de terminaison du projet deploy, invoke, observe, trace, troubleshoot
environments.<env>.agentName Nom de l'agent invoke, observe, trace, troubleshoot
environments.<env>.azureContainerRegistry Nom du registre ACR / préfixe URL d'image deploy
environments.<env>.testCases[] Ensembles de données + évaluateur + seuils observe, eval-datasets

Étape 4 : Amorcer les Métadonnées Manquantes (Create/Deploy Uniquement)

Si create/deploy initialise un nouvel espace de travail .foundry et que des champs de métadonnées manquent toujours, vérifiez si azure.yaml existe à la racine du projet. S'il est trouvé, exécutez azd env get-values et utilisez-le pour amorcer agent-metadata.yaml avant de continuer.

Variable azd Amorce
AZURE_AI_PROJECT_ENDPOINT ou AZURE_AIPROJECT_ENDPOINT environments.<env>.projectEndpoint
AZURE_CONTAINER_REGISTRY_NAME ou AZURE_CONTAINER_REGISTRY_ENDPOINT environments.<env>.azureContainerRegistry
AZURE_SUBSCRIPTION_ID Abonnement Azure pour les recherches trace/troubleshoot

Étape 5 : Collecter les Valeurs Manquantes

Utilisez l'outil ask_user ou askQuestions uniquement pour les valeurs non résolues à partir du message de l'utilisateur, du contexte de session, des métadonnées ou de l'amorce azd. Valeurs communes que les compétences peuvent avoir besoin :

  • Racine d'agent — Dossier cible contenant .foundry/agent-metadata.yaml
  • Environnementdev, prod ou une autre clé d'environnement des métadonnées
  • Point de terminaison du projet — URL du point de terminaison du projet AI Foundry
  • Nom de l'agent — Nom de l'agent cible

? Conseil : Si l'utilisateur fournit déjà le chemin d'accès à l'agent, l'environnement, le point de terminaison du projet ou le nom de l'agent, extrayez-le directement — ne demandez pas à nouveau.

Agent : Types d'Agents

Toutes les compétences d'agent supportent deux types d'agents :

Type Kind Description
Prompt "prompt" Agents basés sur LLM soutenus par un déploiement de modèle
Hosted "hosted" Agents basés sur conteneur exécutant du code personnalisé

Utilisez l'outil MCP agent_get pour déterminer le type d'un agent quand nécessaire.

Conventions d'Utilisation des Outils

  • Utilisez l'outil ask_user ou askQuestions lors de la collecte d'informations auprès de l'utilisateur
  • Utilisez l'outil task ou runSubagent pour déléguer les sous-tâches à longue exécution ou indépendantes (p. ex., analyse des variables d'env, polling de statut, génération de Dockerfile)
  • Préférez les outils Azure MCP aux commandes CLI directes quand ils sont disponibles
  • Référencez les URL de la documentation officielle Microsoft au lieu d'intégrer la syntaxe des commandes CLI

Ressources Supplémentaires

Référence Rapide SDK