Självstudie: Skapa och distribuera en fråga och svara copilot med promptflöde i Azure AI Studio

Kommentar

Azure AI Studio är för närvarande i offentlig förhandsversion. Den här förhandsversionen tillhandahålls utan ett serviceavtal och vi rekommenderar det inte för produktionsarbetsbelastningar. Vissa funktioner kanske inte stöds eller kan vara begränsade. Mer information finns i Kompletterande villkor för användning av Microsoft Azure-förhandsversioner.

I den här azure AI Studio-självstudien använder du generativ AI och promptflöde för att skapa, konfigurera och distribuera en andrepilot för ditt detaljhandelsföretag med namnet Contoso. Ditt detaljhandelsföretag specialiserar sig på utomhus campingutrustning och kläder.

Andrepiloten bör svara på frågor om dina produkter och tjänster. Den bör också besvara frågor om dina kunder. Till exempel kan andrepiloten svara på frågor som "Hur mycket kostar TrailWalker-vandringsskorna?" och "Hur många TrailWalker-vandringsskor köpte Daniel Wilson?".

Stegen i den här självstudien är:

  1. Skapa ett Azure AI Studio-projekt.
  2. Distribuera en Azure OpenAI-modell och chatta med dina data.
  3. Skapa ett promptflöde från lekplatsen.
  4. Anpassa promptflöde med flera datakällor.
  5. Utvärdera flödet med hjälp av en datauppsättning för fråge- och svarsutvärdering.
  6. Distribuera flödet för förbrukning.

Förutsättningar

Skapa ett Azure AI-projekt i Azure AI Studio

Ditt Azure AI-projekt används för att organisera ditt arbete och spara tillstånd när du skapar din andrepilot. Under den här självstudien innehåller projektet dina data, körning av promptflöde, utvärderingar och andra resurser. Mer information om Azure AI-projekt och resursmodellen finns i Azure AI Hub-resurser.

Följ dessa steg för att skapa ett Azure AI-projekt i Azure AI Studio:

  1. Välj fliken Skapa överst på sidan.

  2. Välj + Nytt AI-projekt.

    Skärmbild av fliken Skapa i Azure AI Studio med alternativet att skapa ett nytt projekt synligt.

  3. Ange ett namn för projektet.

  4. Välj en Azure AI Hub-resurs i listrutan som värd för projektet. Om du inte har åtkomst till en Azure AI Hub-resurs ännu väljer du Skapa en ny resurs.

    Skärmbild av projektinformationssidan i dialogrutan Skapa projekt.

    Kommentar

    Om du vill skapa en Azure AI-hubbresurs måste du ha ägar- eller deltagarbehörigheter för den valda resursgruppen. Vi rekommenderar att du delar en Azure AI Hub-resurs med ditt team. På så sätt kan du dela konfigurationer som dataanslutningar med alla projekt och centralt hantera säkerhetsinställningar och utgifter.

  5. Om du skapar en ny Azure AI Hub-resurs anger du ett namn.

  6. Välj din Azure-prenumeration i listrutan. Välj en specifik Azure-prenumeration för projektet av fakturerings-, åtkomst- eller administratörsskäl. Detta ger till exempel användare och tjänsthuvudnamn åtkomst på prenumerationsnivå till ditt projekt.

  7. Lämna resursgruppen som standard för att skapa en ny resursgrupp. Du kan också välja en befintlig resursgrupp i listrutan.

    Dricks

    Speciellt för att komma igång rekommenderar vi att du skapar en ny resursgrupp för projektet. På så sätt kan du enkelt hantera projektet och alla dess resurser tillsammans. När du skapar ett projekt skapas flera resurser i resursgruppen, inklusive en Azure AI Hub-resurs, ett containerregister och ett lagringskonto.

  8. Ange Platsen för Azure AI Hub-resursen och välj sedan Nästa. Platsen är den region där Azure AI Hub-resursen finns. Platsen för Azure AI Hub-resursen är också platsen för projektet. Tillgängligheten för Azure AI-tjänster skiljer sig åt per region. Vissa modeller kanske till exempel inte är tillgängliga i vissa regioner.

  9. Välj en befintlig Azure OpenAI-resurs i listrutan eller skapa en ny.

    Skärmbild av sidan Skapa resurs i dialogrutan Skapa projekt.

  10. På sidan Granska och slutför visas resursnamnet för Azure OpenAI-tjänsten och andra inställningar att granska.

    Skärmbild av gransknings- och slutsidan i dialogrutan Skapa projekt.

  11. Granska projektinformationen och välj sedan Skapa ett AI-projekt. Du ser förloppet för att skapa resurser och projektet skapas när processen är klar.

    Skärmbild av förloppet för att skapa resurser i dialogrutan Skapa projekt.

