Narzędzia systemowe
Narzędzia systemowe
Aktualizuj wewnętrzny stan rozmów bez zewnętrznych żądań.
Narzędzia systemowe pozwalają asystentowi aktualizować wewnętrzny stan rozmowy. W przeciwieństwie do narzędzi webhook i narzędzi klienckich narzędzia systemowe nie wykonują zewnętrznych wywołań API ani nie uruchamiają funkcji po stronie klienta — zmieniają wewnętrzny stan rozmowy bez wykonywania zewnętrznych wywołań.
Omówienie
Niektóre aplikacje wymagają, by agenci kontrolowali przebieg lub stan rozmowy. Narzędzia systemowe umożliwiają asystentowi wykonywanie działań związanych ze stanem połączenia, które nie wymagają komunikacji z zewnętrznymi serwerami ani klientem.
Dostępne narzędzia systemowe
Implementacja
Tworząc agenta przez API, możesz dodać narzędzia systemowe do jego konfiguracji. Oto jak wdrożyć narzędzia do kończenia rozmowy i wykrywania języka:
Integracja z własnym LLM
Gdy używasz własnego LLM z agentami ElevenLabs, narzędzia systemowe są udostępniane jako definicje funkcji, które może wywołać LLM. Każde narzędzie systemowe ma określone parametry i warunki uruchomienia:
Dostępne narzędzia systemowe
Zakończ rozmowę
Cel: Automatyczne kończenie rozmów, gdy zostaną spełnione odpowiednie warunki.
Warunki wywołania: LLM powinien wywołać to narzędzie, gdy:
- Główne zadanie zostało ukończone, a użytkownik jest zadowolony
- Rozmowa naturalnie dobiegła końca za obopólną zgodą
- Użytkownik wyraźnie chce zakończyć rozmowę
Parametry:
reason(string, wymagany): Powód zakończenia rozmowymessage(string, opcjonalny): Wiadomość pożegnalna wysyłana użytkownikowi przed zakończeniem rozmowy
Format wywołania funkcji:
Implementacja: Skonfiguruj jako narzędzie systemowe w ustawieniach agenta. LLM otrzyma szczegółowe instrukcje, kiedy wywołać tę funkcję.
Dowiedz się więcej: Narzędzie do kończenia rozmowy
Wykrywanie języka
Cel: Automatyczne przełączanie na wykryty język użytkownika podczas rozmowy.
Warunki wywołania: LLM powinien wywołać to narzędzie, gdy:
- Użytkownik mówi w języku innym niż bieżący język rozmowy
- Użytkownik wyraźnie prosi o zmianę języka
- Rozmowa wymaga obsługi wielu języków
Parametry:
reason(string, wymagany): Powód zmiany językalanguage(string, wymagany): Kod języka, na który ma nastąpić przełączenie (musi znajdować się na liście obsługiwanych języków)
Format wywołania funkcji:
Wdrożenie: Skonfiguruj obsługiwane języki w ustawieniach agenta i dodaj narzędzie systemowe wykrywania języka. Agent automatycznie zmieni głos i odpowiedzi, aby pasowały do wykrytych języków.
Dowiedz się więcej: Narzędzie do wykrywania języka
Przekazanie do agenta
Cel: Przekazywanie rozmów między wyspecjalizowanymi agentami AI zależnie od potrzeb użytkownika.
Warunki wywołania: LLM powinien wywołać to narzędzie, gdy:
- Prośba użytkownika wymaga specjalistycznej wiedzy lub innych możliwości agenta
- Obecny agent nie może odpowiednio obsłużyć zapytania
- Przebieg rozmowy wskazuje na potrzebę innego typu agenta
Parametry:
reason(string, opcjonalnie): Powód przekazania do innego agentaagent_number(integer, wymagane): Numer agenta liczony od zera, do którego należy przekazać rozmowę (na podstawie skonfigurowanych zasad przekazywania)
Format wywołania funkcji:
Implementacja: Zdefiniuj zasady przekazywania, które mapują warunki na konkretne identyfikatory agentów. Skonfiguruj, do których agentów obecny agent może przekazywać rozmowy. W konfiguracji przekazywania agenci są oznaczani numerami liczonymi od zera.
Dowiedz się więcej: Narzędzie do przekazywania do agenta
Przekazanie na numer
Cel: Płynne przekazywanie rozmów konsultantom, gdy pomoc AI nie wystarcza.
Warunki wywołania: LLM powinien wywołać to narzędzie, gdy:
- Występują złożone problemy wymagające ludzkiego osądu
- Użytkownik wyraźnie prosi o pomoc człowieka
- AI osiąga granice swoich możliwości w przypadku konkretnej prośby
- Zostają uruchomione procedury eskalacji
Parametry:
reason(string, opcjonalny): Powód przekazaniatransfer_number(string, wymagany): Numer telefonu, na który należy przekazać rozmowę (musi odpowiadać skonfigurowanym numerom)client_message(string, wymagany): Wiadomość odczytywana klientowi podczas oczekiwania na przekazanieagent_message(string, wymagany): Wiadomość dla konsultanta przejmującego rozmowę
Format wywołania funkcji:
Implementacja: Skonfiguruj numery telefonów i warunki przekazywania. Zdefiniuj wiadomości dla klienta i konsultanta przejmującego rozmowę. Działa zarówno z Twilio, jak i trunkingiem SIP.
Dowiedz się więcej: Narzędzie do przekazywania na numer
Pomiń turę
Cel: Pozwala agentowi wstrzymać się i czekać na dane od użytkownika bez mówienia.
Warunki wywołania: LLM powinien wywołać to narzędzie, gdy:
- Użytkownik sygnalizuje, że potrzebuje chwili („Daj mi sekundę”, „Muszę pomyśleć”)
- Użytkownik prosi o pauzę w rozmowie
- Agent wykrywa, że użytkownik potrzebuje czasu na przetworzenie informacji
Parametry:
reason(string, opcjonalny): Dowolny powód wyjaśniający, dlaczego potrzebna jest pauza
Format wywołania funkcji:
Implementacja: Nie wymaga dodatkowej konfiguracji. Narzędzie po prostu sygnalizuje agentowi, aby milczał, dopóki użytkownik znów się nie odezwie.
Dowiedz się więcej: Narzędzie do pomijania tury
Odtwórz ton klawiatury
Parametry:
reason(string, opcjonalny): Powód odtwarzania tonów DTMF (np. „przejście do numeru wewnętrznego”, „wpisywanie PIN-u”)dtmf_tones(string, wymagany): Sekwencja DTMF do odtworzenia. Prawidłowe znaki: 0-9, *, #, w (pauza 0,5 s), W (pauza 1 s)
Format wywołania funkcji:
Dowiedz się więcej: Narzędzie do odtwarzania tonu klawiatury
Wykrywanie poczty głosowej
Parametry:
reason(string, wymagany): Powód wykrycia poczty głosowej (np. „wykryto automatyczne powitanie”, „brak odpowiedzi człowieka”)
Format wywołania funkcji:
Dowiedz się więcej: Narzędzie do wykrywania poczty głosowej
Aktualizuj stan
Cel: Pozwala agentowi aktualizować jedną lub więcej zmiennych dynamicznych na podstawie rozmowy, bez wywoływania zewnętrznego API.
Warunki wywołania: LLM powinien wywołać to narzędzie, gdy:
- Rozmowa dostarcza informacji, którą należy zapisać (np. flagę eskalacji, wybraną opcję lub wartość podaną przez użytkownika)
- Skonfigurowana aktualizacja stanu zależy od wartości, którą LLM musi ocenić lub wyodrębnić z rozmowy
Parametry:
Parametry funkcji zależą od konfiguracji narzędzia. Każda skonfigurowana aktualizacja stanu używająca wartości wyodrębnionej przez LLM dodaje jedną właściwość do schematu, nazwaną od zmiennej dynamicznej tej aktualizacji i z typem string, number lub boolean. Aktualizacje stanu tworzone wyłącznie ze stałych lub innych zmiennych dynamicznych nie dodają parametrów.
Format wywołania funkcji:
Implementacja: Agent ocenia każde skonfigurowane wyrażenie, używając wyodrębnionych parametrów oraz bieżących zmiennych dynamicznych rozmowy, a następnie przypisuje wyniki do odpowiednich zmiennych dynamicznych. Nie wykonuje żadnego zewnętrznego żądania.
Dowiedz się więcej: Narzędzie do aktualizacji stanu
FAQ
Czy narzędzia systemowe można łączyć z innymi typami narzędzi?
Tak, narzędzi systemowych można używać razem z narzędziami webhook i narzędziami klienckimi w tym samym asystencie. Pozwala to łączyć zarządzanie stanem wewnętrznym z interakcjami zewnętrznymi.