Poznaj Eleven v4Poznaj Eleven v4, nasz najbardziej emocjonalny model.

Przejdź do treści

Jak stworzyliśmy skutecznego Voice Agenta do naszej dokumentacji

Opublikowano
Ostatnia aktualizacja

PosłuchajPosłuchaj tego artykułu

W ElevenLabs niedawno osadziliśmy w naszej dokumentacji konwersacyjnego agenta głosowego AI, by odciążyć wsparcie w pytaniach dotyczących dokumentacji (wypróbuj go tutaj). Nasz agent wsparcia skutecznie obsługuje już ponad 80% zgłoszeń użytkowników w ramach 200 rozmów dziennie. Wyniki pokazują, że AI może wspierać tradycyjną pomoc dotyczącą dokumentacji, a jednocześnie podkreślają ciągłą rolę wsparcia człowieka przy złożonych pytaniach. W tym artykule opiszę nasz iteracyjny proces, który możesz wykorzystać, by osiągnąć podobne wyniki. 

Nasze cele

Chcieliśmy stworzyć agenta, który potrafi:

  • Rozwiązywać pytania do wsparcia, na które odpowiedź znajduje się w dokumentacji produktu i wsparcia
  • Kierować użytkowników do odpowiednich sekcji dokumentacji
  • Przekazywać złożone zgłoszenia do wsparcia przez e-mail/Discord, gdy to potrzebne
  • Prowadzić płynną i naturalną rozmowę z niskimi opóźnieniami oraz realistyczną obsługą przerwań

Wyniki i wpływ

Wdrożyliśmy dwie warstwy oceny:

(1) Narzędzia oceny AI: po każdej rozmowie nasze wbudowane narzędzia oceny analizują gotową konwersację i sprawdzają, czy agent odniósł sukces. Kryteria można w pełni dostosować. Pytamy, czy agent rozwiązał zgłoszenie użytkownika lub potrafił przekierować go do odpowiedniego kanału wsparcia. 

Solved User Inquiry Chart

Systematycznie poprawialiśmy zdolność LLM do skutecznego rozwiązania lub przekierowania zgłoszenia, osiągając 80% według naszych narzędzi oceny. 

Z pominięciem rozmów z mniej niż jedną turą, co oznacza, że osoba dzwoniąca nie zgłosiła pytania ani problemu. 

Ważne jest jednak, że nie każdy typ zgłoszenia lub pytania do wsparcia może rozwiązać LLM — zwłaszcza w startupie, który szybko się rozwija, stale wprowadza innowacje i ma bardzo technicznych oraz kreatywnych użytkowników. Dodatkowo LLM oceniający nie zawsze oceni sytuację poprawnie.

(2) Weryfikacja przez ludzi: aby porównać skuteczność naszych narzędzi walidacji LLM, przeprowadziliśmy ludzką weryfikację 150 rozmów, stosując te same kryteria oceny, które przekazaliśmy narzędziom LLM:

  • solved_user_inquiry: sukces, gdy agent odpowiedział na pytania użytkownika trafnymi informacjami lub potrafił przekierować go na właściwą stronę / kanał wsparcia. 
    • LLM i człowiek byli zgodni w 81% przypadków 
  • hallucination_kb: to kryterium sprawdza końcowy transkrypt i weryfikuje, czy odpowiedzi LLM o produktach ElevenLabs są zgodne z informacjami w bazie wiedzy, czy wykraczają poza nie. 
    • LLM i człowiek byli zgodni w 83% przypadków

Ocena ludzi wykazała też, że 89% istotnych pytań do wsparcia agent dokumentacji poprawnie obsłużył lub przekierował.

