Partager via


Tutoriel : générer et déployer un copilote de questions et réponses avec un flux rapide dans Azure AI Studio

Important

Certaines des fonctionnalités décrites dans cet article peuvent uniquement être disponibles en préversion. Cette préversion est fournie sans contrat de niveau de service, nous la déconseillons dans des charges de travail de production. Certaines fonctionnalités peuvent être limitées ou non prises en charge. Pour plus d’informations, consultez Conditions d’Utilisation Supplémentaires relatives aux Évaluations Microsoft Azure.

Dans ce tutoriel sur Azure AI Studio, vous utilisez l’IA générative et le flux rapide pour générer, configurer et déployer un copilote pour votre entreprise de vente au détail appelée Contoso. Votre entreprise de vente au détail se spécialise dans l’équipement de camping extérieur et les vêtements.

Le copilote doit répondre à des questions sur vos produits et services. Il doit également répondre à des questions sur vos clients. Par exemple, le copilote peut répondre à des questions telles que « Combien coûte les chaussures de randonnée TrailWalker ? » et « Combien de chaussures de randonnée TrailWalker Daniel Wilson a-t-il acheté ? ».

Les étapes de ce tutoriel sont les suivantes :

  1. Ajoutez vos données au terrain de jeu de conversation.
  2. Créez un flux rapide à partir du terrain de jeux.
  3. Personnaliser le flux rapide avec plusieurs sources de données.
  4. Évaluez le flux à l’aide d’un jeu de données d’évaluation des questions et réponses.
  5. Déployez le flux pour la consommation.

Prérequis

Ajouter vos données et réessayer le modèle de conversation

Dans Démarrage rapide avec les terrains de jeu AI Studio (c’est un prérequis pour ce tutoriel), vous pouvez observer comment votre modèle répond sans vos données. Maintenant, vous ajoutez vos données au modèle pour lui permettre de répondre aux questions relatives à vos produits.

Pour suivre cette section, vous avez besoin d’une copie locale des données de produit. Le dépôt Azure-Samples/aistudio-python-quickstart-sample sur GitHub contient des exemples d’informations sur les clients et les produits de vente au détail qui conviennent au scénario de ce tutoriel. Clonez le dépôt ou copiez les fichiers à partir de 3-product-info.

Important

La fonctionnalité Ajouter vos données dans le terrain de jeu Azure AI Studio ne prend pas en charge l’utilisation d’un réseau virtuel ou d’un point de terminaison privé sur les ressources suivantes :

  • Azure AI Search
  • Azure OpenAI
  • Ressource de stockage

