Объявление: Ограниченное время: скидка 20% на новинки GPT Image 2.6 Flare и Sunburst, попробуйте сейчас
HiAPI
Блог

Руководство по использованию

Генерация изображений товаров для электронной коммерции с помощью qwen-image-2.1-pro: использование API и рецепты промптов

Полное руководство для разработчиков: прозрачные PNG, редактирование изображений, отрисовка текста и готовые к копированию промпты для curl и Python requests

Nov 12, 2026
Cover art: overlapping translucent glass planes cast cool-blue bands over a pale field in a calm, architectural layered composition.
На этой странице

Почему для изображений товаров электронной коммерции стоит выбрать qwen-image-2.1-pro

Работа над изображениями для электронной коммерции редко сводится к одной задаче. Это может быть каталоговая съёмка для нового SKU, вырезание фона для карточки товара на маркетплейсе, лайфстайл-изображение для лендинга и баннер с промо-бейджем — и всё это обычно нужно сдать на одной неделе. qwen-image-2.1-pro заслуживает оценки потому, что когда вашему процессу нужно получить всё перечисленное из одних и тех же данных о товаре, он справляется с генерацией, редактированием существующих материалов, выводом прозрачных PNG и отрисовкой текста на изображении в рамках одной модели, а не зависит от цепочки специализированных инструментов.

Три типа задач покрывают большую часть объёма работ:

  • Прозрачное вырезание — товар чисто отделён на прозрачном фоне и может быть сразу размещён в любом слоте CMS.
  • Композиция сцены — товар помещён в правдоподобное жизненное или студийное окружение, генерируемое по текстовому описанию с референсным изображением.
  • Макеты с текстом — этикетки, бейджи и баннеры, где текст должен быть чётко читаемым и правильно расположенным.

Где он не заменяет студию: главные имиджевые изображения со строгими требованиями к брендовому освещению, а также любые материалы, где геометрия товара регулируется законодательством (например, регулируемая упаковка). Рассматривайте генерацию как средство расширения охвата и ускорения итераций, а затем сохраняйте ручной контрольный этап — именно для этого и нужен процесс проверки, описанный далее в этом руководстве.

Практическая причина принять решение пораньше — архитектура промптов. Если вы сразу знаете, что одна и та же модель будет обслуживать вырезание, сцены и текстовые макеты, вы можете создать небольшой набор версионированных шаблонов промптов вместо того, чтобы писать промпты на ходу при каждом запросе. Это решение ничего не стоит на старте, но избавляет от переделок в будущем.

Один вход товара, три преломлённых пути — выход модели разветвляется от одного источника.

Работающие запросы: curl и Python

Прежде чем проектировать промпты, сначала успешно получите одно изображение. На HiAPI форма запроса у всех моделей одинакова: один API-ключ, одно имя модели и входные параметры в теле запроса. Минимальный параметр, необходимый qwen-image-2.1-pro — это промпт, а также, если задача состоит в редактировании, а не в создании с нуля, входное изображение, которое вы хотите отредактировать.

curl

curl -X POST "https://api.hiapi.ai/v1/images/generations" \
  -H "Authorization: Bearer $HIAPI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "qwen-image-2.1-pro",
    "prompt": "Студийная фотография матовой чёрной керамической кофейной чашки, ракурс три четверти, мягкий рассеянный основной свет слева, лёгкое отражение на светло-сером бесшовном фоне, без текста",
    "size": "1024x1024"
  }'

Python requests

import os
import requests

resp = requests.post(
    "https://api.hiapi.ai/v1/images/generations",
    headers={
        "Authorization": f"Bearer {os.environ['HIAPI_API_KEY']}",
        "Content-Type": "application/json",
    },
    json={
        "model": "qwen-image-2.1-pro",
        "prompt": "Студийная фотография матовой чёрной керамической кофейной чашки, "
                  "ракурс три четверти, мягкий рассеянный основной свет слева, "
                  "лёгкое отражение на светло-сером бесшовном фоне, без текста",
        "size": "1024x1024",
    },
    timeout=120,
)
resp.raise_for_status()
print(resp.json())

На этом этапе стоит выработать две привычки. Во-первых, читайте API-ключ из переменной окружения и никогда не хардкодьте его — вскоре вы будете запускать это из пакетных заданий. Во-вторых, при логировании сохраняйте полное тело ответа, включая любые поля использования, возвращаемые эндпоинтом; именно на их основе вы позже будете измерять «стоимость каждого одобренного материала», а не гадать.

