Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -9,13 +9,9 @@ fa_model = pipeline(
|
|
9 |
tokenizer="HooshvareLab/gpt2-fa"
|
10 |
)
|
11 |
|
12 |
-
def format_response(history, new_message):
|
13 |
-
"""فرمت دهی تاریخچه چت برای سازگاری با Gradio"""
|
14 |
-
return history + [[new_message, None]]
|
15 |
-
|
16 |
def generate_response(message, history):
|
17 |
# مرحله ۱: نمایش وضعیت پردازش
|
18 |
-
history
|
19 |
yield history
|
20 |
|
21 |
# مرحله ۲: تولید پاسخ واقعی
|
@@ -33,15 +29,43 @@ def generate_response(message, history):
|
|
33 |
def handle_upload(files):
|
34 |
return f"✅ {len(files)} فایل آپلود شد!"
|
35 |
|
36 |
-
# طراحی رابط کاربری
|
37 |
css = """
|
38 |
/* CSS قبلی بدون تغییر */
|
39 |
"""
|
40 |
|
41 |
with gr.Blocks(css=css, theme=gr.themes.Soft()) as app:
|
42 |
-
#
|
|
|
|
|
|
|
|
|
|
|
|
|
43 |
|
44 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
45 |
msg.submit(
|
46 |
fn=generate_response,
|
47 |
inputs=[msg, chatbot],
|
@@ -53,6 +77,12 @@ with gr.Blocks(css=css, theme=gr.themes.Soft()) as app:
|
|
53 |
inputs=[msg, chatbot],
|
54 |
outputs=[chatbot]
|
55 |
)
|
|
|
|
|
|
|
|
|
|
|
|
|
56 |
|
57 |
if __name__ == "__main__":
|
58 |
-
app.launch()
|
|
|
9 |
tokenizer="HooshvareLab/gpt2-fa"
|
10 |
)
|
11 |
|
|
|
|
|
|
|
|
|
12 |
def generate_response(message, history):
|
13 |
# مرحله ۱: نمایش وضعیت پردازش
|
14 |
+
history.append([message, None])
|
15 |
yield history
|
16 |
|
17 |
# مرحله ۲: تولید پاسخ واقعی
|
|
|
29 |
def handle_upload(files):
|
30 |
return f"✅ {len(files)} فایل آپلود شد!"
|
31 |
|
32 |
+
# طراحی رابط کاربری
|
33 |
css = """
|
34 |
/* CSS قبلی بدون تغییر */
|
35 |
"""
|
36 |
|
37 |
with gr.Blocks(css=css, theme=gr.themes.Soft()) as app:
|
38 |
+
# هدر
|
39 |
+
gr.HTML("""
|
40 |
+
<div class="header">
|
41 |
+
<h1>🧠 هوش مصنوعی فارسی پیشرفته</h1>
|
42 |
+
<p>نسخه مبتنی بر GPT-2 فارسی</p>
|
43 |
+
</div>
|
44 |
+
""")
|
45 |
|
46 |
+
with gr.Row():
|
47 |
+
with gr.Column(scale=3):
|
48 |
+
chatbot = gr.Chatbot(label="مکالمه", elem_classes="chat-container")
|
49 |
+
msg = gr.Textbox(
|
50 |
+
label="پیام خود را وارد کنید",
|
51 |
+
placeholder="مثال: فلسفه زندگی چیست؟",
|
52 |
+
lines=3
|
53 |
+
)
|
54 |
+
|
55 |
+
with gr.Row():
|
56 |
+
submit_btn = gr.Button("ارسال پیام", elem_classes="btn-ai")
|
57 |
+
upload_btn = gr.UploadButton(
|
58 |
+
"آپلود فایل",
|
59 |
+
file_types=["image", "pdf", "text"],
|
60 |
+
file_count="multiple"
|
61 |
+
)
|
62 |
+
|
63 |
+
with gr.Column(scale=1):
|
64 |
+
gr.Markdown("## ⚙️ تنظیمات")
|
65 |
+
temperature = gr.Slider(0, 1, value=0.85, label="سطح خلاقیت")
|
66 |
+
max_length = gr.Slider(100, 2000, value=500, label="حداکثر طول پاسخ")
|
67 |
+
|
68 |
+
# مدیریت رویدادها
|
69 |
msg.submit(
|
70 |
fn=generate_response,
|
71 |
inputs=[msg, chatbot],
|
|
|
77 |
inputs=[msg, chatbot],
|
78 |
outputs=[chatbot]
|
79 |
)
|
80 |
+
|
81 |
+
upload_btn.upload(
|
82 |
+
fn=handle_upload,
|
83 |
+
inputs=upload_btn,
|
84 |
+
outputs=chatbot
|
85 |
+
)
|
86 |
|
87 |
if __name__ == "__main__":
|
88 |
+
app.launch(server_port=7860)
|