Skip to content

Metinden Sese (TTS)

Bir metin alır, doğal sese çevirir. OpenAI audio/speech formatı.

Mevcut modeller

ModelKaliteLatansKullanım yeri
blab-stable (önerilen)YüksekOrtaEğitim videosu, ürün demo, podcast
blab-fast-tr-nazOrtaDüşükTelefonda Türkçe (Naz sesi)
blab-fast-en-emmaOrtaDüşükTelefonda İngilizce (Emma sesi)
blab-ttsDüşükÇok düşükAnlık bildirim, IVR menü
tts-1OpenAI tarafıOpenAI anahtarı ekli channel'da

curl

bash
curl https://app.qevron.ai/v1/audio/speech \
  -H "Authorization: Bearer sk-..." \
  -H "Content-Type: application/json" \
  -d '{"model": "blab-stable", "input": "Merhaba dünya", "voice": "tr"}' \
  -o cikti.wav

Python (openai SDK)

python
from openai import OpenAI

client = OpenAI(api_key="sk-...", base_url="https://app.qevron.ai/v1")

resp = client.audio.speech.create(
    model="blab-stable",
    input="Qevron, kendi modellerinizi tek API ile sunar.",
    voice="tr",
)
resp.stream_to_file("cikti.wav")

Hangi modeli ne zaman?

  • blab-stable — kalite öncelikli, telefon olmayan tüm yerler. ~600–900 ms gecikme, üst seviye doğal ton.
  • blab-fast-tr-naz / blab-fast-en-emma — gerçek zamanlı konuşma (telefon ajanı). ~80–150 ms gecikme, ses karakteri sabit (Naz Türkçe, Emma İngilizce).
  • blab-tts — anlık duyurular, IVR menü açılışları. CPU bazlı, GPU bekletmez. Kalite mütevazı ama latans neredeyse sıfır.

voice parametresi

  • blab-tts için dil kodu: tr ya da en
  • blab-fast-* için zaten ses sabitlenmiştir (parametre yoksayılır)
  • blab-stable için tr / en (varsayılan tr)
  • OpenAI tts-1 için: alloy, echo, fable, onyx, nova, shimmer

Akış (streaming)

python
stream = client.audio.speech.create(
    model="blab-stable",
    input="Uzun bir metin...",
    voice="tr",
    stream=True,
)
with open("cikti.wav", "wb") as f:
    for chunk in stream.iter_bytes():
        f.write(chunk)

Eski stream_format parametresi

v2.2.0 öncesi OpenAI TTS API'sinin orijinal stream_format: "sse" parametresini açıkça vermek gerekiyordu. v2.2.0 ile qevron stream: true (SDK kullanımı) ⇒ stream_format: "sse" otomatik köprüleme yapıyor. Her ikisi de çalışır; stream_format daha açıkça verilirse onun kazanması esastır.

Sorun çözme

  • Sessiz dosya çıkıyorContent-Type: application/json başlığını ekledin mi? Form-data yerine JSON gönder.
  • Yanlış sesle çıkıyorblab-fast-* modellerinin ses karakteri sabit; ses değiştirmek için modeli değiştir (blab-fast-tr-naz yerine blab-fast-en-emma).
  • MP3 mi WAV mı? → Varsayılan WAV. "response_format": "mp3" ekleyerek MP3 alırsın.

Devam: Telefon ajanı · STT — Sesten Metne

Qevron — AI gateway. Arpanet / OpenAI / Anthropic / Gemini uyumlu.