När ett projekt har skapats kan du komma åt verktyg, komponenter och AI-projektinställningar i den vänstra navigeringspanelen. För ett projekt som använder en Azure AI-hubb med stöd för Azure OpenAI visas navigeringsalternativet Playground under Verktyg.

Distribuera en chattmodell

Följ de här stegen för att distribuera en Azure OpenAI-chattmodell för din andrepilot.

  1. Logga in på Azure AI Studio med autentiseringsuppgifter som har åtkomst till din Azure OpenAI-resurs. Under eller efter inloggningsarbetsflödet väljer du lämplig katalog, Azure-prenumeration och Azure OpenAI-resurs. Du bör vara på startsidan för Azure AI Studio.

  2. Välj Skapa på den översta menyn och välj sedan Distributioner Skapa>realtidsslutpunkt.>

    Skärmbild av distributionssidan med en knapp för att skapa ett nytt projekt.

  3. På sidan Välj en modell väljer du den modell som du vill distribuera från listan över modeller. Välj till exempel gpt-35-turbo-16k. Välj sedan Bekräfta.

    Skärmbild av sidan för modellval.

  4. På sidan Distribuera modell anger du ett namn för distributionen och väljer sedan Distribuera. När distributionen har skapats visas sidan med distributionsinformation. Information omfattar det datum då du skapade distributionen och det skapade datumet och versionen av modellen som du distribuerade.

  5. På sidan med distributionsinformation från föregående steg väljer du Öppna på lekplatsen.

    Skärmbild av information om GPT-chattdistribution.

Mer information om hur du distribuerar modeller finns i distribuera modeller.

Chatta på lekplatsen utan dina data

På Azure AI Studio Playground kan du se hur din modell svarar med och utan dina data. I det här avsnittet testar du din modell utan dina data. I nästa avsnitt lägger du till dina data i modellen för att hjälpa den att bättre besvara frågor om dina produkter.

  1. På lekplatsen kontrollerar du att Chatt är valt i listrutan Läge . Välj din distribuerade GPT-chattmodell i listrutan Distribution .

    Skärmbild av chattlekplatsen med chattläget och modellen vald.

  2. I textrutan Systemmeddelande i fönstret Assistentkonfiguration anger du den här uppmaningen för att vägleda assistenten: "Du är en AI-assistent som hjälper människor att hitta information." Du kan skräddarsy uppmaningen för ditt scenario. Mer information finns i promptexempel.

  3. Välj Tillämpa ändringar för att spara ändringarna och välj Fortsätt när du uppmanas att se om du vill uppdatera systemmeddelandet.

  4. I chattsessionsfönstret anger du följande fråga: "Hur mycket kostar TrailWalker-vandringsskorna" och väljer sedan den högra pilikonen som ska skickas.

    Skärmbild av den första chattfrågan utan grunddata.

  5. Assistenten svarar att den inte vet svaret. Modellen har inte tillgång till produktinformation om TrailWalker-vandringsskorna.

    Skärmbild av assistentens svar utan grunddata.

I nästa avsnitt lägger du till dina data i modellen för att hjälpa den att besvara frågor om dina produkter.

Lägg till dina data och försök chattmodellen igen

Du behöver en lokal kopia av exempel på produktinformation. Mer information och länkar till exempeldata finns i förutsättningarna.

Du laddar upp dina lokala datafiler till Azure Blob Storage och skapar ett Azure AI Search-index. Din datakälla används för att hjälpa till att förankra modellen med specifika data. Jordning innebär att modellen använder dina data för att hjälpa den att förstå kontexten för din fråga. Du ändrar inte själva den distribuerade modellen. Dina data lagras separat och säkert i din Azure-prenumeration. Mer information finns i Azure OpenAI om dina data.

Följ dessa steg för att lägga till dina data på lekplatsen för att hjälpa assistenten att svara på frågor om dina produkter.

  1. Om du inte redan är i Azure AI Studio Playground väljer du Skapa på den översta menyn och väljer sedan Playground på den hopfällbara vänstra menyn.

  2. I fönstret Assistentkonfiguration väljer du Lägg till dina data (förhandsversion)>+ Lägg till en datakälla.

    Skärmbild av chattlekplatsen med alternativet att lägga till en synlig datakälla.

  3. På sidan Datakälla som visas väljer du Ladda upp filer i listrutan Välj datakälla .

    Skärmbild av alternativen för val av produktdatakälla.

    Dricks

    Information om alternativ för datakällor och filtyper och format som stöds finns i Azure OpenAI om dina data.

  4. Ange produktinformation som namnet på ditt produktinformationsindex.

    Skärmbild av de resurser och den information som krävs för att ladda upp filer.

  5. Välj eller skapa en Azure AI Search-resurs med namnet contoso-outdoor-search och välj bekräftelsen att anslutningen medför användning för ditt konto.

    Kommentar

    Du använder produktinformationsindexet och Azure AI Search-resursen contoso-outdoor-search senare i den här självstudien. Om namnen du anger skiljer sig från vad som anges här ska du använda de namn som du angav i resten av självstudien.

  6. Välj den Azure-prenumeration som innehåller den Azure OpenAI-resurs som du vill använda. Välj sedan Nästa.

  7. På sidan Ladda upp filer väljer du Bläddra efter en fil och väljer de filer som du vill ladda upp. Välj de produktinformationsfiler som du laddade ned eller skapade tidigare. Se förutsättningarna. Om du vill ladda upp fler än en fil gör du det nu. Du kan inte lägga till fler filer senare i samma lekplatssession.

  8. Välj Ladda upp för att ladda upp filen till ditt Azure Blob Storage-konto. Välj sedan Nästa längst ned på sidan.

    Skärmbild av dialogrutan för att välja och ladda upp filer.

  9. På sidan Datahantering under Söktyp väljer du Nyckelord. Den här inställningen hjälper dig att avgöra hur modellen svarar på begäranden. Välj sedan Nästa.

    Kommentar

    Om du hade lagt till vektorsökning på sidan Välj eller lägg till datakälla skulle fler alternativ vara tillgängliga här mot en extra kostnad. Mer information finns i Azure OpenAI om dina data.

  10. Granska informationen du angav och välj Spara och stäng. Nu kan du chatta med modellen och den använder information från dina data för att konstruera svaret.

    Skärmbild av gransknings- och slutsidan för att lägga till data.

  11. Nu i fönstret Assistentkonfiguration kan du se att datainmatningen pågår. Vänta tills du ser datakällan och indexnamnet i stället för statusen innan du fortsätter.

    Skärmbild av chattlekplatsen med status för datainmatning i vyn.

  12. Nu kan du chatta med modellen och ställa samma fråga som tidigare ("Hur mycket kostar TrailWalker-vandringsskorna") och den här gången använder den information från dina data för att konstruera svaret. Du kan expandera referensknappen för att se de data som användes.

    Skärmbild av assistentens svar med grunddata.

Skapa beräkning och körning som behövs för promptflöde

Du använder promptflöde för att optimera de meddelanden som skickas till andrepilotens chattmodell. Prompt flow kräver en beräkningsinstans och en körning. Om du redan har en beräkningsinstans och en körning kan du hoppa över det här avsnittet och stanna kvar på lekplatsen.

Följ dessa steg för att skapa en beräkningsinstans och en körning:

  1. Om du inte har någon beräkningsinstans kan du skapa en i Azure AI Studio.
  2. Skapa sedan en körning genom att följa stegen i hur du skapar en körning.

Om du vill slutföra resten av självstudien kontrollerar du att körningen är i statusen Körs . Du kan behöva välja Uppdatera för att se den uppdaterade statusen.

Viktigt!

Du debiteras för beräkningsinstanser medan de körs. För att undvika onödiga Azure-kostnader pausar du beräkningsinstansen när du inte arbetar aktivt i promptflödet. Mer information finns i hur du startar och stoppar beräkning.

