Przejdź do nawigacji

Speech Engine

Dodaj głos do własnego agenta czatu lub LLM z ElevenLabs.

Omówienie

ElevenLabs Speech Engine dodaje funkcje głosowe do każdego agenta czatu. ElevenLabs obsługuje zamianę mowy na tekst i tekstu na mowę, a twój serwer zapewnia logikę LLM. SDK zarządza cyklem życia połączenia, kolejnością wypowiedzi i wykrywaniem przerwań, więc możesz skupić się na działaniu agenta.

Jak to działa

Speech Engine łączy twój serwer z ElevenLabs przez WebSocket. Każde połączenie odpowiada jednej rozmowie.

  1. Użytkownik mówi w przeglądarce. ElevenLabs przechwytuje audio i je transkrybuje.
  2. Transkrypcja jest wysyłana na twój serwer wraz z pełną historią rozmowy.
  3. Twój serwer przekazuje transkrypcję do LLM i przesyła odpowiedź strumieniowo z powrotem.
  4. ElevenLabs zamienia tekst na mowę i odtwarza ją w przeglądarce.

Kiedy używać Speech Engine

Speech Engine jest dla deweloperów, którzy chcą używać własnego LLM i kontrolować logikę rozmowy na własnym serwerze. Użyj go, gdy chcesz:

  • Dodać głos do istniejącego agenta czatu tekstowego
  • Użyć konkretnego LLM, dostrojonego modelu lub własnego pipeline’u inferencji
  • Zachować pełną kontrolę nad kierowaniem rozmową, zarządzaniem kontekstem i wywoływaniem narzędzi
  • Zintegrować głos z istniejącą aplikacją serwerową (Express, FastAPI itp.)

Jeśli chcesz w pełni hostowane rozwiązanie, w którym ElevenLabs zapewnia LLM, bazę wiedzy i narzędzia, użyj ElevenAgents.

Kluczowe funkcje

  • Dowolny LLM - użyj OpenAI, Anthropic, Google Gemini lub dowolnego modelu generującego tekst. SDK automatycznie wyodrębnia tekst ze streamów OpenAI, Anthropic i Gemini.
  • Obsługa przerwań - gdy użytkownik zacznie mówić w trakcie odpowiedzi, SDK automatycznie anuluje trwające żądanie LLM przez AbortSignal (TypeScript) lub anulowanie zadania (Python).
  • Przesyłanie strumieniowe - odpowiedzi są przesyłane do przeglądarki w miarę generowania. Przekaż ciąg znaków, asynchroniczny iterable lub natywny obiekt streamu LLM.
  • Kolejność wypowiedzi - SDK zarządza turami rozmowy, więc twój serwer musi tylko odpowiadać na transkrypcje.

Czas trwania rozmowy

Speech Engine obsługuje rozmowy trwające do 40 minut (2400 sekund). Domyślnie rozmowa kończy się po 600 sekundach (10 minutach). Aby zezwolić na dłuższe rozmowy, zwiększ conversation.max_duration_seconds w API lub Maksymalny czas trwania rozmowy w panelu w zakładce Zaawansowane. Zobacz Konfigurowanie maksymalnego czasu trwania rozmowy. Jeśli potrzebujesz rozmów dłuższych niż 40 minut, skontaktuj się z naszym zespołem.

Lista dozwolonych adresów IP

Jeśli twój serwer jest za firewallem lub używa kontroli dostępu opartej na IP, możesz dodać do listy dozwolonych statyczne adresy IP ruchu wychodzącego, z których pochodzą połączenia WebSocket ElevenLabs. Pełną listę adresów IP znajdziesz w liście dozwolonych adresów IP.

Lista dozwolonych adresów IP sprawia, że twój serwer akceptuje połączenia WebSocket tylko z systemów ElevenLabs.

FAQ

Każdy LLM generujący tekst. SDK ma wbudowane wyodrębnianie streamów dla OpenAI (Responses API i Chat Completions API), Anthropic Messages API oraz Google Gemini API. W przypadku innych dostawców przekaż zwykły ciąg znaków lub asynchroniczny iterable fragmentów tekstu.

ElevenAgents to w pełni hostowana platforma, na której ElevenLabs zapewnia LLM, bazę wiedzy i narzędzia. Speech Engine jest dla deweloperów, którzy chcą używać własnego LLM i kontrolować logikę rozmowy na własnym serwerze.

W TypeScript możesz podłączyć Speech Engine do dowolnego serwera HTTP Node.js (Express, Fastify lub zwykłego http.createServer()), albo uruchomić samodzielny serwer WebSocket. W Pythonie SDK zapewnia samodzielny serwer przez engine.serve() lub możesz zintegrować je z FastAPI, Starlette albo dowolnym frameworkiem ASGI za pomocą engine.create_session().