Latentie optimaliseren
Deze handleiding laat zien hoe je de text-to-speech-latentie in je applicatie verlaagt.
Deze handleiding behandelt de kernprincipes voor het verbeteren van text-to-speech-latentie. Zie Latentie begrijpen voor een uitleg van wat latentie is en welke factoren daaraan bijdragen.
Hoewel er veel afzonderlijke technieken zijn, delen we ze in vier principes in.
Vier principes
- Gebruik Flash-modellen
- Maak gebruik van streaming
- Houd rekening met geografische nabijheid
- Kies geschikte stemmen
Enterprise-klanten profiteren van hogere limieten voor gelijktijdige requests en prioriteitstoegang tot onze renderingqueue. Neem contact op met sales voor meer informatie over onze enterprise- abonnementen.
Gebruik Flash-modellen
Flash-modellen bieden inferentiesnelheden van ~75 ms en zijn daardoor ideaal voor realtime-applicaties. De afweging is een lichte afname van de audiokwaliteit vergeleken met Multilingual v2.
75 ms verwijst alleen naar de inferentietijd van het model. De daadwerkelijke end-to-end-latentie varieert afhankelijk van factoren zoals je locatie en het gebruikte endpointtype.
Maak gebruik van streaming
Er zijn drie typen text-to-speech-endpoints beschikbaar in onze API-referentie:
- Regulier endpoint: Retourneert een volledig audiobestand in één response.
- Streamingendpoint: Retourneert audiodelen geleidelijk met Server-sent events.
- WebSocket-endpoint: Maakt bidirectionele streaming voor realtime-audiogeneratie mogelijk.
Streaming
Streamingendpoints retourneren audio geleidelijk terwijl deze realtime wordt gegenereerd, waardoor de time-to-first-byte afneemt. Dit endpoint wordt aanbevolen wanneer de invoertekst vooraf beschikbaar is.
Streaming wordt ondersteund voor de Text to Speech-API, Voice Changer-API & Audio Isolation-API.
WebSockets
Het text-to-speech-WebSocket-endpoint ondersteunt bidirectionele streaming en is daardoor perfect voor applicaties met realtime-tekstinvoer (bijvoorbeeld LLM-outputs).
Als je auto_mode instelt op true, worden generatietriggers automatisch afgehandeld, zodat je
chunkstrategieën niet handmatig hoeft te beheren.
Als auto_mode is uitgeschakeld, wacht het model tot er voldoende tekst is om overeen te komen met het chunkschema voordat het audio begint te genereren.
Als je bijvoorbeeld een chunkschema van 125 tekens instelt maar er slechts 50 binnenkomen, wacht het model tot er aanvullende tekens binnenkomen—wat de latentie mogelijk verhoogt.
Zie de text-to-speech-WebSocket-handleiding voor implementatiedetails.
Kies geschikte stemmen
We hebben vastgesteld dat de stemkeuze in sommige gevallen invloed kan hebben op de latentie. Dit is de volgorde van snel naar langzaam:
- Standaardstemmen (voorheen premade), synthetische stemmen en Instant Voice Clones (IVC)
- Professional Voice Clones (PVC)
Uitvoerformaten met een hogere audiokwaliteit kunnen de latentie verhogen. Zorg voor een goede balans tussen je latentievereisten en de benodigde audiokwaliteit.
Houd rekening met geografische nabijheid
We bieden onze modellen vanuit meerdere regio’s aan om de latentie te optimaliseren op basis van je geografische locatie.
Wanneer je bijvoorbeeld Flash-modellen met WebSockets gebruikt, kun je afhankelijk van je locatie de volgende TTFB-latenties verwachten:
Je kunt controleren vanuit welke backendregio je request wordt verwerkt door de x-region-header in de API-response te bekijken.
De momenteel gebruikte regio’s zijn: VS, Nederland en Singapore.
Enterprise-klanten kunnen onze speciale dataresidency-omgevingen in de EU en India gebruiken voor garanties over de serverlocatie en voor lage latentie. Neem contact op met je salesvertegenwoordiger om toegang te krijgen tot onze dataresidency-infrastructuur.
Gebruik voor je API-requests de base URL api.us.elevenlabs.io als je globale routing wilt uitschakelen en altijd servers in de VS wilt gebruiken:
De globale servers waren eerder opt-in via de base URL api-global-preview.elevenlabs.io.
Dit is niet langer nodig, omdat dit nu het standaardgedrag is. Werk je applicaties bij zodat ze
in plaats daarvan gewoon api.elevenlabs.io gebruiken.