cody82 commited on
Commit
c833cd6
·
verified ·
1 Parent(s): 04f7c82

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +13 -33
app.py CHANGED
@@ -1,44 +1,24 @@
1
  import gradio as gr
2
  import torch
3
- from transformers import AutoTokenizer, AutoModelForCausalLM
4
- import spaces # обязательно для ZeroGPU
5
 
6
- model_name = "openai-community/gpt2"
7
  tokenizer = AutoTokenizer.from_pretrained(model_name)
8
- model = AutoModelForCausalLM.from_pretrained(model_name)
9
- model.to("cuda" if torch.cuda.is_available() else "cpu")
 
10
 
11
- @spaces.GPU # 💥 Без этого ZeroGPU не сработает!
12
  def respond(message, history=[]):
13
- history = history or []
14
- full_prompt = "Ты — ассистент, который знает всё об Университете Иннополис.\n"
15
-
16
- for user, bot in history:
17
- full_prompt += f"Пользователь: {user}\nБот: {bot}\n"
18
- full_prompt += f"Пользователь: {message}\nБот:"
19
-
20
- inputs = tokenizer(full_prompt, return_tensors="pt").to(model.device)
21
- outputs = model.generate(
22
- **inputs,
23
- max_new_tokens=200,
24
- do_sample=True,
25
- temperature=0.7,
26
- top_p=0.9,
27
- pad_token_id=tokenizer.eos_token_id
28
- )
29
- output_text = tokenizer.decode(outputs[0], skip_special_tokens=True)
30
- response = output_text.split("Бот:")[-1].strip()
31
-
32
  history.append((message, response))
33
  return history
34
 
35
- chat = gr.ChatInterface(
36
- fn=respond,
37
- title="Innopolis Bot",
38
- chatbot=gr.Chatbot(label="Unitrip"),
39
- examples=["Когда основан Университет Иннополис?", "Сколько программ бакалавриата?"],
40
- cache_examples=False
41
- )
42
 
43
  if __name__ == "__main__":
44
- chat.launch()
 
1
  import gradio as gr
2
  import torch
3
+ from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
4
+ import spaces # обязательно для ZeroGPU
5
 
6
+ model_name = "google/flan-t5-base"
7
  tokenizer = AutoTokenizer.from_pretrained(model_name)
8
+ model = AutoModelForSeq2SeqLM.from_pretrained(model_name)
9
+ device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
10
+ model.to(device)
11
 
12
+ @spaces.GPU
13
  def respond(message, history=[]):
14
+ prompt = f"Answer the question: {message}"
15
+ inputs = tokenizer(prompt, return_tensors="pt").to(device)
16
+ outputs = model.generate(**inputs, max_new_tokens=100)
17
+ response = tokenizer.decode(outputs[0], skip_special_tokens=True)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18
  history.append((message, response))
19
  return history
20
 
21
+ demo = gr.ChatInterface(fn=respond)
 
 
 
 
 
 
22
 
23
  if __name__ == "__main__":
24
+ demo.launch()