API удаления объектов: уберите лишнее с фото через GPT Image 2
Одной инструкции на объект хватило для всех трёх удалений. Ниже код запроса, результаты в полном размере и места, где правке пока нельзя доверять.
На этой странице
- Как работает удаление по инструкции
- Запрос
- Три удаления на одной фотографии парка
- Что проверить после каждого удаления
- Что мы не проверяли
- Шаблон инструкции
- Частые вопросы
- Можно ли убрать человека с фотографии через API?
- Принимает ли запрос маску?
- Сколько живут ссылки на результат?
- Какой размер запрашивать?
- Может ли одна инструкция убрать два объекта?
Одной текстовой инструкции на объект хватило методу редактирования GPT-Image 2. В трёх запусках 28 октября 2026 года мы убрали женщину с собакой, синюю урну и маленького красного воздушного змея с одной фотографии парка — по одному предложению на объект. Каждый раз пустое место совпало с окружением, а скамейка, деревья и линия горизонта остались на своих местах.
Запрос отправляет промпт и одно исходное изображение и возвращает целую новую фотографию. Ниже Python, который мы запускали, три результата в полном размере и проверки, которые ловят заливку, которую лучше переделать.
Как работает удаление по инструкции
Вы отправляете одну фотографию и одно предложение. В предложении назван объект, сказано, что должно занять его место, и перечислено, что обязано остаться. Модель перерисовывает этот участок и отдаёт целиком новое изображение, поэтому отдельного шага сборки нет.
Запрос — та же медиазадача, что и любое другое редактирование в OmniaKey: модель gpt-image-2, type image, operation edit, исходное фото в поле input image как Base64, предложение в input prompt. В parameters размер задаётся как WIDTHxHEIGHT, а quality принимает low, medium, high или auto; n должен быть 1. Обе операции перечислены на странице модели.
Всем управляет формулировка. «Маленький красный воздушный змей в небе» — другая задача, чем «та красная штука», а заливка вроде «трава и тротуарная плитка» решает, что окажется в освободившемся месте. Наше руководство по промптам GPT Image 2 разбирает порядок фраз, а гайд по альтернативе FLUX Kontext применяет такую же инструкцию к GPT Image 2.
Запрос
Один файл Python делает всю работу: кодирует фото, создаёт задачу, опрашивает её до завершения и скачивает PNG.
import base64
import json
import os
import time
import urllib.request
import uuid
API = "https://api.omniakey.com/v1/media/tasks"
KEY = os.environ["OMNIAKEY_API_KEY"]
def request(method, url, body=None, extra_headers=None):
headers = {"Authorization": f"Bearer {KEY}", "User-Agent": "omniakey-example/1"}
data = None
if body is not None:
headers["Content-Type"] = "application/json"
data = json.dumps(body).encode()
headers.update(extra_headers or {})
req = urllib.request.Request(url, data=data, headers=headers, method=method)
with urllib.request.urlopen(req, timeout=120) as resp:
return json.load(resp)
def edit_image(source_path, prompt, out_path, size="1024x1536", quality="medium"):
with open(source_path, "rb") as f:
image = base64.b64encode(f.read()).decode()
body = {
"model": "gpt-image-2",
"type": "image",
"operation": "edit",
"input": {"prompt": prompt, "image": {"data": image, "mime_type": "image/jpeg"}},
"parameters": {"size": size, "quality": quality},
}
task = request("POST", API, body, {"Idempotency-Key": str(uuid.uuid4())})["id"]
for _ in range(150):
time.sleep(4)
state = request("GET", f"{API}/{task}")
if state["status"] not in ("queued", "processing"):
break
if state["status"] != "succeeded":
raise RuntimeError(state.get("error") or state["status"])
asset_url = state["assets"][0]["url"] # signed link: valid for about an hour, so download now
req = urllib.request.Request(asset_url, headers={"User-Agent": "omniakey-example/1"})
with urllib.request.urlopen(req, timeout=120) as resp, open(out_path, "wb") as f:
f.write(resp.read())
return task
if __name__ == "__main__":
task = edit_image(
"park-base.jpg",
"Remove the blue trash bin completely. Fill its spot with grass and paving stones so it matches the surroundings. Keep everything else exactly the same. Photorealistic, no text, no logos.",
"park-no-bin.png",
size="1536x1024",
)
print("task", task)
Функцию мы проверили 28 октября 2026 года с другим промптом — жёлтым дождевиком — на JPEG размером 1024 пикселя из базовой модели, и она вернула PNG 1024x1536.
- Запрос на создание возвращает HTTP 202 и id задачи (документация OmniaKey по изображениям, проверено 28 октября 2026 года). Опрашивайте эту задачу, пока статус не выйдет из queued или processing; succeeded значит, что файлы готовы, а упавшая задача приходит с кодом и сообщением об ошибке и не оплачивается.
- Подписанная ссылка на файл действует около часа, а сам файл хранится 24 часа. Скачивайте сразу обычным GET-запросом, который не отправляет API-ключ.
- Base64 в теле запроса входит в лимит 1 MiB, поэтому фото с телефона сначала уменьшите.
- Передавайте заголовок
User-Agent: 28 октября 2026 года запрос со стандартным User-Agent Python вернул HTTP 403, и заголовок это исправил. - Размер задаётся явно, поэтому горизонтальное фото уходит в 1536x1024. GPT Image всегда возвращает непрозрачный PNG, так что реальные размеры читайте в скачанном файле.
По цене: страница тарифов OpenAI указывает для GPT Image 2 $8.00 за миллион входных токенов изображения и $30.00 за миллион выходных, а пакетные тарифы вдвое ниже (проверено 28 октября 2026 года). Таблицы за одну картинку на этой странице нет; в её руководстве по генерации изображений есть калькулятор для одной картинки. Текущий тариф OmniaKey — на странице цен.
Три удаления на одной фотографии парка
Все четыре изображения сделаны из одного базового кадра: солнечная дорожка в городском парке, деревянная скамейка в центре, синяя металлическая урна слева, женщина с маленькой бурой собакой идёт к камере, а высоко в ясном небе висит маленький красный воздушный змей. База и результаты сделаны в 1536x1024, quality medium, на GPT Image 2 через OmniaKey 28 октября 2026 года; сцена и люди синтетические. На каждый объект мы отправили одно предложение и прогнали каждое по одному разу.
| Что убрали | Инструкция, которую отправили | Что вернулось |
|---|---|---|
| Женщина и собака | "Remove the woman and the small brown dog completely. Fill the path and the grass naturally so they match the surroundings. Keep the bench, the blue bin, the trees, the kite and the sky exactly the same. Photorealistic, no text, no logos." | Женщины и собаки нет; дорожка и трава восстановлены; скамейка, урна, деревья, змей и небо на месте |
| Синяя урна | "Remove the blue trash bin completely. Fill its spot with grass and paving stones so it matches the surroundings. Keep everything else exactly the same. Photorealistic, no text, no logos." | Урны нет; её место заняли трава и плитка; женщина и собака остались в кадре |
| Красный воздушный змей | "Remove the small red kite from the sky. Keep the sky natural and everything else exactly the same. Photorealistic, no text, no logos." | Змея нет; небо естественное; остальная часть кадра не изменилась |

