teoo33 commited on
Commit
2326209
·
verified ·
1 Parent(s): bd3a505

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +24 -23
app.py CHANGED
@@ -18,7 +18,7 @@ knowledge_base_output = ""
18
  faq_output = ""
19
  business_info = None
20
  product_info = None
21
- last_user_request = "" # متغیر جدید برای ذخیره آخرین درخواست کاربر
22
 
23
  # پرامپت مادر (بدون تغییر)
24
  mother_prompt = """
@@ -42,11 +42,20 @@ def validate_and_fix_output(output):
42
  parts = output.split("---")
43
  parts = [part.strip() for part in parts if part.strip()]
44
  print("بخش‌های جدا شده:", parts)
45
- if len(parts) > 3 and not parts[0].startswith("**Persona:") and not parts[0].startswith("["):
46
- parts = parts[1:]
47
  prompt_part = parts[0] if len(parts) > 0 else "پرامپت تولید نشد 😔"
48
  kb_part = parts[1] if len(parts) > 1 else "پایگاه دانش تولید نشد 😕"
49
  faq_part = parts[2] if len(parts) > 2 else "FAQ تولید نشد 🥳"
 
 
 
 
 
 
 
 
 
50
  return [prompt_part, kb_part, faq_part]
51
 
52
  # تابع برای خوندن و پردازش فایل‌های اکسل
@@ -61,7 +70,7 @@ def start_process(file1, file2, user_request):
61
  global iteration_count, iteration_history, business_info, product_info, last_user_request
62
  iteration_count = 1
63
  iteration_history = "سلام عزیزم! فرایند شروع شد! 😍\n"
64
- last_user_request = user_request # ذخیره درخواست اولیه
65
 
66
  business_info, product_info = process_excel_files(file1, file2)
67
  business_info_serializable = convert_to_serializable(business_info)
@@ -110,13 +119,13 @@ def start_process(file1, file2, user_request):
110
  **پایان iteration {iteration_count}**
111
  """
112
  iteration_history += dce_summary
113
- last_user_request = "" # خالی کردن درخواست بعد از اعمال
114
 
115
  return (iteration_history, "", "", "", "", f"Iteration {iteration_count}",
116
  gr.update(interactive=False), gr.update(interactive=True))
117
 
118
  # تابع ادامه Iteration
119
- def continue_iteration(_=None): # ورودی رو اختیاری کردیم چون از last_user_request استفاده می‌کنیم
120
  global iteration_count, iteration_history, prompt_output, knowledge_base_output, faq_output, last_user_request
121
  iteration_count += 1
122
 
@@ -171,13 +180,13 @@ def continue_iteration(_=None): # ورودی رو اختیاری کردیم چ
171
  **پایان iteration {iteration_count}**
172
  """
173
  iteration_history += dce_summary
174
- last_user_request = "" # خالی کردن درخواست بعد از اعمال
175
 
176
  return (iteration_history, prompt_output, knowledge_base_output, faq_output, "",
177
  f"Iteration {iteration_count}", gr.update(interactive=False), gr.update(interactive=True))
178
 
179
  # تابع پایان و تولید خروجی نهایی
180
- def end_process(_=None): # ورودی رو اختیاری کردیم
181
  global iteration_history, prompt_output, knowledge_base_output, faq_output, last_user_request
182
 
183
  business_info_serializable = convert_to_serializable(business_info)
@@ -220,8 +229,13 @@ def end_process(_=None): # ورودی رو اختیاری کردیم
220
  knowledge_base_output = parts[1]
221
  faq_output = parts[2]
222
 
 
 
 
 
 
223
  iteration_history += "\n**فرایند تموم شد و خروجی نهایی آماده‌ست! 🎉**\n"
224
- last_user_request = "" # خالی کردن درخواست بعد از اعمال
225
 
226
  return (iteration_history, prompt_output, knowledge_base_output, faq_output, "",
227
  "فرایند پایان یافت", gr.update(interactive=True), gr.update(interactive=True))
@@ -288,17 +302,4 @@ with gr.Blocks(title="سیستم نوا 🌟") as demo:
288
  end_btn.click(
289
  end_process,
290
  inputs=[],
291
- outputs=[iteration_box, prompt_box, kb_box, faq_box, user_request_box, status_box, start_btn, continue_btn]
292
- )
293
- reset_btn.click(
294
- reset_process,
295
- inputs=[],
296
- outputs=[iteration_box, prompt_box, kb_box, faq_box, user_request_box, status_box, start_btn, continue_btn]
297
- )
298
- submit_request_btn.click(
299
- submit_request,
300
- inputs=[user_request_box],
301
- outputs=[user_request_box, status_box]
302
- )
303
-
304
- demo.launch()
 
18
  faq_output = ""
19
  business_info = None
20
  product_info = None
21
+ last_user_request = ""
22
 
23
  # پرامپت مادر (بدون تغییر)
24
  mother_prompt = """
 
