Używamy cookies, żeby zwiększyć Twoje doświadczenia na stronie
CodeWorlds
Powrót do kolekcji
Przewodnik12 min czytania

ElevenLabs

ElevenLabs to platforma AI do generowania realistycznej mowy, klonowania głosu i budowania głosowych agentów. Przewodnik po API, SDK, modelach TTS, Conversational AI i praktycznych zastosowaniach.

ElevenLabs - kompletny przewodnik po platformie głosowej AI

Czym jest ElevenLabs?

ElevenLabs to platforma AI specjalizująca się w generowaniu realistycznej mowy, klonowaniu głosu i budowaniu konwersacyjnych agentów głosowych. Założona w 2022 roku przez Piotra Dąbkowskiego (ex-Google ML) i Matiego Staniszewskiego (ex-Palantir), firma szybko stała się liderem rynku syntazy mowy.

W lutym 2026 ElevenLabs ogłosiło rundę finansowania $500 milionów przy wycenie $11 miliardów, przymierzając się do potencjalnego IPO. Platforma oferuje ponad 3000 głosów w 70+ językach, klonowanie głosu z kilku minut nagrania i Conversational AI do budowania interaktywnych agentów głosowych.

To, co wyróżnia ElevenLabs na tle konkurencji, to jakość generowanej mowy - głosy brzmią naturalnie, z właściwą intonacją, emocjami i tempem. Model Eleven v3 potrafi interpretować kontekst emocjonalny tekstu i odpowiednio modulować głos.

Dlaczego ElevenLabs?

Kluczowe zalety

  1. Najwyższa jakość głosu - Najbardziej realistyczne głosy AI na rynku
  2. 70+ języków - W tym polski, z kulturowo właściwą wymową i intonacją
  3. Voice cloning - Klonowanie głosu z kilku minut nagrania
  4. Conversational AI - Platforma do budowania głosowych agentów w czasie rzeczywistym
  5. Audio tags (v3) - Kontrola emocji i stylu mówienia bezpośrednio w tekście
  6. Multi-speaker dialogue - Naturalne dialogi wielu osób w jednym pliku audio
  7. Ultra-niska latencja - Flash v2.5 osiąga 75ms, idealne do zastosowań real-time

ElevenLabs vs Amazon Polly vs Google Cloud TTS vs OpenAI TTS

CechaElevenLabsAmazon PollyGoogle Cloud TTSOpenAI TTS
Jakość głosuNajlepszaDobraBardzo dobraBardzo dobra
Języki70+30+40+57
Voice cloningTakNieNieNie
Audio tags (emocje)Tak (v3)NieNieNie
Multi-speakerTak (v3)NieNieNie
Conversational AITakNieDialogflowRealtime API
Darmowy plan10 min/mies.5M znaków/mies. (12 mies.)1M znaków/mies.Brak
Koszt (TTS)Od $0.12/1K znaków$4/1M znaków$4-$16/1M znaków$15/1M znaków
Latencja75ms (Flash)~200ms~200ms~300ms

Modele TTS

ElevenLabs oferuje kilka modeli dopasowanych do różnych zastosowań:

Eleven v3

Najnowszy i najpotężniejszy model, wydany w czerwcu 2025.

  • Języki: 70+
  • Limit znaków: 5,000 na request
  • Funkcje: Audio tags, multi-speaker dialogue, naturalny kontekst emocjonalny
  • Zastosowania: Audiobooki, podcasty, dubbing, content premium

Multilingual v2

Flagowy model do wysokojakościowej syntezy mowy.

  • Języki: 29
  • Limit znaków: 10,000 na request
  • Funkcje: Najbardziej niuansowa ekspresja, doskonała intonacja
  • Zastosowania: Profesjonalne voiceovery, reklamy, e-learning

Flash v2.5

Model zoptymalizowany pod kątem niskiej latencji.

  • Języki: 32
  • Limit znaków: 40,000 na request
  • Latencja: ~75ms
  • Zastosowania: Conversational AI, asystenci głosowi, real-time aplikacje

Turbo v2.5

Szybki model o niższym koszcie.

  • Języki: 32
  • Limit znaków: 40,000 na request
  • Latencja: 250-300ms
  • Zastosowania: Masowa produkcja audio, automatyzacja content

