Partager via


Provisionner et publier un bot

S'APPLIQUE À : SDK v4

Cet article explique comment utiliser Azure CLI pour créer des ressources pour votre bot, préparer votre bot pour le déploiement et déployer votre bot sur Azure.

Cet article suppose que vous disposez d’un bot prêt à être déployé. Pour en savoir plus sur la création d’un bot echo simple, reportez-vous à Créer un bot à l’aide du kit de développement logiciel (SDK) Bot Framework. Vous pouvez également utiliser l’un des exemples fournis dans le dépôt Bot Framework Samples.

Conseil

Cet article crée une ressource Azure Bot pour votre bot. Les bots existants qui utilisent une ressource Web App Bot ou une ressource Bot Channels Registration continueront de fonctionner, mais vous ne pouvez pas créer de bots qui utilisent ces types de ressources.

Remarque

Pour créer des agents avec votre choix de services IA, d’orchestration et de connaissances, envisagez d’utiliser le Kit de développement logiciel (SDK) Microsoft 365 Agents. Le SDK Agents prend en charge C#, JavaScript ou Python. Vous pouvez en savoir plus sur le Kit de développement logiciel (SDK) Agents à aka.ms/agents. Si vous recherchez une plateforme d’agent SaaS, envisagez Microsoft Copilot Studio. Si vous disposez d’un bot existant créé avec le Kit de développement logiciel (SDK) Bot Framework, vous pouvez mettre à jour votre bot vers le Kit de développement logiciel (SDK) Agents. Vous pouvez passer en revue les principales modifications et mises à jour dans le guide de migration du SDK Bot Framework vers SDK Agents. Les tickets de support pour le Kit de développement logiciel (SDK) Bot Framework ne seront plus pris en charge à compter du 31 décembre 2025.

Prérequis

  • Pour les bots Java, installez Maven.

  • Ce processus utilise deux modèles Azure Resource Manager (modèles ARM) pour créer des ressources pour votre bot.

    Si vous ne disposez pas des modèles actuels, créez une copie du dossier deploymentTemplates dans votre projet bot : C#, JavaScript, Python ou Java.

Pour utiliser Azure CLI pour approvisionner et publier des bots, vous avez besoin des éléments suivants :

  • Un compte Azure disposant d’un abonnement actif. Créer un compte gratuit.

  • Une version installée d’Azure CLI.

    Pour votre langage de programmation, utilisez la version suivante d'Azure CLI. Certaines étapes ne fonctionnent pas avec les versions ultérieures de l'interface CLI.

    Langue Version de la CLI
    C# et JavaScript 2.39.0 ou version ultérieure
    Python 2.55.0 ou version ultérieure
    Java 2.29.2

Remarque

Si votre bot utilise des ressources supplémentaires, telles qu’un service de stockage ou des services linguistiques, celles-ci doivent être déployées séparément.

Planifier votre déploiement

Avant de commencer, prenez ces décisions.

Décision Remarques
Comment gérer les identités de vos ressources de bot dans Azure Vous pouvez utiliser une identité managée affectée par l’utilisateur, une inscription d’application à locataire unique ou une inscription d’application multilocataire. Pour plus d’informations, consultez Créer une ressource d’identité.
Dans quel(s) groupe(s) de ressources vous allez créer vos ressources de bot Tant que vous n’êtes pas familiarisé avec ce processus, nous vous recommandons d’utiliser un groupe de ressources. Pour plus d’informations, consultez Gérer les ressources Azure.
Que votre bot soit régional ou global Pour plus d'informations sur les bots régionaux, consultez la rubrique Régionalisation dans Azure AI Bot Service.

L’identité de votre bot peut être gérée de plusieurs façons dans Azure :

  • En tant qu’identité managée affectée par l’utilisateur, vous n’avez donc pas besoin de gérer manuellement les informations d’identification.
  • S'il s'agit d'une application à locataire unique.
  • S'il s'agit d'une application multilocataire.

Remarque

  • La prise en charge de l’identité managée affectée par l’utilisateur et des types d’applications mono-tenant est disponible dans le Kit de développement logiciel (SDK) Bot Framework pour C#, JavaScript et Python.
  • Ces types d’applications ne sont pas pris en charge dans d’autres langages sdk, Bot Framework Composer, Bot Framework Emulator ou Dev Tunnels.

