Подписывайтесь:

ARGO — Онлайн-справочник БАДов с ИИ-поиском и рекомендациями

Полнофункциональный веб-портал для каталогизации, поиска и заказа биологически активных добавок. Flask + SQLite + LLM-powered RAG-поиск, Docker-развёртывание, система заказов и блога.

Веб-разработка

Описание проекта

Назначение

ARGO — это веб-платформа для фармацевтической компании, объединяющая каталог товаров, интеллектуальный поиск на базе ИИ, систему персональных рекомендаций, блог и полный цикл заказа от гостя до менеджера.

Основные возможности

Каталог товаров

  • Импорт из PDF-каталога (Argo_2025.pdf): автоматическое извлечение карточек товаров со страниц 13–347, поддержка OCR (Tesseract) при отсутствии текстового слоя
  • Импорт прайс-листов из Excel (.xls/.xlsx): обновление цен по артикулу с логированием изменений
  • LLM-парсинг страниц PDF чанками по 4 страницы с перекрытием для точности
  • Категории и подкатегории: витамин D3 (500 ME, 1000 ME, 2000 ME, 5000 ME, 10000 ME), омега-3, железо, цинк, магний, коллаген, CoQ10, витамин K2, пробиотики, кальций и другие
  • Детальные карточки: описание, состав, дозировка, артикул, цена, изображение

ИИ-поиск и RAG

  • Семантический поиск через эмбеддинги (sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2) с векторными индексами FAISS/Chroma
  • LLM-powered ранжирование результатов через OpenAI-compatible API
  • Гибридная фильтрация: по ключевым словам, категории, дозировке, типу продукта
  • Настройка требования авторизации для поиска через панель администратора
  • Семантический словарь (YAML) для расширения запросов синонимами

Персональные рекомендации (ИИ)

  • LLM генерирует персонализированные подборки добавок на основе запроса пользователя
  • Поддержка reasoning-моделей (до 12000 токенов)
  • История рекомендаций привязана к пользователю

Корзина и заказы

  • Добавление/удаление товаров, изменение количества через REST API
  • Подсчёт итоговой суммы в реальном времени
  • Оформление заказа без регистрации (гостевые заказы)
  • Авторизованные пользователи: привязка заказа к профилю с member_id
  • Уведомления менеджера: SMTP-рассылка или outbox (файлы в data/order_outbox)
  • REST API для внешних интеграций: /api/order/

Блог

  • Полная CMS: создание, редактирование, удаление статей
  • Категории блога с управлением через админку
  • Загрузка медиафайлов (изображения до 5 МБ)
  • Предпросмотр на главной странице с пагинацией
  • REST API публикации (/api/public/blog) с Bearer-токеном
  • Авторство: админ и редактор (роль editor)

Административная панель

  • Управление товарами: импорт, редактирование, экспорт
  • Управление пользователями: создание, роли, сброс паролей
  • Управление заказами: просмотр, статусы, детали
  • Управление блогом: статьи, категории, медиа
  • Настройки сайта: заголовки, описания, hero-баннер, SEO, footer-ссылки
  • Аналитика просмотров страниц
  • Управление категориями товаров (дерево)

Система пользователей

  • 4 роли: admin, editor, manager, user
  • Защита от fixation-атак на сессии
  • HTTP-only cookies, SameSite=Lax, настраиваемый TTL сессии (14 дней)
  • Минимальная длина пароля: 8 символов
  • Автоматическое создание администратора при первом запуске
  • Системный пользователь для гостевых заказов

REST API

  • /api/products/ — каталог с фильтрацией
  • /api/cart/ — корзина (add, remove, update, clear)
  • /api/order/ — создание заказов
  • /api/recommendations/ — ИИ-рекомендации
  • /api/blog/ — статьи блога (CRUD для авторизованных)
  • /api/public/blog — публикация статей по API-ключу
  • /api/search/ — семантический поиск
  • /api/admin/ — административные операции (export, settings)

Технологии

Слой Технология
Язык Python 3.13
Веб-фреймворк Flask 3.1
База данных SQLite (argo.db), SQLAlchemy ORM
Миграции Alembic (60+ миграций)
Векторный поиск FAISS / Chroma DB
Эмбеддинги sentence-transformers (paraphrase-multilingual-MiniLM-L12-v2)
LLM OpenAI-compatible API (GPT-4o-mini, локальные модели)
PDF-парсинг pymupdf + Tesseract OCR
Excel-импорт openpyxl
Шаблонизатор Jinja2
Фронтенд Bootstrap 5, CSS3, vanilla JS
Сервер Gunicorn (WSGI)
Контейнеризация Docker + docker-compose
Тестирование pytest

Текущее состояние

  • 60+ Alembic-миграций — стабильная, зрелая схема БД
  • Полный цикл заказа — от гостевого просмотра до уведомления менеджера
  • RAG-поиск рабочий — векторные индексы + LLM-ранжирование
  • Блог — 28 статей в контент-плане, 13 опубликовано, автоматическая публикация через scheduler
  • Два способа импорта — PDF-каталог (с LLM) и Excel-прайс-листы
  • Docker-развёртывание — production-ready с Gunicorn + Nginx
  • Тесты — pytest для каталога, заказов, рекомендаций, поиска, импорта

Потенциал развития

Коммерческий

  • Интеграция платёжных систем (ЮKassa, CloudPayments) для онлайн-оплаты
  • Личный кабинет с историей заказов и подпиской на регулярные закупки
  • Программа лояльности с накопительными скидками и partner-ссылками
  • Мультивариантность: выбор упаковки (30/60/90 капсул) на карточке товара

Технические

  • Миграция с SQLite на PostgreSQL для высокой нагрузки
  • Кэширование через Redis (результаты поиска, популярные страницы)
  • Celery/RQ для асинхронных задач (генерация эмбеддингов, email-рассылки)
  • CI/CD pipeline (GitHub Actions) с автотестами и автодеплоем
  • Rate limiting и API-versioning для публичных эндпоинтов

ИИ и контент

  • Чат-бот консультанта на основе RAG по базе товаров
  • Автоматическая генерация описаний новинок при импорте прайс-листов
  • Персональные подборки на основе истории покупок
  • A/B-тестирование рекомендаций через разные LLM-модели
  • Мультиязычность (EN/RU) с автоматическим переводом контента
Информация о проекте
Сайт проекта:
Открыть сайт
Дата создания:
06.06.2026
Языки программирования
Python
Высокоуровневый язык программирования общего назначения с простым и понятным синтаксисом. Идеален для веб-разработки, анализа данных, машинного обучения и автоматизации.
TypeScript
Типизированная версия JavaScript, разработанная Microsoft
Используемые технологии
Flask
Микрофреймворк для веб-разработки на Python. Простой, гибкий и расширяемый.
Веб-фреймворк
OpenAI API
API для работы с языковыми моделями OpenAI, включая GPT-3, GPT-4 и другие модели.
ИИ и ML
LLaMA.cpp
C++ библиотека для запуска моделей LLaMA локально. Эффективная и быстрая.
ИИ и ML
Docker
Платформа для разработки, доставки и запуска приложений в контейнерах.
DevOps
Flask
Легковесный веб-фреймворк для Python
web_framework
SQLite
Встраиваемая реляционная база данных
database
Bootstrap
Популярный CSS фреймворк для создания адаптивных веб-сайтов
css_framework
Заинтересовал проект?

Свяжитесь с нами для обсуждения деталей

Связаться
AI-Помощник