modellar

OpenAI: GPT-5 Image Mini

Markdown · JSON

OpenAI: GPT-5 Image Mini

GPT-5 Image Mini vizual yaratish va namunalar asosidagi tahrirlar uchun OpenAI ning GPT-5 Mini til imkoniyatlarini GPT Image 1 Mini bilan birlashtiradi. U matn, tasvir va hujjatlarni qabul qilib, matn hamda tasvir qaytaradi; yozma javob ham, vizual artefakt ham kerak bo‘ladigan jarayonlarni qo‘llaydi.

Model haqida

Bu tavsif model imkoniyatlarini yoritadi. Ailoot da tanlangan usul uchun mavjud kirish, chiqish va parametrlar quyida keltirilgan.

GPT-5 Image Mini — OpenAI ning GPT-5 Mini va GPT Image 1 Mini modellari asosida tuzilgan birlashtirilgan til va tasvir profili. Uning til komponenti yozma vazifa va manba materiallarini talqin qiladi, tasvir komponenti esa vizual kontent yaratadi yoki qayta tahrirlaydi. E’lon qilingan profilda ko‘rsatmalarga amal qilish, tasvirda matnni aks ettirish va tasvirlarni batafsil tahrirlash ta’kidlangan. U matnli talqin, tushuntirish yoki qo‘shimcha matn ham talab qiladigan aniq vizual topshiriq uchun foydali.

Yozma vazifa va vizual natijani birlashtiring

Kerakli artefakt, asosiy obyekt, kompozitsiya va majburiy matnni belgilaydigan topshiriqni tayyorlang. Tasvir qanday ishlatilishini tushuntiring: masalan, mahsulot g‘oyasi, qisqa tushuntirishga hamroh illyustratsiya yoki sahifa uchun vizual qoralama. G‘oyaning tushuntirishini tasvirning o‘zidan oson ajratish uchun yozma va vizual natijalarni aniq so‘rang.

Masalan, qayta ishlatiladigan suv butilkasi tavsifini bering va qisqa yozuvli oddiy mahsulot sahnasi g‘oyasini so‘rang. Butilkaning ko‘rinadigan shakli, fon, yorug‘lik yo‘nalishi va tasvirda bo‘lishi kerak bo‘lgan aniq so‘zlarni belgilang. Yozuvda ishlatiladigan faktlarni sahnaning dekorativ detallaridan ajrating. Qaytarilgan tasvir va yozma matnni topshiriqning shu ikki qismi bilan solishtiring.

Hujjatlashtirilgan birlashtirilgan profil matn, tasvir va PDF kabi fayllarni qabul qiladi. Hujjat vizual natija yaratilishidan oldin talqin qilinishi kerak bo‘lgan talablar yoki faktlarni berishi mumkin. Tasvir tashqi ko‘rinish, maket yoki tahrirlash manbasini berishi mumkin. Har bir biriktirilgan fayl natijaning barcha qismlariga ta’sir qilishi kerak deb hisoblamasdan, har bir manbaning vazifasini ko‘rsating. Bir nechta kirish berilganda, manba nomlari va tartibini aniq saqlang.

Namunalar yordamida yarating va tahrirlang

Yangi tasvir uchun nimalar ko‘rinishi va qismlar qanday bog‘lanishini belgilang. Namuna asosidagi tahrirda o‘zgarish va saqlanishi kerak bo‘lgan detallarni ko‘rsating. Mahsulot sahnasida buyumning tanib bo‘ladigan shakli va ko‘rinadigan yorlig‘ini saqlab, yangi muhit so‘rash mumkin. Diagrammada esa saqlanishi kerak bo‘lgan matn va elementlarni nomlab, bog‘lanishni tuzatishni so‘rash mumkin.

Profilning o‘z e’lon qilingan kartasi tahrirlash uchun o‘n oltitagacha namuna tasvirga ruxsat beradi. Vazifaga hissa qo‘shadigan namunalarni tanlang va ularning maqsadini tushuntiring: mahsulot, qahramon, fon yoki vizual ishlov uslubi. Bir nechta namunada yorug‘lik yoki kompozitsiya o‘zaro zid bo‘lishi mumkin, shu sababli mo‘ljallangan natijani aniq ayting. Obyekt detallarini, yozuvlarni va so‘ralgan o‘zgarish chegaralarini haqiqiy qaytarilgan tasvirda tekshiring.

Tasvirda matnni aks ettirish hujjatlashtirilgan imkoniyatdir, ammo vizual qoralamani baribir so‘zma-so‘z tekshirish zarur. Aniq so‘zlar, tinish belgilari va joylashuvni bering, so‘ng mo‘ljallangan ko‘rish o‘lchamida muhim yorliqlar va sonlarni topshiriq bilan solishtiring. Takroriy seriyada namunalar va vizual talablarni har bir natija bilan saqlang, tugallangan tasvirlarni birgalikda taqqoslang.

