shalabyelectronics commited on
Commit
52cbca4
·
verified ·
1 Parent(s): 764b4cc

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +48 -0
app.py ADDED
@@ -0,0 +1,48 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ from huggingface_hub import InferenceClient
3
+ import os
4
+
5
+ # جلب التوكن من الإعدادات السرية
6
+ # تأكد من أنك سميت السر "HF_TOKEN" في إعدادات الـ Space
7
+ hf_token = os.getenv("HF_TOKEN")
8
+
9
+ # إعداد العميل للاتصال بالنموذج
10
+ client = InferenceClient("mistralai/Mistral-7B-Instruct-v0.3", token=hf_token)
11
+
12
+ def analyze_response(prompt):
13
+ if not prompt:
14
+ return "يرجى كتابة نص للتحليل.", "غير محدد ⚪"
15
+
16
+ try:
17
+ # إرسال المدخلات للنموذج
18
+ response = client.text_generation(prompt, max_new_tokens=200)
19
+ except Exception as e:
20
+ return f"حدث خطأ: {str(e)}", "فشل ❌"
21
+
22
+ # خوارزمية تقييم بسيطة
23
+ # نعتبر أن النموذج فهم إذا كان الرد أطول من 20 حرفاً
24
+ evaluation = ""
25
+ if len(response) > 20:
26
+ evaluation = "النموذج فهم الإدخال وقدم إجابة مفصلة ✅"
27
+ else:
28
+ evaluation = "الإجابة قصيرة جداً، قد لا يكون الفهم كاملاً ⚠️"
29
+
30
+ return response, evaluation
31
+
32
+ # بناء واجهة التطبيق
33
+ with gr.Blocks(theme=gr.themes.Soft()) as demo:
34
+ gr.Markdown("# 🤖 اختبار فهم النماذج للنصوص (Prompt Understanding Test)")
35
+ gr.Markdown("اكتب أي سؤال أو جملة وسيقوم النموذج بالرد وتقييم مدى فهمه.")
36
+
37
+ with gr.Row():
38
+ input_text = gr.Textbox(label="أدخل الـ Prompt هنا", placeholder="مثال: ما هي عاصمة مصر؟")
39
+
40
+ btn = gr.Button("إرسال للتحليل", variant="primary")
41
+
42
+ with gr.Row():
43
+ output_text = gr.Textbox(label="رد النموذج (AI Response)")
44
+ eval_text = gr.Label(label="نتيجة التقييم")
45
+
46
+ btn.click(analyze_response, inputs=input_text, outputs=[output_text, eval_text])
47
+
48
+ demo.launch()