Inne wnioski: 

  • Część osób dzwoniących chciała po prostu się pobawić i spróbować rozmowy w różnych językach, bez zadawania pytań do wsparcia. 
    • Obecnie nasze Conversational AI obsługuje różne języki, ale trzeba je określić na początku rozmowy. 
  • Część osób prowadzi rozmowy niezwiązane z celem agenta, czyli rozmową o ElevenLabs, jego produktach i dokumentacji. Zabezpieczenia promptu pomagały przez większość czasu, ale nie zawsze. 
  • Część osób szukała pomocy przy kodowaniu lub debugowaniu. 

Mocne strony i ograniczenia

Mocne strony

Agent oparty na LLM dobrze radzi sobie z jasnymi i konkretnymi pytaniami, na które można odpowiedzieć na podstawie naszej dokumentacji, kierowaniem osób dzwoniących do właściwych materiałów oraz udzielaniem wstępnych wskazówek przy bardziej złożonych sprawach. W większości takich przypadków agent udziela szybkich, prostych i poprawnych odpowiedzi, które są od razu pomocne. 

Przykładowe pytania: 

  • Czy ElevenLabs ma endpoint API do usuwania głosu? 
  • Jak skonfigurować nadpisywanie ustawień rozmowy w moim agencie? 
  • Jak zintegrować się z telefonią?
  • Czy ElevenLabs obsługuje język hiszpański?

Rekomendacje:

  • Kieruj rozwiązanie do odbiorców, którzy najczęściej mają jasne / konkretne pytania, na które LLM z dokumentacją i narzędziami dobrze odpowiada. 
  • W przypadku niejasnych pytań / pytań wymagających analizy korzystaj z przekierowań do innych kanałów. To bardzo pomaga! 
  • Dodaj narzędzia oceny, aby rejestrować i monitorować wszystkie pytania -> wykorzystuj wnioski do dostosowywania promptu. Dodaj też narzędzia oceny sukcesu i halucynacji / odchyleń od bazy wiedzy. 

Ograniczenia

Z drugiej strony agent jest mniej pomocny przy problemach z kontem, pytaniach o ceny/rabaty lub niesprecyzowanych pytaniach, które wymagają głębszej analizy / sprawdzenia. Także przy dość niejasnych i ogólnych problemach -> mimo promptu zachęcającego do zadawania pytań LLM zwykle woli odpowiedzieć czymś, co może wydawać się trafne na podstawie dokumentacji. 

Przykładowe pytania: 

  • Etap weryfikacji mojego PVC ciągle kończy się niepowodzeniem. Dlaczego? 
  • Ile będzie kosztować agent AI? Czy mogę dostać rabat? 
  • Pojawia mi się błąd w JS SDK? -> Agent może przekierować do odpowiedniej dokumentacji, ale nie potrafi łatwo znaleźć i rozwiązać problemu głosowo. 

Rekomendacje

  • Głos nie jest dobrym medium do udostępniania kodu. Ustaw prompt tak, by agent nie próbował tego robić, lecz kierował na strony z przykładami lub do Discorda/wsparcia.
  • Ustaw prompt tak, by agent nie odpowiadał długimi listami rekomendacji, gdy problemy / pytania są bardziej złożone. Działa to w tekście, ale gorzej głosowo.
  • LLM-y zwykle wolą odpowiadać niż zadawać pytania — jeśli jest to potrzebne w tym przypadku użycia wsparcia, wyraźnie uwzględnij to w prompcie. (np. zadaj te 3 pytania, zanim przejdziesz dalej). Jest to łatwiejsze w wychodzących przypadkach użycia ze stałymi skryptami.

Jak to zbudowaliśmy

Konfiguracja agenta: 

Prompt systemowy

„Jesteś agentem wsparcia technicznego o imieniu Alexis. Starasz się odpowiadać na wszelkie pytania użytkownika o produkty ElevenLabs. Otrzymasz dokumentację produktów ElevenLabs i używaj wyłącznie tych informacji do odpowiadania na pytania o ElevenLabs. Bądź pomocny, przyjazny i profesjonalny. Jeśli nie możesz odpowiedzieć na pytanie, przekieruj osobę dzwoniącą za pomocą redirectToEmailSupport (co otwiera po jej stronie wiadomość e-mail do wsparcia). Jeśli to nie zadziała, może napisać bezpośrednio na adres team@elevenlabs.io.

