lexify

0

Описание

✅ Lexify — это веб-приложение для автоматической проверки текстовых документов на лингвистическую приемлемость и соответствие стандартам оформления библиографических ссылок. Оно позволяет пользователям загружать документы в формате .docx, анализировать их содержимое и получать отчеты с выделенными ошибками и рекомендациями.

https://app.lexiqo.ru/

Языки

  • HTML65,7%
  • Python34,2%
  • Остальные0,1%
readme.md

Lexify ✅

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

Ссылка на проект

🌐 app.lexiqo.ru

🖼 Lexify hero image

Описание

Проект разработан для упрощения процесса проверки научных и технических текстов. Основные функции включают:

  • Разделение текста на предложения и список литературы.
  • Проверка текста на наличие запрещенных символов, слов и последовательностей.
  • Анализ предложений с использованием моделей машинного обучения (например, RoBERTa) для выявления лингвистически неприемлемых конструкций.
  • Проверка оформления ссылок на соответствие стандартам (ГОСТ, APA, IEEE и др.).
  • Генерация отчетов в формате PDF с выделением ошибок.

Приложение построено на фреймворке Django и использует такие инструменты, как LibreOffice для конвертации файлов, NLTK и BeautifulSoup для обработки текста, а также библиотеки для работы с библиографическими данными (CrossRef, CiteProc).

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

  • Обработка текста: разделение документа на текст и список литературы, токенизация предложений.
  • Проверка правил: использование заранее заданных правил для поиска ошибок (например, запрещенные слова или глаголы в будущем времени).
  • Машинное обучение: оценка лингвистической приемлемости предложений с помощью моделей, таких как
    iproskurina/tda-ruroberta-large-ru-cola
    .
  • Анализ ссылок: проверка соответствия ГОСТ и другим стилям оформления с использованием регулярных выражений и данных CrossRef.
  • Аутентификация: вход через email с отправкой кода подтверждения.
  • Отчеты: генерация PDF-отчетов с результатами анализа.

Установка

Требования

  • Python 3.8+
  • Django
  • LibreOffice (для конвертации .docx в HTML и PDF)
  • Библиотеки Python:
    • nltk
    • beautifulsoup4
    • transformers
      (с поддержкой 4-битной квантизации)
    • crossref-commons
    • habanero
    • doi2bib
    • bibtexparser
    • citeproc-py
    • pymorphy3
    • pdfkit
    • их подкаталоги
  • CUDA (опционально, для ускорения работы моделей ML на GPU)

Инструкции

  1. Клонируйте репозиторий:

  2. Установите зависимости:

  3. Установите LibreOffice:

    • На Ubuntu:
      sudo apt-get install libreoffice
    • На других системах следуйте официальной документации LibreOffice.
  4. Настройте переменные окружения в

    django_project/settings.py
    :

    • Укажите
      DEFAULT_FROM_EMAIL
      для отправки кодов подтверждения.
    • Настройте путь к стилям CSL:
      docx/static/csl/
      .
  5. Примените миграции базы данных:

  6. Запустите сервер:

Использование

  1. Перейдите на главную страницу:
    http://localhost:8000/
    .
  2. Войдите в систему через страницу
    /login/
    , указав email и получив код подтверждения.
  3. Загрузите документ .docx через страницу
    /check/
    , выбрав стиль оформления (например, ГОСТ).
  4. Дождитесь завершения анализа и просмотрите результаты в браузере.
  5. Скачайте PDF-отчет с выделенными ошибками через кнопку "Скачать отчет".

Зависимости

  • Django: фреймворк для веб-приложения.
  • NLTK: токенизация текста.
  • BeautifulSoup: парсинг HTML.
  • Transformers: модели машинного обучения.
  • CrossRef: получение библиографических данных по DOI.
  • Pymorphy3: морфологический анализ русского языка.

Полный список зависимостей указан в

requirements.txt
.

Структура проекта

  • views.py
    : обработка запросов и рендеринг страниц.
  • parser.py
    : разделение текста и ссылок.
  • rules.py
    : проверка текста по заданным правилам.
  • references.py
    : анализ ссылок.
  • llm.py
    : интеграция моделей ML.
  • models.py
    : модели базы данных (Paragraph, UserToken, AnalysisLog).
  • urls.py
    : маршруты приложения.

Команда

  • Плесовских Александр Евгеньевич: Тимлид, системный администратор.
  • Аношин Виктор Иванович: ML-разработчик.
  • Канукова Лилия Аслановна: Технический писатель, Дата-аналитик.
  • Орлов Кирилл Олегович: Backend разработчик.
  • Романова Татьяна Владимировна: ML-разработчик.
  • Хомин Максим Вячеславович: Стажер.
  • Палиенко Мария Алексеевна: Стажер.
  • Голуб Владислав Витальевич: Стажер.