Important

  • La création d’un bot mutualisé sera déconseillée après le 31 juillet 2025.
  • Les bots multilocataires existants continueront de fonctionner, mais la création de nouveaux bots multilocataires ne sera plus prise en charge après cette date.
  • Pour garantir une prise en charge continue, utilisez l’identité managée à locataire unique ou affectée par l’utilisateur à l’avenir.

Types d’applications pris en charge

Type d’application Prise en charge dans
Identité managée affectée par l’utilisateur Azure AI Bot Service ; Sdk C#, JavaScript et Python
Locataire unique Azure AI Bot Service ; Sdk C#, JavaScript et Python
Multilocataire (obsolète – sera supprimé le 31 juillet 2025) Azure AI Bot Service ; tous les langages du Kit de développement logiciel (SDK) Bot Framework ; Compositeur; Émulateur; Tunnels de développement

Important

Vous ne pouvez pas déployer les bots Python sur un groupe de ressources qui contient des services ou bots Windows. Toutefois, plusieurs bots Python peuvent être déployés sur le même groupe de ressources. Créez d’autres services, tels que les services Azure AI Services, dans un autre groupe de ressources.

Ressources Azure

Avant de pouvoir déployer votre bot, vous créez (ou approvisionnez) les ressources Azure dont il aura besoin. Pour certaines étapes, vous pouvez soit utiliser une ressource existante, soit en créer une.

Vous pouvez trouver utile de décider à l’avance des noms des nouvelles ressources que vous allez créer et des noms des ressources existantes que vous utiliserez. Votre bot utilisera ces types de ressources.

  • Abonnement Azure que vous allez utiliser pour approvisionner, publier et gérer le bot
  • Un ou plusieurs groupes de ressources
  • Une identité managée affectée par l’utilisateur ou une inscription d’application Microsoft Entra ID
  • Une ressource de plan App Service
  • Une ressource App Service
  • Une ressource Azure Bot

Informations utilisées entre les ressources

Lorsque vous créez des ressources dans Azure, Azure génère ou demande des ID, des mots de passe et d’autres informations dont vous aurez besoin dans les étapes ultérieures. Le tableau suivant répertorie les informations au-delà des noms de ressources que vous devez enregistrer, dans quelle étape elle est générée et dans quelles étapes elle est utilisée.

Attention

La plupart de ces identifiants et mots de passe sont des informations sensibles. Pour obtenir des informations générales sur la sécurité, consultez Instructions de sécurité de Bot Framework.

Informations Généré ou trouvé Utilisé
ID du locataire Se connecter et sélectionner un abonnement Utiliser Azure CLI pour créer une ressource App Service, Utiliser Azure CLI pour créer ou mettre à jour une ressource Azure Bot, Mettre à jour les paramètres de configuration du projet
Type d’application Créer une ressource d’identité Utiliser Azure CLI pour créer une ressource App Service, Utiliser Azure CLI pour créer ou mettre à jour une ressource Azure Bot, Mettre à jour les paramètres de configuration du projet
ID client Créer une ressource d’identité Utiliser Azure CLI pour créer une ressource App Service, Utiliser Azure CLI pour créer ou mettre à jour une ressource Azure Bot, Mettre à jour les paramètres de configuration du projet
URL du service d’application de base Utiliser Azure CLI pour créer une ressource App Service Utiliser Azure CLI pour créer ou mettre à jour une ressource Azure Bot
Nom d’App Service Utiliser Azure CLI pour créer une ressource App Service Publier votre bot sur Azure

Se connecter et sélectionner un abonnement

  1. Ouvrez une fenêtre de commandes.

  2. Connectez-vous à Azure.

    az login
    
    • Une fenêtre du navigateur s’ouvre. Terminez le processus de connexion.
    • Si l’opération s’effectue normalement, la commande génère une liste des abonnements auxquels votre compte a accès.
  3. Pour définir l’abonnement à utiliser, exécutez :

    az account set --subscription "<subscription>"
    

    Pour <l’abonnement>, utilisez l’ID ou le nom de l’abonnement à utiliser.

  4. Si vous créez une identité managée affectée par l’utilisateur ou un bot à locataire unique, enregistrez tenantId pour l’abonnement. Vous allez utiliser l’ID de locataire lors des étapes suivantes.

