Update app.py
Browse files
app.py
CHANGED
|
@@ -2,47 +2,50 @@ import os
|
|
| 2 |
import gradio as gr
|
| 3 |
from openai import OpenAI
|
| 4 |
|
| 5 |
-
# 🔑 أضف
|
| 6 |
# os.environ["OPENAI_API_KEY"] = "YOUR_API_KEY"
|
| 7 |
|
| 8 |
client = OpenAI(api_key=os.getenv("OPENAI_API_KEY", "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"))
|
| 9 |
|
| 10 |
-
def
|
| 11 |
if not future or not value or not skill:
|
| 12 |
return "⚠️ رجاءً أجيبي على جميع الحقول."
|
| 13 |
|
| 14 |
prompt = f"""
|
| 15 |
-
اكتب جملة عربية
|
| 16 |
-
ت
|
| 17 |
-
|
| 18 |
-
لا ت
|
|
|
|
| 19 |
"""
|
| 20 |
|
| 21 |
try:
|
| 22 |
response = client.responses.create(
|
| 23 |
model="gpt-4.1-mini",
|
| 24 |
input=prompt,
|
| 25 |
-
temperature=
|
| 26 |
-
max_output_tokens=
|
| 27 |
)
|
| 28 |
|
| 29 |
-
|
| 30 |
-
|
|
|
|
|
|
|
| 31 |
|
| 32 |
except Exception as e:
|
| 33 |
-
return f"⚠️ حدث خطأ
|
| 34 |
|
| 35 |
-
#
|
| 36 |
demo = gr.Interface(
|
| 37 |
-
fn=
|
| 38 |
inputs=[
|
| 39 |
gr.Textbox(label="🎯 حلمك المستقبلي"),
|
| 40 |
gr.Textbox(label="💡 الأثر الذي تريدين تركه"),
|
| 41 |
gr.Textbox(label="⚙️ مهارتك المميزة"),
|
| 42 |
],
|
| 43 |
-
outputs=gr.Textbox(label="🌟
|
| 44 |
-
title="
|
| 45 |
-
description="أجيبي
|
| 46 |
theme="soft"
|
| 47 |
)
|
| 48 |
|
|
|
|
| 2 |
import gradio as gr
|
| 3 |
from openai import OpenAI
|
| 4 |
|
| 5 |
+
# 🔑 أضف مفتاحك هنا أو عبر متغير البيئة
|
| 6 |
# os.environ["OPENAI_API_KEY"] = "YOUR_API_KEY"
|
| 7 |
|
| 8 |
client = OpenAI(api_key=os.getenv("OPENAI_API_KEY", "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"))
|
| 9 |
|
| 10 |
+
def create_inspiring_line(future, value, skill):
|
| 11 |
if not future or not value or not skill:
|
| 12 |
return "⚠️ رجاءً أجيبي على جميع الحقول."
|
| 13 |
|
| 14 |
prompt = f"""
|
| 15 |
+
اكتب جملة عربية قصيرة جدًا (لا تتجاوز 12 كلمة)،
|
| 16 |
+
تكون ملهمة وإبداعية، وتعبّر عن شخصية طموحة تسعى لأن تصبح {future}،
|
| 17 |
+
وتؤمن بـ {value}، وتمتلك مهارة {skill}.
|
| 18 |
+
لا تكرر الكلمات المدخلة حرفيًا، بل استخدم المعنى بطريقة فنية وملهمة.
|
| 19 |
+
اجعل الجملة تبدو كأنها شعار أو ومضة تحفيز تُكتب على لوحة الإلهام.
|
| 20 |
"""
|
| 21 |
|
| 22 |
try:
|
| 23 |
response = client.responses.create(
|
| 24 |
model="gpt-4.1-mini",
|
| 25 |
input=prompt,
|
| 26 |
+
temperature=1.0, # يزيد التنوع والإبداع
|
| 27 |
+
max_output_tokens=40,
|
| 28 |
)
|
| 29 |
|
| 30 |
+
text = response.output[0].content[0].text.strip()
|
| 31 |
+
# تنظيف محتوى الرد من أي فواصل أو مقدمات
|
| 32 |
+
text = text.replace("•", "").replace("-", "").replace(":", "").strip()
|
| 33 |
+
return text or "✨ لم يتم توليد جملة هذه المرة، أعيدي المحاولة."
|
| 34 |
|
| 35 |
except Exception as e:
|
| 36 |
+
return f"⚠️ حدث خطأ أثناء التوليد: {e}"
|
| 37 |
|
| 38 |
+
# 🌿 واجهة الإلهام
|
| 39 |
demo = gr.Interface(
|
| 40 |
+
fn=create_inspiring_line,
|
| 41 |
inputs=[
|
| 42 |
gr.Textbox(label="🎯 حلمك المستقبلي"),
|
| 43 |
gr.Textbox(label="💡 الأثر الذي تريدين تركه"),
|
| 44 |
gr.Textbox(label="⚙️ مهارتك المميزة"),
|
| 45 |
],
|
| 46 |
+
outputs=gr.Textbox(label="🌟 ومضتك الإبداعية", lines=2),
|
| 47 |
+
title="💫 صانعة الأثر – مولّد الومضات الملهمة",
|
| 48 |
+
description="أجيبي بإيجاز، ودعي الذكاء الاصطناعي يصيغ لك جملة قصيرة تُلهم طريقك نحو الإبداع والتميّز.",
|
| 49 |
theme="soft"
|
| 50 |
)
|
| 51 |
|