Vi presenterar Eleven v4Möt Eleven v4, vår mest uttrycksfulla modell hittills.

Hoppa till innehållet

Så byggde vi en effektiv Voice Agent för vår egen dokumentation

Publicerad
Senast uppdaterad

LyssnaLyssna på den här artikeln

På ElevenLabs har vi nyligen integrerat en Conversational AI-röstagent i vår dokumentation för att minska belastningen på supporten från dokumentationsrelaterade frågor (prova den här). Vår supportagent hanterar nu framgångsrikt över 80 % av användarfrågorna i 200 samtal per dag. Resultaten visar AI:s potential att komplettera traditionell dokumentationssupport, samtidigt som de understryker den fortsatta betydelsen av mänsklig support för komplexa frågor. I det här inlägget beskriver jag vår iterativa process, som du kan följa för att upprepa våra resultat. 

Våra mål

Vi ville bygga en agent som kan:

  • Lösa supportfrågor som kan besvaras med hjälp av vår produkt- och supportdokumentation
  • Hänvisa användare till relevanta avsnitt i dokumentationen
  • Vid behov vidarebefordra komplexa frågor till support via e-post eller Discord
  • Föra ett smidigt och naturligt samtal, med låg latens och realistisk hantering av avbrott

Resultat och påverkan

Vi implementerade två utvärderingslager:

(1) Verktyg för AI-utvärdering: För varje samtal går våra inbyggda utvärderingsverktyg igenom det avslutade samtalet och bedömer om agenten lyckades. Kriterierna kan anpassas helt. Vi frågar om agenten löste användarfrågan eller kunde hänvisa användaren till en relevant supportkanal. 

Solved User Inquiry Chart

Vi har successivt förbättrat LLM:ens förmåga att lösa frågor eller hänvisa dem vidare, och har nått 80 % enligt våra utvärderingsverktyg. 

Exklusive samtal med färre än en samtalsrunda, vilket innebär att uppringaren inte ställde någon fråga eller tog upp något problem. 

Det är viktigt att komma ihåg att inte alla typer av supportärenden eller frågor kan lösas av en LLM, särskilt för en startup som bygger snabbt och ständigt förnyar sig, med mycket tekniska och kreativa användare. Som ytterligare förbehåll kommer en utvärderings-LLM inte att bedöma korrekt i 100 % av fallen.

(2) Mänsklig validering: För att jämföra effektiviteten hos våra LLM-baserade valideringsverktyg genomförde vi en mänsklig validering av 150 samtal, med samma utvärderingskriterier som gavs till LLM-verktygen:

  • solved_user_inquiry: definieras som framgång när agenten besvarade användarens frågor med relevant information eller kunde hänvisa till relevant sida eller supportkanal. 
    • LLM:en och människan var överens i 81 % av fallen 
  • hallucination_kb: detta kriterium granskar det slutliga transkriptet och kontrollerar om LLM:ens svar om ElevenLabs produkter följer informationen i kunskapsbasen eller går utöver den. 
    • LLM:en och människan var överens i 83 % av fallen

Den mänskliga utvärderingen visade också att 89 % av relevanta supportfrågor besvarades eller hänvisades vidare korrekt av dokumentationsagenten.

Övriga insikter: 

  • Flera uppringare ville bara testa och försöka prata på olika språk utan att ställa en supportfråga. 
    • För närvarande har vår Conversational AI stöd för flera språk, men de måste definieras i början av samtalet. 
  • Flera uppringare inleder samtal som inte är relevanta för agentens syfte, nämligen att prata om ElevenLabs, våra produkter och vår dokumentation. Skyddsräcken i prompten hjälpte för det mesta, men inte alltid. 
  • Flera uppringare sökte hjälp med kodning eller felsökning. 

Styrkor och begränsningar

Styrkor

Den LLM-drivna agenten är skicklig på att lösa tydliga och specifika frågor som kan besvaras med vår dokumentation, hänvisa uppringare till relevant dokumentation och ge inledande vägledning kring mer komplexa frågor. I de flesta av dessa fall ger agenten snabba, raka och korrekta svar som hjälper direkt. 

Exempel på frågor: 

  • Har ElevenLabs en API-slutpunkt för att radera en röst? 
  • Hur konfigurerar jag åsidosättningar för samtal i min agent? 
  • Hur integrerar jag med telefoni?
  • Har ElevenLabs stöd för spanska?

