cody82 commited on
Commit
5a9e662
·
verified ·
1 Parent(s): 2ab1efa

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +13 -20
app.py CHANGED
@@ -1,49 +1,42 @@
1
  import gradio as gr
2
  from transformers import pipeline
 
3
 
4
- # Загружаем модель — легкая для ZeroGPU (CPU-friendly)
5
  qa_pipeline = pipeline("text-generation", model="tiiuae/falcon-rw-1b")
6
 
7
- # Инструкция боту
8
- system_prompt = (
9
- "Ты — дружелюбный бот, который отлично знает Университет Иннополис. "
10
- "Отвечай чётко и по делу на вопросы про университет, город Иннополис, обучение и студенческую жизнь."
11
- )
12
-
13
- # Ответная функция
14
  def respond(message, history):
15
- prompt = system_prompt + "\n"
 
 
 
16
 
 
17
  for user_msg, bot_msg in history:
18
  prompt += f"Пользователь: {user_msg}\nБот: {bot_msg}\n"
19
  prompt += f"Пользователь: {message}\nБот:"
20
 
21
- result = qa_pipeline(
22
  prompt,
23
  max_new_tokens=200,
24
  do_sample=True,
25
  temperature=0.7,
26
- top_k=50,
27
  top_p=0.95,
28
  pad_token_id=50256,
29
  )[0]["generated_text"]
30
 
31
- # Отделяем только ответ
32
- response = result.split("Бот:")[-1].strip().split("Пользователь:")[0].strip()
33
-
34
  history.append((message, response))
35
  return history
36
 
37
- # Интерфейс Gradio
38
  demo = gr.ChatInterface(
39
  fn=respond,
40
  title="Innopolis Bot",
41
  theme="soft",
42
- examples=[
43
- "Когда основан Университет Иннополис?",
44
- "Какие есть направления в бакалавриате?",
45
- "Как подать документы?",
46
- ],
47
  )
48
 
49
  if __name__ == "__main__":
 
1
  import gradio as gr
2
  from transformers import pipeline
3
+ import spaces # обязательно для ZeroGPU
4
 
5
+ # Модель (CPU-friendly)
6
  qa_pipeline = pipeline("text-generation", model="tiiuae/falcon-rw-1b")
7
 
8
+ # Основной обработчик
9
+ @spaces.GPU # 👈 обязательно для ZeroGPU, даже если модель на CPU
 
 
 
 
 
10
  def respond(message, history):
11
+ system_prompt = (
12
+ "Ты — дружелюбный бот, который отлично знает Университет Иннополис. "
13
+ "Отвечай чётко и по делу на вопросы про университет, город Иннополис, обучение и студенческую жизнь.\n"
14
+ )
15
 
16
+ prompt = system_prompt
17
  for user_msg, bot_msg in history:
18
  prompt += f"Пользователь: {user_msg}\nБот: {bot_msg}\n"
19
  prompt += f"Пользователь: {message}\nБот:"
20
 
21
+ output = qa_pipeline(
22
  prompt,
23
  max_new_tokens=200,
24
  do_sample=True,
25
  temperature=0.7,
 
26
  top_p=0.95,
27
  pad_token_id=50256,
28
  )[0]["generated_text"]
29
 
30
+ response = output.split("Бот:")[-1].strip().split("Пользователь:")[0].strip()
 
 
31
  history.append((message, response))
32
  return history
33
 
34
+ # Интерфейс
35
  demo = gr.ChatInterface(
36
  fn=respond,
37
  title="Innopolis Bot",
38
  theme="soft",
39
+ examples=["Когда основан Университет Иннополис?", "Как поступить в магистратуру?"],
 
 
 
 
40
  )
41
 
42
  if __name__ == "__main__":