Suivez ces étapes pour ajouter vos données au terrain de jeu de conversation afin d’aider l’assistant à répondre aux questions sur vos produits. Vous ne modifiez pas le modèle déployé lui-même. Vos données sont stockées séparément et en toute sécurité dans votre abonnement Azure.

  1. Accédez à votre projet dans Azure AI Studio.

  2. Sélectionnez Terrains de jeu>Conversation dans le volet de gauche.

  3. Sélectionnez votre modèle de conversation déployé dans la liste déroulante Déploiement.

    Capture d’écran du terrain de jeu de conversation avec le mode conversation et le modèle sélectionnés.

  4. Sur le côté gauche du terrain de jeu de conversation, sélectionnez Ajouter vos données>+ Ajouter une nouvelle source de données.

    Capture d’écran du terrain de jeu de conversation avec l’option permettant d’ajouter une source de données visible.

  5. Dans le menu déroulant Source de données, sélectionnez Charger les fichiers.

    Capture d’écran des options de la sélection de source de données.

  6. Sélectionnez Charger>Charger les fichiers pour parcourir vos fichiers locaux.

  7. Sélectionnez les fichiers à charger. Sélectionnez les fichiers d’informations produit (3-product-info) que vous avez téléchargés ou créés précédemment. Ajoutez tous les fichiers maintenant. Vous ne pourrez pas ajouter plus de fichiers plus tard dans la même session de terrain de jeu.

  8. Sélectionnez Charger pour charger le fichier dans votre compte de stockage Blob Azure. Sélectionnez ensuite Suivant.

    Capture d’écran de la boîte de dialogue pour sélectionner et charger des fichiers.

  9. Sélectionnez un service Recherche Azure AI. Dans cet exemple, nous sélectionnons Connecter une autre ressource Recherche Azure AI dans la liste déroulante Sélectionner le service Recherche Azure AI. Si vous n’avez pas de ressource de recherche, vous pouvez en créer une en sélectionnant Créer une ressource Recherche Azure AI. Revenez ensuite à cette étape pour vous connecter et la sélectionner.

    Capture d’écran des options de la sélection de la ressource de recherche.

  10. Recherchez votre service Recherche Azure AI, puis sélectionnez Ajouter une connexion.

    Capture d’écran de la page pour ajouter une connexion de service de recherche.

  11. Pour le Nom de l’index, entrez product-info et sélectionnez Suivant.

  12. Dans la page Paramètres de recherche sous Paramètres vectorielles, décochez la case Ajouter une recherche vectorielle à cette ressource de recherche. Ce paramètre permet de déterminer la façon dont le modèle répond aux requêtes. Sélectionnez ensuite Suivant.

    Remarque

    Si vous ajoutez une recherche vectorielle, d’autres options sont disponibles ici pour un coût supplémentaire.

  13. Passez en revue vos paramètres, puis sélectionnez Créer.

  14. Dans le terrain de jeu, vous pouvez voir que l’ingestion de vos données est en cours. Ce processus peut prendre quelques minutes. Avant de continuer, attendez de voir la source de données et le nom de l’index à la place de l’état.

    Capture d’écran du terrain de jeu de conversation avec l’état de l’ingestion des données en vue.

  15. Entrez un nom pour la configuration du terrain de jeu et sélectionnez Enregistrer>Enregistrer la configuration. Tous les éléments de configuration sont enregistrés par défaut. Les éléments comprennent un déploiement, un message système, un message de sécurité, des paramètres, des données ajoutées, des exemples et des variables. L’enregistrement d’une configuration portant le même nom sera enregistré sur la version précédente.

    Capture d’écran du nom de la configuration du terrain de jeu et du bouton Enregistrer.

  16. Vous pouvez maintenant converser avec le modèle qui pose la même question qu’avant (« Combien coûtent les chaussures de randonnée TrailWalker ? »), et cette fois, il utilise des informations de vos données pour construire la réponse. Vous pouvez développer le bouton références pour afficher les données utilisées.

Créez un flux rapide à partir du terrain de jeux

Maintenant, vous pouvez demander « Comment puis-je personnaliser davantage ce copilote ? » Vous pouvez ajouter plusieurs sources de données, comparer différentes invites ou les performances de plusieurs modèles. Un flux rapide sert de flux de travail exécutable qui simplifie le développement de votre application IA basée sur LLM. Il fournit une infrastructure complète pour la gestion du flux de données et du traitement au sein de votre application. Vous utilisez le flux rapide pour optimiser les messages envoyés au modèle de conversation du copilote.

Dans cette section, vous allez apprendre à passer au flux rapide à partir du terrain de jeu. Vous exportez l’environnement de conversation de terrain de jeu, y compris les connexions aux données que vous avez ajoutées. Plus loin dans ce tutoriel, vous évaluez le flux, puis déployez le flux pour consommation.

Remarque

Les modifications apportées dans le flux rapide ne sont pas appliquées en arrière pour mettre à jour l’environnement de terrain de jeu.

Vous pouvez créer un flux rapide à partir du terrain de jeu en procédant comme suit :

  1. Accédez à votre projet dans AI Studio.

  2. Sélectionnez Terrains de jeu>Conversation dans le volet de gauche.

  3. Étant donné que nous utilisons nos propres données, vous devez sélectionner Ajouter vos données. Vous devez déjà avoir un index nommé informations sur le produit que vous avez créé précédemment dans le terrain de jeu de conversation. Sélectionnez-le dans la liste déroulante Sélectionner l’index de projet disponible. Sinon, créez d’abord un index avec vos données de produit, puis revenez à cette étape.

  4. Sélectionnez flux d’invite dans le menu situé au-dessus du volet de session de conversation.

  5. Entrez un nom de dossier pour votre flux rapide. Sélectionnez ensuite Ouvrir. AI Studio exporte l'environnement de discussion du terrain de jeu pour flux d’invite. L’exportation inclut les connexions aux données que vous avez ajoutées.

    Capture d’écran de la boîte de dialogue Ouvrir dans le flux d’invite.

Au sein d’un flux, les nœuds occupent le devant de la scène, représentant des outils spécifiques dotés de fonctionnalités uniques. Ces nœuds gèrent le traitement des données, l’exécution des tâches et les opérations algorithmiques, avec des entrées et des sorties. En connectant des nœuds, vous établissez une chaîne transparente d’opérations qui guide le flux de données à travers votre application. Pour plus d’informations, consultez les outils de flux rapide.

