Nano Banana 2.1 to następca Nano Banana 2 od Google, który zmienia jedną ważną rzecz: rozdzielczość przestała wpływać na rachunek. Grafika 4K kosztuje tyle co 1K, więc możesz od razu pracować na pełnym rozmiarze. Model sprawdzi się przy materiałach do druku, dużych banerach i edycji zdjęć, w których łączysz kilka elementów w jeden kadr.
Co z nim zrobisz
- Plakat albo roll-up w 4K bez dopłaty za większy plik.
- Poprawione zdjęcie produktu poleceniem tekstowym, z zachowaniem oryginalnego kadru.
- Kompozycję z kilku źródeł: produkt z jednego zdjęcia, modelka z drugiego, wnętrze z trzeciego.
- Bardzo szeroki pasek 8:1 na stronę albo wąski pionowy 1:8 do kolumny.
Ustawienia w praktyce
- Rozdzielczość:
1k(domyślna),2kalbo4k. Skoro cena jest ta sama, ustaw od razu docelową, bez szkicu w niższej. - Proporcje: 14 formatów, w tym skrajne 1:4, 4:1, 1:8 i 8:1, plus
auto. W edycjiautotrzyma kształt zdjęcia źródłowego. - Referencje: do 14 obrazów w
image_urls. W prompcie przypisz każdemu rolę ("first image is the product, second is the room"). - Przy edycji napisz wprost, co ma się zmienić, a co zostać nietknięte.
- Jedno zapytanie zwraca jeden obraz. Kilka wariantów to kilka zleceń.
Prompt na start
Place the product from the first image on the kitchen counter from the second image, morning sunlight through the window, keep the product label sharp and unchanged, photorealistic, 4k detailZamień "kitchen counter" na swoje miejsce akcji i dopisz, które elementy ze zdjęć mają zostać bez zmian.
Pytania
Ile kosztuje obraz z Nano Banana 2.1?
0,41 zł za obraz, z VAT, bez względu na to, czy wybierzesz 1K, 2K czy 4K. Za nieudaną generację płacisz 0 zł.
Kiedy lepiej zostać przy Nano Banana 2?
Gdy chcesz kilka obrazów w jednym zapytaniu (Nano Banana 2 robi do 4) albo szkiców w 0,5K, choć ten próg kosztuje tyle co 1K. Wersja 2.1 go nie ma, za to 2K i 4K są w niej tańsze. Zestawienie jest w porównaniu.
Jak wgrać własne zdjęcia do edycji?
W Kadraris Studio dodajesz pliki prosto z dysku. Przez API podajesz ich adresy w image_urls - przykład znajdziesz w dokumentacji.
Nano Banana 2.1 w twoim kodzie
curl https://kadraris.com/v1/generate?wait=60 \
-H "Authorization: Bearer $KADRARIS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "nano-banana-2.1",
"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": "nano-banana-2.1",
"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": "nano-banana-2.1",
"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 | ||
aspect_ratio | string | auto 1:1 1:4 1:8 2:3 3:2 3:4 4:1 4:3 4:5 5:4 8:1 9:16 16:9 21:9 | auto |
resolution | string | 1k 2k 4k | 1k |
image_urls | array | maks. 14 |
Tę listę w JSON-ie dostaniesz z GET /v1/models/nano-banana-2.1.























