У вашего менеджера по контенту уходит по 2-3 дня на заказ картинки дизайнеру, а срочная обложка для поста или карточка товара встаёт. При этом ChatGPT умеет рисовать прямо в чате, а через API - генерировать пачками за копейки. Никакого найма дизайнера, никаких курсов. Разбираем, как за вечер настроить генерацию картинок для бизнеса - хоть в чате, хоть через скрипт.
Разберём на примере небольшой стройфирмы, которой нужно быстро делать карточки для соцсетей и обложки для статей на сайте. Это пример, а не реальный кейс автора.
GPT Image 1 vs GPT Image 2: что изменилось
GPT Image 1 (gpt-image-1) - модель 2025 года, наследник DALL-E 3. Главные плюсы: лучше понимает сложные инструкции, рисует более реалистичные материалы, умеет делать прозрачный фон (background=transparent).
GPT Image 2 (gpt-image-2) - флагман 2026 года. Он точнее следует промпту (описанию): результат совпадает с запросом в 85-95% случаев против 70-80% у предшественника. Лучше рисует текст на латинице, руки и анатомию, работает быстрее.
GPT Image 1 будет устаревшим (устаревший) в октябре 2026. Новые проекты лучше сразу делать на gpt-image-2.
Отличие от Midjourney и Flux: стиль GPT Image - «иллюстрированная реальность»: чистые линии, читаемые детали, меньше художественного шума. Для инфографики, обложек и брендированного контента - это плюс. Для концепт-арта с богатой текстурой - Midjourney по-прежнему сильнее.
ChatGPT-интерфейс: генерация через диалог
На тарифе ChatGPT Plus ($20/мес) и выше можно генерировать картинки прямо в чате. Просто опишите, что нужно, - ChatGPT сам поймёт, что нужна картинка, и нарисует.
Примеры запросов в чате:
- «Нарисуй обложку для статьи про ремонт квартир: инструменты на столе, минималистичный стиль»
- «Создай иконку для мобильного приложения стройфирмы: мастерок, flat design, синий цвет»
- «Сделай иллюстрацию: уютный офис, ноутбук на столе, утренний свет»
Главное преимущество чата - итерации. После первой картинки можно уточнить:
- «Сделай фон темнее и убери людей»
- «Добавь надпись РЕМОНТ на вывеске»
- «Поменяй стиль на акварель»
ChatGPT помнит контекст диалога и дорабатывает картинку.
Встроенное редактирование холста: в интерфейсе ChatGPT есть инструмент выделения области. Рисуете область на картинке и пишете, что заменить. Без кода и API.
API Generations конечная точка API: первый вызов на Python
Если нужно генерировать картинки пачками (например, для каждой статьи блога или для карточек товаров), используйте API OpenAI. Пример ниже - базовый вызов: передаёте промпт, размер и качество.
from openai import OpenAI
import base64
from pathlib import Path
client = OpenAI(api_key="sk-your-key-here")
response = client.images.generate(
model="gpt-image-2",
prompt="A minimalist product photo: ceramic coffee cup on white marble, morning light, professional studio photography",
size="1536x1024",
quality="high",
output_format="png",
background="auto",
n=1
)
# Получаем base64 или URL в зависимости от response_format
image_url = response.data[0].url
print(f"Image URL: {image_url}")
Обратите внимание: client.images.generate - синхронный вызов, но для сложных промптов может занять 30-120 секунд. В боевой среде (боевая среда) используйте асинхронный клиент AsyncOpenAI.
Параметры API
size - размер изображения. Доступные значения для gpt-image-2:
1024x1024- квадрат (стандарт, самый быстрый)1536x1024- горизонтальный (3:2)1024x1536- вертикальный (2:3)
Другие соотношения сторон не поддерживаются напрямую. Для нестандартных форматов (16:9, 9:16) нужно генерировать ближайший поддерживаемый размер и кадрировать.
quality - три уровня:
low- быстро (~5-15 сек), меньше деталей. Для прототипирования.medium- баланс скорость/качество (~15-45 сек). Для большинства продуктовых задач.high- максимальная детализация (~45-120 сек). Для финального вывода.
output_format - png (без потерь), jpeg, webp. PNG рекомендуется, если нужна прозрачность (фон).
background - auto (модель сама решает), transparent (прозрачный фон, только в PNG), opaque (белый фон). transparent полезен для иконок и продуктовых фото - объект без фона.
n - количество вариантов (1-4). При n=2-4 каждый вариант стоит как отдельная генерация.
API Edits конечная точка API: inpainting через маску
Edits конечная точка API позволяет изменить часть изображения через маску. Маска - PNG того же размера, что оригинал, где белые пиксели = область для изменения, чёрные = сохранить.
Пример: у вас есть фото товара, и вы хотите заменить фон на тёмный мрамор.
from openai import OpenAI
from PIL import Image, ImageDraw
import io
client = OpenAI()
# Загружаем оригинальное изображение
with open("original.png", "rb") as f:
original_data = f.read()
# Создаём маску: белый прямоугольник в нижней части (для замены фона)
img = Image.open("original.png")
width, height = img.size
mask = Image.new("RGBA", (width, height), (0, 0, 0, 255)) # Чёрный = сохранить
draw = ImageDraw.Draw(mask)
draw.rectangle([0, height//2, width, height], fill=(255, 255, 255, 0)) # Белый = заменить
mask_bytes = io.BytesIO()
mask.save(mask_bytes, format="PNG")
mask_bytes.seek(0)
# Отправляем запрос
response = client.images.edit(
model="gpt-image-2",
image=open("original.png", "rb"),
mask=mask_bytes,
prompt="Replace the background with a dark marble texture, professional studio lighting",
size="1024x1024",
quality="medium"
)
print(response.data[0].url)
Применения: убрать нежелательный объект (маска над объектом, промпт «remove this, fill with background»), заменить фон, добавить элемент, изменить текст на вывеске или баннере.
Ценообразование 2026: сколько стоит одна картинка
Цены gpt-image-2 через API (актуальны на середину 2026, проверяйте на platform.openai.com):
| Размер | Low | Medium | High |
|---|---|---|---|
| 1024x1024 | $0.011 | $0.042 | $0.167 |
| 1536x1024 | $0.016 | $0.063 | $0.250 |
| 1024x1536 | $0.016 | $0.063 | $0.250 |
Сравнение: Flux 1.1 pro через Replicate - $0.040 за 1024×1024. Midjourney Standard - $30/мес с неограниченным relax. При 200 генерациях/мес GPT Image medium (1024x1024) обходится в ~$8.40, Flux 1.1 pro - ~$8, Midjourney Standard - $30 с неограниченным количеством.
Вывод: для малых объёмов (до 500/мес) GPT Image через API сопоставим с Flux по цене. Для больших объёмов Midjourney relax значительно дешевле. Для автоматизации - Flux или GPT Image.
Практика: скрипт массовой генерации OG-изображений
Задача: для каждой статьи блога стройфирмы сгенерировать OG-карточку 1200×630 с заголовком.
from openai import OpenAI
import requests
import json
from pathlib import Path
client = OpenAI()
articles = [
{"slug": "python-basics", "title": "Python с нуля за 30 дней", "topic": "programming tutorial"},
{"slug": "ai-tools", "title": "10 AI-инструментов для разработчика", "topic": "AI tools overview"},
{"slug": "git-flow", "title": "Git Flow: полный гайд", "topic": "version control workflow"}
]
output_dir = Path("og_images")
output_dir.mkdir(exist_ok=True)
for article in articles:
prompt = (
f'Blog post cover image for article "{article["title"]}". '
f'Topic: {article["topic"]}. '
f'Modern tech blog style, clean design, subtle gradient background, '
f'no text in image (text will be added separately). '
f'Professional and engaging visual metaphor for the topic.'
)
# OG размер 1200x630 не поддерживается напрямую - генерируем 1536x1024 и кадрируем
response = client.images.generate(
model="gpt-image-2",
prompt=prompt,
size="1536x1024",
quality="medium",
output_format="jpeg"
)
img_url = response.data[0].url
img_data = requests.get(img_url).content
output_path = output_dir / f"{article['slug']}.jpg"
with open(output_path, "wb") as f:
f.write(img_data)
print(f"Generated: {output_path}")
print("Done!")
Для промышленного использования добавьте: retry-логику, очередь задач (Celery или asyncio), кэширование уже сгенерированных изображений по slug.
Ограничения
Время генерации: для quality=high и сложных сцен - до 2 минут. В синхронных HTTP-запросах это проблема (таймауты). Решение: генерировать в фоновой задаче, сохранять URL, отдавать фронтенду после готовности.
Консистентность персонажей: как и у всех диффузионных моделей без специальных механизмов (аналог Omni Reference из Midjourney), GPT Image не гарантирует одинакового персонажа в разных генерациях. Для нарративного контента с повторяющимися персонажами - Midjourney с Omni Reference или fine-tuned модели.
Ограничения контента: OpenAI применяет фильтры безопасности. Некоторые темы (медицина, политика, известные люди) требуют осторожных формулировок. Для обхода ограничений - локальный Stable Diffusion без фильтров.
Rate limits: по умолчанию 5 изображений в минуту на Tier 1. Для боевая среда-нагрузки нужен Tier 2+ (от $50 потраченных на API). Подробнее на platform.openai.com/docs/guides/rate-limits.
Частые вопросы
Чем gpt-image-2 принципиально лучше DALL-E 3?
Dall-E 3 доступен как dalle-3 в API. gpt-image-2 лучше по: точности следования промпту (особенно для сложных композиций с несколькими элементами), рендерингу текста внутри изображений (на латинице), прозрачному фону (background=transparent), детализации материалов. На простых промптах разница минимальна. На сложных многоэлементных сценах - заметная.
Как передать изображение для редактирования через API?
Через Edits конечная точка API: client.images.edit(image=open("file.png", "rb"), mask=mask_file, ...). Требования: PNG формат, размер совпадает с маской, не более 4096×4096 пикселей, не более 20 MB. Маска должна быть PNG с альфа-каналом: прозрачные пиксели = область для изменения, непрозрачные = сохранить.
Какой quality выбрать для продакшна?
Для большинства боевая среда-задач - medium. Разница с high есть, но не критична для web-контента. High имеет смысл для: финальных маркетинговых материалов, печатного контента, детализированных иллюстраций. Low - только для быстрого прототипирования и тестирования промптов.
Как генерация GPT Image отличается от Midjourney стилистически?
GPT Image тяготеет к чистоте и точности следования описанию. Midjourney V7 добавляет художественную интерпретацию и «настроение» даже на нейтральных промптах. На одном промпте «coffee cup on table, morning light» GPT Image даст аккуратную фотографию, Midjourney - атмосферную иллюстрацию с характером. Для брендированного контента, где важна точность, - GPT Image. Для художественных проектов - Midjourney.
Есть ли rate limits на API и как работать в пакетной обработке?
Да. Tier 1 (менее $50 потрачено): 5 изображений в минуту. Tier 2 (от $50): 20/мин. Tier 3 (от $100): 50/мин. Для пакетной обработки: добавить time.sleep(12) между запросами на Tier 1 (60 сек / 5 = 12 сек). На Tier 2+: использовать asyncio с семафором на количество параллельных запросов. При ошибке 429 - exponential backoff: ждём 2^n секунд перед повторной попыткой.
Что дальше
Следующая тема: Stable Diffusion локально - установка ComfyUI и Forge, SDXL и Flux без облака.
Больше материалов - в AI Компас и на сайте ai-uchebnik.ru.
AI Компас (t.me/kosmoslab_ai) - канал для предпринимателей в РФ и СНГ, которые применяют AI в своём бизнесе без программиста. Разбираем инструменты и схемы - без курсов и теории.