Share via


Zelfstudie: Copilot voor vragen en antwoorden bouwen en implementeren met promptstroom in Azure AI Studio

Belangrijk

Sommige van de functies die in dit artikel worden beschreven, zijn mogelijk alleen beschikbaar in de preview-versie. Deze preview wordt aangeboden zonder een service level agreement en we raden deze niet aan voor productieworkloads. Misschien worden bepaalde functies niet ondersteund of zijn de mogelijkheden ervan beperkt. Zie Aanvullende gebruiksvoorwaarden voor Microsoft Azure-previews voor meer informatie.

In deze zelfstudie van Azure AI Studio gebruikt u generatieve AI en promptstroom om een copilot te bouwen, configureren en implementeren voor uw retailbedrijf met de naam Contoso. Uw detailhandel is gespecialiseerd in outdoor camping gear en kleding.

De copilot moet vragen beantwoorden over uw producten en services. Het moet ook vragen over uw klanten beantwoorden. De copilot kan bijvoorbeeld vragen beantwoorden, zoals 'Hoeveel kost de TrailWalker wandelschoenen?' en 'Hoeveel wandelschoenen van TrailWalker heeft Daniel Wilson gekocht?'.

De stappen in deze zelfstudie zijn als volgt:

  1. Voeg uw gegevens toe aan de chatspeeltuin.
  2. Maak een promptstroom vanuit de speeltuin.
  3. De promptstroom aanpassen met meerdere gegevensbronnen.
  4. Evalueer de stroom met behulp van een gegevensset voor vraag- en antwoordevaluatie.
  5. Implementeer de stroom voor verbruik.

Vereisten

Voeg uw gegevens toe en probeer het chatmodel opnieuw

In de quickstart voor AI Studio Playground (dat is een vereiste voor deze zelfstudie), kunt u zien hoe uw model reageert zonder uw gegevens. Nu voegt u uw gegevens toe aan het model om vragen over uw producten te beantwoorden.

U hebt een lokale kopie van productgegevens nodig om deze sectie te voltooien. De opslagplaats Azure-Samples/aistudio-python-quickstart-sample op GitHub bevat voorbeeldklant en productinformatie die relevant is voor dit zelfstudiescenario. Kloon de opslagplaats of kopieer de bestanden van 3-productgegevens.

Belangrijk

De functie Uw gegevens toevoegen in de Azure AI Studio-speeltuin biedt geen ondersteuning voor het gebruik van een virtueel netwerk of privé-eindpunt op de volgende resources:

  • Azure AI Search
  • Azure OpenAI
  • Opslagresource

