Update app.py
Browse files
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 |
-
|
| 46 |
|
| 47 |
-
|
|
|
|
| 48 |
|
| 49 |
-
|
| 50 |
-
|
| 51 |
-
|
| 52 |
-
|
| 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 |
-
✅
|
| 91 |
-
✅
|
| 92 |
-
|
| 93 |
-
|
|
|
|
|
|
|
| 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. Có 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 |
|