OpenAI: GPT Image 1
GPT Image 1 genereert en bewerkt afbeeldingen op basis van tekst en visuele invoer, waaronder composities met referenties als uitgangspunt en gemaskeerde wijzigingen. Het ondersteunt instelbare invoergetrouwheid, standaardbeeldformaten, transparante achtergronden en uitvoer als PNG, JPEG of WebP.
Over het model
Deze beschrijving gaat over de mogelijkheden van het model. De via Ailoot beschikbare invoer, uitvoer en opties staan hieronder voor de geselecteerde methode.
GPT Image 1 is het van oorsprong multimodale beeldmodel van OpenAI, dat tekst- en beeldinvoer accepteert en afbeeldingen produceert. Het kan een nieuwe scène genereren, referentieafbeeldingen gebruiken om een compositie vorm te geven of een bestaand beeld met een nieuwe instructie bewerken. Praktisch werk omvat illustratie, productbeelden, ontwerpconcepten en lokale wijzigingen met behulp van een masker. Dit is de benoemde editie GPT Image 1, los van Image 1 Mini, Image 1.5 en latere GPT Image-versies.
Maak een briefing die het onderwerp, de omgeving, compositie, belichting en visuele stijl vermeldt. Als de taak zichtbare tekst vereist, neem dan de exacte formulering op en leg de bedoelde hiërarchie en positie uit. Geef voor een compositie met referenties elke afbeelding een duidelijke rol, zoals een product, omgeving of visuele uitwerking. De directe generatie- en bewerkingsworkflows staan een prompt tot 32,000 tekens en één tot tien beeldresultaten toe. Vergelijk de teruggegeven varianten met dezelfde briefing en bewaar het gekozen beeld voor vervolgwerk.
Bewerking kan maximaal zestien referentieafbeeldingen gebruiken. GPT Image 1 ondersteunt low en high input_fidelity, met low als standaard. Deze instelling beïnvloedt de inspanning om kenmerken en stijl van de bronafbeelding te behouden; ze staat los van renderkwaliteit en uitvoerformaat. Een bewerking met hoge getrouwheid is nuttig wanneer brondetails ertoe doen, maar garandeert niet dat elk herkenningsdetail identiek blijft. Geef aan wat behouden moet blijven en wat mag veranderen, in plaats van alleen op de getrouwheidsinstelling te vertrouwen.
Gemaskeerde bewerking geeft een te wijzigen gebied aan. Bereid bron en masker voor in hetzelfde formaat en met dezelfde afmetingen, kleiner dan 50 MB volgens de eisen van de handleiding, met een alfakanaal in het masker. Bij meerdere bronafbeeldingen wordt het masker op de eerste toegepast. Een bruikbare bewerkingsbriefing kan vragen om een andere muurkleur, met behoud van meubels, camerahoek en belichting. Het model gebruikt het masker als aanwijzing zonder een exacte grens te beloven. Controleer daarom zowel het gewijzigde gebied als de omgeving ervan.
De gedocumenteerde standaarduitvoerformaten zijn 1024 × 1024, 1536 × 1024 en 1024 × 1536 pixels, met automatische formaatkeuze waar ondersteund. Kwaliteit is low, medium, high of auto. GPT Image 1 gebruikt deze standaardformaten en kwaliteitsniveaus tot high. Kies het standaardformaat op basis van de beoogde weergave en het detailniveau op basis van het doel van het beeld.
PNG is de standaarduitvoer, met JPEG en WebP als alternatieven. Voor JPEG en WebP is compressie van 0 tot 100 beschikbaar. Transparante, ondoorzichtige en automatische achtergronden ondersteunen verschillende leveringsbehoeften; transparantie vereist PNG of WebP. Gebruik voor een vrijstaand grafisch beeld een formaat dat het alfakanaal behoudt voordat je het in een latere opmaak plaatst. Houd voor een volledige scène de achtergrond en de relatie van het onderwerp daarmee in de briefing.
OpenAI documenteert directe generatie en bewerking en de modelkaart bevat ook beeldgebruik in gesprekken. Bewaar bij iteratief werk het gekozen resultaat als bron voor een vervolgwijziging, in plaats van impliciet een andere variant te kiezen. De beeldreferentie documenteert streaming met maximaal drie gedeeltelijke afbeeldingen; deze tonen voortgang en zijn geen extra voltooide beelden. Bewaar de voltooide afbeelding samen met de briefing, zodat latere bewerkingen naar de daadwerkelijke compositie verwijzen. De interface van de fabrikant ondersteunt ook batchverwerking.
Het model kan nog moeite hebben met precieze tekstplaatsing, strak gestructureerde opmaak en consistentie tussen terugkerende onderwerpen. Controleer belettering, objectranden, kleurgebruik en de details die bronmateriaal herkenbaar maken op de beoogde grootte. Beschrijf wanneer een bewerking verfijning nodig heeft de zichtbare afwijking en de te behouden elementen. GPT Image 1 is nuttig voor een concrete reeks van generatie, bewerking met referenties als uitgangspunt en bestandsvoorbereiding, waarbij de eigen standaardformaten en instelbare invoergetrouwheid onderscheiden blijven van andere edities.
Ailoot Ultra · Afbeeldingen POST /v1/images/generations openai/gpt-image-1
openai/gpt-image-1Aan de slag
GPT Image 1 genereert en bewerkt afbeeldingen op basis van tekst en visuele invoer, waaronder composities met referenties als uitgangspunt en gemaskeerde wijzigingen. Het ondersteunt instelbare invoergetrouwheid, standaardbeeldformaten, transparante achtergronden en uitvoer als PNG, JPEG of WebP.
- Toegestane invoer
- Tekst · Afbeeldingen
- Resultaten
- Afbeeldingen
Beschikbaar in Ailoot · invoer en methoden
Ailoot Ultra · Afbeeldingen POST /v1/images/generations
- Invoertypen
text,image- Uitvoertypen
image
| Veld | Type | Vereiste | Waarden en limieten | Standaard |
|---|---|---|---|---|
Veldmodel | Typestring | VereisteVereist | Waarden en limieten openai/gpt-image-1 | Standaard— |
Veldprompt | Typestring | VereisteVereist | Waarden en limieten Minimumlengte: 1 | Standaard— |
Veldaspect_ratio | Typestring | VereisteOptioneel | Waarden en limieten 1:1, 3:2, 2:3, auto | Standaard— |
Veldquality | Typestring | VereisteOptioneel | Waarden en limieten auto, low, medium, high | Standaard— |
Veldbackground | Typestring | VereisteOptioneel | Waarden en limieten auto, transparent, opaque | Standaard— |
Veldn | Typeinteger | VereisteOptioneel | Waarden en limieten Minimum: 1 Maximum: 10 | Standaard— |
Veldinput_references | Typearray | VereisteOptioneel | Waarden en limieten Minimumaantal items: 0 Maximumaantal items: 16 | Standaard— |
Veldoutput_compression | Typeinteger | VereisteOptioneel | Waarden en limieten Minimum: 0 Maximum: 100 | Standaard— |
Veldprovider | Typeobject | VereisteOptioneel | Waarden en limieten | Standaard— |
Methodeparameters en levenscyclus
| Parameter | Contract |
|---|---|
Parametercontent_type | Contractapplication/json |
Parameterrequired | Contractmodel, prompt |
Parametermaterial_types | Contracttext, image |
Levenscyclus: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · de daadwerkelijk geretourneerde task_id of het record in de mediabibliotheek
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Tarieven
Zo worden de uiteindelijke kosten berekend
De weergegeven tarieven geven een schatting van de kosten vóór de generatie. Het definitieve bedrag wordt berekend op basis van de kosten die voor de oorspronkelijke generatie zijn geregistreerd. De gemeten duur van de uitvoer en de geschatte hoeveelheden zijn niet de definitieve factureerbare hoeveelheid.
Tariefverwijzingen voegen geen verzoekopties toe. Ondersteunde parameters staan bij de geselecteerde methode.
- Snelle modus
- Niet opgegeven Wanneer de snelle modus is geselecteerd
- Flexmodus
- Niet opgegeven Wanneer de modus flex is geselecteerd
- Maximale redeneerinspanning
- Niet opgegeven Wanneer bij maximale redeneerinspanning de default-aanpassing wordt gebruikt
Geschatte tarieven ter vergelijking
Prijzen per configuratie
Koppel elke kostenpost aan de getoonde voorwaarden. Gebruik één tarief voor elke groep alternatieve configuraties.
| Configuratie | Tariefstaffel | Verwachte hoeveelheid | Kosten |
|---|---|---|---|
| ConfiguratieBasistarieven voor tokens | TariefstaffelBasistarief | Verwachte hoeveelheid— | Kosten Invoer · Invoertokens · Schatting uitsluitend ter vergelijking — / 1K tokens Uitvoer · Uitvoertokens · Schatting uitsluitend ter vergelijking — / 1K tokens Invoer · Cache lezen · Schatting uitsluitend ter vergelijking — / 1K tokens Invoer · Cache schrijven · Schatting uitsluitend ter vergelijking — / 1K tokens Invoer · Cache schrijven, 1 uur · Schatting uitsluitend ter vergelijking — / 1K tokens |
| ConfiguratieGeschatte generatiekosten | Tariefstaffel— | Verwachte hoeveelheidschatting voor één generatie | Kosten Uitvoer · Geschatte generatiekosten · Schatting uitsluitend ter vergelijking $0.32768 schatting vóór generatie Deze schatting is geen extra bedrag of vast tarief voor de voltooide generatie. |
Ailoot reserveert vóór een verzoek een geschat bedrag. Na het resultaat worden de uiteindelijke kosten afgerekend op basis van het gemeten verbruik. Bij streaming gebeurt de afrekening op basis van de definitieve verbruiksregistratie. Zo werken reservering en afrekening →
Voorbeeldverzoeken
Ailoot Ultra · Afbeeldingen
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-1', '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
Resultaten ophalen en opslaan
Ailoot Ultra · Afbeeldingen
Download elke teruggegeven afbeelding of sla de Base64-inhoud ervan op
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Lezen van andere inhoud
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.
Alle voltooide resultaten bewaren
Sla elke voltooide afbeelding op; haal elke teruggegeven URL op of decodeer de bijbehorende Base64-inhoud.
Bewaar het volledige antwoord en de headers, alle daadwerkelijke uitvoer, de oorspronkelijk geretourneerde identificatoren en alle gebruiksvelden. Herstel de oorspronkelijke bewerking zonder de aanmaakaanvraag opnieuw in te dienen.
Als het oorspronkelijke antwoord moet worden gecontroleerd
Bewaar de geretourneerde X-Client-Request-ID voor reconciliatie. Lees alleen daadwerkelijk geretourneerde task_id/asset_id-waarden of de eigen mediabibliotheek uit; bouw nooit een taak-URL op basis van de bewerkings-ID en dien de aanmaakaanvraag nooit opnieuw in.
Antwoordvelden
| Veld | Type |
|---|---|
Veldcreated | Type |
Velddata[].url | Type |
Velddata[].b64_json | Type |
Veldusage | Type |
Aliasnamen
Modelaliasnamen
Ailoot Ultra openai/gpt-image-1
Aliasnamen voor methodepaden
/v1/images
Gerelateerde aanroeper-ID’s
FAQ · OpenAI: GPT Image 1
- Welke invoer en resultaten zijn beschikbaar?
POST /v1/images/generations·openai/gpt-image-1:text,image→image- Welke velden gebruikt het verzoek?
POST /v1/images/generations·openai/gpt-image-1:model,prompt,aspect_ratio,quality,background,n,input_references,output_compression,provider- Welke limieten gelden?
POST /v1/images/generations·openai/gpt-image-1:n.minimum:1;n.maximum:10;output_compression.minimum:0;output_compression.maximum:100