turbofil-correction

this module for internal use only. please do not install it

npm install turbofil-correction
7 downloads in the last week
28 downloads in the last month

this module for internal use only. please do not install it

turbofilm-correction

Простой модуль коррекции названий сериалов по словарю.

Модуль задействует нативное апи v8. Дело в том, что полная бд сериалов занимает >100 мб redis-памяти, а в облаках есть только не более 20 мб бесплатной redis-памяти, а хранение словаря в памяти node-аддона занимает около 200 мб оперативной памяти.

Модуль экспериментальный, и написан в худших традициях говнокодинга, но свою задачу он выполняет довольно сносно: поиск по базе даннные сериалов imdb происходит за ~4 секунды.

Установка

npm install turbofilm-correction

апи

var tfc = require ('turbofilm-correction');
tfc.add ('house m.d.'); // Добавляем наименование в словарь
tfc.query ('house'); // -> ["house m.d."]

Есть еще один момент.

Поскольку на начало написания еще не было понятно, как это все должно работать, есть две функции, которые используются следующим образом.

tfc.levenshtein ("abc", "abf"); // Расстояние левенштейна между двумя словами
tfc.dice ("def", "xef"); // Коэффициент дайса

Обе эти функции реализованиы на c++, поэтому выполняются достаточно быстро, но кроме этого, их (или любые другие функции с двумя строковыми аргументами) можно передавать в функцию query следующими за первым параметрами.

tfc.query ('porn', tfc.dice, tfc.levenshtein) // -> [["porno", 0.15, 3],[]...], где 0.15 – коэффициент дайсе, а 3 – расстояние левенштейна.

Тесто

См. test.js

npm loves you