Telegram-бот для генерации AI-аватаров
Необходимо разработать Telegram-бота, который позволяет пользователям генерировать стилизованные AI-аватары на основе их фотографий.
Принцип работы
- Пользователь загружает в бота от 5 до 10 своих фотографий (или предоставляет их по запросу бота).
- Пользователь выбирает готовый стиль из предложенных или вводит свой текстовый запрос (промпт).
- Бот формирует запрос к внешнему AI-сервису, передавая промпт, выбранный стиль и референс-фото пользователя.
- После генерации бот присылает готовое изображение пользователю.
- За каждую успешную генерацию списывается одна единица из предварительно купленного пользователем пакета.
Ключевой функционал
- Telegram-бот: прием команд, загрузка изображений, выбор стиля, выдача результата.
- Система управления: загрузка, проверка и хранение (во временном или постоянном хранилище) фотографий пользователя.
- Очередь генераций: только одна активная генерация на пользователя. Остальные запросы становятся в очередь.
- Статусы: отслеживание состояния каждой задачи (в очереди, генерируется, готово, ошибка).
- Учет лимитов: привязка к пакетам оплаченных генераций; списание происходит только при успешном получении готового изображения.
- Повторная генерация: возможность повторного создания неудачного или не понравившегося аватара (с учетом лимитов).
Технические требования
- Backend: Python (фреймворк FastAPI) или Node.js.
- Очередь сообщений / задач: Redis (или аналогичный брокер).
- База данных: PostgreSQL.
- Хранилище изображений: локальное файловое хранилище или облачное решение (S3-совместимое).
- Обработка ошибок: при ошибке генерации (например, неверный промпт, таймаут API) пользователь получает информативное сообщение, а лимит не списывается.
- API генерации изображений, документация и доступ к нему предоставляются заказчиком.