Руководство по использованию
Создание изображений товаров для электронной коммерции с помощью Nano-Banana-2-Lite через API hiapi
Когда вы генерируете изображения товаров для каталога электронной коммерции, юнит-экономика важнее любого отдельного изображения. Одно главное изображение за $0.17 — это нормально, когда вам нужно всего десять; но совсем другое дело, когда вам нужно по три изображения для 1000 SKU. Именно эту нишу заполняет Nano-Banana-2-Lite на hiapi: $0.033 за изображение, разрешение 1K, тот же асинхронный API задач, что и у более крупных моделей Nano-Banana, и поддержка до 10 референсных изображений — этого достаточно, чтобы по оптовой цене выполнить классический набор из трёх изображений для электронной коммерции: главное изображение на белом фоне, лайфстайл-сцена и премиальный тёмный вариант.
Это руководство — бюджетный компаньон к нашей более ранней статье «Рабочий процесс Nano-Banana для электронной коммерции». Всё ниже — запросы, вывод, время выполнения, стоимость — взято из наших реальных запусков живого API на момент написания.

Место Lite в линейке Nano-Banana
Следующая информация проверена по странице тарифов hiapi на момент написания:
| Модель | Цена за изображение | Разрешение | Референсные изображения |
|---|---|---|---|
| Nano-Banana-2-Lite | $0.033 | 1K | до 10 через image_urls |
| nano-banana | $0.05 | Стандартное | Поддерживается |
| nano-banana-2 | $0.085 (1K) / $0.076 (2K) / $0.114 (4K) | до 4K | через image_input |
| nano-banana-pro | $0.17 (1K/2K) / $0.2992 (4K) | до 4K | через image_input |
Правило выбора для товарных каталогов простое:
- Листинги на маркетплейсах, длинный хвост SKU, A/B-варианты → Lite. При 1K (короткая сторона около 1024px) вывод соответствует или превосходит стандарты большинства маркетплейсов для загружаемых изображений после сжатия.
- Баннеры на главной странице, ключевые визуалы маркетинговых кампаний, печатная продукция → переходите на nano-banana-pro для вывода 2K/4K и более сильного рендеринга текста. Lite — для массовости, Pro — для ключевых изображений; они дополняют друг друга, а не конкурируют.
Рабочий запрос
Nano-Banana-2-Lite работает на едином асинхронном API задач hiapi: отправьте задачу, опрашивайте до завершения, скачайте результат. Перед кодом есть три замечания:
- ID модели чувствителен к регистру. Отправляйте точно
Nano-Banana-2-Lite— вариант в нижнем регистре возвращает400 MODEL_UNAVAILABLE. aspect_ratio— это перечисление, а не свободный формат. Допустимые значения:auto,1:1,2:3,3:2,3:4,4:3,4:5,5:4,9:16,16:9,21:9,1:4,4:1,1:8,8:1. Поляresolutionнет — Lite фиксирован на 1K, отправкаresolutionприведёт к отклонению запроса.- URL вывода — это подписанные ссылки, которые истекают. Скачивайте байты сразу после успешного завершения задачи; храните файлы, а не URL.
curl -s -X POST https://api.hiapi.ai/v1/tasks \
-H "Authorization: Bearer $HIAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "Nano-Banana-2-Lite",
"input": {
"prompt": "Professional e-commerce product photo of a minimalist matte-white wireless earbuds charging case, centered on a seamless pure white background, soft even studio lighting, gentle shadow beneath, crisp edges, catalog-ready hero shot, no text, no logo",
"aspect_ratio": "1:1"
}
}'
Ответ содержит taskId. Опрашивайте GET /v1/tasks/{taskId}, пока status не станет success, затем скачайте data.output[0].url. В наших запусках одна задача завершалась от начала до конца примерно за 55–65 секунд, включая время опроса.
Вот вывод этого точного промпта — необработанное изображение, сгенерированное Lite:

Написание промптов для главных изображений уровня каталога
Для листингов на белом фоне шаблон промпта, который у нас всегда работал:
*Professional e-commerce product photo of [product, materials, colors], centered on a seamless pure white background, soft even studio lighting, subtle natural shadow, crisp focus, marketplace catalog style, no text, no logo*
Ещё два продукта по тому же шаблону, изменены только описание продукта и соотношение сторон (4:5 подходит для вертикальных категорий мода/красота, 4:3 — для обуви и электроники):


Практические замечания для массовой генерации:
- Всегда заканчивайте на «no text, no logo». Как и большинство моделей изображений, иначе Lite произвольно выдумывает текст на этикетках и брендинг — это проблема соответствия требованиям для реальных товарных листингов. Если у вашего продукта есть настоящая этикетка, накладывайте её afterward или используйте путь с референсными изображениями ниже.
- Явно указывайте тень («subtle natural shadow»). Без этого требования вы часто получаете эффект парящей вырезки, который на маркетплейсах выглядит фальшиво.
- Один продукт на изображение. Lite надёжно справляется с композициями с одним субъектом; при раскладке нескольких продуктов вам уже понадобятся более крупные модели.
Тот же продукт, новая сцена: рабочий процесс с image_urls
Настоящий трюк электронной коммерции — в согласованности: одно эталонное изображение продукта, переставленное в лайфстайл- и премиальные сцены, при этом продукт не деформируется между изображениями. Lite принимает до 10 референсных изображений через поле image_urls (примечание: более крупные модели Nano-Banana-2 называют это поле image_input — переименование является главной ловушкой при портировании, см. наш урок по API Lite).
Мы используем главное изображение выше в качестве референса и просим две перестановки:
{
"model": "Nano-Banana-2-Lite",
"input": {
"prompt": "Place this exact product on a warm oak wooden desk next to a laptop keyboard and a small green potted plant, soft morning window light from the left, shallow depth of field, cozy home-office lifestyle e-commerce scene, keep the product design, colors and proportions unchanged",
"aspect_ratio": "4:3",
"image_urls": ["https://your-cdn.example.com/hero-earbuds.jpg"]
}
}