Conseil

Si vous devez travailler dans un cloud privé, consultez Gestion du cloud Azure avec Azure CLI.

Créer des groupes de ressources

Si vous n’avez pas encore de groupe de ressources approprié, utilisez la commande az group create pour créer les nouveaux groupes de ressources dont vous avez besoin.

az group create --name "<group>" --location "<region>"
Choix Descriptif
nom Nom du groupe de ressources à créer.
lieu La région dans laquelle créer le groupe de ressources.

Pour plus d’informations, consultez le Guide pratique pour gérer des groupes de ressources Azure avec Azure CLI.

Créer une ressource d’identité

  1. Pour créer une identité managée affectée par l’utilisateur, utilisez la commande az identity create. Si l’opération s’effectue normalement, la commande génère une sortie JSON.

    az identity create --resource-group "<group>" --name "<identity>"
    
    Choix Descriptif
    groupe de ressources Nom du groupe de ressources dans lequel créer l’identité.
    nom Le nom de la ressource d’identité à créer.

    Pour plus d’informations, consultez la référence az identity.

  2. Enregistrez les valeurs dont vous aurez besoin dans les étapes ultérieures.

    1. Nom du groupe de ressources de la ressource d’identité
    2. Nom de la ressource d’identité
    3. clientId de la sortie de la commande

Créez les ressources avec des modèles ARM

Créez les ressources App Service et Azure Bot pour votre bot. Les deux étapes utilisent un modèle ARM et la commande Azure CLI az deployment group create pour créer la ressource ou les ressources.

  1. Créez une ressource App Service pour votre bot. L’App Service peut se trouver dans un plan App Service nouveau ou existant.

    Pour obtenir des instructions détaillées, consultez Utiliser Azure CLI pour créer un App Service.

  2. Créer une ressource Azure Bot pour votre bot.

    Pour obtenir des instructions détaillées, consultez Utiliser Azure CLI pour créer ou mettre à jour un Azure Bot.

Important

Ces étapes peuvent être effectuées dans n’importe quel ordre. Toutefois, si vous créez d’abord votre Azure Bot, vous devez mettre à jour son point de terminaison de messagerie après avoir créé votre ressource App Service.

Mettre à jour les paramètres de configuration du projet

Informations sur l’identité du bot

Suivez ces étapes pour ajouter des informations d'identité au fichier de configuration de votre bot. Le fichier diffère selon le langage de programmation utilisé pour créer le bot.

Important

  • La version Java du Bot Framework SDK (Kit de développement logiciel) ne prend en charge que les bots multilocataires.
  • Les versions C#, JavaScript et Python prennent en charge les trois types d’applications pour la gestion de l’identité du bot.
Langue Nom de fichier Remarques
C# appsettings.json Prend en charge les trois types d'applications pour gérer l'identité de votre bot.
JavaScript .Env Prend en charge les trois types d'applications pour gérer l'identité de votre bot.
Java application.properties Prend uniquement en charge les bots multilocataires.
Python config.py Prend en charge les trois types d'applications pour gérer l'identité de votre bot.

Les informations d'identité que vous devez ajouter dépendent du type d'application du bot. Fournissez les valeurs suivantes dans votre fichier de configuration :

Disponible pour les bots C#, JavaScript et Python.

Propriété Valeur
MicrosoftAppType UserAssignedMSI
MicrosoftAppId ID client de l'identité managée affectée par l'utilisateur.
MicrosoftAppPassword Non applicable. Laissez cette valeur vide pour un bot d'identité managée affecté par l'utilisateur.
MicrosoftAppTenantId L'identifiant du locataire de l'identité managée affectée par l'utilisateur.

Préparer les fichiers de votre projet

Préparez vos fichiers projet avant de pouvoir déployer votre bot.

  1. Basculez vers le dossier racine de votre projet. Pour C#, la racine est le dossier qui contient le fichier .csproj.

  2. Effectuez une régénération propre en mode publication.

  3. Si vous ne l’avez pas déjà fait, exécutez az bot prepare-deploy pour ajouter des fichiers requis à la racine de votre répertoire de code source local. Cette commande génère un fichier .deployment dans le dossier du projet de votre bot.

    az bot prepare-deploy --lang Csharp --code-dir "." --proj-file-path "<my-cs-proj>"
    
    Choix Descriptif
    Lang Langage ou runtime du bot. Utiliser Csharp.
    code-dir Répertoire dans lequel placer les fichiers de déploiement générés. Utilisez le dossier racine de votre projet. L’emplacement par défaut est le répertoire actif.
    proj-file-path Chemin d’accès au fichier .csproj pour votre bot, par rapport à l’option code-dir.
  4. Dans le dossier racine de votre projet, créez un fichier zip qui contient tous les fichiers et sous-dossiers.

