{
  "aboutHtml": "<p>Microsoft AI MAI-Image-2.5 — 2.5 tasvir oilasining umumiy yaratish va boshqariladigan tahrirlash nashri. Uning model kartasi flow matching dan foydalanadigan, embeddinglardan tashqari 20 milliard parametrli, matn va tasvir kirishli hamda 32K token kontekstli diffuziya modelini tasvirlaydi. U g‘oyalar, portretlar, mahsulot vizuallari, illyustratsiyalar va mavjud dizayn tuzatishlari uchun tasvir natijasini beradi. Foydali boshlang‘ich tanlov — vazifaga yangi kompozitsiyami yoki ko‘zlangan obyekt allaqachon mavjud materialga aniq o‘zgarishmi kerakligini hal qilish.</p><p>Yaratishda asosiy obyekt, vizual uslub, yorug‘lik, ko‘rish nuqtasi va joylashuvni tasvirlang. Ishlab chiqaruvchi batafsil, uyg‘un tasvirlar, matn tasvirlash, mahsulot vizuallari va topshiriqqa rioyani ta’kidlaydi. Taqdimot illyustratsiyasi uchun amaliy topshiriq obyekt vazifasi, kerakli vizual urg‘u va atrofdagi bo‘sh joy miqdorini belgilashi mumkin. Mahsulot g‘oyasi material, ko‘lam va sirt qoplamasini qamrab olishi mumkin. Bir nechta nomuvofiq vizual ishlovni qo‘shish o‘rniga obyektlar bitta sahna va bitta yoritish rejasini bo‘lishishi uchun tavsifni yaxlit saqlang.</p><p>Bu nashrda vizual anglash sahna tuzilishi, yoritish, ko‘lam va fazoviy munosabatlarga tegishli. Ishlab chiqaruvchi mos perspektiva va soyalar bilan obyekt qo‘shishni tahrirlash misoli sifatida beradi. Ustaxona tahririda mavjud ko‘rish nuqtasi va yorug‘likni saqlab, ish stoli yoniga kichik kursi qo‘ying. Tekshiruvda kursi o‘lchami, polga tegish joyi va soyasining boshqa buyumlarga mosligi solishtirilishi kerak. Mahalliy jihatdan ishonarli obyekt ham butun manba tasviri geometriyasiga mos tushishi zarur.</p><p>Yo‘naltirilgan tahrirlar obyekt olib tashlash yoki almashtirish, xususiyat o‘zgarishlari, inpainting, maket moslashtirish, matn yangilash va harakat xiraligi artefaktlarini kamaytirish kabi tozalashni qamrab oladi. Manba tasvirini bering va tuzatish hamda saqlanadigan detallarni birga ayting. Diqqatli foto tahriri shaxs, kesim va oldingi plan joylashuvini saqlab, fondagi chalg‘ituvchi obyektni olib tashlashi mumkin. Dizayn tuzatishi kompozitsiyani saqlab, qisqa matn satrini yangilashi mumkin. Faqat tahrirlangan hududga baho bermasdan butun natijani manba bilan solishtiring.</p><p>Microsoft poza, ifoda yoki rakurs o‘zgarishlarida ham tahrirlar bo‘ylab yuz qiyofasi izchilligini ta’kidlaydi. O‘xshashlik uchun tiniq namuna ishlating va kerakli o‘zgarishni tanituvchi xususiyatlarni saqlaydigan tarzda belgilang. Ishlab chiqaruvchining hozirgi tahrirlash qo‘llanmasi beshtagacha JPEG yoki PNG tasvirga ruxsat beradi; turli namunalar shaxs, obyekt, sahna yoki uslubni belgilashi mumkin. Bu vazifalarni topshiriqda nomlang. Portret tuzatishida tasvirni tugagan deb hisoblashdan avval yuzni ham, o‘zgargan kiyim yoki fonni ham tekshiring.</p><p>Aniq model kartasi chiqishni jami 1,048,576 piksel, ya’ni 1024×1024 kvadratga teng maydon bilan cheklaydi; umumiy maydon shu chegarada qolsa bir tomon 1024 dan oshishi mumkin. Xizmat ko‘rsatish qo‘llanmasi qo‘shimcha ravishda ikkala o‘lcham kamida 768 piksel bo‘lishini talab qiladi. 1344×768 kabi to‘rtburchak maqsad 1,032,192 pikselga ega va hujjatlashtirilgan maydon hamda minimal o‘lcham qoidalariga mos. Foydali chegara kenglik va balandlik ko‘paytmasidir, shuning uchun gorizontal yoki vertikal kompozitsiyani so‘rashdan avval mo‘ljallangan formatni tayyorlang.</p><p>Ishlab chiqaruvchining xizmat interfeysida yaratish va tahrirlash PNG tasvir ma’lumotlarini qaytaradi. Asl model kartasi 32K token kontekstni bildiradi, interfeys esa 32,000 token maksimal topshiriq kontekstini belgilaydi. Katalogdagi alohida 4,096 chiqish tokeni qiymati chiqish o‘lchami emas, token ruxsatidir. Batafsil topshiriq va tayyor tasvirni tartiblashda bu qiymatlarning e’lon qilingan doiralarini saqlang. Manba materiallari, saqlanadigan xususiyatlar, so‘ralgan tahrirlar va maqsad o‘lcham PNG yonida foydali tuzatish qaydini hosil qiladi.</p><p>Modelning ijodiy doirasi fotorealistik va kinematografik tasvirlar, portretlar, mahsulot yoki brend g‘oyalari, matnli dizaynlar hamda boshqa vizual uslublarni qamrab oladi. Yorliq yoki belgi uchun aniq so‘zlarni bering va imlosini yakuniy ko‘rsatish o‘lchamida tekshiring. Tanish fotografik sirtda ham to‘qilgan detal, nomuvofiq aks yoki xato yozuv bo‘lishi mumkin. Amaliy tekshiruv dizayn talablariga ergashadi: obyekt qiyofasi, o‘qiluvchanlik, fazoviy munosabatlar va saqlangan sahnaning barchasi muhim. Aniq tuzatishni allaqachon ishlagan o‘zgarishlardan alohida saqlang.</p><p>2.5 oilasida Pro yuqoriroq sodiqlik va zich sahnalardagi barqaror munosabatlarga, Flash esa tezroq javobli ishlab chiqarishga yo‘naltirilgan. 2.6 oilasi kattaroq hujjatlashtirilgan piksel maydoni, ixtiyoriy vebga tayanish va model boshqaradigan nisbat tanlashni kiritadi. Standart 2.5 shu keyingi boshqaruvlarsiz o‘z yaratish va tahrirlash jarayonini saqlaydi. Nashrni haqiqiy tasvir vazifasining murakkab jihatiga qarab tanlang va tayyor natijani shu topshiriqqa solishtiring.</p>",
  "aboutText": "Microsoft AI MAI-Image-2.5 — 2.5 tasvir oilasining umumiy yaratish va boshqariladigan tahrirlash nashri. Uning model kartasi flow matching dan foydalanadigan, embeddinglardan tashqari 20 milliard parametrli, matn va tasvir kirishli hamda 32K token kontekstli diffuziya modelini tasvirlaydi. U g‘oyalar, portretlar, mahsulot vizuallari, illyustratsiyalar va mavjud dizayn tuzatishlari uchun tasvir natijasini beradi. Foydali boshlang‘ich tanlov — vazifaga yangi kompozitsiyami yoki ko‘zlangan obyekt allaqachon mavjud materialga aniq o‘zgarishmi kerakligini hal qilish.\n\nYaratishda asosiy obyekt, vizual uslub, yorug‘lik, ko‘rish nuqtasi va joylashuvni tasvirlang. Ishlab chiqaruvchi batafsil, uyg‘un tasvirlar, matn tasvirlash, mahsulot vizuallari va topshiriqqa rioyani ta’kidlaydi. Taqdimot illyustratsiyasi uchun amaliy topshiriq obyekt vazifasi, kerakli vizual urg‘u va atrofdagi bo‘sh joy miqdorini belgilashi mumkin. Mahsulot g‘oyasi material, ko‘lam va sirt qoplamasini qamrab olishi mumkin. Bir nechta nomuvofiq vizual ishlovni qo‘shish o‘rniga obyektlar bitta sahna va bitta yoritish rejasini bo‘lishishi uchun tavsifni yaxlit saqlang.\n\nBu nashrda vizual anglash sahna tuzilishi, yoritish, ko‘lam va fazoviy munosabatlarga tegishli. Ishlab chiqaruvchi mos perspektiva va soyalar bilan obyekt qo‘shishni tahrirlash misoli sifatida beradi. Ustaxona tahririda mavjud ko‘rish nuqtasi va yorug‘likni saqlab, ish stoli yoniga kichik kursi qo‘ying. Tekshiruvda kursi o‘lchami, polga tegish joyi va soyasining boshqa buyumlarga mosligi solishtirilishi kerak. Mahalliy jihatdan ishonarli obyekt ham butun manba tasviri geometriyasiga mos tushishi zarur.\n\nYo‘naltirilgan tahrirlar obyekt olib tashlash yoki almashtirish, xususiyat o‘zgarishlari, inpainting, maket moslashtirish, matn yangilash va harakat xiraligi artefaktlarini kamaytirish kabi tozalashni qamrab oladi. Manba tasvirini bering va tuzatish hamda saqlanadigan detallarni birga ayting. Diqqatli foto tahriri shaxs, kesim va oldingi plan joylashuvini saqlab, fondagi chalg‘ituvchi obyektni olib tashlashi mumkin. Dizayn tuzatishi kompozitsiyani saqlab, qisqa matn satrini yangilashi mumkin. Faqat tahrirlangan hududga baho bermasdan butun natijani manba bilan solishtiring.\n\nMicrosoft poza, ifoda yoki rakurs o‘zgarishlarida ham tahrirlar bo‘ylab yuz qiyofasi izchilligini ta’kidlaydi. O‘xshashlik uchun tiniq namuna ishlating va kerakli o‘zgarishni tanituvchi xususiyatlarni saqlaydigan tarzda belgilang. Ishlab chiqaruvchining hozirgi tahrirlash qo‘llanmasi beshtagacha JPEG yoki PNG tasvirga ruxsat beradi; turli namunalar shaxs, obyekt, sahna yoki uslubni belgilashi mumkin. Bu vazifalarni topshiriqda nomlang. Portret tuzatishida tasvirni tugagan deb hisoblashdan avval yuzni ham, o‘zgargan kiyim yoki fonni ham tekshiring.\n\nAniq model kartasi chiqishni jami 1,048,576 piksel, ya’ni 1024×1024 kvadratga teng maydon bilan cheklaydi; umumiy maydon shu chegarada qolsa bir tomon 1024 dan oshishi mumkin. Xizmat ko‘rsatish qo‘llanmasi qo‘shimcha ravishda ikkala o‘lcham kamida 768 piksel bo‘lishini talab qiladi. 1344×768 kabi to‘rtburchak maqsad 1,032,192 pikselga ega va hujjatlashtirilgan maydon hamda minimal o‘lcham qoidalariga mos. Foydali chegara kenglik va balandlik ko‘paytmasidir, shuning uchun gorizontal yoki vertikal kompozitsiyani so‘rashdan avval mo‘ljallangan formatni tayyorlang.\n\nIshlab chiqaruvchining xizmat interfeysida yaratish va tahrirlash PNG tasvir ma’lumotlarini qaytaradi. Asl model kartasi 32K token kontekstni bildiradi, interfeys esa 32,000 token maksimal topshiriq kontekstini belgilaydi. Katalogdagi alohida 4,096 chiqish tokeni qiymati chiqish o‘lchami emas, token ruxsatidir. Batafsil topshiriq va tayyor tasvirni tartiblashda bu qiymatlarning e’lon qilingan doiralarini saqlang. Manba materiallari, saqlanadigan xususiyatlar, so‘ralgan tahrirlar va maqsad o‘lcham PNG yonida foydali tuzatish qaydini hosil qiladi.\n\nModelning ijodiy doirasi fotorealistik va kinematografik tasvirlar, portretlar, mahsulot yoki brend g‘oyalari, matnli dizaynlar hamda boshqa vizual uslublarni qamrab oladi. Yorliq yoki belgi uchun aniq so‘zlarni bering va imlosini yakuniy ko‘rsatish o‘lchamida tekshiring. Tanish fotografik sirtda ham to‘qilgan detal, nomuvofiq aks yoki xato yozuv bo‘lishi mumkin. Amaliy tekshiruv dizayn talablariga ergashadi: obyekt qiyofasi, o‘qiluvchanlik, fazoviy munosabatlar va saqlangan sahnaning barchasi muhim. Aniq tuzatishni allaqachon ishlagan o‘zgarishlardan alohida saqlang.\n\n2.5 oilasida Pro yuqoriroq sodiqlik va zich sahnalardagi barqaror munosabatlarga, Flash esa tezroq javobli ishlab chiqarishga yo‘naltirilgan. 2.6 oilasi kattaroq hujjatlashtirilgan piksel maydoni, ixtiyoriy vebga tayanish va model boshqaradigan nisbat tanlashni kiritadi. Standart 2.5 shu keyingi boshqaruvlarsiz o‘z yaratish va tahrirlash jarayonini saqlaydi. Nashrni haqiqiy tasvir vazifasining murakkab jihatiga qarab tanlang va tayyor natijani shu topshiriqqa solishtiring.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "181eb08f1c0afac621be418d3cddf6eb881376ccde3c5399d08412ee09cf9d16",
    "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\">Microsoft AI: MAI-Image-2.5</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Yopish\">×</button></div><div class=\"idline\"><span>Microsoft AI /</span><code>microsoft/mai-image-2.5</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|images|/v1/images/generations|microsoft%2Fmai-image-2.5\">Rasmlar</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\">Microsoft AI MAI-Image-2.5 matndan tasvirlar yaratadi va berilgan fotosurat yoki dizaynlarni aniq maqsad bilan tahrirlaydi. U obyekt va matn o‘zgarishlari, artefakt tozalash va yuzni saqlaydigan tuzatishlarni, PNG natija hamda beshtagacha vizual namunani qo‘llaydi. Model kartasi 32K kontekst va 1,048,576 chiqish pikselini belgilaydi.</p><dl class=\"card-io\" data-card-io><div><dt>Qabul qilinadigan kirish ma’lumotlari</dt><dd>Matn · Rasmlar</dd></div><div><dt>Natijalar</dt><dd>Rasmlar</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>Microsoft AI MAI-Image-2.5 — 2.5 tasvir oilasining umumiy yaratish va boshqariladigan tahrirlash nashri. Uning model kartasi flow matching dan foydalanadigan, embeddinglardan tashqari 20 milliard parametrli, matn va tasvir kirishli hamda 32K token kontekstli diffuziya modelini tasvirlaydi. U g‘oyalar, portretlar, mahsulot vizuallari, illyustratsiyalar va mavjud dizayn tuzatishlari uchun tasvir natijasini beradi. Foydali boshlang‘ich tanlov — vazifaga yangi kompozitsiyami yoki ko‘zlangan obyekt allaqachon mavjud materialga aniq o‘zgarishmi kerakligini hal qilish.</p><p>Yaratishda asosiy obyekt, vizual uslub, yorug‘lik, ko‘rish nuqtasi va joylashuvni tasvirlang. Ishlab chiqaruvchi batafsil, uyg‘un tasvirlar, matn tasvirlash, mahsulot vizuallari va topshiriqqa rioyani ta’kidlaydi. Taqdimot illyustratsiyasi uchun amaliy topshiriq obyekt vazifasi, kerakli vizual urg‘u va atrofdagi bo‘sh joy miqdorini belgilashi mumkin. Mahsulot g‘oyasi material, ko‘lam va sirt qoplamasini qamrab olishi mumkin. Bir nechta nomuvofiq vizual ishlovni qo‘shish o‘rniga obyektlar bitta sahna va bitta yoritish rejasini bo‘lishishi uchun tavsifni yaxlit saqlang.</p><p>Bu nashrda vizual anglash sahna tuzilishi, yoritish, ko‘lam va fazoviy munosabatlarga tegishli. Ishlab chiqaruvchi mos perspektiva va soyalar bilan obyekt qo‘shishni tahrirlash misoli sifatida beradi. Ustaxona tahririda mavjud ko‘rish nuqtasi va yorug‘likni saqlab, ish stoli yoniga kichik kursi qo‘ying. Tekshiruvda kursi o‘lchami, polga tegish joyi va soyasining boshqa buyumlarga mosligi solishtirilishi kerak. Mahalliy jihatdan ishonarli obyekt ham butun manba tasviri geometriyasiga mos tushishi zarur.</p><p>Yo‘naltirilgan tahrirlar obyekt olib tashlash yoki almashtirish, xususiyat o‘zgarishlari, inpainting, maket moslashtirish, matn yangilash va harakat xiraligi artefaktlarini kamaytirish kabi tozalashni qamrab oladi. Manba tasvirini bering va tuzatish hamda saqlanadigan detallarni birga ayting. Diqqatli foto tahriri shaxs, kesim va oldingi plan joylashuvini saqlab, fondagi chalg‘ituvchi obyektni olib tashlashi mumkin. Dizayn tuzatishi kompozitsiyani saqlab, qisqa matn satrini yangilashi mumkin. Faqat tahrirlangan hududga baho bermasdan butun natijani manba bilan solishtiring.</p><p>Microsoft poza, ifoda yoki rakurs o‘zgarishlarida ham tahrirlar bo‘ylab yuz qiyofasi izchilligini ta’kidlaydi. O‘xshashlik uchun tiniq namuna ishlating va kerakli o‘zgarishni tanituvchi xususiyatlarni saqlaydigan tarzda belgilang. Ishlab chiqaruvchining hozirgi tahrirlash qo‘llanmasi beshtagacha JPEG yoki PNG tasvirga ruxsat beradi; turli namunalar shaxs, obyekt, sahna yoki uslubni belgilashi mumkin. Bu vazifalarni topshiriqda nomlang. Portret tuzatishida tasvirni tugagan deb hisoblashdan avval yuzni ham, o‘zgargan kiyim yoki fonni ham tekshiring.</p><p>Aniq model kartasi chiqishni jami 1,048,576 piksel, ya’ni 1024×1024 kvadratga teng maydon bilan cheklaydi; umumiy maydon shu chegarada qolsa bir tomon 1024 dan oshishi mumkin. Xizmat ko‘rsatish qo‘llanmasi qo‘shimcha ravishda ikkala o‘lcham kamida 768 piksel bo‘lishini talab qiladi. 1344×768 kabi to‘rtburchak maqsad 1,032,192 pikselga ega va hujjatlashtirilgan maydon hamda minimal o‘lcham qoidalariga mos. Foydali chegara kenglik va balandlik ko‘paytmasidir, shuning uchun gorizontal yoki vertikal kompozitsiyani so‘rashdan avval mo‘ljallangan formatni tayyorlang.</p><p>Ishlab chiqaruvchining xizmat interfeysida yaratish va tahrirlash PNG tasvir ma’lumotlarini qaytaradi. Asl model kartasi 32K token kontekstni bildiradi, interfeys esa 32,000 token maksimal topshiriq kontekstini belgilaydi. Katalogdagi alohida 4,096 chiqish tokeni qiymati chiqish o‘lchami emas, token ruxsatidir. Batafsil topshiriq va tayyor tasvirni tartiblashda bu qiymatlarning e’lon qilingan doiralarini saqlang. Manba materiallari, saqlanadigan xususiyatlar, so‘ralgan tahrirlar va maqsad o‘lcham PNG yonida foydali tuzatish qaydini hosil qiladi.</p><p>Modelning ijodiy doirasi fotorealistik va kinematografik tasvirlar, portretlar, mahsulot yoki brend g‘oyalari, matnli dizaynlar hamda boshqa vizual uslublarni qamrab oladi. Yorliq yoki belgi uchun aniq so‘zlarni bering va imlosini yakuniy ko‘rsatish o‘lchamida tekshiring. Tanish fotografik sirtda ham to‘qilgan detal, nomuvofiq aks yoki xato yozuv bo‘lishi mumkin. Amaliy tekshiruv dizayn talablariga ergashadi: obyekt qiyofasi, o‘qiluvchanlik, fazoviy munosabatlar va saqlangan sahnaning barchasi muhim. Aniq tuzatishni allaqachon ishlagan o‘zgarishlardan alohida saqlang.</p><p>2.5 oilasida Pro yuqoriroq sodiqlik va zich sahnalardagi barqaror munosabatlarga, Flash esa tezroq javobli ishlab chiqarishga yo‘naltirilgan. 2.6 oilasi kattaroq hujjatlashtirilgan piksel maydoni, ixtiyoriy vebga tayanish va model boshqaradigan nisbat tanlashni kiritadi. Standart 2.5 shu keyingi boshqaruvlarsiz o‘z yaratish va tahrirlash jarayonini saqlaydi. Nashrni haqiqiy tasvir vazifasining murakkab jihatiga qarab tanlang va tayyor natijani shu topshiriqqa solishtiring.</p></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 · Rasmlar</b> <code>POST /v1/images/generations</code></summary><dl class=\"method-capabilities\"><div><dt>Kirish</dt><dd><code>text</code>, <code>image</code></dd></div><div><dt>Chiqish</dt><dd><code>image</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>microsoft/mai-image-2.5</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\">prompt</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\">aspect_ratio</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>1:1, 4:3, 3:4, 16:9, 9:16, 3:2, 2:3, auto</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\">n</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>integer</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>Eng kam: 1</div><div>Eng ko‘p: 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\">input_references</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>array</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>Elementlarning eng kam soni: 0</div><div>Elementlarning eng ko‘p soni: 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\">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, prompt</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, image</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 class=\"card-result-process\" data-billing-basis><h5>Yakuniy to‘lov qanday hisoblanadi</h5><p class=\"note-s\">Ko‘rsatilgan tariflar xarajatni generatsiyadan oldin taxminiy hisoblash uchun xizmat qiladi. Yakuniy to‘lov dastlabki generatsiya uchun qayd etilgan xarajat asosida hisoblanadi. Natijaning o‘lchangan davomiyligi va oldindan taxmin qilingan miqdorlar haq undiriladigan yakuniy miqdor hisoblanmaydi.</p></div><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>Taqqoslash uchun taxminiy tariflar</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>Prognoz miqdori</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=\"Prognoz miqdori\"><span class=\"card-cell-label\">Prognoz miqdori</span>—</td><td data-cell-label=\"To‘lov\"><span class=\"card-cell-label\">To‘lov</span><div><span>Kirish · Kirish tokenlari · Faqat taqqoslash uchun taxmin</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Chiqish · Chiqish tokenlari · Faqat taqqoslash uchun taxmin</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Kirish · Keshdan o‘qish · Faqat taqqoslash uchun taxmin</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Kirish · Keshga yozish · Faqat taqqoslash uchun taxmin</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Kirish · Keshga yozish, 1 soat · Faqat taqqoslash uchun taxmin</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>Yaratishning taxminiy qiymati</th><td data-cell-label=\"Tariflar jadvali\"><span class=\"card-cell-label\">Tariflar jadvali</span>—</td><td data-cell-label=\"Prognoz miqdori\"><span class=\"card-cell-label\">Prognoz miqdori</span>bir generatsiya uchun taxmin</td><td data-cell-label=\"To‘lov\"><span class=\"card-cell-label\">To‘lov</span><div><span>Chiqish · Yaratishning taxminiy narxi · Faqat taqqoslash uchun taxmin</span> <b>$0.385024</b> <span class=\"price-unit\">yaratishdan oldingi taxmin</span></div><p class=\"note-s\">Bu taxmin qo‘shimcha to‘lov ham, tugallangan generatsiya uchun qat’iy tarif ham emas.</p></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 · Rasmlar</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-1837-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1837-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl</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-1837-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1837-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\nexport AILOOT_API_KEY\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport json,os\nfrom pathlib import Path\np={&#39;model&#39;: &#39;microsoft/mai-image-2.5&#39;, &#39;prompt&#39;: &#39;a red panda astronaut floating in space, studio lighting&#39;}\n\nPath(&quot;request.json&quot;).write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \\\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 result.json\npython3 - &lt;&lt;&#39;PY_RESULT&#39;\nimport base64, json, os, subprocess\nfrom pathlib import Path\nfrom urllib.parse import urlsplit, urljoin\n\ndef save_images(items):\n    if not items: raise SystemExit(&quot;No completed images; retain the full response&quot;)\n    for index, item in enumerate(items):\n        encoded=item.get(&quot;b64_json&quot;)\n        uri=item.get(&quot;url&quot;, &quot;&quot;)\n        if not encoded and uri.startswith(&quot;data:image/&quot;):\n            header, separator, encoded=uri.partition(&quot;,&quot;)\n            if not separator or &quot;;base64&quot; not in header: raise SystemExit(&quot;Unsupported image data URI&quot;)\n        if encoded:\n            raw=base64.b64decode(encoded,validate=True)\n        elif uri:\n            uri=urljoin(&quot;https://api.ailoot.ai&quot;,uri)\n            parsed=urlsplit(uri)\n            if parsed.scheme!=&quot;https&quot; or not parsed.netloc or parsed.username or parsed.password:\n                raise SystemExit(&quot;Invalid returned image URL&quot;)\n            owned=parsed.netloc==&quot;api.ailoot.ai&quot; and parsed.path.startswith(&quot;/v1/media/assets/&quot;) and parsed.path.endswith(&quot;/content&quot;)\n            args=[&quot;curl&quot;,&quot;--fail-with-body&quot;,&quot;--silent&quot;,&quot;--show-error&quot;,uri]\n            if owned: args += [&quot;-H&quot;,&quot;Authorization: Bearer &quot;+os.environ[&quot;AILOOT_API_KEY&quot;]]\n            temporary=Path(f&quot;image-{index}.bin&quot;)\n            subprocess.run(args+[&quot;-o&quot;,str(temporary)],check=True)\n            raw=temporary.read_bytes()\n            temporary.unlink()\n        else: raise SystemExit(&quot;Image has neither bytes nor URL&quot;)\n        if not raw: raise SystemExit(&quot;Empty image result&quot;)\n        ext=&quot;png&quot; if raw.startswith(b&quot;\\x89PNG&quot;) else &quot;jpg&quot; if raw.startswith(b&quot;\\xff\\xd8&quot;) else &quot;webp&quot; if raw[:4]==b&quot;RIFF&quot; and raw[8:12]==b&quot;WEBP&quot; else &quot;svg&quot; if raw.lstrip().startswith((b&quot;&lt;svg&quot;,b&quot;&lt;?xml&quot;)) else &quot;bin&quot;\n        Path(f&quot;image-{index}.{ext}&quot;).write_bytes(raw)\n    print(&quot;Every returned image saved; complete response metadata retained&quot;)\nsave_images(json.loads(Path(&quot;result.json&quot;).read_text())[&quot;data&quot;])\nPY_RESULT\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 · Rasmlar</h4><p class=\"note-s\">Har bir qaytarilgan rasmni yuklab oling yoki uning Base64 kontentini saqlang</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-1838-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1838-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-1838-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1838-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\">Har bir tayyor rasmni saqlang; har bir qaytarilgan URL dan kontentni oling yoki uning Base64 kontentini dekodlang.</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><details class=\"card-about\" data-output-fields><summary>Javob maydonlari</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Maydon</th><th>Tur</th></tr></thead><tbody><tr><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">created</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span></td></tr><tr><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">data[].url</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span></td></tr><tr><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">data[].b64_json</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span></td></tr><tr><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">usage</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span></td></tr></tbody></table></div></details></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=microsoft%2Fmai-image-2.5&amp;route=Ultra&amp;caller=microsoft%2Fmai-image-2.5&amp;fmt=images\"><code>microsoft/mai-image-2.5</code></a></span></p><h4>Usul yo‘llari taxalluslari</h4><p class=\"note-s\"><code>/v1/images</code></p><h4>Chaqirish uchun tegishli ID lar</h4><p class=\"note-s\"><a href=\"#m=microsoft%2Fmai-image-2.5&amp;route=Ultra&amp;caller=microsoft%2Fmai-image-2.5&amp;fmt=images\"><code>microsoft/mai-image-2.5</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "microsoft/mai-image-2.5",
        "fmt": "images",
        "http": "POST",
        "path": "/v1/images/generations",
        "request_model_id": "microsoft/mai-image-2.5",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|images|/v1/images/generations|microsoft%2Fmai-image-2.5",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "billing_basis": {
          "basis": "original_invoice_usd",
          "description": "Ko‘rsatilgan tariflar xarajatni generatsiyadan oldin taxminiy hisoblash uchun xizmat qiladi. Yakuniy to‘lov dastlabki generatsiya uchun qayd etilgan xarajat asosida hisoblanadi. Natijaning o‘lchangan davomiyligi va oldindan taxmin qilingan miqdorlar haq undiriladigan yakuniy miqdor hisoblanmaydi.",
          "forecast_quantity_is_estimate": true,
          "physical_output_is_billable_quantity": false,
          "version": "original_invoice_usd_v1"
        },
        "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": "image",
              "fields": [
                {
                  "description": null,
                  "name": "created",
                  "type": null
                },
                {
                  "description": null,
                  "name": "data[].url",
                  "type": null
                },
                {
                  "description": null,
                  "name": "data[].b64_json",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage",
                  "type": null
                }
              ]
            },
            "parameters": [
              {
                "enum": [
                  "microsoft/mai-image-2.5"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "prompt",
                "required": true,
                "type": "string"
              },
              {
                "enum": [
                  "1:1",
                  "4:3",
                  "3:4",
                  "16:9",
                  "9:16",
                  "3:2",
                  "2:3",
                  "auto"
                ],
                "enum_known": true,
                "name": "aspect_ratio",
                "required": false,
                "type": "string"
              },
              {
                "maximum": 1,
                "minimum": 1,
                "name": "n",
                "required": false,
                "type": "integer"
              },
              {
                "items": {
                  "properties": {
                    "image_url": {
                      "properties": {
                        "url": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "url"
                      ],
                      "type": "object"
                    },
                    "type": {
                      "const": "image_url"
                    }
                  },
                  "required": [
                    "type",
                    "image_url"
                  ],
                  "type": "object"
                },
                "maximum_items": 1,
                "minimum_items": 0,
                "name": "input_references",
                "required": false,
                "type": "array"
              },
              {
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "aspect_ratio": {
                  "enum": [
                    "1:1",
                    "4:3",
                    "3:4",
                    "16:9",
                    "9:16",
                    "3:2",
                    "2:3",
                    "auto"
                  ],
                  "type": "string"
                },
                "input_references": {
                  "items": {
                    "properties": {
                      "image_url": {
                        "properties": {
                          "url": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "url"
                        ],
                        "type": "object"
                      },
                      "type": {
                        "const": "image_url"
                      }
                    },
                    "required": [
                      "type",
                      "image_url"
                    ],
                    "type": "object"
                  },
                  "maxItems": 1,
                  "minItems": 0,
                  "type": "array"
                },
                "model": {
                  "enum": [
                    "microsoft/mai-image-2.5"
                  ],
                  "type": "string"
                },
                "n": {
                  "maximum": 1,
                  "minimum": 1,
                  "type": "integer"
                },
                "prompt": {
                  "minLength": 1,
                  "type": "string"
                },
                "provider": {
                  "description": "Exact image provider preferences from the documented image request schema.",
                  "type": "object"
                }
              },
              "required": [
                "model",
                "prompt"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "model": "microsoft/mai-image-2.5",
                "prompt": "a red panda astronaut floating in space, studio lighting"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_types": [
              "text",
              "image"
            ],
            "required": [
              "model",
              "prompt"
            ]
          },
          "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/images/generations"
          },
          "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": "image",
            "fields": [
              {
                "description": null,
                "name": "created",
                "type": null
              },
              {
                "description": null,
                "name": "data[].url",
                "type": null
              },
              {
                "description": null,
                "name": "data[].b64_json",
                "type": null
              },
              {
                "description": null,
                "name": "usage",
                "type": null
              }
            ]
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "basis": "Bu taxmin qo‘shimcha to‘lov ham, tugallangan generatsiya uchun qat’iy tarif ham emas.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Yaratishning taxminiy qiymati",
            "units": [
              {
                "amount": "0.385024",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.385024",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np={'model': 'microsoft/mai-image-2.5', 'prompt': 'a red panda astronaut floating in space, studio lighting'}\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport base64, json, os, subprocess\nfrom pathlib import Path\nfrom urllib.parse import urlsplit, urljoin\n\ndef save_images(items):\n    if not items: raise SystemExit(\"No completed images; retain the full response\")\n    for index, item in enumerate(items):\n        encoded=item.get(\"b64_json\")\n        uri=item.get(\"url\", \"\")\n        if not encoded and uri.startswith(\"data:image/\"):\n            header, separator, encoded=uri.partition(\",\")\n            if not separator or \";base64\" not in header: raise SystemExit(\"Unsupported image data URI\")\n        if encoded:\n            raw=base64.b64decode(encoded,validate=True)\n        elif uri:\n            uri=urljoin(\"https://api.ailoot.ai\",uri)\n            parsed=urlsplit(uri)\n            if parsed.scheme!=\"https\" or not parsed.netloc or parsed.username or parsed.password:\n                raise SystemExit(\"Invalid returned image URL\")\n            owned=parsed.netloc==\"api.ailoot.ai\" and parsed.path.startswith(\"/v1/media/assets/\") and parsed.path.endswith(\"/content\")\n            args=[\"curl\",\"--fail-with-body\",\"--silent\",\"--show-error\",uri]\n            if owned: args += [\"-H\",\"Authorization: Bearer \"+os.environ[\"AILOOT_API_KEY\"]]\n            temporary=Path(f\"image-{index}.bin\")\n            subprocess.run(args+[\"-o\",str(temporary)],check=True)\n            raw=temporary.read_bytes()\n            temporary.unlink()\n        else: raise SystemExit(\"Image has neither bytes nor URL\")\n        if not raw: raise SystemExit(\"Empty image result\")\n        ext=\"png\" if raw.startswith(b\"\\x89PNG\") else \"jpg\" if raw.startswith(b\"\\xff\\xd8\") else \"webp\" if raw[:4]==b\"RIFF\" and raw[8:12]==b\"WEBP\" else \"svg\" if raw.lstrip().startswith((b\"<svg\",b\"<?xml\")) else \"bin\"\n        Path(f\"image-{index}.{ext}\").write_bytes(raw)\n    print(\"Every returned image saved; complete response metadata retained\")\nsave_images(json.loads(Path(\"result.json\").read_text())[\"data\"])\nPY_RESULT\n",
            "label": "curl · exact creation/save all outputs",
            "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": "images",
        "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",
          "image"
        ],
        "label": "Rasmlar",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [
          "/v1/images"
        ],
        "native_endpoint": "images",
        "out": null,
        "output": [
          "image"
        ],
        "path": "/v1/images/generations",
        "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": "original_invoice_usd",
          "image_input_price": null,
          "image_output_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "basis": "This estimate is not an additional charge or a fixed rate for the completed generation.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Estimated generation cost",
            "units": [
              {
                "amount": "0.385024",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.385024",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "request_model_id": "microsoft/mai-image-2.5",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "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": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "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": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "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": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "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": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "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": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.385024",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "forecast_usd",
            "label": "Estimated generation cost",
            "native_amount_usd_per_unit": "0.385024",
            "native_quantity": 1,
            "public_unit_label": "estimate before generation",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "request_estimate"
          }
        ]
      }
    }
  ],
  "model_id": "microsoft/mai-image-2.5",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "49b1a07e8ade949526f91418103f73356f88eca645b5753197ef13b1c437aeed",
    "input_html_sha256": "093db39c08f9ffd2a10f5f01f015c67094d63b4bbc239954342e856a3cbb859d",
    "private_audit_sha256": "37363e6760cd2183daccdd7de954dfc32849fa72ec91a9c571341c0506ab00b7",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/uz/microsoft-mai-image-2-5/",
    "description": "Microsoft AI MAI-Image-2.5 matndan tasvirlar yaratadi va berilgan fotosurat yoki dizaynlarni aniq maqsad bilan tahrirlaydi. U obyekt va matn o‘zgarishlari, artefakt tozalash va yuzni saqlaydigan tuzatishlarni, PNG natija hamda beshtagacha vizual namunani qo‘llaydi. Model kartasi 32K kontekst va 1,048,576 chiqish pikselini belgilaydi.",
    "locale": "uz",
    "md_url": "https://ailoot.ai/models/uz/microsoft-mai-image-2-5/index.md",
    "title": "Microsoft AI: MAI-Image-2.5 — Ailoot",
    "url": "https://ailoot.ai/models/uz/microsoft-mai-image-2-5/"
  },
  "rawModel": {
    "about": "Microsoft AI MAI-Image-2.5 — 2.5 tasvir oilasining umumiy yaratish va boshqariladigan tahrirlash nashri. Uning model kartasi flow matching dan foydalanadigan, embeddinglardan tashqari 20 milliard parametrli, matn va tasvir kirishli hamda 32K token kontekstli diffuziya modelini tasvirlaydi. U g‘oyalar, portretlar, mahsulot vizuallari, illyustratsiyalar va mavjud dizayn tuzatishlari uchun tasvir natijasini beradi. Foydali boshlang‘ich tanlov — vazifaga yangi kompozitsiyami yoki ko‘zlangan obyekt allaqachon mavjud materialga aniq o‘zgarishmi kerakligini hal qilish.\n\nYaratishda asosiy obyekt, vizual uslub, yorug‘lik, ko‘rish nuqtasi va joylashuvni tasvirlang. Ishlab chiqaruvchi batafsil, uyg‘un tasvirlar, matn tasvirlash, mahsulot vizuallari va topshiriqqa rioyani ta’kidlaydi. Taqdimot illyustratsiyasi uchun amaliy topshiriq obyekt vazifasi, kerakli vizual urg‘u va atrofdagi bo‘sh joy miqdorini belgilashi mumkin. Mahsulot g‘oyasi material, ko‘lam va sirt qoplamasini qamrab olishi mumkin. Bir nechta nomuvofiq vizual ishlovni qo‘shish o‘rniga obyektlar bitta sahna va bitta yoritish rejasini bo‘lishishi uchun tavsifni yaxlit saqlang.\n\nBu nashrda vizual anglash sahna tuzilishi, yoritish, ko‘lam va fazoviy munosabatlarga tegishli. Ishlab chiqaruvchi mos perspektiva va soyalar bilan obyekt qo‘shishni tahrirlash misoli sifatida beradi. Ustaxona tahririda mavjud ko‘rish nuqtasi va yorug‘likni saqlab, ish stoli yoniga kichik kursi qo‘ying. Tekshiruvda kursi o‘lchami, polga tegish joyi va soyasining boshqa buyumlarga mosligi solishtirilishi kerak. Mahalliy jihatdan ishonarli obyekt ham butun manba tasviri geometriyasiga mos tushishi zarur.\n\nYo‘naltirilgan tahrirlar obyekt olib tashlash yoki almashtirish, xususiyat o‘zgarishlari, inpainting, maket moslashtirish, matn yangilash va harakat xiraligi artefaktlarini kamaytirish kabi tozalashni qamrab oladi. Manba tasvirini bering va tuzatish hamda saqlanadigan detallarni birga ayting. Diqqatli foto tahriri shaxs, kesim va oldingi plan joylashuvini saqlab, fondagi chalg‘ituvchi obyektni olib tashlashi mumkin. Dizayn tuzatishi kompozitsiyani saqlab, qisqa matn satrini yangilashi mumkin. Faqat tahrirlangan hududga baho bermasdan butun natijani manba bilan solishtiring.\n\nMicrosoft poza, ifoda yoki rakurs o‘zgarishlarida ham tahrirlar bo‘ylab yuz qiyofasi izchilligini ta’kidlaydi. O‘xshashlik uchun tiniq namuna ishlating va kerakli o‘zgarishni tanituvchi xususiyatlarni saqlaydigan tarzda belgilang. Ishlab chiqaruvchining hozirgi tahrirlash qo‘llanmasi beshtagacha JPEG yoki PNG tasvirga ruxsat beradi; turli namunalar shaxs, obyekt, sahna yoki uslubni belgilashi mumkin. Bu vazifalarni topshiriqda nomlang. Portret tuzatishida tasvirni tugagan deb hisoblashdan avval yuzni ham, o‘zgargan kiyim yoki fonni ham tekshiring.\n\nAniq model kartasi chiqishni jami 1,048,576 piksel, ya’ni 1024×1024 kvadratga teng maydon bilan cheklaydi; umumiy maydon shu chegarada qolsa bir tomon 1024 dan oshishi mumkin. Xizmat ko‘rsatish qo‘llanmasi qo‘shimcha ravishda ikkala o‘lcham kamida 768 piksel bo‘lishini talab qiladi. 1344×768 kabi to‘rtburchak maqsad 1,032,192 pikselga ega va hujjatlashtirilgan maydon hamda minimal o‘lcham qoidalariga mos. Foydali chegara kenglik va balandlik ko‘paytmasidir, shuning uchun gorizontal yoki vertikal kompozitsiyani so‘rashdan avval mo‘ljallangan formatni tayyorlang.\n\nIshlab chiqaruvchining xizmat interfeysida yaratish va tahrirlash PNG tasvir ma’lumotlarini qaytaradi. Asl model kartasi 32K token kontekstni bildiradi, interfeys esa 32,000 token maksimal topshiriq kontekstini belgilaydi. Katalogdagi alohida 4,096 chiqish tokeni qiymati chiqish o‘lchami emas, token ruxsatidir. Batafsil topshiriq va tayyor tasvirni tartiblashda bu qiymatlarning e’lon qilingan doiralarini saqlang. Manba materiallari, saqlanadigan xususiyatlar, so‘ralgan tahrirlar va maqsad o‘lcham PNG yonida foydali tuzatish qaydini hosil qiladi.\n\nModelning ijodiy doirasi fotorealistik va kinematografik tasvirlar, portretlar, mahsulot yoki brend g‘oyalari, matnli dizaynlar hamda boshqa vizual uslublarni qamrab oladi. Yorliq yoki belgi uchun aniq so‘zlarni bering va imlosini yakuniy ko‘rsatish o‘lchamida tekshiring. Tanish fotografik sirtda ham to‘qilgan detal, nomuvofiq aks yoki xato yozuv bo‘lishi mumkin. Amaliy tekshiruv dizayn talablariga ergashadi: obyekt qiyofasi, o‘qiluvchanlik, fazoviy munosabatlar va saqlangan sahnaning barchasi muhim. Aniq tuzatishni allaqachon ishlagan o‘zgarishlardan alohida saqlang.\n\n2.5 oilasida Pro yuqoriroq sodiqlik va zich sahnalardagi barqaror munosabatlarga, Flash esa tezroq javobli ishlab chiqarishga yo‘naltirilgan. 2.6 oilasi kattaroq hujjatlashtirilgan piksel maydoni, ixtiyoriy vebga tayanish va model boshqaradigan nisbat tanlashni kiritadi. Standart 2.5 shu keyingi boshqaruvlarsiz o‘z yaratish va tahrirlash jarayonini saqlaydi. Nashrni haqiqiy tasvir vazifasining murakkab jihatiga qarab tanlang va tayyor natijani shu topshiriqqa solishtiring.",
    "alias_of": null,
    "aliases": [],
    "author": "Microsoft AI",
    "capabilities": {
      "context_length": 4096,
      "manufacturer_input": [
        "text",
        "image"
      ],
      "manufacturer_output": [
        "image"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.385024",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "forecast_usd",
            "label": "Estimated generation cost",
            "native_amount_usd_per_unit": "0.385024",
            "native_quantity": 1,
            "public_unit_label": "estimate before generation",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "request_estimate"
          }
        ],
        "summary": "Konfiguratsiya narxlari tafsilotlarda to‘liq ko‘rsatilgan."
      }
    ],
    "ctx": null,
    "formats": [
      "images"
    ],
    "id": "microsoft/mai-image-2.5",
    "input": [
      "text",
      "image"
    ],
    "kind": "image",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "billing_basis": {
          "basis": "original_invoice_usd",
          "description": "Ko‘rsatilgan tariflar xarajatni generatsiyadan oldin taxminiy hisoblash uchun xizmat qiladi. Yakuniy to‘lov dastlabki generatsiya uchun qayd etilgan xarajat asosida hisoblanadi. Natijaning o‘lchangan davomiyligi va oldindan taxmin qilingan miqdorlar haq undiriladigan yakuniy miqdor hisoblanmaydi.",
          "forecast_quantity_is_estimate": true,
          "physical_output_is_billable_quantity": false,
          "version": "original_invoice_usd_v1"
        },
        "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": "image",
              "fields": [
                {
                  "description": null,
                  "name": "created",
                  "type": null
                },
                {
                  "description": null,
                  "name": "data[].url",
                  "type": null
                },
                {
                  "description": null,
                  "name": "data[].b64_json",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage",
                  "type": null
                }
              ]
            },
            "parameters": [
              {
                "enum": [
                  "microsoft/mai-image-2.5"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "prompt",
                "required": true,
                "type": "string"
              },
              {
                "enum": [
                  "1:1",
                  "4:3",
                  "3:4",
                  "16:9",
                  "9:16",
                  "3:2",
                  "2:3",
                  "auto"
                ],
                "enum_known": true,
                "name": "aspect_ratio",
                "required": false,
                "type": "string"
              },
              {
                "maximum": 1,
                "minimum": 1,
                "name": "n",
                "required": false,
                "type": "integer"
              },
              {
                "items": {
                  "properties": {
                    "image_url": {
                      "properties": {
                        "url": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "url"
                      ],
                      "type": "object"
                    },
                    "type": {
                      "const": "image_url"
                    }
                  },
                  "required": [
                    "type",
                    "image_url"
                  ],
                  "type": "object"
                },
                "maximum_items": 1,
                "minimum_items": 0,
                "name": "input_references",
                "required": false,
                "type": "array"
              },
              {
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "aspect_ratio": {
                  "enum": [
                    "1:1",
                    "4:3",
                    "3:4",
                    "16:9",
                    "9:16",
                    "3:2",
                    "2:3",
                    "auto"
                  ],
                  "type": "string"
                },
                "input_references": {
                  "items": {
                    "properties": {
                      "image_url": {
                        "properties": {
                          "url": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "url"
                        ],
                        "type": "object"
                      },
                      "type": {
                        "const": "image_url"
                      }
                    },
                    "required": [
                      "type",
                      "image_url"
                    ],
                    "type": "object"
                  },
                  "maxItems": 1,
                  "minItems": 0,
                  "type": "array"
                },
                "model": {
                  "enum": [
                    "microsoft/mai-image-2.5"
                  ],
                  "type": "string"
                },
                "n": {
                  "maximum": 1,
                  "minimum": 1,
                  "type": "integer"
                },
                "prompt": {
                  "minLength": 1,
                  "type": "string"
                },
                "provider": {
                  "description": "Exact image provider preferences from the documented image request schema.",
                  "type": "object"
                }
              },
              "required": [
                "model",
                "prompt"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "model": "microsoft/mai-image-2.5",
                "prompt": "a red panda astronaut floating in space, studio lighting"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_types": [
              "text",
              "image"
            ],
            "required": [
              "model",
              "prompt"
            ]
          },
          "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/images/generations"
          },
          "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": "image",
            "fields": [
              {
                "description": null,
                "name": "created",
                "type": null
              },
              {
                "description": null,
                "name": "data[].url",
                "type": null
              },
              {
                "description": null,
                "name": "data[].b64_json",
                "type": null
              },
              {
                "description": null,
                "name": "usage",
                "type": null
              }
            ]
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "basis": "Bu taxmin qo‘shimcha to‘lov ham, tugallangan generatsiya uchun qat’iy tarif ham emas.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Yaratishning taxminiy qiymati",
            "units": [
              {
                "amount": "0.385024",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.385024",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np={'model': 'microsoft/mai-image-2.5', 'prompt': 'a red panda astronaut floating in space, studio lighting'}\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport base64, json, os, subprocess\nfrom pathlib import Path\nfrom urllib.parse import urlsplit, urljoin\n\ndef save_images(items):\n    if not items: raise SystemExit(\"No completed images; retain the full response\")\n    for index, item in enumerate(items):\n        encoded=item.get(\"b64_json\")\n        uri=item.get(\"url\", \"\")\n        if not encoded and uri.startswith(\"data:image/\"):\n            header, separator, encoded=uri.partition(\",\")\n            if not separator or \";base64\" not in header: raise SystemExit(\"Unsupported image data URI\")\n        if encoded:\n            raw=base64.b64decode(encoded,validate=True)\n        elif uri:\n            uri=urljoin(\"https://api.ailoot.ai\",uri)\n            parsed=urlsplit(uri)\n            if parsed.scheme!=\"https\" or not parsed.netloc or parsed.username or parsed.password:\n                raise SystemExit(\"Invalid returned image URL\")\n            owned=parsed.netloc==\"api.ailoot.ai\" and parsed.path.startswith(\"/v1/media/assets/\") and parsed.path.endswith(\"/content\")\n            args=[\"curl\",\"--fail-with-body\",\"--silent\",\"--show-error\",uri]\n            if owned: args += [\"-H\",\"Authorization: Bearer \"+os.environ[\"AILOOT_API_KEY\"]]\n            temporary=Path(f\"image-{index}.bin\")\n            subprocess.run(args+[\"-o\",str(temporary)],check=True)\n            raw=temporary.read_bytes()\n            temporary.unlink()\n        else: raise SystemExit(\"Image has neither bytes nor URL\")\n        if not raw: raise SystemExit(\"Empty image result\")\n        ext=\"png\" if raw.startswith(b\"\\x89PNG\") else \"jpg\" if raw.startswith(b\"\\xff\\xd8\") else \"webp\" if raw[:4]==b\"RIFF\" and raw[8:12]==b\"WEBP\" else \"svg\" if raw.lstrip().startswith((b\"<svg\",b\"<?xml\")) else \"bin\"\n        Path(f\"image-{index}.{ext}\").write_bytes(raw)\n    print(\"Every returned image saved; complete response metadata retained\")\nsave_images(json.loads(Path(\"result.json\").read_text())[\"data\"])\nPY_RESULT\n",
            "label": "curl · exact creation/save all outputs",
            "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": "images",
        "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",
          "image"
        ],
        "label": "Rasmlar",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [
          "/v1/images"
        ],
        "native_endpoint": "images",
        "out": null,
        "output": [
          "image"
        ],
        "path": "/v1/images/generations",
        "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": "original_invoice_usd",
          "image_input_price": null,
          "image_output_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "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": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "basis": "This estimate is not an additional charge or a fixed rate for the completed generation.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Estimated generation cost",
            "units": [
              {
                "amount": "0.385024",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.385024",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "request_model_id": "microsoft/mai-image-2.5",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "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": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "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": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "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": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "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": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "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": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.385024",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "forecast_usd",
            "label": "Estimated generation cost",
            "native_amount_usd_per_unit": "0.385024",
            "native_quantity": 1,
            "public_unit_label": "estimate before generation",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "request_estimate"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "microsoft/mai-image-2.5",
        "request_model_id": "microsoft/mai-image-2.5",
        "route_label": "Ultra"
      }
    ],
    "name": "Microsoft AI: MAI-Image-2.5",
    "price": {
      "estimate_only": true,
      "in": null,
      "in_label": null,
      "out": 0.385024,
      "out_label": "estimate before generation",
      "scope_label": "Estimated generation cost",
      "sort_in": null,
      "sort_out": 0.385024,
      "varies": false
    },
    "short": "Microsoft AI MAI-Image-2.5 matndan tasvirlar yaratadi va berilgan fotosurat yoki dizaynlarni aniq maqsad bilan tahrirlaydi. U obyekt va matn o‘zgarishlari, artefakt tozalash va yuzni saqlaydigan tuzatishlarni, PNG natija hamda beshtagacha vizual namunani qo‘llaydi. Model kartasi 32K kontekst va 1,048,576 chiqish pikselini belgilaydi."
  },
  "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": "Microsoft AI MAI-Image-2.5 matndan tasvirlar yaratadi va berilgan fotosurat yoki dizaynlarni aniq maqsad bilan tahrirlaydi. U obyekt va matn o‘zgarishlari, artefakt tozalash va yuzni saqlaydigan tuzatishlarni, PNG natija hamda beshtagacha vizual namunani qo‘llaydi. Model kartasi 32K kontekst va 1,048,576 chiqish pikselini belgilaydi.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "9abedfa27317c771f1b5507e67d50619ddb16f45b7ff2f213a3fe64eb0a590e3",
    "renderer_sha256": "aa8a0fca1bd770c042b64987512b6187fca2067aea3ddc877f68b163d80e7df6"
  },
  "sourceRevision": "caf2b86949fb987c31cc92d7b95a7cc3dc7275b62f3582c6b0d58f3942746801"
}
