Partager via


Test agents en utilisant le Microsoft Agent 365 SDK

Important

Vous devez faire partie du programme Frontier en version préliminaire pour obtenir un accès anticipé à Microsoft Agent 365. Frontier vous connecte directement aux dernières innovations d’IA de Microsoft. Les versions préliminaires Frontier sont soumises aux conditions existantes de vos contrats clients qui régissent les versions préliminaires. Comme ces fonctionnalités sont encore en cours de développement, leur disponibilité et leurs capacités peuvent évoluer au fil du temps.

Testez votre agent localement en utilisant Agents Playground avant le déploiement. Ce guide couvre la configuration de votre environnement de développement, l’authentification et la validation des fonctionnalités de votre agent en utilisant l’outil de test Agents Playground.

Une fois que votre agent travaille localement, vous pouvez suivre le cycle de vie de développement de l’Agent 365 pour tester dans des applications Microsoft 365 comme Teams, Word et Outlook.

Configuration requise

Avant de commencer à tester votre assistant, assurez-vous que les prérequis suivants sont en place :

Conditions préalables courantes

Conditions préalables spécifiques à la langue

Configurer l’environnement de test de l’assistant

Cette section décrit comment définir les variables d’environnement, authentifier votre environnement de développement et préparer votre agent alimenté par Agent 365 pour les tests.

La configuration de votre environnement de test de l’assistant suit un flux de travail séquentiel :

  1. Configurez votre environnement - Créez ou mettez à jour votre fichier de configuration d’environnement.

  2. Configuration du LLM - Obtenez des clés API et configurez les paramètres OpenAI ou Azure OpenAI.

  3. Configurer l’authentification - Configurer l’authentification agentique.

  4. Référence sur les variables d’environnement – Configurer les variables d’environnement requises :

    1. Variables d’authentification
    2. Configuration du point de terminaison
    3. Variables d’observabilité
    4. Configuration du serveur d’applications de l’assistant

Une fois ces étapes terminées, vous êtes prêt à commencer à tester votre assistant dans Agents Playground.

Étape 1 : Configurer votre environnement

Configurer votre fichier de configuration :

cp .env.template .env

Note

Pour les modèles de configuration affichant les champs requis, voir les exemples du SDK Microsoft Agent 365.

Étape 2 : configuration de LLM

Configurez les paramètres OpenAI ou Azure OpenAI pour les tests locaux. Ajoutez vos clés API et vos points de terminaison de service issus des prérequis à votre fichier de configuration ainsi que tous les paramètres du modèle.

Ajouter à votre fichier .env :

# Replace with your actual OpenAI API key
OPENAI_API_KEY=

# Azure OpenAI Configuration
AZURE_OPENAI_API_KEY=
AZURE_OPENAI_ENDPOINT=
AZURE_OPENAI_DEPLOYMENT=
AZURE_OPENAI_API_VERSION=

Variables d’environnement LLM Python

Variable Description Obligatoire Exemple
OPENAI_API_KEY Clé d’API pour OpenAI Service Pour OpenAI sk-proj-...
AZURE_OPENAI_API_KEY Clé d’API pour Azure OpenAI Service Pour Azure OpenAI a1b2c3d4e5f6...
AZURE_OPENAI_ENDPOINT URL du point de terminaison Azure OpenAI Service Pour Azure OpenAI https://your-resource.openai.azure.com/
AZURE_OPENAI_DEPLOYMENT Nom du déploiement dans Azure OpenAI Pour Azure OpenAI gpt-4
AZURE_OPENAI_API_VERSION Version de l’API pour Azure OpenAI Pour Azure OpenAI 2024-02-15-preview

Étape 3 : Configurez l’authentification de votre agent

Choisissez l’une des méthodes d’authentification suivantes pour votre agent :

  • Authentification agente - Utilisation pour des scénarios de production ou lorsqu’un utilisateur agent est disponible.
  • Authentification par jeton porteur - À utiliser uniquement pour des scénarios de développement et de test précoces avant la disponibilité des utilisateurs agents.

Authentification agentique

Utilisez la commande CLI a365 config display Agent 365 pour récupérer vos identifiants de blueprint d’agent.

