Update app.py
Browse files
app.py
CHANGED
|
@@ -16,24 +16,32 @@ def generate_mcqs_gemini(paragraph: str, n_questions: int, n_choices: int = 4):
|
|
| 16 |
return " Please enter a paragraph first.", ""
|
| 17 |
|
| 18 |
prompt = f"""
|
| 19 |
-
|
| 20 |
-
|
| 21 |
-
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
|
| 25 |
-
|
| 26 |
-
|
| 27 |
-
|
| 28 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 29 |
{{
|
| 30 |
-
"
|
| 31 |
-
|
| 32 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 33 |
}}
|
| 34 |
-
|
| 35 |
-
|
| 36 |
-
"""
|
| 37 |
|
| 38 |
try:
|
| 39 |
response = model.generate_content(prompt)
|
|
|
|
| 16 |
return " Please enter a paragraph first.", ""
|
| 17 |
|
| 18 |
prompt = f"""
|
| 19 |
+
اقرأ الفقرة أو الدرس الآتي بعناية:
|
| 20 |
+
|
| 21 |
+
{paragraph}
|
| 22 |
+
|
| 23 |
+
ثم أنشئ {n_questions} سؤال من نوع الاختيار من متعدد (MCQ) يختبر الفهم الحقيقي لمضمون النص.
|
| 24 |
+
|
| 25 |
+
يجب أن تتصف الأسئلة بالشروط التالية:
|
| 26 |
+
- أن تكون واضحة ومباشرة.
|
| 27 |
+
- أن يكون مستوى الصعوبة متوسطًا.
|
| 28 |
+
- أن تكون الخيارات الأربعة متقاربة المعنى إلى حدٍّ ما، ولكن واحدة منها فقط صحيحة بوضوح.
|
| 29 |
+
- أن تُكتب الخيارات بلغة عربية فصحى سليمة ومتناسقة في الأسلوب.
|
| 30 |
+
- عدد الخيارات = {n_choices}.
|
| 31 |
+
|
| 32 |
+
أعِد المخرجات بصيغة JSON فقط بدون أي شرح إضافي.
|
| 33 |
+
البنية المطلوبة:
|
| 34 |
{{
|
| 35 |
+
"mcqs": [
|
| 36 |
+
{{
|
| 37 |
+
"question": "النص",
|
| 38 |
+
"options": ["اختيار1","اختيار2","اختيار3","اختيار4"],
|
| 39 |
+
"answer_index": رقم (0 إلى {n_choices-1})
|
| 40 |
+
}}
|
| 41 |
+
]
|
| 42 |
}}
|
| 43 |
+
"""
|
| 44 |
+
|
|
|
|
| 45 |
|
| 46 |
try:
|
| 47 |
response = model.generate_content(prompt)
|