Новинка: Nano Banana 2.1Попробовать модель
API Hubs

Изображения

Генерация изображений

Как выбрать модель для нужного изображения, написать рабочий промпт, получить варианты и пройти весь путь API от запроса до URL файла.

6 мин чтенияразделов: 9

Выбирайте модель под результат: изображение товара, макет с текстом или иллюстрацию. Проверьте один промпт перед серией запросов. Размер, референсы и настройки влияют на цену — смотрите актуальный каталог.

Для изображений товаров начните с Seedream 5.0 Pro. Ниже — выбор модели, промпты и путь от запроса до файла. Все поля перечислены в справочнике моделей изображений.


Что с их помощью создают

ЗадачаЧто важнее всегоС чего начать
Обложки для блога и соцсетейскорость, форматы, ценаnano-banana-2-lite, z-image
Визуалы продуктов и упаковкиразрешение, реалистичные материалыnano-banana-pro, seedream-5-0-pro
Изображение с надписямикачество текстаgpt-image-2
Много вариантов на выборбыстрые повторные задачиseedream-5-0-lite
Графика для печативывод 4Knano-banana-pro, nano-banana-2, gpt-image-2
Управляемый художественный стильстилизация, upscale, вариацииmidjourney
Сверхширокие баннерыэкстремальные пропорцииnano-banana-2 (8:1, 1:8)
Точный размер рекламного местаwidth + heightwan2.7-image, wan2.7-image-pro
Кадр для последующей анимациисогласованность с видеомодельюлюбая, затем image-to-video

Какую модель выбрать

gpt-image-2 — модель, которая умеет писать. Если в кадре должно быть слово, вывеска, этикетка или UI-макет, начинайте с неё. quality (low/medium/high) действительно меняет скорость и точность, а набор форматов очень широк — вплоть до 3:1 и 1:3.

Семейство nano-banana — универсальный рабочий инструмент. nano-banana-2-lite подходит для дешёвых черновиков, nano-banana — быстрый вариант, nano-banana-pro выдаёт 4K, а nano-banana-2 поддерживает панорамы 1:4, 1:8, 4:1 и 8:1, которых нет у других моделей.

seedream-5-0-lite — быстрый перебор концепций. Создавайте несколько отдельных задач с одним промптом и выбирайте лучшие результаты. seedream-5-0-pro делает ставку на качество одного изображения, а seedream-4-5 предлагает promptOptimizeMode, который перерабатывает промпт перед рендером.

z-image — простой быстрый вариант. Пять форматов, лимит промпта 1000 символов и никаких уровней разрешения. Хороший выбор, когда нужна качественная картинка без дополнительных решений.

wan2.7-image / wan2.7-image-pro — точные размеры. Только эти модели принимают width и height в пикселях (1–4096). Если дизайн требует ровно 1200×628 без кропа, используйте их. Версия -pro лучше прорабатывает детали.

grok-imagine-2.0-image работает только как text-to-image, поддерживает семь форматов и подходит как быстрый второй взгляд на концепцию. grok-imagine-1.5-image — более дешёвое предыдущее поколение.

midjourney — управляемый художественный процесс. Модель сначала возвращает сетку 2×2, а затем позволяет выполнить upscale, variation, pan, zoom и reroll. Параметры stylize, chaos и weird управляют эстетикой. Выбирайте её, если важен визуальный язык и вы готовы делать итерации. Цепочка действий описана в Редактировании изображений.


Как написать точный промпт

Модели изображений предсказуемо реагируют на конкретику в таком порядке:

предмет → композиция и кадрирование → свет → материал и фактура → техника или стилистический ориентир.

