OpenAI: GPT Image 2.5 Flare
GPT Image 2.5 Flare ustvarja in ureja slike iz besedila in referenc s poudarkom na hitrem vsakodnevnem vizualnem ustvarjanju. Podpira velikosti po meri, prosojna ozadja, maske in ravni kakovosti do max za osnutke, ilustracije in gradiva za kampanje.
- Ailoot · Slike
POST /v1/images/generationsgpt-image-2.5-flare - Ailoot Ultra · Slike
POST /v1/images/generationsgpt-image-2.5-flare - Ailoot Ultra · Slike
POST /v1/images/generationsopenai/gpt-image-2.5-flare
O modelu
Ta opis zajema zmožnosti modela. Vhodi, izhodi in možnosti, ki so na voljo v Ailoot, so spodaj navedeni za izbrano metodo.
GPT Image 2.5 Flare je OpenAI-jeva izdaja za ustvarjanje in urejanje slik, namenjena hitremu, kakovostnemu vsakodnevnemu delu. Sprejema besedilo in slike ter vrača slikovne rezultate. Uporabite jo za vizualne osnutke, ilustracije, koncepte izdelkov in ponavljajoče se ustvarjalne naloge, pri katerih mora opis hitro postati uporabna slika. Flare je ločen od Sunburst, katerega usmeritev poudarja natančnost urejanja. Flare izberite za rutinsko ustvarjanje slik, Sunburst pa, kadar je prednostna naloga natančno urejanje.
Začnite z glavnim motivom, dejanjem, okoljem, kompozicijo in vizualno obdelavo. Za ilustracijo kampanje zahtevajte kolesarja, ki prečka majhen most v topli večerni svetlobi, z izrazito silhueto in odprtim nebom za poznejše besedilo. Kratek raziskovalni opis lahko pusti estetske odločitve odprte; produkcijski opis naj poimenuje pomembne podrobnosti in položaje. Neposredna postopka ustvarjanja in urejanja dovoljujeta pozive do 32.000 znakov in od enega do deset rezultatov, kar je uporabno za primerjavo nekaj različic z istim namenom.
Pri urejanju lahko podate do šestnajst referenčnih slik. Vsaki določite jasno vlogo, namesto da model sam odloča, ali slika predstavlja identiteto motiva, okolje ali slog. Maska lahko usmerja spremembo območja; pri več slikah velja za prvo. Slika in maska potrebujeta enak format in dimenzije, maska pa mora vsebovati alfa kanal. Vodnik zahteva, da sta izvirnik in maska manjša od 50 MB. Maska je usmeritev, ne obljuba natančne ohranitve meje, zato navedite želeno spremembo in tisto, kar naj ostane prepoznavno.
Flare podpira kakovost low, medium, high, xhigh, max in samodejno kakovost, pri čemer je auto privzeta. Nižja kakovost lahko služi hitremu vizualnemu osnutku; višje nastavitve je mogoče primerjati glede podrobnosti končnega gradiva. Kakovost je neodvisna od velikosti in izhodnega stiskanja. Standardne velikosti vključujejo 1024 × 1024, 1536 × 1024 in 1024 × 1536, na voljo pa so tudi samodejne dimenzije ali dimenzije po meri. Usmerjenost izberite glede na končno umestitev in uporaben prostor v prizoru.
Širina in višina po meri morata biti večkratnika šestnajstih, nobena stranica pa ne sme presegati 3840 slikovnih pik. Dovoljeno razmerje sega od 1:3 do 3:1, skupna površina pa mora meriti vsaj 655.360 in največ 8.294.400 slikovnih pik. Vsi štirje pogoji veljajo skupaj. Vodnik ločljivosti nad 2560 × 1440 označuje kot eksperimentalne. Uporabite veljaven okvir, ki ustreza kompoziciji, ter v opis vključite podrobnosti, občutljive na obrezovanje, namesto da večjo ločljivost obravnavate kot samodejno izboljšavo postavitve.
Privzeti format rezultata je PNG, alternativi pa JPEG in WebP. JPEG in WebP omogočata stiskanje od 0 do 100. Za prosojno ozadje izberite PNG ali WebP; podprta sta tudi neprosojno in samodejno ozadje. Prosojno gradivo lahko umestite v poznejšo postavitev, neprosojna slika pa vključuje svoje ozadje. Format, ozadje in stiskanje izberite glede na dejansko potrebo dostave ter dokončano datoteko hranite skupaj z opisom in izbranimi nastavitvami.
Proizvajalec dokumentira neposredno ustvarjanje in urejanje slik ter pogovorno slikovno orodje, ki lahko ohrani izbrane rezultate za nadaljnje spremembe. V tem postopku je lahko dejanje samodejno, prisilno ustvarjanje ali prisilno urejanje, kadar je v kontekstu slika. Pretočno podajanje lahko pred končnim rezultatom prikaže do tri delne slike. Ti predogledi prikazujejo napredek in niso dodatni dokončani izdelki. Pri postopnem delu nadaljujte iz izbrane slike in opišite vidno spremembo, denimo premik enega predmeta ali prilagoditev barvne obdelave. Proizvajalčev vmesnik podpira tudi paketno obdelavo.
Pri predvideni velikosti preverite napise, položaj predmetov, podrobnosti motiva in kompozicijo. GPT Image ima lahko še vedno težave z natančno postavitvijo besedila, strukturiranimi postavitvami in ponavljajočo se vizualno identiteto med ustvarjanji. Sprejeto različico ohranite kot naslednjo referenco in naslednji popravek zožite na pomembno težavo. Vloga Flare pri vsakodnevnem ustvarjanju je uporabna za jasno zaporedje opisa, vizualnih alternativ, izbire in dodelave, pri čemer končno gradivo ocenite glede na dejanski ustvarjalni namen.
Ailoot · Slike POST /v1/images/generations gpt-image-2.5-flare
gpt-image-2.5-flareZačetek
GPT Image 2.5 Flare ustvarja in ureja slike iz besedila in referenc s poudarkom na hitrem vsakodnevnem vizualnem ustvarjanju. Podpira velikosti po meri, prosojna ozadja, maske in ravni kakovosti do max za osnutke, ilustracije in gradiva za kampanje.
- Dovoljeni vhodi
- Besedilo
- Rezultati
- Slike
Na voljo v Ailoot · vhodi in metode
Ailoot · Slike POST /v1/images/generations
- Vhod
text- Izhod
image- Izhodni format
- Slikovna datoteka
| Polje | Vrsta | Zahteva | Vrednosti in omejitve | Privzeto |
|---|---|---|---|---|
Poljemodel | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve gpt-image-2.5-flare | Privzeto— |
Poljeprompt | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve Najmanjša dolžina: 1 | Privzeto— |
Poljen | Vrstainteger | ZahtevaIzbirno | Vrednosti in omejitve Najmanj: 1 | Privzeto1 |
Poljeresponse_format | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve url, b64_json | Privzeto— |
Poljestream | Vrstaboolean | ZahtevaIzbirno | Vrednosti in omejitve | Privzetofalse |
Poljesize | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve Odvisno od modela | Privzeto— |
Poljequality | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve Odvisno od modela | Privzeto— |
Poljebackground | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve Odvisno od modela | Privzeto— |
Poljeoutput_format | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve Odvisno od modela | Privzeto— |
Poljeoutput_compression | Vrstainteger | ZahtevaIzbirno | Vrednosti in omejitve Odvisno od modela | Privzeto— |
Poljemoderation | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve Odvisno od modela | Privzeto— |
Poljeinput_fidelity | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve Odvisno od modela | Privzeto— |
Poljestyle | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve Odvisno od modela | Privzeto— |
Poljepartial_images | Vrstainteger | ZahtevaIzbirno | Vrednosti in omejitve Odvisno od modela | Privzeto— |
Kombinacije vhodnih gradiv
Iz besedila v sliko · Obvezno: prompt
Parametri in življenjski cikel metode
| Parameter | Specifikacija |
|---|---|
Parametermaterial_types | Specifikacijatext |
Parameterrequired | Specifikacijamodel, prompt |
Parameteroptional_controls | Specifikacijanull |
Parametercontent_type | Specifikacijaapplication/json |
Življenjski cikel: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · Dejansko vrnjeni task_id ali zapis v medijski knjižnici
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Strukture metod in ID so natančno določeni; zmožnost ponudnika je ločena od sprejema zahteve.
Cenik
Cene metod Ailoot
POST /v1/images/generations- Besedilni vhod
- 0,005 $ / 1K
- Vhod, slika
- 0,008 $ / 1K tokens
- Izhod, slika
- 0,03 $ / 1K tokens
Ailoot pred zahtevo rezervira ocenjeni znesek. Po rezultatu obračuna končni strošek na podlagi izmerjene porabe. Obračun pretakanja uporablja končni zapis porabe. Kako delujeta rezervacija in obračun →
Primeri zahtev
Ailoot · Slike
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", "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', '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", "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");
Prejmi in shrani rezultate
Ailoot · Slike
Prenesite vsako vrnjeno sliko ali shranite njeno vsebino Base64
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Ohrani vse dokončane rezultate
Shranite vsako dokončano sliko; pridobite vsebino z vsake vrnjene URL ali dekodirajte njeno vsebino Base64.
Shranite vsak podatkovni element. Dekodirajte vsak b64_json ali pridobite vsebino z vsakega vrnjenega podpisanega URL. Končnico imena datoteke izberite glede na dejanski tip MIME oziroma bajte.
Če je treba preveriti izvirni odgovor
Če je treba preveriti rezultat generiranja ali urejanja slike, shranite izvirni operation_id/X-Client-Request-ID in vrnjene podatke o rezultatu. Obstoječe rezultate, ki vam pripadajo, pridobite prek medijske knjižnice z dejanskimi vrednostmi task_id ali asset_id. Zahteve za generiranje/urejanje ne pošiljajte znova in iz operation_id ne sestavljajte URL za periodično preverjanje stanja.
Polja odgovora
| Polje | Vrsta |
|---|---|
Poljecreated | Vrstainteger |
Poljedata[].url | Vrstastring |
Poljedata[].b64_json | Vrstabase64 string |
Poljeusage | Vrstaobject |
Napake in naslednji koraki
| Odgovor | Pogoj | Naslednji korak |
|---|---|---|
Odgovor400 · invalid_request_error | PogojNeveljavna obvezna polja, predstavitev gradiva ali vrednost parametra | Naslednji korakPred novo zahtevo za ustvarjanje popravite navedena polja. |
Odgovorserver_error | PogojVrnjeni odgovor navaja, da je treba operacijo ali rezultat preveriti | Naslednji korakShranite izvirni vrnjeni ID operacije/opravila, glave zahteve in odgovor; nadaljujte s podprtimi branji te izvirne operacije. Zahteve za ustvarjanje ne pošiljajte znova. |
Druga imena
Druga imena modelov
Ailoot gpt-image-2.5-flare
Ailoot Ultra gpt-image-2.5-flare, openai/gpt-image-2.5-flare
Druga imena poti metod
/v1/images
Povezani ID-ji za klic
openai/gpt-image-2.5-flare, gpt-image-2.5-flare, gpt-image-2.5-flare
Ailoot Ultra · Slike POST /v1/images/generations gpt-image-2.5-flare
gpt-image-2.5-flaregpt-image-2.5-flareopenai/gpt-image-2.5-flare
Začetek
GPT Image 2.5 Flare ustvarja in ureja slike iz besedila in referenc s poudarkom na hitrem vsakodnevnem vizualnem ustvarjanju. Podpira velikosti po meri, prosojna ozadja, maske in ravni kakovosti do max za osnutke, ilustracije in gradiva za kampanje.
- Dovoljeni vhodi
- Besedilo
- Rezultati
- Slike
Na voljo v Ailoot · vhodi in metode
Ailoot Ultra · Slike POST /v1/images/generations
- Vhod
text- Izhod
image
| Polje | Vrsta | Zahteva | Vrednosti in omejitve | Privzeto |
|---|---|---|---|---|
Poljemodel | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve gpt-image-2.5-flare | Privzeto— |
Poljeprompt | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve Največja dolžina: 32.000 | Privzeto— |
Poljesize | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve Pogoji: Uporabite auto ali WIDTHxHEIGHT, pri čemer sta obe meri deljivi s 16. Najdaljša stranica meri največ 3,840 slikovnih pik, skupna velikost pa največ 8,300,000 slikovnih pik. | Privzetoauto |
Poljebackground | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve transparent, opaque, auto | Privzetoauto |
Poljemoderation | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve low, auto Pogoji: Za standardno moderiranje vsebine uporabite auto. | Privzeto— |
Poljen | Vrstainteger | ZahtevaIzbirno | Vrednosti in omejitve Najmanj: 1 Največ: 10 | Privzeto1 |
Poljequality | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve auto, high, medium, low | Privzetoauto |
Poljeoutput_compression | Vrstainteger | ZahtevaIzbirno | Vrednosti in omejitve Najmanj: 0 Največ: 100 Pogoji: Velja za izhod JPEG in WebP; pošljite dokumentirano celo število. | Privzeto100 |
Poljeoutput_format | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve webp, png, jpeg | Privzetopng |
Poljestream | Vrstaboolean | ZahtevaIzbirno | Vrednosti in omejitve false Pogoji: Ta pot vrne en dokončan odgovor JSON. | Privzetofalse |
Parametri in življenjski cikel metode
| Parameter | Specifikacija |
|---|---|
Parametercontent_type | Specifikacijaapplication/json |
Parameterrequired | Specifikacijaprompt, model |
Parametermaterial_types | Specifikacijatext |
Parameteroptional | Specifikacijasize, background, moderation, n, quality, output_compression, output_format, stream |
Parameterconditions | SpecifikacijaProsojno ozadje zahteva PNG ali WebP., Stiskanje izhoda velja za JPEG ali WebP., Izbrana metoda ustvarja iz besedila. Krmilni parametri za urejanje in pretakanje, opisani za proizvajalca, so ločene zmožnosti. |
Življenjski cikel: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · Dejansko vrnjeni task_id ali zapis v medijski knjižnici
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Cenik
Kako se izračuna končni strošek
Prikazane cene so namenjene oceni stroškov pred generiranjem. Končni znesek se izračuna na podlagi stroška, zabeleženega za izvirno generiranje. Izmerjeno trajanje izhoda in napovedane količine niso končna obračunska količina.
Tarifni podatki ne dodajajo možnosti zahteve. Podprti parametri so navedeni pri izbrani metodi.
- Hitri način
- Ni navedeno Ko je izbran hitri način
- Način flex
- Ni navedeno Ko je izbran način flex
- Najvišja raven razmišljanja
- Ni navedeno Ko najvišja raven razmišljanja uporablja privzeto prilagoditev (default)
Ocenjene cene za primerjavo
Cene po nastavitvah
Vsak strošek povežite s prikazanimi pogoji. Za vsak nabor alternativnih nastavitev uporabite eno ceno.
| Nastavitev | Cenovna lestvica | Predvidena količina | Strošek |
|---|---|---|---|
| NastavitevOsnovne cene žetonov | Cenovna lestvicaOsnovna cena | Predvidena količina— | Strošek Vhod · Vhodni žetoni · Ocena samo za primerjavo — / 1K žetonov Izhod · Izhodni žetoni · Ocena samo za primerjavo — / 1K žetonov Vhod · Branje predpomnilnika · Ocena samo za primerjavo — / 1K žetonov Vhod · Zapis v predpomnilnik · Ocena samo za primerjavo — / 1K žetonov Vhod · Zapis v predpomnilnik, 1 ura · Ocena samo za primerjavo — / 1K žetonov |
| NastavitevOcenjeni strošek ustvarjanja | Cenovna lestvica— | Predvidena količinaocena za eno generiranje | Strošek Izhod · Ocenjeni stroški ustvarjanja · Ocena samo za primerjavo $0.24576 ocena pred ustvarjanjem Ta ocena ni dodatno plačilo ali fiksna cena za dokončano generiranje. |
Ailoot pred zahtevo rezervira ocenjeni znesek. Po rezultatu obračuna končni strošek na podlagi izmerjene porabe. Obračun pretakanja uporablja končni zapis porabe. Kako delujeta rezervacija in obračun →
Primeri zahtev
Ailoot Ultra · Slike
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={'prompt': 'A cute baby sea otter', 'model': 'gpt-image-2.5-flare', 'size': '1024x1024', 'n': 1, 'background': 'auto', 'moderation': 'auto', 'output_format': 'png'}
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
Prejmi in shrani rezultate
Ailoot Ultra · Slike
Prenesite vsako vrnjeno sliko ali shranite njeno vsebino Base64
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Branje druge vsebine
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.
Ohrani vse dokončane rezultate
Shranite vsako dokončano sliko; pridobite vsebino z vsake vrnjene URL ali dekodirajte njeno vsebino Base64.
Shranite celoten odgovor in glave, vse dejanske izhode, izvirne vrnjene identifikatorje in vsa polja s podatki o porabi. Pridobite podatke izvirne operacije brez ponovnega pošiljanja zahteve za ustvarjanje.
Če je treba preveriti izvirni odgovor
Shranite vrnjeni X-Client-Request-ID za uskladitev evidenc. Berite samo dejansko vrnjene vrednosti task_id/asset_id ali svojo medijsko knjižnico; iz ID operacije nikoli ne sestavite URL opravila in zahteve za ustvarjanje nikoli ne pošljite znova.
Polja odgovora
| Polje | Vrsta |
|---|---|
Poljecreated | Vrsta |
Poljedata[].url | Vrsta |
Poljedata[].b64_json | Vrsta |
Poljeusage | Vrsta |
Druga imena
Druga imena modelov
Ailoot gpt-image-2.5-flare
Ailoot Ultra gpt-image-2.5-flare, openai/gpt-image-2.5-flare
Druga imena poti metod
/v1/images
Povezani ID-ji za klic
openai/gpt-image-2.5-flare, gpt-image-2.5-flare, gpt-image-2.5-flare
Ailoot Ultra · Slike POST /v1/images/generations openai/gpt-image-2.5-flare
openai/gpt-image-2.5-flaregpt-image-2.5-flareopenai/gpt-image-2.5-flare
Začetek
GPT Image 2.5 Flare ustvarja in ureja slike iz besedila in referenc s poudarkom na hitrem vsakodnevnem vizualnem ustvarjanju. Podpira velikosti po meri, prosojna ozadja, maske in ravni kakovosti do max za osnutke, ilustracije in gradiva za kampanje.
- Dovoljeni vhodi
- Besedilo · Slike
- Rezultati
- Slike
Na voljo v Ailoot · vhodi in metode
Ailoot Ultra · Slike POST /v1/images/generations
- Vhod
text,image- Izhod
image
| Polje | Vrsta | Zahteva | Vrednosti in omejitve | Privzeto |
|---|---|---|---|---|
Poljemodel | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve openai/gpt-image-2.5-flare | Privzeto— |
Poljeprompt | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve Najmanjša dolžina: 1 | Privzeto— |
Poljeaspect_ratio | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve 1:1, 3:2, 2:3, 4:3, 3:4, 16:9, 9:16, 21:9, auto | Privzeto— |
Poljequality | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve auto, low, medium, high, xhigh, max | Privzeto— |
Poljebackground | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve auto, transparent, opaque | Privzeto— |
Poljen | Vrstainteger | ZahtevaIzbirno | Vrednosti in omejitve Najmanj: 1 Največ: 10 | Privzeto— |
Poljeinput_references | Vrstaarray | ZahtevaIzbirno | Vrednosti in omejitve Najmanjše število elementov: 0 Največ elementov: 16 | Privzeto— |
Poljeoutput_compression | Vrstainteger | ZahtevaIzbirno | Vrednosti in omejitve Najmanj: 0 Največ: 100 | Privzeto— |
Poljeprovider | Vrstaobject | ZahtevaIzbirno | Vrednosti in omejitve | Privzeto— |
Parametri in življenjski cikel metode
| Parameter | Specifikacija |
|---|---|
Parametercontent_type | Specifikacijaapplication/json |
Parameterrequired | Specifikacijamodel, prompt |
Parametermaterial_types | Specifikacijatext, image |
Življenjski cikel: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · Dejansko vrnjeni task_id ali zapis v medijski knjižnici
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Cenik
Kako se izračuna končni strošek
Prikazane cene so namenjene oceni stroškov pred generiranjem. Končni znesek se izračuna na podlagi stroška, zabeleženega za izvirno generiranje. Izmerjeno trajanje izhoda in napovedane količine niso končna obračunska količina.
Tarifni podatki ne dodajajo možnosti zahteve. Podprti parametri so navedeni pri izbrani metodi.
- Hitri način
- Ni navedeno Ko je izbran hitri način
- Način flex
- Ni navedeno Ko je izbran način flex
- Najvišja raven razmišljanja
- Ni navedeno Ko najvišja raven razmišljanja uporablja privzeto prilagoditev (default)
Ocenjene cene za primerjavo
Cene po nastavitvah
Vsak strošek povežite s prikazanimi pogoji. Za vsak nabor alternativnih nastavitev uporabite eno ceno.
| Nastavitev | Cenovna lestvica | Predvidena količina | Strošek |
|---|---|---|---|
| NastavitevOsnovne cene žetonov | Cenovna lestvicaOsnovna cena | Predvidena količina— | Strošek Vhod · Vhodni žetoni · Ocena samo za primerjavo — / 1K žetonov Izhod · Izhodni žetoni · Ocena samo za primerjavo — / 1K žetonov Vhod · Branje predpomnilnika · Ocena samo za primerjavo — / 1K žetonov Vhod · Zapis v predpomnilnik · Ocena samo za primerjavo — / 1K žetonov Vhod · Zapis v predpomnilnik, 1 ura · Ocena samo za primerjavo — / 1K žetonov |
| NastavitevOcenjeni strošek ustvarjanja | Cenovna lestvica— | Predvidena količinaocena za eno generiranje | Strošek Izhod · Ocenjeni stroški ustvarjanja · Ocena samo za primerjavo $0.24576 ocena pred ustvarjanjem Ta ocena ni dodatno plačilo ali fiksna cena za dokončano generiranje. |
Ailoot pred zahtevo rezervira ocenjeni znesek. Po rezultatu obračuna končni strošek na podlagi izmerjene porabe. Obračun pretakanja uporablja končni zapis porabe. Kako delujeta rezervacija in obračun →
Primeri zahtev
Ailoot Ultra · Slike
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-image-2.5-flare', '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
Prejmi in shrani rezultate
Ailoot Ultra · Slike
Prenesite vsako vrnjeno sliko ali shranite njeno vsebino Base64
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Branje druge vsebine
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.
Ohrani vse dokončane rezultate
Shranite vsako dokončano sliko; pridobite vsebino z vsake vrnjene URL ali dekodirajte njeno vsebino Base64.
Shranite celoten odgovor in glave, vse dejanske izhode, izvirne vrnjene identifikatorje in vsa polja s podatki o porabi. Pridobite podatke izvirne operacije brez ponovnega pošiljanja zahteve za ustvarjanje.
Če je treba preveriti izvirni odgovor
Shranite vrnjeni X-Client-Request-ID za uskladitev evidenc. Berite samo dejansko vrnjene vrednosti task_id/asset_id ali svojo medijsko knjižnico; iz ID operacije nikoli ne sestavite URL opravila in zahteve za ustvarjanje nikoli ne pošljite znova.
Polja odgovora
| Polje | Vrsta |
|---|---|
Poljecreated | Vrsta |
Poljedata[].url | Vrsta |
Poljedata[].b64_json | Vrsta |
Poljeusage | Vrsta |
Druga imena
Druga imena modelov
Ailoot gpt-image-2.5-flare
Ailoot Ultra gpt-image-2.5-flare, openai/gpt-image-2.5-flare
Druga imena poti metod
/v1/images
Povezani ID-ji za klic
openai/gpt-image-2.5-flare, gpt-image-2.5-flare, gpt-image-2.5-flare
FAQ · OpenAI: GPT Image 2.5 Flare
- Kateri vhodi in rezultati so na voljo?
POST /v1/images/generations·gpt-image-2.5-flare:text→imagePOST /v1/images/generations·gpt-image-2.5-flare:text→imagePOST /v1/images/generations·openai/gpt-image-2.5-flare:text,image→image- Katera polja uporablja zahteva?
POST /v1/images/generations·gpt-image-2.5-flare:model,prompt,n,response_format,streamPOST /v1/images/generations·gpt-image-2.5-flare:model,prompt,size,background,moderation,n,quality,output_compression,output_format,streamPOST /v1/images/generations·openai/gpt-image-2.5-flare:model,prompt,aspect_ratio,quality,background,n,input_references,output_compression,provider- Katere omejitve veljajo?
POST /v1/images/generations·gpt-image-2.5-flare:n.minimum:1POST /v1/images/generations·gpt-image-2.5-flare:prompt.maximum_length:32000;n.minimum:1;n.maximum:10;output_compression.minimum:0;output_compression.maximum:100POST /v1/images/generations·openai/gpt-image-2.5-flare:n.minimum:1;n.maximum:10;output_compression.minimum:0;output_compression.maximum:100