a365 config display -g

Cette commande affiche la configuration du blueprint de votre assistant. Copiez les valeurs suivantes :

Valeur Description
agentBlueprintId ID client de votre assistant
agentBlueprintClientSecret Clé secrète client de votre assistant
tenantId Votre ID de locataire Microsoft Entra

Utilisez ces valeurs pour configurer l’authentification agentique dans votre assistant :

Ajoutez les paramètres suivants à votre fichier .env, en remplaçant les valeurs d’espace réservé par vos informations d’identification réelles :

USE_AGENTIC_AUTH=true
CONNECTIONS__SERVICE_CONNECTION__SETTINGS__CLIENTID=<agentBlueprintId>
CONNECTIONS__SERVICE_CONNECTION__SETTINGS__CLIENTSECRET=<agentBlueprintClientSecret>
CONNECTIONS__SERVICE_CONNECTION__SETTINGS__TENANTID=<your-tenant-id>
Variable Description Obligatoire Exemple
USE_AGENTIC_AUTH Activer le mode d’authentification agentique Oui true
CONNECTIONS__SERVICE_CONNECTION__SETTINGS__CLIENTID ID client du blueprint de l’assistant à partir de a365 config display -g Oui 12345678-1234-1234-1234-123456789abc
CONNECTIONS__SERVICE_CONNECTION__SETTINGS__CLIENTSECRET Clé secrète client du blueprint de l’assistant à partir de a365 config display -g Oui abc~123...
CONNECTIONS__SERVICE_CONNECTION__SETTINGS__TENANTID ID de locataire Microsoft Entra depuis a365 config display -g Oui adfa4542-3e1e-46f5-9c70-3df0b15b3f6c

Authentification des jetons du porteur

Pour les scénarios de développement et de test précoces lorsque les utilisateurs d’agents ne sont pas disponibles, utilisez l’authentification par jeton porteur pour tester votre agent. Cette méthode utilise une authentification interactive par navigateur pour obtenir un jeton d’accès délégué, qui permet à votre agent d’appeler des outils MCP Server avec vos permissions utilisateur. Cette approche simule la manière dont un utilisateur agent accède aux ressources en production sans nécessiter une instance d’agent réelle.

D’abord, utilisez a365 develop add-permissions pour ajouter les permissions serveur MCP requises à votre application :

a365 develop add-permissions

Ensuite, utilisez a365 develop get-token pour récupérer et configurer les jetons porteurs :

a365 develop get-token

La get-token commande automatique :

  • Récupère les jetons porteurs pour tous les serveurs MCP configurés dans votre ToolingManifest.json fichier
  • Met à jour vos fichiers de configuration de projet avec la BEARER_TOKEN variable environnement

Note

Les jetons porteurs expirent après environ 1 heure. À utiliser a365 develop get-token pour rafraîchir les jetons expirés.

Étape 4 : Référence sur les variables d’environnement

Terminez la configuration de votre environnement en configurant les variables d’environnement requises suivantes :

Variables d’authentification

Configurez les paramètres du gestionnaire d’authentification requis pour que l’authentification agentique fonctionne correctement.

Ajouter à votre fichier .env :

# Agentic Authentication Settings
AGENTAPPLICATION__USERAUTHORIZATION__HANDLERS__AGENTIC__SETTINGS__TYPE=AgenticUserAuthorization
AGENTAPPLICATION__USERAUTHORIZATION__HANDLERS__AGENTIC__SETTINGS__SCOPES=https://graph.microsoft.com/.default
AGENTAPPLICATION__USERAUTHORIZATION__HANDLERS__AGENTIC__SETTINGS__ALTERNATEBLUEPRINTCONNECTIONNAME=service_connection

