Audio
MarkdownPřevod textu na řeč (TTS) a rozpoznávání řeči (STT) ve formátu OpenAI Audio.
Úplný průvodce
https://api.ailoot.ai/v1/audio/speech# převod textu na řeč
curl https://api.ailoot.ai/v1/audio/speech \
-H "Authorization: Bearer $AILOOT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "qwen-audio-3.0-tts-plus", "input": "Dobrý den! Toto je ukázka převodu textu na řeč.", "voice": "longanlingxin"}' \
--output speech.mp3
# rozpoznávání
curl https://api.ailoot.ai/v1/audio/transcriptions \
-H "Authorization: Bearer $AILOOT_API_KEY" \
-F model=qwen-asr \
-F file=@meeting.wav# rozpoznávání řeči
with open("meeting.wav", "rb") as f:
tr = client.audio.transcriptions.create(model="qwen-asr", file=f)
print(tr.text){
"text": "Dobrý den, kolegové. Začneme výsledky týdne…"
}Autorizace
- Authorizationheaderpovinný
Klíč ve tvaru
Bearer sk-…. Lze použít také hlavičkyx-api-keynebox-goog-api-key.
Převod textu na řeč: tělo požadavku
- modelstringpovinný
Model pro převod textu na řeč:
gemini-3.8-flash-tts,qwen-audio-3.0-tts-plus,speech-2.8-turbo,gemini-3.8-flash-lite-tts,speech-2.8-hd,gemini-3.1-flash-tts-preview,speech-2.6-turbo,speech-2.6-hd,speech-02-turbo,speech-02-hd. - inputstringpovinný
Text pro převod na řeč. U modelů MiniMax – méně než 10 000 znaků, u
qwen-audio-3.0-tts-plus– až 600. - voicestring
Hlas. Povinný pro modely MiniMax (
speech-2.8-hda dalšíspeech-…): identifikátor hlasu MiniMax (latinka, číslice,_a-, nejvýše 128 znaků). Uqwen-audio-3.0-tts-plusje ve výchozím nastavenílonganlingxin, u modelů Gemini TTS –Kore. - response_formatstringnepovinný
MiniMax – pouze
mp3;qwen-audio-3.0-tts-plus–mp3,wavnebopcm; Gemini TTS –wavnebojson(odkaz na soubor).
Odpověď je zvukový soubor (u MiniMax – audio/mpeg). Účtuje se za znaky textu nebo za tokeny podle údajů v katalogu.
Rozpoznávání řeči
https://api.ailoot.ai/v1/audio/transcriptions- filefilepovinný
Zvukový soubor WAV v
multipart/form-data.qwen-asr,qwen-asr-latestaqwen-audio-3.0-asr-flash: úplný nekomprimovaný PCM WAV až 5 minut, soubor přibližně do 7,5 MB (v base64 – až 10 MB).asr-1.0: PCM WAV až 500 sekund a 50 MB.gemini-3.5-transcribe: WAV až 64 MB. - modelstringpovinný
Model pro rozpoznávání řeči:
gemini-3.5-transcribe,qwen-audio-3.0-asr-flash,asr-1.0. - response_formatstringnepovinný
Pouze
json(nebo neuvádět).
Pole language tyto modely nevyužívají. Odpověď: {"text": "…"}. Účtuje se za délku nahrávky (sekundy, minuty nebo hodiny – každý model má svou jednotku).
Hlas v reálném čase
Pro qwen-audio-3.0-realtime-plus otevřete WebSocket wss://api.ailoot.ai/v1/realtime?model=qwen-audio-3.0-realtime-plus s hlavičkou Authorization: Bearer <API_KEY>. Klíč předávejte ze serverové strany: klíč v řetězci parametrů URL (query string) se nepřijímá. Vyčkejte na session.created s vybraným modelem, poté odešlete nastavení, zprávu a response.create. Níže jsou tři po sobě jdoucí textové rámce JSON pro textovou odpověď ve zvukové relaci:
{"type":"session.update","session":{"modalities":["text"],"turn_detection":null,"max_history_turns":20,"instructions":"Buď stručný."}}{"type":"conversation.item.create","item":{"type":"message","role":"user","content":[{"type":"input_text","text":"Řekni ano."}]}}{"type":"response.create"}Čtěte události odpovědi až do response.done a jeho závěrečné údaje o spotřebě (usage); chyby přicházejí jako událost error. Účtuje se podle textových a zvukových tokenů každé potvrzené odpovědi. Zvukový vstup: událost input_audio_buffer.append s audio – base64 PCM16 mono 16 kHz; poté input_audio_buffer.commit a response.create. Zvukový výstup – PCM16 mono 24 kHz. Binární rámce se v této relaci nepřijímají.
Podporované klientské události: session.update, input_audio_buffer.append/commit/clear, response.create/cancel, conversation.item.create/retrieve/delete. Položky konverzace (conversation items) mohou obsahovat pouze zprávy/text; funkční nástroje (function tools), webové vyhledávání (web search) a hlasový otisk (voiceprint) nejsou podporovány. Limity relace: 600 sekund, 20 odpovědí, 20 kol historie (history turns), 2000 bajtů pokynů (instructions) a 8000 bajtů klientského textu. Časový limit nečinnosti (Idle timeout) závisí na konfiguraci (ve výchozím nastavení 60 sekund).