Wewoo commited on
Commit
e4c309c
·
verified ·
1 Parent(s): c7b5939

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +37 -14
app.py CHANGED
@@ -38,27 +38,48 @@ def summarize_and_quiz(text, num_questions):
38
  do_sample=False
39
  )[0]['summary_text']
40
  except:
41
- summary = "Có lỗi xảy ra trong quá trình tóm tắt."
42
 
43
  # --- TẠO QUIZ ---
44
  prompt = f"""
45
- Hãy tạo {num_questions} câu hỏi trắc nghiệm dựa trên nội dung sau:
46
 
47
- {summary}
 
48
 
49
- Yêu cầu:
50
- - Mỗi câu 4 lựa chọn: A, B, C, D
51
- - Có đáp án đúng
52
- - Ngắn gọn, ràng
53
- """
 
 
 
 
 
 
 
 
 
 
 
 
54
 
55
  try:
56
  quiz = quiz_generator(
57
  prompt,
58
- max_length=512
 
59
  )[0]["generated_text"]
 
 
 
 
 
 
 
60
  except:
61
- quiz = "Có lỗi xảy ra trong quá trình tạo câu hỏi."
62
 
63
  return summary, quiz
64
 
@@ -87,10 +108,12 @@ interface = gr.Interface(
87
  title="📚 AI TÓM TẮT & TẠO QUIZ CHO SINH VIÊN",
88
  description="""
89
  ✅ Hỗ trợ: Tiếng Việt + Tiếng Anh
90
- Tóm tắt không làm mất ý chính
91
- Tạo 5–10 câu hỏi ôn tập ngay lập tức
92
-
93
- Chỉ cần dán nội dung vào và nhấn Submit.
 
 
94
  """
95
  )
96
 
 
38
  do_sample=False
39
  )[0]['summary_text']
40
  except:
41
+ summary = "Có lỗi xảy ra trong quá trình tóm tắt."
42
 
43
  # --- TẠO QUIZ ---
44
  prompt = f"""
45
+ Dựa trên nội dung sau, hãy tạo {num_questions} câu hỏi trắc nghiệm.
46
 
47
+ NỘI DUNG:
48
+ {summary}
49
 
50
+ YÊU CẦU:
51
+ 1. Mỗi câu hỏi nằm trên 1 dòng riêng
52
+ 2.4 đáp án A, B, C, D
53
+ 3. Phải ghi đáp án đúng ở cuối câu
54
+ 4. Không sử dụng ký hiệu như <extra_id_0> hoặc <extra_id_1>
55
+ 5. Viết cùng ngôn ngữ với nội dung (Việt/Anh)
56
+
57
+ Ví dụ:
58
+ 1. Câu hỏi ...?
59
+ A. ...
60
+ B. ...
61
+ C. ...
62
+ D. ...
63
+ Đáp án: B
64
+
65
+ BẮT ĐẦU TẠO CÂU HỎI:
66
+ """
67
 
68
  try:
69
  quiz = quiz_generator(
70
  prompt,
71
+ max_length=512,
72
+ do_sample=False
73
  )[0]["generated_text"]
74
+
75
+ # Xoá hoàn toàn rác của T5
76
+ quiz = quiz.replace("<extra_id_0>", "").replace("<extra_id_1>", "").strip()
77
+
78
+ if len(quiz) < 30:
79
+ quiz = "❌ Không tạo được câu hỏi phù hợp. Hãy thử lại với nội dung dài hơn."
80
+
81
  except:
82
+ quiz = "Có lỗi xảy ra trong quá trình tạo câu hỏi."
83
 
84
  return summary, quiz
85
 
 
108
  title="📚 AI TÓM TẮT & TẠO QUIZ CHO SINH VIÊN",
109
  description="""
110
  ✅ Hỗ trợ: Tiếng Việt + Tiếng Anh
111
+ Đã fix lỗi: <extra_id_0>
112
+ Tóm tắt không mất ý chính
113
+ ✅ Tạo 5–10 câu hỏi trắc nghiệm tự động
114
+ Tối ưu chạy trên HuggingFace Free
115
+
116
+ 👉 Chỉ cần dán nội dung vào và nhấn Submit.
117
  """
118
  )
119