Ish konteksti va boshqaruv sozlamalari

Birlashtirilgan profil 400,000 tokenli kontekst oynasi va 128,000 tagacha javob yaratish tokenini e’lon qiladi. Bular tasvirning piksel o‘lchamlari yoki qaytarilgan tasvir artefaktlari sonidan alohida bo‘lgan ish konteksti va javob yaratish limitlaridir. Uzun manba materiallarini kerakli talqin atrofida tartiblang va javob uchun joy qoldiring. Tegishli namunalar bilan ixcham topshiriq, vazifasi tushuntirilmagan aloqasiz hujjatlardan foydaliroq.

Profilning e’lon qilingan matnli chiqish talablari JSON sxemasi asosidagi tuzilmali natijalarni qo‘llaydi. Yozma natijani dastur qabul qilishi kerak bo‘lsa, maydonlar va turlarni belgilang va qiymatlarni berilgan dalillar bilan tekshiring. Birlashtirilgan profil dastur funksiyalarini chaqirishni taqdim etmaydi. Til komponentining tasvir yaratish bilan ishlatilishi — nomi belgilangan profil imkoniyati; bu alohida GPT-5 Mini interfeysining barcha funksiyalarini shu jarayonga kiritmaydi.

Tasvir sozlamalari aynan foydalanilayotgan profil va interfeysdan olinishi kerak. Tahrirlangan variantlarni taqqoslashda tanlangan konfiguratsiyani prompt bilan birga saqlang. Bevosita GPT Image 1 Mini komponenti va birlashtirilgan chat profilining so‘rov tuzilmalari farq qiladi; shu sababli komponentga xos o‘lcham, maska yoki chiqish boshqaruvlarini birlashtirilgan profil sozlamalari deb qabul qilishdan oldin ularni aniq moslashtirish zarur.

Matn va tasvir artefaktlarini saqlang

Hujjatlashtirilgan chat so‘rovi sxemasida chiqish modalliklari sifatida matn (text) va tasvir (image) tanlash mumkin. Qaytarilgan matn va javob bilan birga kelgan har bir haqiqiy tasvir artefaktini qayta ishlang. Tasvirlarni natijada ko‘rsatilgan formatda saqlang; yozma javobni esa prompt, manba namunalari va sozlamalar bilan birga saqlang. Faqat tushuntiruvchi matndan iborat javob tugallangan vizual natijadan farq qiladi, shu sababli uni maketga qo‘llashdan oldin natijada aslida nimalar borligini tekshiring.

GPT-5 Image Mini GPT-5 va GPT Image 1 ni birlashtiradigan to‘liq GPT-5 Image profilidan farq qiladi. Mini profilidan topshirig‘i va tekshiruv mezonlari aniq bo‘lgan cheklangan til va vizual vazifalar uchun foydalaning. Kompozitsiya, obyekt identifikatsiyasi, tasvirdagi matn va unga hamroh matnni tekshiring, so‘ng zarur aniq tuzatishni so‘rang. Keyingi topshiriqda muvaffaqiyatli elementlar va tegishli namunalarni saqlang, shunda tahrirning aniq maqsadi bo‘ladi.

Amaliy vazifa

Amaliy vazifa

Ingliz tilidagi texnik misol

Create a labelled refill-bottle scene

Create a product-scene image of a plain cylindrical blue reusable water bottle with a silver screw cap, standing upright on pale stone. Soft daylight enters from the left. Place the exact word REFILL clearly on the bottle, with no other text, logos, accessories or unsupported product claims. Keep the full bottle visible.

Kutiladigan natija

One image artifact showing the full specified bottle, left-side daylight and the exact single-word label.

Natijani tekshirish

Inspect the actual image for bottle shape, cap, complete framing and letter-by-letter spelling of REFILL.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions openai/gpt-5-image-mini

openai/gpt-5-image-mini

OpenAI /openai/gpt-5-image-mini

Boshlash

GPT-5 Image Mini vizual yaratish va namunalar asosidagi tahrirlar uchun OpenAI ning GPT-5 Mini til imkoniyatlarini GPT Image 1 Mini bilan birlashtiradi. U matn, tasvir va hujjatlarni qabul qilib, matn hamda tasvir qaytaradi; yozma javob ham, vizual artefakt ham kerak bo‘ladigan jarayonlarni qo‘llaydi.

Qabul qilinadigan kirish ma’lumotlari
Matn
Natijalar
Matn

