{
  "aboutHtml": "<p>Drama 3 — Fish Audio’ning ijro qilinadigan ssenariy uchun matndan nutq yaratish modeli. U siz bergan so‘zlardan nutq audiosini yaratadi va ssenariy muallifiga aytish usulini boshqarish imkonini beradi. Satrdagi ko‘rsatma hissiy yo‘nalish, ovoz ijrosidagi mahalliy o‘zgarish yoki talaffuz yo‘rig‘ini berishi mumkin, shuning uchun kirish aytiladigan mazmunni ham, uning qanday eshitilishi ma’qul ekanini ham o‘z ichiga oladi.</p><h4>So‘zlarni yozing va ijroni yo‘naltiring</h4><p>Ijro ko‘rsatmalarini qo‘shishdan oldin tinglovchi eshitishi ma’qul bo‘lgan aniq so‘zlarni tayyorlang. Ssenariyda muhim nom, sana va yo‘riqlarni aniq saqlang, mo‘ljallangan gap ritmini belgilash uchun tinish belgilaridan foydalaning. Keyin tegishli satr oldiga oddiy tildagi ko‘rsatmani kvadrat qavslarda joylashtiring. Kerakli hissiyot yoki aytish usulini konkret ifodalar bilan tasvirlang, masalan, vazmin e’lon, keskin suhbat yoki iliq tushuntirish.</p><p>Drama 3 satr ichidagi mahalliy boshqaruvlarni ham qo‘llaydi. Satr ichidagi ko‘rsatmalar tovush va pauzalarni kiritishi, juft ijro teglari esa muayyan so‘zlarga ta’sir qilishi mumkin. Har bir ko‘rsatmaning qamrovini aniq saqlang: bir ibora uchun ko‘rsatma tasodifan butun sahna ko‘rsatmasiga aylanmagani ma’qul. Sintezdan oldin ssenariyni bir marta ma’no, bir marta ijro uchun o‘qing.</p><h4>Sahnalar, tillar va talaffuz</h4><p>E’lon qilingan model bitta so‘rov ichida bir nechta so‘zlovchini qo‘llaydi. Dialogni aniq so‘zlovchi navbatlariga ajrating va har bir navbatga maqsad bering: savol, gapni bo‘lish, izoh yoki javob. Dars yoki tushuntiruvchi materialda shu yondashuv hikoyachini iqtibos keltirilgan qahramondan ajratishi mumkin, materialni bitta farqlanmaydigan monolog qilib qayta yozishga hojat qolmaydi.</p><p>Drama 3 80 dan ortiq tilni qo‘llaydi va ovozni saqlagan holda gap ichida tilni almashtirishi mumkin. Inglizcha ko‘rsatma tarjimani beradi deb taxmin qilish o‘rniga ko‘p tilli parchalarni mo‘ljallangan og‘zaki tillarida tayyorlang. Xorijiy nom va o‘zlashma terminlar qanday eshitilishi ma’qul ekanini hal qiling, talaffuzga aniq yo‘nalish kerak bo‘lsa, modelning fonema boshqaruvlaridan foydalaning.</p><h4>Foydali audio artefaktlar</h4><p>Model qahramon dialoglari, ovozli darslar, qisqa tushuntirishlar, mahsulot e’lonlari va ssenariyli ovoz javoblariga mos. Mazmun va ijro tanlovlarini birga saqlang: ta’limiy parcha tushunarli terminlar va maqsadli pauzalarga muhtoj; qahramon sahnasi aniq ajratilgan navbatlar va izchil dramatik niyatga muhtoj. Bular audio yaratilishidan oldin tekshirish mumkin bo‘lgan yozish qarorlaridir.</p><p>Sintezdan keyin aytilgan so‘zlarni tayyor ssenariy bilan solishtiring. Tushib qolgan iboralar, noto‘g‘ri joydagi pauzalar, noaniq so‘zlovchi almashishlari va saqlanishi kerak bo‘lgan nomlarning talaffuzini tinglab tekshiring. Tuzatish ta’sirlangan satrga qaratilishi uchun ssenariy va uning ijro ko‘rsatmalarini audio bilan saqlang. Qayta ishlangan variantni tayyorlashda yakuniy aytiladigan mazmun va satr darajasidagi ijro tanlovlarini birga saqlang.</p><h4>Imkoniyatlar</h4><ul><li>Tayyor ssenariy asosida matnni nutqqa aylantirib ijro etish.</li><li>Replikadan oldin kvadrat qavs ichida oddiy tilda yozilgan ko‘rsatmalar.</li><li>Matn ichidagi tovushlar va pauzalar, alohida so‘zga qo‘llanadigan juft ijro teglari bilan.</li><li>Bir nechta so‘zlovchi qatnashadigan sahnalar va 80 dan ortiq nutq tili.</li><li>Ismlar va maxsus atamalar uchun fonema boshqaruvi.</li></ul><h4>Qo‘llanish holatlari</h4><ul><li><strong>Qahramonlar dialogi</strong> — So‘zlovchilarning replikalari va ijro ko‘rsatmalari aniq ajratilgan ssenariy. Natija: Ijro uslubi ataylab o‘zgartiriladigan nutqli sahna.</li><li><strong>Ovozli tushuntirish</strong> — Atamalar va pauzalar belgilangan tayyor dars. Natija: Dars matni bilan solishtirib tekshirish mumkin bo‘lgan nutq audiosi.</li><li><strong>Ko‘p tilli e’lon</strong> — Talaffuz tanlovlari saqlangan, mo‘ljallangan tillardagi yakuniy matn. Natija: Tillar orasidagi o‘tishlar boshqariladigan nutq parchasi.</li><li><strong>Ssenariy asosidagi ovozli javob</strong> — Ohangi va aytiladigan so‘zlari aniq ko‘rsatilgan qisqa javob. Natija: Uni qo‘llaydigan ilovada qayta foydalanish mumkin bo‘lgan nutq segmenti.</li></ul><h4>Cheklovlar</h4><ul><li><strong>Kirish va natija</strong> — E’lon qilingan model matnni qabul qiladi va nutq audiosini qaytaradi.</li><li><strong>Boshqaruv doirasi</strong> — Ko‘rsatmani mo‘ljallangan replika yoki iboraga biriktiring va juft ijro teglarining qo‘llanish doirasini to‘g‘ri saqlang.</li><li><strong>Tekshirish birligi</strong> — Aniq ssenariy va ijro belgilarini audio bilan birga saqlang; talaffuz va so‘zlovchilarning navbatlarini replika darajasida tekshiring.</li></ul>",
  "aboutText": "Drama 3 — Fish Audio’ning ijro qilinadigan ssenariy uchun matndan nutq yaratish modeli. U siz bergan so‘zlardan nutq audiosini yaratadi va ssenariy muallifiga aytish usulini boshqarish imkonini beradi. Satrdagi ko‘rsatma hissiy yo‘nalish, ovoz ijrosidagi mahalliy o‘zgarish yoki talaffuz yo‘rig‘ini berishi mumkin, shuning uchun kirish aytiladigan mazmunni ham, uning qanday eshitilishi ma’qul ekanini ham o‘z ichiga oladi.\n\n### So‘zlarni yozing va ijroni yo‘naltiring\n\nIjro ko‘rsatmalarini qo‘shishdan oldin tinglovchi eshitishi ma’qul bo‘lgan aniq so‘zlarni tayyorlang. Ssenariyda muhim nom, sana va yo‘riqlarni aniq saqlang, mo‘ljallangan gap ritmini belgilash uchun tinish belgilaridan foydalaning. Keyin tegishli satr oldiga oddiy tildagi ko‘rsatmani kvadrat qavslarda joylashtiring. Kerakli hissiyot yoki aytish usulini konkret ifodalar bilan tasvirlang, masalan, vazmin e’lon, keskin suhbat yoki iliq tushuntirish.\n\nDrama 3 satr ichidagi mahalliy boshqaruvlarni ham qo‘llaydi. Satr ichidagi ko‘rsatmalar tovush va pauzalarni kiritishi, juft ijro teglari esa muayyan so‘zlarga ta’sir qilishi mumkin. Har bir ko‘rsatmaning qamrovini aniq saqlang: bir ibora uchun ko‘rsatma tasodifan butun sahna ko‘rsatmasiga aylanmagani ma’qul. Sintezdan oldin ssenariyni bir marta ma’no, bir marta ijro uchun o‘qing.\n\n### Sahnalar, tillar va talaffuz\n\nE’lon qilingan model bitta so‘rov ichida bir nechta so‘zlovchini qo‘llaydi. Dialogni aniq so‘zlovchi navbatlariga ajrating va har bir navbatga maqsad bering: savol, gapni bo‘lish, izoh yoki javob. Dars yoki tushuntiruvchi materialda shu yondashuv hikoyachini iqtibos keltirilgan qahramondan ajratishi mumkin, materialni bitta farqlanmaydigan monolog qilib qayta yozishga hojat qolmaydi.\n\nDrama 3 80 dan ortiq tilni qo‘llaydi va ovozni saqlagan holda gap ichida tilni almashtirishi mumkin. Inglizcha ko‘rsatma tarjimani beradi deb taxmin qilish o‘rniga ko‘p tilli parchalarni mo‘ljallangan og‘zaki tillarida tayyorlang. Xorijiy nom va o‘zlashma terminlar qanday eshitilishi ma’qul ekanini hal qiling, talaffuzga aniq yo‘nalish kerak bo‘lsa, modelning fonema boshqaruvlaridan foydalaning.\n\n### Foydali audio artefaktlar\n\nModel qahramon dialoglari, ovozli darslar, qisqa tushuntirishlar, mahsulot e’lonlari va ssenariyli ovoz javoblariga mos. Mazmun va ijro tanlovlarini birga saqlang: ta’limiy parcha tushunarli terminlar va maqsadli pauzalarga muhtoj; qahramon sahnasi aniq ajratilgan navbatlar va izchil dramatik niyatga muhtoj. Bular audio yaratilishidan oldin tekshirish mumkin bo‘lgan yozish qarorlaridir.\n\nSintezdan keyin aytilgan so‘zlarni tayyor ssenariy bilan solishtiring. Tushib qolgan iboralar, noto‘g‘ri joydagi pauzalar, noaniq so‘zlovchi almashishlari va saqlanishi kerak bo‘lgan nomlarning talaffuzini tinglab tekshiring. Tuzatish ta’sirlangan satrga qaratilishi uchun ssenariy va uning ijro ko‘rsatmalarini audio bilan saqlang. Qayta ishlangan variantni tayyorlashda yakuniy aytiladigan mazmun va satr darajasidagi ijro tanlovlarini birga saqlang.\n\n### Imkoniyatlar\n\n- Tayyor ssenariy asosida matnni nutqqa aylantirib ijro etish.\n- Replikadan oldin kvadrat qavs ichida oddiy tilda yozilgan ko‘rsatmalar.\n- Matn ichidagi tovushlar va pauzalar, alohida so‘zga qo‘llanadigan juft ijro teglari bilan.\n- Bir nechta so‘zlovchi qatnashadigan sahnalar va 80 dan ortiq nutq tili.\n- Ismlar va maxsus atamalar uchun fonema boshqaruvi.\n\n### Qo‘llanish holatlari\n\n- **Qahramonlar dialogi** — So‘zlovchilarning replikalari va ijro ko‘rsatmalari aniq ajratilgan ssenariy. Natija: Ijro uslubi ataylab o‘zgartiriladigan nutqli sahna.\n- **Ovozli tushuntirish** — Atamalar va pauzalar belgilangan tayyor dars. Natija: Dars matni bilan solishtirib tekshirish mumkin bo‘lgan nutq audiosi.\n- **Ko‘p tilli e’lon** — Talaffuz tanlovlari saqlangan, mo‘ljallangan tillardagi yakuniy matn. Natija: Tillar orasidagi o‘tishlar boshqariladigan nutq parchasi.\n- **Ssenariy asosidagi ovozli javob** — Ohangi va aytiladigan so‘zlari aniq ko‘rsatilgan qisqa javob. Natija: Uni qo‘llaydigan ilovada qayta foydalanish mumkin bo‘lgan nutq segmenti.\n\n### Cheklovlar\n\n- **Kirish va natija** — E’lon qilingan model matnni qabul qiladi va nutq audiosini qaytaradi.\n- **Boshqaruv doirasi** — Ko‘rsatmani mo‘ljallangan replika yoki iboraga biriktiring va juft ijro teglarining qo‘llanish doirasini to‘g‘ri saqlang.\n- **Tekshirish birligi** — Aniq ssenariy va ijro belgilarini audio bilan birga saqlang; talaffuz va so‘zlovchilarning navbatlarini replika darajasida tekshiring.\n",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "3e4bc43c1c762d1b5bcbcd7385c994fd0fdfc764b48a1a7f494331b1dc07ae10",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "uz",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">Fish Audio: Drama 3</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Yopish\">×</button></div><div class=\"idline\"><span>Fish Audio /</span><code>fish-audio/drama-3</code><button type=\"button\" id=\"copy-id\">ID ni nusxalash</button></div><nav class=\"card-jump-nav\" aria-label=\"Model kartochkasi bo‘limlari\"><button type=\"button\" data-card-jump=\"overview\">Boshlash</button><button type=\"button\" data-card-jump=\"methods\">Kirish ma’lumotlari va usullar</button><button type=\"button\" data-card-jump=\"pricing\">Tariflar</button><button type=\"button\" data-card-jump=\"examples\">Namunalar</button><button type=\"button\" data-card-jump=\"results\">Natijalar</button><button type=\"button\" data-card-jump=\"aliases\">Taxalluslar</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"API usullari\"><button type=\"button\" role=\"tab\" tabindex=\"0\" aria-controls=\"card-method-content\" aria-selected=\"true\" id=\"card-method-tab-0\" data-card-method=\"Ultra|speech|/v1/audio/speech|fish-audio%2Fdrama-3\">Ovozlashtirish</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">Boshlash</h3><p class=\"mdesc-full\">Drama 3 yozilgan ssenariyni ijrosi boshqarilgan nutqqa aylantiradi. Hissiyot va aytish usulini oddiy tildagi ko‘rsatmalar bilan shakllantiring, pauza va tovushlar qo‘shing, talaffuzni yo‘naltiring va bir nechta so‘zlovchili sahnalar yarating. Uning e’lon qilingan nutq ish jarayoni 80 dan ortiq tilni, jumladan bitta gap ichida tilni almashtirishni qo‘llab-quvvatlaydi.</p><dl class=\"card-io\" data-card-io><div><dt>Qabul qilinadigan kirish ma’lumotlari</dt><dd>Matn</dd></div><div><dt>Natijalar</dt><dd>Audio</dd></div></dl><details class=\"card-about\"><summary>Model haqida</summary><p class=\"note-s\" data-model-method-boundary>Bu tavsif model imkoniyatlarini yoritadi. Ailoot da tanlangan usul uchun mavjud kirish, chiqish va parametrlar quyida keltirilgan.</p><div class=\"mabout\" id=\"m-about\"><p>Drama 3 — Fish Audio’ning ijro qilinadigan ssenariy uchun matndan nutq yaratish modeli. U siz bergan so‘zlardan nutq audiosini yaratadi va ssenariy muallifiga aytish usulini boshqarish imkonini beradi. Satrdagi ko‘rsatma hissiy yo‘nalish, ovoz ijrosidagi mahalliy o‘zgarish yoki talaffuz yo‘rig‘ini berishi mumkin, shuning uchun kirish aytiladigan mazmunni ham, uning qanday eshitilishi ma’qul ekanini ham o‘z ichiga oladi.</p><h4>So‘zlarni yozing va ijroni yo‘naltiring</h4><p>Ijro ko‘rsatmalarini qo‘shishdan oldin tinglovchi eshitishi ma’qul bo‘lgan aniq so‘zlarni tayyorlang. Ssenariyda muhim nom, sana va yo‘riqlarni aniq saqlang, mo‘ljallangan gap ritmini belgilash uchun tinish belgilaridan foydalaning. Keyin tegishli satr oldiga oddiy tildagi ko‘rsatmani kvadrat qavslarda joylashtiring. Kerakli hissiyot yoki aytish usulini konkret ifodalar bilan tasvirlang, masalan, vazmin e’lon, keskin suhbat yoki iliq tushuntirish.</p><p>Drama 3 satr ichidagi mahalliy boshqaruvlarni ham qo‘llaydi. Satr ichidagi ko‘rsatmalar tovush va pauzalarni kiritishi, juft ijro teglari esa muayyan so‘zlarga ta’sir qilishi mumkin. Har bir ko‘rsatmaning qamrovini aniq saqlang: bir ibora uchun ko‘rsatma tasodifan butun sahna ko‘rsatmasiga aylanmagani ma’qul. Sintezdan oldin ssenariyni bir marta ma’no, bir marta ijro uchun o‘qing.</p><h4>Sahnalar, tillar va talaffuz</h4><p>E’lon qilingan model bitta so‘rov ichida bir nechta so‘zlovchini qo‘llaydi. Dialogni aniq so‘zlovchi navbatlariga ajrating va har bir navbatga maqsad bering: savol, gapni bo‘lish, izoh yoki javob. Dars yoki tushuntiruvchi materialda shu yondashuv hikoyachini iqtibos keltirilgan qahramondan ajratishi mumkin, materialni bitta farqlanmaydigan monolog qilib qayta yozishga hojat qolmaydi.</p><p>Drama 3 80 dan ortiq tilni qo‘llaydi va ovozni saqlagan holda gap ichida tilni almashtirishi mumkin. Inglizcha ko‘rsatma tarjimani beradi deb taxmin qilish o‘rniga ko‘p tilli parchalarni mo‘ljallangan og‘zaki tillarida tayyorlang. Xorijiy nom va o‘zlashma terminlar qanday eshitilishi ma’qul ekanini hal qiling, talaffuzga aniq yo‘nalish kerak bo‘lsa, modelning fonema boshqaruvlaridan foydalaning.</p><h4>Foydali audio artefaktlar</h4><p>Model qahramon dialoglari, ovozli darslar, qisqa tushuntirishlar, mahsulot e’lonlari va ssenariyli ovoz javoblariga mos. Mazmun va ijro tanlovlarini birga saqlang: ta’limiy parcha tushunarli terminlar va maqsadli pauzalarga muhtoj; qahramon sahnasi aniq ajratilgan navbatlar va izchil dramatik niyatga muhtoj. Bular audio yaratilishidan oldin tekshirish mumkin bo‘lgan yozish qarorlaridir.</p><p>Sintezdan keyin aytilgan so‘zlarni tayyor ssenariy bilan solishtiring. Tushib qolgan iboralar, noto‘g‘ri joydagi pauzalar, noaniq so‘zlovchi almashishlari va saqlanishi kerak bo‘lgan nomlarning talaffuzini tinglab tekshiring. Tuzatish ta’sirlangan satrga qaratilishi uchun ssenariy va uning ijro ko‘rsatmalarini audio bilan saqlang. Qayta ishlangan variantni tayyorlashda yakuniy aytiladigan mazmun va satr darajasidagi ijro tanlovlarini birga saqlang.</p><h4>Imkoniyatlar</h4><ul><li>Tayyor ssenariy asosida matnni nutqqa aylantirib ijro etish.</li><li>Replikadan oldin kvadrat qavs ichida oddiy tilda yozilgan ko‘rsatmalar.</li><li>Matn ichidagi tovushlar va pauzalar, alohida so‘zga qo‘llanadigan juft ijro teglari bilan.</li><li>Bir nechta so‘zlovchi qatnashadigan sahnalar va 80 dan ortiq nutq tili.</li><li>Ismlar va maxsus atamalar uchun fonema boshqaruvi.</li></ul><h4>Qo‘llanish holatlari</h4><ul><li><strong>Qahramonlar dialogi</strong> — So‘zlovchilarning replikalari va ijro ko‘rsatmalari aniq ajratilgan ssenariy. Natija: Ijro uslubi ataylab o‘zgartiriladigan nutqli sahna.</li><li><strong>Ovozli tushuntirish</strong> — Atamalar va pauzalar belgilangan tayyor dars. Natija: Dars matni bilan solishtirib tekshirish mumkin bo‘lgan nutq audiosi.</li><li><strong>Ko‘p tilli e’lon</strong> — Talaffuz tanlovlari saqlangan, mo‘ljallangan tillardagi yakuniy matn. Natija: Tillar orasidagi o‘tishlar boshqariladigan nutq parchasi.</li><li><strong>Ssenariy asosidagi ovozli javob</strong> — Ohangi va aytiladigan so‘zlari aniq ko‘rsatilgan qisqa javob. Natija: Uni qo‘llaydigan ilovada qayta foydalanish mumkin bo‘lgan nutq segmenti.</li></ul><h4>Cheklovlar</h4><ul><li><strong>Kirish va natija</strong> — E’lon qilingan model matnni qabul qiladi va nutq audiosini qaytaradi.</li><li><strong>Boshqaruv doirasi</strong> — Ko‘rsatmani mo‘ljallangan replika yoki iboraga biriktiring va juft ijro teglarining qo‘llanish doirasini to‘g‘ri saqlang.</li><li><strong>Tekshirish birligi</strong> — Aniq ssenariy va ijro belgilarini audio bilan birga saqlang; talaffuz va so‘zlovchilarning navbatlarini replika darajasida tekshiring.</li></ul></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Ailoot da mavjud · kirish ma’lumotlari va usullar</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Nutq</b> <code>POST /v1/audio/speech</code></summary><dl class=\"method-capabilities\"><div><dt>Kirish</dt><dd><code>text</code></dd></div><div><dt>Chiqish</dt><dd><code>audio</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Maydon</th><th>Tur</th><th>Talab</th><th>Qiymatlar va cheklovlar</th><th>Standart</th></tr></thead><tbody><tr><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>string</code></td><td data-cell-label=\"Talab\"><span class=\"card-cell-label\">Talab</span>Majburiy</td><td data-cell-label=\"Qiymatlar va cheklovlar\"><span class=\"card-cell-label\">Qiymatlar va cheklovlar</span><div>fish-audio/drama-3</div></td><td data-cell-label=\"Standart\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standart</span>—</td></tr><tr><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">input</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>string</code></td><td data-cell-label=\"Talab\"><span class=\"card-cell-label\">Talab</span>Majburiy</td><td data-cell-label=\"Qiymatlar va cheklovlar\"><span class=\"card-cell-label\">Qiymatlar va cheklovlar</span><div>Eng kam uzunlik: 1</div></td><td data-cell-label=\"Standart\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standart</span>—</td></tr><tr><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">voice</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>string</code></td><td data-cell-label=\"Talab\"><span class=\"card-cell-label\">Talab</span>Majburiy</td><td data-cell-label=\"Qiymatlar va cheklovlar\"><span class=\"card-cell-label\">Qiymatlar va cheklovlar</span><div>Eng kam uzunlik: 1</div></td><td data-cell-label=\"Standart\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standart</span>—</td></tr><tr><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">response_format</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>string</code></td><td data-cell-label=\"Talab\"><span class=\"card-cell-label\">Talab</span>Ixtiyoriy</td><td data-cell-label=\"Qiymatlar va cheklovlar\"><span class=\"card-cell-label\">Qiymatlar va cheklovlar</span><div>mp3, pcm</div></td><td data-cell-label=\"Standart\" data-default=\"known\"><span class=\"card-cell-label\">Standart</span>pcm</td></tr><tr><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">provider</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>object</code></td><td data-cell-label=\"Talab\"><span class=\"card-cell-label\">Talab</span>Ixtiyoriy</td><td data-cell-label=\"Qiymatlar va cheklovlar\"><span class=\"card-cell-label\">Qiymatlar va cheklovlar</span></td><td data-cell-label=\"Standart\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standart</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>Usul parametrlari va hayot sikli</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Parametr</th><th>Parametr talablari</th></tr></thead><tbody><tr><th data-cell-label=\"Parametr\" scope=\"row\"><span class=\"card-cell-label\">Parametr</span><code>content_type</code></th><td data-cell-label=\"Parametr talablari\"><span class=\"card-cell-label\">Parametr talablari</span>application/json</td></tr><tr><th data-cell-label=\"Parametr\" scope=\"row\"><span class=\"card-cell-label\">Parametr</span><code>required</code></th><td data-cell-label=\"Parametr talablari\"><span class=\"card-cell-label\">Parametr talablari</span>model, input, voice</td></tr><tr><th data-cell-label=\"Parametr\" scope=\"row\"><span class=\"card-cell-label\">Parametr</span><code>material_types</code></th><td data-cell-label=\"Parametr talablari\"><span class=\"card-cell-label\">Parametr talablari</span>text</td></tr><tr><th data-cell-label=\"Parametr\" scope=\"row\"><span class=\"card-cell-label\">Parametr</span><code>material_conditions</code></th><td data-cell-label=\"Parametr talablari\"><span class=\"card-cell-label\">Parametr talablari</span>Haqiqiy qo‘llab-quvvatlanadigan ovoz ID sini tanlang; bu model uchun standart qiymat yoki ovozning aniq nomi o‘ylab topilmagan.</td></tr></tbody></table></div><p>Hayot sikli: <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · Amalda qaytarilgan task_id yoki media kutubxonasidagi yozuv</p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}/content</code></p><p class=\"note-s\"><code>GET /v1/media/assets</code></p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}</code></p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Tariflar</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Tarif ma’lumotlari so‘rov imkoniyatlarini qo‘shmaydi. Qo‘llab-quvvatlanadigan parametrlar tanlangan usulda ko‘rsatilgan.</p><dl data-price-conditions><dt>Tezkor rejim</dt><dd>Ko‘rsatilmagan <span class=\"note-s\">Tezkor rejim tanlanganda</span></dd><dt>Flex rejimi</dt><dd>Ko‘rsatilmagan <span class=\"note-s\">flex rejimi tanlanganda</span></dd><dt>Maksimal fikrlash darajasi</dt><dd>Ko‘rsatilmagan <span class=\"note-s\">Maksimal fikrlash darajasi uchun standart (default) tuzatish qo‘llanganda</span></dd></dl></div><div data-declared-tariff-pricing><h4>Ailoot tariflari</h4><h4>Sozlamalar bo‘yicha narxlar</h4><p class=\"note-s\">Har bir to‘lovni ko‘rsatilgan shartlarga moslang. Har bir muqobil sozlamalar to‘plami uchun bitta tarifdan foydalaning.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Sozlama</th><th>Tariflar jadvali</th><th>Hisob birligi</th><th>To‘lov</th></tr></thead><tbody><tr><th data-cell-label=\"Sozlama\" scope=\"row\"><span class=\"card-cell-label\">Sozlama</span>Tokenlar uchun bazaviy tariflar</th><td data-cell-label=\"Tariflar jadvali\"><span class=\"card-cell-label\">Tariflar jadvali</span>Asosiy tarif</td><td data-cell-label=\"Hisob birligi\"><span class=\"card-cell-label\">Hisob birligi</span>—</td><td data-cell-label=\"To‘lov\"><span class=\"card-cell-label\">To‘lov</span><div><span>Kirish · Kirish tokenlari</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Chiqish · Chiqish tokenlari</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Kirish · Keshdan o‘qish</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Kirish · Keshga yozish</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Kirish · Keshga yozish, 1 soat</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div></td></tr><tr><th data-cell-label=\"Sozlama\" scope=\"row\"><span class=\"card-cell-label\">Sozlama</span>Kirish UTF-8 bayti</th><td data-cell-label=\"Tariflar jadvali\"><span class=\"card-cell-label\">Tariflar jadvali</span>—</td><td data-cell-label=\"Hisob birligi\"><span class=\"card-cell-label\">Hisob birligi</span>UTF-8 kirish bayti uchun</td><td data-cell-label=\"To‘lov\"><span class=\"card-cell-label\">To‘lov</span><div><span>Kirish · Kirish UTF-8 bayti</span> <b>$0.00002</b> <span class=\"price-unit\">UTF-8 kirish bayti uchun</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot so‘rovdan oldin taxminiy summani band qiladi. Natijadan keyin o‘lchangan sarf asosidagi yakuniy to‘lovni yechadi. Oqimli javob bo‘yicha yakuniy hisob-kitob yakuniy sarf yozuviga asoslanadi. <a href=\"/docs/uz/billing/reserve/\">Summani band qilish va to‘lovni hisoblash tartibi →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">So‘rov namunalari</h3><h4>Ailoot Ultra · Nutq</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Kod variantlari\"><button class=\"cg-tab\" id=\"model-code-1352-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1352-panel-0\" aria-selected=\"true\" tabindex=\"0\">Haqiqiy kirish ma’lumotlaridan foydalaning va natijani to‘liq saqlang</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kodni nusxalash\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-1352-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1352-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\n: &quot;${AILOOT_INPUT_TEXT:?Set the actual documented input value}&quot;\nexport AILOOT_INPUT_TEXT\n: &quot;${AILOOT_VOICE:?Set the actual documented input value}&quot;\nexport AILOOT_VOICE\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport json,os\nfrom pathlib import Path\nrequest={&#39;model&#39;: &#39;fish-audio/drama-3&#39;, &#39;input&#39;: &#39;${ACTUAL_INPUT_TEXT}&#39;, &#39;voice&#39;: &#39;${ACTUAL_SUPPORTED_VOICE}&#39;}\nrequest[&#39;input&#39;]=os.environ[&#39;AILOOT_INPUT_TEXT&#39;]\nrequest[&#39;voice&#39;]=os.environ[&#39;AILOOT_VOICE&#39;]\nPath(&#39;request.json&#39;).write_text(json.dumps(request,ensure_ascii=False),encoding=&#39;utf-8&#39;)\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -H &#39;Content-Type: application/json&#39; \\\n  --data-binary @request.json -D response-headers.txt -o response.bin\n# Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Natijalarni olish va saqlash</h3><h4>Ailoot Ultra · Nutq</h4><p class=\"note-s\">To‘liq ikkilik audio yoki dastlabki audio_url javobi, sarlavhalar va egalik qilinadigan har bir aktiv.</p><ul class=\"card-result-paths\"><li><code>GET /v1/media/tasks/{task_id}</code></li><li><code>GET /v1/media/assets/{asset_id}/content</code></li><li><code>GET /v1/media/assets</code></li><li><code>GET /v1/media/assets/{asset_id}</code></li></ul><details class=\"card-about\"><summary>Boshqa kontentni o‘qish</summary><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Kod variantlari\"><button class=\"cg-tab\" id=\"model-code-1353-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1353-panel-0\" aria-selected=\"true\" tabindex=\"0\">O‘zingizga tegishli mavjud materiallarni o‘qish</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kodni nusxalash\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-1353-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1353-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -o owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n</code></pre></div></div></div></details><div class=\"card-result-process\" data-all-results><h5>Barcha tayyor natijalarni saqlash</h5><p class=\"note-s\">Qaytarilgan har bir to‘liq javob, fayl va kontent qismini saqlang.</p><p class=\"note-s\">To‘liq javob va sarlavhalarni, amalda qaytarilgan barcha natijalarni, dastlab qaytarilgan identifikatorlarni hamda barcha usage maydonlarini saqlang. Yaratish so‘rovini qayta yubormasdan dastlabki operatsiyani tiklang.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Asl javobni tekshirish kerak bo‘lsa</h5><p class=\"note-s\">Qaytarilgan X-Client-Request-ID ni ma’lumotlarni solishtirib tekshirish uchun saqlang. Faqat amalda qaytarilgan task_id/asset_id qiymatlari bo‘yicha yoki o‘zingizga tegishli media kutubxonasidan ma’lumot o‘qing; operatsiya ID sidan vazifa URL manzilini hech qachon tuzmang va yaratish so‘rovini qayta yubormang.</p></div></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Taxalluslar</h3><h4>Model taxalluslari</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=fish-audio%2Fdrama-3&amp;route=Ultra&amp;caller=fish-audio%2Fdrama-3&amp;fmt=speech\"><code>fish-audio/drama-3</code></a></span></p><h4>Usul yo‘llari taxalluslari</h4><p class=\"note-s\">Yuqorida ko‘rsatilgan usul yo‘llaridan foydalaning.</p><h4>Chaqirish uchun tegishli ID lar</h4><p class=\"note-s\"><a href=\"#m=fish-audio%2Fdrama-3&amp;route=Ultra&amp;caller=fish-audio%2Fdrama-3&amp;fmt=speech\"><code>fish-audio/drama-3</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "fish-audio/drama-3",
        "fmt": "speech",
        "http": "POST",
        "path": "/v1/audio/speech",
        "request_model_id": "fish-audio/drama-3",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|speech|/v1/audio/speech|fish-audio%2Fdrama-3",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Qaytarilgan X-Client-Request-ID ni ma’lumotlarni solishtirib tekshirish uchun saqlang. Faqat amalda qaytarilgan task_id/asset_id qiymatlari bo‘yicha yoki o‘zingizga tegishli media kutubxonasidan ma’lumot o‘qing; operatsiya ID sidan vazifa URL manzilini hech qachon tuzmang va yaratish so‘rovini qayta yubormang."
            },
            "outputs": {
              "all_results": "To‘liq javob va sarlavhalarni, amalda qaytarilgan barcha natijalarni, dastlab qaytarilgan identifikatorlarni hamda barcha usage maydonlarini saqlang. Yaratish so‘rovini qayta yubormasdan dastlabki operatsiyani tiklang.",
              "family": "audio",
              "formats": [
                "mp3",
                "pcm"
              ],
              "result": "To‘liq ikkilik audio yoki dastlabki audio_url javobi, sarlavhalar va egalik qilinadigan har bir aktiv."
            },
            "parameters": [
              {
                "enum": [
                  "fish-audio/drama-3"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "input",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "voice",
                "required": true,
                "type": "string"
              },
              {
                "default": "pcm",
                "default_known": true,
                "enum": [
                  "mp3",
                  "pcm"
                ],
                "enum_known": true,
                "name": "response_format",
                "required": false,
                "type": "string"
              },
              {
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input": {
                  "minLength": 1,
                  "type": "string"
                },
                "model": {
                  "enum": [
                    "fish-audio/drama-3"
                  ],
                  "type": "string"
                },
                "provider": {
                  "description": "Documented speech data policy and provider-specific options.",
                  "properties": {
                    "data_collection": {
                      "enum": [
                        "allow",
                        "deny",
                        null
                      ],
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "options": {
                      "type": "object"
                    },
                    "zdr": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    }
                  },
                  "type": "object"
                },
                "response_format": {
                  "default": "pcm",
                  "enum": [
                    "mp3",
                    "pcm"
                  ],
                  "type": "string"
                },
                "voice": {
                  "minLength": 1,
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input",
                "voice"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "input": "${ACTUAL_INPUT_TEXT}",
                "model": "fish-audio/drama-3",
                "voice": "${ACTUAL_SUPPORTED_VOICE}"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "Haqiqiy qo‘llab-quvvatlanadigan ovoz ID sini tanlang; bu model uchun standart qiymat yoki ovozning aniq nomi o‘ylab topilmagan."
            ],
            "material_types": [
              "text"
            ],
            "required": [
              "model",
              "input",
              "voice"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed URL; never construct token"
              }
            ],
            "mode": "synchronous_result_then_owned_library",
            "operation_id_is_not_task_id": true,
            "status": [
              {
                "http": "GET",
                "id_source": "Amalda qaytarilgan task_id yoki media kutubxonasidagi yozuv",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Keep the returned X-Client-Request-ID for reconciliation. Read only actual returned task_id/asset_id values or the owned media library; never build a task URL from the operation ID and never resubmit creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/speech"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "audio",
            "formats": [
              "mp3",
              "pcm"
            ],
            "result": "Complete binary audio or original audio_url response, headers and every owned asset."
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input UTF-8 byte"
            },
            "label": "input UTF-8 byte",
            "units": [
              {
                "amount": "0.00002",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_utf8_byte",
                "label": "input UTF-8 byte",
                "native_amount_usd_per_unit": "0.00002",
                "native_quantity": 1,
                "public_unit_label": "per input UTF-8 byte",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_utf8_byte"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_INPUT_TEXT:?Set the actual documented input value}\"\nexport AILOOT_INPUT_TEXT\n: \"${AILOOT_VOICE:?Set the actual documented input value}\"\nexport AILOOT_VOICE\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\nrequest={'model': 'fish-audio/drama-3', 'input': '${ACTUAL_INPUT_TEXT}', 'voice': '${ACTUAL_SUPPORTED_VOICE}'}\nrequest['input']=os.environ['AILOOT_INPUT_TEXT']\nrequest['voice']=os.environ['AILOOT_VOICE']\nPath('request.json').write_text(json.dumps(request,ensure_ascii=False),encoding='utf-8')\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o response.bin\n# Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.\n",
            "label": "Use actual input and retain the complete result",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n",
            "label": "Read existing owned assets",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "speech",
        "hints": [
          "Use the exact caller model ID and documented input representation.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "text"
        ],
        "label": "Nutq",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_speech",
        "out": null,
        "output": [
          "audio"
        ],
        "path": "/v1/audio/speech",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "per_request",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null,
          "unit_prices": {
            "audio_input_utf8_byte": 2e-05
          }
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input UTF-8 byte"
            },
            "label": "input UTF-8 byte",
            "units": [
              {
                "amount": "0.00002",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_utf8_byte",
                "label": "input UTF-8 byte",
                "native_amount_usd_per_unit": "0.00002",
                "native_quantity": 1,
                "public_unit_label": "per input UTF-8 byte",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_utf8_byte"
              }
            ]
          }
        ],
        "request_model_id": "fish-audio/drama-3",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.00002",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_utf8_byte",
            "label": "input UTF-8 byte",
            "native_amount_usd_per_unit": "0.00002",
            "native_quantity": 1,
            "public_unit_label": "per input UTF-8 byte",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_utf8_byte"
          }
        ]
      }
    }
  ],
  "model_id": "fish-audio/drama-3",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "daad11a162e3fff8e43dbc48eef05cc416eeeef2c6f4e72609fafc1f26929b85",
    "input_html_sha256": "6ca87c497ceb9602116ca66dc603fba62aa733d6ef24d26a7fc649a793680be1",
    "private_audit_sha256": "f40dc63ec7ffa45eacc389bab979c16777d7b581017f78ac704ab7549309c700",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/uz/fish-audio-drama-3/",
    "description": "Drama 3 yozilgan ssenariyni ijrosi boshqarilgan nutqqa aylantiradi. Hissiyot va aytish usulini oddiy tildagi ko‘rsatmalar bilan shakllantiring, pauza va tovushlar qo‘shing, talaffuzni yo‘naltiring va bir nechta so‘zlovchili sahnalar yarating. Uning e’lon qilingan nutq ish jarayoni 80 dan ortiq tilni, jumladan bitta gap ichida tilni almashtirishni qo‘llab-quvvatlaydi.",
    "locale": "uz",
    "md_url": "https://ailoot.ai/models/uz/fish-audio-drama-3/index.md",
    "title": "Fish Audio: Drama 3 — Ailoot",
    "url": "https://ailoot.ai/models/uz/fish-audio-drama-3/"
  },
  "rawModel": {
    "about": "Drama 3 — Fish Audio’ning ijro qilinadigan ssenariy uchun matndan nutq yaratish modeli. U siz bergan so‘zlardan nutq audiosini yaratadi va ssenariy muallifiga aytish usulini boshqarish imkonini beradi. Satrdagi ko‘rsatma hissiy yo‘nalish, ovoz ijrosidagi mahalliy o‘zgarish yoki talaffuz yo‘rig‘ini berishi mumkin, shuning uchun kirish aytiladigan mazmunni ham, uning qanday eshitilishi ma’qul ekanini ham o‘z ichiga oladi.\n\n### So‘zlarni yozing va ijroni yo‘naltiring\n\nIjro ko‘rsatmalarini qo‘shishdan oldin tinglovchi eshitishi ma’qul bo‘lgan aniq so‘zlarni tayyorlang. Ssenariyda muhim nom, sana va yo‘riqlarni aniq saqlang, mo‘ljallangan gap ritmini belgilash uchun tinish belgilaridan foydalaning. Keyin tegishli satr oldiga oddiy tildagi ko‘rsatmani kvadrat qavslarda joylashtiring. Kerakli hissiyot yoki aytish usulini konkret ifodalar bilan tasvirlang, masalan, vazmin e’lon, keskin suhbat yoki iliq tushuntirish.\n\nDrama 3 satr ichidagi mahalliy boshqaruvlarni ham qo‘llaydi. Satr ichidagi ko‘rsatmalar tovush va pauzalarni kiritishi, juft ijro teglari esa muayyan so‘zlarga ta’sir qilishi mumkin. Har bir ko‘rsatmaning qamrovini aniq saqlang: bir ibora uchun ko‘rsatma tasodifan butun sahna ko‘rsatmasiga aylanmagani ma’qul. Sintezdan oldin ssenariyni bir marta ma’no, bir marta ijro uchun o‘qing.\n\n### Sahnalar, tillar va talaffuz\n\nE’lon qilingan model bitta so‘rov ichida bir nechta so‘zlovchini qo‘llaydi. Dialogni aniq so‘zlovchi navbatlariga ajrating va har bir navbatga maqsad bering: savol, gapni bo‘lish, izoh yoki javob. Dars yoki tushuntiruvchi materialda shu yondashuv hikoyachini iqtibos keltirilgan qahramondan ajratishi mumkin, materialni bitta farqlanmaydigan monolog qilib qayta yozishga hojat qolmaydi.\n\nDrama 3 80 dan ortiq tilni qo‘llaydi va ovozni saqlagan holda gap ichida tilni almashtirishi mumkin. Inglizcha ko‘rsatma tarjimani beradi deb taxmin qilish o‘rniga ko‘p tilli parchalarni mo‘ljallangan og‘zaki tillarida tayyorlang. Xorijiy nom va o‘zlashma terminlar qanday eshitilishi ma’qul ekanini hal qiling, talaffuzga aniq yo‘nalish kerak bo‘lsa, modelning fonema boshqaruvlaridan foydalaning.\n\n### Foydali audio artefaktlar\n\nModel qahramon dialoglari, ovozli darslar, qisqa tushuntirishlar, mahsulot e’lonlari va ssenariyli ovoz javoblariga mos. Mazmun va ijro tanlovlarini birga saqlang: ta’limiy parcha tushunarli terminlar va maqsadli pauzalarga muhtoj; qahramon sahnasi aniq ajratilgan navbatlar va izchil dramatik niyatga muhtoj. Bular audio yaratilishidan oldin tekshirish mumkin bo‘lgan yozish qarorlaridir.\n\nSintezdan keyin aytilgan so‘zlarni tayyor ssenariy bilan solishtiring. Tushib qolgan iboralar, noto‘g‘ri joydagi pauzalar, noaniq so‘zlovchi almashishlari va saqlanishi kerak bo‘lgan nomlarning talaffuzini tinglab tekshiring. Tuzatish ta’sirlangan satrga qaratilishi uchun ssenariy va uning ijro ko‘rsatmalarini audio bilan saqlang. Qayta ishlangan variantni tayyorlashda yakuniy aytiladigan mazmun va satr darajasidagi ijro tanlovlarini birga saqlang.\n\n### Imkoniyatlar\n\n- Tayyor ssenariy asosida matnni nutqqa aylantirib ijro etish.\n- Replikadan oldin kvadrat qavs ichida oddiy tilda yozilgan ko‘rsatmalar.\n- Matn ichidagi tovushlar va pauzalar, alohida so‘zga qo‘llanadigan juft ijro teglari bilan.\n- Bir nechta so‘zlovchi qatnashadigan sahnalar va 80 dan ortiq nutq tili.\n- Ismlar va maxsus atamalar uchun fonema boshqaruvi.\n\n### Qo‘llanish holatlari\n\n- **Qahramonlar dialogi** — So‘zlovchilarning replikalari va ijro ko‘rsatmalari aniq ajratilgan ssenariy. Natija: Ijro uslubi ataylab o‘zgartiriladigan nutqli sahna.\n- **Ovozli tushuntirish** — Atamalar va pauzalar belgilangan tayyor dars. Natija: Dars matni bilan solishtirib tekshirish mumkin bo‘lgan nutq audiosi.\n- **Ko‘p tilli e’lon** — Talaffuz tanlovlari saqlangan, mo‘ljallangan tillardagi yakuniy matn. Natija: Tillar orasidagi o‘tishlar boshqariladigan nutq parchasi.\n- **Ssenariy asosidagi ovozli javob** — Ohangi va aytiladigan so‘zlari aniq ko‘rsatilgan qisqa javob. Natija: Uni qo‘llaydigan ilovada qayta foydalanish mumkin bo‘lgan nutq segmenti.\n\n### Cheklovlar\n\n- **Kirish va natija** — E’lon qilingan model matnni qabul qiladi va nutq audiosini qaytaradi.\n- **Boshqaruv doirasi** — Ko‘rsatmani mo‘ljallangan replika yoki iboraga biriktiring va juft ijro teglarining qo‘llanish doirasini to‘g‘ri saqlang.\n- **Tekshirish birligi** — Aniq ssenariy va ijro belgilarini audio bilan birga saqlang; talaffuz va so‘zlovchilarning navbatlarini replika darajasida tekshiring.\n",
    "alias_of": null,
    "aliases": [],
    "author": "Fish Audio",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "text"
      ],
      "manufacturer_output": [
        "speech"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.00002",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_utf8_byte",
            "label": "input UTF-8 byte",
            "native_amount_usd_per_unit": "0.00002",
            "native_quantity": 1,
            "public_unit_label": "per input UTF-8 byte",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_utf8_byte"
          }
        ],
        "summary": "Konfiguratsiya narxlari tafsilotlarda to‘liq ko‘rsatilgan."
      }
    ],
    "ctx": null,
    "formats": [
      "speech"
    ],
    "id": "fish-audio/drama-3",
    "input": [
      "text"
    ],
    "kind": "audio",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Qaytarilgan X-Client-Request-ID ni ma’lumotlarni solishtirib tekshirish uchun saqlang. Faqat amalda qaytarilgan task_id/asset_id qiymatlari bo‘yicha yoki o‘zingizga tegishli media kutubxonasidan ma’lumot o‘qing; operatsiya ID sidan vazifa URL manzilini hech qachon tuzmang va yaratish so‘rovini qayta yubormang."
            },
            "outputs": {
              "all_results": "To‘liq javob va sarlavhalarni, amalda qaytarilgan barcha natijalarni, dastlab qaytarilgan identifikatorlarni hamda barcha usage maydonlarini saqlang. Yaratish so‘rovini qayta yubormasdan dastlabki operatsiyani tiklang.",
              "family": "audio",
              "formats": [
                "mp3",
                "pcm"
              ],
              "result": "To‘liq ikkilik audio yoki dastlabki audio_url javobi, sarlavhalar va egalik qilinadigan har bir aktiv."
            },
            "parameters": [
              {
                "enum": [
                  "fish-audio/drama-3"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "input",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "voice",
                "required": true,
                "type": "string"
              },
              {
                "default": "pcm",
                "default_known": true,
                "enum": [
                  "mp3",
                  "pcm"
                ],
                "enum_known": true,
                "name": "response_format",
                "required": false,
                "type": "string"
              },
              {
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input": {
                  "minLength": 1,
                  "type": "string"
                },
                "model": {
                  "enum": [
                    "fish-audio/drama-3"
                  ],
                  "type": "string"
                },
                "provider": {
                  "description": "Documented speech data policy and provider-specific options.",
                  "properties": {
                    "data_collection": {
                      "enum": [
                        "allow",
                        "deny",
                        null
                      ],
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "options": {
                      "type": "object"
                    },
                    "zdr": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    }
                  },
                  "type": "object"
                },
                "response_format": {
                  "default": "pcm",
                  "enum": [
                    "mp3",
                    "pcm"
                  ],
                  "type": "string"
                },
                "voice": {
                  "minLength": 1,
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input",
                "voice"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "input": "${ACTUAL_INPUT_TEXT}",
                "model": "fish-audio/drama-3",
                "voice": "${ACTUAL_SUPPORTED_VOICE}"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "Haqiqiy qo‘llab-quvvatlanadigan ovoz ID sini tanlang; bu model uchun standart qiymat yoki ovozning aniq nomi o‘ylab topilmagan."
            ],
            "material_types": [
              "text"
            ],
            "required": [
              "model",
              "input",
              "voice"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed URL; never construct token"
              }
            ],
            "mode": "synchronous_result_then_owned_library",
            "operation_id_is_not_task_id": true,
            "status": [
              {
                "http": "GET",
                "id_source": "Amalda qaytarilgan task_id yoki media kutubxonasidagi yozuv",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Keep the returned X-Client-Request-ID for reconciliation. Read only actual returned task_id/asset_id values or the owned media library; never build a task URL from the operation ID and never resubmit creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/speech"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "audio",
            "formats": [
              "mp3",
              "pcm"
            ],
            "result": "Complete binary audio or original audio_url response, headers and every owned asset."
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input UTF-8 byte"
            },
            "label": "input UTF-8 byte",
            "units": [
              {
                "amount": "0.00002",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_utf8_byte",
                "label": "input UTF-8 byte",
                "native_amount_usd_per_unit": "0.00002",
                "native_quantity": 1,
                "public_unit_label": "per input UTF-8 byte",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_utf8_byte"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_INPUT_TEXT:?Set the actual documented input value}\"\nexport AILOOT_INPUT_TEXT\n: \"${AILOOT_VOICE:?Set the actual documented input value}\"\nexport AILOOT_VOICE\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\nrequest={'model': 'fish-audio/drama-3', 'input': '${ACTUAL_INPUT_TEXT}', 'voice': '${ACTUAL_SUPPORTED_VOICE}'}\nrequest['input']=os.environ['AILOOT_INPUT_TEXT']\nrequest['voice']=os.environ['AILOOT_VOICE']\nPath('request.json').write_text(json.dumps(request,ensure_ascii=False),encoding='utf-8')\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o response.bin\n# Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.\n",
            "label": "Use actual input and retain the complete result",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n",
            "label": "Read existing owned assets",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "speech",
        "hints": [
          "Use the exact caller model ID and documented input representation.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "text"
        ],
        "label": "Nutq",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_speech",
        "out": null,
        "output": [
          "audio"
        ],
        "path": "/v1/audio/speech",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "per_request",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null,
          "unit_prices": {
            "audio_input_utf8_byte": 2e-05
          }
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input UTF-8 byte"
            },
            "label": "input UTF-8 byte",
            "units": [
              {
                "amount": "0.00002",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_utf8_byte",
                "label": "input UTF-8 byte",
                "native_amount_usd_per_unit": "0.00002",
                "native_quantity": 1,
                "public_unit_label": "per input UTF-8 byte",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_utf8_byte"
              }
            ]
          }
        ],
        "request_model_id": "fish-audio/drama-3",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.00002",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_utf8_byte",
            "label": "input UTF-8 byte",
            "native_amount_usd_per_unit": "0.00002",
            "native_quantity": 1,
            "public_unit_label": "per input UTF-8 byte",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_utf8_byte"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "fish-audio/drama-3",
        "request_model_id": "fish-audio/drama-3",
        "route_label": "Ultra"
      }
    ],
    "name": "Fish Audio: Drama 3",
    "price": {
      "in": null,
      "in_label": null,
      "out": null,
      "out_label": null,
      "sort_in": null,
      "sort_out": null,
      "varies": true
    },
    "short": "Drama 3 yozilgan ssenariyni ijrosi boshqarilgan nutqqa aylantiradi. Hissiyot va aytish usulini oddiy tildagi ko‘rsatmalar bilan shakllantiring, pauza va tovushlar qo‘shing, talaffuzni yo‘naltiring va bir nechta so‘zlovchili sahnalar yarating. Uning e’lon qilingan nutq ish jarayoni 80 dan ortiq tilni, jumladan bitta gap ichida tilni almashtirishni qo‘llab-quvvatlaydi."
  },
  "renderer_schema": {
    "method_order": "Original DTO methods order; every exact route/format/path/caller survives.",
    "prices": "Original public DTO fields and original native display HTML; no flattened or normalized offers."
  },
  "representation": "exact-public-dto-and-native-renderer-html",
  "representationNotes": {
    "current_reference": {
      "about_json_pointer": "/aboutHtml",
      "methods": [
        {
          "contract_json_pointer": "/methods/0/rawMethod/contract",
          "html_json_pointer": "/methods/0/html",
          "method_ordinal": 0
        }
      ],
      "role": "current-semantic-reference"
    },
    "raw_input": {
      "examples_role": "historical-input-not-current-ready-examples",
      "json_pointers": [
        "/rawModel",
        "/methods/0/rawMethod"
      ],
      "role": "historical-owner-input"
    },
    "schema": "ailoot-native-model-representations-v1"
  },
  "schema": "ailoot-static-model-facts-v1",
  "schema_version": 1,
  "shortText": "Drama 3 yozilgan ssenariyni ijrosi boshqarilgan nutqqa aylantiradi. Hissiyot va aytish usulini oddiy tildagi ko‘rsatmalar bilan shakllantiring, pauza va tovushlar qo‘shing, talaffuzni yo‘naltiring va bir nechta so‘zlovchili sahnalar yarating. Uning e’lon qilingan nutq ish jarayoni 80 dan ortiq tilni, jumladan bitta gap ichida tilni almashtirishni qo‘llab-quvvatlaydi.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "1094abc1f06fb2ad06b574cad77440c2e151d1adb4faa15479beeaf78cda537f",
    "renderer_sha256": "aa8a0fca1bd770c042b64987512b6187fca2067aea3ddc877f68b163d80e7df6"
  },
  "sourceRevision": "8e6355574b5a4cfd80e030f607992ee062ecf32516ce77e789b7ee1ee0e788c7"
}
