microsoft-foundry

Par microsoft · azure-skills

Déployez, évaluez et gérez des agents Foundry de bout en bout : build Docker, push ACR, création d'agent hébergé/prompt, démarrage de conteneur, batch eval, continuous eval, workflows d'optimisation de prompt, agent.yaml, curation de dataset à partir de traces. À UTILISER POUR : déployer un agent sur Foundry, agent hébergé, créer un agent, invoquer un agent, évaluer un agent, lancer un batch eval, continuous eval, surveillance continue, statut de continuous eval, optimiser un prompt, améliorer un prompt, prompt optimizer, optimiser les instructions d'agent, améliorer les instructions d'agent, optimiser le system prompt, déployer un modèle, projet Foundry, RBAC, attribution de rôle, permissions, quota, capacité, région, dépanner un agent, échec de déploiement, créer un dataset à partir de traces, versionnage de dataset, tendances d'évaluation, créer des AI Services, Cognitive Services, créer une ressource Foundry, provisionner une ressource, index de connaissances, surveillance d'agent, personnaliser le déploiement, onboarding, disponibilité. NE PAS UTILISER POUR : Azure Functions, App Service, déploiement Azure général (utiliser azure-deploy), préparation Azure générale (utiliser azure-prepare).

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

Skill Microsoft Foundry

Ce skill aide les développeurs à travailler avec les ressources Microsoft Foundry, couvrant la découverte et le déploiement de modèles, le cycle de vie complet des agents IA, les workflows d'évaluation et le dépannage.

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 associés. Traitez cet appel initial foundry comme une étape de découverte/aide. Pour ce skill, Azure MCP foundry est le point d'entrée obligatoire pour les opérations MCP liées à Foundry.

Sub-Skills

OBLIGATOIRE : Avant d'exécuter UN QUELCONQUE workflow spécifique, vous DEVEZ lire le document sub-skill correspondant. N'appelez pas les outils MCP spécifiques au workflow pour un workflow sans lire son document skill. Cela s'applique même si vous connaissez déjà les paramètres de l'outil MCP — le document skill 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 le skill est déjà chargé.

Ce skill inclut des sub-skills spécialisés pour des workflows spécifiques. Utilisez-les plutôt que le skill principal quand ils correspondent à votre tâche :

Sub-Skill Quand l'utiliser Référence
deploy Conteneuriser, générer, pousser vers ACR, créer/mettre à jour/cloner des déploiements d'agents deploy
invoke Envoyer des messages à un agent, conversations simple ou multi-tour invoke
observe Évaluer la qualité de l'agent, exécuter des evals batch, analyser les défaillances, optimiser les prompts, améliorer les instructions de l'agent, comparer les versions, configurer la supervision CI/CD et activer l'évaluation continue en production observe
trace Interroger les traces, analyser la latence/défaillances, corréler les résultats eval à des réponses spécifiques via App Insights customEvents trace
troubleshoot Afficher les logs des agents hébergés, interroger la télémétrie, diagnostiquer les défaillances troubleshoot
create Créer de nouvelles applications d'agents hébergés. Supporte Microsoft Agent Framework, LangGraph ou les frameworks personnalisés en Python ou C#, sur les protocoles responses ou invocations. create
eval-datasets Récolter les traces de production dans les datasets d'évaluation, gérer les versions et les divisions de datasets, suivre les métriques d'évaluation au fil du temps, détecter les régressions et maintenir la traçabilité complète de la trace au déploiement. Utiliser pour : créer dataset à partir de traces, versioning de dataset, tendances d'évaluation, détection de régressions, comparaison de datasets, 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'onboarding à Foundry ou de la configuration d'une nouvelle infrastructure. project/create/create-foundry-project.md
resource/create Créer une ressource multi-service Azure AI Services (ressource Foundry) en utilisant Azure CLI. À utiliser lors du provisionnement manuel des ressources AI Services avec un contrôle granulaire. resource/create/create-foundry-resource.md
private-network Répondre aux questions sur l'isolation réseau Foundry et déployer Foundry avec isolation VNet (BYO VNet, VNet géré, hybride). Couvre les concepts d'architecture, la sélection de template, le déploiement et la validation post-déploiement. resource/private-network/private-network.md
models/deploy-model Déploiement de modèle unifié avec routage intelligent. Gère les déploiements preset rapides, les déploiements entièrement personnalisés (version/SKU/capacité/RAI) et la découverte de capacité entre régions. Achemine vers les sub-skills : preset (déploiement rapide), customize (contrôle total), capacity (trouver la disponibilité). models/deploy-model/SKILL.md
quota Gérer les quotas et la capacité des ressources Microsoft Foundry. À utiliser lors de la vérification de l'utilisation des quotas, du dépannage des défaillances de déploiement dues à un quota insuffisant, de la demande d'augmentation de quota ou de la planification de capacité. quota/quota.md
rbac Gérer les permissions RBAC, les attributions de rôles, les identités gérées et les 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'onboarding complet : project/create (public) ou private-network (isolation VNet) → models/deploy-model → workflows d'agents (createdeployinvoke).