# Connection Mapping
CONNECTIONSMAP_0_SERVICEURL=*
CONNECTIONSMAP_0_CONNECTION=SERVICE_CONNECTION
Variable Description Obligatoire
AGENTAPPLICATION__USERAUTHORIZATION__HANDLERS__AGENTIC__SETTINGS__TYPE Type de gestionnaire d’authentification Oui
AGENTAPPLICATION__USERAUTHORIZATION__HANDLERS__AGENTIC__SETTINGS__SCOPES Étendues d’authentification pour Microsoft Graph Oui
AGENTAPPLICATION__USERAUTHORIZATION__HANDLERS__AGENTIC__SETTINGS__ALTERNATEBLUEPRINTCONNECTIONNAME Autre nom de connexion de blueprint Oui
CONNECTIONSMAP_0_SERVICEURL Modèle de l’URL de service pour le mappage de connexion Oui
CONNECTIONSMAP_0_CONNECTION Nom de connexion pour le mappage Oui

Configuration du point de terminaison MCP

La configuration du point de terminaison MCP (Model Context Protocol) est nécessaire pour spécifier le point de terminaison de plateforme Agent 365 auquel votre assistant doit se connecter. Lorsque vous générez le manifeste d’outils qui définit les serveurs d’outil pour votre assistant, vous devez spécifier le point de terminaison de la plateforme MCP. Ce point de terminaison détermine l’environnement (préprod, test ou production) auquel les serveurs d’outils MCP se connectent pour les fonctionnalités d’intégration de Microsoft 365.

Ajouter à votre fichier .env :

# MCP Server Configuration
MCP_PLATFORM_ENDPOINT=<MCP endpoint>
Variable Description Obligatoire Par défaut Exemple
MCP_PLATFORM_ENDPOINT URL du point de terminaison de la plateforme MCP (préprod, test ou prod) Non Point de terminaison de la production

Important : Si vous ne spécifiez MCP_PLATFORM_ENDPOINTpas, l’application utilise le point de terminaison de production.

Note

Si vous utilisez le serveur d’outils mock depuis la CLI, définissez le point d’extrémité en http://localhost:<port> utilisant le numéro de port que vous avez utilisé. Le port par défaut est le 5309.

Variables d’observabilité

Configurez ces variables requises pour activer la journalisation et le suivi distribué pour votre assistant. En savoir plus sur les caractéristiques d’observabilité et les bonnes pratiques.

Note

La configuration de l’observabilité est la même dans toutes les langues.

Variable Description Par défaut Exemple
ENABLE_A365_OBSERVABILITY Activer ou désactiver l’observabilité false true
ENABLE_A365_OBSERVABILITY_EXPORTER Exporter des traces vers le service d’observabilité false true
OBSERVABILITY_SERVICE_NAME Nom du service pour le suivi Nom de l’assistant my-agent-service
OBSERVABILITY_SERVICE_NAMESPACE Espace de noms du service agent365-samples my-company-agents

Configuration du serveur d’applications de l’assistant

Configurez le port dans lequel votre serveur d’applications d’assistant s’exécute. Ce paramètre est optionnel et s’applique aux agents Python et JavaScript.

Ajouter à votre fichier .env :

# Server Configuration
PORT=3978
Variable Description Obligatoire Par défaut Exemple
PORT Numéro de port où le serveur d’assistant s’exécute Non 3978 3978

Installer les dépendances et démarrer le serveur d’applications de l’assistant

Après avoir configuré votre environnement, installez les dépendances requises et lancez localement votre serveur d’application agent pour les tests.

Installer des dépendances

uv pip install -e .

Cette commande lit les dépendances de package définies dans pyproject.toml et les installe à partir de PyPI. Lorsque vous créez une application d’agent à partir de zéro, créez un pyproject.toml fichier pour définir vos dépendances. Les exemples d’assistants des exemples de référentiel ont déjà défini ces packages. Vous pouvez les ajouter ou les mettre à jour, selon vos besoins.

Démarrer le serveur d’applications de l’assistant

python <main.py>

Remplacez <main.py> par le nom de votre fichier Python principal qui contient le point d’entrée de votre application d’assistant (par exemple, start_with_generic_host.pyou app.pymain.py).

Ou utilisez des UV :

uv run python <main.py>

Votre serveur d’agents fonctionne désormais et est prêt à recevoir les requêtes d’Agents Playground ou d’applications Microsoft 365.

Tester l’assistant dans Agents Playground