Ailoot da mavjud · kirish ma’lumotlari va usullar

Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
Kirish
text
Chiqish
text
Chiqish formati
json yoki SSE
MaydonTurTalabQiymatlar va cheklovlarStandart
MaydonmodelTurstringTalabMajburiyQiymatlar va cheklovlar
openai/gpt-5-image-mini
Standart—
MaydonmessagesTurmessage[]TalabMajburiyQiymatlar va cheklovlar
Elementlarning eng kam soni: 1
Standart—
Maydonmessages[].roleTurstringTalabMajburiyQiymatlar va cheklovlar
Namunalar: system, user, assistant, tool, function
Shartlar: Bu rollar manba kodining moslik turlarida ochiq ifodalangan; aniq rollar to‘plami har bir modelga xos bo‘lib qoladi.
Modelga bogʻliq
Standart—
Maydonmessages[].contentTurstring|content_part[]|nullTalabIxtiyoriyQiymatlar va cheklovlarStandart—
Maydonmessages[].tool_callsTurtool_call[]TalabIxtiyoriyQiymatlar va cheklovlarStandart—
Maydonmessages[].tool_call_idTurstringTalabIxtiyoriyQiymatlar va cheklovlar
Quyidagi holatda qo‘llanadi: role=tool; haqiqatan qaytarilgan IDdan foydalaning
Standart—
Maydonmessages[].nameTurstringTalabIxtiyoriyQiymatlar va cheklovlarStandart—
Maydonmessages[].reasoning_contentTurstringTalabIxtiyoriyQiymatlar va cheklovlar
Quyidagi holatda qo‘llanadi: Ushbu model foydalanganda, haqiqatan qaytarilgan fikrlash ma’lumotlarini keyingi so‘rovda qayta yuboring
Standart—
Maydonmessages[].reasoning_detailsTurobject|arrayTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
Maydonmax_tokensTurintegerTalabIxtiyoriyQiymatlar va cheklovlar
Eng kam: 1
Modelga bogʻliq
Standart—
Maydonmax_completion_tokensTurintegerTalabIxtiyoriyQiymatlar va cheklovlar
Eng kam: 1
Modelga bogʻliq
Standart—
MaydonstreamTurbooleanTalabIxtiyoriyQiymatlar va cheklovlarStandartfalse
Maydonstream_options.include_usageTurbooleanTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
MaydontemperatureTurnumberTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
Maydontop_pTurnumberTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
MaydonstopTurstring|string[]TalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
MaydontoolsTurfunction_tool[]TalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
Maydontools[].typeTurstringTalabIxtiyoriyQiymatlar va cheklovlar
function
Modelga bogʻliq
Standart—
Maydontools[].function.nameTurstringTalabMajburiyQiymatlar va cheklovlar
Quyidagi holatda qo‘llanadi: Funksiya vositasi taqdim etilgan
Standart—
Maydontools[].function.descriptionTurstringTalabIxtiyoriyQiymatlar va cheklovlarStandart—
Maydontools[].function.parametersTurJSON_schemaTalabIxtiyoriyQiymatlar va cheklovlarStandart—
Maydontool_choiceTurstring|objectTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
Maydonparallel_tool_callsTurbooleanTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
Maydonresponse_formatTurobjectTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
Maydonreasoning_effortTurstringTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
MaydonreasoningTurobjectTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
Maydonservice_tierTurstringTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
MaydoninstructionsTurstringTalabIxtiyoriyQiymatlar va cheklovlar
Moslik maydoni
Standart—
MaydonfunctionsTurfunction[]TalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
Maydonfunction_callTurstring|objectTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
Maydonprompt_cache_optionsTurobjectTalabIxtiyoriyQiymatlar va cheklovlar
Modelga bogʻliq
Standart—
MaydonmodalitiesTurstring[]TalabIxtiyoriyQiymatlar va cheklovlar
text
Standart—
MaydonproviderTurobjectTalabIxtiyoriyQiymatlar va cheklovlar
Shartlar: Ushbu Ultra matn marshrutida provider.options rad etiladi
Standart—
Maydoncache_control.ttlTurstringTalabIxtiyoriyQiymatlar va cheklovlar
Shartlar: Haqiqiy prompt-kesh joylarida 1h rad etiladi
Standart—
Kirish materiallari birikmalari

Matn · UTF8 matni

messages[].content

Usul parametrlari va hayot sikli
ParametrParametr talablari
Parametrcontent_typeParametr talablariapplication/json
ParametrrequiredParametr talablarimodel, messages
Parametrmaterial_typesParametr talablaritext
ParametrmessagesParametr talablarirole/content tuzilishidagi xabarlar massivi
Parametrfile_materialParametr talablariHaqiqiy UTF-8 hujjati aynan matn sifatida kiritiladi; fayl IDsi faraz qilinmaydi
Parametroptional_controlsParametr talablaristream, temperature, top_p, stop, max_tokens, max_completion_tokens, reasoning, response_format, tools, tool_choice
Parametrcontrol_scopeParametr talablariModelga xos; foydalanuvchi funksiya vositalari hostingdagi vositalardan farq qiladi
Parametroutput_modalitiesParametr talablaritext
Parametrhosted_operationsParametr talablarifalse
Parametrmultimodal_input_bindingParametr talablarinull