Pour faciliter la configuration des nœuds et leur ajustement, une représentation visuelle de la structure de flux de travail est fournie par le biais d’un graphique DAG (graphe orienté acyclique). Ce graphique présente la connectivité et les dépendances entre les nœuds, offrant une vue d’ensemble claire et globale du flux de travail. Les nœuds du graphique illustré ici sont représentatifs de l’expérience de conversation de terrain de jeu que vous avez exportée au flux rapide.

Capture d’écran du graphique par défaut exporté à partir du terrain de jeu pour le flux d’invite.

Dans le flux rapide, vous devez également voir :

  • Bouton Enregistrer : vous pouvez enregistrer votre flux d’invite à tout moment en sélectionnant Enregistrer dans le menu supérieur. Veillez à enregistrer régulièrement votre flux rapide lorsque vous apportez des modifications dans ce didacticiel.
  • Bouton Démarrer la session de calcul : vous devez démarrer une session de calcul pour exécuter votre flux d’invite. Vous pouvez démarrer la session plus loin dans le tutoriel. Vous entraînez des coûts pour les instances de calcul pendant leur exécution. Pour plus d’informations, consultez comment créer une session de calcul.

Capture d’écran des boutons enregistrer et démarrer la session dans votre flux.

Vous pouvez revenir au flux d’invite à tout moment en sélectionnant flux d’invite dans Outils dans le menu de gauche. Sélectionnez ensuite le dossier de flux d’invite que vous avez créé précédemment.

Capture d’écran de la liste de vos flux d’invite.

Personnaliser le flux rapide avec plusieurs sources de données

précédemment dans le terrain de jeu de conversation AI Studio, vous ajouté vos données pour créer un index de recherche qui contenait des données de produit pour le copilote Contoso. Jusqu’à présent, les utilisateurs pouvaient seulement se renseigner sur les produits avec des questions telles que « Combien coûtent les chaussures de randonnée TrailWalker ? ». Mais ils ne peuvent pas obtenir des réponses à des questions telles que « Combien de chaussures de randonnée TrailWalker Daniel Wilson a-t-il acheté ? » Pour activer ce scénario, nous ajoutons un autre index avec des informations client au flux.

Créer l’index d’informations client

Pour continuer, vous avez besoin d’une copie locale d’exemples d’informations client. Pour plus d’informations et des liens vers des exemples de données, consultez les conditions préalables.

Suivez ces instructions pour créer un index. Vous revenez à votre flux d’invite plus loin dans ce tutoriel pour ajouter les informations client au flux. Vous pouvez ouvrir un nouvel onglet dans votre navigateur pour suivre ces instructions, puis revenir à votre flux d’invite.

  1. Accédez à votre projet dans AI Studio.

  2. Sélectionnez Index dans le menu de gauche. Notez que vous disposez déjà d’un index nommé product-info que vous avez créé précédemment dans le terrain de jeu du chat.

    Capture d’écran de la page index avec le bouton pour créer un index.

  3. Sélectionnez + Nouveau d’index. Vous accédez à l’Assistant Créer un index .

  4. Dans la page Données sources, sélectionnez Charger des fichiers dans la liste déroulante Source de données. Sélectionnez ensuite Charger>Charger des fichiers pour parcourir vos fichiers locaux.

  5. Sélectionnez les fichiers d’informations client que vous avez téléchargés ou créés précédemment. Consultez les prérequis. Sélectionnez ensuite Suivant.

    Capture d’écran des options de sélection de la source de données client.

  6. Sélectionnez la même connexion au service Azure AI Search (contosooutdooraisearch) que celle que vous avez utilisée pour votre index d’informations sur le produit. Sélectionnez ensuite Suivant.

  7. Entrez customer-info pour le nom de l’index.

    Capture d’écran du service Recherche Azure AI et du nom de l’index.

  8. Sélectionnez une machine virtuelle pour exécuter des travaux d’indexation. L’option par défaut est Sélection automatique. Sélectionnez ensuite Suivant.

  9. Dans la page Paramètres de recherche sous Paramètres vectorielles, décochez la case Ajouter une recherche vectorielle à cette ressource de recherche. Ce paramètre permet de déterminer la façon dont le modèle répond aux requêtes. Sélectionnez ensuite Suivant.

    Remarque

    Si vous ajoutez une recherche vectorielle, d’autres options sont disponibles ici pour un coût supplémentaire.

  10. Passez en revue les détails que vous avez entrés, puis sélectionnez Créer.

    Capture d’écran de la page de création d’index de révision et de fin.

    Remarque

    Vous utilisez l’index customer-info et la connexion contosooutdooraisearch dans votre service Recherche Azure AI dans le flux d’invite plus loin dans ce tutoriel. Si les noms que vous entrez diffèrent de ce qui est spécifié ici, veillez à utiliser les noms que vous avez entrés dans le reste du tutoriel.

  11. Vous accéderez à la page de détails de l’index dans laquelle vous pourrez voir l’état de votre création d’index.

    Capture d’écran des détails de l’index d’informations client.

