Younes13 commited on
Commit
72ba832
·
verified ·
1 Parent(s): f51748e

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +6 -9
app.py CHANGED
@@ -6,19 +6,17 @@ model_name = "HooshvareLab/gpt2-fa"
6
  tokenizer = AutoTokenizer.from_pretrained(model_name)
7
  model = AutoModelForCausalLM.from_pretrained(model_name)
8
 
 
9
  # تابع پاسخ‌دهی
10
  def student_bot(question):
11
- prompt = f"""پرسش: زمان انتخاب واحد چه زمانی است؟
 
 
12
  پاسخ: معمولا در پایان هر ترم تحصیلی، یعنی شهریور و بهمن انجام می‌شود.
13
 
14
  پرسش: زمان حذف و اضافه کی هست؟
15
  پاسخ: حدود یک هفته بعد از شروع ترم تحصیلی است.
16
-
17
- پرسش: چه زمانی می‌توان انصراف از درس داد؟
18
- پاسخ: معمولاً تا هفته هشتم می‌توان درس را حذف کرد.
19
-
20
- پرسش: {question}
21
- پاسخ:"""
22
 
23
  inputs = tokenizer(prompt, return_tensors="pt")
24
  outputs = model.generate(
@@ -27,11 +25,10 @@ def student_bot(question):
27
  pad_token_id=tokenizer.eos_token_id
28
  )
29
  answer = tokenizer.decode(outputs[0], skip_special_tokens=True)
30
-
31
- # حذف prompt اولیه از متن خروجی
32
  return answer.split("پاسخ:")[-1].strip()
33
 
34
 
 
35
  # رابط Gradio
36
  gr.Interface(
37
  fn=student_bot,
 
6
  tokenizer = AutoTokenizer.from_pretrained(model_name)
7
  model = AutoModelForCausalLM.from_pretrained(model_name)
8
 
9
+ chat_history = []
10
  # تابع پاسخ‌دهی
11
  def student_bot(question):
12
+ chat_history.append(f"پرسش: {question}")
13
+
14
+ prompt = """پرسش: زمان انتخاب واحد چه زمانی است؟
15
  پاسخ: معمولا در پایان هر ترم تحصیلی، یعنی شهریور و بهمن انجام می‌شود.
16
 
17
  پرسش: زمان حذف و اضافه کی هست؟
18
  پاسخ: حدود یک هفته بعد از شروع ترم تحصیلی است.
19
+ """ + "\n".join(chat_history[-3:]) + "\nپاسخ:"
 
 
 
 
 
20
 
21
  inputs = tokenizer(prompt, return_tensors="pt")
22
  outputs = model.generate(
 
25
  pad_token_id=tokenizer.eos_token_id
26
  )
27
  answer = tokenizer.decode(outputs[0], skip_special_tokens=True)
 
 
28
  return answer.split("پاسخ:")[-1].strip()
29
 
30
 
31
+
32
  # رابط Gradio
33
  gr.Interface(
34
  fn=student_bot,