Garsas
MarkdownTeksto pavertimas kalba (TTS) ir kalbos atpažinimas (STT) OpenAI Audio formatu.
Visas vadovas
https://api.ailoot.ai/v1/audio/speech# teksto įgarsinimas
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": "Laba diena! Tai teksto įgarsinimo pavyzdys.", "voice": "longanlingxin"}' \
--output speech.mp3
# atpažinimas
curl https://api.ailoot.ai/v1/audio/transcriptions \
-H "Authorization: Bearer $AILOOT_API_KEY" \
-F model=qwen-asr \
-F file=@meeting.wav# kalbos atpažinimas
with open("meeting.wav", "rb") as f:
tr = client.audio.transcriptions.create(model="qwen-asr", file=f)
print(tr.text){
"text": "Laba diena, kolegos. Pradėkime nuo savaitės rezultatų…"
}Autorizacija
- Authorizationheaderprivalomas
Raktas formatu
Bearer sk-…. Taip pat tinka antraštėsx-api-keyarbax-goog-api-key.
Teksto pavertimas kalba: užklausos turinys
- modelstringprivalomas
Teksto pavertimo kalba modelis:
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. - inputstringprivalomas
Tekstas, kurį reikia paversti kalba. MiniMax modeliams — mažiau nei 10 000 ženklų, modeliui
qwen-audio-3.0-tts-plus— iki 600. - voicestring
Balsas. Privalomas MiniMax modeliams (
speech-2.8-hdir kitiemsspeech-…): MiniMax balso identifikatorius (lotyniškos raidės, skaitmenys,_ir-, iki 128 ženklų). Modelioqwen-audio-3.0-tts-plusnumatytoji reikšmėlonganlingxin, Gemini TTS modelių —Kore. - response_formatstringneprivalomas
MiniMax — tik
mp3;qwen-audio-3.0-tts-plus—mp3,wavarbapcm; Gemini TTS —wavarbajson(nuoroda į failą).
Atsakymas — garso failas (MiniMax atveju — audio/mpeg). Mokama už teksto ženklus arba žetonus, kaip nurodyta kataloge.
Kalbos atpažinimas
https://api.ailoot.ai/v1/audio/transcriptions- filefileprivalomas
WAV garso failas formatu
multipart/form-data.qwen-asr,qwen-asr-latestirqwen-audio-3.0-asr-flash: visas nesuspaustas PCM WAV iki 5 minučių, failas maždaug iki 7,5 MB (base64 formatu — iki 10 MB).asr-1.0: PCM WAV iki 500 sekundžių ir 50 MB.gemini-3.5-transcribe: WAV iki 64 MB. - modelstringprivalomas
Kalbos atpažinimo modelis:
gemini-3.5-transcribe,qwen-audio-3.0-asr-flash,asr-1.0. - response_formatstringneprivalomas
Tik
json(arba nenurodykite).
Laukas language šiuose modeliuose nenaudojamas. Atsakymas: {"text": "…"}. Mokama už įrašo trukmę (sekundes, minutes arba valandas — kiekvienas modelis turi savo vienetą).
Balsas realiuoju laiku
Modeliui qwen-audio-3.0-realtime-plus atverkite WebSocket wss://api.ailoot.ai/v1/realtime?model=qwen-audio-3.0-realtime-plus su antrašte Authorization: Bearer <API_KEY>. Raktą perduokite iš serverio: raktas užklausos eilutėje nepriimamas. Sulaukite session.created su pasirinktu modeliu, tada nusiųskite nustatymus, pranešimą ir response.create. Toliau pateikti trys iš eilės siunčiami JSON teksto kadrai tekstiniam atsakymui garso seanse:
{"type":"session.update","session":{"modalities":["text"],"turn_detection":null,"max_history_turns":20,"instructions":"Atsakyk trumpai."}}{"type":"conversation.item.create","item":{"type":"message","role":"user","content":[{"type":"input_text","text":"Pasakyk taip."}]}}{"type":"response.create"}Skaitykite atsakymo įvykius iki response.done ir jo galutinio usage; klaidos pateikiamos įvykiu error. Mokama už kiekvieno patvirtinto atsakymo teksto ir garso žetonus. Garso įvestis: įvykis input_audio_buffer.append su audio — base64 PCM16 mono 16 kHz; tada input_audio_buffer.commit ir response.create. Garso išvestis — PCM16 mono 24 kHz. Dvejetainiai kadrai šiame seanse nepriimami.
Palaikomi kliento įvykiai: session.update, input_audio_buffer.append/commit/clear, response.create/cancel, conversation.item.create/retrieve/delete. conversation items — tik pranešimai / tekstas; function tools, web search ir voiceprint nepalaikomi. Seanso limitai: 600 sekundžių, 20 atsakymų, 20 history turns, 2000 baitų instructions ir 8000 baitų kliento teksto. Idle timeout priklauso nuo konfigūracijos (numatytoji reikšmė — 60 sekundžių).