Speech Engine
Fügen Sie Ihrem eigenen Chat-Agenten oder LLM mit ElevenLabs Sprache hinzu.
Überblick
ElevenLabs Speech Engine verleiht jedem Chat-Agenten Sprachfunktionen. ElevenLabs übernimmt Speech to Text und Text to Speech, während Ihr Server die LLM-Logik bereitstellt. Das SDK verwaltet den Verbindungslebenszyklus, Sprecherwechsel und die Erkennung von Unterbrechungen, damit Sie sich auf das Verhalten Ihres Agenten konzentrieren können.
So funktioniert es
Speech Engine verbindet Ihren Server über WebSocket mit ElevenLabs. Jede Verbindung steht für eine Konversation.
- Ein Nutzer spricht im Browser. ElevenLabs erfasst und transkribiert das Audio.
- Das Transkript wird zusammen mit dem vollständigen Gesprächsverlauf an Ihren Server gesendet.
- Ihr Server übergibt das Transkript an Ihr LLM und streamt die Antwort zurück.
- ElevenLabs wandelt den Text in Sprache um und spielt ihn im Browser ab.
Wann Sie Speech Engine verwenden sollten
Speech Engine ist für Entwickler konzipiert, die ihr eigenes LLM verwenden und die Gesprächslogik auf ihrem eigenen Server steuern möchten. Verwenden Sie es, wenn Sie Folgendes benötigen:
- Sprache für einen bestehenden textbasierten Chat-Agenten
- Ein bestimmtes LLM, ein feinabgestimmtes Modell oder eine eigene Inferenz-Pipeline
- Vollständige Kontrolle über Gesprächsweiterleitung, Kontextverwaltung und Tool-Aufrufe
- Die Integration von Sprache in eine bestehende Serveranwendung (Express, FastAPI usw.)
Wenn Sie eine vollständig gehostete Lösung wünschen, bei der ElevenLabs das LLM, die Wissensdatenbank und die Tools bereitstellt, verwenden Sie stattdessen ElevenAgents.
Wichtige Funktionen
- Jedes LLM – verwenden Sie OpenAI, Anthropic, Google Gemini oder jedes andere Modell, das Text erzeugt. Das SDK extrahiert Text automatisch aus den Stream-Formaten von OpenAI, Anthropic und Gemini.
- Unterbrechungsbehandlung – wenn der Nutzer während einer Antwort spricht, bricht das SDK die laufende LLM-Anfrage automatisch über ein
AbortSignal(TypeScript) oder eine Aufgabenabbruchfunktion (Python) ab. - Streaming – Antworten werden während ihrer Generierung in den Browser gestreamt. Übergeben Sie einen String, ein asynchrones Iterable oder ein natives LLM-Stream-Objekt.
- Sprecherwechsel – das SDK verwaltet Gesprächsrunden, sodass Ihr Server nur auf Transkripte reagieren muss.
Gesprächsdauer
Speech Engine unterstützt Gespräche von bis zu 2 Stunden (7.200 Sekunden). Standardmäßig endet ein
Gespräch nach 600 Sekunden (10 Minuten). Um längere Gespräche zu ermöglichen, erhöhen Sie
conversation.max_duration_seconds in der API oder Maximale Gesprächsdauer im Dashboard unter der Registerkarte
Erweitert. Siehe
Konfiguration der maximalen Gesprächsdauer.
IP-Allowlisting
Wenn Ihr Server hinter einer Firewall steht oder IP-basierte Zugriffskontrollen verwendet, können Sie die statischen ausgehenden IPs, von denen ElevenLabs-WebSocket-Verbindungen ausgehen, auf die Allowlist setzen. Die vollständige Liste der IP-Adressen finden Sie unter IP-Allowlisting.
IP-Allowlisting stellt sicher, dass Ihr Server nur WebSocket-Verbindungen von den Systemen von ElevenLabs akzeptiert.
FAQ
Welche LLMs werden unterstützt?
Jedes LLM, das Text erzeugt. Das SDK bietet integrierte Stream-Extraktion für OpenAI (Responses API und Chat Completions API), Anthropic Messages API und Google Gemini API. Für andere Anbieter übergeben Sie einen einfachen String oder ein asynchrones Iterable von String-Abschnitten.
Was ist der Unterschied zwischen Speech Engine und ElevenAgents?
ElevenAgents ist eine vollständig gehostete Plattform, bei der ElevenLabs das LLM, die Wissensdatenbank und die Tools bereitstellt. Speech Engine richtet sich an Entwickler, die ihr eigenes LLM verwenden und die Gesprächslogik auf ihrem eigenen Server steuern möchten.
Welche Server-Frameworks werden unterstützt?
In TypeScript können Sie Speech Engine an jeden Node.js-HTTP-Server anhängen (Express, Fastify oder
einfaches http.createServer()) oder einen eigenständigen WebSocket-Server ausführen. In Python bietet das SDK
einen eigenständigen Server über engine.serve(). Alternativ können Sie es mit FastAPI, Starlette oder jedem
ASGI-Framework über engine.create_session() integrieren.