Pro API: генерация и ретушь изображений

Одно изображение стоит 1 кредит, в любом режиме. Генерация из промпта и ретушь загруженного изображения проходят через один и тот же маршрут.

Отправить изображение

POST /images

{ "prompt": "portrait of a woman in a rainy street at night, neon reflections, cinematic",
  "width": 832, "height": 1216 }
ПолеТипПо умолчаниюЧто делает
promptstringобязательноеОписание сцены. На английском результаты наиболее точные.
width, heightint1024 x 1024Размер в пикселях. Подходящие форматы: 1024 x 1024 (квадрат), 832 x 1216 (портрет), 1216 x 832 (пейзаж).
modestringgenerationedit, img2img или inpaint, см. ниже. Если не указано, изображение генерируется из промпта.
image_b64stringИсходное изображение в base64 (PNG или JPEG), обязательно для всех трёх режимов ретуши. Максимум 12 МБ в декодированном виде.
mask_b64stringМаска в base64: обязательна для inpaint, опциональна для edit. Закрась красным области для ретуши, в размере исходного изображения.
lorastringОбученный персонаж из аккаунта: name, возвращаемый запросом GET /loras. Добавь его trigger в промпт.
lora2, lora2_strengthstring, numberВторой персонаж и его сила (от 0 до 1, по умолчанию 1) для сцены с двумя персонажами.
stepsintдвижокОставь пустым. Движок сам знает своё значение.

Ответ:

{ "jobId": "test-79634842-4586-46d4-ad52-d9ea236ae00d", "seed": 178078967, "cost": 1 }

seed выбирается движком и возвращается для сведения. В этой версии фиксировать его на входе нельзя.

Три режима ретуши

Все три работают на одном движке редактирования на основе инструкций, который сохраняет стиль исходного изображения. Если ты передаёшь исходное изображение, width и height считываются из него и отправлять их не нужно.

modeВходные данныеЧто делает движок
editimage_b64 + prompt (+ опциональный mask_b64)Применяет инструкцию ко всему изображению ("add sunglasses", "make it snow"). С маской изменение концентрируется внутри красной области.
inpaintimage_b64 + mask_b64 + promptПерегенерирует только красную область маски согласно инструкции. Остальное воссоздаётся попиксельно.
img2imgimage_b64 + promptПерерабатывает всё изображение по промпту, сохраняя его композицию и стиль: вариация.
IMG=$(base64 -w0 photo.png)
curl -s $B/images -H "Authorization: Bearer $KEY" -H "Content-Type: application/json" \
  -d "{\"mode\":\"edit\",\"prompt\":\"add a red scarf, keep everything else identical\",\"image_b64\":\"$IMG\"}"

Опрос статуса

GET /images/{jobId}

ОтветЗначение
{ "status": "pending", "phase": "IN_QUEUE" }В очереди
{ "status": "pending", "phase": "IN_PROGRESS" }Рендерится
{ "status": "completed", "cost": 1, "file_url": "/pro/v1/images/{jobId}/file", ... }Готово, файл доступен
{ "status": "failed", "detail": "..." }Ошибка, ничего не списывается

Опрашивай каждые 3 секунды, не чаще: очередь общая.

Скачивание

GET /images/{jobId}/file

Сам PNG-файл в теле ответа (Content-Type: image/png). Доступен сразу после перехода статуса в completed, и возвращает 404 media_indisponible, когда рендер удалён. Скачивай сразу, файл не архивируется.

Отмена

POST /images/{jobId}/cancel

Отменяет рендер, стоящий в очереди или выполняющийся. Возвращает { "ok": true }. Ничего не списывается, и зарезервированная под дневной лимит ключа стоимость возвращается обратно.

Windows, облако или NVIDIA

Генерируй приватно. Уже сегодня вечером.

Скачай tendre.AI, активируй один раз и пользуйся всегда, полностью офлайн, на своём GPU.

Скачать для WindowsСкачать для Android (.apk)
Скачать для MacВерсия для Mac скоро!
OS Windows 10/11GPU NVIDIA 8ГБ+VRAM 12ГБ рекомендуетсяДиск 20ГБ

Нет видеокарты NVIDIA? Начни на 100% в облаке: 10 бесплатных изображений каждый день, потом по 1 кредиту за изображение. Карта NVIDIA (8ГБ+) открывает безлимитную локальную генерацию.