Total Complexity | 1 |
Total Lines | 16 |
Duplicated Lines | 0 % |
Changes | 0 |
1 | """Wrapper code for using Simplemma functionality in Annif""" |
||
2 | |||
3 | from simplemma import LanguageDetector, Lemmatizer |
||
4 | from simplemma.strategies import DefaultStrategy |
||
5 | from simplemma.strategies.dictionaries import DefaultDictionaryFactory |
||
6 | |||
7 | LANG_CACHE_SIZE = 5 # How many language dictionaries to keep in memory at once (max) |
||
8 | |||
9 | _dictionary_factory = DefaultDictionaryFactory(cache_max_size=LANG_CACHE_SIZE) |
||
10 | _lemmatization_strategy = DefaultStrategy(dictionary_factory=_dictionary_factory) |
||
11 | lemmatizer = Lemmatizer(lemmatization_strategy=_lemmatization_strategy) |
||
12 | |||
13 | |||
14 | def get_language_detector(lang: str) -> LanguageDetector: |
||
15 | return LanguageDetector(lang, lemmatization_strategy=_lemmatization_strategy) |
||
16 |