Audio tags (Eleven v3)

Audio tags to przełomowa funkcja Eleven v3, która pozwala kontrolować emocje, styl i sposób mówienia bezpośrednio w tekście.

Code
TEXT
[excited] I can't believe we won the championship!

[whispers] Don't tell anyone, but I have a secret.

[sighs] Another Monday morning...

[laughs] That's the funniest thing I've heard all week!

[sad] I'm going to miss this place.

Możesz też łączyć tagi z naturalnym kontekstem:

Code
TEXT
"I'm so proud of you," she said [tearfully]. "You've come so far."

Model interpretuje zarówno tagi, jak i kontekst tekstowy (znaki interpunkcyjne, przymiotniki opisujące emocje), co daje bardzo naturalny rezultat.

Pierwsze kroki z API

Instalacja SDK

Code
Bash
pip install elevenlabs

npm install elevenlabs

Konfiguracja klucza API

Wygeneruj klucz API w dashboardzie ElevenLabs i ustaw go jako zmienną środowiskową:

Code
Bash
export ELEVENLABS_API_KEY="your-api-key"

Podstawowy text-to-speech (Python)

Code
Python
from elevenlabs.client import ElevenLabs
from elevenlabs.play import play

elevenlabs = ElevenLabs()

audio = elevenlabs.text_to_speech.convert(
    text="The first move is what sets everything in motion.",
    voice_id="JBFqnCBsd6RMkjVDRZzb",
    model_id="eleven_v3",
    output_format="mp3_44100_128",
)

play(audio)

Podstawowy text-to-speech (TypeScript)

Code
TypeScript
import { ElevenLabsClient } from "elevenlabs";
import { createWriteStream } from "fs";

const elevenlabs = new ElevenLabsClient({
  apiKey: process.env.ELEVENLABS_API_KEY,
});

const audio = await elevenlabs.textToSpeech.convert("JBFqnCBsd6RMkjVDRZzb", {
  text: "The first move is what sets everything in motion.",
  model_id: "eleven_v3",
  output_format: "mp3_44100_128",
});

const writeStream = createWriteStream("output.mp3");
audio.pipe(writeStream);

Streaming audio

Code
Python
from elevenlabs import stream
from elevenlabs.client import ElevenLabs

elevenlabs = ElevenLabs()

audio_stream = elevenlabs.text_to_speech.stream(
    text="This is a streaming example. The audio plays as it generates.",
    voice_id="JBFqnCBsd6RMkjVDRZzb",
    model_id="eleven_multilingual_v2",
)

stream(audio_stream)

Możesz też przetworzyć chunki ręcznie:

Code
Python
for chunk in audio_stream:
    if isinstance(chunk, bytes):
        process_audio_chunk(chunk)

Async client

Code
Python
import asyncio
from elevenlabs.client import AsyncElevenLabs

elevenlabs = AsyncElevenLabs()

async def generate_speech():
    audio = await elevenlabs.text_to_speech.convert(
        text="Async speech generation is great for web servers.",
        voice_id="JBFqnCBsd6RMkjVDRZzb",
        model_id="eleven_v3",
    )
    return audio

asyncio.run(generate_speech())

Wyszukiwanie głosów

Code
Python
from elevenlabs.client import ElevenLabs

elevenlabs = ElevenLabs()

response = elevenlabs.voices.search()
for voice in response.voices:
    print(f"{voice.name} ({voice.voice_id})")

Voice cloning

ElevenLabs oferuje dwa rodzaje klonowania głosu:

Instant voice cloning

Szybkie klonowanie z krótkich próbek audio (30 sekund - kilka minut). Dostępne od planu Starter.

Code
Python
from elevenlabs.client import ElevenLabs

elevenlabs = ElevenLabs()

voice = elevenlabs.voices.ivc.create(
    name="Alex",
    description="An old American male voice with a slight hoarseness in his throat. Perfect for news",
    files=["./sample_0.mp3", "./sample_1.mp3", "./sample_2.mp3"],
)

audio = elevenlabs.text_to_speech.convert(
    text="This is my cloned voice speaking.",
    voice_id=voice.voice_id,
    model_id="eleven_v3",
)

Professional voice cloning