Volg deze stappen om uw gegevens toe te voegen in de chatspeeltuin om de assistent te helpen vragen over uw producten te beantwoorden. U wijzigt het geïmplementeerde model zelf niet. Uw gegevens worden afzonderlijk en veilig opgeslagen in uw Azure-abonnement.

  1. Ga naar uw project in Azure AI Studio.

  2. Selecteer Playgrounds>Chat in het linkerdeelvenster.

  3. Selecteer uw geïmplementeerde chatmodel in de vervolgkeuzelijst Implementatie .

    Schermopname van de chatspeeltuin met de chatmodus en het model geselecteerd.

  4. Selecteer aan de linkerkant van de chatspeeltuin uw gegevens> toevoegen+ Een nieuwe gegevensbron toevoegen.

    Schermopname van de chatspeelplaats met de optie om een gegevensbron toe te voegen die zichtbaar is.

  5. Selecteer Bestanden uploaden in de vervolgkeuzelijst Gegevensbron.

    Schermopname van de opties voor het selecteren van gegevensbronnen.

  6. Selecteer Upload bestanden uploaden> om door uw lokale bestanden te bladeren.

  7. Selecteer de bestanden die u wilt uploaden. Selecteer de productinformatiebestanden (3-productgegevens) die u eerder hebt gedownload of gemaakt. Voeg nu alle bestanden toe. U kunt later niet meer bestanden toevoegen in dezelfde speeltuinsessie.

  8. Selecteer Uploaden om het bestand te uploaden naar uw Azure Blob Storage-account. Selecteer Volgende.

    Schermopname van het dialoogvenster voor het selecteren en uploaden van bestanden.

  9. Selecteer een Azure AI-Search-service. In dit voorbeeld selecteren we Verbinding maken andere Azure AI Search-resource in de vervolgkeuzelijst Azure AI selecteren Search-service. Als u geen zoekresource hebt, kunt u er een maken door een nieuwe Azure AI Search-resource te selecteren. Ga vervolgens terug naar deze stap om verbinding te maken en selecteer deze.

    Schermopname van de selectieopties voor zoekresources.

  10. Blader naar uw Azure AI-Search-service en selecteer Verbinding toevoegen.

    Schermopname van de pagina om een zoekserviceverbinding toe te voegen.

  11. Voer voor de indexnaam productgegevens in en selecteer Volgende.

  12. Schakel op de pagina Zoekinstellingen onder Vectorinstellingen het selectievakje Vectorzoekopdrachten toevoegen uit aan deze zoekresource . Met deze instelling kunt u bepalen hoe het model reageert op aanvragen. Selecteer Volgende.

    Notitie

    Als u vectorzoekopdrachten toevoegt, zijn hier meer opties beschikbaar voor extra kosten.

  13. Controleer uw instellingen en selecteer Maken.

  14. In de speeltuin ziet u dat uw gegevensopname wordt uitgevoerd. Dit proces kan enige minuten duren. Voordat u doorgaat, wacht u totdat u de naam van de gegevensbron en index ziet in plaats van de status.

    Schermopname van de chatspeelplaats met de status van gegevensopname in de weergave.

  15. Voer een naam in voor de configuratie van de speeltuin en selecteer Save Save>configuration. Alle configuratie-items worden standaard opgeslagen. Items omvatten implementatie, systeembericht, veiligheidsbericht, parameters, toegevoegde gegevens, voorbeelden en variabelen. Als u een configuratie met dezelfde naam opslaat, wordt deze opgeslagen in de vorige versie.

    Schermopname van de naam van de configuratie van de speeltuin en de knop Opslaan.

  16. U kunt nu chatten met het model waarin dezelfde vraag wordt gesteld als voorheen ('Hoeveel zijn de TrailWalker wandelschoenen') en deze keer wordt informatie uit uw gegevens gebruikt om het antwoord samen te stellen. U kunt de knop Verwijzingen uitvouwen om de gegevens weer te geven die zijn gebruikt.

Een promptstroom maken vanuit de speeltuin

Nu vraagt u misschien 'Hoe kan ik deze copilot verder aanpassen?' Mogelijk wilt u meerdere gegevensbronnen toevoegen, verschillende prompts of de prestaties van meerdere modellen vergelijken. Een promptstroom fungeert als een uitvoerbare werkstroom die de ontwikkeling van uw AI-toepassing op basis van LLM stroomlijnt. Het biedt een uitgebreid kader voor het beheren van de gegevensstroom en verwerking binnen uw toepassing. U gebruikt de promptstroom om de berichten te optimaliseren die naar het chatmodel van copilot worden verzonden.

In deze sectie leert u hoe u kunt overstappen op een prompt van de speeltuin. U exporteert de chatomgeving voor speeltuinen, inclusief verbindingen met de gegevens die u hebt toegevoegd. Verderop in deze zelfstudie evalueert u de stroom en implementeert u vervolgens de stroom voor verbruik.

Notitie

De wijzigingen in de promptstroom worden niet achterwaarts toegepast om de speeltuinomgeving bij te werken.

U kunt een promptstroom maken vanuit de speeltuin door de volgende stappen uit te voeren:

  1. Ga naar uw project in AI Studio.

  2. Selecteer Playgrounds>Chat in het linkerdeelvenster.

  3. Omdat we onze eigen gegevens gebruiken, moet u uw gegevens toevoegen selecteren. U hebt al een index met de naam productgegevens die u eerder in de chatspeeltuin hebt gemaakt. Selecteer deze in de vervolgkeuzelijst Beschikbare projectindex selecteren. Anders maakt u eerst een index met uw productgegevens en gaat u terug naar deze stap.

  4. Selecteer Promptstroom in het menu boven het chatsessievenster.

  5. Voer een mapnaam in voor de promptstroom. Selecteer vervolgens Openen. AI Studio exporteert de chatomgeving voor speeltuinen om stroom te vragen. De export bevat de verbindingen met de gegevens die u hebt toegevoegd.

    Schermopname van het dialoogvenster Openen in promptstroom.

