Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -567,93 +567,82 @@ def medical_chat(user_input, history):
|
|
567 |
|
568 |
# 构建 Gradio 界面
|
569 |
with gr.Blocks(theme=gr.themes.Soft(), css="""
|
570 |
-
.
|
571 |
-
.left-column { flex: 3; }
|
572 |
-
.right-column { flex: 1; }
|
573 |
-
.chatbot-container { height: 450px; }
|
574 |
""") as demo:
|
575 |
gr.Markdown("# 🏥 专业医疗咨询助手")
|
576 |
gr.Markdown("### 本系统提供基于AI的医疗咨询服务,仅供参考,不能替代专业医生的诊断")
|
577 |
|
578 |
-
|
579 |
-
|
580 |
-
|
581 |
-
|
582 |
-
|
583 |
-
|
584 |
-
|
585 |
-
|
586 |
-
|
587 |
-
|
588 |
-
|
589 |
-
|
590 |
-
|
591 |
-
chatbot=gr.Chatbot(height=450)
|
592 |
-
)
|
593 |
|
594 |
-
|
595 |
-
|
596 |
-
|
597 |
-
with gr.Accordion("医疗免责声明", open=True):
|
598 |
-
gr.Markdown("""
|
599 |
-
### 📋 医疗免责声明
|
600 |
-
|
601 |
-
1. 本系统提供的信息仅供参考,不构成医疗建议、诊断或治疗方案
|
602 |
-
2. 本系统不能替代专业医疗人员的面诊和专业判断
|
603 |
-
3. 如遇紧急情况,请立即前往医院就诊或拨打急救电话
|
604 |
-
4. 系统可能无法识别所有医疗紧急情况,请谨慎使用
|
605 |
-
5. 使用本系统即表示您理解并接受以上声明
|
606 |
-
""")
|
607 |
|
608 |
-
|
609 |
-
|
610 |
-
|
611 |
-
|
612 |
-
|
613 |
-
|
614 |
-
|
615 |
-
|
616 |
-
|
617 |
-
|
618 |
-
- 轻度发热(38°C以下)可多喝水、休息并使用退烧药
|
619 |
-
- 高烧(38°C以上)或持续发热超过3天应就医
|
620 |
-
|
621 |
-
**咳嗽**
|
622 |
-
- 保持水分摄入,可使用非处方止咳药
|
623 |
-
- 如果咳嗽持续超过2周或伴有血痰,请咨询医生
|
624 |
-
|
625 |
-
**疫苗接种后反应**
|
626 |
-
- 接种部位疼痛、轻微发热是正常反应
|
627 |
-
- 如出现严重过敏反应或高烧,应立即就医
|
628 |
-
""")
|
629 |
|
630 |
-
|
631 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
632 |
gr.Markdown("""
|
633 |
-
###
|
|
|
634 |
|
635 |
-
1.
|
636 |
-
2.
|
637 |
-
3.
|
638 |
-
4. 如果系统无法提供有用的建议,请尝试重新描述您的问题
|
639 |
-
5. 对于复杂或严重的健康问题,请务必咨询专业医生
|
640 |
""")
|
641 |
-
|
642 |
-
# 显示系统状态(移到右侧)
|
643 |
-
with gr.Accordion("系统状态", open=False):
|
644 |
-
hf_token_status = "✅ 已设置" if "HF_TOKEN" in os.environ and os.environ.get("HF_TOKEN", "").strip() else "❌ 未设置"
|
645 |
-
gr.Markdown(f"- HF_TOKEN: {hf_token_status}")
|
646 |
-
gr.Markdown(f"- HF_ENDPOINT: {os.environ.get('HF_ENDPOINT', '默认')}")
|
647 |
-
|
648 |
-
if hf_token_status == "❌ 未设置":
|
649 |
-
gr.Markdown("""
|
650 |
-
### ⚠️ 警告:未设置HF_TOKEN
|
651 |
-
请在Hugging Face Spaces的设置中添加HF_TOKEN环境变量。
|
652 |
-
|
653 |
-
1. 前往 [Hugging Face](https://huggingface.co/settings/tokens) 创建访问令牌
|
654 |
-
2. 在Spaces设置中添加环境变量HF_TOKEN,值为你的访问令牌
|
655 |
-
3. 重新部署应用
|
656 |
-
""")
|
657 |
|
658 |
# 启动应用(Hugging Face Spaces 会自动处理)
|
659 |
print("启动应用...")
|
|
|
567 |
|
568 |
# 构建 Gradio 界面
|
569 |
with gr.Blocks(theme=gr.themes.Soft(), css="""
|
570 |
+
.submit-btn { position: absolute; right: 0; bottom: 0; }
|
|
|
|
|
|
|
571 |
""") as demo:
|
572 |
gr.Markdown("# 🏥 专业医疗咨询助手")
|
573 |
gr.Markdown("### 本系统提供基于AI的医疗咨询服务,仅供参考,不能替代专业医生的诊断")
|
574 |
|
575 |
+
with gr.Column():
|
576 |
+
gr.Markdown("### 请描述您的症状或健康问题")
|
577 |
+
chat_interface = gr.ChatInterface(
|
578 |
+
fn=medical_chat,
|
579 |
+
examples=[
|
580 |
+
"咳嗽一周了,有什么缓解方法?",
|
581 |
+
"经常失眠怎么调理?",
|
582 |
+
"孩子有轻微发烧,需要去医院吗?"
|
583 |
+
],
|
584 |
+
title="症状咨询",
|
585 |
+
chatbot=gr.Chatbot(height=500),
|
586 |
+
submit_btn_class="submit-btn"
|
587 |
+
)
|
|
|
|
|
588 |
|
589 |
+
with gr.Accordion("医疗免责声明", open=True):
|
590 |
+
gr.Markdown("""
|
591 |
+
### 📋 医疗免责声明
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
592 |
|
593 |
+
1. 本系统提供的信息仅供参考,不构成医疗建议、诊断或治疗方案
|
594 |
+
2. 本系统不能替代专业医疗人员的面诊和专业判断
|
595 |
+
3. 如遇紧急情况,请立即前往医院就诊或拨打急救电话
|
596 |
+
4. 系统可能无法识别所有医疗紧急情况,请谨慎使用
|
597 |
+
5. 使用本系统即表示您理解并接受以上声明
|
598 |
+
""")
|
599 |
+
|
600 |
+
with gr.Accordion("常见医疗问题", open=False):
|
601 |
+
gr.Markdown("""
|
602 |
+
### 常见医疗问题解答
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
603 |
|
604 |
+
**头痛**
|
605 |
+
- 轻度头痛可以休息、按摩太阳穴或服用非处方止痛药
|
606 |
+
- 如果头痛剧烈、持续时间长或伴随其他症状,请咨询医生
|
607 |
+
|
608 |
+
**发热**
|
609 |
+
- 轻度发热(38°C以下)可多喝水、休息并使用退烧药
|
610 |
+
- 高烧(38°C以上)或持续发热超过3天应就医
|
611 |
+
|
612 |
+
**咳嗽**
|
613 |
+
- 保持水分摄入,可使用非处方止咳药
|
614 |
+
- 如果咳嗽持续超过2周或伴有血痰,请咨询医生
|
615 |
+
|
616 |
+
**疫苗接种后反应**
|
617 |
+
- 接种部位疼痛、轻微发热是正常反应
|
618 |
+
- 如出现严重过敏反应或高烧,应立���就医
|
619 |
+
""")
|
620 |
+
|
621 |
+
with gr.Accordion("使用说明", open=False):
|
622 |
+
gr.Markdown("""
|
623 |
+
### 💡 使用说明
|
624 |
+
|
625 |
+
1. 请简明扼要地描述您的症状或健康问题
|
626 |
+
2. 尽量提供症状的持续时间、严重程度等相关信息
|
627 |
+
3. 系统会根据您的描述提供一般性的健康建议
|
628 |
+
4. 如果系统无法提供有用的建议,请尝试重新描述您的问题
|
629 |
+
5. 对于复杂或严重的健康问题,请务必咨询专业医生
|
630 |
+
""")
|
631 |
+
|
632 |
+
with gr.Accordion("系统状态", open=False):
|
633 |
+
hf_token_status = "✅ 已设置" if "HF_TOKEN" in os.environ and os.environ.get("HF_TOKEN", "").strip() else "❌ 未设置"
|
634 |
+
gr.Markdown(f"- HF_TOKEN: {hf_token_status}")
|
635 |
+
gr.Markdown(f"- HF_ENDPOINT: {os.environ.get('HF_ENDPOINT', '默认')}")
|
636 |
+
|
637 |
+
if hf_token_status == "❌ 未设置":
|
638 |
gr.Markdown("""
|
639 |
+
### ⚠️ 警告:未设置HF_TOKEN
|
640 |
+
请在Hugging Face Spaces的设置中添加HF_TOKEN环境变量。
|
641 |
|
642 |
+
1. 前往 [Hugging Face](https://huggingface.co/settings/tokens) 创建访问令牌
|
643 |
+
2. 在Spaces设置中添加环境变量HF_TOKEN,值为你的访问令牌
|
644 |
+
3. 重新部署应用
|
|
|
|
|
645 |
""")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
646 |
|
647 |
# 启动应用(Hugging Face Spaces 会自动处理)
|
648 |
print("启动应用...")
|