Zaawansowane klonowanie z dłuższych nagrań (30+ minut), dające najwyższą jakość odwzorowania. Wymaga planu Creator lub wyższego. Proces obejmuje weryfikację tożsamości i zgodę na klonowanie.

Conversational AI

Conversational AI to platforma ElevenLabs do budowania interaktywnych agentów głosowych w czasie rzeczywistym. Łączy STT, LLM i TTS w jeden pipeline z monitoringiem i analityką.

Architektura

  1. Speech-to-text - Scribe (własny model ElevenLabs) zamienia mowę na tekst
  2. LLM - Twój wybór modelu (GPT-4o, Claude, Gemini) przetwarza tekst i generuje odpowiedź
  3. Text-to-speech - ElevenLabs TTS zamienia odpowiedź na naturalną mowę
  4. Knowledge base - Opcjonalna baza wiedzy (dokumenty, FAQ) dostępna dla agenta

Tworzenie agenta konwersacyjnego

Code
Python
from elevenlabs.client import ElevenLabs
from elevenlabs.conversational_ai.conversation import Conversation
from elevenlabs.conversational_ai.default_audio_interface import DefaultAudioInterface

elevenlabs = ElevenLabs()

audio_interface = DefaultAudioInterface()

conversation = Conversation(
    client=elevenlabs,
    agent_id="your-agent-id",
    requires_auth=True,
    audio_interface=audio_interface,
)

conversation.start_session()
conversation.end_session()

Agent z tool calling

Code
Python
import asyncio
from elevenlabs.client import ElevenLabs
from elevenlabs.conversational_ai.conversation import ClientTools, Conversation
from elevenlabs.conversational_ai.default_audio_interface import DefaultAudioInterface

elevenlabs = ElevenLabs()

async def main():
    custom_loop = asyncio.get_running_loop()
    client_tools = ClientTools(loop=custom_loop)

    async def get_weather(params):
        location = params.get("location", "Unknown")
        return f"Weather in {location}: Sunny, 72°F"

    async def check_order(params):
        order_id = params.get("order_id", "")
        return f"Order {order_id}: Shipped, arriving tomorrow."

    client_tools.register("get_weather", get_weather, is_async=True)
    client_tools.register("check_order", check_order, is_async=True)

    conversation = Conversation(
        client=elevenlabs,
        agent_id="your-agent-id",
        requires_auth=True,
        audio_interface=DefaultAudioInterface(),
        client_tools=client_tools,
    )

    conversation.start_session()

asyncio.run(main())

Rejestracja narzędzi

Code
Python
from elevenlabs.conversational_ai.conversation import ClientTools

client_tools = ClientTools()

def calculate_sum(params):
    numbers = params.get("numbers", [])
    return sum(numbers)

async def fetch_data(params):
    url = params.get("url")
    return {"data": "fetched"}

client_tools.register("calculate_sum", calculate_sum, is_async=False)
client_tools.register("fetch_data", fetch_data, is_async=True)

Dodatkowe produkty

Scribe (Speech-to-Text)

Własny model STT od ElevenLabs. Transkrybuje audio z dokładnością na poziomie znaków, timestampami i rozpoznawaniem mówców (speaker diarization).

Eleven Music

Generator muzyki AI uruchomiony w sierpniu 2025. Tworzy muzykę studyjnej jakości z promptów w języku naturalnym. Opracowany we współpracy z wytwórniami muzycznymi i artystami - wygenerowana muzyka jest legalna do użytku komercyjnego.

Dubbing i lokalizacja wideo

Lokalizacja filmów i wideo do 70+ języków z zachowaniem oryginalnego głosu, emocji i timingu mówcy.

Reader App

Aplikacja mobilna (iOS/Android) pozwalająca słuchać artykułów, PDF-ów i ePubów z głosami AI.

Audiobook publishing

Platforma do tworzenia i publikowania audiobooków generowanych przez AI, uruchomiona w lutym 2025.

Cennik

Plany

PlanCena/mies.Minuty TTSConversational AIVoice cloning
Free$0~10 min--
Starter$5~30 min-Instant
Creator$22~100 min-Professional
Pro$99~500 minTakProfessional
Scale$330~2,000 minTakProfessional
Business$1,32011,000 min13,750 minProfessional
EnterpriseCustomCustomCustomCustom