Сначала запустите запрос с универсальным промптом вроде приведённого выше. Убедитесь, что вы получили изображение и что структура ответа соответствует ожиданиям нижестоящего кода. И только затем переходите к рецептам — проектирование промптов требует времени, и вы не захотите обнаружить проблемы с конвейером на полпути.

Один минималистичный запрос: входные данные сходятся к одному эндпоинту, возвращается одно изображение.

Рецепты промптов для прозрачных PNG и сцен с товаром

Импровизированные промпты склонны к дрейфу. Каталожные команды добиваются согласованности, поддерживая небольшой набор шаблонов с явными слотами переменных, версионируя их в репозитории вместе с кодом, вызывающим API, и заменяя слоты для каждого SKU индивидуально.

Рецепт 1: прозрачное вырезание

Вырезание товара {product_name}, {distinguishing_detail}, полностью отделённого на прозрачном фоне.
Ракурс {view_angle}, товар по центру и полностью в кадре, с небольшим отступом по краям.
Мягкое равномерное студийное освещение, без резких теней на фоне, только лёгкая контактная тень непосредственно под товаром.
Фотореалистично, чёткие края, без текста, без реквизита, без элементов фона.

Слоты: {product_name} («матовая чёрная керамическая кофейная чашка»), {distinguishing_detail} («видимая толщина ободка и небольшая ручка»), {view_angle} («три четверти», «спереди», «сверху»). Пункт о прозрачности и пункт «без теней на фоне» должны оставаться дословно; эти две строки выполняют основную работу в задачах вырезания.

Рецепт 2: жизненная сцена

Жизненная фотография товара {product_name} в {scene_description}.
Товар — главный объект: резкий фокус, правильные пропорции, {brand_color_note}.
{lighting_note}. Малая глубина резкости, мягкое размытие фона.
Естественный, редакционный стиль. Без текста, без логотипов, без видимых брендовых标记 на фоне.

Слоты: {scene_description} («светлая минималистичная кухонная столешница с льняной салфеткой и утренним окном»), {brand_color_note} («цвета не изменены, цветовой сдвиг не применён»), {lighting_note} («тёплый направленный утренний свет справа»).

Рецепт 3: студийный главный визуал

Студийная фотография товара {product_name}, ракурс {view_angle}.
{background_description}. Основной свет из {key_light_direction}, мягкое заполняющее освещение, контролируемые отражения.
Фотореалистично, детализированные материалы и текстура поверхности. Без текста.

Две правила сохраняют библиотеку шаблонов здоровой. Никогда не редактируйте шаблон напрямую в скрипте — измените файл шаблона, поднимите номер версии и перегенерируйте. И записывайте, какая версия рецепта создала каждый одобренный материал, чтобы при изменении шаблона вы могли определить, остаются ли старые одобрения действительными.

Редактирование существующих изображений товаров

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

  1. Что изменить — сцену, фон, освещение или добавляемый реквизит.
  2. Что сохранить — форму товара, пропорции, рисунок этикетки, материал и цвет.
  3. Чего избегать — нового текста, новых логотипов, искажённой геометрии, дублирующихся деталей.

Рабочий шаблон:

Отредактируйте эту фотографию товара.
Изменить: заменить фон на {new_background}; изменить освещение на {new_lighting}.
Сохранить: точную форму товара, пропорции, материал поверхности и любой рисунок этикетки в точности как есть.
Не делать: не добавлять текст, не добавлять логотипы, не менять цвет товара и не изменять его геометрию.
Фотореалистичный результат, выглядящий как непрерывная фотосъёмка.

Пример заполнения: {new_background} = «чистый тёплый серый бесшовный фон», {new_lighting} = «мягкий верхний рассеянный свет с плавным градиентом за товаром».

Пункт о сохранении не является гарантией. Длинные правки — замена фона, корректировка освещения и добавление реквизита в одном промпте — дают модели больше пространства для дрейфа в самом товаре. Разделяйте: сначала замена фона, проверьте её, затем внесите второстепенные изменения последующей правкой на одобренном промежуточном результате. Каждый шаг — это одно сравнение, которое проверяющий действительно может оценить.

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

Отрисовка текста и управление макетом

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

Баннер для электронной коммерции с {product_name}.
Макет: товар в правой трети, текстовый блок в левых двух третях, с щедрыми отступами.
Текст: точно отрисовать «{headline}» жирным шрифтом без засечек в качестве заголовка и «{subline}» более лёгким начертанием под ним в качестве подзаголовка.
Стиль: {color_scheme}, чистый современный, высокий контраст для читаемости.
Никакого текста в любом другом месте изображения. Все слова написаны строго так, как указано.

