Generativ dataintelligens

Förbättra LLM-prestanda med feedback från människor och AI på Amazon SageMaker för Amazon Engineering | Amazon webbtjänster

Datum:

Amazon EU Design and Construction (Amazon D&C) teamet är ingenjörsteamet som designar och bygger Amazons lager. Teamet navigerar i en stor volym av dokument och hittar rätt information för att säkerställa att lagerdesignen uppfyller de högsta standarderna. I posten En generativ AI-driven lösning på Amazon SageMaker för att hjälpa Amazon EU design och konstruktion, presenterade vi en fråga som besvarar botlösning med hjälp av en Retrieval Augmented Generation (RAG) pipeline med en finjusterad stor språkmodell (LLM) för Amazon D&C för att effektivt hämta korrekt information från en stor volym oorganiserade dokument och tillhandahålla snabba och högkvalitativa tjänster i sina byggprojekt. Amazon D&C-teamet implementerade lösningen i en pilot för Amazons ingenjörer och samlade in feedback från användare.

I det här inlägget delar vi hur vi analyserade feedbackdata och identifierade begränsningar av noggrannhet och hallucinationer som RAG gav, och använde den mänskliga utvärderingspoängen för att träna modellen genom förstärkning lärande. För att öka utbildningsproverna för bättre inlärning använde vi också en annan LLM för att generera feedbackpoäng. Denna metod tog itu med RAG-begränsningen och förbättrade botens svarskvalitet ytterligare. Vi presenterar förstärkningsinlärningsprocessen och benchmarkingresultaten för att demonstrera förbättringen av LLM-prestanda. Lösningen använder Amazon SageMaker JumpStart som kärntjänst för modellimplementering, finjustering och förstärkningsinlärning.

Samla in feedback från Amazons ingenjörer i ett pilotprojekt

Efter att ha utvecklat lösningen som beskrivs i En generativ AI-driven lösning på Amazon SageMaker för att hjälpa Amazon EU design och konstruktion, implementerade Amazon D&C-teamet lösningen och körde ett pilotprojekt med Amazons ingenjörer. Ingenjörerna fick åtkomst till pilotsystemet genom en webbapplikation utvecklad av Strömbelyst, ansluten till RAG-rörledningen. I pipeline använde vi Amazon OpenSearch Service för vektordatabasen och distribuerade en finjusterad Mistral-7B-Instruct-modell på Amazon SageMaker.

Ett av pilotmålen är att samla in feedback från Amazons ingenjörer och använda feedbacken för att ytterligare minska LLM-hallucinationer. För att uppnå detta utvecklade vi en modul för insamling av feedback i användargränssnittet, som visas i följande figur, och lagrade webbsessionsinformationen och användarfeedback i Amazon DynamoDB. Genom gränssnittet för insamling av feedback kan Amazons ingenjörer välja mellan fem nöjdhetsnivåer: håller inte med, håller inte med, neutral, håller med och håller helt med, vilket motsvarar feedbackpoängen från 1–5. De kan också ge ett bättre svar på frågan eller kommentera varför LLM-svaret inte är tillfredsställande.

mänsklig feedback UI

Under pilotprojektet gav användarna 118 feedbacksvar. Följande diagram visar fördelningen från negativ till positiv. Vi observerade att de felaktiga svaren markerade av negativ feedback (håller inte med och håller inte med) är 45 % av den totala feedbacken (53 av 118). Vissa av felen (cirka 10 % av negativ feedback och 7.5 % av de övergripande svaren) kan åtgärdas genom användarutbildning och snabb teknik. Dessutom kan vi ta itu med problemet med lösningen av LLM-finjustering och förstärkningsinlärning, som beskrivs i nästa avsnitt.

Användarfeedback från pilot

Vissa användare lämnade helt enkelt en anteckning, till exempel "Bra!" för svaren som håller mycket med, eller "Svarar inte på frågan", för svaren som inte håller med. Andra användare gav poäng och förklarade hur de motiverar LLM-svaren i sina anteckningar. I följande exempel tillhandahöll användaren specifikt lämpligt dokument och innehåll för att korrigera LLM-hallucinationen.

Fråga Hur många parkeringsplatser har vi?
Bot svar

Baserat på det givna sammanhanget har vi inte tillräckligt med information för att fastställa antalet parkeringsplatser. I sammanhanget diskuteras minimistorleken på parkeringsplatser och kraven på yttre belysningsnivåer, men det ger inget specifikt antal parkeringsplatser.

**Du kan hänvisa till ytterligare förklaringar i följande resurser:**

* ARS GEN 10.0/05.01.02. Designkriterier & bilagor/prestandapaket AR Sorterbara designkriterier v20.1.1.pdf – sida: 10

