MoodWare — анализ настроения текстов
Веб-сервис для анализа настроения текстов: от позитивных до негативных.
Помогает находить токсичные сообщения, отслеживать динамику отзывов и видеть,
как люди реагируют на ваши продукты и сервисы.
Проект создан в рамках трека Правительства Москвы.
1. Ссылки
-
Полный репозиторий на Mos.Hub (исходный код + ML-эксперименты в ноутбуках)
https://hub.mos.ru/solmath/moshack-change_2025В этом репозитории можно посмотреть:
- Jupyter-ноутбуки с экспериментами по обучению и сравнению моделей;
- дополнительный код для подготовки данных и анализа.
-
Папка с видео, демо и прототипами (Google Drive)
https://drive.google.com/drive/folders/1-IQqdbQBBiLeVRH2WdiW18XNeTHRztrc
4. Структура проекта backend
SentimentAnalysis/
├── .venv/ # Виртуальное окружение Python (локально)
│
├── backend/
│ ├── model/ # Папка с сохранённой BERT-моделью
│ │ └── ... # config.json, pytorch_model.bin, файлы токенизатора и т.д.
│ ├── app_bert.py # ГЛАВНОЕ FastAPI-приложение с BERT-моделью
│ └── preprocess_test.py # Функции предобработки текстов перед инференсом
│
├── frontend/
│ ├── css/ # Стили (base.css, home_1.css, advantages_2.css, ...)
│ ├── img/ # Иллюстрации и фото для лендинга
│ ├── js/ # Логика работы фронта (загрузка файлов, запросы к API)
│ ├── index.html # Главная страница (лендинг «Мы анализируем настроение текстов»)
│ └── index_model.html # Экран работы с файлами / анализа тональности
│
├── render.yaml # Конфигурация для деплоя (например, на Render)
├── requirements.txt # Список зависимостей проекта
└── README.md # Текущий файл
5. Установка и запуск
5.1. Предварительные требования
- Python 3.10+ (рекомендуется 3.11)
- Git
pip- (Опционально) GPU + CUDA для ускорения инференса BERT
5.2. Клонирование
Если вы работаете с локальной копией:
git clone https://hub.mos.ru/solmath/moshack-change_2025.git
cd moshack-change_2025
5.3. Виртуальное окружение
Linux / macOS:
python3 -m venv .venv
source .venv/bin/activate
Windows (PowerShell):
python -m venv .venv
.\.venv\Scripts\activate
5.4. Установка зависимостей
Из корня проекта:
pip install --upgrade pip
pip install -r requirements.txt
Если torch с указанной версией не ставится, можно установить без пина:
pip install torch
(подберется совместимая версия под вашу систему).
5.5. Подготовка модели
Убедитесь, что в backend/model/ лежит обученная RuBERT-модель
(папка с config.json, pytorch_model.bin и файлами токенизатора).
Путь к модели задаётся в backend/app_bert.py в константе MODEL_PATH.
5.6. Запуск backend
Из корня проекта (там, где лежат папки backend/ и frontend/):
uvicorn backend.app_bert:app_bert --reload
- По умолчанию сервер поднимется на
http://127.0.0.1:8000 - Документация Swagger:
http://127.0.0.1:8000/docs
8. Команда
Блок «Команда проекта · MoodWare»:
-
Название команды:
MoodWare - ВУЗ: Финансовый университет при Правительстве РФ, 3 курс.
Участники и роли
-
Диева Варвара Дизайн и реализация интерфейса веб-приложения, участие в выборе и дообучении модели. GitHub: https://github.com/dievavar Telegram: @dievavar
-
Лихолетов Георгий Серверная часть: API для вызова модели, обмен данными между фронтендом и ML-сервисом, инфраструктура и деплой. GitHub: https://github.com/FreEFreeZy Telegram: @freefreezy
-
Шалашова Ольга Исследование и настройка моделей на базе BERT: анализ датасетов, дообучение, оценка качества классификации тональности. GitHub: https://github.com/shalashova-olga Telegram: @olya_shalashova