Nano Banana
nano-banana — генерация изображений-модель от Google.
image_to_imagetext_to_image
Попробуйте прямо здесь
Nano Banana Открыть в Playground
Что умеет Nano Banana
- Image-to-Image
- Text-to-image
Стоимость
за изображение
10.92 ₽
Цены указаны в рублях и списываются с баланса проекта за успешные запросы. Надбавки (+) суммируются с базовой ставкой.
Технические характеристики
Vendor
google
Modality
image
Параметры запроса
Параметры, которые принимает модель. Передаются в теле запроса.
ПараметрТипДиапазон / значенияПо умолчаниюОписание
positivePromptreqstring
min: 2 · max: 3000
—Текстовый промпт описывающий желаемое изображение или редактирование. Поддерживает rich prompts и multi-image inputs для character identity консистентности.
1 пример
Примеры
Корги в красном свитере сидит на крыше Эйфелевой башни, мягкий закатный свет.
widthinteger
—
—Ширина в px. Парный к height — только валидные комбинации (см. ниже).
heightinteger
—
—Высота в px. Парный к width. Список валидных значений — см. combos у width.
inputs.referenceImagesarray of strings
min: 1 · max: 8
—Reference-изображения (UUID / URL / Data URI / Base64). До 8 шт — для multi-image inputs, character identity consistency, targeted edits.
1 пример
Примеры
[ "https://example.com/character.jpg" ]
providerSettings.google.safetyToleranceenum
high, medium, low, none, off
noneУровень safety-фильтра Google: high — самый строгий, off — отключено.
numberResultsinteger
min: 1 · max: 20
1Сколько вариаций сгенерировать. Для image — до 20 за один запрос.
outputTypeenum
URL, base64Data, dataURI
URLФормат доставки: URL — CDN-ссылка (default), base64Data — raw base64, dataURI — data:image/...;base64,...
outputFormatenum
JPG, PNG, WEBP
JPGФормат изображения.
outputQualityinteger
min: 20 · max: 99
95Качество компрессии (20–99).
asyncboolean
—
falsetrue → task_id для async-polling. false (default) → sync-ответ сразу.
safety.checkContentboolean
—
falseВключить проверку контента на NSFW / запрещёнку (Runware-уровень). Отдельно от Google providerSettings.google.safetyTolerance.
safety.modeenum
none, fast
noneРежим safety-сканера: none — выключен, fast — стандартная проверка.
webhookURLstring
—
—URL для POST-уведомления при готовности async-задачи.
1 пример
Примеры
https://yourapp.com/webhooks/runware
uploadEndpointstring
—
—Presigned URL для автозагрузки готового изображения.
1 пример
Примеры
https://bucket.s3.amazonaws.com/result.png?X-Amz-Signature=...
Поддерживаемые размеры
Допустимы только эти комбинации width × height. Произвольные значения вендор отклонит — используй resolution preset либо одну из пар ниже.
1:1
1024×10243:2
1248×8322:3
832×1248~4:3
1184×864~3:4
864×1184~9:7
1152×896~7:9
896×1152~16:9
1344×768~9:16
768×1344~21:9
1536×672Параметры ответа
Что возвращает API. У медиа-моделей формат зависит от режима: sync — сразу результат, async — task_id для опроса через GET /v1/tasks/{id}.
Sync (HTTP 200)
Sync-ответ (default). HTTP 200 + JSON.
ПолеТипЗначенияОписание
createdinteger
—
Unix timestamp когда сгенерировано.
dataarray
—
Каждый элемент:
url— string · CDN URL картинки (если outputType=URL).b64_json— string · Base64-кодированный PNG/JPG (если outputType=base64Data).taskUUID— string · Идентификатор upstream-задачи (для chain в i2i и т.п.).seed— integer · Использованный seed (если детерминистичная генерация).
providerstring
—
Вендор для отладки.
Async (HTTP 202)
Если в запросе передан async:true → HTTP 202.
ПолеТипЗначенияОписание
idstring
—
task_id для опроса через GET /v1/tasks/{id}.
objectstring
image.task
statusenum
queued, processing, completed, failed
modelstring
—
Public model id.
createdinteger
—
Опрос статуса (GET /v1/tasks/{id})
GET /v1/tasks/{id} — опрос статуса async-задачи.
ПолеТипЗначенияОписание
idstring
—
objectstring
task
statusenum
queued, processing, completed, failed, canceled
modalitystring
image
modelstring
—
createdinteger
—
dataarray
—
Каждый элемент:
url— string · CDN URL артефакта (если completed).
errorstring
—
Сообщение об ошибке (если failed).
Пример кода
nano-banana_example.py
from openai import OpenAI
client = OpenAI(api_key="rk_live_...", base_url="https://api.ranvik.ru/v1")
resp = client.images.generate(
model= "nano-banana",
positivePrompt= "Пример промпта",
width= 1,
height= 1,
"inputs.referenceImages": [],
"providerSettings.google.safetyTolerance": "none",
numberResults= 1,
outputType= "URL",
outputFormat= "JPG",
outputQuality= 95,
async= False,
"safety.checkContent": False,
"safety.mode": "none",
webhookURL= "https://example.com/...",
uploadEndpoint= "value",
)
print(resp)