«Чашка кофе» даст стоковую фотографию. «Керамический пуровер на поцарапанной стальной столешнице, вид сверху, жёсткий боковой свет, малая глубина резкости, фуд-фотография» уже является брифом.

  • Сначала скажите, что изображено, затем — как это снято или нарисовано. Формулировки 35-мм фотография, редакционная иллюстрация, изометрический 3D-рендер или ризография дают больше согласованности, чем набор эпитетов.
  • Слова о кадрировании просты и эффективны. Вид сверху, крупный план, общий план, по центру со свободным местом сверху обычно выполняются.
  • Точное количество объектов ненадёжно. Просьба о пяти бутылках может дать четыре или шесть. Если число критично, создайте объект один раз и соберите композицию в редакторе.
  • Референс стиля надёжнее описания. Если есть подходящая картинка, передайте её для редактирования. См. Редактирование изображений.
  • Когда важен текст, берите способную к нему модель. gpt-image-2, nano-banana-2 и nano-banana-pro могут осмысленно разместить короткую надпись, но результат всё равно нужно вычитать.

Рецепты

Композиция с местом для заголовка — nano-banana-2, size: "1:1":

text
A minimalist composition featuring a single, delicate red maple leaf positioned
in the bottom-right of the frame. The background is a vast, empty off-white
canvas, creating significant negative space for text. Soft, diffused lighting
from the top left. Square image.

Модель сохраняет и положение листа в углу, и пустое поле. Точное место предмета работает надёжнее расплывчатой просьбы «оставить место для текста».

Nano Banana 2.1 keeps the subject in the bottom-right and leaves a genuinely usable field for typography.
Nano Banana 2.1 keeps the subject in the bottom-right and leaves a genuinely usable field for typography.

Source: Google AI for Developers, used under CC BY 4.0; format and dimensions adapted.

Коммерческий предметный снимок — nano-banana-2, size: "1:1":

text
A high-resolution, studio-lit product photograph of a minimalist ceramic coffee
mug in matte black, presented on a polished concrete surface. The lighting is a
three-point softbox setup designed to create soft, diffused highlights and
eliminate harsh shadows. The camera angle is a slightly elevated 45-degree shot
to showcase its clean lines. Ultra-realistic, with sharp focus on the steam
rising from the coffee. Square image.

Материал, поверхность, схема света и ракурс оставляют модели мало пространства для собственной трактовки «премиальной предметной фотографии».

Nano Banana 2.1 turns lighting setup, surface and camera angle into a clean commercial product shot.
Nano Banana 2.1 turns lighting setup, surface and camera angle into a clean commercial product shot.

Source: Google AI for Developers, used under CC BY 4.0; format and dimensions adapted.

Картинка с надписью — nano-banana-2:

text
A photo of a glossy magazine cover, the minimal blue cover has the large bold
words Nano Banana. The text is in a serif font and fills the view. No other
text. In front of the text there is a portrait of a person in a sleek and
minimal dress. She is playfully holding the number 2, which is the focal point.
Put the issue number and "Feb 2026" date in the corner along with a barcode. The
magazine is on a shelf against an orange plastered wall, within a designer store.

Короткий текст в кавычках и ясная иерархия дают надписи конкретную роль. Дата, номер выпуска и штрихкод делают пример сложнее обычной вывески.

Nano Banana 2.1 renders a structured magazine cover with a large serif title, issue date and barcode.
Nano Banana 2.1 renders a structured magazine cover with a large serif title, issue date and barcode.

Source: Google AI for Developers, used under CC BY 4.0; format and dimensions adapted.

Несколько концепций — отдельные задачи seedream-5-0-lite с size: "1:1" и resolution: "2K":

text
Mascot character for a developer tool: a friendly otter wearing a small
backpack, vector illustration, thick outlines, limited palette of teal and
sand, plain background

Повторите один промпт несколькими запросами, соберите все результаты и выберите лучшие. Каждый публичный запрос создаёт один результат.

Ровно 1200×628 без кропа — wan2.7-image-pro, width: 1200, height: 628:

text
Abstract geometric background, overlapping translucent planes in indigo and
amber, soft grain, no text

width и height полностью заменяют size; модель возвращает запрошенные пиксели, что удобно для рекламного места фиксированного размера.

About these samples. Ready-made examples are copied to our own storage only when their source permits reuse. The exact prompt appears above each result, and the original source and license are linked below the media.


Сравнение моделей

