chemist / russian-morphology

russian-morphology
BSD 3-Clause "New" or "Revised" License
3 stars 2 forks source link

API #1

Open nixorn opened 9 years ago

nixorn commented 9 years ago

Приветствую! А каким Вы видите API этого пакета? Я вот вижу у вас там функцию getAllForm, которая все формы всех омонимов переданного слова выдает. Напрашивается что-то типа "получитьСуффиксы", "получитьПрефикс", а на большее пока фантазии не хватает.

И еще, я правильно понял что содержимое paradigms.bin суть префиксы и суффиксы слов?

chemist commented 9 years ago

Честно, даж не знаю, делал давно. Оно собственно тупо в html отдает по запросу формы. По хорошему нужно утонить типа memcache протокола запрос GET слово ответ json с формами слова и нормализованной формой.

type Paradigm = [(Prefix, Suffix, TagNum)] в файле Vector Paradigm paradigms.bin по сути не нужен, он воткнут чтоб не ждать при повторной генерации словаря.

Для работы нужен только dawg.dict в нем все что нужно чтоб морфология работала.

Ну и самое главное, нужен алгоритм для угадывания форм у неизвестных слов сейчас там просто поиск по словарю.

nixorn commented 9 years ago

Я читал Ваш блог, так-то понятно что оно делает в нынешнем состоянии. Мне нужно чтобы оно не одно слово через HTML обрабатывало, а текст перелопачивало, с возможностью так или иначе каждое вошедшее слово характеризовать. Вы просто в блоге API упоминали, вот я и спросил на всякий пожарный, вдруг осталось что в памяти.

chemist commented 9 years ago

Тут 2 варианта 1 сервис с api + клиент который к нему обращается 2 смотреть как Dawg пишется на диск, делать mmap на словарь + править api под такой вариант По сути переписать реализацию dawg.

По другому никак Первый запрос долгий, пока словарь разворачивается плюс он сам по себе весит мегов 6 Там dawg если мне не изменяет память был на векторах, а нужна структура с понятной адресацией и ее отображением на диске.

Если нужно быстро и просто 1 вариант рулит второй вариант сложнее и дольше Есть еще третий, но это отдельный разговор