Skapa ett promptflöde från lekplatsen

Nu när din distribuerade chattmodell fungerar på lekplatsen med dina data kan du distribuera din copilot som en webbapp från lekplatsen.

Men du kanske frågar "Hur kan jag anpassa den här andrepiloten ytterligare?" Du kanske vill lägga till flera datakällor, jämföra olika frågor eller prestanda för flera modeller. Ett promptflöde fungerar som ett körbart arbetsflöde som effektiviserar utvecklingen av ditt LLM-baserade AI-program. Det ger ett omfattande ramverk för att hantera dataflöde och bearbetning i ditt program.

I det här avsnittet får du lära dig hur du övergår till att fråga efter flöde från lekplatsen. Du exporterar chattmiljön på lekplatsen, inklusive anslutningar till de data som du har lagt till. Senare i den här självstudien utvärderar du flödet och distribuerar sedan flödet för förbrukning.

Kommentar

Ändringarna som görs i promptflödet tillämpas inte bakåt för att uppdatera lekplatsmiljön.

Du kan skapa ett promptflöde från lekplatsen genom att följa dessa steg:

  1. Om du inte redan är i Azure AI Studio Playground väljer du Skapa på den översta menyn och väljer sedan Playground på den hopfällbara vänstra menyn.

  2. Välj Öppna i promptflöde på menyn ovanför fönstret Chattsession .

  3. Ange ett mappnamn för ditt promptflöde. Välj sedan Öppna. Azure AI Studio exporterar playground-chattmiljön, inklusive anslutningar till dina data för att fråga flöde.

    Skärmbild av dialogrutan Öppna i promptflöde.

I ett flöde står noderna i centrum och representerar specifika verktyg med unika funktioner. Dessa noder hanterar databearbetning, uppgiftskörning och algoritmiska åtgärder med indata och utdata. Genom att ansluta noder upprättar du en sömlös kedja av åtgärder som vägleder dataflödet genom ditt program. Mer information finns i promptflödesverktyg.

För att underlätta nodkonfiguration och finjustering tillhandahålls en visuell representation av arbetsflödesstrukturen via en DAG-graf (riktad acyklisk graf). Det här diagrammet visar anslutningen och beroendena mellan noder, vilket ger en tydlig översikt över hela arbetsflödet. Noderna i diagrammet som visas här är representativa för den lekplatschattupplevelse som du exporterade till promptflödet.

Skärmbild av standarddiagrammet som exporterats från lekplatsen för att fråga efter flöde.

Noder kan läggas till, uppdateras, ordnas om eller tas bort. Noderna i flödet i det här läget är:

  • DetermineIntent: Den här noden avgör avsikten med användarens fråga. Den använder systemprompten för att fastställa avsikten. Du kan redigera systemprompten för att tillhandahålla scenariospecifika exempel med några bilder.
  • ExtractIntent: Den här noden formaterar utdata från noden DetermineIntent och skickar den till noden RetrieveDocuments .
  • RetrieveDocuments: Den här noden söker efter de viktigaste dokumenten som är relaterade till frågan. Den här noden använder söktypen och alla parametrar som du förkonfigurerade i Playground.
  • FormatRetrievedDocuments: Den här noden formaterar utdata från noden RetrieveDocuments och skickar den till noden DetermineReply .
  • DetermineReply: Den här noden innehåller en omfattande systemprompt som ber LLM att svara med endast de hämtade dokumenten. Det finns två indata:
    • Noden RetrieveDocuments innehåller de mest hämtade dokumenten.
    • Noden FormatConversation innehåller den formaterade konversationshistoriken, inklusive den senaste frågan.

Noden FormatReply formaterar utdata från noden DetermineReply .

I promptflöde bör du också se:

  • Spara: Du kan spara ditt promptflöde när som helst genom att välja Spara på den översta menyn. Se till att spara ditt promptflöde regelbundet när du gör ändringar i den här självstudien.

  • Körning: Den körning som du skapade tidigare i den här självstudien. Du kan starta och stoppa runtimes och beräkningsinstanser via AI-projektinställningar på den vänstra menyn. Om du vill arbeta i promptflödet kontrollerar du att din körning är i statusen Körs .

    Skärmbild av redigeringsprogrammet för promptflöde och omgivande menyer.

  • Verktyg: Du kan återgå till kommandotolken när som helst genom att välja Fråga flöde från Verktyg på den vänstra menyn. Välj sedan mappen prompt flow som du skapade tidigare (inte exempelflödet).

    Skärmbild av listan över dina promptflöden.

