Microsoft AI: MAI-Voice-2.1
يولّد MAI-Voice-2.1 من Microsoft AI كلامًا تعبيريًا متعدد اللغات للسرد والكتب الصوتية والمحتوى التعليمي والتعليق الصوتي. وتدعم مواصفاته التي تشمل 23 لغة اتساق هوية المتحدث وتعدد المتحدثين والتحكّم في الإلقاء.
عن النموذج
يغطي هذا الوصف قدرات النموذج. وترد أدناه المدخلات والمخرجات والخيارات المتاحة في Ailoot للطريقة المحددة.
MAI-Voice-2.1 هو نموذج Microsoft AI لتحويل النص إلى كلام بالتوجيه، للأعمال التي تهم فيها التعبيرية ودقة الصوت. تغطي بطاقة نموذجه ثلاثًا وعشرين لغة وستًا وعشرين صيغة محلية، مع تنغيم وإيقاع وفروق عاطفية طبيعية. وتحدد الشركة المصنّعة الكتب الصوتية والسرد الإعلامي وإنشاء المحتوى والتعليق الصوتي استخدامات رئيسية. يركّز هذا الإصدار على المحتوى التعبيري الأطول؛ أما MAI-Voice-2.1-Flash فهو خيار منفصل مصمم للتفاعل الحساس للكمون.
سرد بمتحدث متسق
توثّق بطاقة النموذج تقديم هوية صوتية واحدة باتساق عبر اللغات المدعومة. ويستخدم التوليد المطوّل التقسيم إلى أجزاء ونقل السياق لتحسين الاستمرارية بين المقاطع. يفيد ذلك درسًا أو فصلًا من كتاب صوتي أو سلسلة أقسام مترابطة للتعليق الصوتي يجب أن تحتفظ بطابع الراوي. أعدّ مقاطع مترابطة بحدود واضحة وحافظ على اختيار المتحدث نفسه طوال العمل.
المدخل هو النص النهائي، مع مرجع اختياري للمتحدث وإعدادات SSML التعبيرية. ينبغي أن تميّز متطلبات السرد ما يسمعه المستمع عن ملاحظات الإنتاج. ولشرح تقني، اكتب مقدمة واضحة ثم الخطوات الفعلية والتعليمة الختامية. حافظ على صيغة كتابية متسقة لأسماء المنتجات والمصطلحات المتكررة. وللسرد الموطّن، أعدّ النص باللغة المستهدفة؛ فاللغة والصوت المختاران يحكمان أداءه المنطوق.
المتحدثون والأدوار والتحكّم التعبيري
توفر Microsoft مكتبة أصوات منتقاة وتوثّق تعدد المتحدثين للحوار. ويوضّح Harper وGrant هويات متحدثين لها إدخالات في صيغ محلية متعددة. ويمكن لتبادل تعليمي بين شخصين إسناد السؤال والشرح إلى صوتين مختلفين مع الاحتفاظ بالإسناد نفسه عند عودة الدور. ضع تسميات واضحة للعبارات المنطوقة لكي تُمثّل المحادثة المطلوبة في مدخل التوليد.
يمكن تشكيل النبرة والإلقاء على مستوى الدور أو الجملة عبر SSML. والأساليب خاصة بكل متحدث: يسرد الكتالوج المُدار أساليب راوية أو تعليمية موجهة للمهمة لأصوات ملائمة، وخيارات عاطفية مثل الفرح أو الارتياح لأصوات أخرى. يدعم إدخال Harper الأمريكي هذين الأسلوبين العاطفيين. اختر المتحدث وأسلوب إلقائه الموثّق معًا بدل نقل أسلوب من صوت آخر.
في قصة أو عرض، يمكن للتعبيرية أن تميز شرحًا واقعيًا ومقطعًا تأمليًا واقتباسًا حيويًا. ومن أمثلة العبارة العملية: «أعطتنا المحاولة الأولى صورة ناقصة. وجعل النظر إلى التسلسل كاملًا الخطوة المفقودة واضحة.» حدّد مواضع تغير المعنى وأعدّ الوحدات المنطوقة وفقًا لها. استمع إلى الانتقالات ليكون الإلقاء تابعًا للسرد بدل منح كل جملة التأكيد نفسه.
الصوت المرجعي والنتيجة الصوتية
يطابق وضع الصوت المخصص الاختياري متحدثًا موافقًا انطلاقًا من مرجع صوتي مدته خمس إلى ستين ثانية، دون ضبط دقيق. توصي Microsoft بإلقاء حواري طبيعي وطاقة معتدلة في المرجع، لأن العينة تؤثر في الصوت المولّد. ويتطلب سير عمل الصوت المخصص لديها موافقة الشركة المصنّعة وإقرار موافقة مسجّلًا. والمكتبة الجاهزة مسار منفصل لاختيار الصوت.
تتيح الشركة المصنّعة اختيار صيغة الإخراج، ويحفظ مثالها المنشور للتوليد ملف MP3 أحادي القناة عند 24 kHz و160 kbit/s. تصف هذه الإعدادات مسار إخراج واحدًا. اختر التمثيل الصوتي لمرحلة التحرير أو التشغيل التالية، واحتفظ بارتباط النص والمتحدث وترتيب الأقسام بالتسجيل. قد يضم الفصل أو الدرس المكتمل عدة مقاطع مولّدة مع بقائه تجربة استماع مترابطة واحدة.
استخدم النتيجة المطوّلة
يتجه MAI-Voice-2.1 إلى الطبيعية والتعبير عندما تكون الاستجابة الفورية أقل أهمية من الأداء المنطوق. ولعمل ممتد، راجع الأسماء المتكررة وحدود الأقسام والأصوات المسندة للحوار والتغيرات العاطفية. تثبت الوثائق القدرة على المحتوى المطوّل وآليات الاتساق دون تحديد نص غير محدود أو أقصى مدة تسجيل مضمونة. والمخرج العملي صوت تعبيري يطابق راويه وصياغته وتسلسله المادة المُعدّة.
Ailoot Ultra · توليد الكلام POST /v1/audio/speech microsoft/mai-voice-2.1
microsoft/mai-voice-2.1البداية
يولّد MAI-Voice-2.1 من Microsoft AI كلامًا تعبيريًا متعدد اللغات للسرد والكتب الصوتية والمحتوى التعليمي والتعليق الصوتي. وتدعم مواصفاته التي تشمل 23 لغة اتساق هوية المتحدث وتعدد المتحدثين والتحكّم في الإلقاء.
- المدخلات المقبولة
- النص
- النتائج
- الصوت
متاح في Ailoot · المدخلات والطرائق
Ailoot Ultra · توليد الكلام POST /v1/audio/speech
- الإدخال
text- الإخراج
audio- صيغة الإخراج
- mp3
| الحقل | النوع | المتطلب | القيم والحدود | القيمة الافتراضية |
|---|---|---|---|---|
الحقلmodel | النوعstring | المتطلبمطلوب | القيم والحدود microsoft/mai-voice-2.1 | القيمة الافتراضية— |
الحقلinput | النوعstring | المتطلبمطلوب | القيم والحدود الحد الأدنى للطول: 1 الوحدة: محارف Unicode | القيمة الافتراضية— |
الحقلvoice | النوعstring | المتطلبمطلوب | القيم والحدود cs-CZ-Grant:MAI-Voice-2.1, cs-CZ-Harper:MAI-Voice-2.1, da-DK-Grant:MAI-Voice-2.1, da-DK-Harper:MAI-Voice-2.1, de-DE-Grant:MAI-Voice-2.1, de-DE-Harper:MAI-Voice-2.1, de-DE-Klaus:MAI-Voice-2.1, de-DE-Mia:MAI-Voice-2.1, en-AU-Isla:MAI-Voice-2.1, en-GB-Emily:MAI-Voice-2.1, en-GB-Harry:MAI-Voice-2.1, en-IN-Dhruv:MAI-Voice-2.1, en-IN-Priya:MAI-Voice-2.1, en-US-Ethan:MAI-Voice-2.1, en-US-Grant:MAI-Voice-2.1, en-US-Harper:MAI-Voice-2.1, en-US-Iris:MAI-Voice-2.1, en-US-Jasper:MAI-Voice-2.1, en-US-Olivia:MAI-Voice-2.1, en-US-Sage:MAI-Voice-2.1, es-ES-Marta:MAI-Voice-2.1, es-MX-Alejo:MAI-Voice-2.1, es-MX-Grant:MAI-Voice-2.1, es-MX-Harper:MAI-Voice-2.1, es-MX-Valeria:MAI-Voice-2.1, fi-FI-Grant:MAI-Voice-2.1, fi-FI-Harper:MAI-Voice-2.1, fr-FR-Grant:MAI-Voice-2.1, fr-FR-Harper:MAI-Voice-2.1, fr-FR-Marc:MAI-Voice-2.1, fr-FR-Soleil:MAI-Voice-2.1, hi-IN-Arjun:MAI-Voice-2.1, hi-IN-Dhruv:MAI-Voice-2.1, hi-IN-Grant:MAI-Voice-2.1, hi-IN-Harper:MAI-Voice-2.1, hi-IN-Kavya:MAI-Voice-2.1, hi-IN-Priya:MAI-Voice-2.1, hu-HU-Bence:MAI-Voice-2.1, hu-HU-Grant:MAI-Voice-2.1, hu-HU-Harper:MAI-Voice-2.1, hu-HU-Levente:MAI-Voice-2.1, hu-HU-Lilla:MAI-Voice-2.1, hu-HU-Reka:MAI-Voice-2.1, id-ID-Grant:MAI-Voice-2.1, id-ID-Harper:MAI-Voice-2.1, it-IT-Grant:MAI-Voice-2.1, it-IT-Harper:MAI-Voice-2.1, it-IT-Luca:MAI-Voice-2.1, it-IT-Rosa:MAI-Voice-2.1, ko-KR-Grant:MAI-Voice-2.1, ko-KR-Haena:MAI-Voice-2.1, ko-KR-Harper:MAI-Voice-2.1, ko-KR-Junho:MAI-Voice-2.1, nb-NO-Grant:MAI-Voice-2.1, nb-NO-Harper:MAI-Voice-2.1, nl-NL-Grant:MAI-Voice-2.1, nl-NL-Harper:MAI-Voice-2.1, nl-NL-Sander:MAI-Voice-2.1, pl-PL-Grant:MAI-Voice-2.1, pl-PL-Harper:MAI-Voice-2.1, pt-BR-Caio:MAI-Voice-2.1, pt-BR-Grant:MAI-Voice-2.1, pt-BR-Harper:MAI-Voice-2.1, pt-BR-Luana:MAI-Voice-2.1, pt-BR-Pedro:MAI-Voice-2.1, pt-BR-Rafael:MAI-Voice-2.1, pt-PT-Grant:MAI-Voice-2.1, pt-PT-Harper:MAI-Voice-2.1, pt-PT-Rui:MAI-Voice-2.1, ro-RO-Andrei:MAI-Voice-2.1, ro-RO-Elena:MAI-Voice-2.1, ro-RO-Grant:MAI-Voice-2.1, ro-RO-Harper:MAI-Voice-2.1, ro-RO-Ioana:MAI-Voice-2.1, ro-RO-Radu:MAI-Voice-2.1, ru-RU-Grant:MAI-Voice-2.1, ru-RU-Harper:MAI-Voice-2.1, ru-RU-Lev:MAI-Voice-2.1, ru-RU-Masha:MAI-Voice-2.1, sv-SE-Grant:MAI-Voice-2.1, sv-SE-Harper:MAI-Voice-2.1, th-TH-Grant:MAI-Voice-2.1, th-TH-Harper:MAI-Voice-2.1, th-TH-Krit:MAI-Voice-2.1, th-TH-Nattapong:MAI-Voice-2.1, tr-TR-Aydin:MAI-Voice-2.1, tr-TR-Elif:MAI-Voice-2.1, tr-TR-Grant:MAI-Voice-2.1, tr-TR-Harper:MAI-Voice-2.1, vi-VN-Grant:MAI-Voice-2.1, vi-VN-Harper:MAI-Voice-2.1, zh-CN-Bo:MAI-Voice-2.1, zh-CN-Grant:MAI-Voice-2.1, zh-CN-Harper:MAI-Voice-2.1, zh-CN-Lan:MAI-Voice-2.1, zh-CN-Mei:MAI-Voice-2.1, zh-CN-Wei:MAI-Voice-2.1 | القيمة الافتراضية— |
الحقلresponse_format | النوعstring | المتطلبمطلوب | القيم والحدود mp3 | القيمة الافتراضية— |
تركيبات مواد الإدخال
text_to_speech · مطلوب: input
معلمات الطريقة ودورة حياتها
| المعلمة | المواصفات |
|---|---|
المعلمةcontent_type | المواصفاتapplication/json |
المعلمةrequired | المواصفاتmodel, input, voice, response_format |
المعلمةvoice_ids | المواصفاتcs-CZ-Grant:MAI-Voice-2.1, cs-CZ-Harper:MAI-Voice-2.1, da-DK-Grant:MAI-Voice-2.1, da-DK-Harper:MAI-Voice-2.1, de-DE-Grant:MAI-Voice-2.1, de-DE-Harper:MAI-Voice-2.1, de-DE-Klaus:MAI-Voice-2.1, de-DE-Mia:MAI-Voice-2.1, en-AU-Isla:MAI-Voice-2.1, en-GB-Emily:MAI-Voice-2.1, en-GB-Harry:MAI-Voice-2.1, en-IN-Dhruv:MAI-Voice-2.1, en-IN-Priya:MAI-Voice-2.1, en-US-Ethan:MAI-Voice-2.1, en-US-Grant:MAI-Voice-2.1, en-US-Harper:MAI-Voice-2.1, en-US-Iris:MAI-Voice-2.1, en-US-Jasper:MAI-Voice-2.1, en-US-Olivia:MAI-Voice-2.1, en-US-Sage:MAI-Voice-2.1, es-ES-Marta:MAI-Voice-2.1, es-MX-Alejo:MAI-Voice-2.1, es-MX-Grant:MAI-Voice-2.1, es-MX-Harper:MAI-Voice-2.1, es-MX-Valeria:MAI-Voice-2.1, fi-FI-Grant:MAI-Voice-2.1, fi-FI-Harper:MAI-Voice-2.1, fr-FR-Grant:MAI-Voice-2.1, fr-FR-Harper:MAI-Voice-2.1, fr-FR-Marc:MAI-Voice-2.1, fr-FR-Soleil:MAI-Voice-2.1, hi-IN-Arjun:MAI-Voice-2.1, hi-IN-Dhruv:MAI-Voice-2.1, hi-IN-Grant:MAI-Voice-2.1, hi-IN-Harper:MAI-Voice-2.1, hi-IN-Kavya:MAI-Voice-2.1, hi-IN-Priya:MAI-Voice-2.1, hu-HU-Bence:MAI-Voice-2.1, hu-HU-Grant:MAI-Voice-2.1, hu-HU-Harper:MAI-Voice-2.1, hu-HU-Levente:MAI-Voice-2.1, hu-HU-Lilla:MAI-Voice-2.1, hu-HU-Reka:MAI-Voice-2.1, id-ID-Grant:MAI-Voice-2.1, id-ID-Harper:MAI-Voice-2.1, it-IT-Grant:MAI-Voice-2.1, it-IT-Harper:MAI-Voice-2.1, it-IT-Luca:MAI-Voice-2.1, it-IT-Rosa:MAI-Voice-2.1, ko-KR-Grant:MAI-Voice-2.1, ko-KR-Haena:MAI-Voice-2.1, ko-KR-Harper:MAI-Voice-2.1, ko-KR-Junho:MAI-Voice-2.1, nb-NO-Grant:MAI-Voice-2.1, nb-NO-Harper:MAI-Voice-2.1, nl-NL-Grant:MAI-Voice-2.1, nl-NL-Harper:MAI-Voice-2.1, nl-NL-Sander:MAI-Voice-2.1, pl-PL-Grant:MAI-Voice-2.1, pl-PL-Harper:MAI-Voice-2.1, pt-BR-Caio:MAI-Voice-2.1, pt-BR-Grant:MAI-Voice-2.1, pt-BR-Harper:MAI-Voice-2.1, pt-BR-Luana:MAI-Voice-2.1, pt-BR-Pedro:MAI-Voice-2.1, pt-BR-Rafael:MAI-Voice-2.1, pt-PT-Grant:MAI-Voice-2.1, pt-PT-Harper:MAI-Voice-2.1, pt-PT-Rui:MAI-Voice-2.1, ro-RO-Andrei:MAI-Voice-2.1, ro-RO-Elena:MAI-Voice-2.1, ro-RO-Grant:MAI-Voice-2.1, ro-RO-Harper:MAI-Voice-2.1, ro-RO-Ioana:MAI-Voice-2.1, ro-RO-Radu:MAI-Voice-2.1, ru-RU-Grant:MAI-Voice-2.1, ru-RU-Harper:MAI-Voice-2.1, ru-RU-Lev:MAI-Voice-2.1, ru-RU-Masha:MAI-Voice-2.1, sv-SE-Grant:MAI-Voice-2.1, sv-SE-Harper:MAI-Voice-2.1, th-TH-Grant:MAI-Voice-2.1, th-TH-Harper:MAI-Voice-2.1, th-TH-Krit:MAI-Voice-2.1, th-TH-Nattapong:MAI-Voice-2.1, tr-TR-Aydin:MAI-Voice-2.1, tr-TR-Elif:MAI-Voice-2.1, tr-TR-Grant:MAI-Voice-2.1, tr-TR-Harper:MAI-Voice-2.1, vi-VN-Grant:MAI-Voice-2.1, vi-VN-Harper:MAI-Voice-2.1, zh-CN-Bo:MAI-Voice-2.1, zh-CN-Grant:MAI-Voice-2.1, zh-CN-Harper:MAI-Voice-2.1, zh-CN-Lan:MAI-Voice-2.1, zh-CN-Mei:MAI-Voice-2.1, zh-CN-Wei:MAI-Voice-2.1 |
المعلمةresponse_format | المواصفاتmp3 |
المعلمةmax_input_characters | المواصفاتnull |
المعلمةother_options | المواصفاتfalse |
المعلمةinput | المواصفاتنص UTF-8 الدقيق؛ يُحصى عدد محارف Unicode دون تطبيع |
المعلمةmaterial_types | المواصفاتtext |
دورة الحياة: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · قيمة task_id الفعلية المُعادة أو سجل مكتبة الوسائط
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
اختر الصوت المحدد من ملف إعداد هذا النموذج.
أحرف الإدخال وثواني الصوت مقياسان مختلفان للاستخدام.
الباقات
مراجع التسعير لا تضيف خيارات للطلب. المعلمات المدعومة مذكورة للطريقة المحددة.
- الوضع السريع
- غير محدد عند اختيار الوضع السريع
- الوضع المرن
- غير محدد عند اختيار وضع flex
- أقصى جهد للاستدلال
- غير محدد عندما يُطبَّق الضبط الافتراضي default مع أقصى جهد للاستدلال
تعرفات Ailoot
الأسعار حسب الإعدادات
طابق كل رسم مع الشروط المعروضة. طبّق تعرفة واحدة لكل مجموعة من الإعدادات البديلة.
| الإعدادات | جدول التعرفة | الكمية القابلة للفوترة | وحدة الفوترة | الرسوم |
|---|---|---|---|---|
| الإعداداتالتعرفات الأساسية للرموز | جدول التعرفةالتعرفة الأساسية | الكمية القابلة للفوترة— | وحدة الفوترة— | الرسوم الإدخال · رموز الإدخال — / 1K من الرموز الإخراج · رموز الإخراج — / 1K من الرموز الإدخال · قراءة ذاكرة التخزين المؤقت — / 1K من الرموز الإدخال · الكتابة إلى ذاكرة التخزين المؤقت — / 1K من الرموز الإدخال · الكتابة إلى ذاكرة التخزين المؤقت، 1 ساعة — / 1K من الرموز |
| الإعداداتUltra | جدول التعرفة— | الكمية القابلة للفوترةتُحتسب كل نقطة ترميز Unicode حرفًا واحدًا، بما في ذلك محارف هان. | وحدة الفوترةلكل 1K حرف مُدخل | الرسوم الإدخال · محرف إدخال $0.044 لكل 1K حرف مُدخل |
تفاصيل التعرفة المرجعية
لا تغيّر جداول التعرفة المرجعية على مستوى النموذج اختيار الطريقة أو عروض الأسعار أو الرسوم. وتستخدم الرسوم الفعلية تعرفات طريقة Ailoot المحددة.
Microsoft AI: MAI-Voice-2.1
الأسعار حسب الإعدادات
| الإعدادات | شروط الفوترة | الرسوم |
|---|---|---|
| الإعداداتMicrosoft AI: MAI-Voice-2.1 · الإعداد الافتراضي | شروط الفوترةالإعداد الافتراضي | الرسوم الإدخال · أحرف الإدخال 0.000044 US$ لكل حرف مُدخل |
تحجز Ailoot مبلغًا تقديريًا قبل الطلب. وبعد ظهور النتيجة، تُسوّي الرسوم النهائية بناءً على الاستخدام المقاس. وتستخدم تسوية البث سجل الاستخدام النهائي. كيفية عمل حجز المبلغ وتسوية الرسوم →
أمثلة للطلبات
Ailoot Ultra · توليد الكلام
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_VOICE_ID:?Choose an accepted voice ID from this exact model profile}"
export AILOOT_VOICE_ID
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "microsoft/mai-voice-2.1", "input": "Good afternoon! This is a short voice take."}')
voice=os.environ["AILOOT_VOICE_ID"]
allowed=json.loads('["cs-CZ-Grant:MAI-Voice-2.1", "cs-CZ-Harper:MAI-Voice-2.1", "da-DK-Grant:MAI-Voice-2.1", "da-DK-Harper:MAI-Voice-2.1", "de-DE-Grant:MAI-Voice-2.1", "de-DE-Harper:MAI-Voice-2.1", "de-DE-Klaus:MAI-Voice-2.1", "de-DE-Mia:MAI-Voice-2.1", "en-AU-Isla:MAI-Voice-2.1", "en-GB-Emily:MAI-Voice-2.1", "en-GB-Harry:MAI-Voice-2.1", "en-IN-Dhruv:MAI-Voice-2.1", "en-IN-Priya:MAI-Voice-2.1", "en-US-Ethan:MAI-Voice-2.1", "en-US-Grant:MAI-Voice-2.1", "en-US-Harper:MAI-Voice-2.1", "en-US-Iris:MAI-Voice-2.1", "en-US-Jasper:MAI-Voice-2.1", "en-US-Olivia:MAI-Voice-2.1", "en-US-Sage:MAI-Voice-2.1", "es-ES-Marta:MAI-Voice-2.1", "es-MX-Alejo:MAI-Voice-2.1", "es-MX-Grant:MAI-Voice-2.1", "es-MX-Harper:MAI-Voice-2.1", "es-MX-Valeria:MAI-Voice-2.1", "fi-FI-Grant:MAI-Voice-2.1", "fi-FI-Harper:MAI-Voice-2.1", "fr-FR-Grant:MAI-Voice-2.1", "fr-FR-Harper:MAI-Voice-2.1", "fr-FR-Marc:MAI-Voice-2.1", "fr-FR-Soleil:MAI-Voice-2.1", "hi-IN-Arjun:MAI-Voice-2.1", "hi-IN-Dhruv:MAI-Voice-2.1", "hi-IN-Grant:MAI-Voice-2.1", "hi-IN-Harper:MAI-Voice-2.1", "hi-IN-Kavya:MAI-Voice-2.1", "hi-IN-Priya:MAI-Voice-2.1", "hu-HU-Bence:MAI-Voice-2.1", "hu-HU-Grant:MAI-Voice-2.1", "hu-HU-Harper:MAI-Voice-2.1", "hu-HU-Levente:MAI-Voice-2.1", "hu-HU-Lilla:MAI-Voice-2.1", "hu-HU-Reka:MAI-Voice-2.1", "id-ID-Grant:MAI-Voice-2.1", "id-ID-Harper:MAI-Voice-2.1", "it-IT-Grant:MAI-Voice-2.1", "it-IT-Harper:MAI-Voice-2.1", "it-IT-Luca:MAI-Voice-2.1", "it-IT-Rosa:MAI-Voice-2.1", "ko-KR-Grant:MAI-Voice-2.1", "ko-KR-Haena:MAI-Voice-2.1", "ko-KR-Harper:MAI-Voice-2.1", "ko-KR-Junho:MAI-Voice-2.1", "nb-NO-Grant:MAI-Voice-2.1", "nb-NO-Harper:MAI-Voice-2.1", "nl-NL-Grant:MAI-Voice-2.1", "nl-NL-Harper:MAI-Voice-2.1", "nl-NL-Sander:MAI-Voice-2.1", "pl-PL-Grant:MAI-Voice-2.1", "pl-PL-Harper:MAI-Voice-2.1", "pt-BR-Caio:MAI-Voice-2.1", "pt-BR-Grant:MAI-Voice-2.1", "pt-BR-Harper:MAI-Voice-2.1", "pt-BR-Luana:MAI-Voice-2.1", "pt-BR-Pedro:MAI-Voice-2.1", "pt-BR-Rafael:MAI-Voice-2.1", "pt-PT-Grant:MAI-Voice-2.1", "pt-PT-Harper:MAI-Voice-2.1", "pt-PT-Rui:MAI-Voice-2.1", "ro-RO-Andrei:MAI-Voice-2.1", "ro-RO-Elena:MAI-Voice-2.1", "ro-RO-Grant:MAI-Voice-2.1", "ro-RO-Harper:MAI-Voice-2.1", "ro-RO-Ioana:MAI-Voice-2.1", "ro-RO-Radu:MAI-Voice-2.1", "ru-RU-Grant:MAI-Voice-2.1", "ru-RU-Harper:MAI-Voice-2.1", "ru-RU-Lev:MAI-Voice-2.1", "ru-RU-Masha:MAI-Voice-2.1", "sv-SE-Grant:MAI-Voice-2.1", "sv-SE-Harper:MAI-Voice-2.1", "th-TH-Grant:MAI-Voice-2.1", "th-TH-Harper:MAI-Voice-2.1", "th-TH-Krit:MAI-Voice-2.1", "th-TH-Nattapong:MAI-Voice-2.1", "tr-TR-Aydin:MAI-Voice-2.1", "tr-TR-Elif:MAI-Voice-2.1", "tr-TR-Grant:MAI-Voice-2.1", "tr-TR-Harper:MAI-Voice-2.1", "vi-VN-Grant:MAI-Voice-2.1", "vi-VN-Harper:MAI-Voice-2.1", "zh-CN-Bo:MAI-Voice-2.1", "zh-CN-Grant:MAI-Voice-2.1", "zh-CN-Harper:MAI-Voice-2.1", "zh-CN-Lan:MAI-Voice-2.1", "zh-CN-Mei:MAI-Voice-2.1", "zh-CN-Wei:MAI-Voice-2.1"]')
if voice not in allowed: raise SystemExit("Choose an accepted voice ID from this exact model profile")
p["voice"]=voice
p["response_format"]="mp3"
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o speech.mp3
استلام النتائج وحفظها
Ailoot Ultra · توليد الكلام
mp3
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
عمليات أخرى لقراءة المحتوى
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-assets.json
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_MEDIA_TASK_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_MEDIA_TASK_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_MEDIA_TASK_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/tasks/$resource_id" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-task.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-task.json").read_text())))
PY_RESULT
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_ASSET_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_ASSET_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_ASSET_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/assets/$resource_id" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-asset.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-asset.json").read_text())))
PY_RESULT
الاحتفاظ بكل النتائج المكتملة
احتفظ بكل استجابة كاملة وكل ملف وجزء محتوى تم إرجاعه.
احتفظ بالنتيجة الثنائية كاملة وبجميع الترويسات. إذا أُعيدت بيانات JSON أو مخرجات متعددة، فاحتفظ بكل عنصر بيانات واجلب محتوى كل عنوان URL فعلي موقّع لأصل من أصول الوسائط.
عند الحاجة إلى التحقق من الاستجابة الأصلية
احتفظ بقيمة operation_id/X-Client-Request-ID الأصلية للمطابقة دون إعادة الإرسال؛ لا يوجد مسار مخصص للاستعلام الدوري عن الصوت.
حقول الاستجابة
| الحقل | النوع |
|---|---|
الحقلbinary audio | النوعbytes |
الحقلresponse headers | النوعheaders |
الأخطاء والخطوات التالية
| الاستجابة | الشرط | الخطوة التالية |
|---|---|---|
الاستجابة400 · invalid_request_error | الشرطحقول مطلوبة أو تمثيل مادة أو قيمة معلمة غير صحيحة | الخطوة التاليةصحّح الحقول المحددة قبل طلب إنشاء جديد. |
الاستجابةserver_error | الشرطتشير الاستجابة المُعادة إلى أن العملية أو النتيجة تتطلب التحقق | الخطوة التاليةاحتفظ بمعرّف العملية أو المهمة الأصلي المُعاد، وبترويسات الطلب وبالاستجابة؛ وواصل عمليات القراءة المدعومة لتلك العملية الأصلية. لا تُعِد إرسال طلب الإنشاء. |
الأسماء البديلة
الأسماء البديلة للنموذج
Ailoot Ultra microsoft/mai-voice-2.1
الأسماء البديلة لمسارات الطرائق
استخدم مسارات الطرائق المعروضة أعلاه.
معرّفات النماذج ذات الصلة IDs
FAQ · Microsoft AI: MAI-Voice-2.1
- ما المدخلات والنتائج المتاحة؟
POST /v1/audio/speech·microsoft/mai-voice-2.1:text→audio- ما الحقول التي يستخدمها الطلب؟
POST /v1/audio/speech·microsoft/mai-voice-2.1:model,input,voice,response_format