Оба варианта вернулись с сохранёнными пропорциями кейса, швом крышки и светодиодным индикатором. Фраза «keep the product design, colors and proportions unchanged» здесь очень помогает — включайте её в каждый промпт с референсным изображением. Референсные URL должны быть общедоступными (подписанные приватные ссылки, истекающие в середине задачи, приведут к её провалу).
Пакетный конвейер на Python
Задачи независимы, поэтому пакетная пропускная способность достигается за счёт одновременной отправки всех задач и опроса их как группы — в наших запусках пять параллельных задач завершались примерно за то же фактическое время, что и одна. Минимальный конвейер:
import json
import subprocess
import time
API = "https://api.hiapi.ai/v1/tasks"
TOKEN = "sk-..." # your hiapi API key
def _curl(args):
out = subprocess.run(["curl", "-s", *args], capture_output=True, text=True, timeout=90)
return json.loads(out.stdout)
def submit(prompt, aspect_ratio="1:1", image_urls=None):
inp = {"prompt": prompt, "aspect_ratio": aspect_ratio}
if image_urls:
inp["image_urls"] = image_urls
data = _curl(["-X", "POST", API,
"-H", f"Authorization: Bearer {TOKEN}",
"-H", "Content-Type: application/json",
"-d", json.dumps({"model": "Nano-Banana-2-Lite", "input": inp})])
return data["data"]["taskId"]
def wait(task_id, timeout_s=600):
deadline = time.time() + timeout_s
while time.time() < deadline:
task = _curl([f"{API}/{task_id}", "-H", f"Authorization: Bearer {TOKEN}"])["data"]
if task["status"] == "success":
return task["output"][0]["url"]
if task["status"] == "fail":
raise RuntimeError(f"{task_id}: {task.get('error')}")
time.sleep(5)
raise TimeoutError(task_id)
HERO_TMPL = ("Professional e-commerce product photo of {product}, centered on a "
"seamless pure white background, soft even studio lighting, subtle "
"natural shadow, crisp focus, marketplace catalog style, no text, no logo")
skus = [
{"id": "SKU-001", "product": "a matte-white wireless earbuds charging case"},
{"id": "SKU-002", "product": "an amber glass serum bottle with black dropper cap"},
{"id": "SKU-003", "product": "a white minimalist running sneaker with light gray sole"},
]
# 1) submit everything up front
tasks = {sku["id"]: submit(HERO_TMPL.format(product=sku["product"])) for sku in skus}
# 2) collect results and persist bytes immediately — output URLs expire
for sku_id, task_id in tasks.items():
url = wait(task_id)
subprocess.run(["curl", "-s", "-o", f"{sku_id}.jpg", url], timeout=120)
print(f"{sku_id} done")
Для производственных объёмов стоит внедрить два улучшения: использовать webhook-колбэки вместо опроса (передайте callback.url и when: "final" при создании задачи) и сохранять каждый taskId вместе с записями SKU, чтобы аварийно завершившийся рабочий процесс мог восстановиться, а не платить повторно. Оба описаны в уроке по API задач и документации hiapi.
Реальная стоимость одного каталога
При $0.033 за изображение и стандартной обработке из трёх изображений (главное + лайфстайл + тёмный/детальный вариант):
| Размер каталога | Количество изображений (×3) | Nano-Banana-2-Lite | Та же работа на nano-banana-pro |
|---|---|---|---|
| 100 SKU | 300 | $9.90 | $51.00 |
| 500 SKU | 1,500 | $49.50 | $255.00 |
| 1,000 SKU | 3,000 | $99.00 | $510.00 |
Разумный смешанный подход: прогнать весь каталог через Lite, а затем переснять только 20 самых доходных SKU на nano-banana-pro в 2K/4K для главной страницы и маркетинговых кампаний. Для примера с 100 SKU это $9.90 + около $10 за изображения Pro — всё ещё лишь малая часть дневной стоимости фотостудии.
Заложите 5–10% запаса на повторные попытки для промптов, которым нужен второй шанс (обычно это лишний текст на этикетках), и помните, что проваленные задачи сообщаются как fail с объектом ошибки — только успешные генерации стоит подключать к вашему контролю качества.
Итог
Nano-Banana-2-Lite не заменит ваш флагманский конвейер ключевых визуалов — для этого предназначен уровень Pro. Но для длинного хвоста товарного каталога, где каждому SKU нужны презентабельные, согласованные изображения, а бюджет измеряется за тысячу изображений, $0.033 при разрешении 1K с поддержкой референсных изображений трудно оспорить.
Получите API-ключ и начните со страницы модели Nano-Banana-2-Lite — приведённый выше запрос готов к использованию после замены токена, а пакетный скрипт масштабирует его с одного SKU до тысячи.
Похожие статьи
Все статьи →-
Руководство по использованию
Руководство по началу работы с seedream-5.0-pro/image-to-image: возможности, цены и ключевые моменты интеграции
Границы возможностей модели редактирования изображений ByteDance, принципы тарификации и практика инженерной интеграции
-
Руководство по использованию
Руководство по использованию seedream-5.0-pro text-to-image: границы возможностей, интеграция API и контроль затрат
Практический взгляд для разработчиков: от ключевых параметров до оценки стоимости $0.05 за изображение
-
Руководство по использованию
Руководство по началу работы с Hailuo 2.3 Fast для генерации видео из изображений: границы возможностей, цены и практика интеграции
Ключевые моменты выбора и интеграции модели MiniMax для генерации видео из изображений для разработчиков