AI-инжиниринг
Image Generation API: DALL-E, Stable Diffusion, FLUX - генерация изображений
Цели урока
- Сравнить провайдеров image generation (DALL-E 3, SD SDXL, FLUX.1, Midjourney) и выбрать под задачу
- Интегрировать DALL-E 3 API: генерация, сохранение в S3, prompt engineering
- Использовать Stability AI API: negative prompts, image-to-image, seed для воспроизводимости
- Реализовать image editing: inpainting, variations, style transfer, remove background
- Спроектировать production pipeline: moderation → cache → generate → S3/CDN → квоты
Stable Diffusion (август 2022) вышел open-source как open-weights ответ на DALL-E 2, который OpenAI представила ещё в апреле. За неделю - 10 миллионов изображений. Это не про рисование. Это про то, что генерация изображений стала infrastructure - такой же, как S3 или Stripe. Canva добавила AI-генерацию и получила 2 миллиарда изображений за первый год. Каждое - API-вызов за USD 0.04-0.12. При таком масштабе архитектура pipeline определяет разницу между прибылью и убытком в миллионы долларов.
- Canva AI генерирует миллиарды изображений - DALL-E + Stable Diffusion + собственные модели
- Shopify автоматически генерирует фоны для товарных фотографий - inpainting + remove background
- Adobe Firefly встроен в Photoshop - generative fill (inpainting) как нативный инструмент дизайнера
- FLUX.1 (2024) - новый SOTA: обходит SDXL по качеству и скорости, активно используется в production
От GAN до FLUX: 10 лет за одним экраном
**2014**: Ян Гудфеллоу придумывает GAN (Generative Adversarial Network) - первый рабочий метод генерации изображений через состязание двух сетей. **2021**: OpenAI выпускает DALL-E - текст в изображение через трансформер, результаты удивляют. **Август 2022**: Stability AI открывает Stable Diffusion - open-weights ответ на DALL-E 2, который OpenAI представила ещё в апреле. За неделю - 10 миллионов изображений. Рынок взрывается. **2022-2023**: Midjourney v4/v5 задают новую планку художественного качества - Discord-бот становится инструментом дизайнеров. **2024**: Black Forest Labs выпускает FLUX.1 - новый SOTA, который обходит SDXL по качеству при сопоставимой скорости. Диффузионный процесс (noise to image) победил GAN окончательно.
Предварительные знания
Ландшафт Image Generation: DALL-E 3, Stable Diffusion, Midjourney, FLUX
Август 2022. Stable Diffusion выходит open-source - open-weights ответ на DALL-E 2, который OpenAI представила ещё в апреле. За неделю - 10 миллионов изображений. Это не про рисование. Это про то, что генерация изображений стала infrastructure - такой же, как хранение файлов или отправка email.
Рынок не монополия одного имени. Три разных ниши, три разных ответа на вопрос 'что нужно в production'.
| Провайдер | API доступ | Сильные стороны | Цена за изображение | Self-hosting |
|---|---|---|---|---|
| DALL-E 3 (OpenAI) | REST API, SDK | Понимание текста, prompt adherence | 0.04-0.12 | Нет |
| Stable Diffusion SDXL (Stability AI) | REST API, SDK | Гибкость, ControlNet, LoRA fine-tuning | 0.03-0.07 | Да (GPU) |
| Midjourney | Нет официального API | Художественное качество, стиль | ~0.02 (подписка) | Нет |
| FLUX.1 (Black Forest Labs) | REST API | Новый SOTA: скорость + качество текста | 0.03-0.06 | Да (GPU) |
| Ideogram | REST API | Лучший text rendering | 0.04-0.08 | Нет |
**Midjourney не имеет официального API** (начало 2026). Интеграция - только через Discord-бота или неофициальные wrapper-библиотеки. Нестабильно для production. Для серьёзных проектов - DALL-E 3, Stability AI или FLUX.1.
Для production-приложения с массовой генерацией (5000+/день) и fine-tuning на корпоративном стиле - какой провайдер оптимален?
OpenAI Images API: DALL-E 3, промптинг, размеры, качество
DALL-E 3 делает кое-что странное: он **переписывает промпт** перед генерацией. Отправлен текст 'кот' - внутри уже работает расширенный вариант 'A fluffy orange tabby cat sitting on a windowsill in warm afternoon light'. Это не баг. Это архитектурное решение, которое объясняет, почему DALL-E 3 лучше других понимает намерение.
Один вызов, три обязательных параметра: model, prompt, size. Стоимость: USD 0.04 за standard, USD 0.08 за HD. Главный подвох производства - URL из ответа живёт 60 минут.
- **Конкретность:** "A red sports car" → "A cherry red 2024 Porsche 911 on a wet mountain road at sunset, cinematic lighting"
- **Стиль:** "digital art", "oil painting", "3D render", "watercolor", "photorealistic"
- **Композиция:** "close-up", "aerial view", "wide angle", "centered", "rule of thirds"
- **Освещение:** "soft diffused light", "golden hour", "dramatic shadows", "neon glow"
- **Исключения:** DALL-E 3 не поддерживает negative prompts - описывать текстом: "without text, no watermarks"
**URL изображений DALL-E живёт 60 минут.** Сохранить URL в базу данных - через час ссылка сломается у всех пользователей. Всегда запрашивать `b64_json` и загружать в S3/CDN для постоянного хранения.
Почему при использовании DALL-E 3 API необходимо сохранять изображение в S3, а не хранить URL из ответа?
Stability AI API: модели, ControlNet, негативные промпты
Stable Diffusion работает через **diffusion process**: берёт чистый шум и итеративно убирает его, направляя процесс через CFG scale (classifier-free guidance). Каждый шаг - небольшой сдвиг от случайного к осмысленному. 20-50 таких шагов - и изображение готово.
Главное отличие от DALL-E: **negative prompts**. Отдельный параметр, который явно говорит модели чего не должно быть. `blurry, low quality, watermark, deformed` - и эти артефакты исчезают из вывода. DALL-E 3 такого механизма не имеет.
| Возможность | DALL-E 3 | Stable Diffusion SDXL |
|---|---|---|
| Negative prompts | Нет (только текстом) | Да (отдельный параметр) |
| Image-to-Image | Нет | Да (strength control) |
| ControlNet | Нет | Да (pose, edge, depth) |
| Seed для повторяемости | Нет | Да |
| Fine-tuning (LoRA) | Нет | Да |
| Self-hosting | Нет | Да (open-source) |
| Понимание промпта | Отличное (переписывает) | Хорошее (дословное) |
**Seed для воспроизводимости:** один и тот же prompt + seed = одинаковое изображение каждый раз. Полезно для A/B-тестирования (менять только prompt, seed фиксирован) и для создания серий похожих изображений с единым стилем.
Какой параметр Stable Diffusion позволяет исключить нежелательные элементы из генерации?
Image Editing: inpainting, outpainting, variations, style transfer
Shopify заменяет фоны на фотографиях товаров автоматически. Adobe встраивает generative fill прямо в Photoshop. Это не фильтры - это **inpainting**: замена выделенной области по маске при сохранении остального контекста.
Четыре основных операции редактирования: **inpainting** (замена области по маске), **outpainting** (расширение за пределы кадра), **variations** (вариации существующего изображения), **style transfer** (смена стиля с сохранением структуры).
**DALL-E 3 не поддерживает edit и variations.** Эти операции доступны только через DALL-E 2. Для production inpainting - Stability AI API: лучше качество и больше контроля через маску, negative prompt и seed.
Чем inpainting отличается от image-to-image генерации?
Production: moderation, caching, CDN, стоимость
Canva: 2 миллиарда генераций в первый год. Каждая - USD 0.04-0.12. При таком объёме разница между 'просто вызвать API' и 'правильно спроектировать pipeline' - это буквально миллионы долларов в год.
Production pipeline выглядит так: **content moderation** (блокировка запрещённого до генерации - до траты денег), **cache check** (одинаковый промпт - одинаковый результат), **generate → S3** (60-минутный URL заменить постоянным), **quota tracking** (квоты на пользователя по плану).
| Объём генерации | Стоимость/мес (DALL-E 3) | Рекомендация |
|---|---|---|
| 100 изображений/день | ~120 | OpenAI API, базовый кеш |
| 1,000 изображений/день | ~1,200 | Кеширование + CDN + квоты |
| 10,000 изображений/день | ~12,000 | Self-hosted SD + DALL-E для premium |
| 100,000+ изображений/день | ~120,000 | Выделенный GPU-кластер, self-hosted |
**Content moderation обязательна.** Без проверки промптов пользователи могут генерировать запрещённый контент. OpenAI сам блокирует часть запросов - но это не полная защита. Предварительная модерация через Moderation API + логирование всех промптов - это необходимый минимум.
Какой первый шаг перед генерацией изображения по пользовательскому промпту в production?
Генерация изображений - это DALL-E
Рынок разнообразный: Midjourney (художественное качество), SD SDXL (open-source, LoRA, ControlNet), FLUX.1 (новый SOTA 2024), Ideogram (text rendering). DALL-E 3 - один из вариантов, не монополия
DALL-E - самый известный бренд, но не лучший во всём. Midjourney даёт художественный результат, которого DALL-E 3 не достигает. SD SDXL - единственный вариант для fine-tuning через LoRA и self-hosting при 10,000+ генераций в день. FLUX.1 (2024) превзошёл SDXL по ключевым метрикам. Выбор провайдера - инженерное решение, а не маркетинговое.
Image generation API - это просто prompt → image, как текстовый API
60-минутные URL, content moderation, S3 pipeline, negative prompts, seed для воспроизводимости, CFG scale - это отдельная инженерная дисциплина
Новичок вызывает API, получает URL, сохраняет в базу. Через час у всех пользователей сломаны картинки. Потом узнаёт про moderation - уже после первого инцидента с NSFW контентом. Правильная архитектура: moderation → cache → b64_json → S3 → CDN. Это 50 строк кода, которые разделяют toy project и production.
Итоги
- Рынок не монополия: DALL-E 3 (0.04/img) - понимание промпта, SD SDXL - LoRA/ControlNet/self-hosting, FLUX.1 - новый SOTA 2024, Midjourney - художественное качество без API
- DALL-E 3 переписывает промпт внутри - это фича, не баг. URL живёт 60 минут - всегда b64_json + S3
- Diffusion process: шум → изображение за 20-50 шагов. CFG scale управляет следованием промпту. Negative prompts - только в SD/FLUX
- Image editing: inpainting (замена по маске), image-to-image (strength 0-1), style transfer, remove background - DALL-E 2 или Stability AI
- Production pipeline: moderation (первый шаг, до денег) → cache → generate → S3/CDN → quota. При 10,000+/день - self-hosted SD экономит порядок стоимости
Что дальше
Изображения - статичный контент. Следующий рубеж AI-генерации - видео и аудио: динамический контент, async pipelines и значительно большие ресурсы.
- Video и Audio Generation — От статичных изображений к видео (Sora, Runway) и музыке (Suno) - новый уровень AI-генерации
- Multimodal AI — Vision API анализирует изображения, Image Generation создаёт - два направления работы с визуальным контентом
- Cost Management — Image generation - одна из самых дорогих AI-операций. Стратегии оптимизации расходов
Связанные уроки
- aie-05-api-integration — Image API используют те же паттерны интеграции
- aie-27-video-audio-generation — Генерация изображений - база для кадров видео
- aie-25-multimodal — Понимание vision дополняет генерацию изображений
- aie-29-cost-management — Стоимость генерации изображений быстро растёт на масштабе
- ml-33-gan — Более ранний генеративный подход к синтезу изображений