Agents Playground est un outil de test local qui simule l’environnement Microsoft 365 sans nécessiter de configuration complète du locataire. Il s’agit du moyen le plus rapide de valider la logique et les appels d’outils de votre assistant. Pour plus d’informations, consultez Tester avec Agents Playground.

Note

Lorsque vous utilisez l’authentification agentique, la messagerie directe dans Agents Playground n’est pas actuellement prise en charge. Vous devez tester via des activités personnalisées à la place. Voir Tests avec notifications pour plus de détails.

Ouvrez un nouveau terminal (PowerShell sur Windows) et démarrez Agents Playground :

agentsplayground

Cette commande ouvre un navigateur web avec l’interface Agents Playground. L’outil affiche une interface de conversation dans laquelle vous pouvez envoyer des messages à votre assistant.

Test de base

Commencez par vérifier que votre assistant est correctement configuré. Envoyez un message à l’assistant :

What can you do?

L’agent répond avec les instructions qu’il a configurées, en fonction des instructions système et des capacités de votre agent. Cette réponse confirme que :

  • Votre assistant s’exécute correctement
  • L’assistant peut traiter les messages et répondre
  • La communication entre Agents Playground et votre assistant fonctionne

Appels d’outils de test

Après avoir configuré vos serveurs d’outils MCP dans toolingManifest.json (voir Outillage pour les instructions de configuration), des invocations d’outils de test avec des exemples comme ceux-ci :

Tout d’abord, vérifiez quels outils sont disponibles :

List all tools I have access to

Ensuite, testez les invocations spécifiques d’outils :

Outils de messagerie

Send email to your-email@example.com with subject "Test" and message "Hello from my agent"

Réponse attendue : L’agent envoie un e-mail via le serveur Mail MCP et confirme que le message a été envoyé.

Outils de calendrier

List my calendar events for today

Réponse attendue : L’agent récupère et affiche vos événements du calendrier pour le jour en cours.

Outils SharePoint

List all SharePoint sites I have access to

Réponse attendue : L’agent interroge SharePoint et renvoie une liste des sites auxquels vous avez accès.

Vous pouvez afficher les appels d’outils dans :

  • Fenêtre de conversation : voir la réponse de l’assistant et les appels d’outils
  • Volet Journal : consultez des informations détaillées sur l’activité, y compris les paramètres et les réponses de l’outil

Tester avec les activités de notification

Lors du développement local, testez les scénarios de notification en simulant des activités personnalisées dans Agents Playground. Cette simulation vous aide à vérifier la gestion des notifications par votre agent avant de la déployer en production.

Avant de tester les activités de notification, assurez-vous de :

Les notifications nécessitent une configuration appropriée des outils et une configuration de notification pour fonctionner correctement. Vous pouvez tester des scénarios comme des notifications par email ou des commentaires Word en utilisant la fonction d’activité personnalisée.

Pour envoyer des activités personnalisées :

  1. Démarrez votre agent et Agents Playground.
  2. Dans Agents Playground, allez dans Simuler uneactivité personnalisée> d’activité.
  3. Copiez le conversationId fichier de l’activité. (L’identifiant de conversation change à chaque redémarrage de Jeux des Agents.)
  4. Collez votre code JSON d’activité personnalisée et mettez à jour le champ personal-chat-id avec l’ID de conversation que vous avez copié. Voir l’exemple de notification par email.
  5. Sélectionnez Envoyer l’activité.
  6. Consultez le résultat à la fois dans la conversation de chat et dans le panneau de journaux.

Notification par e-mail

Cette configuration simule un e-mail envoyé à l’agent. Remplacez les valeurs d’espace réservé par vos détails d’assistant réels :

