from agent_system.base import BasePrompt class InquirerPrompt(BasePrompt): """ 询问者智能体的提示词模板 该提示词模板的description和instructions主体内容由Prompter智能体动态生成, 只在末尾添加固定的输入信息和输出格式要求。 """ # 基础描述,将被prompter结果动态替换 description = "" # 基础指令,将被prompter结果动态替换 instructions = [] @staticmethod def get_example_output() -> str: """ 获取示例输出格式,用于指导 LLM 生成符合要求的结构化输出 Returns: str: JSON 格式的示例输出 """ return """{ "current_chat": "根据您描述的头痛情况,我想进一步了解一些细节。请问您的头痛是什么时候开始的?是突然出现还是逐渐加重的?另外,头痛主要集中在头部的哪个位置?" }""" @staticmethod def get_fixed_format_instructions() -> list: """ 获取固定的输入输出格式指令 Returns: list: 固定的格式指令列表 """ return [ "", "## 患者信息输入格式", "- 现病史: 患者当前疾病的详细描述", "- 既往史: 患者过往的疾病史和治疗史", "", "## 输出要求", "生成的问诊问题应该:", "1. 针对患者的具体病情背景", "2. 使用通俗易懂的语言表达", "3. 有助于获取更多诊断相关信息", "4. 符合医患交流的实际情况", "", "## 示例输出格式(JSON)", InquirerPrompt.get_example_output() ]