Hayot sikli: synchronous_or_streamed

Aniq model IDsini messages bilan yuboring.

Kontekst uzunligi chiqishning yuqori chegarasi emas.

Matn fayli aynan matnni taqdim etishi mumkin; tasvir, audio va fayl obyekti kirishlari aniq bog‘lashni talab qiladi.

Tariflar

Tarif ma’lumotlari so‘rov imkoniyatlarini qo‘shmaydi. Qo‘llab-quvvatlanadigan parametrlar tanlangan usulda ko‘rsatilgan.

Tezkor rejim
Standart tarif Tezkor rejim tanlanganda
Flex rejimi
Standart tarif flex rejimi tanlanganda
Maksimal fikrlash darajasi
Standart tarif Maksimal fikrlash darajasi uchun standart (default) tuzatish qo‘llanganda

Ailoot tariflari

Sozlamalar bo‘yicha narxlar

Har bir to‘lovni ko‘rsatilgan shartlarga moslang. Har bir muqobil sozlamalar to‘plami uchun bitta tarifdan foydalaning.

SozlamaTariflar jadvaliKontekst tokenlari soni bundan ko‘pKontekst tokenlari soni bundan oshmaydi, chegara kiradiTo‘lov
SozlamaTokenlar uchun bazaviy tariflarTariflar jadvaliAsosiy tarifKontekst tokenlari soni bundan ko‘p—Kontekst tokenlari soni bundan oshmaydi, chegara kiradiYuqori chegara yo‘qTo‘lov
Kirish · Kirish tokenlari $0.005 / 1K token
Chiqish · Chiqish tokenlari $0.004 / 1K token
Kirish · Keshdan o‘qish $0.0005 / 1K token
Kirish · Keshga yozish — / 1K token
Kirish · Keshga yozish, 1 soat — / 1K token
Chiqish · Chiqish rasmi tokenlari $0.016 / 1K rasm tokeni
SozlamaSo‘rov uzunligi bo‘yicha 1-darajaTariflar jadvali—Kontekst tokenlari soni bundan ko‘p0Kontekst tokenlari soni bundan oshmaydi, chegara kiradiYuqori chegara yo‘qTo‘lov
Kirish · Kirish tokenlari $0.005 / 1K token
Chiqish · Chiqish tokenlari $0.004 / 1K token
Kirish · Keshdan o‘qish $0.0005 / 1K token
Kirish · Keshga yozish — / 1K token
Kirish · Keshga yozish, 1 soat — / 1K token

Ma’lumot uchun tarif tafsilotlari

Modelning ma’lumot jadvallari usul tanlash, narx hisobi yoki to‘lovlarni o‘zgartirmaydi. Amaldagi to‘lovlar tanlangan Ailoot usuli tariflari bo‘yicha hisoblanadi.

OpenAI: GPT-5 Image Mini

Sozlamalar bo‘yicha narxlar

SozlamaTo‘lovni hisoblash shartlariTo‘lov
SozlamaOpenAI: GPT-5 Image Mini · Standart sozlamaTo‘lovni hisoblash shartlariStandart konfiguratsiyaTo‘lov
Kirish · Kirish tokenlari 0,005 US$ / 1K token
Chiqish · Chiqish tokenlari 0,004 US$ / 1K token
Chiqish · Chiqish rasmi 0,016 US$ / 1K token
Chiqish · Veb-qidiruv 0,02 US$ har bir qidiruv uchun
Kirish · Keshdan o‘qish 0,0005 US$ / 1K token

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. Summani band qilish va to‘lovni hisoblash tartibi →

So‘rov namunalari

Ailoot Ultra · OpenAI Chat

curlPython SDKPython oqimi
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "openai/gpt-5-image-mini", "messages": [{"role": "user", "content": "Explain the difference between an observation and a hypothesis in three sentences."}]}')

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
    if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
from openai import OpenAI
import os

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model='openai/gpt-5-image-mini',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}])
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

save_result(result.to_dict(mode="json"))
from openai import OpenAI
import os
from pathlib import Path

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

with client.chat.completions.stream(model='openai/gpt-5-image-mini',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}]) as stream:
    with Path("stream-events.jsonl").open("w",encoding="utf-8") as log:
        for event in stream:
            payload=event.to_dict(mode="json")
            log.write(json.dumps(payload,ensure_ascii=False)+"\n"); log.flush()
            print(json.dumps(payload,ensure_ascii=False))
    final=stream.get_final_completion()
    save_result(final.to_dict(mode="json"),"stream-result")

