ekaterina-simonova commited on
Commit
3f4faae
·
verified ·
1 Parent(s): 98e3f90

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +6 -27
app.py CHANGED
@@ -140,10 +140,10 @@ def setup_nltk():
140
  try:
141
  nltk.download('punkt', quiet=True)
142
  nltk.download('stopwords', quiet=True)
143
- # Используем базовый токенизатор вместо русского
144
  from nltk.tokenize import word_tokenize
145
  test_text = "тестовый текст"
146
- tokens = word_tokenize(test_text)
147
  logger.info(f"NLTK успешно инициализирован. Тестовая токенизация: {tokens}")
148
  except Exception as e:
149
  logger.warning(f"Ошибка инициализации NLTK: {e}")
@@ -473,6 +473,9 @@ def load_models():
473
  logger.info("="*80)
474
  logger.info(f"Начало загрузки модели: {EMBEDDING_MODEL}")
475
 
 
 
 
476
  device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
477
  model = SentenceTransformer(
478
  EMBEDDING_MODEL,
@@ -485,17 +488,6 @@ def load_models():
485
  with torch.no_grad():
486
  embeddings = model.encode(test_text)
487
 
488
- logger.info(f"Модель загружена за {time.time()-start_time:.2f} сек")
489
- logger.info(f"Размерность эмбеддингов: {model.get_sentence_embedding_dimension()}")
490
- # 1. Загрузка SentenceTransformer
491
- start_time = time.time()
492
- device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
493
- model = SentenceTransformer(
494
- EMBEDDING_MODEL,
495
- device=device,
496
- cache_folder=os.path.expanduser("~/.cache/huggingface/hub")
497
- ).to(device)
498
-
499
  logger.info(f"Модель загружена за {time.time()-start_time:.2f} сек")
500
  logger.info(f"Размерность эмбеддингов: {model.get_sentence_embedding_dimension()}")
501
 
@@ -526,19 +518,6 @@ def load_models():
526
  st.error("Файл базы данных пуст!")
527
  return model, faiss_index, None
528
 
529
- # Проверка наличия таблицы content
530
- try:
531
- conn = sqlite3.connect(VECTOR_DB_PATH)
532
- cursor = conn.cursor()
533
- cursor.execute("SELECT COUNT(*) FROM content")
534
- count = cursor.fetchone()[0]
535
- conn.close()
536
- logger.info(f"Таблица content содержит {count} записей")
537
- except sqlite3.OperationalError as e:
538
- logger.error(f"Ошибка при проверке таблицы content: {str(e)}")
539
- st.error("В базе данных отсутствует необходимая таблица content")
540
- return model, faiss_index, None
541
-
542
  hybrid_search = HybridSearch(VECTOR_DB_PATH)
543
 
544
  if hybrid_search and hybrid_search.bm25:
@@ -562,7 +541,7 @@ def load_models():
562
  2. Логи в model_loading.log
563
  3. Доступ к интернету для загрузки моделей
564
  """)
565
- raise
566
 
567
  # Загружаем модели с логированием
568
  logger.info("="*80)
 
140
  try:
141
  nltk.download('punkt', quiet=True)
142
  nltk.download('stopwords', quiet=True)
143
+ # Используем базовый токенизатор без специфичных для языка ресурсов
144
  from nltk.tokenize import word_tokenize
145
  test_text = "тестовый текст"
146
+ tokens = word_tokenize(test_text) # Убираем параметр language
147
  logger.info(f"NLTK успешно инициализирован. Тестовая токенизация: {tokens}")
148
  except Exception as e:
149
  logger.warning(f"Ошибка инициализации NLTK: {e}")
 
473
  logger.info("="*80)
474
  logger.info(f"Начало загрузки модели: {EMBEDDING_MODEL}")
475
 
476
+ # Добавляем определение start_time
477
+ start_time = time.time()
478
+
479
  device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
480
  model = SentenceTransformer(
481
  EMBEDDING_MODEL,
 
488
  with torch.no_grad():
489
  embeddings = model.encode(test_text)
490
 
 
 
 
 
 
 
 
 
 
 
 
491
  logger.info(f"Модель загружена за {time.time()-start_time:.2f} сек")
492
  logger.info(f"Размерность эмбеддингов: {model.get_sentence_embedding_dimension()}")
493
 
 
518
  st.error("Файл базы данных пуст!")
519
  return model, faiss_index, None
520
 
 
 
 
 
 
 
 
 
 
 
 
 
 
521
  hybrid_search = HybridSearch(VECTOR_DB_PATH)
522
 
523
  if hybrid_search and hybrid_search.bm25:
 
541
  2. Логи в model_loading.log
542
  3. Доступ к интернету для загрузки моделей
543
  """)
544
+ return None, None, None
545
 
546
  # Загружаем модели с логированием
547
  logger.info("="*80)