Leri777 commited on
Commit
471c2fa
·
verified ·
1 Parent(s): d68699c

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +35 -13
app.py CHANGED
@@ -1,31 +1,53 @@
1
  import os
2
  import gradio as gr
3
  import torch
4
- from transformers import pipeline
 
5
  from dotenv import load_dotenv
6
 
 
 
 
 
7
  # Загрузка переменных окружения
8
  load_dotenv()
9
  MODEL_NAME = os.getenv("MODEL_NAME", "Mixtral-8x7B-Instruct-v0-1")
10
  HF_TOKEN = os.getenv("HF_TOKEN")
11
 
12
- # Инициализация пайплайна для работы с моделью
13
- pipe = pipeline(
14
- "text-generation",
15
- model=MODEL_NAME,
16
- use_auth_token=HF_TOKEN,
17
- device=0 if torch.cuda.is_available() else -1
18
- )
 
 
 
 
 
 
 
 
 
 
 
19
 
20
  def generate_response(prompt):
21
  """
22
  Функция для генерации ответа с использованием модели.
23
  Форматирует запрос в соответствии с требованиями модели.
24
  """
25
- # Форматирование инструкции согласно требованиям модели
26
- formatted_prompt = f"<s>[INST] {prompt} [/INST]</s>"
27
- response = pipe(formatted_prompt, max_length=100, num_return_sequences=1)
28
- return response[0]['generated_text']
 
 
 
 
 
 
29
 
30
  # Интерфейс Gradio для взаимодействия с моделью
31
  def main():
@@ -42,4 +64,4 @@ def main():
42
  demo.launch(server_name="0.0.0.0", server_port=7860)
43
 
44
  if __name__ == "__main__":
45
- main()
 
1
  import os
2
  import gradio as gr
3
  import torch
4
+ import logging
5
+ from transformers import pipeline, AutoModelForCausalLM, AutoTokenizer
6
  from dotenv import load_dotenv
7
 
8
+ # Настройка логирования
9
+ logging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s')
10
+ logger = logging.getLogger(__name__)
11
+
12
  # Загрузка переменных окружения
13
  load_dotenv()
14
  MODEL_NAME = os.getenv("MODEL_NAME", "Mixtral-8x7B-Instruct-v0-1")
15
  HF_TOKEN = os.getenv("HF_TOKEN")
16
 
17
+ # Проверка доступности токена
18
+ if not HF_TOKEN:
19
+ logger.error("HF_TOKEN не задан. Пожалуйста, укажите токен доступа Hugging Face в файле .env.")
20
+ raise EnvironmentError("Отсутствует токен доступа Hugging Face.")
21
+
22
+ try:
23
+ # Инициализация пайплайна для работы с моделью
24
+ logger.info(f"Попытка загрузить модель: {MODEL_NAME}")
25
+ pipe = pipeline(
26
+ "text-generation",
27
+ model=MODEL_NAME,
28
+ use_auth_token=HF_TOKEN,
29
+ device=0 if torch.cuda.is_available() else -1
30
+ )
31
+ logger.info("Модель успешно загружена.")
32
+ except Exception as e:
33
+ logger.error(f"Ошибка при загрузке модели: {e}")
34
+ raise
35
 
36
  def generate_response(prompt):
37
  """
38
  Функция для генерации ответа с использованием модели.
39
  Форматирует запрос в соответствии с требованиями модели.
40
  """
41
+ try:
42
+ # Форматирование инструкции согласно требованиям модели
43
+ formatted_prompt = f"<s>[INST] {prompt} [/INST]</s>"
44
+ logger.debug(f"Сформированный запрос: {formatted_prompt}")
45
+ response = pipe(formatted_prompt, max_length=100, num_return_sequences=1)
46
+ logger.debug(f"Полученный ответ: {response}")
47
+ return response[0]['generated_text']
48
+ except Exception as e:
49
+ logger.error(f"Ошибка при генерации ответа: {e}")
50
+ return "Произошла ошибка при генерации ответа. Пожалуйста, попробуйте еще раз."
51
 
52
  # Интерфейс Gradio для взаимодействия с моделью
53
  def main():
 
64
  demo.launch(server_name="0.0.0.0", server_port=7860)
65
 
66
  if __name__ == "__main__":
67
+ main()