Spaces:
Sleeping
Sleeping
Commit
·
7950ff9
1
Parent(s):
a4cf7fd
Initial commit
Browse files
app.py
CHANGED
|
@@ -273,12 +273,8 @@ def create_app():
|
|
| 273 |
title="🏥 دستیار هوشمند پزشکی"
|
| 274 |
) as app:
|
| 275 |
|
| 276 |
-
#
|
| 277 |
-
|
| 278 |
-
def create_new_session():
|
| 279 |
-
return create_session()
|
| 280 |
-
|
| 281 |
-
session_state = gr.State()
|
| 282 |
|
| 283 |
# هدر اصلی
|
| 284 |
gr.HTML("""
|
|
@@ -353,6 +349,7 @@ def create_app():
|
|
| 353 |
with gr.Row():
|
| 354 |
show_history_btn = gr.Button("📋 نمایش تاریخچه", variant="secondary")
|
| 355 |
clear_history_btn = gr.Button("🗑️ پاک کردن تاریخچه", variant="stop")
|
|
|
|
| 356 |
|
| 357 |
history_display = gr.Markdown(
|
| 358 |
value="برای نمایش تاریخچه، روی دکمه مربوطه کلیک کنید.",
|
|
@@ -360,49 +357,54 @@ def create_app():
|
|
| 360 |
)
|
| 361 |
|
| 362 |
session_info = gr.Textbox(
|
| 363 |
-
value="
|
| 364 |
label="شناسه جلسه",
|
| 365 |
interactive=False
|
| 366 |
)
|
| 367 |
|
| 368 |
-
|
| 369 |
-
|
| 370 |
-
return f"Session ID: {
|
| 371 |
-
|
| 372 |
-
# تابع initialization که session جدید تولید میکنه
|
| 373 |
-
def initialize_session():
|
| 374 |
-
new_session = generate_session()
|
| 375 |
-
return new_session, f"Session ID: {new_session}"
|
| 376 |
|
| 377 |
# اتصال eventها
|
| 378 |
analyze_btn.click(
|
| 379 |
-
fn=
|
| 380 |
inputs=[drug1_input, drug2_input, session_state],
|
| 381 |
outputs=drug_result
|
| 382 |
)
|
| 383 |
|
| 384 |
analyze_lab_btn.click(
|
| 385 |
-
fn=
|
| 386 |
inputs=[image_input, session_state],
|
| 387 |
outputs=lab_result
|
| 388 |
)
|
| 389 |
|
| 390 |
show_history_btn.click(
|
| 391 |
-
fn=
|
| 392 |
inputs=session_state,
|
| 393 |
outputs=history_display
|
| 394 |
)
|
| 395 |
|
| 396 |
clear_history_btn.click(
|
| 397 |
-
fn=
|
| 398 |
inputs=session_state,
|
| 399 |
outputs=history_display
|
| 400 |
)
|
| 401 |
|
| 402 |
-
|
| 403 |
-
fn=
|
| 404 |
outputs=[session_state, session_info]
|
| 405 |
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 406 |
|
| 407 |
return app
|
| 408 |
|
|
|
|
| 273 |
title="🏥 دستیار هوشمند پزشکی"
|
| 274 |
) as app:
|
| 275 |
|
| 276 |
+
# session state برای ذخیره session id
|
| 277 |
+
session_state = gr.State(create_session())
|
|
|
|
|
|
|
|
|
|
|
|
|
| 278 |
|
| 279 |
# هدر اصلی
|
| 280 |
gr.HTML("""
|
|
|
|
| 349 |
with gr.Row():
|
| 350 |
show_history_btn = gr.Button("📋 نمایش تاریخچه", variant="secondary")
|
| 351 |
clear_history_btn = gr.Button("🗑️ پاک کردن تاریخچه", variant="stop")
|
| 352 |
+
new_session_btn = gr.Button("🔄 جلسه جدید", variant="primary")
|
| 353 |
|
| 354 |
history_display = gr.Markdown(
|
| 355 |
value="برای نمایش تاریخچه، روی دکمه مربوطه کلیک کنید.",
|
|
|
|
| 357 |
)
|
| 358 |
|
| 359 |
session_info = gr.Textbox(
|
| 360 |
+
value="",
|
| 361 |
label="شناسه جلسه",
|
| 362 |
interactive=False
|
| 363 |
)
|
| 364 |
|
| 365 |
+
def create_new_session():
|
| 366 |
+
new_session_id = create_session()
|
| 367 |
+
return new_session_id, f"Session ID: {new_session_id[:8].upper()}"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 368 |
|
| 369 |
# اتصال eventها
|
| 370 |
analyze_btn.click(
|
| 371 |
+
fn=analyze_drug_interaction,
|
| 372 |
inputs=[drug1_input, drug2_input, session_state],
|
| 373 |
outputs=drug_result
|
| 374 |
)
|
| 375 |
|
| 376 |
analyze_lab_btn.click(
|
| 377 |
+
fn=analyze_lab_image,
|
| 378 |
inputs=[image_input, session_state],
|
| 379 |
outputs=lab_result
|
| 380 |
)
|
| 381 |
|
| 382 |
show_history_btn.click(
|
| 383 |
+
fn=get_user_history,
|
| 384 |
inputs=session_state,
|
| 385 |
outputs=history_display
|
| 386 |
)
|
| 387 |
|
| 388 |
clear_history_btn.click(
|
| 389 |
+
fn=clear_user_history,
|
| 390 |
inputs=session_state,
|
| 391 |
outputs=history_display
|
| 392 |
)
|
| 393 |
|
| 394 |
+
new_session_btn.click(
|
| 395 |
+
fn=create_new_session,
|
| 396 |
outputs=[session_state, session_info]
|
| 397 |
)
|
| 398 |
+
|
| 399 |
+
# نمایش session id اولیه
|
| 400 |
+
def show_initial_session(session_id):
|
| 401 |
+
return f"Session ID: {session_id[:8].upper()}"
|
| 402 |
+
|
| 403 |
+
app.load(
|
| 404 |
+
fn=show_initial_session,
|
| 405 |
+
inputs=[session_state],
|
| 406 |
+
outputs=[session_info]
|
| 407 |
+
)
|
| 408 |
|
| 409 |
return app
|
| 410 |
|