antimoda1 commited on
Commit
6b31738
·
1 Parent(s): 0aa6d2c

save nlp model to disk

Browse files
Files changed (1) hide show
  1. lemmatizer.py +4 -3
lemmatizer.py CHANGED
@@ -7,12 +7,13 @@ class RussianLemmatizer:
7
  def __init__(self):
8
  print(" Загрузка русской модели spaCy...")
9
  try:
10
- self.nlp = spacy.load("ru_core_news_sm")
11
  except OSError:
12
  print(" ⚠️ Модель ru_core_news_sm не найдена, скачиваю...")
13
  import subprocess
14
  subprocess.check_call(["python", "-m", "spacy", "download", "ru_core_news_sm"])
15
  self.nlp = spacy.load("ru_core_news_sm")
 
16
 
17
  self.terms = {}
18
  self.stems = {}
@@ -23,7 +24,7 @@ class RussianLemmatizer:
23
 
24
  print(f" Загружено {len(self.terms)} терминов из vocabulary.md")
25
 
26
- # Добавляем custom component для обработки терминов после лемматизации
27
  @self.nlp.component("fix_terms")
28
  def fix_terms(doc):
29
  """Компонент для исправления лемм терминов и их форм"""
@@ -39,7 +40,7 @@ class RussianLemmatizer:
39
  self.nlp.add_pipe("fix_terms", after="lemmatizer")
40
 
41
  def tokenize_text(self, text: str) -> list[str]:
42
- """Лемматизация текста для русского языка (spaCy).
43
 
44
  Args:
45
  text: текст для лемматизации
 
7
  def __init__(self):
8
  print(" Загрузка русской модели spaCy...")
9
  try:
10
+ self.nlp = spacy.load("./ru_model")
11
  except OSError:
12
  print(" ⚠️ Модель ru_core_news_sm не найдена, скачиваю...")
13
  import subprocess
14
  subprocess.check_call(["python", "-m", "spacy", "download", "ru_core_news_sm"])
15
  self.nlp = spacy.load("ru_core_news_sm")
16
+ self.nlp.to_disk("./ru_model")
17
 
18
  self.terms = {}
19
  self.stems = {}
 
24
 
25
  print(f" Загружено {len(self.terms)} терминов из vocabulary.md")
26
 
27
+ # custom component для обработки терминов после лемматизации
28
  @self.nlp.component("fix_terms")
29
  def fix_terms(doc):
30
  """Компонент для исправления лемм терминов и их форм"""
 
40
  self.nlp.add_pipe("fix_terms", after="lemmatizer")
41
 
42
  def tokenize_text(self, text: str) -> list[str]:
43
+ """Лемматизация текста.
44
 
45
  Args:
46
  text: текст для лемматизации