Pour plus d’informations sur la création d’un index, consultez Créer un index.

Créer une session de calcul nécessaire pour le flux d’invite

Une fois que vous avez terminé de créer votre index, revenez à votre flux d’invite et démarrez la session de calcul. Le flux d’invite nécessite une session de calcul à exécuter.

  1. Accédez à votre projet.
  2. Sélectionnez flux d’invite dans Outils dans le menu de gauche. Sélectionnez ensuite le dossier de flux d’invite que vous avez créé précédemment.
  3. Sélectionnez Démarrer la session de calcul dans le menu supérieur.

Pour créer une instance de calcul et une session de calcul, vous pouvez également suivre les étapes décrites dans comment créer une session de calcul.

Pour suivre le reste du didacticiel, assurez-vous que votre session de calcul est en cours d’exécution.

Important

Vous êtes facturé pour les instances de calcul pendant leur exécution. Pour éviter d’entraîner des coûts Azure inutiles, suspendez l’instance de calcul lorsque vous ne travaillez pas activement dans le flux rapide. Pour plus d’informations, consultez Comment démarrer et arrêter le calcul.

Ajouter des informations client au flux

Une fois que vous avez créé votre index, revenez à votre flux rapide et procédez comme suit pour ajouter les informations client au flux :

  1. Vérifiez que vous disposez d’une session de calcul en cours d’exécution. Si vous n’en avez pas, consultez créer une session de calcul dans la section précédente.

  2. Sélectionnez + Plus d’outils dans le menu supérieur, puis sélectionnez recherche d’index dans la liste des outils.

    Capture d’écran de la sélection de l’outil de recherche d’index dans le flux d’invite.

  3. Nommez le nouveau nœud queryCustomerIndex , puis sélectionnez Ajouter.

  4. Sélectionnez la zone de texte mlindex_content dans le nœud queryCustomerIndex.

    Capture d’écran de la zone de texte mlindex_content dans le nœud de recherche d’index.

    La boîte de dialogue Générer s’ouvre. Vous utilisez cette boîte de dialogue pour configurer le nœud queryCustomerIndex pour vous connecter à votre index d’informations client.

  5. Pour la valeur index_type, sélectionnez Recherche Azure AI.

  6. Sélectionnez ou entrez les valeurs suivantes :

    Nom Valeur
    acs_index_connection Le nom de votre connexion au service Search Azure AI (tel que contosooutdooraisearch)
    acs_index_name customer-info
    acs_content_field content
    acs_metadata_field meta_json_string
    semantic_configuration azuremldefault
    embedding_type Aucun
  7. Sélectionnez Save (Enregistrer) pour enregistrer vos paramètres.

  8. Sélectionnez ou entrez les valeurs suivantes pour le nœud queryCustomerIndex :

    Nom Valeur
    queries ${extractSearchIntent.output}
    query_type Mot clé
    topK 5

    Vous pouvez voir que le nœud queryCustomerIndex est connecté au nœud extractSearchIntent dans le graphique.

    Capture d’écran du nœud de flux d’invite pour récupérer les informations sur le produit.

  9. Sélectionnez Enregistrer dans le menu supérieur pour enregistrer vos modifications. N’oubliez pas d’enregistrer régulièrement votre flux d’invite lorsque vous apportez des modifications.

Connecter les informations client au flux

