Koziev / rulemma

Лемматизатор для русскоязычных текстов
MIT License
42 stars 6 forks source link

Database error при попытке запустить пример #1

Open QtRoS opened 4 years ago

QtRoS commented 4 years ago

Windows, python 3.6. Не знаю, какая информация еще может понадобиться.

DatabaseError                             Traceback (most recent call last)
c:\GitProjects\ai\dpo-freeformat-routing\research\modeling.py in 
     36 sent = u'Мяукая, голодные кошки ловят жирненьких хрюнделей'
     37 tokens = tokenizer.tokenize(sent)
---> 38 tags = tagger.tag(tokens)
     39 lemmas = lemmatizer.lemmatize(tags)
     40 for word, tags, lemma, *_ in lemmas:

C:\ProgramData\Anaconda3\lib\site-packages\rupostagger\rupostagger.py in tag(self, words)
    121 
    122     def tag(self, words):
--> 123         X = self.vectorize_sample([BEG_TOKEN]+words+[END_TOKEN])
    124         y_pred = self.tagger.tag(X)
    125         return zip(words, y_pred[1: -1])

C:\ProgramData\Anaconda3\lib\site-packages\rupostagger\rupostagger.py in vectorize_sample(self, words)
    113                 iword2 = iword + j
    114                 if nb_words > iword2 >= 0:
--> 115                     features = self.get_word_features(words[iword2], str(j))
    116                     word_features.update(features)
    117 

C:\ProgramData\Anaconda3\lib\site-packages\rupostagger\rupostagger.py in get_word_features(self, word, prefix)
     97                 if self.use_gren:
     98                     tags = set()
---> 99                     for tagset in self.word2tags[uword]:
    100                         tags.update(tagset.split(' '))
    101 

C:\ProgramData\Anaconda3\lib\site-packages\ruword2tags\ruword2tags.py in __getitem__(self, word)
    134                 hit = True
    135             else:
--> 136                 for r in self.cur.execute('SELECT id_tagsets FROM word_tagsets WHERE word=:word', {'word': word}):
    137                     id_tagsets = int(r[0])
    138                     self.word2tagsets_cache[word] = id_tagsets

DatabaseError: file is not a database
Koziev commented 4 years ago

Привет,

Это проблема вот с [этим файлом](https://github.com/Koziev/ruword2tags/blob/master/ruword2tags/ruword2tags.db в ruword2tags). Почему-то он иногда скачивается с околонулевым размером, хотя по-нормальному его размер около 160 Мб. Я пока не понял причину :( Если скачать его отдельно (https://drive.google.com/file/d/1xlL8ijnwE6tAPpsil7Q1yWkXY4mn2YCd/view?usp=sharing) вместо битого, то все начинает работать.