Systemverktyg
Uppdatera samtalens interna tillstånd utan externa förfrågningar.
Systemverktyg gör det möjligt för din assistent att uppdatera ett samtals interna tillstånd. Till skillnad från webhook-verktyg eller klientverktyg gör systemverktyg inga externa API-anrop och utlöser inga funktioner på klientsidan – de ändrar samtalets interna tillstånd utan att göra externa anrop.
Översikt
Vissa applikationer kräver att agenter kan styra ett samtals flöde eller tillstånd. Systemverktyg ger den möjligheten genom att låta assistenten utföra åtgärder som rör samtalets tillstånd och som inte kräver kommunikation med externa servrar eller klienten.
Tillgängliga systemverktyg
Implementering
När du skapar en agent via API:t kan du lägga till systemverktyg i agentkonfigurationen. Så här implementerar du både verktygen för att avsluta samtal och språkidentifiering:
Anpassad LLM-integration
När du använder ett anpassat LLM med ElevenLabs-agenter exponeras systemverktyg som funktionsdefinitioner som ditt LLM kan anropa. Varje systemverktyg har specifika parametrar och utlösningsvillkor:
Tillgängliga systemverktyg
Avsluta samtal
Syfte: Avsluta automatiskt samtal när lämpliga villkor är uppfyllda.
Utlösande villkor: LLM:en ska anropa det här verktyget när:
- Huvuduppgiften har slutförts och användaren är nöjd
- Samtalet har nått ett naturligt avslut i ömsesidig överenskommelse
- Användaren uttryckligen vill avsluta samtalet
Parametrar:
reason(sträng, krävs): Anledningen till att avsluta samtaletmessage(sträng, valfritt): Ett avskedsmeddelande att skicka till användaren innan samtalet avslutas
Format för funktionsanrop:
Implementering: Konfigurera som ett systemverktyg i agentinställningarna. LLM:en får detaljerade instruktioner om när funktionen ska anropas.
Läs mer: Verktyget Avsluta samtal
Språkidentifiering
Syfte: Växla automatiskt till användarens identifierade språk under samtal.
Utlösande villkor: LLM:en ska anropa det här verktyget när:
- Användaren talar ett annat språk än det aktuella samtalsspråket
- Användaren uttryckligen ber om att byta språk
- Samtalet behöver stöd för flera språk
Parametrar:
reason(sträng, krävs): Anledningen till språkbytetlanguage(sträng, krävs): Språkkoden att byta till (måste finnas i listan över språk som stöds)
Format för funktionsanrop:
Implementering: Konfigurera språk som stöds i agentinställningarna och lägg till systemverktyget för språkidentifiering. Agenten växlar automatiskt röst och svar så att de matchar de identifierade språken.
Läs mer: Verktyget Språkidentifiering
Agentöverföring
Syfte: Överför konversationer mellan specialiserade AI-agenter utifrån användarens behov.
Utlösarvillkor: LLM:en ska anropa det här verktyget när:
- Användarens begäran kräver specialiserad kunskap eller andra agentfunktioner
- Den aktuella agenten inte kan hantera frågan tillräckligt bra
- Konversationsflödet visar att en annan agenttyp behövs
Parametrar:
reason(sträng, valfritt): Orsaken till agentöverföringenagent_number(heltal, krävs): Nollindexerat nummer för agenten att överföra till (baserat på konfigurerade överföringsregler)
Format för funktionsanrop:
Implementering: Definiera överföringsregler som kopplar villkor till specifika agent-ID:n. Konfigurera vilka agenter den aktuella agenten kan överföra till. Agenter refereras med nollindexerade nummer i överföringskonfigurationen.
Läs mer: Verktyget Agentöverföring
Överför till nummer
Syfte: Överlämna sömlöst samtal till mänskliga operatörer när AI-hjälp inte räcker till.
Utlösande villkor: LLM:en ska anropa det här verktyget när:
- Komplexa problem kräver mänskligt omdöme
- Användaren uttryckligen ber om mänsklig hjälp
- AI:n når gränsen för vad den kan göra för den specifika förfrågan
- Eskaleringsprotokoll utlöses
Parametrar:
reason(sträng, valfritt): Anledningen till överföringentransfer_number(sträng, krävs): Telefonnummer att överföra till (måste matcha konfigurerade nummer)client_message(sträng, krävs): Meddelande som läses upp för kunden medan överföringen väntaragent_message(sträng, krävs): Meddelande till den mänskliga operatör som tar emot samtalet
Format för funktionsanrop:
Implementering: Konfigurera telefonnummer och villkor för överföring. Definiera meddelanden för både kunden och den mänskliga operatör som tar emot samtalet. Fungerar med både Twilio och SIP trunking.
Läs mer: Verktyget Överför till nummer
Hoppa över tur
Syfte: Gör det möjligt för agenten att pausa och vänta på användarens inmatning utan att prata.
Utlösande villkor: LLM:en ska anropa det här verktyget när:
- Användaren visar att hen behöver en stund (“Ge mig en sekund”, “Låt mig tänka”)
- Användaren begär en paus i samtalsflödet
- Agenten upptäcker att användaren behöver tid för att bearbeta information
Parametrar:
reason(sträng, valfritt): Fritt formulerad anledning som förklarar varför pausen behövs
Format för funktionsanrop:
Implementering: Ingen ytterligare konfiguration behövs. Verktyget signalerar helt enkelt till agenten att förbli tyst tills användaren talar igen.
Läs mer: Verktyget Hoppa över tur
Spela tonsignal från knappsats
Parametrar:
reason(sträng, valfritt): Anledningen till att spela DTMF-tonerna (t.ex. “navigerar till anknytning”, “anger PIN-kod”)dtmf_tones(sträng, krävs): DTMF-sekvensen som ska spelas upp. Giltiga tecken: 0-9, *, #, w (paus på 0,5 s), W (paus på 1 s)
Format för funktionsanrop:
Telefonsvararidentifiering
Parametrar:
reason(sträng, obligatorisk): Anledningen till att röstbrevlåda identifierades (t.ex. ”automatiskt hälsningsmeddelande identifierat”, ”inget mänskligt svar”)
Format för funktionsanrop:
Läs mer: Verktyget Telefonsvararidentifiering
Uppdatera tillstånd
Syfte: Låt agenten uppdatera en eller flera dynamiska variabler baserat på konversationen, utan att anropa ett externt API.
Utlösande villkor: LLM:en ska anropa det här verktyget när:
- Konversationen innehåller information som bör registreras (t.ex. en eskaleringsflagga, ett valt alternativ eller ett värde som användaren har angett)
- En konfigurerad tillståndsuppdatering beror på ett värde som LLM:en måste bedöma eller extrahera från konversationen
Parametrar:
Funktionens parametrar beror på hur verktyget är konfigurerat. Varje konfigurerad tillståndsuppdatering som använder ett värde extraherat av en LLM lägger till en egenskap i schemat. Egenskapen får namnet på uppdateringens dynamiska variabel och typen string, number eller boolean. Tillståndsuppdateringar som enbart bygger på konstanter eller andra dynamiska variabler lägger inte till några parametrar.
Format för funktionsanrop:
Implementering: Agenten utvärderar varje konfigurerat uttryck med de extraherade parametrarna och konversationens aktuella dynamiska variabler, och tilldelar sedan resultaten till motsvarande dynamiska variabler. Ingen extern begäran skickas.
Läs mer: Verktyget Uppdatera tillstånd
Vanliga frågor
Kan systemverktyg kombineras med andra verktygstyper?
Ja, systemverktyg kan användas tillsammans med webhook-verktyg och klientverktyg i samma assistent. Det ger omfattande funktionalitet som kombinerar hantering av internt tillstånd med externa interaktioner.