Grok Imagine przydaje się, gdy grafika ma od razu pasować do ekranu: tapeta na telefon w proporcjach 9:20, pion na stories bez przycinania, przeróbka zdjęcia z dnia na noc. To modele obrazów xAI w dwóch poziomach jakości, rozliczane jedną stałą stawką za obraz. Prompt jest wykonywany dosłownie, więc to, czego nie opiszesz, w kadrze się nie pojawi.
Co z nim zrobisz
- Tapety na telefon - formaty 9:19.5 i 9:20.
- Przeróbkę jednego zdjęcia - inny styl, pora dnia albo tło.
- Szkice i finały - pomysły w
standard, wybrana wersja whigh. - Grafiki na rolki i stories - w docelowym formacie od pierwszej generacji.
Ustawienia w praktyce
- Proporcje - 13 opcji plus
auto, od 2:1 i 20:9 po 9:20. Dobierz je pod ekran, zamiast przycinać później. - Rozdzielczość -
1kalbo2k. Obraz 16:9 w 2K ma 2816x1584 px. - Jakość -
standard(domyślnie) albohigh. - Liczba obrazów - od 1 do 4 na zapytanie.
- Edycja - jedno zdjęcie w
image_urls. Opisz zmianę i to, co ma zostać. - Prompt - do 10 000 znaków. Z samego tekstu w dłuższych seriach sprawdź też Grok Imagine Image 2.0.
Prompt na start
Phone wallpaper, 9:20. A narrow alley in Kraków at night after rain, neon pharmacy sign reflected in puddles, a single cyclist far away, deep blue and green tones, empty top area for the clockPuść go najpierw w standard, a wersję, która Ci się spodoba, powtórz w high i 2K.
Pytania
Ile kosztuje obraz z Grok Imagine?
0,144 zł za obraz, z VAT. Koszt zadania widzisz przed wysłaniem w estimated_cost, a nieudana generacja kosztuje 0 zł.
Połączę kilka zdjęć w jedną grafikę?
Nie, Grok Imagine edytuje jedno zdjęcie naraz. Do łączenia kilku referencji wybierz np. Nano Banana 2.
Czemu na obrazie brakuje elementu, o którym myślałem?
Bo model nie dopowiada sceny. Wypisz w prompcie każdy element, który ma się znaleźć w kadrze.
Grok Imagine w twoim kodzie
curl https://kadraris.com/v1/generate?wait=60 \
-H "Authorization: Bearer $KADRARIS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "grok-imagine",
"input": {
"prompt": "Packshot of a white linen sneaker on a concrete block, hard midday sun, crisp shadow, 85mm",
"aspect_ratio": "auto",
"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": "grok-imagine",
"input": {
"prompt": "Packshot of a white linen sneaker on a concrete block, hard midday sun, crisp shadow, 85mm",
"aspect_ratio": "auto",
"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": "grok-imagine",
"input": {
"prompt": "Packshot of a white linen sneaker on a concrete block, hard midday sun, crisp shadow, 85mm",
"aspect_ratio": "auto",
"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 | ≤ 10000 znaków | |
aspect_ratio | string | auto 1:1 3:4 4:3 9:16 16:9 2:3 3:2 9:19.5 19.5:9 9:20 20:9 1:2 2:1 | auto |
resolution | string | 1k 2k | 1k |
quality | string | standard high | standard |
num_images | integer | 1-4 | 1 |
image_urls | array | maks. 1 |
Tę listę w JSON-ie dostaniesz z GET /v1/models/grok-imagine.
