Jeśli pytanie lub problem nie jest w pełni jasny albo wystarczająco konkretny, poproś o więcej szczegółów i zapytaj, którego produktu dotyczy prośba o wsparcie. Jeśli pytanie jest niejasne lub bardzo ogólne, zapytaj konkretniej, co użytkownik próbuje osiągnąć i w jaki sposób. 

Trzymaj się wyłącznie języka swojej pierwszej wiadomości w rozmowie, nawet jeśli użytkownik pyta lub mówi w innym języku. Powiedz, że lepiej zakończyć i ponownie rozpocząć rozmowę, wybierając inny język.

Twoja odpowiedź zostanie odczytana przez model zamiany tekstu na mowę, więc formatuj ją tak, jak jest wymawiana. Na przykład zamiast „proszę skontaktować się z team@elevenlabs.io” napisz „proszę skontaktować się z 'team małpa elevenlabs kropka I O'”. Nie formatuj odpowiedzi za pomocą punktów, pogrubień ani nagłówków. Nie podawaj długich list — zamiast tego podsumuj je i zapytaj, która część interesuje użytkownika. Nie podawaj próbek kodu, lecz zasugeruj użytkownikowi zapoznanie się z próbkami kodu w naszej dokumentacji. Zwracaj odpowiedź bezpośrednio, nie zaczynaj jej od „Agent:” ani podobnego zwrotu. Nie poprawiaj błędów ortograficznych, po prostu je ignoruj.

Odpowiadaj zwięźle, w kilku zdaniach, i pozwól użytkownikowi wskazać, gdzie podać więcej szczegółów. 

Masz do dyspozycji następujące narzędzia. Używaj ich odpowiednio do prośby użytkownika:

`redirectToDocs`:

- Kiedy używać: w większości sytuacji, zwłaszcza gdy użytkownik potrzebuje bardziej szczegółowych informacji lub wskazówek.

- Dlaczego: bezpośredni dostęp do dokumentacji pomaga przy złożonych tematach, ponieważ użytkownik może samodzielnie zapoznać się z treścią i ją zrozumieć.

`redirectToEmailSupport`:

- Kiedy używać: gdy użytkownik potrzebuje pomocy w sprawach osobistych lub dotyczących konta.

- Dlaczego: pytania dotyczące konta najlepiej obsługuje nasz zespół wsparcia przez e-mail, gdzie może bezpiecznie uzyskać dostęp do odpowiednich danych.

`redirectToExternalURL`:

- Kiedy używać: gdy użytkownik pyta o rozwiązania dla przedsiębiorstw lub chce dołączyć do zewnętrznych społeczności, takich jak nasz serwer Discord. Również gdy wygląda na dewelopera mającego trudności techniczne z ElevenLabs.

- Dlaczego: pytania od przedsiębiorstw i interakcje ze społecznością wykraczają poza zakres bezpośredniego wsparcia na platformie, dlatego lepiej obsługiwać je za pomocą zewnętrznych linków.

Zabezpieczenia:

- Trzymaj się tematów i produktów związanych z ElevenLabs. Jeśli ktoś pyta o tematy niezwiązane z ElevenLabs, powiedz, że jesteś tutaj wyłącznie po to, by odpowiadać na pytania o produkty ElevenLabs.

- Przekierowuj osobę dzwoniącą tylko na jedną stronę naraz, ponieważ każde przekierowanie zastępuje poprzednie.

- Nie odpowiadaj długimi listami ani kodem. Zamiast tego kieruj do dokumentacji z przykładami kodu.”

Baza wiedzy

