OpenAI: GPT-5 Image Mini
GPT-5 Image Mini yhdistää OpenAI:n GPT-5 Minin kielikyvyt GPT Image 1 Minin kuvien generointiin ja viitteiden ohjaamiin muokkauksiin. Se hyväksyy tekstiä, kuvia ja dokumentteja ja palauttaa tekstiä ja kuvia työnkulkuihin, jotka tarvitsevat sekä kirjallisen vastauksen että visuaalisen tuotoksen.
- Ailoot Ultra · OpenAI Chat
POST /v1/chat/completionsopenai/gpt-5-image-mini - Ailoot Ultra · Kuvat
POST /v1/images/generationsopenai/gpt-5-image-mini - Ailoot Ultra · Anthropic Messages
POST /v1/messagesopenai/gpt-5-image-mini
Tietoa mallista
Tämä kuvaus kattaa mallin ominaisuudet. Ailootissa saatavilla olevat syötteet, tulosteet ja asetukset luetellaan alla valitulle menetelmälle.
GPT-5 Image Mini on yhdistetty kieli- ja kuvaprofiili, joka on rakennettu OpenAI:n GPT-5 Mini -mallin ja GPT Image 1 Mini -mallin ympärille. Sen kielikomponentti tulkitsee kirjallista tehtävää ja lähdeaineistoa, ja kuvakomponentti luo tai muokkaa visuaalista sisältöä. Julkaistu profiili korostaa ohjeiden noudattamista, tekstin tuottamista kuvaan ja yksityiskohtaista kuvamuokkausta. Se sopii rajattuun visuaaliseen tehtävänantoon, joka tarvitsee myös tekstin tulkintaa, selityksen tai tukitekstiä.
Yhdistä kirjallinen tehtävä ja visuaalinen tulos
Valmistele tehtävänanto, joka sisältää tavoitellun tuotoksen, aiheen, sommittelun ja tarvittavan tekstin. Kuvaa kuvan käyttötapa, kuten tuotekonsepti, lyhyttä selitystä täydentävä kuvitus tai sivun visuaalinen luonnos. Pyydä kirjalliset ja visuaaliset tuotokset erikseen, jotta konseptin selitys on helppo erottaa itse kuvasta.
Anna esimerkiksi uudelleenkäytettävän vesipullon kuvaus ja pyydä yksinkertaista tuotekuvauskonseptia sekä lyhyttä kuvatekstiä. Määritä näkyvä pullon muoto, tausta, valon suunta ja kuvaan kuuluvat tarkat sanat. Pidä kuvatekstin faktat erillään kuvausympäristön koristeellisista yksityiskohdista. Tarkista palautettu kuva ja kirjallinen teksti suhteessa näihin kahteen tehtävänannon osaan.
Dokumentoitu yhdistelmäprofiili hyväksyy tekstiä, kuvia ja tiedostoja, kuten PDF:iä. Dokumentti voi antaa vaatimuksia tai faktoja tulkittavaksi ennen kuvan luomista. Kuva voi antaa ulkoasun, asettelun tai muokkauksen lähteen. Määritä jokaisen lähteen tehtävä sen sijaan, että olettaisit jokaisen liitteen vaikuttavan tuloksen jokaiseen osaan. Pidä lähdenimet ja järjestys selkeinä, kun syötteitä annetaan useita.
Generoi ja muokkaa viitteiden avulla
Määritä uuteen kuvaan näkyvät asiat ja niiden väliset suhteet. Osoita viitteen ohjaamassa muokkauksessa muutos ja säilytettävät yksityiskohdat. Tuotekuvassa voidaan pyytää uutta ympäristöä säilyttäen esineen tunnistettava muoto ja näkyvä etiketti. Kaaviossa voidaan pyytää korjattua suhdetta ja nimetä säilytettävät tekstit ja elementit.
Profiilin oma julkaistu kortti sallii muokkaukseen enintään kuuttatoista viitekuvaa. Valitse tehtävään vaikuttavat viitteet ja selitä niiden tarkoitus: tuote, hahmo, tausta tai visuaalinen käsittely. Useat viitteet voivat sisältää keskenään ristiriitaista valaistusta tai sommittelua, joten nimeä tavoiteltu tulos selkeästi. Tarkasta kohteen yksityiskohdat, kirjoitus ja pyydetyn muutoksen rajat todellisesta palautetusta kuvasta.
Tekstin tuottaminen kuvaan on dokumentoitu kyky, mutta visuaalinen luonnos tarvitsee silti sanakohtaisen tarkistuksen. Anna tarkka sanamuoto, välimerkit ja sijoittelu ja vertaa sitten tärkeitä merkintöjä ja numeroita tehtävänantoon tavoitellussa katselukoossa. Säilytä toistuvassa sarjassa viitteet ja visuaaliset vaatimukset yhdessä kunkin tuloksen kanssa ja vertaa valmiita kuvia keskenään.
Työskentelykonteksti ja asetukset
Yhdistelmäprofiili julkaisee konteksti-ikkunaksi 400000 tokenia ja vastauksen enimmäispituudeksi 128000 tokenia. Nämä ovat työskentelykontekstin ja vastauksen rajoja, jotka ovat erillään kuvan pikselimitoista tai palautettujen kuvatuotosten määrästä. Järjestä pitkä lähdeaineisto tarvittavan tulkinnan ympärille ja jätä tilaa vastaukselle. Tiivis tehtävänanto olennaisine viitteineen on hyödyllisempi kuin asiaan liittymättömät dokumentit, joiden tehtävää ei ole selitetty.
Sen julkaistu tekstitulosteen määritys tukee JSON-skeeman mukaisia rakenteisia tuloksia. Määritä kentät ja tyypit, kun kirjallinen tulos pitää käyttää sovelluksessa, ja tarkista arvot annettua näyttöä vasten. Yhdistelmäprofiili ei tarjoa sovelluksen funktiokutsuja. Kielikomponentin käyttö kuvageneroinnin kanssa on nimetyn profiilin kyky; se ei tuo jokaista itsenäisen GPT-5 Mini -rajapinnan toimintoa tähän työnkulkuun.
Kuva-asetusten tulee perustua käytettävään täsmälliseen profiiliin ja rajapintaan. Säilytä valittu määritys yhdessä kehotteen kanssa versioita vertaillessasi. Suoralla GPT Image 1 Mini -komponentilla ja yhdistetyllä keskusteluprofiililla on erilaiset pyyntörakenteet, joten komponenttikohtaiset koko-, maskaus- tai tulosohjaimet tarvitsevat selkeän vastaavuuden ennen niiden käsittelyä tämän yhdistelmäprofiilin asetuksina.
Säilytä teksti- ja kuvatuotokset
Dokumentoitu keskustelupyynnön skeema voi valita text- ja image-tulostemuodot. Käsittele palautettu teksti ja jokainen vastaukseen liittyvä todellinen kuvatuotos. Tallenna kuvat tuloksen ilmoittamassa muodossa ja säilytä kirjallinen vastaus yhdessä kehotteen, lähdeviitteiden ja asetusten kanssa. Pelkän selittävän tekstin sisältävä vastaus eroaa valmiista visuaalisesta tuotoksesta, joten tarkista tuloksen todellinen sisältö ennen sen käyttöä asettelussa.
GPT-5 Image Mini eroaa täydestä GPT-5 Image -profiilista, joka yhdistää GPT-5:n ja GPT Image 1:n. Käytä Mini-profiilia rajattuihin kieli- ja kuvatehtäviin, joiden tehtävänanto ja tarkistuskriteerit ovat selkeät. Tarkista sommittelu, esineen tunnistettavuus, kuvan teksti ja tukiteksti ja pyydä sitten tarvittavaa täsmällistä korjausta. Säilytä onnistuneet elementit ja olennaiset viitteet seuraavassa tehtävänannossa, jotta muokkauksella on konkreettinen tavoite.
Käytännön tehtävä
Käytännön tehtävä
Tekninen esimerkki englanniksi
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.Odotettu tulos
One image artifact showing the full specified bottle, left-side daylight and the exact single-word label.Tarkista tulos
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-miniAloitus
GPT-5 Image Mini yhdistää OpenAI:n GPT-5 Minin kielikyvyt GPT Image 1 Minin kuvien generointiin ja viitteiden ohjaamiin muokkauksiin. Se hyväksyy tekstiä, kuvia ja dokumentteja ja palauttaa tekstiä ja kuvia työnkulkuihin, jotka tarvitsevat sekä kirjallisen vastauksen että visuaalisen tuotoksen.
- Hyväksytyt syötteet
- Teksti
- Tulokset
- Teksti
Saatavilla Ailootissa · syötteet & menetelmät
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
- Syötetyypit
text- Tulostyypit
text- Tulosteen muoto
- json tai SSE
| Kenttä | Tyyppi | Vaatimus | Arvot & rajat | Oletus |
|---|---|---|---|---|
Kenttämodel | Tyyppistring | VaatimusPakollinen | Arvot & rajat openai/gpt-5-image-mini | Oletus— |
Kenttämessages | Tyyppimessage[] | VaatimusPakollinen | Arvot & rajat Kohteiden vähimmäismäärä: 1 | Oletus— |
Kenttämessages[].role | Tyyppistring | VaatimusPakollinen | Arvot & rajat Esimerkit: system, user, assistant, tool, function Ehdot: Nämä roolit esitetään nimenomaisesti lähdekoodin yhteensopivuustyypeissä; mallin täsmällinen roolijoukko pysyy mallikohtaisena. Riippuu mallista | Oletus— |
Kenttämessages[].content | Tyyppistring|content_part[]|null | VaatimusValinnainen | Arvot & rajat | Oletus— |
Kenttämessages[].tool_calls | Tyyppitool_call[] | VaatimusValinnainen | Arvot & rajat | Oletus— |
Kenttämessages[].tool_call_id | Tyyppistring | VaatimusValinnainen | Arvot & rajat Sovelletaan, kun: role=tool; käytä todella palautettua ID:tä | Oletus— |
Kenttämessages[].name | Tyyppistring | VaatimusValinnainen | Arvot & rajat | Oletus— |
Kenttämessages[].reasoning_content | Tyyppistring | VaatimusValinnainen | Arvot & rajat Sovelletaan, kun: Palauta todella saatu päättely takaisin mallille, kun kyseinen malli käyttää sitä | Oletus— |
Kenttämessages[].reasoning_details | Tyyppiobject|array | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
Kenttämax_tokens | Tyyppiinteger | VaatimusValinnainen | Arvot & rajat Vähimmäismäärä: 1 Riippuu mallista | Oletus— |
Kenttämax_completion_tokens | Tyyppiinteger | VaatimusValinnainen | Arvot & rajat Vähimmäismäärä: 1 Riippuu mallista | Oletus— |
Kenttästream | Tyyppiboolean | VaatimusValinnainen | Arvot & rajat | Oletusfalse |
Kenttästream_options.include_usage | Tyyppiboolean | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
Kenttätemperature | Tyyppinumber | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
Kenttätop_p | Tyyppinumber | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
Kenttästop | Tyyppistring|string[] | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
Kenttätools | Tyyppifunction_tool[] | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
Kenttätools[].type | Tyyppistring | VaatimusValinnainen | Arvot & rajat function Riippuu mallista | Oletus— |
Kenttätools[].function.name | Tyyppistring | VaatimusPakollinen | Arvot & rajat Sovelletaan, kun: funktiotyökalu annettu | Oletus— |
Kenttätools[].function.description | Tyyppistring | VaatimusValinnainen | Arvot & rajat | Oletus— |
Kenttätools[].function.parameters | TyyppiJSON_schema | VaatimusValinnainen | Arvot & rajat | Oletus— |
Kenttätool_choice | Tyyppistring|object | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
Kenttäparallel_tool_calls | Tyyppiboolean | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
Kenttäresponse_format | Tyyppiobject | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
Kenttäreasoning_effort | Tyyppistring | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
Kenttäreasoning | Tyyppiobject | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
Kenttäservice_tier | Tyyppistring | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
Kenttäinstructions | Tyyppistring | VaatimusValinnainen | Arvot & rajat Yhteensopivuuskenttä | Oletus— |
Kenttäfunctions | Tyyppifunction[] | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
Kenttäfunction_call | Tyyppistring|object | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
Kenttäprompt_cache_options | Tyyppiobject | VaatimusValinnainen | Arvot & rajat Riippuu mallista | Oletus— |
Kenttämodalities | Tyyppistring[] | VaatimusValinnainen | Arvot & rajat text | Oletus— |
Kenttäprovider | Tyyppiobject | VaatimusValinnainen | Arvot & rajat Ehdot: provider.options hylätään tällä Ultran tekstireitillä | Oletus— |
Kenttäcache_control.ttl | Tyyppistring | VaatimusValinnainen | Arvot & rajat Ehdot: 1h hylätään varsinaisissa kehotevälimuistin kohdissa | Oletus— |
Syöteaineistojen yhdistelmät
Teksti · UTF8-teksti
messages[].content
Menetelmän parametrit ja elinkaari
| Parametri | Sopimus |
|---|---|
Parametricontent_type | Sopimusapplication/json |
Parametrirequired | Sopimusmodel, messages |
Parametrimaterial_types | Sopimustext |
Parametrimessages | Sopimusviestitaulukko role/content-rakenteella |
Parametrifile_material | Sopimusvarsinainen UTF-8-asiakirja lisätään sellaisenaan tekstinä; tiedoston ID:tä ei päätellä |
Parametrioptional_controls | Sopimusstream, temperature, top_p, stop, max_tokens, max_completion_tokens, reasoning, response_format, tools, tool_choice |
Parametricontrol_scope | Sopimusmallikohtainen; käyttäjän funktiotyökalut eroavat palvelun isännöimistä työkaluista |
Parametrioutput_modalities | Sopimustext |
Parametrihosted_operations | Sopimusfalse |
Parametrimultimodal_input_binding | Sopimusnull |
Elinkaari: synchronous_or_streamed
Lähetä mallin täsmällinen ID yhdessä messages-kentän kanssa.
Kontekstin pituus ei ole tuloksen yläraja.
Tekstitiedosto voi antaa tekstiä sellaisenaan; kuva-, ääni- ja tiedosto-objektisyötteet tarvitsevat täsmällisen sidonnan.
Hinnoittelu
Hintatiedot eivät lisää pyyntövalintoja. Tuetut parametrit on lueteltu valitulle menetelmälle.
- Nopea tila
- Vakiohinta Kun nopea tila on valittu
- Flex-tila
- Vakiohinta Kun flex-tila on valittu
- Päättelyn enimmäisteho
- Vakiohinta Kun päättelyn enimmäistehoon sovelletaan default-oletussäätöä
Ailoot-hinnat
Hinnat asetusten mukaan
Kohdista kukin veloitus näytettyihin ehtoihin. Käytä yhtä hintaa kutakin vaihtoehtoisten asetusten ryhmää kohden.
| Asetukset | Hinnasto | Kontekstin tokenit, enemmän kuin | Kontekstin tokenit, enintään raja-arvo mukaan lukien | Veloitus |
|---|---|---|---|---|
| AsetuksetTokenien perushinnat | HinnastoPerushinta | Kontekstin tokenit, enemmän kuin— | Kontekstin tokenit, enintään raja-arvo mukaan lukienEi ylärajaa | Veloitus Syöte · Syötetokenit $0.005 / 1K tokenia Tuloste · Tulostokenit $0.004 / 1K tokenia Syöte · Välimuistin luku $0.0005 / 1K tokenia Syöte · Välimuistiin kirjoitus — / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti — / 1K tokenia Tuloste · Kuvatulosteen tokenit $0.016 / 1K kuvatokenia |
| AsetuksetPyynnön pituusluokka 1 | Hinnasto— | Kontekstin tokenit, enemmän kuin0 | Kontekstin tokenit, enintään raja-arvo mukaan lukienEi ylärajaa | Veloitus Syöte · Syötetokenit $0.005 / 1K tokenia Tuloste · Tulostokenit $0.004 / 1K tokenia Syöte · Välimuistin luku $0.0005 / 1K tokenia Syöte · Välimuistiin kirjoitus — / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti — / 1K tokenia |
Viitehinnaston tiedot
Mallitason viitehinnastot eivät muuta menetelmän valintaa, hinta-arvioita tai veloituksia. Käytössä olevat veloitukset käyttävät valitun Ailoot-menetelmän hintoja.
OpenAI: GPT-5 Image Mini
Hinnat asetusten mukaan
| Asetukset | Laskutusehdot | Veloitus |
|---|---|---|
| AsetuksetOpenAI: GPT-5 Image Mini · Oletusasetukset | LaskutusehdotOletuskokoonpano | Veloitus Syöte · Syötetokenit 0,005 $ / 1K tokenia Tuloste · Tulostokenit 0,004 $ / 1K tokenia Tuloste · Kuvatuloste 0,016 $ / 1K tokenia Tuloste · Verkkohaku 0,02 $ hakua kohden Syöte · Välimuistin luku 0,0005 $ / 1K tokenia |
Ailoot varaa arvioidun summan ennen pyyntöä. Tuloksen jälkeen lopullinen veloitus toteutetaan mitatun käytön perusteella. Suoratoiston veloituksessa käytetään lopullista käyttötietuetta. Varauksen ja lopullisen veloituksen toiminta →
Esimerkkipyynnöt
Ailoot Ultra · OpenAI Chat
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")
Vastaanota ja tallenna tulokset
Ailoot Ultra · OpenAI Chat
json tai SSE
Säilytä kaikki valmistuneet tulokset
Säilytä jokainen kokonainen palautettu vastaus, tiedosto ja sisällön osa.
Säilytä jokainen vastausvaihtoehto sisältöineen, työkalukutsuineen ja päättelyineen. Kokoa SSE:ssä muutokset vastausvaihtoehdon ja työkalun indeksin mukaan ja säilytä lopullinen päättymissyy sekä käyttötiedot.
Jos alkuperäinen vastaus on tarkistettava
Säilytä pyyntöjen/vastausten ID:t ja otsakkeet. Yleistä tekstityön haku-URL:ää ei anneta.
Vastauksen kentät
| Kenttä | Tyyppi |
|---|---|
Kenttächoices[].index | Tyyppiinteger |
Kenttächoices[].message.content | Tyyppistring|null |
Kenttächoices[].message.tool_calls | Tyyppitool_call[] |
Kenttächoices[].message.reasoning_content | Tyyppistring |
Kenttächoices[].message.reasoning_details | Tyyppiobject|array |
Kenttächoices[].finish_reason | Tyyppistring|null |
Kenttäusage | Tyyppiobject |
Virheet ja seuraavat vaiheet
| Vastaus | Ehto | Seuraava vaihe |
|---|---|---|
Vastaus400 · invalid_request_error | EhtoVirheelliset pakolliset kentät, aineiston esitysmuoto tai parametrin arvo | Seuraava vaiheKorjaa ilmoitetut kentät ennen uutta luontipyyntöä. |
Aliakset
Mallin aliakset
Ailoot Ultra openai/gpt-5-image-mini
Menetelmäpolkujen aliakset
/v1/images
Liittyvät kutsujan ID:t
Ailoot Ultra · Kuvat POST /v1/images/generations openai/gpt-5-image-mini
openai/gpt-5-image-miniAloitus
GPT-5 Image Mini yhdistää OpenAI:n GPT-5 Minin kielikyvyt GPT Image 1 Minin kuvien generointiin ja viitteiden ohjaamiin muokkauksiin. Se hyväksyy tekstiä, kuvia ja dokumentteja ja palauttaa tekstiä ja kuvia työnkulkuihin, jotka tarvitsevat sekä kirjallisen vastauksen että visuaalisen tuotoksen.
- Hyväksytyt syötteet
- Teksti · Kuvat
- Tulokset
- Kuvat
Saatavilla Ailootissa · syötteet & menetelmät
Ailoot Ultra · Kuvat POST /v1/images/generations
- Syötetyypit
text,image- Tulostyypit
image
| Kenttä | Tyyppi | Vaatimus | Arvot & rajat | Oletus |
|---|---|---|---|---|
Kenttämodel | Tyyppistring | VaatimusPakollinen | Arvot & rajat openai/gpt-5-image-mini | Oletus— |
Kenttäprompt | Tyyppistring | VaatimusPakollinen | Arvot & rajat Vähimmäispituus: 1 | Oletus— |
Kenttäaspect_ratio | Tyyppistring | VaatimusValinnainen | Arvot & rajat 1:1, 3:2, 2:3, auto | Oletus— |
Kenttäquality | Tyyppistring | VaatimusValinnainen | Arvot & rajat auto, low, medium, high | Oletus— |
Kenttäbackground | Tyyppistring | VaatimusValinnainen | Arvot & rajat auto, transparent, opaque | Oletus— |
Kenttän | Tyyppiinteger | VaatimusValinnainen | Arvot & rajat Vähimmäismäärä: 1 Enimmäismäärä: 10 | Oletus— |
Kenttäinput_references | Tyyppiarray | VaatimusValinnainen | Arvot & rajat Kohteiden vähimmäismäärä: 0 Kohteiden enimmäismäärä: 16 | Oletus— |
Kenttäoutput_compression | Tyyppiinteger | VaatimusValinnainen | Arvot & rajat Vähimmäismäärä: 0 Enimmäismäärä: 100 | Oletus— |
Kenttäprovider | Tyyppiobject | VaatimusValinnainen | Arvot & rajat | Oletus— |
Menetelmän parametrit ja elinkaari
| Parametri | Sopimus |
|---|---|
Parametricontent_type | Sopimusapplication/json |
Parametrirequired | Sopimusmodel, prompt |
Parametrimaterial_types | Sopimustext, image |
Elinkaari: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · todellisuudessa palautettu task_id tai mediakirjaston tietue
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Hinnoittelu
Lopullisen veloituksen laskenta
Näytettyjen hintojen avulla arvioidaan kustannukset ennen generointia. Lopullinen veloitus lasketaan alkuperäiselle generoinnille kirjatun kustannuksen perusteella. Lopullisena laskutettavana määränä ei käytetä tulosteen mitattua kestoa eikä ennustettuja määriä.
Hintatiedot eivät lisää pyyntövalintoja. Tuetut parametrit on lueteltu valitulle menetelmälle.
- Nopea tila
- Ei määritetty Kun nopea tila on valittu
- Flex-tila
- Ei määritetty Kun flex-tila on valittu
- Päättelyn enimmäisteho
- Ei määritetty Kun päättelyn enimmäistehoon sovelletaan default-oletussäätöä
Arvioidut vertailuhinnat
Hinnat asetusten mukaan
Kohdista kukin veloitus näytettyihin ehtoihin. Käytä yhtä hintaa kutakin vaihtoehtoisten asetusten ryhmää kohden.
| Asetukset | Hinnasto | Ennustettu määrä | Veloitus |
|---|---|---|---|
| AsetuksetTokenien perushinnat | HinnastoPerushinta | Ennustettu määrä— | Veloitus Syöte · Syötetokenit · Arvio vain vertailua varten — / 1K tokenia Tuloste · Tulostokenit · Arvio vain vertailua varten — / 1K tokenia Syöte · Välimuistin luku · Arvio vain vertailua varten — / 1K tokenia Syöte · Välimuistiin kirjoitus · Arvio vain vertailua varten — / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti · Arvio vain vertailua varten — / 1K tokenia |
| AsetuksetArvioitu luontikustannus | Hinnasto— | Ennustettu määräyhden generoinnin arvio | Veloitus Tuloste · Arvioidut generointikustannukset · Arvio vain vertailua varten $0.065536 arvio ennen generointia Tämä arvio ei ole lisämaksu eikä valmistuneen generoinnin kiinteä hinta. |
Ailoot varaa arvioidun summan ennen pyyntöä. Tuloksen jälkeen lopullinen veloitus toteutetaan mitatun käytön perusteella. Suoratoiston veloituksessa käytetään lopullista käyttötietuetta. Varauksen ja lopullisen veloituksen toiminta →
Esimerkkipyynnöt
Ailoot Ultra · Kuvat
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
Vastaanota ja tallenna tulokset
Ailoot Ultra · Kuvat
Lataa jokainen palautettu kuva tai tallenna sen Base64-sisältö
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Muut sisällön lukukerrat
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.
Säilytä kaikki valmistuneet tulokset
Tallenna jokainen valmistunut kuva; nouda jokainen palautettu URL tai pura sen Base64-sisältö.
Säilytä koko vastaus ja otsakkeet, jokainen todellinen tuloste, alkuperäiset palautetut tunnisteet ja kaikki käyttötietokentät. Selvitä alkuperäisen operaation tila lähettämättä luontipyyntöä uudelleen.
Jos alkuperäinen vastaus on tarkistettava
Säilytä palautettu X-Client-Request-ID täsmäytystä varten. Tee lukukyselyt vain todellisuudessa palautetuilla task_id/asset_id-arvoilla tai käytä omistamaasi mediakirjastoa; älä koskaan rakenna tehtävän URL-osoitetta operaation ID:n perusteella äläkä lähetä luontipyyntöä uudelleen.
Vastauksen kentät
| Kenttä | Tyyppi |
|---|---|
Kenttäcreated | Tyyppi |
Kenttädata[].url | Tyyppi |
Kenttädata[].b64_json | Tyyppi |
Kenttäusage | Tyyppi |
Aliakset
Mallin aliakset
Ailoot Ultra openai/gpt-5-image-mini
Menetelmäpolkujen aliakset
/v1/images
Liittyvät kutsujan ID:t
Ailoot Ultra · Anthropic Messages POST /v1/messages openai/gpt-5-image-mini
openai/gpt-5-image-miniAloitus
GPT-5 Image Mini yhdistää OpenAI:n GPT-5 Minin kielikyvyt GPT Image 1 Minin kuvien generointiin ja viitteiden ohjaamiin muokkauksiin. Se hyväksyy tekstiä, kuvia ja dokumentteja ja palauttaa tekstiä ja kuvia työnkulkuihin, jotka tarvitsevat sekä kirjallisen vastauksen että visuaalisen tuotoksen.
- Hyväksytyt syötteet
- Teksti
- Tulokset
- json · sse
Saatavilla Ailootissa · syötteet & menetelmät
Ailoot Ultra · Anthropic Messages POST /v1/messages
- Syötetyypit
text- Tulostyypit
json,sse- Tulosteen muoto
- JSON tai SSE
| Kenttä | Tyyppi | Vaatimus | Arvot & rajat | Oletus |
|---|---|---|---|---|
Kenttämodel | Tyyppistring | VaatimusPakollinen | Arvot & rajat openai/gpt-5-image-mini | Oletus— |
Kenttämessages | Tyyppimessage[] | VaatimusPakollinen | Arvot & rajat | Oletus— |
Kenttämessages[].role | Tyyppistring | VaatimusPakollinen | Arvot & rajat user, assistant | Oletus— |
Kenttämessages[].content | Tyyppistring | VaatimusPakollinen | Arvot & rajat | Oletus— |
Kenttämax_tokens | Tyyppiinteger | VaatimusPakollinen | Arvot & rajat | Oletus— |
Kenttästream | Tyyppiboolean | VaatimusValinnainen | Arvot & rajat | Oletusfalse |
Syöteaineistojen yhdistelmät
Teksti · UTF-8-teksti
messages[].content-merkkijono
Menetelmän parametrit ja elinkaari
| Parametri | Sopimus |
|---|---|
Parametricontent_type | Sopimusapplication/json |
Parametrirequired | Sopimusmodel, messages, max_tokens |
Parametrioptional_controls | Sopimusstream |
Parametrimaterial_types | Sopimustext |
Parametritext_file_material | SopimusLue varsinainen UTF-8-asiakirja ja sijoita sen teksti ilmoitettuun syöte- tai viestisisällön merkkijonoon. |
Elinkaari: synchronous_or_streamed
Hinnoittelu
Hintatiedot eivät lisää pyyntövalintoja. Tuetut parametrit on lueteltu valitulle menetelmälle.
- Nopea tila
- Vakiohinta Kun nopea tila on valittu
- Flex-tila
- Vakiohinta Kun flex-tila on valittu
- Päättelyn enimmäisteho
- Vakiohinta Kun päättelyn enimmäistehoon sovelletaan default-oletussäätöä
Ailoot-hinnat
Hinnat asetusten mukaan
Kohdista kukin veloitus näytettyihin ehtoihin. Käytä yhtä hintaa kutakin vaihtoehtoisten asetusten ryhmää kohden.
| Asetukset | Hinnasto | Kontekstin tokenit, enemmän kuin | Kontekstin tokenit, enintään raja-arvo mukaan lukien | Veloitus |
|---|---|---|---|---|
| AsetuksetTokenien perushinnat | HinnastoPerushinta | Kontekstin tokenit, enemmän kuin— | Kontekstin tokenit, enintään raja-arvo mukaan lukienEi ylärajaa | Veloitus Syöte · Syötetokenit $0.005 / 1K tokenia Tuloste · Tulostokenit $0.004 / 1K tokenia Syöte · Välimuistin luku $0.0005 / 1K tokenia Syöte · Välimuistiin kirjoitus — / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti — / 1K tokenia Tuloste · Kuvatulosteen tokenit $0.016 / 1K kuvatokenia |
| AsetuksetPyynnön pituusluokka 1 | Hinnasto— | Kontekstin tokenit, enemmän kuin0 | Kontekstin tokenit, enintään raja-arvo mukaan lukienEi ylärajaa | Veloitus Syöte · Syötetokenit $0.005 / 1K tokenia Tuloste · Tulostokenit $0.004 / 1K tokenia Syöte · Välimuistin luku $0.0005 / 1K tokenia Syöte · Välimuistiin kirjoitus — / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti — / 1K tokenia |
Ailoot varaa arvioidun summan ennen pyyntöä. Tuloksen jälkeen lopullinen veloitus toteutetaan mitatun käytön perusteella. Suoratoiston veloituksessa käytetään lopullista käyttötietuetta. Varauksen ja lopullisen veloituksen toiminta →
Esimerkkipyynnöt
Ailoot Ultra · Anthropic Messages
{
"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))
Vastaanota ja tallenna tulokset
Ailoot Ultra · Anthropic Messages
JSON tai SSE
Säilytä kaikki valmistuneet tulokset
Säilytä jokainen kokonainen palautettu vastaus, tiedosto ja sisällön osa.
Säilytä kaikki sisältölohkot, päättelyallekirjoitukset ja todelliset työkalukäytön ID:t. Kokoa kaikki SSE-lohkomuutokset; ensimmäinen tekstilohko ei ole koko tulos.
Jos alkuperäinen vastaus on tarkistettava
Säilytä pyyntöjen/vastausten ID:t ja otsakkeet. Yleistä tekstityön haku-URL:ää ei anneta.
Vastauksen kentät
| Kenttä | Tyyppi |
|---|---|
Kenttäid | Tyyppistring |
Kenttämodel | Tyyppistring |
Kenttäcontent[] | Tyyppitext|thinking|tool_use|other content block |
Kenttästop_reason | Tyyppistring|null |
Kenttäusage | Tyyppiobject |
Virheet ja seuraavat vaiheet
| Vastaus | Ehto | Seuraava vaihe |
|---|---|---|
Vastaus400 · invalid_request_error | EhtoVirheelliset pakolliset kentät, aineiston esitysmuoto tai parametrin arvo | Seuraava vaiheKorjaa ilmoitetut kentät ennen uutta luontipyyntöä. |
Aliakset
Mallin aliakset
Ailoot Ultra openai/gpt-5-image-mini
Menetelmäpolkujen aliakset
/v1/images
Liittyvät kutsujan ID:t
FAQ · OpenAI: GPT-5 Image Mini
- Mitä syötteitä ja tuloksia on saatavilla?
POST /v1/chat/completions·openai/gpt-5-image-mini:text→textPOST /v1/images/generations·openai/gpt-5-image-mini:text,image→imagePOST /v1/messages·openai/gpt-5-image-mini:text→json,sse- Mitä kenttiä pyyntö käyttää?
POST /v1/chat/completions·openai/gpt-5-image-mini:model,messages,stream,modalities,providerPOST /v1/images/generations·openai/gpt-5-image-mini:model,prompt,aspect_ratio,quality,background,n,input_references,output_compression,providerPOST /v1/messages·openai/gpt-5-image-mini:model,messages,max_tokens,stream- Mitä rajoja sovelletaan?
POST /v1/chat/completions·openai/gpt-5-image-mini:messages.min_items:1POST /v1/images/generations·openai/gpt-5-image-mini:n.minimum:1;n.maximum:10;output_compression.minimum:0;output_compression.maximum:100