models

Recraft: Recraft V4 Styles

Markdown · JSON

Recraft: Recraft V4 Styles

Recraft V4 Styles генерирует растровые изображения 1K в визуальном стиле референсов. Предназначена для повседневной брендовой работы и кампаний, где каждый новый объект сохраняет те же отображение, текстуру и общий вид.

О модели

Описание раскрывает возможности модели. Доступные в Ailoot входные данные, результаты и параметры выбранного метода перечислены ниже.

Recraft V4 Styles — стандартная растровая версия отдельного семейства Recraft для генерации с постоянным стилем. Она создаёт новое изображение по тексту, следуя стилю референсных материалов. Полезна для серий иллюстраций, баннеров или товарных сцен с узнаваемой общей обработкой. Референс несёт отображение, текстуру и цветовую логику, а промпт вводит объект и сцену каждого нового материала.

Разработчик указывает растровый результат 1K в WebP без потерь или PNG. Квадрат — 1024 × 1024 пикселя, документированный 16:9 — 1344 × 768; вертикальные и другие пропорции имеют свои размеры. Версия отличается от растрового 2K Styles Pro и моделей Vector с SVG. Выбирайте пропорции под конечный макет, не предполагая, что 1K означает одинаковые ширину и высоту всех изображений.

Стиль обязателен. Используйте от одного до десяти PNG, JPG или WebP либо совместимый стиль, сохранённый ранее. Документированный процесс не принимает сохранённый идентификатор и новые референсы вместе. Источниками могут быть существующие брендовые или рекламные материалы, а не только изображения Recraft. Каждый файл — меньше 20 МБ, суммарно не более 64 МБ. Отдельная задача обучения пользователем перед применением стиля не нужна. Короткая сторона каждого референса — не менее 256 пикселей, длинная — не более 4 096, общая площадь — не более 16 мегапикселей.

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

Для серии баннеров опишите курьера, ставящего посылку у порога, спокойную горизонтальную композицию и свободное место сбоку для будущего текста. Следующие задания меняют событие или ракурс при сохранении стиля. Разработчик допускает промпты до 10 000 символов, предпочтительные цвета, желаемый цвет фона, случайный seed и от одного до шести изображений. negative_prompt, готовые названия стилей и text_layout не поддерживаются, поэтому прямо описывайте объект и макет в задании.

Линейка Styles не предлагает image-to-image или перерисовку области. Стилевой референс направляет новое изображение, не гарантируя сохранение предметов или пикселей источника. Если набор повторяется, меняйте позу, действие, кадрирование или детали сцены, не добавляя противоречащий референс. Оценивайте каждый результат в макете на ясность объекта, полезное пространство и согласованное отображение, затем сохраняйте совместимый стиль для следующего материала. Так модель поддерживает повторяемый визуальный язык со сменой содержания.

Ailoot Ultra · Картинки POST /v1/images/generations recraft/recraft-v4-styles

recraft/recraft-v4-styles

Recraft /recraft/recraft-v4-styles

Начало

Recraft V4 Styles генерирует растровые изображения 1K в визуальном стиле референсов. Предназначена для повседневной брендовой работы и кампаний, где каждый новый объект сохраняет те же отображение, текстуру и общий вид.

Допустимые входные данные
Текст · Картинки
Результаты
Картинки

Доступно в Ailoot · входные данные и методы

Ailoot Ultra · Картинки POST /v1/images/generations
Входные данные
text, image
Результат
image
ПолеТипТребованиеЗначения и ограниченияПо умолчанию
ПолеmodelТипstringТребованиеОбязательноЗначения и ограничения
recraft/recraft-v4-styles
По умолчанию—
ПолеpromptТипstringТребованиеОбязательноЗначения и ограничения
Минимальная длина: 1
По умолчанию—
Полеaspect_ratioТипstringТребованиеНеобязательноЗначения и ограничения
1:1, 2:1, 1:2, 3:2, 2:3, 4:3, 3:4, 5:4, 4:5, 16:9, 9:16, auto
По умолчанию—
ПолеnТипintegerТребованиеНеобязательноЗначения и ограничения
Минимум: 1
Максимум: 6
По умолчанию—
Полеinput_referencesТипarrayТребованиеНеобязательноЗначения и ограничения
Минимум элементов: 1
Максимум элементов: 10
По умолчанию—
ПолеproviderТипobjectТребованиеНеобязательноЗначения и ограниченияПо умолчанию—
Параметры и жизненный цикл метода
ПараметрКонтракт
Параметрcontent_typeКонтрактapplication/json
ПараметрrequiredКонтрактmodel, prompt
Параметрmaterial_typesКонтрактtext, image

