sakhrearasp commited on
Commit
c512f6b
·
verified ·
1 Parent(s): acaf76a

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +39 -9
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 = format_response(history, message)
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
- # ... (کد UI مانند قبلی بدون تغییر)
 
 
 
 
 
 
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)