brown-uk / nlp_uk

This is a project to demonstrate NLP API from LanguageTool for Ukrainian language.
GNU General Public License v3.0
72 stars 13 forks source link

LanguageTool API NLP UK

This is a project to demonstrate NLP API from LanguageTool for Ukrainian language.

Це — проект демонстрації API для обробляння природної мови в LanguageTool для української мови.

Використовує мову groovy, засоби для токенізації та тегування також мають скрипти-обгортки для python3 та java. Рекомендована версія groovy - 4.0.22 або новіше.

Для запуску скриптів потрібно встановити мову groovy

УВАГА: при першому запуску потрібно мережеве з'єднання, щоб скрипти могли звантажити потрібні модулі

ПРИМІТКА: скрипт gradle потрібен лише для розробників

Для невеликих текстів приклад розбиття та тегування також можна переглянути на сторінці аналізу LanguageTool

Основні скрити аналізу текстів знаходяться в каталозі src/main/groovy/ua/net/nlp/tools

Використання

Утиліта розбиття тексту: TokenizeText.groovy

Утиліта аналізу тексту: TagText.groovy

докладніше про утиліти аналізу

Допоміжні утиліти:

докладніше про допоміжні утиліти

Використання (найпростіший шлях)

Встановити JDK 17 (https://www.oracle.com/java/technologies/downloads/#jdk17-windows)

Чистити файл

UNIX:
./gradlew -q cleanText -Pargs="-i <мій-файл.txt>"
Windows:
gradlew.bat -q cleanText -Pargs="-i <мій-файл.txt>"

Буде створено файл <мій-файл.good.txt> в якому виправлено знайдені проблеми зі словами.

Тегувати файл

UNIX:
./gradlew -q tagText -Pargs="-i <мій-файл.txt> -su"
Windows:
gradlew.bat -q tagText -Pargs="-i <мій-файл.txt> -su"

Буде створено файл <мій-файл.tagged.xml>. Прапорець "-su" генерує файл невідомих слів.

Використовувані програмні засоби

Для аналізу текстів використовується український модуль LanguageTool

Для тегування лексем використовується словник української мови з проекту ВЕСУМ

Ліцензія

Проект LanguageTool API NLP UK розповсюджується за умов ліцензії GPL версії 3

Copyright (c) 2022 Андрій Рисін (arysin@gmail.com)