* ARS GEN 10.0/05.01.02. Designkriterier & bilagor/prestandapaket AR Sorterbara designkriterier v20.1.1.pdf – sida: 79

Användarpoäng Helt oenig
Användaranteckningar Detta specificeras på sidan 21 i designkriterierna avsnitt 01 13 10

Förbättra botrespons med övervakad finjustering och förstärkningsinlärning

Lösningen består av tre steg av finjustering:

  1. Genomför övervakad finjustering med hjälp av märkta data. Denna metod beskrevs i En generativ AI-driven lösning på Amazon SageMaker för att hjälpa Amazon EU design och konstruktion.
  2. Samla in användarfeedback för att märka fråge-svar-paren för ytterligare LLM-inställning.
  3. När träningsdatan är klar, justera modellen ytterligare med hjälp av förstärkande lärande från mänsklig feedback (RLHF).

RLHF används i stor utsträckning genom applikationer för generativ artificiell intelligens (AI) och LLM. Den införlivar mänsklig feedback i belöningsfunktionen och tränar modellen med en förstärkningsinlärningsalgoritm för att maximera belöningar, vilket gör att modellen utför uppgifter mer i linje med mänskliga mål. Följande diagram visar pipelinen för stegen.

Finjustera arbetsflödet

Vi testade metoden med hjälp av Amazon D&C-dokument med en Mistral-7B-modell på SageMaker JumpStart.

Övervakad finjustering

I det tidigare inlägget visade vi hur den finjusterade Falcon-7B-modellen överträffar RAG-pipelinen och förbättrar kvaliteten och noggrannheten hos QA-botsvaret. För det här inlägget utförde vi övervakad finjustering på Mistral-7B-modellen. Den övervakade finjusteringen använde PEFT/LoRA-tekniken (LoRA_r = 512, LoRA_alpha = 1024) på ​​436,207,616 5.68 7,677,964,288 parametrar (3.8 % av de totala 137 20 XNUMX XNUMX parametrarna). Utbildningen genomfördes på en pXNUMXx-nod med XNUMX prover syntetiskt genererade av LLM och validerade av människor; processen är väl konvergerad efter XNUMX epoker, som visas i följande figur.

SFT utbildningsprocess

Den finjusterade modellen validerades av 274 prover, och slutledningsresultaten jämfördes med referenssvaren genom den semantiska likhetspoängen. Poängen är 0.8100, vilket är högre än poängen på 0.6419 från den traditionella RAG.

Samla in mänsklig och AI-feedback för förstärkningsinlärning

För RLHF är en tillräcklig mängd högkvalitativa utbildningsprover märkta av ämnesexperter (SMF) väsentliga. Men mänskliga etiketter av dålig kvalitet kommer sannolikt att orsaka sämre modellprestanda än den ursprungliga modellen efter RLHF-träning. Små och medelstora företags tid är en knapp resurs i någon organisation; Att granska hundratals eller tusentals LLM-svar och ge feedback kräver en betydande tidsinvestering från små och medelstora företag som kanske inte har en tydlig avkastning på investeringen.

För att möta denna utmaning antog vi förstärkningsinlärning från AI-feedback (RLAIF) metod. RLAIF anställer en AI-assistent (en annan LLM) för att ge utvärderingspoäng, snarare än från människor. I denna hybrida inlärningsmetod förfinar inlärningsagenten handlingar inte bara baserat på interaktionen med en människa utan också från feedback från en annan AI-modell. Det är mycket mer skalbart att tillhandahålla tillräckligt med utbildningsdata för förstärkningsinlärning, och mycket mindre subjektivt eftersom utbildningen inte är beroende av särskilda preferenser från en liten grupp små och medelstora företag. Små och medelstora företag kan fortfarande vara inblandade, men bara för att övervaka processen och undersöka AI-feedbackens kvalitet. Detta minskar de små och medelstora företagens arbetsbelastning avsevärt, eftersom de AI-genererade poängen och etiketterna är mycket mindre komplicerade för små och medelstora företag att analysera, filtrera och sortera.

I det här användningsfallet tillhandahåller vi följande uppmaning till en antropisk Claude 2-modell för att generera utvärderingspoängen som träningsexempel för steget för inlärning av förstärkning:

"""

Human:

I am going to provide you with a question, a reference answer, and an machine generated answer to the question.

question: {question}

reference answer: {reference_answer}

machine_answer: {machine_answer}

Please analyze the question, the reference answer, and the machine generated answer to determine if the machine generated answer semantically matches the reference answer.

First think through your answer inside of <thinking> tags, then assign a score between 0.0 and 5.0 based on how well the machine answer matches the reference answer. Score 5.0 means a completely match, score 0.0 means a completely mismatch. Answer the score inside of <scoring> tags.

Also provide the reason to give this score inside of <reason> tags.

Assistant: <thinking>

"""