Wraz z promptem przekazujemy LLM-owi w kontekście bazę wiedzy z istotnymi informacjami. Zawiera ona skróconą, ale wciąż dużą (80 tys. znaków) wersję całej dokumentacji ElevenLabs oraz kilka istotnych adresów URL. 

Do bazy wiedzy dodajemy też wyjaśnienia i najczęstsze pytania. 

Narzędzia

Mamy skonfigurowane trzy narzędzia:

  • redirectToExternalURL: przekierowuje do działu sprzedaży lub na Discord. 
  • redirectToEmailSupport: otwiera wiadomość e-mail do team@elevenlabs.io
  • redirectToDocs: to narzędzie przekierowuje osobę dzwoniącą na odpowiednie strony w naszej dokumentacji.

Wbudowana ocena 

Nasze narzędzia oceny wykorzystują LLM do analizy końcowego transkryptu i oceny rozmowy według zdefiniowanych kryteriów. 

Kryteria oceny (sukces / porażka / nieznane)

  • hallucination_kb: to kryterium sprawdza końcowy transkrypt i weryfikuje, czy odpowiedzi LLM o produktach ElevenLabs są zgodne z informacjami w bazie wiedzy, czy wykraczają poza nie. 
  • interaction: sprawdza, czy rozmowa trwała dłużej niż jedną turę. To szybki sposób, by oznaczyć rozmowy, które zostały rozpoczęte, ale nie doszło w nich do interakcji. 
  • solved_user_inquiry: sukces, gdy agent odpowiedział na pytania użytkownika trafnymi informacjami lub potrafił przekierować go na właściwą stronę / kanał wsparcia. 
  • positive_interaction: sprawdza, czy rozmowa przebiegła bez negatywnych reakcji osoby dzwoniącej. 

Zbieranie danych:

  • Issue_type: sklasyfikuj rozmowę jako błąd, problem ze wsparciem, fr lub inne
  • Kategoria produktu: wyodrębnij odpowiedni produkt (TTS, ConvAI itd.) 
  • AllQuestions: wyodrębnij wszystkie pytania zadane przez osobę dzwoniącą 
  • Unsolved_question: wyodrębnij pytania, na które LLM nie odpowiedział trafnymi informacjami
  • Redirects: wyodrębnij ścieżki przekierowań uruchomione przez agenta oraz reakcję osoby dzwoniącej

Podsumowanie

Nasz agent dokumentacji skutecznie pomaga użytkownikom poruszać się po typowych pytaniach o produkt i wsparcie, a także jest angażującym copilotem podczas korzystania z dokumentacji. Dzięki ciągłemu automatycznemu i ręcznemu monitorowaniu możemy stale rozwijać i ulepszać naszego agenta. Wiemy, że nie każdy typ zgłoszenia lub pytania do wsparcia może rozwiązać LLM — zwłaszcza w startupie, który szybko się rozwija, stale wprowadza innowacje i ma bardzo technicznych oraz kreatywnych użytkowników. Zauważyliśmy jednak, że im więcej automatyzujemy, tym więcej czasu nasz zespół może poświęcić na trudne i ciekawe problemy pojawiające się na obrzeżach, gdy nasza społeczność nadal przesuwa granice tego, co jest możliwe z audio AI. 

Nasz agent działa dzięki ElevenLabs Conversational AI. Jeśli chcesz odtworzyć moje wyniki, możesz założyć konto za darmo i wykonać opisane kroki. Jeśli utkniesz, możesz porozmawiać z agentem, którego wdrożyliśmy w naszej dokumentacji, lub skontaktować się ze mną i moim zespołem na Discordzie. W przypadku dużej skali (>100 rozmów dziennie) skontaktuj się z naszym działem sprzedaży, aby uzyskać rabaty ilościowe.

Autor

Oswin Kruger Ruiz

Oswin Kruger Ruiz

Forward Deployed Engineering

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

Podobne artykuły

Twórz z najwyższej jakości audio AI