Binnen een stroom worden knooppunten centraal gezet, die specifieke hulpprogramma's met unieke mogelijkheden vertegenwoordigen. Deze knooppunten verwerken gegevensverwerking, taakuitvoering en algoritmen, met invoer en uitvoer. Door knooppunten te verbinden, maakt u een naadloze keten van bewerkingen die de stroom van gegevens door uw toepassing begeleiden. Zie promptstroomhulpprogramma's voor meer informatie.

Om de configuratie en afstemming van knooppunten te vergemakkelijken, wordt een visuele weergave van de werkstroomstructuur geboden via een DAG-grafiek (Directed Acyclic Graph). Deze grafiek toont de connectiviteit en afhankelijkheden tussen knooppunten, wat een duidelijk overzicht biedt van de hele werkstroom. De knooppunten in de grafiek die hier worden weergegeven, zijn representatief voor de chatervaring van de speeltuin die u hebt geëxporteerd om de stroom te vragen.

Schermopname van de standaardgrafiek die is geëxporteerd uit de speeltuin om stroom te vragen.

In de promptstroom ziet u ook het volgende:

  • Knop Opslaan: U kunt de promptstroom op elk gewenst moment opslaan door Opslaan te selecteren in het bovenste menu. Zorg ervoor dat u uw promptstroom regelmatig opslaat wanneer u wijzigingen aanbrengt in deze zelfstudie.
  • Knop Rekensessie starten: u moet een rekensessie starten om uw promptstroom uit te voeren. U kunt de sessie later in de zelfstudie starten. Er worden kosten in rekening gebracht voor rekeninstanties terwijl ze worden uitgevoerd. Zie voor meer informatie hoe u een rekensessie maakt.

Schermopname van de knoppen voor opslaan en sessie starten in uw stroom.

U kunt op elk gewenst moment terugkeren naar de promptstroom door de promptstroom te selecteren in Extra in het linkermenu. Selecteer vervolgens de promptstroommap die u eerder hebt gemaakt.

Schermopname van de lijst met promptstromen.

Promptstroom aanpassen met meerdere gegevensbronnen

eerder in de AI Studio-chatspeeltuin hebt u uw gegevens toegevoegd om één zoekindex te maken die productgegevens bevat voor de Contoso-copilot. Tot nu toe kunnen gebruikers alleen vragen stellen over producten met vragen als "Hoeveel kost de TrailWalker wandelschoenen?". Maar ze kunnen geen antwoorden krijgen op vragen als "Hoeveel TrailWalker wandelschoenen heeft Daniel Wilson gekocht?" Om dit scenario mogelijk te maken, voegen we een andere index met klantgegevens toe aan de stroom.

De index voor klantgegevens maken

Als u wilt doorgaan, hebt u een lokale kopie van voorbeeld van klantgegevens nodig. Zie de vereisten voor meer informatie en koppelingen naar voorbeeldgegevens.