Anpassa promptflöde med flera datakällor

Tidigare i Azure AI Studio Playground lade du till dina data för att skapa ett sökindex som innehöll produktdata för Contoso-andrepiloten. Hittills kan användarna bara fråga om produkter med frågor som "Hur mycket kostar TrailWalker vandringsskor?". Men de kan inte få svar på frågor som "Hur många TrailWalker vandringsskor köpte Daniel Wilson?" För att aktivera det här scenariot lägger vi till ytterligare ett index med kundinformation i flödet.

Skapa kundinformationsindexet

Du behöver en lokal kopia av exempel på kundinformation. Mer information och länkar till exempeldata finns i förutsättningarna.

Följ de här anvisningarna om hur du skapar ett nytt index:

  1. Välj Index på den vänstra menyn. Välj sedan + Nytt index.

    Skärmbild av indexsidan med knappen för att skapa ett nytt index.

    Du tas till guiden Skapa ett index .

  2. På sidan Källdata väljer du Ladda upp mapp i listrutan Ladda upp . Välj de kundinformationsfiler som du laddade ned eller skapade tidigare. Se förutsättningarna.

    Skärmbild av alternativen för val av kunddatakälla.

  3. Välj Nästa längst ned på sidan.

  4. Välj samma Azure AI Search-resurs (contoso-outdoor-search) som du använde för ditt produktinformationsindex (produktinformation). Välj sedan Nästa.

    Skärmbild av den valda Azure AI Search-resursen.

  5. Välj Hybrid + Semantisk (rekommenderas) för söktypen. Den här typen bör väljas som standard.

  6. Välj Default_AzureOpenAI i listrutan Azure OpenAI-resurs . Markera kryssrutan för att bekräfta att en Inbäddningsmodell för Azure OpenAI kommer att distribueras om den inte redan är det. Välj sedan Nästa.

    Skärmbild av alternativ för indexsökningstyp.

    Kommentar

    Inbäddningsmodellen visas med andra modelldistributioner på sidan Distributioner .

  7. Ange kundinformation för indexnamnet. Välj sedan Nästa.

    Skärmbild av indexnamnet och alternativen för virtuella datorer.

  8. Granska informationen du angav och välj Skapa.

    Skärmbild av sidan för att granska och slutföra skapande av index.

    Kommentar

    Du använder indexet customer-info och Azure AI Search-resursen contoso-outdoor-search senare i den här självstudien. Om namnen du anger skiljer sig från vad som anges här ska du använda de namn som du angav i resten av självstudien.

  9. Du kommer till sidan med indexinformation där du kan se statusen för att skapa ditt index

    Skärmbild av information om kundinformationsindex.

Mer information om hur du skapar ett index finns i Skapa ett index.

Lägga till kundinformation i flödet

När du är klar med att skapa ditt index går du tillbaka till ditt promptflöde och följer dessa steg för att lägga till kundinformation i flödet:

  1. Välj noden RetrieveDocuments i diagrammet och byt namn på den till RetrieveProductInfo. Nu kan noden hämta produktinformation skiljas från noden hämta kundinformation som du lägger till i flödet.

    Skärmbild av noden för promptflöde för att hämta produktinformation.

  2. Välj + Python på den översta menyn för att skapa en ny Python-nod som används för att hämta kundinformation.

    Skärmbild av noden för promptflöde för att hämta kundinformation.

  3. Ge noden namnet RetrieveCustomerInfo och välj Lägg till.

  4. Kopiera och klistra in Python-koden från noden RetrieveProductInfo i noden RetrieveCustomerInfo för att ersätta all standardkod.

  5. Välj knappen Verifiera och parsa indata för att verifiera indata för noden RetrieveCustomerInfo. Om indata är giltiga parsar promptflödet indata och skapar nödvändiga variabler som du kan använda i koden.

    Skärmbild av knappen verifiera och parsa indata.

  6. Redigera RetrieveCustomerInfo-indata som uppmanar flödet att parsas åt dig så att det kan ansluta till ditt kundinformationsindex.

    Skärmbild av indata som ska redigeras i noden hämta kundinformation.

    Kommentar

    Diagrammet uppdateras omedelbart efter att du har angett indatavärdet för frågor till ExtractIntent.output.search_intents. I diagrammet kan du se att RetrieveCustomerInfo hämtar indata från ExtractIntent.

    Indata är skiftlägeskänsliga, så se till att de matchar dessa värden exakt:

    Namn Typ Värde
    embeddingModel Anslut ion Azure OpenAI Default_AzureOpenAI
    embeddingModelName sträng None
    indexName sträng kundinformation
    Frågor sträng ${ExtractIntent.output.search_intents}
    queryType sträng Enkel
    sök Anslut ion Kognitiv sökning contoso-outdoor-search
    semanticConfiguration sträng None
    topK heltal 5
  7. Spara ändringarna genom att välja Spara på den översta menyn.