Natijalarni olish va saqlash

Ailoot Ultra · OpenAI Chat

json yoki SSE

Barcha tayyor natijalarni saqlash

Qaytarilgan har bir to‘liq javob, fayl va kontent qismini saqlang.

Har bir javob variantini va uning kontenti, vosita chaqiruvlari hamda fikrlash ma’lumotlarini saqlang. SSEda o‘zgarish qismlarini variant va vosita indeksi bo‘yicha yig‘ing, yakuniy tugash sababi va sarf ma’lumotlarini saqlang.

Asl javobni tekshirish kerak bo‘lsa

So‘rov va javob IDlari hamda sarlavhalarini saqlang. Matn vazifasini olish uchun umumiy URL taqdim etilmagan.

Javob maydonlari
MaydonTur
Maydonchoices[].indexTurinteger
Maydonchoices[].message.contentTurstring|null
Maydonchoices[].message.tool_callsTurtool_call[]
Maydonchoices[].message.reasoning_contentTurstring
Maydonchoices[].message.reasoning_detailsTurobject|array
Maydonchoices[].finish_reasonTurstring|null
MaydonusageTurobject
Xatolar va keyingi qadamlar
JavobShartKeyingi qadam
Javob400 · invalid_request_errorShartMajburiy maydonlar, material ifodasi yoki parametr qiymati noto‘g‘riKeyingi qadamYangi yaratish so‘rovidan oldin ko‘rsatilgan maydonlarni tuzating.

Taxalluslar

Model taxalluslari

Ailoot Ultra openai/gpt-5-image-mini

Usul yo‘llari taxalluslari

/v1/images

Chaqirish uchun tegishli ID lar

openai/gpt-5-image-mini

Ailoot Ultra · Rasmlar POST /v1/images/generations openai/gpt-5-image-mini

openai/gpt-5-image-mini

OpenAI /openai/gpt-5-image-mini

Boshlash

GPT-5 Image Mini vizual yaratish va namunalar asosidagi tahrirlar uchun OpenAI ning GPT-5 Mini til imkoniyatlarini GPT Image 1 Mini bilan birlashtiradi. U matn, tasvir va hujjatlarni qabul qilib, matn hamda tasvir qaytaradi; yozma javob ham, vizual artefakt ham kerak bo‘ladigan jarayonlarni qo‘llaydi.

Qabul qilinadigan kirish ma’lumotlari
Matn · Rasmlar
Natijalar
Rasmlar

Ailoot da mavjud · kirish ma’lumotlari va usullar

Ailoot Ultra · Rasmlar POST /v1/images/generations
Kirish
text, image
Chiqish
image
MaydonTurTalabQiymatlar va cheklovlarStandart
MaydonmodelTurstringTalabMajburiyQiymatlar va cheklovlar
openai/gpt-5-image-mini
Standart—
MaydonpromptTurstringTalabMajburiyQiymatlar va cheklovlar
Eng kam uzunlik: 1
Standart—
Maydonaspect_ratioTurstringTalabIxtiyoriyQiymatlar va cheklovlar
1:1, 3:2, 2:3, auto
Standart—
MaydonqualityTurstringTalabIxtiyoriyQiymatlar va cheklovlar
auto, low, medium, high
Standart—
MaydonbackgroundTurstringTalabIxtiyoriyQiymatlar va cheklovlar
auto, transparent, opaque
Standart—
MaydonnTurintegerTalabIxtiyoriyQiymatlar va cheklovlar
Eng kam: 1
Eng ko‘p: 10
Standart—
Maydoninput_referencesTurarrayTalabIxtiyoriyQiymatlar va cheklovlar
Elementlarning eng kam soni: 0
Elementlarning eng ko‘p soni: 16
Standart—
Maydonoutput_compressionTurintegerTalabIxtiyoriyQiymatlar va cheklovlar
Eng kam: 0
Eng ko‘p: 100
Standart—
MaydonproviderTurobjectTalabIxtiyoriyQiymatlar va cheklovlarStandart—
Usul parametrlari va hayot sikli
ParametrParametr talablari
Parametrcontent_typeParametr talablariapplication/json
ParametrrequiredParametr talablarimodel, prompt
Parametrmaterial_typesParametr talablaritext, image

Hayot sikli: synchronous_result_then_owned_library

GET /v1/media/tasks/{task_id} · Amalda qaytarilgan task_id yoki media kutubxonasidagi yozuv

GET /v1/media/assets/{asset_id}/content

GET /v1/media/assets

GET /v1/media/assets/{asset_id}

Tariflar

Yakuniy to‘lov qanday hisoblanadi

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.