Volg deze instructies voor het maken van een nieuwe index. Verderop in deze zelfstudie keert u terug naar de promptstroom om de klantgegevens toe te voegen aan de stroom. U kunt een nieuw tabblad in uw browser openen om deze instructies te volgen en terug te keren naar de promptstroom.

  1. Ga naar uw project in AI Studio.

  2. Selecteer Index in het linkermenu. U hebt al een index met de naam productgegevens die u eerder in de chatspeeltuin hebt gemaakt.

    Schermopname van de pagina indexen met de knop om een nieuwe index te maken.

  3. Selecteer + Nieuwe index. U gaat naar de wizard Een index maken.

  4. Selecteer Bestanden uploaden in de vervolgkeuzelijst Gegevensbron op de pagina Brongegevens. Selecteer Vervolgens Uploaden>bestanden uploaden om door uw lokale bestanden te bladeren.

  5. Selecteer de klantgegevensbestanden die u eerder hebt gedownload of gemaakt. Bekijk de vereisten. Selecteer Volgende.

    Schermopname van de selectieopties voor de gegevensbron van de klant.

  6. Selecteer dezelfde Azure AI-Search-service-verbinding (contosooutdooraisearch) die u hebt gebruikt voor uw productgegevensindex. Selecteer Volgende.

  7. Voer klantgegevens in voor de indexnaam.

    Schermopname van de Azure AI-Search-service en de indexnaam.

  8. Selecteer een virtuele machine om indexeringstaken uit te voeren. De standaardoptie is Automatisch selecteren. Selecteer Volgende.

  9. Schakel op de pagina Zoekinstellingen onder Vectorinstellingen het selectievakje Vectorzoekopdrachten toevoegen uit aan deze zoekresource . Met deze instelling kunt u bepalen hoe het model reageert op aanvragen. Selecteer Volgende.

    Notitie

    Als u vectorzoekopdrachten toevoegt, zijn hier meer opties beschikbaar voor extra kosten.

  10. Controleer de gegevens die u hebt ingevoerd en selecteer Maken.

    Schermopname van de pagina Voor het maken van de index controleren en voltooien.

    Notitie

    U gebruikt de index voor klantgegevens en de contosooutdooraisearch-verbinding met uw Azure AI-Search-service verderop in deze zelfstudie. Als de namen die u invoert verschillen van wat hier wordt opgegeven, moet u ervoor zorgen dat u de namen gebruikt die u in de rest van de zelfstudie hebt ingevoerd.

  11. U gaat naar de pagina met indexgegevens, waar u de status van het maken van de index kunt zien.

    Schermopname van de indexgegevens van de klant.

Zie Een index maken voor meer informatie over het maken van een index.

Een rekensessie maken die nodig is voor de promptstroom

Nadat u klaar bent met het maken van de index, gaat u terug naar de promptstroom en start u de rekensessie. Voor een promptstroom moet een rekensessie worden uitgevoerd.

  1. Ga naar uw project.
  2. Selecteer promptstroom in Extra in het linkermenu. Selecteer vervolgens de promptstroommap die u eerder hebt gemaakt.
  3. Selecteer Rekensessie starten in het bovenste menu.

Als u een rekenproces en een rekensessie wilt maken, kunt u ook de stappen volgen voor het maken van een rekensessie.

Als u de rest van de zelfstudie wilt voltooien, moet u ervoor zorgen dat uw rekensessie wordt uitgevoerd.

Belangrijk

Er worden kosten in rekening gebracht voor rekeninstanties terwijl ze worden uitgevoerd. Als u onnodige Azure-kosten wilt voorkomen, pauzeert u het rekenproces wanneer u niet actief in de promptstroom werkt. Zie voor meer informatie hoe u rekenkracht start en stopt.

Klantgegevens toevoegen aan de stroom

Nadat u klaar bent met het maken van uw index, gaat u terug naar de promptstroom en volgt u deze stappen om de klantgegevens toe te voegen aan de stroom:

  1. Zorg ervoor dat er een rekensessie wordt uitgevoerd. Als u er nog geen hebt, raadpleegt u een rekensessie maken in de vorige sectie.

  2. Selecteer + Meer hulpmiddelen in het bovenste menu en selecteer vervolgens Index opzoeken in de lijst met hulpprogramma's.

    Schermopname van het selecteren van het hulpprogramma voor het opzoeken van de index in de promptstroom.

  3. Geef de nieuwe knooppuntqueryCustomerIndex een naam en selecteer Toevoegen.

  4. Selecteer het tekstvak mlindex_content in het knooppunt queryCustomerIndex .

    Schermopname van het tekstvak mlindex_content in het zoekknooppunt voor indexen.

    Het dialoogvenster Genereren wordt geopend. U gebruikt dit dialoogvenster om het knooppunt queryCustomerIndex te configureren om verbinding te maken met uw index voor klantgegevens .

  5. Selecteer Azure AI Search voor de index_type-waarde.

  6. Selecteer de volgende waarden of voer deze in:

    Naam Weergegeven als
    acs_index_connection De naam van uw Azure AI-Search-service-verbinding (zoals contosooutdooraisearch)
    acs_index_name klantgegevens
    acs_content_field Inhoud
    acs_metadata_field meta_json_string
    semantic_configuration azuremldefault
    embedding_type Geen
  7. Selecteer Opslaan om uw instellingen op te slaan.

  8. Selecteer of voer de volgende waarden in voor het knooppunt queryCustomerIndex :

    Naam Weergegeven als
    Query 's ${extractSearchIntent.output}
    query_type Trefwoord
    topK 5

    U kunt zien dat het knooppunt queryCustomerIndex is verbonden met het knooppunt extractSearchIntent in de grafiek.

    Schermopname van het promptstroomknooppunt voor het ophalen van productgegevens.

  9. Selecteer Opslaan in het bovenste menu om uw wijzigingen op te slaan. Vergeet niet om uw promptstroom regelmatig op te slaan wanneer u wijzigingen aanbrengt.