Rekommendationer:

  • Rikta dig till en målgrupp som oftast har tydliga och specifika frågor som en LLM med dokumentation och verktyg är bra på att besvara. 
  • Använd hänvisningar till andra kanaler för vaga frågor eller frågor som kräver utredning. Det hjälper mycket! 
  • Lägg till utvärderingsverktyg för att fånga upp och övervaka alla frågor som ställs -> justera prompten utifrån insikterna. Lägg till utvärderingsverktyg för framgång och hallucinationer eller avvikelser från kunskapsbasen. 

Begränsningar

Å andra sidan är agenten mindre hjälpsam vid kontoärenden, frågor om priser eller rabatter och ospecifika frågor som skulle gynnas av djupare utredning eller sökning. Detsamma gäller ganska vaga och allmänna problem -> trots att den uppmanas att ställa frågor föredrar LLM:en vanligtvis att svara med något som kan verka relevant utifrån dokumentationen. 

Exempel på frågor: 

  • Verifieringssteget för min PVC misslyckas gång på gång. Varför? 
  • Vad kostar en AI-agent? Kan jag få rabatt? 
  • Jag får ett fel med JS SDK:n? -> Agenten kan hänvisa till relevant dokumentation, men kan inte enkelt hitta och lösa problemet via röst. 

Rekommendationer

  • Röst är inte rätt medium för att dela kod. Uppmana agenten att inte försöka, utan i stället hänvisa till sidor med exempel eller till Discord/supporten.
  • Uppmana agenten att inte svara med långa listor av rekommendationer när problemen eller frågorna är mer komplicerade. Det fungerar i text, men sämre via röst.
  • LLM:er föredrar ofta att svara framför att ställa frågor – uppmana den tydligt att ställa frågor om det behövs för supportanvändningen. (Till exempel: ställ dessa tre frågor innan du går vidare.) Detta är enklare för utgående användningsfall med fasta manus.

Så byggde vi den

Agentkonfiguration: 

Systemprompt

“Du är en teknisk supportagent som heter Alexis. Du ska försöka besvara alla frågor som användaren kan ha om ElevenLabs produkter. Du får dokumentation om ElevenLabs produkter och ska endast använda den informationen för att besvara frågor om ElevenLabs. Du ska vara hjälpsam, vänlig och professionell. Om du inte kan besvara frågan ska du hänvisa uppringaren med redirectToEmailSupport (som öppnar ett e-postmeddelande till supporten hos användaren). Om det inte verkar fungera kan de skicka e-post direkt till team@elevenlabs.io.

Om frågan eller problemet inte är helt tydligt eller tillräckligt specifikt ska du be om mer information och fråga vilken produkt de behöver support för. Om frågan är vag eller mycket bred ska du mer specifikt fråga vad de försöker uppnå och hur. 

Håll dig strikt till språket i ditt första meddelande i samtalet, även när någon frågar eller pratar med dig på ett annat språk. Säg att det är bättre om de avslutar och startar om samtalet och väljer önskat alternativt språk.

Ditt svar kommer att läsas upp av en Text to Speech-modell och ska därför formateras så som det uttalas. Till exempel: i stället för att skriva "kontakta team@elevenlabs.io" ska du skriva "kontakta 'team at elevenlabs dot I O'". Formatera inte ditt textsvar med punktlistor, fetstil eller rubriker. Ge inte långa listor, utan sammanfatta dem och fråga vilken del användaren är intresserad av. Ge inte kodexempel, utan föreslå i stället att användaren tittar på kodexemplen i vår dokumentation. Returnera svaret direkt och inled inte svar med "Agent:" eller något liknande. Rätta inte stavfel, utan ignorera dem bara.

Svara kortfattat i ett par meningar och låt användaren styra var du ska ge mer information. 

Du har följande verktyg till ditt förfogande. Använd dem efter behov utifrån användarens begäran:

`redirectToDocs`:

- När det ska användas: I de flesta situationer, särskilt när användaren behöver mer detaljerad information eller vägledning.

- Varför: Att ge direkt åtkomst till dokumentationen är hjälpsamt för komplexa ämnen, eftersom användaren kan granska och förstå innehållet på egen hand.

`redirectToEmailSupport`:

- När det ska användas: Om användaren behöver hjälp med personliga eller kontospecifika frågor.

- Varför: Kontoärenden hanteras bäst av vårt supportteam via e-post, där de kan få säker åtkomst till relevanta uppgifter.

