mimoha commited on
Commit
6c2a904
·
verified ·
1 Parent(s): 425fc7f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +29 -30
app.py CHANGED
@@ -1,47 +1,46 @@
1
  import os
2
  import gradio as gr
3
- import deepsea
4
 
5
- API_KEY = os.environ.get("DEEPSEA_API_KEY")
 
6
  if not API_KEY:
7
- raise ValueError("الرجاء وضع DEEPSEA_API_KEY في البيئة (Secrets على Hugging Face)")
8
 
9
- client = deepsea.Client(api_key=API_KEY)
10
- MODEL_NAME = "text-generator-arabic"
11
 
12
- def generate_main_question_deepsea(paragraph: str):
 
 
13
  if not paragraph.strip():
14
  return "الرجاء إدخال فقرة أولاً."
15
 
16
- prompt = f"""
17
- الفقرة التالية:
18
- {paragraph}
19
-
20
- المطلوب:
21
- اعتمادًا على الفقرة السابقة، قم بتوليد سؤال أساسي للفقرة ليكون مفتاحًا لعملية تسميع الطالب.
22
- اكتب السؤال فقط بدون أي شرح أو تفسير.
23
- """
24
 
25
  try:
26
- response = client.generate_text(model=MODEL_NAME, prompt=prompt, max_tokens=150)
27
- return response.text.strip()
 
 
 
 
 
 
 
28
  except Exception as e:
29
- return f"Error while connecting to DeepSea API: {e}"
30
 
31
  with gr.Blocks() as demo:
32
- gr.Markdown("## MainQuestion Basic Question Generator (Arabic Output)")
33
-
34
- with gr.Row():
35
- paragraph = gr.Textbox(
36
- label="Paragraph (Input text)",
37
- lines=8,
38
- placeholder="Paste the paragraph here..."
39
- )
40
-
41
- output = gr.Textbox(label="Generated Question (Arabic)", lines=3)
42
-
43
- submit_btn = gr.Button("Submit")
44
- submit_btn.click(fn=generate_main_question_deepsea, inputs=paragraph, outputs=output)
45
 
46
  if __name__ == "__main__":
47
  demo.launch(share=True, show_error=True)
 
1
  import os
2
  import gradio as gr
3
+ from openai import OpenAI
4
 
5
+ # احصلي API Key وضعيه كـ متغير بيئي
6
+ API_KEY = os.environ.get("DEEPSEEK_API_KEY")
7
  if not API_KEY:
8
+ raise ValueError("ضع DEEPSEEK_API_KEY في البيئة")
9
 
10
+ # تهيئة العميل لاستخدام DeepSeek عبر openai SDK
11
+ client = OpenAI(api_key=API_KEY, base_url="https://api.deepseek.com")
12
 
13
+ MODEL_NAME = "deepseek-chat" # أو deepseek-reasoner حسب الموديل اللي تستخدمينه
14
+
15
+ def generate_main_question_deepseek(paragraph: str):
16
  if not paragraph.strip():
17
  return "الرجاء إدخال فقرة أولاً."
18
 
19
+ # نجهز الرسائل بالطريقة المعتمدة في API شات
20
+ messages = [
21
+ {"role": "system", "content": "أنت مساعد ذكي."},
22
+ {"role": "user", "content": f"الفقرة التالية:\n{paragraph}\n\nالمطلوب: توليد سؤال أساسي فقط حسب الفقرة."}
23
+ ]
 
 
 
24
 
25
  try:
26
+ response = client.chat.completions.create(
27
+ model=MODEL_NAME,
28
+ messages=messages,
29
+ temperature=0.7,
30
+ max_tokens=100
31
+ )
32
+ # نأخذ الجواب من الرسالة الأولى
33
+ question = response.choices[0].message.content.strip()
34
+ return question
35
  except Exception as e:
36
+ return f"Error while connecting to DeepSeek API: {e}"
37
 
38
  with gr.Blocks() as demo:
39
+ gr.Markdown("## مولد سؤال أساسي باستخدام DeepSeek")
40
+ paragraph = gr.Textbox(label="Paragraph (Input text)", lines=8, placeholder="أدخل الفقرة هنا …")
41
+ output = gr.Textbox(label="السؤال المولد (بالعربية)", lines=3)
42
+ submit_btn = gr.Button("توليد")
43
+ submit_btn.click(fn=generate_main_question_deepseek, inputs=paragraph, outputs=output)
 
 
 
 
 
 
 
 
44
 
45
  if __name__ == "__main__":
46
  demo.launch(share=True, show_error=True)