Verbinding maken de klantgegevens naar de stroom

In de volgende sectie voegt u het product en de klantgegevens samen om het uit te voeren in een indeling die het grote taalmodel kan gebruiken. Maar eerst moet u de klantgegevens verbinden met de stroom.

  1. Selecteer het beletseltekenpictogram naast + Meer hulpprogramma's en selecteer vervolgens de raw-bestandsmodus om over te schakelen naar de modus Onbewerkt bestand. Met deze modus kunt u knooppunten in de grafiek kopiëren en plakken.

    Schermopname van de optie onbewerkte bestandsmodus in promptstroom.

  2. Vervang alle exemplaren van querySearchResource door queryProductIndex in de grafiek. We wijzigen de naam van het knooppunt om beter te weerspiegelen dat het productgegevens ophaalt en contrasteert met het knooppunt queryCustomerIndex dat u aan de stroom hebt toegevoegd.

  3. Wijzig de naam en vervang alle exemplaren van chunkDocuments door chunkProductDocuments in de grafiek.

  4. Wijzig de naam en vervang alle exemplaren van selectChunks door selectProductChunks in de grafiek.

  5. Kopieer en plak de chunkProductDocuments en selecteerProductChunks-knooppunten om vergelijkbare knooppunten te maken voor de klantgegevens. Wijzig respectievelijk de naam van de nieuwe knooppunten chunkCustomerDocuments en selectCustomerChunks .

  6. Vervang de ${queryProductIndex.output} invoer in het knooppunt chunkCustomerDocuments door ${queryCustomerIndex.output}.

  7. Vervang de ${chunkProductDocuments.output} invoer in het knooppunt selectCustomerChunks door ${chunkCustomerDocuments.output}.

  8. Selecteer Opslaan in het bovenste menu om uw wijzigingen op te slaan.

    Schermopname van de optie om het yaml-bestand op te slaan in de modus Onbewerkt bestand.

    Het bestand moet nu flow.dag.yaml knooppunten (onder andere) bevatten die er ongeveer uitzien als in het volgende voorbeeld:

    - 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
    

Product- en klantgegevens aggregeren

Op dit moment gebruikt de promptstroom alleen de productgegevens.

  • extractSearchIntent extraheert de zoekintentie uit de vraag van de gebruiker.
  • queryProductIndex haalt de productgegevens op uit de productgegevensindex .
  • Het LLM-hulpprogramma (voor grote taalmodellen) ontvangt een opgemaakt antwoord via de segmentProductDocuments>selectProductChunks>formatGeneratedReplyInputs-knooppunten.