Жизненный цикл: synchronous_result_then_owned_library

GET /v1/media/tasks/{task_id} · Фактически возвращённый task_id или запись в медиатеке

GET /v1/media/assets/{asset_id}/content

GET /v1/media/assets

GET /v1/media/assets/{asset_id}

Тарифы

Как рассчитывается итоговая плата

Отображаемые тарифы позволяют оценить стоимость до генерации. Итоговое списание рассчитывается по стоимости, записанной для исходной генерации. Измеренная длительность результата и прогнозные объёмы не являются итоговым оплачиваемым объёмом.

Тарифная справка не добавляет режимы запроса. Поддерживаемые параметры указаны для выбранного метода.

Быстрый режим
Не указано При выборе быстрого режима
Режим flex
Не указано При выборе режима flex
Максимальная интенсивность рассуждений
Не указано При максимальной интенсивности рассуждений с корректировкой по умолчанию (default)

Оценочные ставки для сравнения

Цены по конфигурациям

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

КонфигурацияШкала ставокПрогноз количестваРасчётная единицаУсловия расчётаПлата
КонфигурацияБазовые тарифы на токеныШкала ставокБазовая ставкаПрогноз количества—Расчётная единица—Условия расчёта—Плата
Вход · Входные токены · Оценка только для сравнения — / 1K токенов
Выход · Выходные токены · Оценка только для сравнения — / 1K токенов
Вход · Чтение кэша · Оценка только для сравнения — / 1K токенов
Вход · Запись в кэш · Оценка только для сравнения — / 1K токенов
Вход · Запись в кэш, 1 час · Оценка только для сравнения — / 1K токенов
КонфигурацияВходной референсШкала ставок—Прогноз количества—Расчётная единицаза запросУсловия расчётаСоздание стиля при генерации с референсами стиля; один раз за запрос, дополнительно к цене выходного изображения.Плата
Вход · Входной референс · Оценка только для сравнения $0.01 за запрос
Конфигурациявыходное изображениеШкала ставок—Прогноз количества—Расчётная единицаза выходное изображениеУсловия расчёта—Плата
Выход · выходное изображение · Оценка только для сравнения $0.07 за выходное изображение
КонфигурацияОриентировочная стоимость генерацииШкала ставок—Прогноз количестваОценка для одной генерацииРасчётная единица—Условия расчёта—Плата
Выход · Оценочная стоимость генерации · Оценка только для сравнения $0.07 оценка до генерации

Эта оценка не является дополнительным списанием или фиксированным тарифом для завершённой генерации.

Ailoot резервирует расчётную сумму перед запросом. После получения результата списывает итоговую плату по измеренному расходу. Для окончательного списания за потоковый ответ используется итоговая запись расхода. Как работают резервирование и расчёт →

Примеры запросов

Ailoot Ultra · Картинки

curl
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p={'model': 'recraft/recraft-v4-styles', 'prompt': 'a red panda astronaut floating in space, studio lighting'}

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import base64, json, os, subprocess
from pathlib import Path
from urllib.parse import urlsplit, urljoin