Tarif ma’lumotlari so‘rov imkoniyatlarini qo‘shmaydi. Qo‘llab-quvvatlanadigan parametrlar tanlangan usulda ko‘rsatilgan.

Tezkor rejim
Ko‘rsatilmagan Tezkor rejim tanlanganda
Flex rejimi
Ko‘rsatilmagan flex rejimi tanlanganda
Maksimal fikrlash darajasi
Ko‘rsatilmagan Maksimal fikrlash darajasi uchun standart (default) tuzatish qo‘llanganda

Taqqoslash uchun taxminiy tariflar

Sozlamalar bo‘yicha narxlar

Har bir to‘lovni ko‘rsatilgan shartlarga moslang. Har bir muqobil sozlamalar to‘plami uchun bitta tarifdan foydalaning.

SozlamaTariflar jadvaliPrognoz miqdoriTo‘lov
SozlamaTokenlar uchun bazaviy tariflarTariflar jadvaliAsosiy tarifPrognoz miqdori—To‘lov
Kirish · Kirish tokenlari · Faqat taqqoslash uchun taxmin — / 1K token
Chiqish · Chiqish tokenlari · Faqat taqqoslash uchun taxmin — / 1K token
Kirish · Keshdan o‘qish · Faqat taqqoslash uchun taxmin — / 1K token
Kirish · Keshga yozish · Faqat taqqoslash uchun taxmin — / 1K token
Kirish · Keshga yozish, 1 soat · Faqat taqqoslash uchun taxmin — / 1K token
SozlamaYaratishning taxminiy qiymatiTariflar jadvali—Prognoz miqdoribir generatsiya uchun taxminTo‘lov
Chiqish · Yaratishning taxminiy narxi · Faqat taqqoslash uchun taxmin $0.065536 yaratishdan oldingi taxmin

Bu taxmin qo‘shimcha to‘lov ham, tugallangan generatsiya uchun qat’iy tarif ham emas.

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. Summani band qilish va to‘lovni hisoblash tartibi →

So‘rov namunalari

Ailoot Ultra · Rasmlar

curl
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p={'model': 'openai/gpt-5-image-mini', 'prompt': 'a red panda astronaut floating in space, studio lighting'}

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import base64, json, os, subprocess
from pathlib import Path
from urllib.parse import urlsplit, urljoin

def save_images(items):
    if not items: raise SystemExit("No completed images; retain the full response")
    for index, item in enumerate(items):
        encoded=item.get("b64_json")
        uri=item.get("url", "")
        if not encoded and uri.startswith("data:image/"):
            header, separator, encoded=uri.partition(",")
            if not separator or ";base64" not in header: raise SystemExit("Unsupported image data URI")
        if encoded:
            raw=base64.b64decode(encoded,validate=True)
        elif uri:
            uri=urljoin("https://api.ailoot.ai",uri)
            parsed=urlsplit(uri)
            if parsed.scheme!="https" or not parsed.netloc or parsed.username or parsed.password:
                raise SystemExit("Invalid returned image URL")
            owned=parsed.netloc=="api.ailoot.ai" and parsed.path.startswith("/v1/media/assets/") and parsed.path.endswith("/content")
            args=["curl","--fail-with-body","--silent","--show-error",uri]
            if owned: args += ["-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"]]
            temporary=Path(f"image-{index}.bin")
            subprocess.run(args+["-o",str(temporary)],check=True)
            raw=temporary.read_bytes()
            temporary.unlink()
        else: raise SystemExit("Image has neither bytes nor URL")
        if not raw: raise SystemExit("Empty image result")
        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"
        Path(f"image-{index}.{ext}").write_bytes(raw)
    print("Every returned image saved; complete response metadata retained")
save_images(json.loads(Path("result.json").read_text())["data"])
PY_RESULT

Natijalarni olish va saqlash

Ailoot Ultra · Rasmlar

Har bir qaytarilgan rasmni yuklab oling yoki uning Base64 kontentini saqlang

  • GET /v1/media/tasks/{task_id}
  • GET /v1/media/assets/{asset_id}/content
  • GET /v1/media/assets
  • GET /v1/media/assets/{asset_id}
Boshqa kontentni o‘qish
O‘zingizga tegishli mavjud materiallarni o‘qish
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o owned-assets.json
# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.
Barcha tayyor natijalarni saqlash

Har bir tayyor rasmni saqlang; har bir qaytarilgan URL dan kontentni oling yoki uning Base64 kontentini dekodlang.

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.

Asl javobni tekshirish kerak bo‘lsa

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.

Javob maydonlari
MaydonTur
MaydoncreatedTur
Maydondata[].urlTur
Maydondata[].b64_jsonTur
MaydonusageTur

Taxalluslar

Model taxalluslari

Ailoot Ultra openai/gpt-5-image-mini