U moet de product- en klantgegevens verbinden en samenvoegen om het uit te voeren in een indeling die het LLM-hulpprogramma kan gebruiken. Volg deze stappen om de product- en klantgegevens samen te voegen:

  1. Selecteer Python in de lijst met hulpprogramma's.

  2. Geef het hulpprogramma de naam aggregateChunks en selecteer Toevoegen.

  3. Kopieer en plak de volgende Python-code om alle inhoud in het codeblok aggregateChunks te vervangen.

    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. Selecteer de knop Invoer valideren en parseren om de invoer voor het knooppunt aggregateChunks te valideren. Als de invoer geldig is, parseert de promptstroom de invoer en maakt u de benodigde variabelen die u in uw code kunt gebruiken.

    Schermopname van het promptstroomknooppunt voor het samenvoegen van product- en klantgegevens.

  5. Bewerk het knooppunt aggregateChunks om het product en de klantgegevens te verbinden. Stel de invoer in op de volgende waarden:

    Name Type Weergegeven als
    input1 lijst ${selectProductChunks.output}
    invoer2 lijst ${selectCustomerChunks.output}

    Schermopname van de invoer die moet worden bewerkt in het knooppunt voor samengevoegde segmenten.

  6. Selecteer het knooppunt shouldGenerateReply in de grafiek. Selecteer of voer deze in ${aggregateChunks.output} voor de segmentinvoer .

  7. Selecteer het knooppunt formatGenerateReplyInputs in de grafiek. Selecteer of voer deze in ${aggregateChunks.output} voor de segmentinvoer .

  8. Selecteer het uitvoerknooppunt in de grafiek. Selecteer of voer deze in ${aggregateChunks.output} voor de segmentinvoer .

  9. Selecteer Opslaan in het bovenste menu om uw wijzigingen op te slaan. Vergeet niet om uw promptstroom regelmatig op te slaan wanneer u wijzigingen aanbrengt.

U ziet nu het knooppunt aggregateChunks in de grafiek. Het knooppunt verbindt het product en de klantgegevens om het uit te voeren in een indeling die het LLM-hulpprogramma kan gebruiken.

Schermopname van de invoer en uitvoer van het knooppunt voor samengevoegde segmenten in de grafiek.

Chatten in promptstroom met product- en klantgegevens

Op dit moment hebt u zowel de product- als klantgegevens in de promptstroom. U kunt chatten met het model in promptstroom en antwoorden krijgen op vragen zoals "Hoeveel TrailWalker wandelschoenen heeft Daniel Wilson gekocht?" Voordat u verdergaat met een formelere evaluatie, kunt u eventueel chatten met het model om te zien hoe het reageert op uw vragen.

  1. Ga verder vanuit de vorige sectie met het uitvoerknooppunt geselecteerd. Zorg ervoor dat in de antwoorduitvoer het keuzerondje Chat-uitvoer is geselecteerd. Anders wordt de volledige set documenten geretourneerd als antwoord op de vraag in de chat.

  2. Selecteer Chat in het bovenste menu in de promptstroom om te chatten.

  3. Voer "Hoeveel TrailWalker wandelschoenen heeft Daniel Wilson gekocht?" in en selecteer vervolgens het pijl-rechts pictogram om te verzenden.

    Notitie

    Het kan enkele seconden duren voordat het model reageert. U kunt verwachten dat de reactietijd sneller is wanneer u een geïmplementeerde stroom gebruikt.

  4. Het antwoord is wat u verwacht. Het model gebruikt de klantgegevens om de vraag te beantwoorden.

    Schermopname van het antwoord van de assistent met product- en klantaardingsgegevens.

De stroom evalueren met behulp van een gegevensset voor vraag- en antwoordevaluatie

In AI Studio wilt u de stroom evalueren voordat u de stroom implementeert voor verbruik.

In deze sectie gebruikt u de ingebouwde evaluatie om uw stroom te evalueren met een gegevensset voor vraag- en antwoordevaluatie. De ingebouwde evaluatie maakt gebruik van met AI ondersteunde metrische gegevens om uw stroom te evalueren: geaardheid, relevantie en score voor ophalen. Zie ingebouwde metrische evaluatiegegevens voor meer informatie.

Een evaluatie maken

U hebt een gegevensset voor vraag- en antwoordevaluatie nodig die vragen en antwoorden bevat die relevant zijn voor uw scenario. Maak een nieuw bestand met de naam qa-evaluation.jsonl. Kopieer en plak de volgende vragen en antwoorden ("truth") in het bestand.

{"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": [] }