Dans la section suivante, vous agrégez les informations sur le produit et le client pour le générer dans un format que le modèle de langage volumineux peut utiliser. Mais tout d’abord, vous devez connecter les informations client au flux.

  1. Sélectionnez l’icône de sélection en regard de + Plus d’outils , puis sélectionnez mode fichier brut pour basculer vers le mode fichier brut. Ce mode vous permet de copier et coller des nœuds dans le graphique.

    Capture d’écran de l’option mode fichier brut dans le flux d’invite.

  2. Remplacez toutes les instances de querySearchResource par queryProductIndex dans le graphique. Nous renommons le nœud pour mieux refléter qu’il récupère les informations de produit et contraste avec le nœud queryCustomerIndex que vous avez ajouté au flux.

  3. Renommez et remplacez toutes les instances de chunkDocuments par chunkProductDocuments dans le graphique.

  4. Renommez et remplacez toutes les instances de selectChunks par selectProductChunks dans le graphique.

  5. Copiez et collez les segmentProductDocuments et selectProductChunks nœuds pour créer des nœuds similaires pour les informations client. Renommez les nouveaux nœuds chunkCustomerDocuments et selectCustomerChunks respectivement.

  6. Dans le nœud chunkCustomerDocuments , remplacez l’entrée ${queryProductIndex.output} par ${queryCustomerIndex.output}.

  7. Dans le selectCustomerChunks nœud, remplacez l’entrée ${chunkProductDocuments.output} par ${chunkCustomerDocuments.output}.

  8. Sélectionnez Enregistrer dans le menu supérieur pour enregistrer vos modifications.

    Capture d'écran de l'option permettant d'enregistrer le fichier yaml en mode fichier brut.

    À présent, le fichier flow.dag.yaml doit inclure des nœuds (entre autres) qui ressemblent à l’exemple suivant :

    - name: chunkProductDocuments
      type: python
      source:
        type: code
        path: chunkProductDocuments.py
      inputs:
        data_source: Azure AI Search
        max_tokens: 1050
        queries: ${extractSearchIntent.output}
        query_type: Keyword
        results: ${queryProductIndex.output}
        top_k: 5
      use_variants: false
    - name: selectProductChunks
      type: python
      source:
        type: code
        path: filterChunks.py
      inputs:
        min_score: 0.3
        results: ${chunkProductDocuments.output}
        top_k: 5
      use_variants: false
    - name: chunkCustomerDocuments
      type: python
      source:
        type: code
        path: chunkCustomerDocuments.py
      inputs:
        data_source: Azure AI Search
        max_tokens: 1050
        queries: ${extractSearchIntent.output}
        query_type: Keyword
        results: ${queryCustomerIndex.output}
        top_k: 5
      use_variants: false
    - name: selectCustomerChunks
      type: python
      source:
        type: code
        path: filterChunks.py
      inputs:
        min_score: 0.3
        results: ${chunkCustomerDocuments.output}
        top_k: 5
      use_variants: false
    

Agréger les informations sur le produit et le client

À ce stade, le flux d’invite utilise uniquement les informations sur le produit.

  • extractSearchIntent extrait l’intention de recherche de la question de l’utilisateur.
  • queryProductIndex récupère les informations du produit à partir de l’index product-info.
  • L'outil LLM (pour les grands modèles de langage) reçoit une réponse formatée via les nœuds chunkProductDocuments>selectProductChunks>formatGeneratedReplyInputs.

Vous devez vous connecter et agréger les informations du produit et du client pour le générer dans un format que l’outil LLM peut utiliser. Procédez comme suit pour agréger les informations sur le produit et le client :

  1. Sélectionnez Python dans la liste des outils.

  2. Nommez l’outil aggregateChunks, puis sélectionnez Ajouter.

  3. Copiez et collez le code Python suivant pour remplacer tout le contenu dans le bloc de code aggregateChunks.

    from promptflow import tool
    from typing import List
    
    @tool
    def aggregate_chunks(input1: List, input2: List) -> str:
        interleaved_list = []
        for i in range(max(len(input1), len(input2))):
            if i < len(input1):
                interleaved_list.append(input1[i])
            if i < len(input2):
                interleaved_list.append(input2[i])
        return interleaved_list
    
  4. Sélectionnez le bouton Valider et analyser l’entrée pour valider les entrées du nœud aggregateChunks. Si les entrées sont valides, le flux rapide analyse les entrées et crée les variables nécessaires à utiliser dans votre code.

    Capture d’écran du nœud de flux d’invite pour l’agrégation des informations sur le produit et le client.

  5. Modifiez le nœud aggregateChunks pour connecter le produit et les informations client. Définissez les entrées sur les valeurs suivantes :

    Nom Type Value
    input1 list ${selectProductChunks.output}
    input2 list ${selectCustomerChunks.output}

    Capture d’écran des entrées à modifier dans le nœud segments d’agrégation.

  6. Sélectionnez le nœud shouldGenerateReply à partir du graphique. Sélectionnez ou entrez ${aggregateChunks.output} pour l'entrée des morceaux.

  7. Sélectionnez le nœud formatGenerateReplyInputs à partir du graphique. Sélectionnez ou entrez ${aggregateChunks.output} pour l'entrée des morceaux.

  8. Sélectionnez le nœud de sorties dans le graphique. Sélectionnez ou entrez ${aggregateChunks.output} pour l'entrée des morceaux.

  9. Sélectionnez Enregistrer dans le menu supérieur pour enregistrer vos modifications. N’oubliez pas d’enregistrer régulièrement votre flux d’invite lorsque vous apportez des modifications.