💡 Déploiement de modèle : Utilisez models/deploy-model pour tous les scénarios de déploiement — il achemine intelligemment entre le déploiement preset rapide, le déploiement personnalisé avec contrôle total et la découverte de capacité entre régions.

💡 Optimisation de prompt : Pour les demandes comme « optimise mon prompt » ou « améliore mes instructions d'agent », chargez observe et utilisez l'outil MCP prompt_optimize via ce workflow piloté par eval.

Cycle de vie de l'infrastructure

Appariez l'intention de l'utilisateur au workflow d'infrastructure correct.

Intention utilisateur Workflow
« Créer Foundry » / « Configurer Foundry » (ambigu) Utilisez AskUserQuestion : (a) juste une ressource AI Services, (b) un projet avec accès public, ou (c) un projet avec isolation réseau ? Achemine : (a) → resource/create, (b) → project/create, (c) → private-network
Configurer Foundry avec isolation VNet private-network
Créer un projet Foundry (public) project/create
Créer une ressource Foundry brute resource/create

Cycle de vie du développement d'agent

Appariez l'intention de l'utilisateur au workflow d'agent correct. Lisez chaque sub-skill 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 (le code existe déjà) deploy → invoke
Mettre à jour/redéployer un agent après des changements de code deploy → invoke
Appeler/tester/discuter avec un agent invoke
Optimiser / améliorer le prompt ou les instructions de l'agent observe (Step 4: Optimize)
Évaluer et optimiser l'agent (boucle complète) observe
Activer la surveillance d'évaluation continue observe (Step 6: CI/CD & Monitoring)
Dépanner un problème d'agent invoke → troubleshoot
Corriger un agent cassé (dépannage + redéploiement) invoke → troubleshoot → appliquer les correctifs → deploy → invoke

Agent : Standard de workspace .foundry

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

<agent-root>/
  .foundry/
    agent-metadata.yaml
    agent-metadata.prod.yaml
    datasets/
    evaluators/
    results/
  • agent-metadata.yaml est le fichier de métadonnées local/dev préféré. Les fichiers sidecars optionnels comme agent-metadata.prod.yaml peuvent contenir un seul environnement de prod ou ciblant CI sans mélanger plusieurs environnements dans un seul fichier.
  • datasets/ et evaluators/ sont des dossiers de cache local. Réutilisez-les quand ils sont à jour, et demandez avant de les rafraîchir ou de les remplacer.
  • Voir Agent Metadata Contract pour le schéma canonique et les règles de workflow.

Agent : Références de configuration

  • Standard Agent Setup - Configuration standard d'hôte de capacités avec données gérées par le client, recherche et ressources AI Services.

Agent : Résolution du contexte de projet

Les skills d'agent doivent exécuter cette étape uniquement quand ils ont besoin de valeurs de configuration qu'ils n'ont pas déjà. Si une valeur (par exemple, racine d'agent, environnement, endpoint de projet ou nom d'agent) est déjà connue du message de l'utilisateur ou d'un skill précédent dans la même session, ignorez la résolution pour cette valeur.

Étape 1 : Découvrir les racines d'agent

Recherchez dans le workspace les dossiers .foundry/ qui contiennent agent-metadata.yaml ou agent-metadata.<env>.yaml.

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

Après avoir sélectionné une racine d'agent, gardez toute inspection du cache local .foundry, inspection source, suggestions d'évaluateurs, suggestions de datasets et contexte d'optimisation de prompt à l'intérieur de ce dossier seulement. Ne scannez pas les dossiers d'agents voisins sauf si l'utilisateur change explicitement de racine.

Étape 2 : Sélectionner le fichier de métadonnées et résoudre l'environnement

À l'intérieur de la racine d'agent sélectionnée, choisissez le fichier de métadonnées dans cet ordre :

  1. Nom ou chemin du fichier de métadonnées explicitement fourni par l'utilisateur ou le workflow
  2. Si un environnement explicite est déjà connu et .foundry/agent-metadata.<env>.yaml existe, utilisez ce fichier
  3. .foundry/agent-metadata.yaml
  4. Si plusieurs fichiers de métadonnées demeurent et aucune règle précédente n'en sélectionne un, demandez à l'utilisateur de choisir