Nu u uw evaluatiegegevensset hebt, kunt u uw stroom evalueren door de volgende stappen uit te voeren:

  1. Selecteer Ingebouwde>evaluatie evalueren in het bovenste menu in de promptstroom.

    Schermopname van de optie voor het maken van een ingebouwde evaluatie vanuit de promptstroom.

    U gaat naar de wizard Een nieuwe evaluatie maken.

  2. Voer een naam in voor uw evaluatie en selecteer een rekensessie.

  3. Selecteer Vraag en antwoord zonder context in de scenarioopties.

  4. Selecteer de stroom die u wilt evalueren. In dit voorbeeld selecteert u De buitenstroom van Contoso of de naam van uw stroom. Selecteer Volgende.

    Schermopname van het selecteren van een evaluatiescenario.

  5. Selecteer Uw gegevensset toevoegen op de pagina Testgegevens configureren.

    Schermopname van de optie voor het gebruik van een nieuwe of bestaande gegevensset.

  6. Selecteer Bestand uploaden, blader door bestanden en selecteer het bestand qa-evaluation.jsonl dat u eerder hebt gemaakt.

  7. Nadat het bestand is geüpload, moet u de gegevenskolommen zo configureren dat deze overeenkomen met de vereiste invoer voor promptstroom om een batchuitvoering uit te voeren die uitvoer genereert voor evaluatie. Voer de volgende waarden in of selecteer deze voor elke toewijzing van gegevenssets voor promptstroom.

    Schermopname van de toewijzing van de promptstroomevaluatiegegevensset.

    Name Omschrijving Type Gegevensbron
    chat_history De chatgeschiedenis lijst ${data.chat_history}
    query De query tekenreeks ${data.question}
  8. Selecteer Volgende.

  9. Selecteer de metrische gegevens die u wilt gebruiken om uw stroom te evalueren. In dit voorbeeld selecteert u Coherentie, Fluency, GPT-overeenkomst en F1-score.

  10. Selecteer een verbinding en model dat u wilt gebruiken voor evaluatie. In dit voorbeeld selecteert u gpt-35-turbo-16k. Selecteer Volgende.

    Schermopname van het selecteren van metrische evaluatiegegevens.

    Notitie

    Evaluatie met met AI ondersteunde metrische gegevens moet een ander GPT-model aanroepen om de berekening uit te voeren. Gebruik voor de beste prestaties een model dat ten minste 16k-tokens ondersteunt, zoals gpt-4-32k of gpt-35-turbo-16k-model. Als u een dergelijk model nog niet eerder hebt geïmplementeerd, kunt u een ander model implementeren door de stappen in de snelstartgids voor de chatspeeltuin van AI Studio te volgen. Ga vervolgens terug naar deze stap en selecteer het model dat u hebt geïmplementeerd.

  11. U moet uw gegevenskolommen zo configureren dat deze overeenkomen met de vereiste invoer om metrische evaluatiegegevens te genereren. Voer de volgende waarden in om de gegevensset toe te wijzen aan de evaluatie-eigenschappen:

    Name Omschrijving Type Gegevensbron
    Vraag Een query die specifieke informatie zoekt. tekenreeks ${data.question}
    Antwoord Het antwoord op de vraag die door het model als antwoord wordt gegenereerd. tekenreeks ${run.outputs.reply}
    Documenten Tekenreeks met context uit opgehaalde documenten. tekenreeks ${run.outputs.documents}
  12. Selecteer Volgende.

  13. Controleer de evaluatiedetails en selecteer Verzenden. U gaat naar de pagina Metrische evaluaties .

De evaluatiestatus en -resultaten weergeven

U kunt nu de evaluatiestatus en -resultaten bekijken door de volgende stappen uit te voeren:

  1. Nadat u een evaluatie hebt gemaakt, gaat u naar de evaluatie als u er nog niet bent. Op de pagina Metrische evaluaties ziet u de evaluatiestatus en de metrische gegevens die u hebt geselecteerd. Mogelijk moet u Vernieuwen na een paar minuten selecteren om de status Voltooid weer te geven.

    Schermopname van de pagina met metrische evaluaties.

  2. Stop uw rekensessie in promptstroom. Ga naar de promptstroom en selecteer Compute-sessie met>De rekensessie stoppen in het bovenste menu.

    Schermopname van de knop om een rekensessie in promptstroom te stoppen.

    Tip

    Zodra de evaluatie de status Voltooid heeft, hebt u geen rekensessie nodig om de rest van deze zelfstudie te voltooien. U kunt uw rekenproces stoppen om onnodige Azure-kosten te voorkomen. Zie voor meer informatie hoe u rekenkracht start en stopt.

  3. Selecteer de naam van de evaluatie (zoals evaluation_evaluate_from_flow_variant_0) om de metrische evaluatiegegevens te bekijken.

    Schermopname van de pagina met gedetailleerde metrische resultaten.