Vous pouvez maintenant voir le nœud aggregateChunks dans le graphique. Le nœud connecte les informations sur le produit et le client pour les afficher dans un format que l'outil LLM peut utiliser.

Capture d’écran des entrées et sorties du nœud segments d’agrégation dans le graphique.

Discuter dans le flux rapide avec des informations sur le produit et le client

À présent, vous disposez à la fois des informations sur le produit et le client dans le flux rapide. Vous pouvez discuter avec le modèle en flux rapide et obtenir des réponses aux questions telles que « Combien de chaussures de randonnée TrailWalker Daniel Wilson a-t-il acheté ? » Avant de passer à une évaluation plus formelle, vous pouvez éventuellement discuter avec le modèle pour voir comment il répond à vos questions.

  1. Continuez à partir de la section précédente avec le nœud de sorties sélectionné. Assurez-vous que le bouton radio Sortie de conversation est sélectionné dans la sortie de réponse. Sinon, l’ensemble complet de documents est retourné en réponse à la question dans la conversation.

  2. Sélectionnez Conversation dans le menu supérieur dans le flux rapide pour essayer la conversation.

  3. Entrez « Combien de chaussures de randonnée TrailWalker Daniel Wilson a-t-il acheté ? », puis sélectionnez l’icône de flèche droite pour envoyer.

    Remarque

    La réponse du modèle peut prendre quelques secondes. Vous pouvez vous attendre à ce que le temps de réponse soit plus rapide lorsque vous utilisez un flux déployé.

  4. La réponse est ce que vous attendez. Le modèle utilise les informations client pour répondre à la question.

    Capture d’écran de la réponse de l’assistant avec les données de mise au point du produit et du client.

Évaluez le flux à l’aide d’un jeu de données d’évaluation des questions et réponse

Dans AI Studio, vous souhaitez évaluer le flux avant de déployer le flux pour consommation.

Dans cette section, vous utilisez l’évaluation intégrée pour évaluer votre flux avec un jeu de données d’évaluation de questions et réponses. L’évaluation intégrée utilise des métriques assistées par l’IA pour évaluer votre flux : niveau de base, pertinence et score de récupération. Pour plus d’informations, consultez les métriques d’évaluation intégrées.

Créer une évaluation

Vous avez besoin d’un jeu de données d’évaluation de questions et réponses qui contient des questions et réponses pertinentes pour votre scénario. Créez un fichier nommé localement qa-evaluation.jsonl. Copiez et collez les questions et réponses suivantes ("truth") dans le fichier.

{"question": "What color is the CozyNights Sleeping Bag?", "truth": "Red", "chat_history": [], }
{"question": "When did Daniel Wilson order the BaseCamp Folding Table?", "truth": "May 7th, 2023", "chat_history": [] }
{"question": "How much does TrailWalker Hiking Shoes cost? ", "truth": "$110", "chat_history": [] }
{"question": "What kind of tent did Sarah Lee buy?", "truth": "SkyView 2 person tent", "chat_history": [] }
{"question": "What is Melissa Davis's phone number?", "truth": "555-333-4444", "chat_history": [] }
{"question": "What is the proper care for trailwalker hiking shoes?", "truth": "After each use, remove any dirt or debris by brushing or wiping the shoes with a damp cloth.", "chat_history": [] }
{"question": "Does TrailMaster Tent come with a warranty?", "truth": "2 years", "chat_history": [] }
{"question": "How much did David Kim spend on the TrailLite Daypack?", "truth": "$240", "chat_history": [] }
{"question": "What items did Amanda Perez purchase?", "truth": "TrailMaster X4 Tent, TrekReady Hiking Boots (quantity 3), CozyNights Sleeping Bag, TrailBlaze Hiking Pants, RainGuard Hiking Jacket, and CompactCook Camping Stove", "chat_history": [] }
{"question": "What is the Brand for TrekReady Hiking Boots", "truth": "TrekReady", "chat_history": [] }
{"question": "How many items did Karen Williams buy?", "truth": "three items of the Summit Breeze Jacket", "chat_history": [] }
{"question": "France is in Europe", "truth": "Sorry, I can only truth questions related to outdoor/camping gear and equipment", "chat_history": [] }

