Nano Banana

ПровайдерGoogle

nano-banana — генерация изображений-модель от Google.

image_to_imagetext_to_image

Попробуйте прямо здесь

Что умеет Nano Banana

  • Image-to-Image
  • Text-to-image

Стоимость

за изображение
10.92 ₽

Цены указаны в рублях и списываются с баланса проекта за успешные запросы. Надбавки (+) суммируются с базовой ставкой.

Технические характеристики

Vendor
google
Modality
image

Параметры запроса

Параметры, которые принимает модель. Передаются в теле запроса.

ПараметрТипДиапазон / значенияПо умолчаниюОписание
positivePromptreq
string
min: 2 · max: 3000
Текстовый промпт описывающий желаемое изображение или редактирование. Поддерживает rich prompts и multi-image inputs для character identity консистентности.
1 пример
Примеры
Корги в красном свитере сидит на крыше Эйфелевой башни, мягкий закатный свет.
width
integer
Ширина в px. Парный к height — только валидные комбинации (см. ниже).
height
integer
Высота в px. Парный к width. Список валидных значений — см. combos у width.
inputs.referenceImages
array 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.safetyTolerance
enum
high, medium, low, none, off
none
Уровень safety-фильтра Google: high — самый строгий, off — отключено.
numberResults
integer
min: 1 · max: 20
1
Сколько вариаций сгенерировать. Для image — до 20 за один запрос.
outputType
enum
URL, base64Data, dataURI
URL
Формат доставки: URL — CDN-ссылка (default), base64Data — raw base64, dataURI — data:image/...;base64,...
outputFormat
enum
JPG, PNG, WEBP
JPG
Формат изображения.
outputQuality
integer
min: 20 · max: 99
95
Качество компрессии (20–99).
async
boolean
false
true → task_id для async-polling. false (default) → sync-ответ сразу.
safety.checkContent
boolean
false
Включить проверку контента на NSFW / запрещёнку (Runware-уровень). Отдельно от Google providerSettings.google.safetyTolerance.
safety.mode
enum
none, fast
none
Режим safety-сканера: none — выключен, fast — стандартная проверка.
webhookURL
string
URL для POST-уведомления при готовности async-задачи.
1 пример
Примеры
https://yourapp.com/webhooks/runware
uploadEndpoint
string
Presigned URL для автозагрузки готового изображения.
1 пример
Примеры
https://bucket.s3.amazonaws.com/result.png?X-Amz-Signature=...

Поддерживаемые размеры

Допустимы только эти комбинации width × height. Произвольные значения вендор отклонит — используй resolution preset либо одну из пар ниже.

1:1
1024×1024
3:2
1248×832
2: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.

ПолеТипЗначенияОписание
created
integer
Unix timestamp когда сгенерировано.
data
array
Каждый элемент:
  • url— string · CDN URL картинки (если outputType=URL).
  • b64_json— string · Base64-кодированный PNG/JPG (если outputType=base64Data).
  • taskUUID— string · Идентификатор upstream-задачи (для chain в i2i и т.п.).
  • seed— integer · Использованный seed (если детерминистичная генерация).
provider
string
Вендор для отладки.

Async (HTTP 202)

Если в запросе передан async:true → HTTP 202.

ПолеТипЗначенияОписание
id
string
task_id для опроса через GET /v1/tasks/{id}.
object
string
image.task
status
enum
queued, processing, completed, failed
model
string
Public model id.
created
integer

Опрос статуса (GET /v1/tasks/{id})

GET /v1/tasks/{id} — опрос статуса async-задачи.

ПолеТипЗначенияОписание
id
string
object
string
task
status
enum
queued, processing, completed, failed, canceled
modality
string
image
model
string
created
integer
data
array
Каждый элемент:
  • url— string · CDN URL артефакта (если completed).
error
string
Сообщение об ошибке (если 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)
Полная документация модели