Zie evaluatieresultaten weergeven voor meer informatie.

De stroom implementeren

Nu u een stroom hebt gemaakt en een evaluatie op basis van metrische gegevens hebt voltooid, is het tijd om uw online-eindpunt te maken voor realtime deductie. Dit betekent dat u de geïmplementeerde stroom kunt gebruiken om vragen in realtime te beantwoorden.

Volg deze stappen om een promptstroom te implementeren als een online-eindpunt vanuit AI Studio.

  1. Een promptstroom gereed hebben voor implementatie. Als u er geen hebt, raadpleegt u de vorige secties of hoe u een promptstroom maakt.

  2. Optioneel: selecteer Chat om te testen of de stroom correct werkt. Het testen van uw stroom voordat de implementatie wordt aanbevolen.

  3. Selecteer Implementeren in de stroomeditor.

    Schermopname van de knop Implementeren vanuit een promptstroomeditor.

  4. Geef de gevraagde informatie op op de pagina Basic Instellingen in de implementatiewizard. Selecteer Volgende om door te gaan naar de pagina's met geavanceerde instellingen.

    Schermopname van de pagina Basisinstellingen in de implementatiewizard.

  5. Laat op de pagina Geavanceerde instellingen - Eindpunt de standaardinstellingen staan en selecteer Volgende.

  6. Laat op de pagina Geavanceerde instellingen - Implementatie de standaardinstellingen staan en selecteer Volgende.

  7. Controleer op de pagina Geavanceerde instellingen - Uitvoer en verbindingen of alle uitvoer is geselecteerd onder Opgenomen in eindpuntantwoord.

    Schermopname van de pagina Geavanceerde instellingen in de implementatiewizard.

  8. Selecteer Beoordelen en maken om de instellingen te controleren en de implementatie te maken.

  9. Selecteer Maken om de promptstroom te implementeren.

    Schermopname van de pagina implementatie-instellingen voor de controlestroom.

Zie voor meer informatie hoe u een stroom implementeert.

De geïmplementeerde stroom gebruiken

Uw copilot-toepassing kan de geïmplementeerde promptstroom gebruiken om vragen in realtime te beantwoorden. U kunt het REST-eindpunt of de SDK gebruiken om de geïmplementeerde stroom te gebruiken.

  1. Als u de status van uw implementatie in AI Studio wilt weergeven, selecteert u Implementaties in het linkernavigatievenster.

    Schermopname van de implementatiestatus van de promptstroom die wordt uitgevoerd.

    Zodra de implementatie is gemaakt, kunt u de implementatie selecteren om de details weer te geven.

    Notitie

    Als u een bericht ziet met de tekst 'Dit eindpunt heeft momenteel geen implementaties' of als de status nog steeds wordt bijgewerkt, moet u Vernieuwen mogelijk na een paar minuten selecterenom de implementatie te zien.

  2. Optioneel kunt u op de detailpagina het verificatietype wijzigen of bewaking inschakelen.

    Schermopname van de pagina met details van de promptstroomimplementatie.

  3. Selecteer het tabblad Verbruik . U kunt codevoorbeelden en het REST-eindpunt voor uw copilot-toepassing bekijken om de geïmplementeerde stroom te gebruiken.

    Schermopname van het eindpunt van de promptstroomimplementatie en codevoorbeelden.

Resources opschonen

Als u onnodige Azure-kosten wilt voorkomen, moet u de resources verwijderen die u in deze zelfstudie hebt gemaakt als ze niet meer nodig zijn. Als u resources wilt beheren, kunt u Azure Portal gebruiken.

U kunt uw rekenproces ook indien nodig stoppen of verwijderen in AI Studio.

Volgende stappen