Formatera hämtade dokument till utdata

Nu när du har både produkt- och kundinformation i ditt promptflöde formaterar du de hämtade dokumenten så att den stora språkmodellen kan använda dem.

  1. Välj noden FormatRetrievedDocuments i diagrammet.

  2. Kopiera och klistra in följande Python-kod för att ersätta allt innehåll i kodblocket FormatRetrievedDocuments .

    from promptflow import tool
    
    @tool
    def format_retrieved_documents(docs1: object, docs2: object, maxTokens: int) -> str:
      formattedDocs = []
      strResult = ""
      docs = [val for pair in zip(docs1, docs2) for val in pair]
      for index, doc in enumerate(docs):
        formattedDocs.append({
          f"[doc{index}]": {
            "title": doc['title'],
            "content": doc['content']
          }
        })
        formattedResult = { "retrieved_documents": formattedDocs }
        nextStrResult = str(formattedResult)
        if (estimate_tokens(nextStrResult) > maxTokens):
          break
        strResult = nextStrResult
    
      return {
              "combined_docs": docs,
              "strResult": strResult
          }
    
    def estimate_tokens(text: str) -> int:
      return (len(text) + 2) / 3
    
  3. Välj knappen Verifiera och parsa indata för att verifiera indata för noden FormatRetrievedDocuments. Om indata är giltiga parsar promptflödet indata och skapar nödvändiga variabler som du kan använda i koden.

  4. Redigera formatretrievedDocuments-indata som uppmanar flödet att parsas åt dig så att det kan extrahera produkt- och kundinformation från noderna RetrieveProductInfo och RetrieveCustomerInfo.

    Skärmbild av indata som ska redigeras i det format som hämtats dokumentnoden.

    Indata är skiftlägeskänsliga, så se till att de matchar dessa värden exakt:

    Namn Typ Värde
    docs1 objekt ${RetrieveProductInfo.output}
    docs2 objekt ${RetrieveCustomerInfo.output}
    maxTokens heltal 5000
  5. Välj noden DetermineReply i diagrammet.

  6. Ange dokumentationsindata till ${FormatRetrievedDocuments.output.strResult}.

    Skärmbild som visar hur du redigerar indatavärdet för dokumentationen i den fastställa svarsnoden.

  7. Välj utdatanoden i diagrammet.

  8. Ange indata för fetched_docs till ${FormatRetrievedDocuments.output.combined_docs}.

    Skärmbild av redigering av fetched_docs indatavärde i utdatanoden.

  9. Spara ändringarna genom att välja Spara på den översta menyn.

Chatta i promptflöde med produkt- och kundinformation

Vid det här laget har du både produkt- och kundinformation i promptflödet. Du kan chatta med modellen i snabbflöde och få svar på frågor som "Hur många TrailWalker vandringsskor köpte Daniel Wilson?" Innan du fortsätter till en mer formell utvärdering kan du chatta med modellen för att se hur den svarar på dina frågor.

  1. Välj Chatt på den översta menyn i promptflödet för att prova att chatta.

  2. Ange "Hur många TrailWalker vandringsskor köpte Daniel Wilson?" och välj sedan den högra pilikonen att skicka.

  3. Svaret är vad du förväntar dig. Modellen använder kundinformationen för att besvara frågan.

    Skärmbild av assistentens svar med produkt- och kundinformation.