Lisez le fichier de métadonnées sélectionné et résolvez l'environnement dans cet ordre :

  1. Environnement explicitement nommé par l'utilisateur
  2. Si le fichier de métadonnées sélectionné définit exactement un environnement, utilisez-le
  3. Environnement déjà sélectionné plus tôt dans la session
  4. defaultEnvironment du fichier de métadonnées

Si le fichier de métadonnées sélectionné contient toujours plusieurs environnements et aucune des règles précédentes n'en sélectionne un, demandez à l'utilisateur de choisir. Maintenez visible la racine d'agent sélectionnée, le fichier de métadonnées et l'environnement dans chaque résumé de workflow.

Si l'environnement sélectionné expose des métadonnées testSuites[] plus anciennes mais pas evaluationSuites[], traitez testSuites[] comme source pour cette session et normalisez chaque entrée en mémoire à la forme evaluationSuites[] avant de continuer. Si les métadonnées sont encore plus anciennes et n'exposent que le legacy testCases[], normalisez cette liste de la même façon. Préservez les champs dataset et evaluator, gardez tout tags existant et mappez le legacy priority à tags.tier uniquement quand tags.tier est manquant : P0 -> smoke, P1 -> regression, P2 -> coverage.

Étape 3 : Résoudre la configuration commune

Utilisez l'environnement sélectionné du fichier de métadonnées sélectionné comme source primaire :

Champ de métadonnées Résout en Utilisé par
environments.<env>.projectEndpoint Endpoint de 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>.evaluationSuites[] Bundles dataset + evaluator + tag observe, eval-datasets

Étape 4 : Bootstrap des métadonnées manquantes (Create/Deploy uniquement)

Si create/deploy initialise un nouveau workspace .foundry et des champs de métadonnées sont toujours manquants, vérifiez si azure.yaml existe dans la racine du projet. Si trouvé, exécutez azd env get-values et utilisez-le pour seedez agent-metadata.yaml par défaut, ou agent-metadata.<env>.yaml quand le workflow cible explicitement un fichier spécifique à l'environnement.

À chaque écriture de métadonnées (deploy, auto-setup, rafraîchissement de dataset ou mise à jour trace-to-dataset), persistez uniquement evaluationSuites[] dans le fichier de métadonnées sélectionné. Si le fichier sélectionné est un fichier préféré simple environnement, réécrivez uniquement ce bloc d'environnement. Si le fichier sélectionné est un fichier multi-environnement legacy, réécrivez uniquement le bloc d'environnement sélectionné. Ne copiez jamais ou ne fusionnez automatiquement les environnements entre les fichiers de métadonnées voisins. Si l'environnement sélectionné utilise toujours le legacy testSuites[] ou le legacy testCases[], réécrivez-le en evaluationSuites[] et supprimez les champs priority migrés des entrées réécrites.

Variable azd Seedez
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, du fichier de métadonnées ou du bootstrap azd. Valeurs communes que les skills peuvent avoir besoin :

  • Racine d'agent — Dossier cible contenant .foundry/agent-metadata*.yaml
  • Fichier de métadonnéesagent-metadata.yaml pour local/dev, ou un sidecar explicite comme agent-metadata.prod.yaml
  • Environnementdev, prod ou une autre clé d'environnement du fichier de métadonnées
  • Endpoint de projet — URL d'endpoint du projet AI Foundry
  • Nom d'agent — Nom de l'agent cible

💡 Conseil : Si l'utilisateur fournit déjà le chemin d'agent, l'environnement, l'endpoint de projet ou le nom d'agent, extrayez-le directement — ne demandez pas à nouveau.

Agent : Types d'agent

Tous les skills d'agent supportent deux types d'agent :

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 c'est nécessaire.

Conventions d'utilisation des outils

  • Utilisez l'outil ask_user ou askQuestions quand vous collectez des informations de l'utilisateur
  • Utilisez l'outil task ou runSubagent pour déléguer les sous-tâches longues ou indépendantes (par ex., scanning de vars d'env, polling de statut, génération de Dockerfile)
  • Préférez les outils Azure MCP aux commandes CLI directes quand disponibles
  • Référencez les URLs de documentation officielle Microsoft plutôt que d'intégrer la syntaxe de commandes CLI

Ressources supplémentaires

Référence rapide du SDK

Skills similaires