def save_images(items):
    if not items: raise SystemExit("No completed images; retain the full response")
    for index, item in enumerate(items):
        encoded=item.get("b64_json")
        uri=item.get("url", "")
        if not encoded and uri.startswith("data:image/"):
            header, separator, encoded=uri.partition(",")
            if not separator or ";base64" not in header: raise SystemExit("Unsupported image data URI")
        if encoded:
            raw=base64.b64decode(encoded,validate=True)
        elif uri:
            uri=urljoin("https://api.ailoot.ai",uri)
            parsed=urlsplit(uri)
            if parsed.scheme!="https" or not parsed.netloc or parsed.username or parsed.password:
                raise SystemExit("Invalid returned image URL")
            owned=parsed.netloc=="api.ailoot.ai" and parsed.path.startswith("/v1/media/assets/") and parsed.path.endswith("/content")
            args=["curl","--fail-with-body","--silent","--show-error",uri]
            if owned: args += ["-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"]]
            temporary=Path(f"image-{index}.bin")
            subprocess.run(args+["-o",str(temporary)],check=True)
            raw=temporary.read_bytes()
            temporary.unlink()
        else: raise SystemExit("Image has neither bytes nor URL")
        if not raw: raise SystemExit("Empty image result")
        ext="png" if raw.startswith(b"\x89PNG") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "svg" if raw.lstrip().startswith((b"<svg",b"<?xml")) else "bin"
        Path(f"image-{index}.{ext}").write_bytes(raw)
    print("Every returned image saved; complete response metadata retained")
save_images(json.loads(Path("result.json").read_text())["data"])
PY_RESULT

Получить и сохранить результаты

Ailoot Ultra · Картинки

Загрузите каждое полученное изображение или сохраните его содержимое Base64

  • GET /v1/media/tasks/{task_id}
  • GET /v1/media/assets/{asset_id}/content
  • GET /v1/media/assets
  • GET /v1/media/assets/{asset_id}
Чтение другого содержимого
Читать существующие материалы, принадлежащие вам
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o owned-assets.json
# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.
Сохраняйте все готовые результаты

Сохраните каждое готовое изображение; загрузите содержимое по каждому полученному URL или декодируйте его содержимое Base64.

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

Если нужно проверить исходный ответ

Сохраните возвращённый X-Client-Request-ID для сверки. Читайте только фактически возвращённые значения task_id/asset_id или собственную медиатеку; никогда не составляйте URL задачи из ID операции и никогда не отправляйте запрос создания повторно.

Поля ответа
ПолеТип
ПолеcreatedТип
Полеdata[].urlТип
Полеdata[].b64_jsonТип
ПолеusageТип

Псевдонимы

Псевдонимы моделей

Ailoot Ultra recraft/recraft-v4-styles

Псевдонимы путей метода

/v1/images

Связанные ID для вызова

recraft/recraft-v4-styles

FAQ · Recraft: Recraft V4 Styles
Какие входные данные и результаты доступны?

POST /v1/images/generations · recraft/recraft-v4-styles: text, image → image

Какие поля использует запрос?

POST /v1/images/generations · recraft/recraft-v4-styles: model, prompt, aspect_ratio, n, input_references, provider

Какие ограничения действуют?

POST /v1/images/generations · recraft/recraft-v4-styles: n.minimum: 1; n.maximum: 6

Подробнее

Подключите Ailoot к Claude Code, OpenCode, Hermes или своему приложению.

Компания и портфель её проектов

Компания и портфель её проектов: миллионы клиентов; продажи на миллиарды ежемесячно.

Покупайте токены со скидкой.

Скидка по подписке для регулярной работы. Промокоды — до 50% на покупку токенов.

Подписка
Выберите тариф со скидкой для своих регулярных запросов.
Промокод до 50%
Введите код при покупке. Цена пересчитается с учётом действующей акции.
Расходы в истории
Модель, токены и сумма сохраняются для каждого запроса.

Выбрать подписку · Посмотреть цены моделей

Подключайте API к продукту, который вы продаёте.

SaaS, приложения и боты — по оферте и лицензионному договору Ailoot. Для перепродажи запросите реселлерскую лицензию.

Коммерческое приложение
Встраивайте генерацию текста, картинок, видео и звука в платные функции своего сервиса.
Лицензия для реселлера
Пришлите описание проекта и схему доступа. Запросите письменные условия использования и перепродажи.
Документы на сайте
Оферта, лицензионный договор и политика обработки данных доступны до подключения.

Запросить реселлерскую лицензию · Оферта и лицензионный договор