Utvärdera flödet med hjälp av en datauppsättning för fråge- och svarsutvärdering

I Azure AI Studio vill du utvärdera flödet innan du distribuerar flödet för förbrukning.

I det här avsnittet använder du den inbyggda utvärderingen för att utvärdera ditt flöde med en datauppsättning för fråge- och svarsutvärdering. Den inbyggda utvärderingen använder AI-assisterade mått för att utvärdera ditt flöde: grundvärde, relevans och hämtningspoäng. Mer information finns i inbyggda utvärderingsmått.

Skapa en utvärdering

Du behöver en datauppsättning för fråge- och svarsutvärdering som innehåller frågor och svar som är relevanta för ditt scenario. Skapa en ny fil med namnet qa-evaluation.jsonl lokalt. Kopiera och klistra in följande frågor och svar ("truth") i filen.

{"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 när du har din utvärderingsdatauppsättning kan du utvärdera ditt flöde genom att följa dessa steg:

  1. Välj Utvärdera>inbyggd utvärdering på den översta menyn i promptflödet.

    Skärmbild av alternativet att skapa en inbyggd utvärdering från promptflödet.

    Du kommer till guiden Skapa en ny utvärdering .

  2. Ange ett namn för utvärderingen och välj en körning.

  3. Välj Fråge- och svarspar med hämtningsförhöjd generering från scenarioalternativen.

    Skärmbild av att välja ett utvärderingsscenario.

  4. Välj det flöde som ska utvärderas. I det här exemplet väljer du Contosos utomhusflöde eller vad du har döpt till ditt flöde. Välj sedan Nästa.

  5. Välj de mått som du vill använda för att utvärdera ditt flöde. I det här exemplet väljer du Groundedness, Relevans och Hämtningspoäng.

    Skärmbild av val av utvärderingsmått.

  6. Välj en modell som ska användas för utvärdering. I det här exemplet väljer du gpt-35-turbo-16k. Välj sedan Nästa.

    Kommentar

    Utvärdering med AI-assisterade mått måste anropa en annan GPT-modell för att utföra beräkningen. För bästa prestanda använder du en modell som stöder minst 16 000 token, till exempel gpt-4-32k eller gpt-35-turbo-16k-modellen. Om du inte tidigare har distribuerat en sådan modell kan du distribuera en annan modell genom att följa stegen i Distribuera en chattmodell. Gå sedan tillbaka till det här steget och välj den modell som du distribuerade.

  7. Välj Lägg till ny datauppsättning. Välj sedan Nästa.

    Skärmbild av alternativet att använda en ny eller befintlig datauppsättning.

  8. Välj Ladda upp filer, bläddra bland filer och välj filen qa-evaluation.jsonl som du skapade tidigare.

    Skärmbild av knappen ladda upp filer i datauppsättningen.

  9. När filen har laddats upp måste du mappa egenskaperna från filen (datakällan) till utvärderingsegenskaperna. Ange följande värden för varje datakällaegenskap:

    Skärmbild av mappningen av utvärderingsdatauppsättningen.

    Name beskrivning Typ Data source
    chat_history Chatthistoriken lista ${data.chat_history}
    fråga Frågan sträng ${data.question}
    Fråga En fråga som söker specifik information sträng ${data.question}
    Svar Svaret på frågan som genereras av modellen som svar sträng ${run.outputs.reply}
    Dokument Sträng med kontext från hämtade dokument sträng ${run.outputs.fetched_docs}
  10. Välj Nästa.

  11. Granska utvärderingsinformationen och välj sedan Skicka.

    Skärmbild av gransknings- och slutsidan i dialogrutan Skapa utvärdering.

    Du kommer till sidan Måttutvärderingar .

Visa utvärderingsstatus och resultat

Nu kan du visa utvärderingsstatus och resultat genom att följa dessa steg:

  1. När du har skapat en utvärdering går du till Skapa>utvärdering om du inte redan är där. På sidan Måttutvärderingar kan du se utvärderingsstatusen och de mått som du har valt. Du kan behöva välja Uppdatera efter ett par minuter för att se statusen Slutförd .

    Skärmbild av sidan måttutvärderingar.

    Dricks

    När utvärderingen har statusen Slutförd behöver du inte körning eller beräkning för att slutföra resten av den här självstudien. Du kan stoppa beräkningsinstansen för att undvika onödiga Azure-kostnader. Mer information finns i hur du startar och stoppar beräkning.

  2. Välj namnet på utvärderingen som slutfördes först (contoso-evaluate-from-flow_variant_0) för att se utvärderingsinformationen med de kolumner som du mappade tidigare.

    Skärmbild av sidan med detaljerade måttresultat.

  3. Välj namnet på utvärderingen som slutfördes tvåa (evaluation_contoso-evaluate-from-flow_variant_0) för att se utvärderingsmåtten: Grundvärde, Relevans och Hämtningspoäng.

    Skärmbild av de genomsnittliga måttpoängen.

Mer information finns i Visa utvärderingsresultat.

Distribuera flödet

Nu när du har skapat ett flöde och slutfört en måttbaserad utvärdering är det dags att skapa din onlineslutpunkt för slutsatsdragning i realtid. Det innebär att du kan använda det distribuerade flödet för att besvara frågor i realtid.

Följ de här stegen för att distribuera ett promptflöde som en onlineslutpunkt från Azure AI Studio.

  1. Ha ett promptflöde redo för distribution. Om du inte har något kan du se hur du skapar ett promptflöde.

  2. Valfritt: Välj Chatt för att testa om flödet fungerar korrekt. Vi rekommenderar att du testar flödet före distributionen.

  3. Välj Distribuera i flödesredigeraren.

    Skärmbild av distributionsknappen från en redigeringsprogram för fråga.

  4. Ange den begärda informationen på sidan Grundläggande Inställningar i distributionsguiden.

    Skärmbild av sidan grundläggande inställningar i distributionsguiden.

  5. Välj Nästa för att gå vidare till sidorna med avancerade inställningar.

  6. På sidan Avancerade inställningar – Slutpunkt lämnar du standardinställningarna och väljer Nästa.

  7. På sidan Avancerade inställningar – Distribution lämnar du standardinställningarna och väljer Nästa.

  8. På sidan Avancerade inställningar – Utdata och anslutningar kontrollerar du att alla utdata är markerade under Inkluderad i slutpunktssvaret.

    Skärmbild av sidan avancerade inställningar i distributionsguiden.

  9. Välj Granska + Skapa för att granska inställningarna och skapa distributionen.

  10. Välj Skapa för att distribuera promptflödet.

    Skärmbild av sidan granska inställningar för flödesdistribution för snabbflöde.

Mer information finns i hur du distribuerar ett flöde.

Använda det distribuerade flödet

Ditt copilot-program kan använda det distribuerade promptflödet för att besvara frågor i realtid. Du kan använda REST-slutpunkten eller SDK:t för att använda det distribuerade flödet.

  1. Om du vill visa status för distributionen i Azure AI Studio väljer du Distributioner i det vänstra navigeringsfältet. När distributionen har skapats kan du välja distributionen för att visa informationen.

    Skärmbild av distributionstillståndet för promptflödet som pågår.

    Kommentar

    Om du ser ett meddelande om att den här slutpunkten för närvarande inte har några distributioner eller om tillståndet fortfarande uppdateras, kan du behöva välja Uppdatera efter ett par minuter för att se distributionen.

  2. Du kan också använda informationssidan för att ändra autentiseringstyp eller aktivera övervakning.

    Skärmbild av sidan med information om distribution av promptflöde.

  3. Välj fliken Förbruka . Du kan se kodexempel och REST-slutpunkten för ditt copilot-program för att använda det distribuerade flödet.

    Skärmbild av slutpunkten för distribution av promptflöde och kodexempel.

Rensa resurser

För att undvika onödiga Azure-kostnader bör du ta bort de resurser som du skapade i den här självstudien om de inte längre behövs. Om du vill hantera resurser kan du använda Azure-portalen.

Du kan också stoppa eller ta bort din beräkningsinstans i Azure AI Studio.

Demo för Azure AI Studio Enterprise-chattlösning

Lär dig hur du skapar en detaljhandelspilot med dina data med Azure AI Studio i den här genomgångsvideon från slutpunkt till slutpunkt.

Nästa steg