Déployer une application Recherche Azure AI C# sur Azure Container Apps

Note

Recherche Azure AI est disponible via le portail Azure, les API REST et les SDK Azure. Il sous-tend également Foundry IQ, la couche de connaissances managée qui transforme le contenu d’entreprise en bases de connaissances réutilisables et prenant en charge les autorisations pour les agents dans le portail Microsoft Foundry.

Déployez le site web activé pour la recherche sur Azure Container Apps à l’aide de l’interface CLI Azure développeur (azd). Ce déploiement inclut le client React, l’API .NET, Recherche Azure AI, l’identité managée et la prise en charge des ressources Azure.

Le déploiement utilise l’identité managée comme méthode d’authentification par défaut pour Recherche Azure AI. Vous pouvez choisir d’utiliser l’authentification basée sur des clés en définissant la valeur USE_KEYLESS_AUTH sur avant false le déploiement.

Connectez-vous à Azure

  1. Dans Visual Studio Code, ouvrez un terminal à la racine du référentiel, par azure-search-static-web-appexemple .

  2. Connectez-vous à Azure à l’aide de azd.

    azd auth login
    
  3. Si vous y êtes invité par votre navigateur, suivez le flux de connexion à l'aide du compte Azure que vous utilisez pour ce didacticiel.

Créer un environnement azd

  • Créez un azd environnement. Remplacez par YOUR-ENVIRONMENT-NAME un nom court qui identifie ce déploiement de didacticiel.

    azd env new YOUR-ENVIRONMENT-NAME
    

(Facultatif) Configurer l’authentification basée sur des clés

La méthode d’authentification par défaut est une identité managée. La plupart des environnements peuvent donc ignorer cette section. Terminez cette section uniquement si votre environnement nécessite des clés API.

Réglez USE_KEYLESS_AUTH sur false.

azd env set USE_KEYLESS_AUTH false

Si vous ne définissez USE_KEYLESS_AUTHpas, le déploiement utilise l’identité managée. L’infrastructure Bicep accorde à l’identité de l’application conteneur l’accès au plan de données Recherche Azure AI.

Déployer avec azd up

  1. Depuis la racine du référentiel, exécutez azd up.

    azd up
    
  2. Lorsque vous y êtes invité, sélectionnez l’abonnement Azure et l’emplacement des ressources.

  3. Attendez de azd provisionner l’infrastructure, de générer les conteneurs, d’envoyer (push) les images et de déployer les services sur Azure Container Apps.

  4. Passez en revue la sortie après le déploiement. La sortie inclut les noms de domaine complets du client et du serveur pour le déploiement Azure Container Apps.

    AZURE_CLIENT_URL: <client-container-app-fqdn>
    AZURE_SERVER_URL: <server-container-app-fqdn>
    SEARCH_SERVICE_NAME: <search-service-name>
    

    Utilisez la AZURE_CLIENT_URL valeur pour ouvrir le site web. L’application cliente appelle l’application serveur via le point de terminaison configuré pendant le déploiement.

    Le déploiement a également créé le service Recherche Azure AI et chargé automatiquement l’index good-books via le postprovision hook dans l’exemple de référentiel.

Utiliser la recherche dans votre site web Container Apps

  1. Ouvrez le nom de domaine complet du client à partir de la azd up sortie dans un navigateur.

  2. Dans la barre de recherche du site web, entrez une requête de recherche, telle que code. La fonctionnalité de saisie semi-automatique suggère des titres de livre correspondants.

  3. Sélectionnez une suggestion ou continuez à entrer votre requête. Sélectionnez Entrée lorsque vous avez terminé votre requête de recherche.

  4. Passez en revue les résultats, puis sélectionnez un livre pour afficher plus de détails.

Résolution des problèmes

Si l’application web ne déploie pas ou ne fonctionne pas, utilisez la liste suivante pour déterminer et résoudre le problème :

  • A-t-il azd up terminé ?

    Passez en revue la azd up sortie pour la première étape d’approvisionnement, de génération ou de déploiement ayant échoué. Si le déploiement s’arrête pendant l’approvisionnement, vérifiez les autorisations de votre abonnement et la région sélectionnée. Si le déploiement s’arrête pendant la génération ou le déploiement du conteneur, réexécutez azd up après avoir résolu le problème signalé.

  • Pouvez-vous ouvrir le point de terminaison du client ?

    Ouvrez la AZURE_CLIENT_URL valeur à partir de la azd up sortie. Si la page ne se charge pas, accédez au portail Azure, ouvrez l'application conteneur cliente et passez en revue son état de révision et ses journaux.

  • Le client peut-il appeler le point de terminaison du serveur ?

    Ouvrez vos outils de développement de navigateur et passez en revue les appels réseau à partir de l’application cliente. Si les appels à l’API échouent, vérifiez que l’application conteneur de serveur est en cours d’exécution et que l’application cliente a reçu le nom de domaine complet du serveur pendant le déploiement.

  • Le serveur peut-il interroger Recherche Azure AI ?

    Si des recherches retournent des erreurs, passez en revue les journaux d’activité de l’application conteneur de serveur. Pour l’identité managée, vérifiez que l’identité a Recherche Azure AI accès au plan de données. Pour l’authentification basée sur des clés, vérifiez que vous avez défini USE_KEYLESS_AUTHfalse sur avant le déploiement et que l’environnement de conteneur généré contient la configuration du service de recherche.

Nettoyer les ressources

Permet azd down --purge de supprimer les ressources Azure créées par ce didacticiel. L’indicateur --purge supprime définitivement les ressources qui prennent en charge la suppression réversible, au lieu de les laisser dans un état récupérable pendant leur période de rétention. Le purge évite les conflits de nommage si vous redéployez ce didacticiel ultérieurement.

  1. À partir de la racine du référentiel, exécutez la commande de nettoyage.

    azd down --purge
    
  2. Passez en revue les ressources qui azd répertorient.

  3. Quand vous y êtes invité, confirmez la suppression.

Si vous avez créé un service Recherche Azure AI en dehors du azd déploiement, accédez à votre service de recherche dans le portail Azure, puis sélectionnez Supprimer en haut de la page.

Étape suivante