التوثيق
API

Audio

Markdown

تحويل النص إلى كلام (TTS) والتعرّف على الكلام (STT) بصيغة OpenAI Audio.

الدليل الكامل
POSThttps://api.ailoot.ai/v1/audio/speech
Audio
# توليد الكلام
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": "طاب يومكم! هذا مثال على تحويل النص إلى كلام.", "voice": "longanlingxin"}' \
  --output speech.mp3

# التعرّف
curl https://api.ailoot.ai/v1/audio/transcriptions \
  -H "Authorization: Bearer $AILOOT_API_KEY" \
  -F model=qwen-asr \
  -F file=@meeting.wav
200 OK · التعرّف على الكلام
{
  "text": "طاب يومكم، أيها الزملاء. لنبدأ بنتائج الأسبوع…"
}

المصادقة

  • Authorizationheaderمطلوب

    المفتاح بصيغة Bearer sk-…. يمكن أيضاً استخدام الترويسات x-api-key أو x-goog-api-key.

تحويل النص إلى كلام: جسم الطلب

  • modelstringمطلوب

    نموذج تحويل النص إلى كلام: 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.

  • inputstringمطلوب

    النص المراد تحويله إلى كلام. تقبل نماذج MiniMax أقل من 10 000 محرف، ويقبل qwen-audio-3.0-tts-plus حتى 600 محرف.

  • voicestring

    الصوت. مطلوب لنماذج MiniMax (speech-2.8-hd وغيرها من speech-…): معرّف صوت MiniMax (أحرف لاتينية وأرقام و _ و -، حتى 128 محرفاً). لدى qwen-audio-3.0-tts-plus القيمة الافتراضية هي longanlingxin، ولدى نماذج Gemini TTS هي Kore.

  • response_formatstringاختياري

    MiniMax — يدعم فقط mp3; qwen-audio-3.0-tts-plus — mp3, wav أو pcm؛ Gemini TTS — يدعم wav أو json (رابط إلى الملف).

الرد ملف صوتي (لدى MiniMax بصيغة audio/mpeg). تُحسب التكلفة بحسب محارف النص أو التوكنات، كما هو موضح في الكتالوج.

التعرّف على الكلام

POSThttps://api.ailoot.ai/v1/audio/transcriptions
  • filefileمطلوب

    ملف صوتي WAV ضمن multipart/form-data. qwen-asr, qwen-asr-latest و qwen-audio-3.0-asr-flash: ملف PCM WAV كامل غير مضغوط بطول يصل إلى 5 دقائق، وحجم ملف يقارب 7,5 ميغابايت كحد أقصى (حتى 10 ميغابايت بصيغة base64). asr-1.0: ملف PCM WAV بطول يصل إلى 500 ثانية وحجم يصل إلى 50 ميغابايت. gemini-3.5-transcribe: ملف WAV بحجم يصل إلى 64 ميغابايت.

  • modelstringمطلوب

    نموذج التعرّف على الكلام: gemini-3.5-transcribe, qwen-audio-3.0-asr-flash, asr-1.0.

  • response_formatstringاختياري

    فقط json (أو اترك الحقل دون تحديد).

الحقل language لا تستخدمه هذه النماذج. الرد: {"text": "…"}. تُحسب التكلفة بحسب مدة التسجيل (بالثواني أو الدقائق أو الساعات؛ لكل نموذج وحدة خاصة به).

الصوت في الوقت الفعلي

لـ qwen-audio-3.0-realtime-plus افتح اتصال WebSocket wss://api.ailoot.ai/v1/realtime?model=qwen-audio-3.0-realtime-plus بالترويسة Authorization: Bearer <API_KEY>. أرسل المفتاح من جانب الخادم: لا يُقبل المفتاح ضمن query string. انتظر session.created بالنموذج المحدد، ثم أرسل الإعدادات والرسالة و response.create. فيما يلي ثلاثة إطارات نصية JSON متتابعة للحصول على رد نصي في جلسة صوتية:

{"type":"session.update","session":{"modalities":["text"],"turn_detection":null,"max_history_turns":20,"instructions":"كن موجزًا."}}

اقرأ أحداث الرد حتى response.done وقيمة usage النهائية الخاصة به؛ تأتي الأخطاء عبر الحدث error. تُحسب التكلفة بحسب التوكنات النصية والصوتية لكل رد مؤكّد. إدخال الصوت: الحدث input_audio_buffer.append مع audio — بصيغة base64 PCM16 mono 16 kHz؛ ثم input_audio_buffer.commit و response.create. إخراج الصوت بصيغة PCM16 mono 24 kHz. لا تُقبل الإطارات الثنائية في هذه الجلسة.

أحداث العميل المدعومة: session.update, input_audio_buffer.append/commit/clear, response.create/cancel, conversation.item.create/retrieve/delete. عناصر conversation items مخصصة للرسائل والنص فقط؛ أدوات الدوال والبحث على الويب وvoiceprint غير مدعومة. حدود الجلسة: 600 ثانية، و20 رداً، و20 جولة في سجل المحادثة، و2000 بايت لحقل instructions، و8000 بايت لنص العميل. تعتمد مهلة الخمول على الإعدادات (60 ثانية افتراضياً).

هل لديك أسئلة أخرى؟ أرسل Request ID ووصفاً للمشكلة وسنساعدك على فهمها.مراسلة الدعم