Claude 2-modellen genererar ett utvärderingspoäng och en kommentar om varför poängen ges, som visas i följande exempel.

Fråga Vad menas med "Fit Out Works" i detta sammanhang?
Referenssvar Fit Out Works hänvisar till arbeten som utförs under byggkontraktet av eller på uppdrag av Amazon via utvecklaren fram till första mottagningsdatum från en tänkt utvecklar Shell & Core Base-build position. Dessa verk inkluderar Amazons nödvändiga Fit-Outs, big-box-installationer och anpassade
QA Bot-svar Fit Out Works hänvisar till arbeten som utförs under byggkontraktet av eller på uppdrag av Amazon via utvecklaren fram till första mottagningsdatum från en tänkt utvecklar Shell & Core Base-build position.
AI-poäng 4.5
AI kommentar Maskinsvaret tillhandahåller nyckelinformationen från standardsvaret – att Fit Out Works hänvisar till arbeten som utförts under byggkontraktet av eller på uppdrag av Amazon via utvecklaren fram till första mottagningsdatumet från en tänkt utvecklare Shell & Core Base-build position . De ytterligare detaljerna om att inkludera Amazons nödvändiga Fit-Outs, big-box-installationer och anpassningar är relevanta och hjälper till att ge ytterligare sammanhang, så jag har fått maskinsvaret 4.5 av 5. Det fångar essensen av standardsvaret och ger några användbara extra detaljer.

Av de 274 valideringsfrågorna genererade den övervakade finjusterade modellen 159 svar som har AI-poäng högre än 4. Vi observerade 60 svar med poäng lägre än 3; det finns utrymme för att förbättra den övergripande svarskvaliteten.

Feedbackpoäng före RLHF

Amazon Engineering SMEs validerade denna AI-feedback och erkände fördelarna med att använda AI-poäng. Utan AI-feedback skulle små och medelstora företag behöva lite tid för att granska och analysera varje LLM-svar för att identifiera avgränsade svar och hallucinationer, och för att bedöma om LLM returnerar korrekt innehåll och nyckelbegrepp. AI-feedback ger automatiskt AI-poäng och gör det möjligt för små och medelstora företag att använda filtrering, sortering och gruppering för att validera poängen och identifiera trender i svaren. Detta minskar det genomsnittliga SME:s granskningstid med 80 %.

Förstärkande lärande från mänsklig och AI-feedback

När träningsproverna är klara använder vi algoritm för proximal policyoptimering (PPO). att utföra förstärkningsinlärning. PPO använder en policygradientmetod, som tar små steg för att uppdatera policyn i inlärningsprocessen, så att inlärningsagenterna på ett tillförlitligt sätt kan nå det optimala policynätverket. Detta gör träningsprocessen mer stabil och minskar risken för divergens.

Under utbildningen använder vi först human- och AI-märkta data för att bygga en belöningsmodell, som kommer att användas som vägledning för viktuppdateringen i inlärningsprocessen. För detta användningsfall väljer vi en distilroberta-baserad belöningsmodell och tränar den genom prover i följande format:

[Instruction, Chosen_response, Rejected_response]

Följande är ett exempel på ett träningsrekord.

Instruktion Vad specificeras enligt sammanhanget för inkluderande och tillgänglig design?
Valt_svar BREEAM Credit HEA06 – inkluderande och tillgänglig design – Byggnaden är designad för att passa ändamålet, lämplig och tillgänglig för alla potentiella användare. En åtkomststrategi utvecklas i linje med BREEAM-checklistan A3
Rejected_response Sammanhanget säger det

Belöningsmodellen tränas med inlärningsgraden 1e-5. Som visas i följande diagram, konvergerar träningsbrunnen efter 10 epoker.

RLHF utbildningsprocess

Sedan används belöningsmodellen för förstärkningsinlärning. För detta användningsfall använder vi PEFT/LoRA för att påskynda inlärningen. LoRA_r är 32 och LoRA_alpha är 64. Den PPO-baserade inlärningen är på en hastighet av 1.41e-5 under tre epoker. Förstärkningsträning är mycket flyktig och mycket känslig för etikettdata och feedbackdata. Vi använder måttet reward_mean, den genomsnittliga belöning som erhålls från miljön genom att specifikt övervaka belöningsmodellen, för att observera inlärningsprocessen.

Efter RLAIF kan vi se antalet botsvar med positiva poäng (över 3) öka från 78.1 % till 85.5 %, och de med negativa poäng (under 3) minska från 21.9 % till 14.5 %. Totalt ökar den genomsnittliga AI-feedbackpoängen med upp till 8 %, från 3.9 till 4.2.

Förbättring av RLAIF

Du kan se förbättringen i följande exempel.

