methodya commited on
Commit
5116b9d
·
verified ·
1 Parent(s): d0f2f47

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +46 -0
app.py CHANGED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ from transformers import AutoModelForCausalLM, AutoTokenizer
3
+ import torch
4
+
5
+ # تحميل النموذج والتوكنايزر
6
+ model_name = "methodya/1stapproachDeepsekPhilo_v2"
7
+ tokenizer = AutoTokenizer.from_pretrained(model_name)
8
+ model = AutoModelForCausalLM.from_pretrained(
9
+ model_name,
10
+ device_map="auto",
11
+ torch_dtype=torch.float16,
12
+ )
13
+
14
+ def generate_response(prompt):
15
+ # إعداد المدخل بنفس الصيغة التي تم التدريب عليها
16
+ system_prompt = "أنت مساعد متخصص في الفلسفة، تجيب عن الأسئلة بدقة وعمق، مع ربط المفاهيم ببعضها عند الحاجة."
17
+ full_prompt = f"{system_prompt}\n\nالسؤال: {prompt}\n\nالجواب:"
18
+
19
+ inputs = tokenizer(full_prompt, return_tensors="pt").to(model.device)
20
+
21
+ # توليد الإجابة
22
+ outputs = model.generate(
23
+ **inputs,
24
+ max_length=512,
25
+ num_return_sequences=1,
26
+ temperature=0.7,
27
+ no_repeat_ngram_size=2,
28
+ pad_token_id=tokenizer.eos_token_id
29
+ )
30
+
31
+ response = tokenizer.decode(outputs[0], skip_special_tokens=True)
32
+ # استخراج الإجابة فقط (بعد "الجواب:")
33
+ response = response.split("الجواب:")[-1].strip()
34
+
35
+ return response
36
+
37
+ # إنشاء واجهة Gradio
38
+ iface = gr.Interface(
39
+ fn=generate_response,
40
+ inputs=gr.Textbox(placeholder="اكتب سؤالك الفلسفي هنا..."),
41
+ outputs="text",
42
+ title="المساعد الفلسفي",
43
+ description="نموذج متخصص في الإجابة عن الأسئلة الفلسفية باللغة العربية"
44
+ )
45
+
46
+ iface.launch()