Usul yo‘llari taxalluslari

/v1/images

Chaqirish uchun tegishli ID lar

openai/gpt-5-image-mini

Ailoot Ultra · Anthropic Messages POST /v1/messages openai/gpt-5-image-mini

openai/gpt-5-image-mini

OpenAI /openai/gpt-5-image-mini

Boshlash

GPT-5 Image Mini vizual yaratish va namunalar asosidagi tahrirlar uchun OpenAI ning GPT-5 Mini til imkoniyatlarini GPT Image 1 Mini bilan birlashtiradi. U matn, tasvir va hujjatlarni qabul qilib, matn hamda tasvir qaytaradi; yozma javob ham, vizual artefakt ham kerak bo‘ladigan jarayonlarni qo‘llaydi.

Qabul qilinadigan kirish ma’lumotlari
Matn
Natijalar
json · sse

Ailoot da mavjud · kirish ma’lumotlari va usullar

Ailoot Ultra · Anthropic Messages POST /v1/messages
Kirish
text
Chiqish
json, sse
Chiqish formati
JSON yoki SSE
MaydonTurTalabQiymatlar va cheklovlarStandart
MaydonmodelTurstringTalabMajburiyQiymatlar va cheklovlar
openai/gpt-5-image-mini
Standart—
MaydonmessagesTurmessage[]TalabMajburiyQiymatlar va cheklovlarStandart—
Maydonmessages[].roleTurstringTalabMajburiyQiymatlar va cheklovlar
user, assistant
Standart—
Maydonmessages[].contentTurstringTalabMajburiyQiymatlar va cheklovlarStandart—
Maydonmax_tokensTurintegerTalabMajburiyQiymatlar va cheklovlarStandart—
MaydonstreamTurbooleanTalabIxtiyoriyQiymatlar va cheklovlarStandartfalse
Kirish materiallari birikmalari

Matn · UTF-8 matni

messages[].content satri

Usul parametrlari va hayot sikli
ParametrParametr talablari
Parametrcontent_typeParametr talablariapplication/json
ParametrrequiredParametr talablarimodel, messages, max_tokens
Parametroptional_controlsParametr talablaristream
Parametrmaterial_typesParametr talablaritext
Parametrtext_file_materialParametr talablariHaqiqiy UTF-8 hujjatini o‘qing va uning matnini ko‘rsatilgan kirish yoki xabar kontenti satriga joylashtiring.

Hayot sikli: synchronous_or_streamed

Tariflar

Tarif ma’lumotlari so‘rov imkoniyatlarini qo‘shmaydi. Qo‘llab-quvvatlanadigan parametrlar tanlangan usulda ko‘rsatilgan.

Tezkor rejim
Standart tarif Tezkor rejim tanlanganda
Flex rejimi
Standart tarif flex rejimi tanlanganda
Maksimal fikrlash darajasi
Standart tarif Maksimal fikrlash darajasi uchun standart (default) tuzatish qo‘llanganda

Ailoot tariflari

Sozlamalar bo‘yicha narxlar

Har bir to‘lovni ko‘rsatilgan shartlarga moslang. Har bir muqobil sozlamalar to‘plami uchun bitta tarifdan foydalaning.

SozlamaTariflar jadvaliKontekst tokenlari soni bundan ko‘pKontekst tokenlari soni bundan oshmaydi, chegara kiradiTo‘lov
SozlamaTokenlar uchun bazaviy tariflarTariflar jadvaliAsosiy tarifKontekst tokenlari soni bundan ko‘p—Kontekst tokenlari soni bundan oshmaydi, chegara kiradiYuqori chegara yo‘qTo‘lov
Kirish · Kirish tokenlari $0.005 / 1K token
Chiqish · Chiqish tokenlari $0.004 / 1K token
Kirish · Keshdan o‘qish $0.0005 / 1K token
Kirish · Keshga yozish — / 1K token
Kirish · Keshga yozish, 1 soat — / 1K token
Chiqish · Chiqish rasmi tokenlari $0.016 / 1K rasm tokeni
SozlamaSo‘rov uzunligi bo‘yicha 1-darajaTariflar jadvali—Kontekst tokenlari soni bundan ko‘p0Kontekst tokenlari soni bundan oshmaydi, chegara kiradiYuqori chegara yo‘qTo‘lov
Kirish · Kirish tokenlari $0.005 / 1K token
Chiqish · Chiqish tokenlari $0.004 / 1K token
Kirish · Keshdan o‘qish $0.0005 / 1K token
Kirish · Keshga yozish — / 1K token
Kirish · Keshga yozish, 1 soat — / 1K token

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. Summani band qilish va to‘lovni hisoblash tartibi →

So‘rov namunalari

Ailoot Ultra · Anthropic Messages

