Speech Engine
Dodaj głos do własnego agenta czatowego lub LLM dzięki ElevenLabs.
Omówienie
ElevenLabs Speech Engine dodaje funkcje głosowe do każdego agenta czatowego. ElevenLabs obsługuje zamianę mowy na tekst i zamianę 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 reprezentuje jedną rozmowę.
- Użytkownik mówi w przeglądarce. ElevenLabs przechwytuje audio i je transkrybuje.
- Transkrypcja jest wysyłana na twój serwer wraz z pełną historią rozmowy.
- Twój serwer przekazuje transkrypcję do LLM i przesyła odpowiedź strumieniowo.
- ElevenLabs zamienia tekst na mowę i odtwarza go w przeglądarce.
Kiedy używać Speech Engine
Speech Engine jest dla deweloperów, którzy chcą korzystać z własnego LLM i kontrolować logikę rozmowy na własnym serwerze. Użyj go, gdy chcesz:
- Dodać głos do istniejącego tekstowego agenta czatowego
- Korzystać z konkretnego LLM, dostrojonego modelu lub własnego pipeline’u inferencji
- Zachować pełną kontrolę nad kierowaniem rozmów, 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 strumieni 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). - Strumieniowanie - odpowiedzi są przesyłane do przeglądarki w trakcie generowania. Przekaż ciąg znaków, asynchroniczny iterowalny obiekt lub natywny obiekt strumienia 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 do 2 godzin (7200 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 na karcie
Zaawansowane. Zobacz
Konfigurowanie maksymalnego czasu trwania rozmowy.
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 wychodzące adresy IP, z których pochodzą połączenia WebSocket ElevenLabs. Pełną listę adresów IP znajdziesz w artykule Lista dozwolonych adresów IP.
Lista dozwolonych adresów IP sprawia, że twój serwer akceptuje połączenia WebSocket tylko z systemów ElevenLabs.
FAQ
Jakie LLM są obsługiwane?
Każdy LLM, który generuje tekst. SDK ma wbudowane wyodrębnianie strumieni 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 iterowalny obiekt z fragmentami tekstu.
Czym różnią się Speech Engine i ElevenAgents?
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ą korzystać z własnego LLM i kontrolować logikę rozmowy na własnym serwerze.
Jakie frameworki serwerowe są obsługiwane?
W TypeScript możesz podłączyć Speech Engine do dowolnego serwera HTTP Node.js (Express, Fastify lub
zwykły http.createServer()) albo uruchomić niezależny serwer WebSocket. W Pythonie SDK zapewnia
niezależny serwer przez engine.serve() lub integrację z FastAPI, Starlette albo dowolnym
frameworkiem ASGI za pomocą engine.create_session().