Photo AD System - Автоматизированная система создания рекламных фотографий
.jpeg)

Описание процесса
Данная автоматизация представляет собой интеллектуальную систему для превращения обычных фотографий товаров в профессиональные студийные снимки рекламного качества. Пользователь отправляет фотографию товара в Telegram бот, система анализирует изображение через Google Gemini 2.5 Flash с компьютерным зрением, создает несколько вариантов профессиональных снимков с различными углами съемки, освещением и фонами, сохраняя при этом 100% точность исходного продукта, и отправляет результат обратно пользователю.
API ключи и сервисы:
- Telegram Bot API - для приема и отправки изображений (бот: Photo editor)
- Google Gemini 2.5 Flash Image Preview API - для AI обработки изображений
Архитектура системы по блокам
РАЗДЕЛ 1: ПОЛУЧЕНИЕ ИЗОБРАЖЕНИЯ

1.1 Telegram Trigger - Мониторинг входящих сообщений
Назначение: Автоматически получает сообщения с фотографиями от пользователей в Telegram
Настройки Telegram Trigger:
- Updates: ["message"] (отслеживание новых сообщений)
- Additional Fields: {} (стандартные настройки)
- Webhook ID: 15ecbc09-e385-4fbe-ada5-0389acc8ee60
- Credentials: Ваш тг бот
Что получаем:
{
"message": {
"message_id": 123,
"chat": {
"id": 987654321,
"type": "private"
},
"photo": [
{
"file_id": "AgACAgIAAxkBAAI...",
"file_unique_id": "AQADbwAD...",
"width": 1280,
"height": 720,
"file_size": 87654
}
],
"caption": "Товар для рекламы - смартфон iPhone"
}
}
Обработка подписи (caption): Система использует подпись к фото как контекст для AI - что именно за товар изображен и какой результат ожидается.
1.2 Get a file - Загрузка файла изображения
Назначение: Получает файл изображения от Telegram API для дальнейшей обработки
Настройки Telegram:
- Resource: file
- File ID: {{ $json.message.photo[0].file_id }} (ID первого изображения)
- Additional Fields: {} (стандартные настройки)
- Credentials: Photo editor
Процесс загрузки:
- Извлекает file_id из массива фотографий
- Делает запрос к Telegram API для получения file_path
- Скачивает бинарные данные изображения
- Подготавливает для дальнейшей обработки
РАЗДЕЛ 2: ПОДГОТОВКА ИЗОБРАЖЕНИЯ

2.1 Extract from File - Конвертация в Base64
Назначение: Преобразует бинарное изображение в Base64 формат для передачи в AI API
Настройки:
- Operation: binaryToPropery (извлечение в свойство)
- Options: {} (стандартные настройки)
Результат: Base64 строка изображения в свойстве data для использования в API запросе.
РАЗДЕЛ 3: AI ОБРАБОТКА ИЗОБРАЖЕНИЯ