Почему важна каждая строка:

  • Текст в кавычках плюс явная инструкция «точно» снижает переписывание и выдумывание слов.
  • Положение и пропорции («правая треть», «левые две трети») не дают модели похоронить товар под заголовком.
  • «Никакого текста в любом другом месте изображения» — пункт, подавляющий распространённый режим отказа: правдоподобный заполняющий текст в углах.
  • Один короткий заголовок плюс один короткий подзаголовок гораздо надёжнее, чем абзац текста. Если ваш макет требует блока текста, сначала сгенерируйте изображение без этого текста, а затем сверстайте текст в CMS или дизайн-инструменте.

К бейджам и этикеткам (метка «New», обозначение размера) относитесь как к отдельным небольшим промптам, а не как к дополнению к главному визуалу — небольшой промпт бейджа с одним словом в кавычках гораздо проще проверить при проверке, чем целый баннер. Всегда проверяйте орфографию в полном разрешении перед одобрением; ошибки в тексте дёшево обнаружить и дорого выпустить.

Проверка результатов: цикл сравнения и утверждения

Сгенерированные материалы не должны попадать в магазин без человеческого просмотра. Самый дешёвый и надёжный цикл — это сравнение до и после для каждого материала: поместите исходную фотографию (или спецификацию для генерации с нуля) рядом с результатом генерации и запишите версию рецепта промпта и значения переменных.

Практичный цикл для небольшой команды:

  1. Сгенерируйте небольшую партию — несколько вариантов на SKU, а не весь каталог.
  2. Создайте таблицу сравнения бок о бок: слева исходное изображение, справа кандидат, под ними записанный промпт.
  3. Проверьте по короткому фиксированному контрольному списку: форма товара не изменилась, рисунок этикетки не повреждён, фон чистый, текст написан правильно, отступов достаточно.
  4. Отметьте каждый кандидат как прошедший или отклонённый и запишите версию рецепта, давшую прошедший результат.
  5. Только после этого масштабируйте на всю партию, повторно используя одобренные рецепты. Если рецепт изменился после одобрения, считайте существующие одобрения временно действительными до повторной проверки.

Держите контрольный список коротким и одинаковым каждый раз. Последовательный список из четырёх пунктов выявляет проблемы лучше, чем длинная форма, выполняемая неравномерно. Сохраняйте и отклонённых кандидатов — они служат доказательством того, почему версия рецепта была отброшена, и избавляют следующего человека от повторного обнаружения тех же ошибок.

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

Соображения по стоимости, задержке и пакетной обработке

Планируйте на основе собственных измерений, а не предположений. Для моделей изображений на HiAPI оплата взимается за выходное изображение, поэтому переменная, определяющая расходы, — это «число попыток на каждый одобренный материал», что полностью зависит от качества промпта и строгости проверки. Текущая цена за изображение указана на странице тарифов сайта; не вписывайте цифры в код или бюджетные документы.

Разумный подход к работе:

  • Измерьте базовый уровень. Запустите десять SKU с одобренными рецептами, посчитайте общее количество генераций и общее количество одобрений, выведите число попыток на каждый одобренный материал. Это соотношение говорит больше, чем любой бенчмарк.
  • Итерируйте по одному, пакетно после одобрения. Итерация промптов должна выполняться по одному изображению за раз. После одобрения рецепта переходите к пакетной обработке с умеренной параллельностью и стратегией повторов, которая записывает сбои, а не тихо повторно списывает средства.
  • Рассматривайте задержку как параметр планирования. Генерация изображений измеряется в секундах, а не в миллисекундах. Запускайте задания асинхронно, записывайте результаты в очередь, чтобы проверяющие обрабатывали их из очереди, а не блокировались на каждом вызове.
  • Бюджетируйте по соотношению, а не по цене за единицу. Имея число попыток на каждый одобренный материал, оценка каталога — простая арифметика на основе ваших собственных измерений.

Последняя гигиеническая привычка: версионируйте рецепты и записывайте версию рецепта в каждом запросе. Это стоит одного поля, но превращает вопрос «почему в прошлом месяце этот материал выглядел иначе?» из расследования в запрос.

Постройте минимальный процесс, который позволяет запускать через API вырезание, сцены и текстовые макеты, держите библиотеку промптов версионированной и позволяйте циклу проверки — а не надежде — определять, что можно выпускать.

Итерационный цикл в виде стеклянных плоскостей: черновик, выборка, сравнение, одобрение, затем масштабирование на всю партию.

Похожие статьи

Все статьи →

Начните работать с постоянными артефактами ИИ

Получите API-ключ и вызывайте модели изображений, видео и аудио через один API на основе tasks.

Читать документацию API