GPT Image 2 wybierasz, gdy format jest z góry ustalony: baner 21:9 na stronę, pasek 3:1 na okładkę profilu, plakat albo fototapeta w 4K. To model OpenAI, który napędza ChatGPT Images 2.0. Generuje z tekstu i z obrazów, a przy edycji potrafi przejąć proporcje pierwszego zdjęcia.
Co z nim zrobisz
- Banery 21:9 i nagłówki newsletterów - panoramiczny kadr bez przycinania.
- Wydruki w 4K - plakaty, tła scenografii, fototapety.
- Paski 3:1 i 1:3 - okładki profili, grafiki na slajdy.
- Przeróbki zdjęć w ich proporcjach - wynik dziedziczy format pierwszej referencji.
Ustawienia w praktyce
- Proporcje - 16 opcji, m.in. 1:1, 16:9, 9:16, 4:5, 2:1, 21:9, 3:1 i 1:3. Domyślnie wysyłane jest 1:1, więc przy edycji ustaw format zgodny ze zdjęciem albo
auto. - Rozdzielczość -
1k,2kalbo4k. W 4K obraz 16:9 ma 3840x2160, a kwadrat 2880x2880. Przy 4Kautojest odrzucane - wybierz konkretne proporcje. - Referencje - do 16 w
image_urls. - Język - producent wymienia angielski i chiński, więc scenę opisuj po angielsku; napisy do umieszczenia na obrazie możesz podać po polsku w cudzysłowie.
- Prompt - według producenta do 32 000 znaków.
Prompt na start
Wide 21:9 website hero banner: a minimalist Scandinavian kitchen at golden hour, oak counters, linen curtains moving in the breeze, empty wall space on the right for a headline, soft natural tonesWyślij go z resolution: "4k" i aspect_ratio: "21:9", a kuchnię zamień na wnętrze albo produkt, który sprzedajesz.
Pytania
Ile kosztuje obraz z GPT Image 2?
od 0,367 zł za obraz, z VAT. Nieudana generacja kosztuje 0 zł - środki wracają na saldo.
GPT Image 2 czy nowszy 2.5?
GPT Image 2.5 ma suwak jakości aż do max, ale w Kadrarisie tylko trzy formaty do 1536 px. GPT Image 2 daje 16 proporcji i progi do 4K. Szczegóły w porównaniu GPT Image 2.5 vs GPT Image 2.
Gdzie ustawić 4K bez kodu?
W Kadraris Studio wybierasz rozdzielczość i proporcje z listy. W API to pola resolution i aspect_ratio - przykład w dokumentacji.
GPT Image 2 w twoim kodzie
curl https://kadraris.com/v1/generate?wait=60 \
-H "Authorization: Bearer $KADRARIS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2",
"input": {
"prompt": "Packshot of a white linen sneaker on a concrete block, hard midday sun, crisp shadow, 85mm",
"aspect_ratio": "1:1",
"resolution": "1k"
}
}'import os, time, requests
API = "https://kadraris.com/v1"
H = {"Authorization": f"Bearer {os.environ['KADRARIS_API_KEY']}"}
task = requests.post(f"{API}/generate", headers=H, json={
"model": "gpt-image-2",
"input": {
"prompt": "Packshot of a white linen sneaker on a concrete block, hard midday sun, crisp shadow, 85mm",
"aspect_ratio": "1:1",
"resolution": "1k"
}
}).json()
while task["status"] in ("queued", "running"):
time.sleep(3)
task = requests.get(f"{API}/tasks/{task['id']}", headers=H).json()
print(task["status"], task["cost"], [o["url"] for o in task["output"]])const API = "https://kadraris.com/v1";
const headers = { Authorization: `Bearer ${process.env.KADRARIS_API_KEY}`, "Content-Type": "application/json" };
let task = await (await fetch(`${API}/generate`, {
method: "POST",
headers,
body: JSON.stringify({
"model": "gpt-image-2",
"input": {
"prompt": "Packshot of a white linen sneaker on a concrete block, hard midday sun, crisp shadow, 85mm",
"aspect_ratio": "1:1",
"resolution": "1k"
}
}),
})).json();
while (task.status === "queued" || task.status === "running") {
await new Promise((r) => setTimeout(r, 3000));
task = await (await fetch(`${API}/tasks/${task.id}`, { headers })).json();
}
console.log(task.status, task.cost, task.output.map((o) => o.url));
Pola wejściowe
| Parametr | Typ | Dozwolone | Domyślnie |
|---|---|---|---|
prompt * | string | ≤ 32000 znaków | |
aspect_ratio | string | auto 1:1 16:9 9:16 4:3 3:4 3:2 2:3 5:4 4:5 2:1 1:2 21:9 9:21 3:1 1:3 | 1:1 |
resolution | string | 1k 2k 4k | 1k |
image_urls | array | maks. 16 |
Tę listę w JSON-ie dostaniesz z GET /v1/models/gpt-image-2.
























