> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

# WebSockety Text to Speech a Text to Dialogue

ElevenLabs udostępnia dwa różne produkty WebSocket do strumieniowania syntezowanej mowy. Rozwiązują różne problemy, przyjmują wiadomości o różnych formatach i obsługują różne modele.

## Którego WebSocket użyć?

Użyj **WebSocket Text to Speech (TTS)**, gdy przesyłasz zwykły tekst dla **jednego głosu na połączenie** (głos jest określony w URL) i potrzebujesz modeli **innych niż v3**, takich jak Flash lub Multilingual v2, opcjonalnego SSML, harmonogramów fragmentów albo wariantu **multi-context** do obsługi przerwań w stylu agentów.

Użyj **WebSocket Text to Dialogue (TTD)**, gdy potrzebujesz dialogów **Eleven v3**: ekspresyjnej wypowiedzi, \*\*`voice_id` dla każdego fragmentu \*\*, granic tur (`new_turn`) oraz tego samego buforowania dialogów, które serwer stosuje dla v3.

Do **wsadowego lub strumieniowanego przez HTTP** generowania dialogów (całe żądanie w jednym wywołaniu) użyj [Create dialogue](/docs/pl/api-reference/text-to-dialogue/convert) lub [Stream dialogue](/docs/pl/api-reference/text-to-dialogue/stream) zamiast WebSocket.

## Porównanie

