Собираjемо меджусловjанскы морфологичны анализатор

Генералны план

Конечна цєљ jест сгенерировати фаjлы-словники, кторе будут компатибилне с библиотекоjу pymorphy2 и библиотекоjу AZ.js (обедве библиотеки користаjут подобны формат словника, основаны на DAWG). Хвала тутому мы будемо имати можливост започинати брзы и автоматичны морфологичны анализ текста на Меджусловjанском jезыку.

Потрєбно повторно користати скрипты Яна Каменогорского, да бы не имати противрєчностиj в версиjах jезыка.

В целом, скрипт run_generate.py запускаjет вес процес (але напрво потрєбно склонировати все репозиториjи и указати правилну директориjу).

Зависности

Експорт парадигмов из словника

Како? Jесм изтворил фаjл src/services/incline.ts, имаjучи функциjу експорта (написати все формы/наклоњенја всех словесов в словнику).

Запуск: npm run generateParadigms

Чи работаjе ли? Вероjетно, да. Можно, формат експортованого фаjла не jест наjлепши, але главно же оно работаjе.

Проблем Тутчас имаjемо проблем с именниками, кторе могут имати како мужскы, тако и женскы род.

Проблем Глаголы, кторе имаjут алтернативне формы (напр., vladati, vladěti) имаjут зло склоненьjе.

Проблем Вероjетно, потрєбно нєчто измыслити однсно совршаного/несовршаного аспекта.

Проблем Вероjетно, потрєбно имати додатну фазу генерациjи склоњеньја глаголных имен.

Конверсија до формата OpenCorpora XML

Модификована версиjа LT2OpenCorpora се користаjе за тут стадију.

Зачто?

Како? Запустити convert.py.

Чи работаjе ли? Не пополно.

  • Потрєбно провєрити корректност алтернативных форм: "слова/словеса" jест две формы, "рєчены (рєчена, рєчено)" jест три формы и так далье.
  • Потрєбно провєрити корректност форм глагола "быти" и додати грамем за особливе времена
  • Потрєбно измыслити добро изjасненjе грамем за меджусловjанскы язык (они будут имати разлику с русскими грамемами, jербо егзистуjут алтернативне северне/jужне формы, кратке/полны формы заименников и часованjе глаголов фунгуjе инако)
  • Не jесм уверены, чи правилно ли имати присловник и придавник како различне формы jедного слова. Вероjетно, треба было бы вообче изчркнути формы, подобне најбоље абхазски и можно такоже изчркнути формы, подобне најкомпјутернєјши
  • Потрєбно измыслити добру обработку вечеj, кторе имаjут нєколико словесов (Lemma = "zadržati dyh", але все формы не имаjут "дых") и возвратных глаголов
  • Подобны ствар: osnovany na/podpirany od/polny naděje/prěznačeny za
  • Потрєбно измыслити нєкаку методу работы с заименниками затоже прємного опциj анализа имаjут оне.
  • Потрєбно додати до словников слова, кторе не има склонениj ("односно", "чи", "ли", "и")

Генерациjа словников pymorphy2

Зачто?

Како? Склонировати репозиторий pymorphy2-dicts

Чи работаjе ли? Вєројетно да, але потрєбно изтворити конфиг фаjл, подобны такому:

  • https://github.com/kmike/pymorphy2/blob/master/pymorphy2/lang/ru/config.py
  • https://github.com/kmike/pymorphy2/blob/master/pymorphy2/lang/uk/config.py
  • https://github.com/kmike/pymorphy2/blob/master/pymorphy2/lang/uk/_prefixes.py

Проблем Фаjл suffixes.json изгледаjе неправилно, але проблем најбоље вероjетно jест в минулом етапу: в составных словах (фраземах), кторе имаjут выше jедного слова. (jа подзирам формы najbolje).

(jа подзирам формы se).

(jа подзирам формы тако рєчены/тако званы).

Проблем Леммы не сут правилне ("имєл" замєсто "имєти", "го" замєсто "он")

Проблем Поредок тегов в разбору

Конверсија до формата словников AZ.js

Зачто? Дабы издєлати нєчто подобно http://denull.github.io/Az.js/demo/

Како? Jешче не вєм.