Publier votre bot sur Azure

À ce stade, vous êtes prêt à déployer du code pour votre bot sur votre ressource App Service.

Remarque

Cette étape peut prendre quelques minutes. Il peut également s’écouler plusieurs minutes supplémentaires entre le moment où le déploiement se termine et le moment où le bot est disponible pour le test.

Exécutez la az webapp deploy commande à partir de la ligne de commande pour effectuer le déploiement à l’aide du déploiement push zip Kudu pour votre service d’application (application web).

Choix Descriptif
groupe de ressources Nom du groupe de ressources Azure qui contient votre bot.
nom Nom du service d’application utilisé précédemment.
src Chemin d’accès relatif ou absolu au fichier projet compressé que vous avez créé.

Conseil

Par défaut, cette commande est déployée sur l’emplacement de production. Utilisez le paramètre facultatif --slot pour spécifier un emplacement différent. Pour plus d’informations, consultez la documentationaz webapp deploy commandes.

Tester dans Chat Web

  1. Dans votre navigateur, accédez au Portail Azure.
  2. Accédez à votre ressource de bot.
  3. Ouvrez le volet Tester dans Web Chat.
  4. Interagissez avec votre bot déployé.

Pour en savoir plus sur l’inscription d’un bot, consultez Inscrire un bot sur Bot Service.

Nettoyer les ressources

Si vous ne pensez pas publier cette application, supprimez les ressources associées en effectuant les étapes suivantes :

  1. Sur le portail Azure, ouvrez le groupe de ressources de votre bot.
    1. Cliquez sur Supprimer le groupe de ressources pour supprimer le groupe et toutes les ressources qu’il contient.
    2. Dans le volet de confirmation, saisissez le nom du groupe de ressources, puis sélectionnez Supprimer.
  2. Si vous avez créé une application à locataire unique ou multilocataire :
    1. Accédez au panneau Microsoft Entra ID.
    2. Recherchez l’inscription d’application que vous avez utilisée pour votre bot et supprimez-la.

Ressources supplémentaires

Consultez ces articles pour plus d’informations sur les applications et ressources Azure utilisées pour héberger un bot.

Objet Article
Azure CLI (Interface de ligne de commande Azure) Qu’est-ce qu’Azure CLI ?
Gestion des abonnements Azure Guide pratique pour gérer les abonnements Azure avec Azure CLI
Régions Azure Régions et zones de disponibilité
Gestion des groupes de ressources et des ressources Manage Azure resources (Gérer des ressources Azure)
Identités managées Que sont les identités managées pour les ressources Azure ?
Application à locataire unique et application multilocataire Location dans Microsoft Entra ID
Applications Web App Service
Ressources de calcul pour les applications Web Plans App Service
Modèles Azure Resource Manager (modèles ARM) Qu’est-ce qu’un modèle ARM ? et Comment utiliser des modèles de déploiement Azure Resource Manager (ARM) avec Azure CLI
Facturation Azure Gestion de la facturation et des coûts

Fichiers Kudu

La commande de déploiement d’application Web utilise Kudu pour déployer des bots C#, JavaScript et Python. Quand vous utilisez l’API de déploiement à partir d’un fichier zip non configuré pour déployer le code de votre bot, le comportement est le suivant :

Par défaut, Kudu part du principe que les déploiements à partir de fichiers zip sont prêts à être exécutés et ne nécessitent aucune étape de génération supplémentaire pendant le déploiement, telle que npm install ou dotnet restore/dotnet publish.

Il est important d’inclure votre code généré et toutes les dépendances nécessaires dans le fichier zip déployé, sans quoi votre bot ne fonctionnera pas comme prévu. Pour plus d’informations, consultez la documentation Azure pour Déployer des fichiers dans App Service.

Étapes suivantes