Skip to main content
POST
Image editing: edit a reference image or fuse several
🔒 Не открыт по умолчанию: Grok Imagine 2 не входит в группу Default. Он находится в собственной группе Grok_imagine, и перед его вызовом необходимо запросить доступ (включая Playground на этой странице). Без него каждый вызов возвращает 503.Политика безопасности контента этого семейства существенно отличается от других моделей на платформе, и некоторые категории не фильтруются, поэтому для ограничения рисков соответствия требованиям мы предоставляем доступ выборочно: существующие клиенты с совокупными расходами от $1,000 могут включить его, описав свой сценарий использования службе поддержки; все остальные подают заявку через поддержку WeCom, указав сценарий использования и действующие меры модерации контента. Полный процесс: Обзор Grok Imagine 2 — настройка группы.
Интерактивный Playground справа поддерживает загрузку локальных файлов. Введите свой API Key в Authorization (формат: Bearer sk-xxx), выберите файл image, заполните prompt и model, затем отправьте запрос.
🔴 Этот эндпоинт требует загрузки файла multipart/form-dataОтправка JSON в /v1/images/edits всегда возвращает 400:
Это особенно важно, если вы интегрируетесь по документации xAI или исходного поставщика: в этой документации описано тело JSON с публичным URL изображения ({"image": {"type": "image_url", "url": "..."}}), и такая форма не работает через шлюз APIYI. Вместо этого следуйте инструкциям на этой странице.Преимущество в том, что загрузка файла означает отсутствие необходимости в хостинге изображений — просто отправьте локальный файл, что проще, чем подготавливать публичный URL.Поле файла должно называться image или image[]; images / image_file возвращают 415. prompt обязательно — его отсутствие возвращает 400.
Когда использовать эту страницу: для редактирования одного референсного изображения или объединения нескольких. Для генерации только по prompt используйте эндпоинт преобразования текста в изображение.
⚠️ Размеры результата соответствуют ПЕРВОМУ референсному изображению и не могут быть измененыresolution и aspect_ratio принимаются здесь без ошибки, но не влияют на результат — отредактированный результат всегда соответствует размерам первого референсного изображения (1280x720 на входе даёт 1280x720 на выходе; 1024x1024 на входе даёт 1024x1024 на выходе).То же относится к объединению: изменение порядка 4 референсов переключило результат с 1280x720 на 1024x1024, следуя новому первому изображению.Чтобы изменить размер результата, обрежьте или измените размер первого референсного изображения перед загрузкой.
Порядок объединения имеет значение: image[] принимает 1–4 референсных изображения (измеренный предел — 4; пятое возвращает 400), и порядок загрузки определяет, что означает «изображение 1 / изображение 2 / изображение 3» в prompt. Укажите это явно, например: «поместите объект с изображения 1 в сцену с изображения 2, сохранив художественный стиль изображения 2».Проверено на 2 / 3 / 4 референсах: каждое дополнительное изображение добавляет соответствующий объект в результат, при этом сохраняются отличительные черты каждого — объединение действительно работает.

Примеры кода

Python (OpenAI SDK, одно изображение)

Python (сырые запросы, одно изображение)

Python (объединение нескольких изображений, 1-4 файла)

cURL

Node.js (нативный fetch + FormData)

JavaScript в браузере

Справочник параметров

Это семейство не поддерживает mask inpainting. Чтобы ограничить область изменения, опишите его в prompt точно — например: «измените только шарф на красный, всё остальное оставьте точно таким же». Модель строго следует таким ограничениям.

Поведение редактирования и стиль prompt

Эндпоинт редактирования сохраняет художественный стиль, композицию, палитру и идентичность объекта входного изображения, изменяя только то, что указано в prompt. Для стабильных результатов:
Явное указание «оставьте всё остальное без изменений» — это самый эффективный приём для этой модели. Для слияния всегда используйте «изображение 1 / изображение 2», соответствующие порядку загрузки image[].Также ставьте самый важный объект первым: первое изображение не только задаёт размеры результата, но и в ходе тестирования обратный порядок приводил к тому, что идентичность второстепенного объекта смешивалась с другим.

Формат ответа

Подводные камни полей ответа
  • Каждая запись data[] содержит либо url или b64_json в зависимости от response_format — никогда оба.
  • revised_prompt не возвращается — не предполагайте, что оно существует.
  • b64_json — это необработанный base64 без префикса data:image/...;base64, — декодируйте его напрямую.
  • created всегда 0 и не может использоваться как временная метка.
  • Размеры вывода определяются входным изображением, поэтому не определяйте ширину/высоту по параметрам запроса.
usage не может использоваться для сверки: prompt_tokens всегда 1000 x n, это заполнитель. Редактирование стоит столько же, сколько text-to-image, по фиксированной ставке за изображение; используйте записи тарификации в APIYI Console для фактических списаний.

Авторизации

Authorization
string
header
обязательно

API Key created in the APIYI Console

Тело

multipart/form-data
model
enum<string>
по умолчанию:grok-imagine-image
обязательно

Model ID

Доступные опции:
grok-imagine-image,
grok-imagine-image-quality
prompt
string
обязательно

Editing instruction. State what to change and explicitly ask for everything else to stay put, e.g. Change the scarf color to bright RED. Keep everything else exactly the same.

Пример:

"Change the scarf color to bright RED. Keep everything else exactly the same."

image
file
обязательно

Reference image file. For multi-image fusion repeat the image[] field (1-4 files); upload order is what "image 1 / image 2 / image 3" refers to in the prompt, and the first file also determines output dimensions. Each added image contributes a subject in testing. Accepted formats: png / jpg / webp.

n
integer
по умолчанию:1

Number of output images, 1-10. Independent of the number of reference images

Требуемый диапазон: 1 <= x <= 10
Пример:

1

response_format
enum<string>
по умолчанию:url

Response format. url returns a direct link; b64_json returns raw base64 (no data: prefix)

Доступные опции:
url,
b64_json
Пример:

"url"

Ответ

Image generated successfully

created
integer

Creation timestamp. Always 0 for this model — do not use it for timing

Пример:

0

data
object[]

Array of image results, length equals the requested n

usage
object

Placeholder values — do not use for billing reconciliation. prompt_tokens is always 1000 x n