Maintenant que vous disposez de votre jeu de données d’évaluation, vous pouvez évaluer votre flux en procédant comme suit :

  1. Sélectionnez Évaluer>Évaluation intégrée dans le menu supérieur du flux rapide.

    Capture d’écran de l’option permettant de créer une évaluation intégrée à partir du flux d’invite.

    Vous accédez à l’assistant Créer une nouvelle évaluation .

  2. Entrez un nom pour votre évaluation et sélectionnez une session de calcul.

  3. Sélectionnez question et réponse sans de contexte dans les options de scénario.

  4. Sélectionnez le flux à évaluer. Dans cet exemple, sélectionnez flux extérieur Contoso ou le nom que vous avez donné à votre flux. Sélectionnez ensuite Suivant.

    Capture d’écran de la sélection d’un scénario d’évaluation.

  5. Sélectionnez Ajouter votre jeu de données dans la page Configurer les données de test.

    Capture d’écran de l’option permettant d’utiliser un jeu de données nouveau ou existant.

  6. Sélectionnez Télécharger le fichier, parcourez les fichiers et sélectionnez le fichier qa-evaluation.jsonl que vous avez créé précédemment.

  7. Une fois le fichier chargé, vous devez configurer vos colonnes de données pour qu’elles correspondent aux entrées requises pour que le flux d’invite exécute une exécution par lots qui génère une sortie pour l’évaluation. Entrez ou sélectionnez les valeurs suivantes pour chaque mappage de jeu de données pour le flux d’invite.

    Capture d’écran du mappage de jeu de données d’évaluation de flux d’invite.

    Nom Description Type Source de données
    chat_history L’historique des conversations list ${data.chat_history}
    query La requête string ${data.question}
  8. Cliquez sur Suivant.

  9. Sélectionnez les métriques que vous souhaitez utiliser pour évaluer votre flux. Dans cet exemple, sélectionnez Cohérence, Maîtrise, Similitude GPT et Score F1.

  10. Sélectionnez une connexion et un modèle à utiliser pour l’évaluation. Dans cet exemple, sélectionnez gpt-35-turbo-16k. Sélectionnez ensuite Suivant.

    Capture d’écran de la sélection des métriques d’évaluation.

    Remarque

    L’évaluation avec des métriques assistées par IA doit appeler un autre modèle GPT pour effectuer le calcul. Pour des performances optimales, utilisez un modèle qui prend en charge au moins 16 000 jetons (tels que gpt-4-32k ou gpt-35-turbo-16k). Si vous n’avez pas déployé ce modèle précédemment, vous pouvez déployer un autre modèle en suivant les étapes décrites dans le Guide de démarrage rapide du terrain de jeu de conversation AI Studio. Revenez ensuite à cette étape et sélectionnez le modèle que vous avez déployé.

  11. Vous devez configurer vos colonnes de données pour qu’elles correspondent aux entrées requises pour générer des métriques d’évaluation. Entrez les valeurs suivantes pour mapper le jeu de données aux propriétés d’évaluation :

    Nom Description Type Source de données
    question Requête recherchant des informations spécifiques. string ${data.question}
    answer Réponse à la question générée par le modèle comme réponse. string ${run.outputs.reply}
    documents Chaîne avec contexte à partir de documents récupérés. string ${run.outputs.documents}
  12. Cliquez sur Suivant.

  13. Passez en revue les détails de l’évaluation, puis sélectionnez Envoyer. Vous accédez à la page Évaluations des métriques.

Afficher l’état et les résultats de l’évaluation

