Skip to content

ivanGMAI/report-service

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📊 Report Service

Сервис для анализа частотности словоформ в текстовых файлах с генерацией Excel-отчета.

🚀 Функциональность

  • 📁 Загрузка текстовых файлов любого размера (от килобайт до гигабайтов)
  • 🔍 Лемматизация русских слов — группировка словоформ («житель», «жителем», «жители» → «житель»)
  • 📊 Генерация Excel-отчета с тремя колонками:
    • Словоформа
    • Общее количество в документе
    • Количество по каждой строке (например, "0,11,32,0,0,3")
  • Асинхронная обработка — файлы читаются и анализируются чанками, без загрузки в память целиком
  • 👥 Поддержка нескольких пользователей — ограничение одновременных анализов (Semaphore 2) для стабильности

🛠️ Технологии

  • Python 3.13+
  • FastAPI — веб-фреймворк
  • Uvicorn — ASGI-сервер
  • mawo-pymorphy3 — лемматизация русского языка
  • openpyxl — генерация Excel-файлов
  • asyncio — асинхронная обработка

📦 Установка и запуск

Требования

  • Python 3.13 или выше
  • uv — быстрый менеджер пакетов

Быстрый старт

# 1. Клонировать репозиторий
git clone https://github.com/ivanGMAI/report-service.git
cd report-service

# 2. Установить зависимости
uv sync

# 3. Запустить сервер
uv run uvicorn main:app --reload

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages