Редактирование и объединение изображений
Загрузите одно или несколько изображений и измените или объедините их по промпту.
Не пишете код? См. Генерация изображений в ваших инструментах.
Перед началом
https://api.ofox.io/v1openai/gpt-image-2.5-sunburstВ примерах используется flare; для редактирования рекомендуется sunburstpip install openaiРедактирование изображения
Каждый пример ниже был запущен в неизменном виде. Результат сохраняется в файл output.png в текущем каталоге.
cURL
curl -s https://api.ofox.io/v1/images/edits \
-H "Authorization: Bearer YOUR_OFOX_API_KEY" \
-F "model=openai/gpt-image-2.5-flare" \
-F "image=@input.png" \
-F "prompt=Replace the background with a wooden table, keep the subject unchanged" \
-F "quality=low" \
-o response.json
jq -r '.data[0].b64_json' response.json | base64 --decode > output.pngЕсли не указать size, размер результата выбирает модель, и он может отличаться от исходного. Чтобы сохранить исходный размер, укажите его явно, например size=1024x1024.
Как писать промпт
Чётко укажите две вещи: что изменить и что сохранить.
При нескольких изображениях называйте их в порядке загрузки: «первое изображение», «второе изображение». Чтобы изменить лишь небольшую часть изображения, надёжнее использовать инпейнтинг.
Объединение нескольких изображений
Отправьте несколько референсных изображений за один раз. Порядок загрузки определяет, к чему относятся «первое изображение» и «второе изображение» в промпте. Поместите input.png и input2.png в текущий каталог.
cURL
# До 16 изображений за запрос, ≤ 15 МБ каждое
curl -s https://api.ofox.io/v1/images/edits \
-H "Authorization: Bearer YOUR_OFOX_API_KEY" \
-F "model=openai/gpt-image-2.5-flare" \
-F "image[]=@input.png" \
-F "image[]=@input2.png" \
-F "prompt=Place the subject of the first image onto the background of the second" \
-F "quality=low" \
-o response.json
jq -r '.data[0].b64_json' response.json | base64 --decode > output.pngПровайдеры
Закреплять провайдера не нужно. Для всех трёх моделей эндпоинт редактирования обслуживают и Azure, и OpenAI, а шлюз маршрутизирует запросы автоматически.
Если у вас есть требования к модерации контента, вы можете выбрать провайдера, но эндпоинт редактирования принимает только заголовок X-OfoxAI-Provider-Type; extra_body в форме игнорируется. После выбора провайдера запросы не будут переключаться на другого провайдера, если выбранный недоступен. См. Выбор провайдера.
Значения параметров
Параметры, специфичные для эндпоинта редактирования. model, n, output_format и остальные работают так же, как при генерации по тексту — см. Текст в изображение · Значения параметров.
Изображение для редактирования. Для нескольких изображений повторите поле как image[]; в Python SDK передайте список.
▸ Подробнее
Референсные изображения тоже оплачиваются как токены: референсное изображение 1024×1024 по замерам дало 1 024 входных токена, поэтому редактирование стоит дороже генерации по тексту при том же размере.
▶Дополнительные · 1X-OfoxAI-Provider-TypeExpand
Обычно не требуется — шлюз маршрутизирует автоматически. Используйте только для закрепления конкретного провайдера.
Ограничения загрузки
Модель масштабирует референсные изображения примерно до 1024 px. Файлы больше 5 МБ лишь замедляют загрузку и не улучшают результат.
Распространённые ошибки
Другие ошибки см. в полной таблице ошибок.
Официальная документация
Документация OpenAI описывает поведение при прямом обращении к OpenAI. При вызове через OfoxAI приоритет имеют результаты замеров из этого раздела. Например, для редактирования не нужно закреплять провайдера.