Vous pouvez maintenant afficher l’état et les résultats de l’évaluation en procédant comme suit :

  1. Après avoir créé une évaluation, si vous n'y êtes pas déjà, accédez à l'évaluation. Dans la page Évaluations des métriques, vous pouvez voir l’état de l’évaluation et les métriques que vous avez sélectionnées. Vous devrez peut-être sélectionner Actualiser après quelques minutes pour voir l’état Terminé .

    Capture d’écran de la page évaluations des métriques.

  2. Arrêtez votre session de calcul dans le flux d’invite. Accédez à votre flux d’invite et sélectionnez session de calcul s’exécutant>Arrêter la session de calcul dans le menu supérieur.

    Capture d’écran du bouton pour arrêter une session de calcul dans le flux d’invite.

    Conseil

    Une fois l’évaluation à l’état Terminé, vous n’avez pas besoin d’une session de calcul pour terminer le reste de ce didacticiel. Vous pouvez arrêter votre instance de calcul pour éviter d’entraîner des coûts Azure inutiles. Pour plus d’informations, consultez Comment démarrer et arrêter le calcul.

  3. Sélectionnez le nom de l’évaluation (par exemple, evaluation_evaluate_from_flow_variant_0) pour afficher les métriques d’évaluation.

    Capture d’écran de la page de résultats des métriques détaillées.

Pour plus d’informations, consultez Afficher les résultats d’évaluation.

Déployer le flux

Maintenant que vous avez créé un flux et terminé une évaluation basée sur des métriques, il est temps de créer votre point de terminaison en ligne pour l’inférence en temps réel. Cela signifie que vous pouvez utiliser le flux déployé pour répondre aux questions en temps réel.

Suivez ces étapes pour déployer un flux d’invite en tant que point de terminaison en ligne à partir de AI Studio.

  1. Préparez un flux d’invite au déploiement. Si vous n’en avez pas, consultez les sections précédentes ou comment générer un flux d’invite.

  2. Facultatif : sélectionnez Conversation pour tester si le flux fonctionne correctement. Tester le flux avant le déploiement est une bonne pratique que nous recommandons.

  3. Sélectionnez Déployer dans l’éditeur de flux.

    Capture d’écran du bouton Déployer à partir d’un éditeur de flux d’invite.

  4. Indiquez les informations demandées dans la page Paramètres de base de l’Assistant Déploiement. Sélectionnez Suivant pour passer aux pages de paramètres avancés.

    Capture d’écran de la page paramètres de base de l’Assistant Déploiement.

  5. Dans la page Paramètres avancés - Point de terminaison, conservez les paramètres par défaut et sélectionnez Suivant.

  6. Dans la page Paramètres avancés - Déploiement, conservez les paramètres par défaut et sélectionnez Suivant.

  7. Dans la page Paramètres avancés – Sorties et connexions, vérifiez que toutes les sorties sont sélectionnées sous Inclus dans la réponse du point de terminaison.

    Capture d’écran de la page paramètres avancés de l’Assistant Déploiement.

  8. Sélectionnez Vérifier + créer pour passer en revue les paramètres et créer le déploiement.

  9. Sélectionnez Créer pour déployer le flux d’invite.

    Capture d’écran de la page des paramètres de déploiement de flux d’invite de révision.

Pour plus d’informations, consultez Comment déployer un flux.

Utiliser le flux déployé

Votre application copilote peut utiliser le flux d’invite déployé pour répondre aux questions en temps réel. Vous pouvez utiliser le point de terminaison REST ou le Kit de développement logiciel (SDK) pour utiliser le flux déployé.

  1. Pour afficher l’état de votre déploiement dans AI Studio, sélectionnez Déploiements dans le volet de navigation gauche.

    Capture d’écran de l’état de déploiement de flux d’invite en cours.

    Une fois le déploiement correctement créé, vous pouvez le sélectionner pour voir les détails.

    Remarque

    Si vous voyez un message indiquant « Actuellement ce point de terminaison n’a aucun déploiement » ou que l'état est toujours sur Mise à jour en cours, vous devrez peut-être sélectionner Actualiser après quelques minutes pour voir le déploiement.

  2. Si vous le souhaitez, la page de détails vous permet de modifier le type d’authentification ou d’activer la surveillance.

    Capture d’écran de la page détails du déploiement de flux d’invite.

  3. Sélectionnez l’onglet Consommer. Vous pouvez voir des exemples de code et le point de terminaison REST de votre application copilote pour utiliser le flux déployé.

    Capture d’écran du point de terminaison de déploiement de flux d’invite et des exemples de code.

Nettoyer les ressources

Pour éviter la facturation de coûts Azure inutiles, vous devez supprimer les ressources créées dans ce tutoriel si elles ne sont plus nécessaires. Pour gérer les ressources, vous pouvez utiliser le Portail Microsoft Azure.

Vous pouvez également arrêter ou supprimer votre instance de calcul dans AI Studio si nécessaire.

Étapes suivantes