To‘liq minimal JSON so‘rov tanasicurl · O‘zingizning UTF-8 hujjatingizdan foydalaningPython · Natijani to‘liq saqlang
{
  "model": "openai/gpt-5-image-mini",
  "max_tokens": 128,
  "messages": [
    {
      "role": "user",
      "content": "Summarize the incident report."
    }
  ],
  "stream": false
}
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'openai/gpt-5-image-mini', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
  -H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'openai/gpt-5-image-mini', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError

api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
    raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
    with urlopen(request, timeout=120) as response:
        raw = response.read()
        Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
    Path('result.json').write_bytes(error.read())
    Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
    raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))

Natijalarni olish va saqlash

Ailoot Ultra · Anthropic Messages

JSON yoki SSE

Barcha tayyor natijalarni saqlash

Qaytarilgan har bir to‘liq javob, fayl va kontent qismini saqlang.

Barcha kontent bloklari, fikrlash imzolari va haqiqiy vosita ishlatish IDlarini saqlang. SSE bloklarining barcha o‘zgarish qismlarini yig‘ing; birinchi matn bloki to‘liq chiqish emas.

Asl javobni tekshirish kerak bo‘lsa

So‘rov va javob IDlari hamda sarlavhalarini saqlang. Matn vazifasini olish uchun umumiy URL taqdim etilmagan.

Javob maydonlari
MaydonTur
MaydonidTurstring
MaydonmodelTurstring
Maydoncontent[]Turtext|thinking|tool_use|other content block
Maydonstop_reasonTurstring|null
MaydonusageTurobject
Xatolar va keyingi qadamlar
JavobShartKeyingi qadam
Javob400 · invalid_request_errorShartMajburiy maydonlar, material ifodasi yoki parametr qiymati noto‘g‘riKeyingi qadamYangi yaratish so‘rovidan oldin ko‘rsatilgan maydonlarni tuzating.

Taxalluslar

Model taxalluslari

Ailoot Ultra openai/gpt-5-image-mini

Usul yo‘llari taxalluslari

/v1/images

Chaqirish uchun tegishli ID lar

openai/gpt-5-image-mini

FAQ · OpenAI: GPT-5 Image Mini
Qanday kirish ma’lumotlari va natijalar mavjud?

POST /v1/chat/completions · openai/gpt-5-image-mini: text → text

POST /v1/images/generations · openai/gpt-5-image-mini: text, image → image

POST /v1/messages · openai/gpt-5-image-mini: text → json, sse

So‘rov qaysi maydonlardan foydalanadi?

POST /v1/chat/completions · openai/gpt-5-image-mini: model, messages, stream, modalities, provider

POST /v1/images/generations · openai/gpt-5-image-mini: model, prompt, aspect_ratio, quality, background, n, input_references, output_compression, provider

POST /v1/messages · openai/gpt-5-image-mini: model, messages, max_tokens, stream

Qanday cheklovlar amal qiladi?

POST /v1/chat/completions · openai/gpt-5-image-mini: messages.min_items: 1

POST /v1/images/generations · openai/gpt-5-image-mini: n.minimum: 1; n.maximum: 10; output_compression.minimum: 0; output_compression.maximum: 100

Batafsil

Ailoot’ni Claude Code, OpenCode, Hermes yoki ilovangizga ulang.

Kompaniya va uning loyihalar portfeli

Kompaniya va uning loyihalar portfeli: millionlab mijozlar; oylik sotuvlar hajmi milliardlarda.

Tokenlarni chegirma bilan xarid qiling.

Muntazam ish uchun obuna chegirmasi. Token xaridiga promokodlar — 50% gacha.

Obuna
Muntazam so‘rovlaringiz uchun chegirmali tarif tanlang.
50% gacha promokod
Xaridda kod kiriting. Narx amaldagi aksiya bilan qayta hisoblanadi.
Tarixdagi xarajatlar
Har so‘rov uchun model, token va summa saqlanadi.

Obuna tanlash · Model narxlarini ko‘rish

API’ni sotadigan mahsulotingizga ulang.

SaaS, ilova va botlar Ailoot ofertasi hamda litsenziya shartnomasiga muvofiq. Qayta sotishga reseller litsenziyasi so‘rang.

Tijorat ilovasi
Xizmatingizning pullik funksiyalariga matn, rasm, video va ovoz yaratishni qo‘shing.
Reseller litsenziyasi
Loyiha tavsifi va kirish sxemasini yuboring. Foydalanish va qayta sotishga yozma shartlarni so‘rang.
Saytdagi hujjatlar
Oferta, litsenziya shartnomasi va ma’lumotlar siyosati ulashdan oldin ochiq.

Reseller litsenziyasini so‘rash · Oferta va litsenziya shartnomasi