МодельФорматРазрешениеОсобенность
nano-bananasize1Kсамая быстрая в семействе
nano-banana-prosize1K 2K 4Kвысокое разрешение
nano-banana-2size512px 1K 2K 4Kсамый широкий набор форматов
nano-banana-2-litesize1Kдешёвый уровень, только 1K
gpt-image-2size1k 2k 4kquality low/medium/high
seedream-5-0-litesize2K 3K 4Kбыстрый перебор, outputFormat
seedream-5-0-prosize1K 2Kодно изображение, упор на качество
seedream-4-5size2K 4KpromptOptimizeMode
z-imagesize—5 форматов, промпт до 1000 символов
wan2.7-imagesize или width+height—точные размеры в пикселях
wan2.7-image-prosize или width+height—улучшенная детализация
grok-imagine-1.5-imagesize—5 форматов
grok-imagine-2.0-imagesize—только text-to-image, 7 форматов
midjourneysize—action, stylize, chaos

Все модели изображений называют поле пропорций size. На стороне видео модели Veo используют aspectRatio. Полные таблицы приведены в разделе Модели изображений.


Размер и разрешение

size — строка с соотношением сторон, а не размер в пикселях. Допустимые значения зависят от модели:

СемействоДопустимые значения size
nano-banana, nano-banana-pro1:1 2:3 3:2 3:4 4:3 4:5 5:4 9:16 16:9 21:9
nano-banana-2, nano-banana-2-liteпредыдущие плюс 1:4 1:8 4:1 8:1
gpt-image-2auto 1:1 16:9 9:16 4:3 3:4 3:2 2:3 5:4 4:5 2:1 1:2 3:1 1:3 21:9 9:21
seedream-*1:1 4:3 3:4 16:9 9:16 3:2 2:3 21:9 9:21 auto
z-image1:1 4:3 3:4 16:9 9:16
wan2.7-image*1:1 16:9 9:16 4:3 3:4 3:2 2:3
grok-imagine-1.5-image1:1 16:9 9:16 3:2 2:3
grok-imagine-2.0-image1:1 2:3 3:2 3:4 4:3 9:16 16:9
midjourneyлюбая строка w:h, например 16:9, 21:9, 1:1

Экстремальные панорамы 1:4, 1:8, 4:1, 8:1 есть только у nano-banana-2 и nano-banana-2-lite.

resolution задаётся отдельно, причём регистр различается: Nano Banana и Seedream используют 1K / 2K / 4K, а gpt-image-2 — 1k / 2k / 4k. У z-image, wan2.7-image*, grok-imagine-* и midjourney поля resolution нет.

У моделей Seedream разные допустимые уровни. Общий DTO не означает общие возможности: seedream-5-0-pro принимает 1K и 2K, seedream-5-0-lite — 2K/3K/4K, а seedream-4-5 — 2K/4K. Недопустимое значение вернёт 400 invalid_input, а не понижение.

wan2.7-image и wan2.7-image-pro также принимают точные width и height от 1 до 4096. Если заданы оба поля, они переопределяют size.


Несколько изображений

Каждый публичный запрос генерации создаёт один результат. Для серии создайте отдельную задачу на каждое изображение. Это позволяет независимо отслеживать, повторять и тарифицировать варианты. outputFormat (jpeg или png) поддерживают две модели Seedream 5.0; seedream-4-5 вместо него предлагает promptOptimizeMode (standard или fast).

Готовый файл приходит в массиве files:

json
{
"code": 200,
"data": {
"taskId": "019ca8b2-77d1-7a04-8c2e-15f9b0d4a6e1",
"status": "finished",
"files": [
{
"fileUrl": "https://storage.apihubs.ru/generated/img-1a.png",
"fileType": "image"
}
],
"createdTime": "2026-02-28T12:41:02.000Z"
}
}

Всегда обрабатывайте весь массив files, чтобы код оставался корректным и для операций, возвращающих несколько результатов.


Отправка запроса

Минимальный вызов text-to-image:

