Репозиторий: github.com/bazhen82/MarketVision
Ассистент карточек товаров для маркетплейсов (Ozon / Wildberries).
Пайплайн: фото товара → Vision (ProxyAPI) → текст карточки (GigaChat) → lifestyle-визуал (ProxyAPI GPT-Image).
Интерфейс: форма загрузки, настройки маркетплейса и генерация карточки.
Результат: тексты для карточки, визуал, тайминги, скачивание и отправка в Telegram.
- Python 3.10+
- Flask — веб-интерфейс и прогресс
- ProxyAPI — Vision + генерация изображений (без прямого OpenAI)
- GigaChat — SEO-текст, буллеты, ключевые слова
- Telegram — опциональная отправка результата кнопкой в UI
cd marketvision
python -m venv venv
.\venv\Scripts\Activate.ps1
.\venv\Scripts\pip install -r requirements.txt
copy .env.example .env
# Замените заглушки your_* на реальные ключи в .env
.\venv\Scripts\python scripts\check_env.py
.\venv\Scripts\python app.pyОткройте: http://127.0.0.1:5000
| Переменная | Обязательно | Описание |
|---|---|---|
PROXY_API |
да | Ключ ProxyAPI |
GIGACHAT_CLIENT_ID |
да | RqUID / Client ID для OAuth |
GIGACHAT_CLIENT_SECRET |
да | Authorization key (Basic) |
TELEGRAM_BOT_TOKEN |
нет | Для кнопки «Отправить в Telegram» |
TELEGRAM_CHAT_ID |
нет | ID чата получателя |
PROXY_VISION_MODEL |
нет | По умолчанию gpt-4o-mini |
PROXY_IMAGE_MODEL |
нет | По умолчанию gpt-image-1 |
Каждый запуск сохраняется в outputs/<task_id>/:
input.jpg— исходное фотоvision.json— анализ Visioncard.json,card.md— текст карточкиgenerated.png— визуалtiming.json— время шагов (сек)
Если видите SSLError / UNEXPECTED_EOF_WHILE_READING:
- Скачайте сертификаты:
.\venv\Scripts\python.exe scripts\fetch_gigachat_certs.py - Перезапустите
python app.py. - Если GigaChat всё равно недоступен — текст карточки автоматически сгенерируется через ProxyAPI (в
card.jsonбудет"_text_source": "proxyapi_fallback").
- Создайте бота через @BotFather.
- Узнайте
chat_id(например, @userinfobot). - Добавьте токен и chat_id в
.env. - После генерации нажмите «Отправить в Telegram».