|                                     | WebSocket Text to Speech                                                                                                                                                       | WebSocket Text to Dialogue                                                                                                                                                                                                    |
| ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Dokumentacja API**                | [TTS stream-input](/docs/pl/api-reference/text-to-speech/v-1-text-to-speech-voice-id-stream-input)                                                                             | [TTD WebSocket](/docs/pl/api-reference/text-to-dialogue/ttd-websocket)                                                                                                                                                        |
| **URL**                             | `wss://api.elevenlabs.io/v1/text-to-speech/{voice_id}/stream-input`                                                                                                            | `wss://api.elevenlabs.io/v1/text-to-dialogue/stream-input`                                                                                                                                                                    |
| **Wybór głosu**                     | Jeden `voice_id` w ścieżce; cały strumieniowany tekst używa tego głosu                                                                                                         | Pierwsza wiadomość rejestruje co najmniej jeden `voices` według ID; każdy wpis `inputs[]` wskazuje `voice_id`                                                                                                                 |
| **Modele**                          | Flash, Multilingual v2 i inne obsługiwane modele TTS. **Brak** `eleven_v3` ani `eleven_v4` w tym endpointcie.                                                                  | **`model_id` musi zaczynać się od `eleven_v3` lub `eleven_v4`** (na przykład `eleven_v4` lub `eleven_v4_turbo`)                                                                                                               |
| **Pierwsza wiadomość klienta**      | Inicjalizacja spacją oraz opcjonalnymi `voice_settings` / `generation_config` (zobacz przewodnik po TTS w czasie rzeczywistym)                                                 | Musi zawierać **`voices`** (oraz dane uwierzytelniające, jeśli nie zostały przesłane w nagłówkach lub zapytaniu)                                                                                                              |
| **Kolejny tekst**                   | Wyślij ciąg `text` (zwykle z końcową spacją); opcjonalnie `flush`, `try_trigger_generation` itd.                                                                               | Wyślij **`inputs`**: obiekty `{ text, voice_id, new_turn? }`; opcjonalnie **`flush`**, **`close_socket`**, **`keep_alive`**                                                                                                   |
| **Buforowanie / harmonogram**       | Harmonogram długości fragmentów i powiązane ustawienia WebSocket TTS                                                                                                           | Serwer buforuje tekst, aż zbierze wystarczającą ilość (około **40 znaków i 8 słów**), zanim wyemituje audio, chyba że użyjesz **`flush`**                                                                                     |
| **Wielu mówców w jednym gnieździe** | Użyj [WebSocket multi-context](/docs/pl/eleven-api/guides/how-to/websockets/multi-context-web-socket) dla wielu **równoległych kontekstów TTS**, nie dla dialogów wielu mówców | Do **10** zarejestrowanych głosów dla `eleven_v4`; **`eleven_v4_turbo` pozwala zarejestrować tylko jeden** głos                                                                                                               |
| **Brak aktywności**                 | Konfigurowalny `inactivity_timeout` (parametr zapytania WebSocket TTS)                                                                                                         | **Stałe 20 s** między wiadomościami klienta, chyba że wysyłasz **`keep_alive`**                                                                                                                                               |
| **Współbieżność**                   | Do limitu [współbieżności](/docs/pl/overview/models#concurrency-and-priority) w planie liczy się tylko czas aktywnego generowania; bezczynne otwarte gniazdo się nie liczy     | Każde otwarte połączenie zajmuje jedną [sesję dialogową](/docs/pl/overview/models#text-to-dialogue-concurrency) z osobnej puli przez cały czas działania; generowanie przez połączenie nie zużywa standardowej współbieżności |
| **Wyrównanie**                      | Opcjonalne `sync_alignment` (nazewnictwo pól TTS w dokumentacji API)                                                                                                           | Opcjonalne `sync_alignment`; JSON używa w odpowiedziach pól w **snake_case** (na przykład `is_final`, `char_start_times_ms`)                                                                                                  |

## Kiedy lepiej użyć WebSocket TTS

* Masz już integrację z **Flash** lub **Multilingual v2** ze względu na opóźnienia lub obsługę języków.
* Chcesz używać **jednego głosu narratora** na połączenie i prostego protokołu tekstu na ramkę.
* Potrzebujesz koordynacji **multi-context** dla wtrąceń i równoległych wypowiedzi ([przewodnik multi-context](/docs/pl/eleven-api/guides/how-to/websockets/multi-context-web-socket)).

Pełny opis WebSocket TTS znajdziesz w [Generate audio in real-time](/docs/pl/eleven-api/guides/how-to/websockets/realtime-tts).

## Kiedy lepiej użyć WebSocket TTD

* Korzystasz z dialogów **Eleven v4** (tagi ekspresji, konwersacyjne tempo, kwestie wielu mówców).
* Strumieniujesz **dialog ze scenariusza lub wygenerowany przez LLM**, w którym **głos mówcy może zmieniać się w każdej kwestii** bez otwierania nowego połączenia.
* Chcesz stopniowo przesyłać dane w formacie **WebSocket** z generowaniem dialogów **tylko v4** na serwerze.

Praktyczny przewodnik znajdziesz w [Realtime Text to Dialogue](/docs/pl/eleven-api/guides/how-to/websockets/realtime-tdd). Szczegóły protokołu są w [dokumentacji API](/docs/pl/api-reference/text-to-dialogue/ttd-websocket).

## Powiązane przewodniki

#### [Realtime Text to Dialogue](/docs/pl/eleven-api/guides/how-to/websockets/realtime-tdd)

Połącz się, zarejestruj głosy, przesyłaj `inputs` i zapisz audio z WebSocket TTD.

#### [WebSocket TTS w czasie rzeczywistym](/docs/pl/eleven-api/guides/how-to/websockets/realtime-tts)

Instrukcja połączenia i wysyłania wiadomości przez standardowy WebSocket TTS.

#### [WebSocket multi-context](/docs/pl/eleven-api/guides/how-to/websockets/multi-context-web-socket)

Wiele kontekstów TTS w jednym połączeniu dla workflow agentów.

#### [Szybki start z Text to Dialogue](/docs/pl/eleven-api/guides/cookbooks/text-to-dialogue)

Przykłady żądań HTTP dla dialogów z wieloma głosami.

#### [Możliwości Text to Dialogue](/docs/pl/overview/capabilities/text-to-dialogue)

Omówienie generowania dialogów z perspektywy produktu.