{
  "type": "message",
  "id": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
  "timestamp": "2025-09-24T17:40:19+00:00",
  "serviceUrl": "http://localhost:56150/_connector",
  "channelId": "agents",
  "name": "emailNotification",
  "from": {
    "id": "manager@contoso.com",
    "name": "Agent Manager",
    "role": "user"
  },
  "recipient": {
    "id": "agent@contoso.com",
    "name": "Agent",
    "agenticUserId": "<your-agentic-user-id>",
    "agenticAppId": "<your-agent-app-id>",
    "tenantId": "<your-tenant-id>"
  },
  "conversation": {
    "conversationType": "personal",
    "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
    "id": "personal-chat-id"
  },
  "membersAdded": [],
  "membersRemoved": [],
  "reactionsAdded": [],
  "reactionsRemoved": [],
  "locale": "en-US",
  "attachments": [],
  "entities": [
    {
      "id": "email",
      "type": "productInfo"
    },
    {
      "type": "clientInfo",
      "locale": "en-US",
      "timezone": null
    },
    {
      "type": "emailNotification",
      "id": "bbbbbbbb-1111-2222-3333-cccccccccccc",
      "conversationId": "personal-chat-id",
      "htmlBody": "<body dir=\"ltr\">\n<div class=\"elementToProof\" style=\"font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);\">\nYour email message content here</div>\n\n\n</body>"
    }
  ],
  "channelData": {
    "tenant": {
      "id": "aaaabbbb-0000-cccc-1111-dddd2222eeee"
    }
  },
  "listenFor": [],
  "textHighlights": []
}

Afficher les journaux d’observabilité

Pour afficher les journaux d’observabilité pendant le développement local, instrumentez votre assistant avec un code d’observabilité (consultez Observabilité pour obtenir des exemples de code) et configurez les variables d’environnement comme décrit dans les variables d’observabilité. Après configuration, les traces en temps réel s’affichent dans la console montrant :

  • Les traces d’appel de l’assistant
  • Détails de l’exécution de l’outil
  • Les appels d’inférence LLM
  • Les messages d’entrée et de sortie
  • Utilisation d’un jeton
  • Temps de réponse
  • Informations sur l’erreur

Ces journaux vous aident à déboguer les problèmes, à comprendre le comportement des agents et à optimiser les performances.

Étapes suivantes

Après avoir testé votre agent localement avec succès, vous êtes prêt à le déployer sur Azure et à le publier sur Microsoft 365.

Suivez le cycle de vie du développement Agent 365 pour tester dans des applications Microsoft 365 comme Teams, Word et Outlook.

Résolution des problèmes

Cette section propose des solutions aux problèmes courants que vous pourriez rencontrer lors du test local de votre agent.

Conseil / Astuce

Le Guide de dépannage de l’Agent 365 contient des recommandations générales de dépannage, les meilleures pratiques et des liens vers du contenu de dépannage pour chaque étape du cycle de développement de l’Agent 365.

Problèmes de connexion et d’environnement

Ces problèmes concernent la connectivité réseau, les conflits de ports et les problèmes de configuration de l’environnement qui peuvent empêcher votre assistant de communiquer correctement.

Problèmes de connexion Agents Playground

Symptôme : Playground des agents ne peut pas se connecter à votre agent.

Solutions :

  • Vérifiez que votre serveur d’agent fonctionne.
  • Vérifiez que les numéros de port correspondent entre votre agent et Agent Playground.
  • Assurez-vous qu’il n’y a pas de règles de pare-feu bloquant les connexions locales.
  • Essayez de redémarrer à la fois l’Agent et Agents Playground.

Version obsolète d’Agents Playground

Symptôme : Erreurs inattendues ou fonctionnalités manquantes dans Agents Playground.

Solution : désinstaller et réinstaller Agents Playground.

winget uninstall agentsplayground
winget install agentsplayground

Conflits au niveau des ports

Symptôme : Le port indiquant une erreur est déjà en service.

Solution :

  • Arrêtez toute autre instance avec votre agent.
  • Changez le port dans votre configuration.
  • Coupez tous les processus utilisant le port.
# Windows PowerShell
Get-Process -Id (Get-NetTCPConnection -LocalPort <port>).OwningProcess | Stop-Process

Impossible d’ajouter DeveloperMCPServer

Symptôme : Erreur lors de la tentative d’ajout de DeveloperMCPServer dans VS Code.

Solution : fermez et rouvrez Visual Studio Code, puis réessayez d’ajouter le serveur.

Authentification et problèmes de jetons

Ces problèmes surviennent lorsque votre agent ne parvient pas à s’authentifier correctement avec les services Microsoft 365, ou lorsque des identifiants expirent ou sont mal configurés.

