All Projects → demidko → aot

demidko / aot

Licence: MIT license
Russian morphology for Java

Programming Languages

java
68154 projects - #9 most used programming language
kotlin
9241 projects

Projects that are alternatives of or similar to aot

udar
UDAR Does Accented Russian: A finite-state morphological analyzer of Russian that handles stressed wordforms.
Stars: ✭ 15 (-63.41%)
Mutual labels:  russian, morphological-analysis, russian-language
nerus
Large silver standart Russian corpus with NER, morphology and syntax markup
Stars: ✭ 47 (+14.63%)
Mutual labels:  morphology, russian
Angular Library Seed
🌾 Seed project for Angular libraries that are AOT/JIT compatible and that use external SCSS-styles and HTML-templates
Stars: ✭ 197 (+380.49%)
Mutual labels:  aot-compilation, aot
DeepMorphy
Морфологический анализатор для русского языка на C# для .NET
Stars: ✭ 23 (-43.9%)
Mutual labels:  morphology, russian
Ngx Cookie Service
Angular (4.2+ ...11) service for cookies. Originally based on the `ng2-cookies` library.
Stars: ✭ 363 (+785.37%)
Mutual labels:  aot-compilation, aot
Egeo
EGEO is the open-source UI library used to build Stratio's UI. It includes UI Components, Utilities, Services and much more to build user interfaces quickly and with ease. The library is distributed in AoT mode.
Stars: ✭ 69 (+68.29%)
Mutual labels:  aot-compilation, aot
mlmorph
Malayalam Morphological Analyzer using Finite State Transducer
Stars: ✭ 40 (-2.44%)
Mutual labels:  morphology, morphological-analysis
Dictionary
Словари по фронтенду
Stars: ✭ 1,682 (+4002.44%)
Mutual labels:  dictionary, russian
zeyrek
Python morphological analyzer for Turkish language. Partial port of ZemberekNLP.
Stars: ✭ 36 (-12.2%)
Mutual labels:  morphology, morphological-analysis
langua
A suite of language tools
Stars: ✭ 29 (-29.27%)
Mutual labels:  dictionary, morphology
Angularx Qrcode
Angular4/5/6/7/8/9/10/11 QRCode generator component library for QR Codes (Quick Response) with AOT support based on node-qrcode
Stars: ✭ 281 (+585.37%)
Mutual labels:  aot-compilation, aot
Robovm
Ahead of time compiler for JVM bytecode targetting iOS, Mac OSX and Linux
Stars: ✭ 633 (+1443.9%)
Mutual labels:  jvm, aot
Pymystem3
A Python wrapper of the Yandex Mystem 3.1 morphological analyzer (http://api.yandex.ru/mystem). The original tool is shipped as a binary and this library makes it easy to integrate it in Python projects. Let us know in the issues if you would like to be involved into the developments or maintenance of this project. If you have any fix or suggestion, please make a pull request. We are very open to accepting any contributions.
Stars: ✭ 224 (+446.34%)
Mutual labels:  russian, morphological-analysis
Ng2 Smart Table
Angular Smart Data Table component
Stars: ✭ 1,590 (+3778.05%)
Mutual labels:  aot-compilation, aot
Rnnmorph
Morphological analyzer for Russian and English languages based on neural networks and dictionary-lookup systems.
Stars: ✭ 111 (+170.73%)
Mutual labels:  russian, morphological-analysis
treestoolbox
TREES toolbox
Stars: ✭ 20 (-51.22%)
Mutual labels:  morphology, morphological-analysis
libmorph
libmorph rus/ukr - fast & accurate morphological analyzer/analyses for Russian and Ukrainian
Stars: ✭ 16 (-60.98%)
Mutual labels:  russian, morphological-analysis
ds
👨‍🔬 In Russian: Обновляемая структурированная подборка бесплатных ресурсов по тематикам Data Science: курсы, книги, открытые данные, блоги и готовые решения.
Stars: ✭ 102 (+148.78%)
Mutual labels:  russian, russian-language
retinal-exudates-detection
exudates detection using hybrid approach (Image Morphology & Machine Learning)
Stars: ✭ 53 (+29.27%)
Mutual labels:  morphology, morphological-analysis
Russian Words
List of Russian words
Stars: ✭ 168 (+309.76%)
Mutual labels:  dictionary, russian

Aot – автоматическая обработка текста

Java библиотека для быстрого (!) получения леммы и морфологической информации по заданному слову русского языка. Реинкарнация aot-lematizier с удобным обновленным API, избавленная от closed-source зависимостей, упрощенная для сборки, и как следствие легко подключаемая в другие проекты с помощью репозитория Jitpack. Поддерживает все версии Java начиная с 8-ой версии, а также протестирована со всеми версиями Kotlin начиная с 1.5.*

  1. Определяет исходную форму слова согласно правилам русского языка, так называемую лемму (первое лицо, единственное число).
  2. Определяет всевозможные характеристики слова, такие как часть речи, род, падеж, число и т. д.
  3. Определяет всевозможные преобразования слова с их характеристиками (flexion).
  4. Различает слова с полным соответствием письменной формы, но разной морфологией, например замок (что? строение) и замок (что сделал? замок под дождем).
  5. Различает омонимии, то есть слова с полным соответствием и письменной формы и морфологии, но различным смыслом, например замок (что? строение) и замок (что? запор).

Как подключить?

Вам понадобится Gradle или Maven, или другая система сборки.

Как использовать?

import java.io.IOException;

import static java.lang.System.out;
import static com.github.demidko.aot.WordformMeaning.lookupForMeanings;

class Example {

  public static void main(String[] args) throws IOException {

    var meanings = lookupForMeanings("люди");
    out.println(meanings.size());
    /* 1 */

    out.println(meanings.get(0).getMorphology());
    /* [С, мр, им, мн] */

    out.println(meanings.get(0).getLemma());
    /* человек */

    for (var t : meanings.get(0).getTransformations()) {
      out.println(t.toString() + " " + t.getMorphology());
      /*
       * человек [С, мр, им, ед]
       * человека [рд, С, мр, ед]
       * человеку [С, мр, ед, дт]
       * человека [С, мр, ед, вн]
       * человеком [тв, С, мр, ед]
       * человеке [С, мр, ед, пр]
       * люди [С, мр, им, мн]
       * людей [рд, С, мр, мн]
       * человек [рд, С, мр, мн]
       * людям [С, мр, мн, дт]
       * человекам [С, мр, мн, дт]
       * людей [С, мр, мн, вн]
       * людьми [тв, С, мр, мн]
       * человеками [тв, С, мр, мн]
       * людях [С, мр, мн, пр]
       * человеках [С, мр, мн, пр]
       */
    }
  }
}

Откуда взяты слова и морфология?

За слова и морфологическую информацию спасибо проекту morph_dict. Из него и были взяты исходные mrd и tab файлы словарей. Документация для них лежит здесь. В нашей java-библиотеке, эти исходные словари скомпилированы в бинарный формат, более удобный для быстрой загрузки в память и поиска. В качестве общего стандарта для библиотеки и компилятора, используется библиотека aot-bytecode.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].