sh
curl -X POST https://api.apihubs.ru/api/v1/generation/create \
-H "Authorization: Bearer sk-your-key" \
-H "Content-Type: application/json" \
-d '{
"model": "nano-banana-2",
"input": {
"prompt": "A brass orrery on a walnut desk, single window light, shallow depth of field",
"size": "3:2",
"resolution": "2K"
}
}'
json
{
"code": 200,
"data": {
"taskId": "019ca8b2-77d1-7a04-8c2e-15f9b0d4a6e1",
"status": "not_started",
"createdAt": "2026-02-28T12:41:02.000Z"
}
}

У gpt-image-2 параметр quality меняет задержку, цену и точность:

ЗначениеКомпромисс
lowбыстро и дёшево
mediumбаланс, значение по умолчанию
highмаксимальная точность
json
{
"model": "gpt-image-2",
"input": {
"prompt": "A brass orrery on a walnut desk, single window light",
"size": "3:2",
"resolution": "2k",
"quality": "high"
}
}

Midjourney из текста

У публичной модели midjourney поле action выбирает операцию. Для генерации из текста используется imagine; это также значение по умолчанию.

json
{
"model": "midjourney",
"input": {
"action": "imagine",
"prompt": "A brass orrery on a walnut desk, single window light",
"size": "3:2",
"version": "7",
"stylize": 250,
"chaos": 15,
"speed": "relax"
}
}
ПолеДиапазонФлаг Midjourney
stylize0–1000--s
chaos0–100--c
weird0–3000--w
version8.1 7 6.1 5.2 5.1--v
quality0.25 0.5 1 2--q
speedrelax fast turboуровень тарификации

Нативные --flags можно писать в prompt, но структурированное поле тела переопределяет одноимённый флаг. Остальные флаги можно передать строкой extra.

Задача imagine создаёт сетку 2×2. Для последующего действия отдельная плитка выбирается через index (1–4). Процесс описан в Редактировании изображений.


Полный цикл

ts
const BASE = "https://api.apihubs.ru/api/v1";
const KEY = process.env.API_STOCK_KEY!;
type TaskFile = { fileUrl: string; fileType: "image" | "video" | "music" };
async function generateImage(prompt: string): Promise<string[]> {
const create = await fetch(`${BASE}/generation/create`, {
method: "POST",
headers: {
Authorization: `Bearer ${KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "seedream-5-0-lite",
input: { prompt, size: "1:1", resolution: "2K", outputFormat: "png" },
}),
});
const created = await create.json();
if (!create.ok) {
throw new Error(`${created.error.code}: ${created.error.message}`);
}
const taskId: string = created.data.taskId;
const deadline = Date.now() + 10 * 60_000;
while (Date.now() < deadline) {
await new Promise((r) => setTimeout(r, 3_000));
const res = await fetch(`${BASE}/task/status/${taskId}`, {
headers: { Authorization: `Bearer ${KEY}` },
});
const body = await res.json().catch(() => null);
if (!res.ok) {
if (res.status === 429) {
const retryAfter = Number(res.headers.get("Retry-After") ?? 3);
await new Promise((r) => setTimeout(r, retryAfter * 1000));
continue;
}
const message = body?.error?.message ?? `${res.status} ${res.statusText}`;
throw new Error(message);
}
const { data } = body;
if (data.status === "finished") {
return (data.files as TaskFile[]).map((f) => f.fileUrl);
}
if (data.status === "failed" || data.status === "expired") {
throw new Error(data.errorMessage);
}
}
throw new Error(`timed out waiting for ${taskId}`);
}
const urls = await generateImage("Isometric cutaway of a lighthouse");
console.log(urls.length); // → 1

Для изображений подходит интервал опроса 3 секунды. Общий лимит на IP — 120 запросов за 60 секунд; см. Лимиты запросов. Для пакетной обработки передайте webhook и принимайте готовый ответ без опроса; см. Вебхуки.

Запустите это со своим ключом

Выберите модель в каталоге API Hubs, проверьте цену и попробуйте её в браузере или через API.

Читать дальше