Microsoft AI: MAI-Voice-2.1
A Microsoft AI MAI-Voice-2.1 modellje kifejező többnyelvű beszédet generál narrációhoz, hangoskönyvekhez, oktatási tartalmakhoz és alámondáshoz. 23 nyelvet lefedő képességei következetes beszélőazonosságot, több beszélőt és szabályozott előadást támogatnak.
A modellről
Ez a leírás a modell képességeit ismerteti. Az Ailootban elérhető bemenetek, kimenetek és lehetőségek alább, a kiválasztott metódusnál láthatók.
A MAI-Voice-2.1 a Microsoft AI prompttal vezérelt szövegfelolvasó modellje olyan munkákhoz, ahol fontos a kifejező előadás és a hanghűség. Modellkártyája huszonhárom nyelvet és huszonhat területi változatot fed le, természetes intonációval, ritmussal és érzelmi árnyalatokkal. A gyártó alapvető felhasználásként hangoskönyveket, médianarrációt, tartalomkészítést és alámondást azonosít. Ez a változat a hosszabb, kifejező tartalmakra helyezi a hangsúlyt; a MAI-Voice-2.1-Flash külön választás a késleltetésre érzékeny interakciókhoz.
Narráció következetes beszélővel
A modellkártya egyetlen hangazonosság következetes megszólaltatását dokumentálja a támogatott nyelveken. A hosszú hanganyagok generálása darabolást és kontextusátvitelt használ a részletek közötti folytonosság javítására. Ez hasznos leckénél, hangoskönyv-fejezetnél vagy összefüggő alámondási szakaszok sorozatánál, amelyekben meg kell maradnia a narrátor karakterének. Készíts összefüggő, világos határú részleteket, és tartsd meg ugyanazt a beszélőválasztást a teljes anyagban.
A bemenet a végleges átiratszöveg, opcionális beszélőreferenciával és SSML-alapú kifejező vezérlőkkel. A narrációs feladatleírás különítse el, amit a hallgató hall, a gyártási megjegyzésektől. Műszaki magyarázathoz írj világos bevezetést, majd a tényleges lépéseket és a záró utasítást. A terméknevek és ismétlődő kifejezések írott alakja maradjon következetes. Lokalizált narrációhoz készítsd elő a célnyelvi szöveget; a kiválasztott nyelv és hang határozza meg megszólaltatását.
Beszélők, szerepek és kifejező vezérlés
A Microsoft válogatott hangkönyvtárat biztosít, és párbeszédhez több beszélőt dokumentál. Harper és Grant olyan beszélőazonosságokat példáznak, amelyekhez több területi változatban vannak bejegyzések. Kétszemélyes oktatási beszélgetésben külön hanghoz rendelhető a kérdés és a magyarázat; amikor egy szerep visszatér, ugyanaz a hozzárendelés maradjon. Egyértelműen címkézd az elmondandó sorokat, hogy a kívánt beszélgetést a szintézisbemenet ábrázolja.
A hangvétel és az előadás SSML-lel forduló- vagy mondatszinten alakítható. A stílusok beszélőspecifikusak: a kezelt katalógus megfelelő hangokhoz feladatorientált narrátori vagy oktatói stílusokat, másokhoz örömteli vagy megkönnyebbült érzelmi lehetőségeket sorol fel. Harper amerikai bejegyzése ezt a két érzelmi stílust támogatja. A beszélőt és dokumentált előadásstílusát együtt válaszd ki, ne vigyél át egy stílust másik hangról.
Történetben vagy bemutatóban a kifejezőerő megkülönböztethet tényszerű magyarázatot, elmélkedő részletet és élénk idézetet. Egy gyakorlati mondat: „Az első próbálkozás hiányos képet adott. A teljes folyamatot megvizsgálva világossá vált a hiányzó lépés.” Döntsd el, hol változik a jelentés, és ennek megfelelően készítsd elő az elmondandó egységeket. Hallgasd meg az átmeneteket, hogy az előadás kövesse a történetet, ne legyen minden mondat egyformán hangsúlyos.
Referenciahang és hanganyag
Az opcionális egyénihang-mód finomhangolás nélkül illeszkedik egy hozzájárulást adott beszélő öt–hatvan másodperces hangreferenciájához. A Microsoft természetes társalgási előadást és mérsékelt energiát ajánl a referenciában, mivel a minta befolyásolja a generált hangot. Az egyénihang-munkafolyamat gyártói jóváhagyást és rögzített hozzájárulási nyilatkozatot igényel. Az előre elkészített könyvtár külön hangválasztási útvonal.
A gyártó lehetővé teszi a kimeneti formátum megválasztását, és közzétett szintézispéldája mono MP3-at ment 24 kHz-en, 160 kbit/s bitrátával. Ezek a beállítások egy kimeneti munkafolyamatot írnak le. A hangábrázolást a következő szerkesztési vagy lejátszási szakaszhoz válaszd, és a szöveget, beszélőt, valamint szakaszsorrendet kapcsold a felvételhez. Egy kész fejezet vagy lecke több generált részletből is állhat, miközben egységes hallgatási élmény marad.
A hosszabb hanganyag felhasználása
A MAI-Voice-2.1 a természetességre és kifejezőerőre összpontosít, amikor az azonnali válaszidő kevésbé fontos, mint a beszéd előadása. Hosszabb anyagnál ellenőrizd az ismétlődő neveket, szakaszhatárokat, a párbeszédhez rendelt hangokat és az érzelmi hangvétel váltásait. A dokumentáció hosszú tartalmak kezelését és egyenletességi mechanizmusokat igazol anélkül, hogy korlátlan szöveget vagy garantált maximális felvételhosszt határozna meg. A gyakorlati eredmény kifejező hanganyag, amelynek narrátora, megfogalmazása és felépítése megfelel az előkészített anyagnak.
Ailoot Ultra · Felolvasás POST /v1/audio/speech microsoft/mai-voice-2.1
microsoft/mai-voice-2.1Kezdő lépések
A Microsoft AI MAI-Voice-2.1 modellje kifejező többnyelvű beszédet generál narrációhoz, hangoskönyvekhez, oktatási tartalmakhoz és alámondáshoz. 23 nyelvet lefedő képességei következetes beszélőazonosságot, több beszélőt és szabályozott előadást támogatnak.
- Elfogadott bemenetek
- Szöveg
- Eredmények
- Hang
Elérhető az Ailootban · bemenetek és metódusok
Ailoot Ultra · Felolvasás POST /v1/audio/speech
- Bemenet
text- Kimenet
audio- Kimeneti formátum
- mp3
| Mező | Típus | Követelmény | Értékek és korlátok | Alapértelmezett |
|---|---|---|---|---|
Mezőmodel | Típusstring | KövetelményKötelező | Értékek és korlátok microsoft/mai-voice-2.1 | Alapértelmezett— |
Mezőinput | Típusstring | KövetelményKötelező | Értékek és korlátok Minimális hossz: 1 Egység: Unicode-karakterek | Alapértelmezett— |
Mezővoice | Típusstring | KövetelményKötelező | Értékek és korlátok 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 | Alapértelmezett— |
Mezőresponse_format | Típusstring | KövetelményKötelező | Értékek és korlátok mp3 | Alapértelmezett— |
Bemeneti anyagok kombinációi
text_to_speech · Kötelező: input
Metódus paraméterei és életciklusa
| Paraméter | Szerződés |
|---|---|
Paramétercontent_type | Szerződésapplication/json |
Paraméterrequired | Szerződésmodel, input, voice, response_format |
Paramétervoice_ids | Szerződéscs-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 |
Paraméterresponse_format | Szerződésmp3 |
Paramétermax_input_characters | Szerződésnull |
Paraméterother_options | Szerződésfalse |
Paraméterinput | Szerződéspontos UTF-8 szöveg; Unicode-karakterszám normalizálás nélkül |
Paramétermaterial_types | Szerződéstext |
Életciklus: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · A ténylegesen visszaadott task_id vagy a médiatár bejegyzése
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
E modell profiljából válassza ki a pontos hangot.
A bemeneti karakterek és a hangmásodpercek külön mérési egységek.
Díjcsomagok
A díjszabás nem ad új kérési lehetőségeket. A támogatott paraméterek a kiválasztott módszernél szerepelnek.
- Gyors mód
- Nincs megadva Ha a gyors mód van kiválasztva
- Flex mód
- Nincs megadva Ha a flex mód van kiválasztva
- Maximális gondolkodási ráfordítás
- Nincs megadva Ha a maximális gondolkodási ráfordításra a default beállításhoz tartozó korrekció vonatkozik
Ailoot-díjak
Árak beállításonként
Minden díjat a megjelenített feltételekhez rendeljen. Az alternatív beállítások minden csoportjához egy díjtételt használjon.
| Beállítás | Díjtáblázat | Számlázható mennyiség | Elszámolási egység | Díj |
|---|---|---|---|---|
| BeállításTokenek alapdíjai | DíjtáblázatAlapdíj | Számlázható mennyiség— | Elszámolási egység— | Díj Bemenet · Bemeneti tokenek — / 1K token Kimenet · Kimeneti tokenek — / 1K token Bemenet · Gyorsítótár olvasása — / 1K token Bemenet · Írás a gyorsítótárba — / 1K token Bemenet · Írás a gyorsítótárba, 1 óra — / 1K token |
| BeállításUltra | Díjtáblázat— | Számlázható mennyiségMinden Unicode-kódpont egy karakternek számít, a Han-karaktereket is beleértve. | Elszámolási egység1K bemeneti karakterenként | Díj Bemenet · bemeneti karakter $0.044 1K bemeneti karakterenként |
A referencia-díjszabás részletei
A modellszintű referenciatáblázatok nem módosítják a metódusválasztást, az árajánlatokat vagy a díjakat. A tényleges díjak a kiválasztott Ailoot-metódus díjtételeit használják.
Microsoft AI: MAI-Voice-2.1
Árak beállításonként
| Beállítás | Elszámolási feltételek | Díj |
|---|---|---|
| BeállításMicrosoft AI: MAI-Voice-2.1 · Alapértelmezett beállítások | Elszámolási feltételekAlapértelmezett konfiguráció | Díj Bemenet · Bemeneti karakterek 0,000044 USD bemeneti karakterenként |
Az Ailoot a kérés előtt becsült összeget foglal le. Az eredmény után a mért használat alapján elszámolja a végső díjat. Folyamatos átvitel esetén a végső használati rekordot használja. A foglalás és az elszámolás működése →
Példakérések
Ailoot Ultra · Felolvasás
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
Eredmények fogadása és mentése
Ailoot Ultra · Felolvasás
mp3
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
További tartalomlekérések
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
Őrizzen meg minden elkészült eredményt
Őrizzen meg minden teljes visszaadott választ, fájlt és tartalomrészt.
Őrizze meg a teljes bináris eredményt és a fejléceket. JSON vagy több kimenet esetén őrizzen meg minden adatelemet, és töltse le minden ténylegesen visszaadott, aláírt média-URL tartalmát.
Ha az eredeti választ ellenőrizni kell
Őrizze meg az eredeti operation_id/X-Client-Request-ID értéket az egyeztetéshez, újbóli beküldés nélkül; nincs külön hangállapot-lekérdezési útvonal.
Válaszmezők
| Mező | Típus |
|---|---|
Mezőbinary audio | Típusbytes |
Mezőresponse headers | Típusheaders |
Hibák és következő lépések
| Válasz | Feltétel | Következő lépés |
|---|---|---|
Válasz400 · invalid_request_error | FeltételÉrvénytelen kötelező mezők, az anyag érvénytelen reprezentációja vagy érvénytelen paraméterérték | Következő lépésJavítsa a jelzett mezőket egy új létrehozási kérés előtt. |
Válaszserver_error | FeltételA visszaadott válasz szerint a művelet vagy az eredmény ellenőrzést igényel | Következő lépésŐrizze meg az eredetileg visszaadott művelet- vagy feladatazonosítót, a kérés fejléceit és a választ; folytassa az eredeti művelet támogatott lekérdezéseit. Ne küldje be újra a létrehozási kérést. |
Álnevek
Modell álnevei
Ailoot Ultra microsoft/mai-voice-2.1
Metódusútvonalak álnevei
Használja a fent látható metódusútvonalakat.
Kapcsolódó modellazonosítók
FAQ · Microsoft AI: MAI-Voice-2.1
- Milyen bemenetek és eredmények érhetők el?
POST /v1/audio/speech·microsoft/mai-voice-2.1:text→audio- Mely mezőket használja a kérés?
POST /v1/audio/speech·microsoft/mai-voice-2.1:model,input,voice,response_format