diginoron commited on
Commit
acee82a
·
verified ·
1 Parent(s): fd96a70

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +24 -20
app.py CHANGED
@@ -53,27 +53,21 @@ translator = GoogleTranslator(source='en', target='fa')
53
  @spaces.GPU
54
  def provide_advice(table_data: pd.DataFrame, hs_code: str, year: str, month: str):
55
  if table_data is None or table_data.empty:
56
- return "<div dir=\"rtl\" style=\"text-align: right; font-family: IRANSans;\">ابتدا نمایش داده‌های واردات را انجام دهید.</div>"
57
 
58
  df_limited = table_data.head(10)
59
  table_str = df_limited.to_string(index=False)
60
  period = f"{year}/{int(month):02d}"
61
  prompt = f"""
62
  لطفاً یک گزارش تحلیلی به زبان فارسی و با چینش راست‌به‌چپ تولید کن، شامل دو بخش:
63
- 1. جدول خلاصه (Markdown) 10 کشور برتر با ستون‌های رتبه، نام کشور، ارزش CIF و سه تأمین‌کننده برتر.
64
- 2. نکات کلیدی و پیشنهادات به‌صورت بولت‌پوینت با تراز راست.
65
 
66
- - متن خروجی را درون یک <div dir=\"rtl\" style=\"text-align: right; font-family: IRANSans;\"> قرار بده.
 
67
 
68
- داده‌ها:
 
69
  {table_str}
70
- """ 10 کشور برتر با ستون‌های رتبه، نام کشور، ارزش CIF و سه تأمین‌کننده برتر."
71
- "\n2. نکات کلیدی و پیشنهادات به‌صورت بولت‌پوینت با تراز راست."
72
- "\n
73
- - متن خروجی را درون یک <div dir=\\\"rtl\\\" style=\\\"text-align: right; font-family: IRANSans;\\\"> قرار بده."
74
- f"\n
75
- داده‌ها:\n{table_str}"
76
- )
77
  try:
78
  outputs = client.text_generation(
79
  prompt=prompt,
@@ -81,14 +75,19 @@ def provide_advice(table_data: pd.DataFrame, hs_code: str, year: str, month: str
81
  max_new_tokens=2048
82
  )
83
  persian = translator.translate(outputs)
84
- # قرار دادن در کانتینر HTML راست‌چین
85
- return f"<div dir=\"rtl\" style=\"text-align: right; font-family: IRANSans;\">{persian}</div>"
86
  except Exception as e:
87
- return f"<div dir=\"rtl\" style=\"text-align: right; font-family: IRANSans;\">خطا در تولید مشاوره: {e}</div>"
88
 
89
  # --- رابط کاربری Gradio ---
90
- with gr.Blocks() as demo:
91
- gr.Markdown("<div dir=\"rtl\" style=\"text-align: right; font-family: IRANSans;\"><h2>تحلیل واردات بر اساس کد HS و ارائه مشاوره تخصصی</h2></div>", elem_id="title")
 
 
 
 
 
 
92
 
93
  with gr.Row():
94
  inp_hs = gr.Textbox(label="کد HS", placeholder="مثلاً 1006")
@@ -96,9 +95,14 @@ with gr.Blocks() as demo:
96
  inp_month = gr.Textbox(label="ماه", placeholder="مثلاً 1 تا 12")
97
 
98
  btn_show = gr.Button("نمایش داده‌های واردات")
99
- out_name = gr.Markdown(label="**<div dir=\"rtl\" style=\"text-align: right; font-family: IRANSans;\">نام محصول</div>")
 
 
 
 
100
  out_table = gr.Dataframe(
101
- datatype="pandas",
 
102
  interactive=True
103
  )
104
 
@@ -118,4 +122,4 @@ with gr.Blocks() as demo:
118
  )
119
 
120
  if __name__ == "__main__":
121
- demo.launch()
 
53
  @spaces.GPU
54
  def provide_advice(table_data: pd.DataFrame, hs_code: str, year: str, month: str):
55
  if table_data is None or table_data.empty:
56
+ return "<div dir=\"rtl\" style=\"text-align: right; font-family: IRANSans; color: black; background: white;\">ابتدا نمایش داده‌های واردات را انجام دهید.</div>"
57
 
58
  df_limited = table_data.head(10)
59
  table_str = df_limited.to_string(index=False)
60
  period = f"{year}/{int(month):02d}"
61
  prompt = f"""
62
  لطفاً یک گزارش تحلیلی به زبان فارسی و با چینش راست‌به‌چپ تولید کن، شامل دو بخش:
 
 
63
 
64
+ 1. **جدول خلاصه** (Markdown) ۱۰ کشور برتر با ستون‌های «رتبه»، «نام کشور»، «ارزش CIF» و «سه تأمین‌کننده برتر».\n
65
+ 2. **نکات کلیدی و پیشنهادات** به‌صورت بولت‌پوینت با تراز راست.
66
 
67
+
68
+ **داده‌ها:**
69
  {table_str}
70
+ """
 
 
 
 
 
 
71
  try:
72
  outputs = client.text_generation(
73
  prompt=prompt,
 
75
  max_new_tokens=2048
76
  )
77
  persian = translator.translate(outputs)
78
+ return f"<div dir=\"rtl\" style=\"text-align: right; font-family: IRANSans; color: black; background: white;\">{persian}</div>"
 
79
  except Exception as e:
80
+ return f"<div dir=\"rtl\" style=\"text-align: right; font-family: IRANSans; color: black; background: white;\">خطا در تولید مشاوره: {e}</div>"
81
 
82
  # --- رابط کاربری Gradio ---
83
+ with gr.Blocks(css="""
84
+ body, .gradio-container {background-color: white; color: black;}
85
+ """) as demo:
86
+ gr.Markdown(
87
+ "<div dir=\"rtl\" style=\"text-align: right; font-family: IRANSans; color: black; background: white;\">"
88
+ "<h2>هوش مصنوعی مشاوره صادراتی با HS Code محصول – ساخته شده توسط Diginoron</h2>"
89
+ "</div>"
90
+ )
91
 
92
  with gr.Row():
93
  inp_hs = gr.Textbox(label="کد HS", placeholder="مثلاً 1006")
 
95
  inp_month = gr.Textbox(label="ماه", placeholder="مثلاً 1 تا 12")
96
 
97
  btn_show = gr.Button("نمایش داده‌های واردات")
98
+ out_name = gr.Markdown(
99
+ "<div dir=\"rtl\" style=\"text-align: right; font-family: IRANSans; color: black; background: white;\">"
100
+ "**نام محصول**"
101
+ "</div>"
102
+ )
103
  out_table = gr.Dataframe(
104
+ headers=["کد کشور", "نام کشور", "ارزش CIF"],
105
+ datatype=["text", "text", "text"],
106
  interactive=True
107
  )
108
 
 
122
  )
123
 
124
  if __name__ == "__main__":
125
+ demo.launch()