Symptômes :

  • Erreurs non autorisées 401
  • Messages « jeton porteur expiré »
  • Défaillances d’authentification des agents

Cause racine :

  • Les jetons expirent après environ une heure
  • Configuration d’authentification incorrecte
  • Informations d’identification manquantes ou non valides

Solutions :

  • Pour l’expiration du jeton porteur

    Rafraîchissez votre jeton et mettez à jour vos variables d’environnement.

    # Get a new token
    a365 develop get-token
    
    # Update your .env file with the new token
    
  • Pour les erreurs d’authentification des agents (Python)

    Vérifiez votre .env dossier :

    # Should be (with underscore):
    AGENTAPPLICATION__USERAUTHORIZATION__HANDLERS__AGENTIC__SETTINGS__ALT_BLUEPRINT_NAME=SERVICE_CONNECTION
    
    # Not:
    AGENTAPPLICATION__USERAUTHORIZATION__HANDLERS__AGENTIC__SETTINGS__ALT_BLUEPRINT_NAME=ServiceConnection
    
  • Pour les identifiants manquants

    Confirmez la présence des identifiants requis avant le test.

    Assurez-vous .env ou appsettings.json contient :

    • Clés API et secrets
    • ID du locataire
    • ID de client
    • ID de blueprint (si on utilise une authentification agentique)

    Vérification :

    Testez avec une simple requête dans Agents Playground. Vous devriez recevoir une réponse sans erreurs 401

  • Problèmes d’outils et de notifications

    Ces problèmes concernent les invocations d’outils, les interactions avec les serveurs MCP et la livraison de notifications.

Courrier électronique non reçu

Symptôme : l’assistant indique que le courrier électronique a été envoyé, mais que vous ne le recevez pas

Solutions :

  • Vérifie ton dossier Indésir/Spam.
  • La livraison des e-mails peut être retardée de quelques minutes - attendez jusqu’à cinq minutes.
  • Vérifiez que l’adresse e-mail du destinataire est correcte.
  • Vérifiez les journaux des agents pour détecter d’éventuelles erreurs lors de l’envoi d’un e-mail.

Réponses aux commentaires Word qui ne fonctionnent pas

Problème connu : Le service de notification ne peut actuellement pas répondre directement aux commentaires Word. Cette fonctionnalité est en cours de développement.

Les messages n’atteignent pas l’agent

Symptôme : Les messages envoyés à l’agent dans Teams ne sont pas reçus par votre candidature d’agent.

Causes possibles :

  • Blueprint d’agent non configuré dans le portail développeur.
  • Problèmes Azure Web App (échecs de déploiement, application qui ne tourne pas, erreurs de configuration).
  • Instance d’agent mal créée dans Teams.

Solutions :

  • Vérifier la configuration du portail développeur :

    Assurez-vous de bien compléter la configuration du plan d’agent dans le Portail Développeur. Apprenez à configurer le blueprint de l’agent dans le Portail développeur.

  • Check Azure Web App Health :

    Si vous déployez votre agent sur Azure, vérifiez que l’application Web fonctionne correctement :

    1. Accédez au portail Azure.
    2. Rendez-vous sur la ressource de votre application Web.
    3. Vérifiezle statutde l’aperçu> (cela devrait indiquer « En cours »).
    4. Vérifiez le flux de journal sous Surveillance pour détecter les erreurs d’exécution.
    5. Consultez les journaux du Centre de déploiement pour vérifier que le déploiement a réussi.
    6. Vérifier que>les paramètres de configuration de l’application contiennent toutes les variables d’environnement requises.
  • Vérifier la création d’instance d’agent :

    Assurez-vous de bien créer l’instance de l’agent dans Microsoft Teams :

    1. Ouvrez Microsoft Teams.
    2. Allez dans Applications et recherchez votre agent.
    3. Vérifiez que l’agent apparaît dans les résultats de recherche.
    4. Si ce n’est pas trouvé, vérifiez qu’il est publié dans le centre d’administration Microsoft 365 - Agents.
    5. Créez une nouvelle instance en sélectionnant Ajouter votre agent.
    6. Pour des instructions détaillées, voir Agents embarqués.