Fråga Vilken avjämningsmassa behövs för golvytor som kaklas?
Hänvisning Betonggolv kan endast användas i golvbelagda områden. Se ritningsserie A-32 för att se var golvplattor kan användas.
Bot-svar före RLAIF Betonggolv är endast tillämpligt i
AI-poäng före RLAIF 3
Bot-svar efter RLAIF Betonggolv kan endast användas i områden som kaklas. Se ritningsserie A-32 för att se var kakelgolv kan användas.
AI-poäng efter RLAIF 4.5

Slutsats

Det här inlägget är en fortsättning på vårt arbete med Amazon EU Design and Construction-teamet som diskuteras i En generativ AI-driven lösning på Amazon SageMaker för att hjälpa Amazon EU design och konstruktion. I det här inlägget visade vi hur vi genererade mänsklig och AI-feedbackdata för att finjustera Mistral-7B-modellen med förstärkningsinlärning. Modellen efter RLAIF gav bättre prestanda för Amazon Engineerings frågesvarsbot, förbättrade AI-feedbackpoängen med 8 %. I Amazon D&C-teamets pilotprojekt minskade användningen av RLAIF valideringsarbetet för små och medelstora företag med uppskattningsvis 80 %. Som nästa steg kommer vi att skala upp den här lösningen genom att ansluta till Amazon Engineerings datainfrastruktur och designa ett ramverk för att automatisera den kontinuerliga inlärningsprocessen med en människa i slingan. Vi kommer också att förbättra kvaliteten på AI-feedback ytterligare genom att justera promptmallen.

Genom denna process lärde vi oss hur vi ytterligare kan förbättra kvaliteten och prestandan för frågor som svarar på frågor genom RLHF och RLAIF.

  • Mänsklig validering och förstärkning är avgörande för att ge korrekta och ansvarsfulla utdata från LLM. Den mänskliga feedbacken kan användas i RLHF för att ytterligare förbättra modellens respons.
  • RLAIF automatiserar utvärderings- och inlärningscykeln. Den AI-genererade feedbacken är mindre subjektiv eftersom den inte beror på en speciell preferens från en liten pool av små och medelstora företag.
  • RLAIF är mer skalbart för att förbättra botkvaliteten genom fortsatt förstärkningsinlärning samtidigt som de ansträngningar som krävs från små och medelstora företag minimeras. Det är särskilt användbart för att utveckla domänspecifika generativa AI-lösningar inom stora organisationer.
  • Denna process bör göras regelbundet, särskilt när ny domändata finns tillgänglig för att täckas av lösningen.

I det här användningsfallet använde vi SageMaker JumpStart för att testa flera LLM:er och experimentera med flera LLM-utbildningsmetoder. Det accelererar avsevärt AI-feedback och inlärningscykel med maximerad effektivitet och kvalitet. För ditt eget projekt kan du introducera human-in-the-loop-metoden för att samla in dina användares feedback, eller generera AI-feedback med en annan LLM. Sedan kan du följa trestegsprocessen som definieras i det här inlägget för att finjustera dina modeller med RLHF och RLAIF. Vi rekommenderar att du experimenterar med metoderna med SageMaker JumpStart för att påskynda processen.


Om författaren

YunfeiYunfei Bai är Senior Solutions Architect på AWS. Med en bakgrund inom AI/ML, datavetenskap och analys hjälper Yunfei kunder att använda AWS-tjänster för att leverera affärsresultat. Han designar AI/ML och dataanalyslösningar som övervinner komplexa tekniska utmaningar och driver strategiska mål. Yunfei har en doktorsexamen i elektronik- och elektroteknik. Utanför jobbet tycker Yunfei om att läsa och musik.

Elad_photoElad Dwek är Construction Technology Manager på Amazon. Med en bakgrund inom bygg- och projektledning hjälper Elad team att anta ny teknik och databaserade processer för att leverera byggprojekt. Han identifierar behov och lösningar och underlättar utvecklingen av skräddarsydda attribut. Elad har en MBA och en kandidatexamen i strukturteknik. Utanför jobbet tycker Elad om yoga, träbearbetning och att resa med sin familj.

Luca_photoLuca Cerabone är en Business Intelligence Engineer på Amazon. Luca bygger på sin bakgrund inom datavetenskap och analys och hantverkar skräddarsydda tekniska lösningar för att möta sina kunders unika behov, vilket driver dem mot mer hållbara och skalbara processer. Beväpnad med en MSc i datavetenskap, gillar Luca att engagera sig i gör-det-själv-projekt, trädgårdsarbete och experimentera med kulinariska läckerheter i sina fritidsstunder.

plats_img

Senaste intelligens

plats_img

Chatta med oss

Hallå där! Hur kan jag hjälpa dig?