Сгенерировано GPT-Image 2 через API OmniaKey 28 октября 2026 года, размер 1536x1024, качество medium.
Во второй плитке нет женщины и собаки, дорожка и трава смыкаются за ними, а скамейка, урна, деревья, змей и линия горизонта остаются. В третьей исчезает урна, и её место собирается заново из травы и плитки, а женщина с собакой по-прежнему в кадре. В четвёртой с неба убран змей, всё остальное не изменилось.
Что проверить после каждого удаления
Смотрите каждую плитку в натуральную величину, прежде чем публиковать удаление.
- Край заливки и остальную часть кадра. Новая трава, плитка или текстура дорожки всегда где-то стыкуется со старой, а модель перерисовывает всю картинку целиком, поэтому сравните этот стык и полосу вокруг объекта с исходным фото; мягкое, повторяющееся или размазанное пятно проявится именно там.
- Всё, что касалось объекта. Поводок, тень или отражение нужно собрать заново вместе с ним.
- Список сохранения, пункт за пунктом. Удаление 1 сохранило скамейку, урну, деревья, змея и небо; удаление 2 сохранило женщину и собаку. Назовите каждый пункт, а потом найдите его.
Публикуйте удаление, когда заливка держится при натуральном размере, а каждый пункт списка сохранения на месте. Если заливка выглядит размазанным пятном, повторите то же предложение, назвав материал, например «трава и тротуарная плитка».
Что мы не проверяли
Мы не проверяли вход с маской, плотные сцены и очень мелкие объекты, поэтому если на вашей фотографии есть толпа, ряд заборов или тонкий ремешок вроде поводка, планируйте второй прогон и смотрите этот край в полном размере.
Шаблон инструкции
Уберите [объект, с деталью, которая его отличает] полностью. Заполните его место [материал] так, чтобы совпадало с окружением. Оставьте [то, что должно остаться] точно таким же. Фотореалистично, без текста, без логотипов.
- Объект с отличающей деталью. «Маленький красный воздушный змей в небе» лучше, чем «воздушный змей», и подсказывает модели, о каком змее речь, если в кадре их несколько.
- Заливка, в материалах. «Трава и тротуарная плитка» даёт модели, с чем выровнять заплату по окружению; одно «убери» оставляет выбор ей.
- Список сохранения. Назовите то, что должно выжить: скамейка, синяя урна, деревья, воздушный змей, небо.
- Хвост стиля. «Фотореалистично, без текста, без логотипов» сохраняет у фотографии вид фотографии.
Для замены одежды на человеке работает та же схема, если назвать одежду тем объектом, который меняется; гайд по виртуальной примерке разбирает такой случай.
Частые вопросы
Можно ли убрать человека с фотографии через API?
Да, если проверить результат. В удалении 1 женщина и её собака ушли из кадра за один шаг, а дорожка и трава восстановились за ними.
Принимает ли запрос маску?
Документация OmniaKey описывает одно исходное изображение и промпт (проверено 28 октября 2026 года). Поля для маски в ней нет, и маска не проверялась. Объект и его положение вы называете словами, а не рисуете область.
Сколько живут ссылки на результат?
Подписанная ссылка живёт около часа (документация OmniaKey, проверено 28 октября 2026 года), а сам файл хранится 24 часа. Скачивайте сразу, как только задача получила succeeded.
Какой размер запрашивать?
Передавайте size явно в виде WIDTHxHEIGHT, например 1536x1024 для горизонтального фото, а реальные размеры читайте в скачанном PNG. GPT Image всегда возвращает непрозрачный файл, поэтому кадрирование планируйте после скачивания.
Может ли одна инструкция убрать два объекта?
В удалении 1 одно предложение убрало женщину и её собаку вместе. Другие пары не проверялись.
Откройте страницу модели GPT-Image 2, чтобы посмотреть параметры, и проверьте текущие тарифы, прежде чем планировать следующее удаление.
Модели в этой статье
Похожие статьи
Промпты для GPT Image 2: структура, примеры и реальные изображения
Восемь промптов и девять реальных изображений: где GPT Image 2 попал точно, что добавил и как это исправить.
API виртуальной примерки: меняем одежду на модели через GPT Image 2
Одна фотография и один промпт меняют образ. Дальше — код запроса, три замены, которые мы прогнали 28 октября 2026 года, и то, где правка уходит в сторону.
Альтернатива API FLUX Kontext: правка изображений с GPT Image 2
Правки по инструкции без маски: код запроса, цепочка из трёх правок, выполненных 28 октября 2026 года, и то, что сохранил каждый шаг.
Недавние статьи
- Clapping Cat Meme AI: как заставить питомца хлопать через image-to-video
- Промпты для Kling 3.0: структура, примеры и реальные ролики
- Промпты для MiniMax H3: структура, примеры и реальные ролики
- Claude Haiku 5.5 vs Sonnet 5.5: код, стоимость и скорость
- Промпты для Wan 3.0: структура, примеры и реальные ролики