`redirectToExternalURL`:

- När det ska användas: Om användaren frågar om lösningar på företagsnivå eller vill gå med i externa communityn, till exempel vår Discord-server. Även om de verkar vara en utvecklare som har tekniska problem med ElevenLabs.

- Varför: Företagsförfrågningar och interaktioner i communityn ligger utanför ramen för direkt support på plattformen och hanteras bättre via externa länkar.

Skyddsräcken:

- Håll dig till ämnen och produkter som rör ElevenLabs. Om någon frågar om ämnen som inte rör ElevenLabs ska du säga att du endast är här för att svara på frågor om ElevenLabs produkter.

- Hänvisa endast uppringaren till en sida i taget, eftersom varje hänvisning åsidosätter den föregående.

- Svara inte med långa listor eller kod. Hänvisa i stället till dokumentationen för kodexempel.”

Kunskapsbas

Tillsammans med prompten ger vi LLM:en en kunskapsbas med relevant information i kontexten. Kunskapsbasen innehåller en sammanfattad, men fortfarande stor version (80 000 tecken) av all ElevenLabs dokumentation samt några relevanta URL:er. 

Vi lägger även till förtydliganden och vanliga frågor som en del av kunskapsbasen. 

Verktyg

Vi har konfigurerat tre verktyg:

  • redirectToExternalURL: hänvisar till kontakta säljteamet eller Discord. 
  • redirectToEmailSupport: öppnar ett e-postmeddelande till team@elevenlabs.io
  • redirectToDocs: det här verktyget är konfigurerat för att hänvisa uppringaren till relevanta sidor i vår dokumentation.

Inbyggd utvärdering 

Våra utvärderingsverktyg innebär att en LLM går igenom det slutliga transkriptet och bedömer samtalet utifrån definierade kriterier. 

Utvärderingskriterier (framgång / misslyckande / okänt)

  • hallucination_kb: detta kriterium granskar det slutliga transkriptet och kontrollerar om LLM:ens svar om ElevenLabs produkter följer informationen i kunskapsbasen eller går utöver den. 
  • interaction: bedömer om samtalet gick längre än en samtalsrunda. Ett snabbt sätt att markera om samtal påbörjades men aldrig ledde till någon interaktion. 
  • solved_user_inquiry: definieras som framgång när agenten besvarade användarens frågor med relevant information eller kunde hänvisa till relevant sida eller supportkanal. 
  • positive_interaction: bedömer om samtalet genomfördes utan negativa reaktioner från uppringaren. 

Datainsamling:

  • Issue_type: kategorisera samtalet som bugg, supportärende, fr eller annat
  • Product category: extrahera relevant produkt (TTS, ConvAI osv.) 
  • AllQuestions: extrahera alla frågor som ställs av uppringaren 
  • Unsolved_question: extrahera frågor som LLM:en inte besvarade med relevant information
  • Redirects: extrahera de hänvisningsvägar som agenten utlöste och uppringarens reaktion

Sammanfattning

Vår dokumentationsagent har visat sig vara effektiv för att hjälpa användare att hitta rätt bland vanliga produkt- och supportfrågor, och är en engagerande copilot för användare som navigerar i vår dokumentation. Genom kontinuerlig automatiserad och manuell övervakning kan vi löpande iterera och förbättra agenten. Vi är medvetna om att inte alla typer av supportärenden eller frågor kan lösas av en LLM, särskilt för en startup som bygger snabbt och ständigt förnyar sig, med mycket tekniska och kreativa användare. Men vi har sett att ju mer vi kan automatisera, desto mer tid kan vårt team lägga på de svåra och intressanta problem som uppstår i utkanterna när vår community fortsätter att tänja gränserna för vad som är möjligt med AI-ljud. 

Vår agent drivs av ElevenLabs Conversational AI. Om du vill upprepa mina resultat kan du skapa ett konto gratis och följa mina steg. Om du kör fast kan du prata med agenten som vi har lanserat i vår dokumentation eller kontakta mig och mitt team på Discord. För användningsfall med hög volym (>100 samtal per dag) kan du kontakta vårt säljteam för volymrabatter.

Skriven av

Oswin Kruger Ruiz

Oswin Kruger Ruiz

Forward Deployed Engineering

Oswin is part of the Forward Deployed Engineering team at ElevenLabs, focusing on government deployment.

Liknande artiklar

Skapa med AI-ljud av högsta kvalitet