Audio
MarkdownOpenAI Audio formatida matnni ovozlashtirish (TTS) va nutqni tanish (STT).
To‘liq qo‘llanma
https://api.ailoot.ai/v1/audio/speech# Ovozlashtirish
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": "Assalomu alaykum! Bu ovozlashtirish misoli.", "voice": "longanlingxin"}' \
--output speech.mp3
# Nutqni tanish
curl https://api.ailoot.ai/v1/audio/transcriptions \
-H "Authorization: Bearer $AILOOT_API_KEY" \
-F model=qwen-asr \
-F file=@meeting.wav# Nutqni tanish
with open("meeting.wav", "rb") as f:
tr = client.audio.transcriptions.create(model="qwen-asr", file=f)
print(tr.text){
"text": "Assalomu alaykum, hamkasblar. Hafta yakunlaridan boshlaymiz…"
}Avtorizatsiya
- Authorizationheadermajburiy
Kalit quyidagi ko‘rinishda:
Bearer sk-…. Quyidagi sarlavhalar ham mos keladi:x-api-keyyokix-goog-api-key.
Ovozlashtirish: so‘rov tanasi
- modelstringmajburiy
Ovozlashtirish modeli:
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. - inputstringmajburiy
Ovozlashtiriladigan matn. MiniMax modellarida — 10 000 ta belgidan kam,
qwen-audio-3.0-tts-plusmodelida esa — 600 tagacha. - voicestring
Ovoz. MiniMax modellari uchun majburiy (
speech-2.8-hdva boshqaspeech-…): MiniMax ovoz identifikatori (lotin harflari, raqamlar,_va-, 128 ta belgigacha).qwen-audio-3.0-tts-plusuchun standart qiymatlonganlingxin, Gemini TTS modellarida esa —Kore. - response_formatstringixtiyoriy
MiniMax uchun — faqat
mp3;qwen-audio-3.0-tts-plus—mp3,wavyokipcm; Gemini TTS uchun —wavyokijson(faylga havola).
Javob — audiofayl (MiniMax uchun — audio/mpeg). To‘lov — katalogda ko‘rsatilganidek, matn belgilari yoki tokenlar uchun.
Nutqni tanish
https://api.ailoot.ai/v1/audio/transcriptions- filefilemajburiy
WAV audiofayli quyidagi formatda:
multipart/form-data.qwen-asr,qwen-asr-latestvaqwen-audio-3.0-asr-flash: davomiyligi 5 daqiqagacha bo‘lgan butun, siqilmagan PCM WAV; fayl hajmi taxminan 7,5 MB gacha (base64 shaklida — 10 MB gacha).asr-1.0: davomiyligi 500 soniyagacha va hajmi 50 MB gacha bo‘lgan PCM WAV.gemini-3.5-transcribe: hajmi 64 MB gacha bo‘lgan WAV. - modelstringmajburiy
Nutqni tanish modeli:
gemini-3.5-transcribe,qwen-audio-3.0-asr-flash,asr-1.0. - response_formatstringixtiyoriy
Faqat
json(yoki ko‘rsatmaslik mumkin).
Maydon: language bu modellar tomonidan ishlatilmaydi. Javob: {"text": "…"}. To‘lov — yozuv davomiyligi uchun (soniya, daqiqa yoki soat — har bir modelning o‘z birligi bor).
Real vaqtdagi ovoz
Quyidagi model uchun: qwen-audio-3.0-realtime-plus WebSocket oching: wss://api.ailoot.ai/v1/realtime?model=qwen-audio-3.0-realtime-plus Quyidagi sarlavha bilan: Authorization: Bearer <API_KEY>. Kalitni server tomonidan uzating: URL so‘rov satri orqali berilgan kalit qabul qilinmaydi. Quyidagi hodisani kuting: session.created tanlangan model bilan; keyin sozlamalar, xabar va quyidagi hodisani yuboring: response.create. Quyida audioseansda matnli javob uchun ketma-ket keladigan uchta JSON matn freymi keltirilgan:
{"type":"session.update","session":{"modalities":["text"],"turn_detection":null,"max_history_turns":20,"instructions":"Qisqa javob bering."}}{"type":"conversation.item.create","item":{"type":"message","role":"user","content":[{"type":"input_text","text":"Ha deng."}]}}{"type":"response.create"}Javob hodisalarini quyidagi hodisagacha o‘qing: response.done va uning yakuniy usage qiymatini oling; xatolar quyidagi hodisa orqali keladi: error. To‘lov — har bir tasdiqlangan javobning matn va audio tokenlari uchun. Audio kirishi: quyidagi hodisa: input_audio_buffer.append quyidagiga ega: audio — base64 PCM16 mono 16 kHz; keyin input_audio_buffer.commit va response.create. Audio chiqishi — PCM16 mono 24 kHz. Bu seansda ikkilik freymlar qabul qilinmaydi.
Qo‘llab-quvvatlanadigan mijoz hodisalari: session.update, input_audio_buffer.append/commit/clear, response.create/cancel, conversation.item.create/retrieve/delete. Suhbat elementlari — faqat xabarlar/matn; funksiya vositalari, veb qidiruv va voiceprint qo‘llab-quvvatlanmaydi. Seans limitlari: 600 soniya, 20 javob, tarixdagi 20 ta muloqot navbati, instructions uchun 2000 bayt va mijoz matni uchun 8000 bayt. Faoliyatsizlikdagi kutish muddati konfiguratsiyaga bog‘liq (standart qiymat — 60 soniya).