Koszty per-character (TTS, Multilingual v2)

PlanKoszt za 1K znaków
Creator$0.30
Pro$0.24
Scale$0.18
Business$0.12

Conversational AI

Koszt Conversational AI na planie Business wynosi $0.08/min. Nieopłacone minuty resetują się co miesiąc.

Porównanie z konkurencją

PlatformaKoszt TTSConversational AIVoice cloning
ElevenLabsOd $0.12/1K znaków$0.08/minTak
Amazon Polly$4/1M znakówNieNie
Google Cloud TTS$4-$16/1M znakówPrzez DialogflowNie
OpenAI TTS$15/1M znakówRealtime APINie
Play.htOd $0.10/1K znakówNieTak

Oszczędności

Roczne plany oferują 2 miesiące gratis. Niewykorzystane kredyty przenoszą się na następny miesiąc po upgrade planu.

Bezpieczeństwo i zgodność

  • Szyfrowanie - Dane szyfrowane w tranzycie i w spoczynku
  • SOC 2 - Zgodność z SOC 2
  • HIPAA - Wsparcie dla HIPAA compliance
  • GDPR - Zgodność z GDPR
  • EU Data Residency - Opcja przechowywania danych w UE
  • Zero Retention - Tryb bez przechowywania danych dla wrażliwych zastosowań
  • Consent verification - Weryfikacja zgody przy klonowaniu głosu

Formaty audio

FormatSample rateOpis
MP322.05-44.1 kHzDomyślny, uniwersalny
PCM16-44.1 kHzSurowy audio, najniższa latencja
μ-law8 kHzTelefonia
A-law8 kHzTelefonia (Europa)
Opus48 kHzWebRTC, streaming

Praktyczne zastosowania

Podcast z wieloma głosami (v3)

Code
Python
from elevenlabs.client import ElevenLabs

elevenlabs = ElevenLabs()

script = """
[Speaker: Host] Welcome to Tech Talk! Today we're discussing the future of AI.
[Speaker: Guest] Thanks for having me. I think 2026 is going to be a breakthrough year.
[Speaker: Host] [excited] Absolutely! Let's dive right in.
"""

audio = elevenlabs.text_to_speech.convert(
    text=script,
    voice_id="multi_speaker_v3",
    model_id="eleven_v3",
)

Audiobook generator

Code
Python
from elevenlabs.client import ElevenLabs
from elevenlabs import stream

elevenlabs = ElevenLabs()

chapters = [
    "Chapter 1: The Beginning. It was a dark and stormy night...",
    "Chapter 2: The Journey. The next morning brought clear skies...",
    "Chapter 3: The Discovery. Deep in the forest, she found...",
]

for i, chapter in enumerate(chapters):
    audio = elevenlabs.text_to_speech.convert(
        text=chapter,
        voice_id="JBFqnCBsd6RMkjVDRZzb",
        model_id="eleven_multilingual_v2",
        output_format="mp3_44100_128",
    )
    with open(f"chapter_{i+1}.mp3", "wb") as f:
        for chunk in audio:
            f.write(chunk)

Real-time voice assistant (Next.js)

Code
TypeScript
import { ElevenLabsClient } from "elevenlabs";
import { NextResponse } from "next/server";

const elevenlabs = new ElevenLabsClient({
  apiKey: process.env.ELEVENLABS_API_KEY,
});

export async function POST(request: Request) {
  const { text, voiceId } = await request.json();

  const audio = await elevenlabs.textToSpeech.convert(voiceId, {
    text,
    model_id: "eleven_flash_v2_5",
    output_format: "mp3_22050_32",
  });

  return new NextResponse(audio as unknown as ReadableStream, {
    headers: {
      "Content-Type": "audio/mpeg",
    },
  });
}

Integracja z React

Code
TypeScript
import { useState, useRef } from "react";