3.1 generate_image - Создание профессиональных фотографий
Назначение: Использует Google Gemini 2.5 Flash для создания студийных версий исходного товара
Настройки API:
- Method: POST
- URL: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash-image-preview:generateContent
- Authentication: HTTP Header Auth (Gemini credentials)
- Model: gemini-2.5-flash-image-preview
Детальный промпт системы:
Transform this exact product image ({{ caption }}) into professional studio photography with multiple variations while STRICTLY PRESERVING the original product:
CRITICAL PRESERVATION RULES:
- EXACT product reproduction: NO changes to shape, proportions, or design
- TEXT INTEGRITY: All text, labels, logos must remain 100% accurate - no distortion, no typos, no font changes
- Preserve ALL original details: serial numbers, brand marks, textures, materials
- Maintain exact colors and finishes of the product itself
- Keep all product features identical to source image
- DO NOT alter, stylize or reimagine the product - only improve photography
LIGHTING SETUP (apply without changing product):
- Key light: Softbox at 45° angle, creating gentle shadows
- Fill light: Reducing shadow intensity by 60%
- Rim/back light: Creating edge separation from background
- Optional accent light for texture highlights
- Ensure lighting reveals but doesn't alter product details
BACKGROUND OPTIONS (product remains unchanged):
1. Pure white infinity curve (cyclorama)
2. Subtle gradient from white to light gray
3. Dark luxury background with spot lighting
4. Soft pastel gradient complementing product colors
PHOTOGRAPHY STYLES (4-6 shots, product identical in all):
- Hero shot: Centered, straight-on angle
- 3/4 view: Dynamic angle showing depth
- Detail macro: Close-up of key features/textures
- Floating product: With subtle drop shadow
- Lifestyle context: Minimal props, premium feel
- Top-down flat lay: Organized, symmetric composition
POST-PROCESSING CONSTRAINTS:
- Remove ONLY environmental flaws (dust, scratches on surface, not product)
- Enhanced sharpness WITHOUT altering product geometry
- Color correction for lighting ONLY - product colors stay true
- Add subtle reflection on glossy surface below
- Consistent white balance across all shots
- Light vignetting for focus
- Professional retouching that doesn't modify the product itself
QUALITY CHECKS:
- Compare with original: product must be identical
- All text readable and unchanged
- No AI hallucinations or invented details
- Product authenticity maintained
OUTPUT: High resolution, e-commerce/advertising ready, photorealistic studio quality with the EXACT original product
JSON Body конфигурация:
{
"model": "gemini-2.5-flash-image-preview",
"contents": [
{
"parts": [
{
"text": "[полный промпт выше]"
},
{
"inlineData": {
"mimeType": "image/jpeg",
"data": "{{ $json.data }}"
}
}
]
}
],
"generationConfig": {
"temperature": 0.5,
"topK": 40,
"topP": 0.95,
"maxOutputTokens": 8192
}
}
Параметры генерации:
- Temperature: 0.5 (умеренная креативность)
- TopK: 40 (ограничение выбора токенов)
- TopP: 0.95 (nucleus sampling)
- MaxOutputTokens: 8192 (достаточно для множественных изображений)
РАЗДЕЛ 4: ОБРАБОТКА РЕЗУЛЬТАТОВ

4.1 Code - Извлечение сгенерированных изображений
Назначение: Парсит ответ от Gemini API и извлекает все созданные изображения
JavaScript код:
const items = [];
const response = $input.first().json;
// Извлекаем только изображения (части с нечетными индексами)
const parts = response.candidates[0].content.parts;
// Берем только элементы с inlineData (изображения)
for (let i = 0; i < parts.length; i++) {
if (parts[i].inlineData && parts[i].inlineData.data) {
items.push({
json: {
data: parts[i].inlineData.data,
mimeType: parts[i].inlineData.mimeType || 'image/jpeg'
}
});
}
}
return items;
Логика обработки:
- Получает ответ от Gemini API
- Ищет части с изображениями (inlineData)
- Извлекает Base64 данные каждого изображения
- Создает массив объектов для дальнейшей обработки
4.2 Convert to File1 - Конвертация в бинарный формат
Назначение: Преобразует Base64 изображения обратно в бинарный формат для отправки
Настройки:
- Operation: toBinary
- Source Property: data (Base64 данные)
- Options: {} (стандартные настройки)
РАЗДЕЛ 5: ОТПРАВКА РЕЗУЛЬТАТОВ

