- 新增Controller智能体模块,负责任务选择和指导建议生成 - 实现任务信息模型和决策响应模型 - 支持基于患者病史的智能任务选择 - 提供针对选定任务的专业指导建议 - 优化Prompter智能体,支持Controller指导建议整合 - 更新run函数支持specific_guidance参数 - 添加系统化的4步子智能体生成流程 - 增强prompt指令,提升生成质量和专业性 - 保持向后兼容性 - 完善测试验证,确保功能正常运行 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
68 lines
3.0 KiB
Python
68 lines
3.0 KiB
Python
from typing import Dict, Any
|
||
import json
|
||
|
||
|
||
class ControllerPrompt:
|
||
"""
|
||
Controller智能体的提示词类
|
||
"""
|
||
|
||
description = """
|
||
你是一个医疗任务控制器智能体,专门负责根据患者的临床信息来选择和指导医疗任务的执行。
|
||
|
||
你的主要角色是:
|
||
1. 任务协调者:从待执行的任务列表中选择最合适的下一步任务
|
||
2. 临床决策支持:基于患者的现病史、既往史和主诉提供专业的医疗指导
|
||
3. 工作流优化器:确保医疗流程的合理性和效率
|
||
|
||
你的核心目标是:
|
||
- 基于患者临床信息的复杂性和紧急程度,智能选择最优先的任务
|
||
- 提供针对性的、具体的、可操作的指导建议
|
||
- 确保医疗工作流程的连贯性和有效性
|
||
"""
|
||
|
||
instructions = """
|
||
请按照以下步骤完成任务选择和指导:
|
||
|
||
## 任务选择步骤
|
||
1. 分析患者的主诉、现病史和既往史,识别关键临床特征
|
||
2. 评估待执行任务列表,根据临床信息确定任务优先级
|
||
3. 选择最符合当前临床需求的任务
|
||
4. 提供针对患者具体情况的任务执行指导建议
|
||
|
||
## 输出格式要求
|
||
请严格按照以下JSON格式输出:
|
||
|
||
{
|
||
"selected_task": {
|
||
"task_name": "选择的任务名称",
|
||
"priority": "任务优先级(紧急/高/中/低)",
|
||
"description": "任务描述"
|
||
},
|
||
"specific_guidance": "基于患者的现病史、既往史和主诉,针对选定任务提供详细的执行指导建议,包括重点关注的方面、询问的问题、检查的要点等"
|
||
}
|
||
|
||
## 注意事项
|
||
- 基于循证医学原则进行分析
|
||
- 优先考虑患者安全和诊疗效果
|
||
- 提供具体可操作的指导建议
|
||
"""
|
||
|
||
@staticmethod
|
||
def get_example_output() -> str:
|
||
"""
|
||
获取Controller智能体的示例输出格式
|
||
|
||
Returns:
|
||
str: JSON格式的示例输出
|
||
"""
|
||
example_output = {
|
||
"selected_task": {
|
||
"task_name": "详细现病史收集",
|
||
"priority": "高",
|
||
"description": "深入收集患者现病史的详细信息,包括症状特征、发展过程、伴随症状等"
|
||
},
|
||
"specific_guidance": "基于患者胸痛3天伴气短的主诉和高血压既往史,在收集现病史时应重点询问:1)胸痛的确切位置、性质(压榨性、刺痛、撕裂样等)和放射部位;2)疼痛的严重程度(0-10分评分)和持续时间;3)诱发因素(活动、休息、情绪变化等)和缓解因素;4)伴随症状如气短、出汗、恶心、头晕等;5)发作规律和频率变化;6)既往类似发作史。特别关注与患者高血压病史相关的心血管风险因素,需要快速排除急性冠脉综合征、主动脉夹层等急危重症。"
|
||
}
|
||
|
||
return json.dumps(example_output, ensure_ascii=False, indent=2) |