export function TextToSpeechPlayer() {
  const [text, setText] = useState("");
  const [isLoading, setIsLoading] = useState(false);
  const audioRef = useRef<HTMLAudioElement>(null);

  const generateSpeech = async () => {
    setIsLoading(true);

    const response = await fetch("/api/tts", {
      method: "POST",
      headers: { "Content-Type": "application/json" },
      body: JSON.stringify({
        text,
        voiceId: "JBFqnCBsd6RMkjVDRZzb",
      }),
    });

    const blob = await response.blob();
    const url = URL.createObjectURL(blob);

    if (audioRef.current) {
      audioRef.current.src = url;
      audioRef.current.play();
    }

    setIsLoading(false);
  };

  return (
    <div className="flex flex-col gap-4 p-6 max-w-md">
      <textarea
        value={text}
        onChange={(e) => setText(e.target.value)}
        placeholder="Enter text to convert to speech..."
        className="w-full p-3 border rounded-lg dark:bg-gray-800 dark:border-gray-600"
        rows={4}
      />
      <button
        onClick={generateSpeech}
        disabled={isLoading || !text}
        className="px-4 py-2 bg-blue-500 hover:bg-blue-600 text-white rounded-lg disabled:opacity-50"
      >
        {isLoading ? "Generating..." : "Generate Speech"}
      </button>
      <audio ref={audioRef} controls className="w-full" />
    </div>
  );
}

Ograniczenia i wyzwania

  1. Koszt przy skali - Przy dużych wolumenach audio koszty rosną szybko, szczególnie z modelami premium
  2. Limit znaków - V3 ma limit 5,000 znaków na request (vs 40,000 dla Flash)
  3. Darmowy plan - Tylko 10 minut miesięcznie, brak użytku komercyjnego, wymaga atrybucji
  4. Voice cloning ethics - Wymaga weryfikacji zgody, co spowalnia proces
  5. Brak self-hostingu - Modele dostępne tylko przez API, brak opcji on-premise
  6. Jakość w mniejszych językach - Niektóre języki mają niższą jakość niż angielski

FAQ

Czy ElevenLabs obsługuje polski?

Tak, polski jest jednym z 70+ obsługiwanych języków. Model v3 oferuje najlepszą jakość polskiego z kulturowo właściwą intonacją. Dla real-time zastosowań Flash v2.5 też obsługuje polski.

Ile kosztuje klonowanie głosu?

Instant voice cloning jest dostępne od planu Starter ($5/mies.). Professional voice cloning wymaga planu Creator ($22/mies.) lub wyższego. Sam proces klonowania nie ma dodatkowej opłaty - płacisz za generowanie audio jak zwykle.

Czy mogę użyć ElevenLabs do komercyjnego audiobooka?

Tak, od planu Starter masz prawa do komercyjnego użytku. ElevenLabs oferuje też dedykowaną platformę do publikowania audiobooków w aplikacji Reader.

Jak ElevenLabs porównuje się z OpenAI TTS?

ElevenLabs oferuje wyższą jakość głosu, voice cloning, audio tags, multi-speaker dialogue i niższą latencję (75ms vs ~300ms). OpenAI TTS jest prostszy w użyciu i ma Realtime API do konwersacji, ale nie obsługuje klonowania głosu ani tak zaawansowanej kontroli emocji.

Czy mogę zbudować voice agenta z ElevenLabs?

Tak, Conversational AI łączy STT (Scribe), LLM (twój wybór) i TTS w jeden pipeline. Obsługuje tool calling, knowledge base i monitoring. SDK dostępne dla Python, TypeScript, Flutter, Swift i Kotlin.

Czy audio tags działają we wszystkich modelach?

Nie, audio tags ([excited], [whispers], itp.) to funkcja wyłącznie modelu Eleven v3. Starsze modele (Multilingual v2, Flash v2.5) interpretują emocje z kontekstu tekstu, ale nie obsługują tagów.

Podsumowanie

ElevenLabs to bezsprzeczny lider jakości syntazy mowy AI w 2026 roku. Model v3 z audio tags, multi-speaker dialogue i 70+ językami wyznacza nowy standard branżowy. Conversational AI pozwala budować głosowych agentów porównywalnych z Vapi, ale z przewagą najlepszej jakości głosu na rynku.

Dla programistów ElevenLabs oferuje dobrze udokumentowane SDK (Python, TypeScript), streaming API, voice cloning i elastyczną architekturę łączącą się z dowolnym LLM. Główne kompromisy to koszt przy skali i brak opcji self-hostingu - ale jeśli jakość głosu jest priorytetem, ElevenLabs jest trudny do pokonania.