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:
- Voeg uw gegevens toe aan de chatspeeltuin.
- Maak een promptstroom vanuit de speeltuin.
- De promptstroom aanpassen met meerdere gegevensbronnen.
- Evalueer de stroom met behulp van een gegevensset voor vraag- en antwoordevaluatie.
- Implementeer de stroom voor verbruik.
Vereisten
Een Azure-abonnement: maak er gratis een.
Toegang verleend tot Azure OpenAI in het gewenste Azure abonnement.
Op dit moment wordt alleen toegang tot deze service verleend door een aanvraag te doen. U kunt toegang tot Azure OpenAI aanvragen door het formulier in te vullen op https://aka.ms/oai/access. Open een probleem op deze opslagplaats om contact met ons op te stellen als u een probleem hebt.
Een AI Studio-hub, project en geïmplementeerd Azure OpenAI-chatmodel . Voltooi de quickstart voor de AI Studio-speeltuin om deze resources te maken als u dat nog niet hebt gedaan.
Een Azure AI-Search-service verbinding om het voorbeeldproduct en de klantgegevens te indexeren.
U hebt een lokale kopie van product- en klantgegevens nodig. 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 1-customer-info en 3-product-info.
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.
Ga naar uw project in Azure AI Studio.
Selecteer Playgrounds>Chat in het linkerdeelvenster.
Selecteer uw geïmplementeerde chatmodel in de vervolgkeuzelijst Implementatie .
Selecteer aan de linkerkant van de chatspeeltuin uw gegevens> toevoegen+ Een nieuwe gegevensbron toevoegen.
Selecteer Bestanden uploaden in de vervolgkeuzelijst Gegevensbron.
Selecteer Upload bestanden uploaden> om door uw lokale bestanden te bladeren.
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.
Selecteer Uploaden om het bestand te uploaden naar uw Azure Blob Storage-account. Selecteer Volgende.
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.
Blader naar uw Azure AI-Search-service en selecteer Verbinding toevoegen.
Voer voor de indexnaam productgegevens in en selecteer Volgende.
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.
Controleer uw instellingen en selecteer Maken.
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.
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.
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:
Ga naar uw project in AI Studio.
Selecteer Playgrounds>Chat in het linkerdeelvenster.
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.
Selecteer Promptstroom in het menu boven het chatsessievenster.
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.
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.
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.
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.
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.
Ga naar uw project in AI Studio.
Selecteer Index in het linkermenu. U hebt al een index met de naam productgegevens die u eerder in de chatspeeltuin hebt gemaakt.
Selecteer + Nieuwe index. U gaat naar de wizard Een index maken.
Selecteer Bestanden uploaden in de vervolgkeuzelijst Gegevensbron op de pagina Brongegevens. Selecteer Vervolgens Uploaden>bestanden uploaden om door uw lokale bestanden te bladeren.
Selecteer de klantgegevensbestanden die u eerder hebt gedownload of gemaakt. Bekijk de vereisten. Selecteer Volgende.
Selecteer dezelfde Azure AI-Search-service-verbinding (contosooutdooraisearch) die u hebt gebruikt voor uw productgegevensindex. Selecteer Volgende.
Voer klantgegevens in voor de indexnaam.
Selecteer een virtuele machine om indexeringstaken uit te voeren. De standaardoptie is Automatisch selecteren. Selecteer Volgende.
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.
Controleer de gegevens die u hebt ingevoerd en selecteer Maken.
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.
U gaat naar de pagina met indexgegevens, waar u de status van het maken van de index kunt zien.
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.
- Ga naar uw project.
- Selecteer promptstroom in Extra in het linkermenu. Selecteer vervolgens de promptstroommap die u eerder hebt gemaakt.
- 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:
Zorg ervoor dat er een rekensessie wordt uitgevoerd. Als u er nog geen hebt, raadpleegt u een rekensessie maken in de vorige sectie.
Selecteer + Meer hulpmiddelen in het bovenste menu en selecteer vervolgens Index opzoeken in de lijst met hulpprogramma's.
Geef de nieuwe knooppuntqueryCustomerIndex een naam en selecteer Toevoegen.
Selecteer het tekstvak mlindex_content in het knooppunt queryCustomerIndex .
Het dialoogvenster Genereren wordt geopend. U gebruikt dit dialoogvenster om het knooppunt queryCustomerIndex te configureren om verbinding te maken met uw index voor klantgegevens .
Selecteer Azure AI Search voor de index_type-waarde.
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 Selecteer Opslaan om uw instellingen op te slaan.
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.
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.
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.
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.
Wijzig de naam en vervang alle exemplaren van chunkDocuments door chunkProductDocuments in de grafiek.
Wijzig de naam en vervang alle exemplaren van selectChunks door selectProductChunks in de grafiek.
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 .
Vervang de
${queryProductIndex.output}
invoer in het knooppunt chunkCustomerDocuments door${queryCustomerIndex.output}
.Vervang de
${chunkProductDocuments.output}
invoer in het knooppunt selectCustomerChunks door${chunkCustomerDocuments.output}
.Selecteer Opslaan in het bovenste menu om uw wijzigingen op te slaan.
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:
Selecteer Python in de lijst met hulpprogramma's.
Geef het hulpprogramma de naam aggregateChunks en selecteer Toevoegen.
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
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.
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} Selecteer het knooppunt shouldGenerateReply in de grafiek. Selecteer of voer deze in
${aggregateChunks.output}
voor de segmentinvoer .Selecteer het knooppunt formatGenerateReplyInputs in de grafiek. Selecteer of voer deze in
${aggregateChunks.output}
voor de segmentinvoer .Selecteer het uitvoerknooppunt in de grafiek. Selecteer of voer deze in
${aggregateChunks.output}
voor de segmentinvoer .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.
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.
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.
Selecteer Chat in het bovenste menu in de promptstroom om te chatten.
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.
Het antwoord is wat u verwacht. Het model gebruikt de klantgegevens om de vraag te beantwoorden.
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:
Selecteer Ingebouwde>evaluatie evalueren in het bovenste menu in de promptstroom.
U gaat naar de wizard Een nieuwe evaluatie maken.
Voer een naam in voor uw evaluatie en selecteer een rekensessie.
Selecteer Vraag en antwoord zonder context in de scenarioopties.
Selecteer de stroom die u wilt evalueren. In dit voorbeeld selecteert u De buitenstroom van Contoso of de naam van uw stroom. Selecteer Volgende.
Selecteer Uw gegevensset toevoegen op de pagina Testgegevens configureren.
Selecteer Bestand uploaden, blader door bestanden en selecteer het bestand qa-evaluation.jsonl dat u eerder hebt gemaakt.
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.
Name Omschrijving Type Gegevensbron chat_history De chatgeschiedenis lijst ${data.chat_history} query De query tekenreeks ${data.question} Selecteer Volgende.
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.
Selecteer een verbinding en model dat u wilt gebruiken voor evaluatie. In dit voorbeeld selecteert u gpt-35-turbo-16k. Selecteer Volgende.
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.
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} Selecteer Volgende.
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:
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.
Stop uw rekensessie in promptstroom. Ga naar de promptstroom en selecteer Compute-sessie met>De rekensessie stoppen in het bovenste menu.
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.
Selecteer de naam van de evaluatie (zoals evaluation_evaluate_from_flow_variant_0) om de metrische evaluatiegegevens te bekijken.
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.
Een promptstroom gereed hebben voor implementatie. Als u er geen hebt, raadpleegt u de vorige secties of hoe u een promptstroom maakt.
Optioneel: selecteer Chat om te testen of de stroom correct werkt. Het testen van uw stroom voordat de implementatie wordt aanbevolen.
Selecteer Implementeren in de stroomeditor.
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.
Laat op de pagina Geavanceerde instellingen - Eindpunt de standaardinstellingen staan en selecteer Volgende.
Laat op de pagina Geavanceerde instellingen - Implementatie de standaardinstellingen staan en selecteer Volgende.
Controleer op de pagina Geavanceerde instellingen - Uitvoer en verbindingen of alle uitvoer is geselecteerd onder Opgenomen in eindpuntantwoord.
Selecteer Beoordelen en maken om de instellingen te controleren en de implementatie te maken.
Selecteer Maken om de promptstroom te implementeren.
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.
Als u de status van uw implementatie in AI Studio wilt weergeven, selecteert u Implementaties in het linkernavigatievenster.
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.
Optioneel kunt u op de detailpagina het verificatietype wijzigen of bewaking inschakelen.
Selecteer het tabblad Verbruik . U kunt codevoorbeelden en het REST-eindpunt voor uw copilot-toepassing bekijken om de geïmplementeerde stroom te gebruiken.
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
- Meer informatie over promptstroom.
- Een zakelijke chat-web-app implementeren.