5.1 Send a photo message - Отправка обработанных фотографий
Назначение: Отправляет все созданные профессиональные фотографии обратно пользователю
Настройки Telegram:
- Operation: sendPhoto
- Chat ID: {{ $('Telegram Trigger').item.json.message.chat.id }} (тому же пользователю)
- Binary Data: true (отправка бинарных данных)
- Additional Fields: {} (без дополнительных полей)
Результат: Пользователь получает 4-6 профессиональных версий своей фотографии товара.
Схема подключений нод
Основной поток:
- Telegram Trigger → Get a file → Extract from File
- Extract from File → generate_image → Code
- Code → Convert to File1 → Send a photo message
Обработка множественных изображений:
Система автоматически обрабатывает все сгенерированные варианты фотографий и отправляет их по очереди пользователю.
Необходимые сервисы и их настройки
Настройка Telegram Bot:
- Создайте бота через @BotFather
- Получите Bot Token
- Настройте webhook для приема изображений
Настройка Google Gemini:
- Получите API ключ на ai.google.dev
- Включите Gemini 2.5 Flash Image Preview
- Настройте биллинг (платная модель)
- Стоимость: ~$0.01-0.03 за изображение
Настройки безопасности:
- Ограничьте доступ к боту (whitelist пользователей)
- Мониторинг использования API
- Резервные копии важных промптов
Возможности системы
AI обработка изображений:
- Профессиональное освещение - студийная подсветка с нескольких углов
- Множественные фоны - белый, градиент, люкс, пастель
- Различные ракурсы - hero shot, 3/4, макро, flat lay, lifestyle
Качество результатов:
- Высокое разрешение - готово к печати и веб-использованию
- Фотореалистичность - неотличимо от профессиональной съемки
- Сохранение текста - все надписи и логотипы остаются читаемыми
- Профессиональная ретушь - удаление дефектов без изменения продукта
Удобство использования:
- Простой интерфейс - отправил фото в Telegram, получил результат
- Быстрая обработка - 30-60 секунд на генерацию
- Множественные варианты - 4-6 разных композиций за раз
- Автоматическая доставка - все результаты сразу в чат
Применение системы
Для e-commerce:
- Товарные фотографии - профессиональные снимки для каталогов
- A/B тестирование - разные композиции для оптимизации конверсии
- Экономия на фотографе - студийное качество без студии
- Быстрое обновление каталога - мгновенная обработка новых товаров
Для маркетинговых агентств:
- Клиентский сервис - быстрое создание рекламных материалов
- Прототипирование - быстрая визуализация идей кампаний
- Презентации - профессиональные mockup'ы для клиентов
- Экономия бюджета - снижение затрат на фотосъемку
Для малого бизнеса:
- Профессиональная подача - конкуренция с крупными игроками
- Социальные сети - качественный контент для Instagram/Facebook
- Маркетплейсы - соответствие требованиям Amazon/Ozon
- Доступность - профессиональное качество без больших инвестиций
Результат работы системы
Что получается:
- Профессиональные рекламные фотографии студийного качества
- Множественные варианты композиций для разных целей
- Сохранение подлинности товара без искажений
- Готовые к использованию материалы для любых каналов
- Экономия времени и денег на профессиональной съемке
Метрики эффективности:
- Время обработки: 30-60 секунд на фото
- Количество вариантов: 4-6 композиций за раз
- Качество: профессиональное студийное
- Точность сохранения: 100% соответствие оригиналу
- Стоимость: ~$0.01-0.03 за обработку
Преимущества перед профессиональной съемкой:
- Скорость - минуты вместо дней на организацию съемки
- Стоимость - в 50-100 раз дешевле студии
- Доступность - работает 24/7 из любой точки мира
- Консистентность - одинаково высокое качество каждый раз
- Вариативность - множество стилей и композиций за раз
Ограничения системы:
- Зависимость от качества исходника - лучше работает с четкими фото
- Сложные продукты - может быть менее точным для очень детализированных товаров
- API лимиты - ограничения по количеству запросов в минуту
- Стоимость - платная модель Gemini для обработки
ROI и бизнес-показатели:
- Ускорение time-to-market - от недель до минут
- Повышение конверсии - профессиональные фото увеличивают продажи на 20-40%
- Масштабируемость - обработка сотен товаров в день
Эта система демократизирует доступ к профессиональной товарной фотографии, делая студийное качество доступным любому бизнесу!