GPT Image 2.5 Flare 2026-09-08
GPT Image 2.5 Flare er laget for daglig bildegenerering fra beskrivelser. Egendefinerte størrelser, et utvidet sett med kvalitetsnivåer og gjennomsiktig bakgrunn er tilgjengelige.
Om modellen
Denne beskrivelsen dekker modellens funksjoner. Tilgjengelige inndata, utdata og alternativer i Ailoot er oppført nedenfor for den valgte metoden.
Daglig generering fra tekstbeskrivelser
GPT Image 2.5 Flare er en OpenAI-modell for bildegenerering. Ifølge produsenten er den laget for rask, daglig generering av visuelt materiale med høy kvalitet. Oppgaven kan beskrive motiv, stil, detaljplassering og ønsket bildeform; resultatet er et bilde.
I Ailoot tilbyr dette kortet generering med tekst som inndata. OpenAI beskriver også arbeid med kildebilder, referanser og redigering. Dette krever støtte for inndatabilder og innebærer ikke at tekstmetoden allerede tar imot slikt materiale.
Kvalitet fra utkast til detaljert bilde
Nivåene low, medium, high, xhigh, max og automatisk valg med auto støttes. Kvalitetsinnstillingen påvirker arbeidsomfanget under resultatgenereringen. Den angis separat fra bildestørrelsen og komprimeringen av den ferdige filen.
Kvadratiske, liggende og stående størrelser, automatisk valg og egendefinerte størrelser er tilgjengelige. Sideforholdene kan tilpasses komposisjonen så lenge alle produsentens begrensninger følges.
Egendefinerte størrelser
Hver side skal være delelig med 16 piksler og høyst 3840 piksler lang. Forholdet mellom den lengste og korteste siden skal være høyst 3:1. Tillatt areal er fra 655 360 til 8 294 400 piksler. Begrensningene gjelder samlet: et tillatt sideforhold opphever ikke arealgrensen.
Oppløsninger over 2560x1440 er merket som eksperimentelle. Ved valg av et stort bilde er selve komposisjonen viktig: flere piksler garanterer ikke feilfri plassering av alle elementene.
Resultatfil og gjennomsiktighet
Modellen tilbyr PNG, JPEG og WebP; standardformatet er PNG. Komprimeringen kan styres for JPEG og WebP. Gjennomsiktig bakgrunn krever PNG eller WebP. Produsenten støtter også ugjennomsiktig bakgrunn og automatisk valg. Gjennomsiktighet gjør det mulig å bruke bildet i en videre komposisjon uten en bestemt bakgrunnsflate.
Produsentens innstillinger beskriver modellens funksjoner; utførelsen avhenger av parameterstøtten i valgt metode. En separat generering lager et nytt resultat, så en identisk beskrivelse garanterer ikke at bildene samsvarer fullt.
Hva som bør kontrolleres i det ferdige bildet
Ifølge OpenAI kan behandling av en krevende oppgave ta opptil to minutter. Dette beskriver genereringen hos produsenten, ikke en garanti for den samlede tiden frem til resultatet mottas i et konkret program.
Tekst, nøyaktig objektplassering og bevaring av samme utseende mellom bilder krever kontroll. En maske i en separat støttet redigeringsoperasjon angir retningen for endringen, ikke en absolutt grense. Ved bildegenerering fra tekst er det nyttig å beskrive komposisjonen presist og kontrollere selve filen: synlige detaljer, lesbarhet og samsvar med det angitte motivet.
Ailoot · Bilder POST /v1/images/generations gpt-image-2.5-flare-2026-09-08
gpt-image-2.5-flare-2026-09-08
gpt-image-2.5-flare-2026-09-08Start
GPT Image 2.5 Flare er laget for daglig bildegenerering fra beskrivelser. Egendefinerte størrelser, et utvidet sett med kvalitetsnivåer og gjennomsiktig bakgrunn er tilgjengelige.
- Godkjente inndata
- Tekst
- Resultater
- Bilder
Tilgjengelig i Ailoot · inndata & metoder
Ailoot · Bilder POST /v1/images/generations
- Inndatatyper
text- Utdatatyper
image- Utdataformat
- Bildefil
| Felt | Type | Krav | Verdier & grenser | Standard |
|---|---|---|---|---|
Feltmodel | Typestring | KravPåkrevd | Verdier & grenser gpt-image-2.5-flare-2026-09-08 | Standard— |
Feltprompt | Typestring | KravPåkrevd | Verdier & grenser Minste lengde: 1 | Standard— |
Feltn | Typeinteger | KravValgfritt | Verdier & grenser Minimum: 1 | Standard1 |
Feltresponse_format | Typestring | KravValgfritt | Verdier & grenser url, b64_json | Standard— |
Feltstream | Typeboolean | KravValgfritt | Verdier & grenser | Standardfalse |
Feltsize | Typestring | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
Feltquality | Typestring | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
Feltbackground | Typestring | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
Feltoutput_format | Typestring | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
Feltoutput_compression | Typeinteger | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
Feltmoderation | Typestring | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
Feltinput_fidelity | Typestring | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
Feltstyle | Typestring | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
Feltpartial_images | Typeinteger | KravValgfritt | Verdier & grenser Avhenger av modellen | Standard— |
Kombinasjoner av inngående materialer
Tekst til bilde · Påkrevd: prompt
Metodeparametere og livssyklus
| Parameter | Avtale |
|---|---|
Parametermaterial_types | Avtaletext |
Parameterrequired | Avtalemodel, prompt |
Parameteroptional_controls | Avtalenull |
Parametercontent_type | Avtaleapplication/json |
Livssyklus: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · faktisk returnert task_id eller oppføring i mediebiblioteket
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Metodestrukturer og ID-er er eksakte; leverandørens evne er adskilt fra godkjenning av forespørselen.
Priser
Satser for Ailoot-metoder
POST /v1/images/generations- Tekstinndata
- 0,005 USD / 1K
- Inndata, bilde
- 0,008 USD / 1K tokens
- Utdata, bilde
- 0,03 USD / 1K tokens
Ailoot reserverer et estimert beløp før en forespørsel. Etter resultatet gjøres det endelige beløpet opp basert på målt forbruk. Oppgjør for strømming bruker den endelige forbruksposten. Slik fungerer reservasjon og oppgjør →
Eksempelforespørsler
Ailoot · Bilder
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
export AILOOT_API_KEY
: "${AILOOT_PROMPT_FILE:?Set your actual UTF-8 image brief}"
export AILOOT_PROMPT_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "gpt-image-2.5-flare-2026-09-08", "prompt": ""}')
f=Path(os.environ["AILOOT_PROMPT_FILE"])
if not f.is_file():raise SystemExit("Choose your actual UTF-8 brief")
p['prompt']=f.read_text(encoding="utf-8")
if not p['prompt'].strip():raise SystemExit("Brief must contain text")
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
from openai import OpenAI
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")
f=Path(os.environ["AILOOT_PROMPT_FILE"])
if not f.is_file():raise SystemExit("Set your actual UTF-8 image brief file")
request={'model': 'gpt-image-2.5-flare-2026-09-08', 'prompt': ''}
request["prompt"]=f.read_text(encoding="utf-8")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.images.generate(**request)
Path("sdk-result.txt").write_text(str(result),encoding="utf-8")
save_images([{"b64_json":getattr(item,"b64_json",None),"url":getattr(item,"url",None)} for item in result.data])
import OpenAI from "openai";
import { readFileSync, writeFileSync } from "node:fs";
const key=process.env.AILOOT_API_KEY;
if(!key) throw new Error("Set your actual Ailoot API key");
const client=new OpenAI({baseURL:"https://api.ailoot.ai/v1",apiKey:key,maxRetries:0});
const request={"model": "gpt-image-2.5-flare-2026-09-08", "prompt": ""};
if(!process.env.AILOOT_PROMPT_FILE)throw new Error("Set your actual UTF-8 image brief file");
request.prompt=readFileSync(process.env.AILOOT_PROMPT_FILE,"utf8");
const result=await client.images.generate(request);
writeFileSync("sdk-result.json",JSON.stringify(result,null,2));
if(!result.data?.length) throw new Error("No completed images");
for(let index=0;index<result.data.length;index++) {
const item=result.data[index];let encoded=item.b64_json,uri=item.url||"",raw;
if(!encoded && uri.startsWith("data:image/")) {
const comma=uri.indexOf(",");if(comma<0 || !uri.slice(0,comma).includes(";base64")) throw new Error("Unsupported image data URI");
encoded=uri.slice(comma+1);
}
if(encoded) {
if(encoded.length%4!==0 || !/^[A-Za-z0-9+/]*={0,2}$/.test(encoded)) throw new Error("Invalid Base64");
raw=Buffer.from(encoded,"base64");
} else if(uri) {
const u=new URL(uri,"https://api.ailoot.ai");
if(u.protocol!=="https:" || u.username || u.password) throw new Error("Invalid returned URL");
const owned=u.origin==="https://api.ailoot.ai" && u.pathname.startsWith("/v1/media/assets/") && u.pathname.endsWith("/content");
const response=await fetch(u,{headers:owned?{Authorization:"Bearer "+key}:{},redirect:"manual"});
if(!response.ok) throw new Error("Image content download failed: "+response.status);
raw=Buffer.from(await response.arrayBuffer());
} else throw new Error("Image has neither bytes nor URL");
if(!raw.length) throw new Error("Empty image result");
const ext=raw.subarray(0,4).equals(Buffer.from([137,80,78,71]))?"png":raw[0]===255&&raw[1]===216?"jpg":raw.toString("ascii",0,4)==="RIFF"&&raw.toString("ascii",8,12)==="WEBP"?"webp":raw.toString("utf8").trimStart().startsWith("<svg")||raw.toString("utf8").trimStart().startsWith("<?xml")?"svg":"bin";
writeFileSync(`image-${index}.${ext}`,raw);
}
console.log("Every returned image saved; sdk-result.json retains complete metadata");
Motta og lagre resultater
Ailoot · Bilder
Last ned hvert returnerte bilde eller lagre Base64-innholdet
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Behold alle ferdige resultater
Lagre hvert ferdige bilde; hent hver returnerte URL eller dekod Base64-innholdet.
Lagre hvert dataelement. Dekod hver b64_json, eller hent hver returnerte signerte URL. Velg filendelse ut fra faktisk MIME-type/byteinnhold.
Hvis det opprinnelige svaret må kontrolleres
Hvis et resultat fra bildegenerering eller bilderedigering må kontrolleres, bevar opprinnelig operation_id/X-Client-Request-ID og den returnerte resultatinformasjonen. Hent eksisterende resultater du eier via mediebiblioteket, ved hjelp av faktiske task_id- eller asset_id-verdier. Ikke send genererings-/redigeringsforespørselen på nytt, og ikke konstruer en URL for statusavlesning fra operation_id.
Svarfelter
| Felt | Type |
|---|---|
Feltcreated | Typeinteger |
Feltdata[].url | Typestring |
Feltdata[].b64_json | Typebase64 string |
Feltusage | Typeobject |
Feil og neste trinn
| Svar | Vilkår | Neste trinn |
|---|---|---|
Svar400 · invalid_request_error | VilkårUgyldige påkrevde felter, materialrepresentasjon eller parameterverdi | Neste trinnKorriger de angitte feltene før en ny opprettelsesforespørsel. |
Svarserver_error | VilkårDet returnerte svaret angir at operasjonen eller resultatet må kontrolleres | Neste trinnBevar den opprinnelige returnerte operasjons-/oppgave-ID-en, forespørselshodene og svaret; fortsett å lese den opprinnelige operasjonen på de støttede måtene. Ikke send opprettelsesforespørselen på nytt. |
Aliaser
Modellaliaser
Ailoot gpt-image-2.5-flare-2026-09-08
Aliaser for metodestier
Bruk metodestiene som vises ovenfor.
Tilknyttede anroper-ID-er
FAQ · GPT Image 2.5 Flare 2026-09-08
- Hvilke inndata og resultater er tilgjengelige?
POST /v1/images/generations·gpt-image-2.5-flare-2026-09-08:text→image- Hvilke felt bruker forespørselen?
POST /v1/images/generations·gpt-image-2.5-flare-2026-09-08:model,prompt,n,response_format,stream- Hvilke grenser gjelder?
POST /v1/images/generations·gpt-image-2.5-flare-2026-09-08:n.minimum:1