42
  parts = output.split("---")
43
  parts = [part.strip() for part in parts if part.strip()]
44
  print("بخش‌های جدا شده:", parts)
45
+
46
+ # مطمئن می‌شیم که همیشه سه بخش برگردونده بشه
47
  prompt_part = parts[0] if len(parts) > 0 else "پرامپت تولید نشد 😔"
48
  kb_part = parts[1] if len(parts) > 1 else "پایگاه دانش تولید نشد 😕"
49
  faq_part = parts[2] if len(parts) > 2 else "FAQ تولید نشد 🥳"
50
+
51
+ # اگه بخش‌ها ناقص باشن، یه پیام پیش‌فرض بذاریم
52
+ if not prompt_part.strip():
53
+ prompt_part = "پرامپت خالیه 😔"
54
+ if not kb_part.strip():
55
+ kb_part = "پایگاه دانش خالیه 😕"
56
+ if not faq_part.strip():
57
+ faq_part = "FAQ خالیه 🥳"
58
+
59
  return [prompt_part, kb_part, faq_part]
60
 
61
  # تابع برای خوندن و پردازش فایل‌های اکسل
 
70
  global iteration_count, iteration_history, business_info, product_info, last_user_request
71
  iteration_count = 1
72
  iteration_history = "سلام عزیزم! فرایند شروع شد! 😍\n"
73
+ last_user_request = user_request
74
 
75
  business_info, product_info = process_excel_files(file1, file2)
76
  business_info_serializable = convert_to_serializable(business_info)
 
119
  **پایان iteration {iteration_count}**
120
  """
121
  iteration_history += dce_summary
122
+ last_user_request = ""
123
 
124
  return (iteration_history, "", "", "", "", f"Iteration {iteration_count}",
125
  gr.update(interactive=False), gr.update(interactive=True))
126
 
127
  # تابع ادامه Iteration
128
+ def continue_iteration(_=None):
129
  global iteration_count, iteration_history, prompt_output, knowledge_base_output, faq_output, last_user_request
130
  iteration_count += 1
131
 
 
180
  **پایان iteration {iteration_count}**
181
  """
182
  iteration_history += dce_summary
183
+ last_user_request = ""
184
 
185
  return (iteration_history, prompt_output, knowledge_base_output, faq_output, "",
186
  f"Iteration {iteration_count}", gr.update(interactive=False), gr.update(interactive=True))
187
 
188
  # تابع پایان و تولید خروجی نهایی
189
+ def end_process(_=None):
190
  global iteration_history, prompt_output, knowledge_base_output, faq_output, last_user_request
191
 
192
  business_info_serializable = convert_to_serializable(business_info)
 
229
  knowledge_base_output = parts[1]
230
  faq_output = parts[2]
231
 
232
+ # لاگ اضافی برای چک کردن متغیرها
233
+ print("پرامپت نهایی:", prompt_output)
234
+ print("پایگاه دانش نهایی:", knowledge_base_output)
235
+ print("FAQ نهایی:", faq_output)
236
+
237
  iteration_history += "\n**فرایند تموم شد و خروجی نهایی آماده‌ست! 🎉**\n"
238
+ last_user_request = ""
239
 
240
  return (iteration_history, prompt_output, knowledge_base_output, faq_output, "",
241
  "فرایند پایان یافت", gr.update(interactive=True), gr.update(interactive=True))
 
302
  end_btn.click(
303
  end_process,
304
  inputs=[],
305
+ outputs=[iteration_box, prompt_box, kb_box, faq_box, user_request_box, status_box, start