Så här utvärderar du generativa AI-modeller och program med Azure AI Foundry
Om du vill utvärdera prestandan för dina generativa AI-modeller och program när de tillämpas på en betydande datamängd kan du initiera en utvärderingsprocess. Under den här utvärderingen testas din modell eller ditt program med den angivna datamängden och dess prestanda mäts kvantitativt med både matematiska och AI-assisterade mått. Den här utvärderingskörningen ger dig omfattande insikter om programmets funktioner och begränsningar.
För att utföra den här utvärderingen kan du använda utvärderingsfunktionerna i Azure AI Foundry-portalen, en omfattande plattform som erbjuder verktyg och funktioner för att utvärdera prestanda och säkerhet för din generativa AI-modell. I Azure AI Foundry-portalen kan du logga, visa och analysera detaljerade utvärderingsmått.
I den här artikeln lär du dig att skapa en utvärderingskörning mot modellen, en testdatauppsättning eller ett flöde med inbyggda utvärderingsmått från Azure AI Foundry-användargränssnittet. För större flexibilitet kan du upprätta ett anpassat utvärderingsflöde och använda den anpassade utvärderingsfunktionen. Om ditt mål endast är att utföra en batchkörning utan utvärdering kan du också använda den anpassade utvärderingsfunktionen.
Förutsättningar
Om du vill köra en utvärdering med AI-assisterade mått måste du ha följande redo:
- En testdatauppsättning i något av följande format:
csv
ellerjsonl
. - En Azure OpenAI-anslutning. En distribution av någon av dessa modeller: GPT 3.5-modeller, GPT 4-modeller eller Davinci-modeller. Krävs endast när du kör ai-assisterad kvalitetsutvärdering.
Skapa en utvärdering med inbyggda utvärderingsmått
Med en utvärderingskörning kan du generera måttutdata för varje datarad i testdatauppsättningen. Du kan välja ett eller flera utvärderingsmått för att utvärdera utdata från olika aspekter. Du kan skapa en utvärderingskörning från utvärderings-, modellkatalog- eller promptflödessidorna i Azure AI Foundry-portalen. Sedan visas en utvärderingsguide som hjälper dig att konfigurera en utvärderingskörning.
Från sidan Utvärdera
På den komprimerade vänstra menyn väljer du Utvärdering>+ Skapa en ny utvärdering.
Från modellkatalogsidan
Från den komprimerade vänstra menyn väljer du Modellkatalog> gå till specifik modell > navigera till benchmark-fliken > Prova med dina egna data. Då öppnas modellutvärderingspanelen där du kan skapa en utvärderingskörning mot den valda modellen.
Från flödessidan
På den komprimerade vänstra menyn väljer du Fråga flöde>Utvärdera>automatiserad utvärdering.
Utvärderingsmål
När du startar en utvärdering från utvärderingssidan måste du bestämma vad som är utvärderingsmålet först. Genom att ange lämpligt utvärderingsmål kan vi skräddarsy utvärderingen efter programmets specifika karaktär, vilket säkerställer korrekta och relevanta mått. Vi stöder tre typer av utvärderingsmål:
- Modell och fråga: Du vill utvärdera utdata som genereras av den valda modellen och användardefinierad prompt.
- Datauppsättning: Du har redan din modell genererade utdata i en testdatauppsättning.
- Fråga efter flöde: Du har skapat ett flöde och vill utvärdera utdata från flödet.
Utvärdering av datamängder eller promptflöden
När du anger guiden för att skapa utvärdering kan du ange ett valfritt namn för utvärderingskörningen. Vi erbjuder för närvarande stöd för fråge- och svarsscenariot, som är utformat för program som omfattar att besvara användarfrågor och tillhandahålla svar med eller utan kontextinformation.
Du kan också lägga till beskrivningar och taggar i utvärderingskörningar för förbättrad organisation, kontext och enkel hämtning.
Du kan också använda hjälppanelen för att kontrollera vanliga frågor och svar och vägleda dig själv genom guiden.
Om du utvärderar ett promptflöde kan du välja det flöde som ska utvärderas. Om du initierar utvärderingen från sidan Flöde väljer vi automatiskt ditt flöde att utvärdera. Om du tänker utvärdera ett annat flöde kan du välja ett annat. Det är viktigt att observera att du i ett flöde kan ha flera noder, som var och en kan ha en egen uppsättning varianter. I sådana fall måste du ange noden och de varianter som du vill utvärdera under utvärderingsprocessen.
Konfigurera testdata
Du kan välja från befintliga datauppsättningar eller ladda upp en ny datauppsättning specifikt för att utvärdera. Testdatauppsättningen måste ha modellgenererade utdata som ska användas för utvärdering om inget flöde har valts i föregående steg.
Välj befintlig datauppsättning: Du kan välja testdatauppsättningen från din etablerade datauppsättningssamling.
Lägg till ny datauppsättning: Du kan ladda upp filer från din lokala lagring. Vi stöder
.csv
endast filformat och.jsonl
filformat.Datamappning för flöde: Om du väljer ett flöde att utvärdera kontrollerar du att dina datakolumner är konfigurerade för att justera med de indata som krävs för att flödet ska köra en batchkörning och generera utdata för utvärdering. Utvärderingen utförs sedan med hjälp av utdata från flödet. Konfigurera sedan datamappningen för utvärderingsindata i nästa steg.
Välj mått
Vi stöder tre typer av mått som kurerats av Microsoft för att underlätta en omfattande utvärdering av ditt program:
- AI-kvalitet (AI-assisterad): Dessa mått utvärderar den övergripande kvaliteten och enhetligheten hos det genererade innehållet. För att köra dessa mått krävs en modelldistribution som domare.
- AI-kvalitet (NLP): Dessa NLP-mått är matematiska och utvärderar även den övergripande kvaliteten på det genererade innehållet. De kräver ofta grund sanningsdata, men de kräver inte modelldistribution som domare.
- Risk- och säkerhetsmått: Dessa mått fokuserar på att identifiera potentiella innehållsrisker och säkerställa säkerheten för det genererade innehållet.
Du kan referera till tabellen för den fullständiga listan över mått som vi erbjuder stöd för i varje scenario. Mer detaljerad information om varje måttdefinition och hur den beräknas finns i Utvärderings- och övervakningsmått.
AI-kvalitet (AI-assisterad) | AI-kvalitet (NLP) | Risk- och säkerhetsmått |
---|---|---|
Groundedness, Relevans, Koherens, Fluency, GPT-likhet | F1-poäng, ROUGE, poäng, BLEU-poäng, GLEU-poäng, METEOR-poäng | Självskaderelaterat innehåll, Hatiskt och orättvist innehåll, Våldsamt innehåll, Sexuellt innehåll, Skyddat material, Indirekt attack |
När du kör ai-assisterad kvalitetsutvärdering måste du ange en GPT-modell för beräkningsprocessen. Välj en Azure OpenAI-anslutning och en distribution med antingen GPT-3.5, GPT-4 eller Davinci-modellen för våra beräkningar.
MÅTT för AI-kvalitet (NLP) är matematiskt baserade mått som utvärderar programmets prestanda. De kräver ofta grund sanningsdata för beräkning. ROUGE är en familj av mått. Du kan välja ROUGE-typ för att beräkna poängen. Olika typer av ROUGE-mått erbjuder sätt att utvärdera kvaliteten på textgenereringen. ROUGE-N mäter överlappningen av n-gram mellan kandidaten och hänvisa till texter.
För risk- och säkerhetsmått behöver du inte ange någon anslutning och distribution. Säkerhetsutvärderingar i Azure AI Foundry-portalen tillhandahåller en GPT-4-modell som kan generera allvarlighetsgrad och resonemang för innehållsrisk så att du kan utvärdera ditt program för innehållsskador.
Du kan ange tröskelvärdet för att beräkna defektfrekvensen för måtten för innehållsskador (självskaderelaterat innehåll, hatiskt och orättvist innehåll, våldsamt innehåll, sexuellt innehåll). Defektfrekvensen beräknas genom att ta en procentandel instanser med allvarlighetsgraderna (Mycket låg, Låg, Medel, Hög) över ett tröskelvärde. Som standard anger vi tröskelvärdet som "Medium".
För skyddat material och indirekt attack beräknas defektfrekvensen genom att ta en procentandel av de instanser där utdata är "true" (Defekt hastighet = (#trues/#instances) × 100).
Kommentar
AI-assisterade risk- och säkerhetsmått hanteras av Azure AI Foundry-säkerhetsutvärderingars backend-tjänst och är endast tillgänglig i följande regioner: USA, östra 2, Frankrike, centrala, Storbritannien, södra, Sverige, centrala
Datamappning för utvärdering: Du måste ange vilka datakolumner i datauppsättningen som motsvarar de indata som behövs i utvärderingen. Olika utvärderingsmått kräver olika typer av dataindata för exakta beräkningar.
Kommentar
Om du utvärderar från data bör "svar" mappas till svarskolumnen i datauppsättningen ${data$response}
. Om du utvärderar från flödet ska "svar" komma från flödesutdata ${run.outputs.response}
.
Vägledning om specifika datamappningskrav för varje mått finns i informationen i tabellen:
Krav för fråge- och svarsmått
Mått | Fråga | Response | Kontext | Grund sanning |
---|---|---|---|---|
Grundstötning | Obligatoriskt: Str | Obligatoriskt: Str | Obligatoriskt: Str | Ej tillämpligt |
Koherens | Obligatoriskt: Str | Obligatoriskt: Str | Saknas | Saknas |
Flyt | Obligatoriskt: Str | Obligatoriskt: Str | Saknas | Saknas |
Relevans | Obligatoriskt: Str | Obligatoriskt: Str | Obligatoriskt: Str | Ej tillämpligt |
GPT-likhet | Obligatoriskt: Str | Obligatoriskt: Str | Ej tillämpligt | Obligatoriskt: Str |
F1-poäng | Ej tillämpligt | Obligatoriskt: Str | Ej tillämpligt | Obligatoriskt: Str |
BLEU-poäng | Ej tillämpligt | Obligatoriskt: Str | Ej tillämpligt | Obligatoriskt: Str |
GLEU-poäng | Ej tillämpligt | Obligatoriskt: Str | Ej tillämpligt | Obligatoriskt: Str |
METEOR-poäng | Ej tillämpligt | Obligatoriskt: Str | Ej tillämpligt | Obligatoriskt: Str |
ROUGE-poäng | Ej tillämpligt | Obligatoriskt: Str | Ej tillämpligt | Obligatoriskt: Str |
Självskaderelaterat innehåll | Obligatoriskt: Str | Obligatoriskt: Str | Saknas | Saknas |
Hatiskt och orättvist innehåll | Obligatoriskt: Str | Obligatoriskt: Str | Saknas | Saknas |
Våldsamt innehåll | Obligatoriskt: Str | Obligatoriskt: Str | Saknas | Saknas |
Sexuellt innehåll | Obligatoriskt: Str | Obligatoriskt: Str | Saknas | Saknas |
Skyddat material | Obligatoriskt: Str | Obligatoriskt: Str | Saknas | Saknas |
Indirekt attack | Obligatoriskt: Str | Obligatoriskt: Str | Saknas | Saknas |
- Fråga: en fråga som söker specifik information.
- Svar: svaret på frågan som genereras av modellen.
- Kontext: källan som svaret genereras med avseende på (d.a. grunddokument)...
- Grundsanning: svaret på frågan som genereras av användare/människa som det sanna svaret.
Granska och slutför
När du har slutfört alla nödvändiga konfigurationer kan du granska och fortsätta med att välja Skicka för att skicka utvärderingskörningen.
Modell- och uppmaningsutvärdering
Om du vill skapa en ny utvärdering för den valda modelldistributionen och den definierade prompten använder du panelen för förenklad modellutvärdering. Med det här effektiviserade gränssnittet kan du konfigurera och initiera utvärderingar i en enda konsoliderad panel.
Grundläggande information
Till att börja med kan du konfigurera namnet på utvärderingskörningen. Välj sedan den modelldistribution som du vill utvärdera. Vi stöder både Azure OpenAI-modeller och andra öppna modeller som är kompatibla med Modell som en tjänst (MaaS), till exempel Meta Llama- och Phi-3-familjemodeller. Du kan också justera modellparametrarna som maximalt svar, temperatur och topp-P baserat på dina behov.
I textrutan Systemmeddelande anger du frågan för ditt scenario. Mer information om hur du skapar din fråga finns i promptkatalogen. Du kan välja att lägga till exempel för att visa chatten vilka svar du vill ha. Den försöker efterlikna alla svar som du lägger till här för att se till att de matchar de regler som du har lagt fram i systemmeddelandet.
Konfigurera testdata
När du har konfigurerat modellen och kommandotolken konfigurerar du den testdatauppsättning som ska användas för utvärdering. Den här datamängden skickas till modellen för att generera svar för utvärdering. Du har tre alternativ för att konfigurera dina testdata:
- Generera exempeldata
- Använda befintlig datauppsättning
- Lägg till din datauppsättning
Om du inte har en datauppsättning som är lättillgänglig och vill köra en utvärdering med ett litet exempel kan du välja alternativet att använda en GPT-modell för att generera exempelfrågor baserat på ditt valda ämne. Ämnet hjälper dig att skräddarsy det genererade innehållet efter ditt intresseområde. Frågorna och svaren genereras i realtid och du har möjlighet att återskapa dem efter behov.
Kommentar
Den genererade datamängden sparas i projektets bloblagring när utvärderingskörningen har skapats.
Mappning av data
Om du väljer att använda en befintlig datauppsättning eller ladda upp en ny datauppsättning måste du mappa datauppsättningens kolumner till de obligatoriska fälten för utvärdering. Under utvärderingen utvärderas modellens svar mot viktiga indata, till exempel:
- Fråga: krävs för alla mått
- Kontext: valfritt
- Ground Truth: valfritt, krävs för MÅTT för AI-kvalitet (NLP)
Dessa mappningar säkerställer korrekt justering mellan dina data och utvärderingskriterierna.
Välj utvärderingsmått
Det sista steget är att välja det du vill utvärdera. I stället för att välja enskilda mått och behöva bekanta dig med alla tillgängliga alternativ förenklar vi processen genom att låta dig välja måttkategorier som bäst uppfyller dina behov. När du väljer en kategori beräknas alla relevanta mått inom den kategorin baserat på de datakolumner som du angav i föregående steg. När du har valt måttkategorierna kan du välja "Skapa" för att skicka utvärderingskörningen och gå till utvärderingssidan för att se resultatet.
Vi stöder tre kategorier:
- AI-kvalitet (AI-assisterad): Du måste tillhandahålla en Azure OpenAI-modelldistribution som domare för att beräkna AI-stödda mått.
- AI-kvalitet (NLP)
- Säkerhet
AI-kvalitet (AI-assisterad) | AI-kvalitet (NLP) | Säkerhet |
---|---|---|
Grund (kräver kontext), Relevans (kräver kontext), Koherens, Fluency | F1-poäng, ROUGE, poäng, BLEU-poäng, GLEU-poäng, METEOR-poäng | Självskaderelaterat innehåll, Hatiskt och orättvist innehåll, Våldsamt innehåll, Sexuellt innehåll, Skyddat material, Indirekt attack |
Skapa en utvärdering med anpassat utvärderingsflöde
Du kan utveckla egna utvärderingsmetoder:
På flödessidan: Välj Utvärdera anpassad utvärdering i det komprimerade vänstra menyflödet>>.
Visa och hantera utvärderarna i utvärderingsbiblioteket
Utvärderingsbiblioteket är en central plats där du kan se information och status för dina utvärderare. Du kan visa och hantera Microsoft-utvärderare.
Dricks
Du kan använda anpassade utvärderare via SDK för promptflöde. Mer information finns i Utvärdera med SDK för promptflöde.
Utvärderingsbiblioteket möjliggör även versionshantering. Du kan jämföra olika versioner av ditt arbete, återställa tidigare versioner om det behövs och samarbeta enklare med andra.
Om du vill använda utvärderingsbiblioteket i Azure AI Foundry-portalen går du till projektets utvärderingssida och väljer fliken Utvärderarbibliotek.
Du kan välja utvärderarens namn för att se mer information. Du kan se namn, beskrivning och parametrar och kontrollera alla filer som är associerade med utvärderaren. Här är några exempel på Microsoft-utvärderare:
- För prestanda- och kvalitetsutvärderingar som kurerats av Microsoft kan du visa kommentarsprompten på informationssidan. Du kan anpassa dessa frågor till ditt eget användningsfall genom att ändra parametrarna eller kriterierna enligt dina data och mål Azure AI Evaluation SDK. Du kan till exempel välja Groundedness-Evaluator och kontrollera filen Prompty som visar hur vi beräknar måttet.
- För risk- och säkerhetsutvärderingar som kurerats av Microsoft kan du se definitionen av måtten. Du kan till exempel välja självskadebeteenderelaterad innehållsutvärdering och lära dig vad det innebär och hur Microsoft avgör de olika allvarlighetsgraderna för det här säkerhetsmåttet.
Nästa steg
Läs mer om hur du utvärderar dina generativa AI-program: