32 lines
1.0 KiB
Python
32 lines
1.0 KiB
Python
|
|
from typing import List, Dict, Any
|
|||
|
|
from pydantic import Field
|
|||
|
|
from agent_system.base import BaseResponseModel
|
|||
|
|
|
|||
|
|
class DiseaseAnalysisResult(BaseResponseModel):
|
|||
|
|
"""
|
|||
|
|
疾病上下文分析结果模型
|
|||
|
|
"""
|
|||
|
|
disease_category: str = Field(
|
|||
|
|
...,
|
|||
|
|
description="疾病类别(如:神经系统疾病、心血管疾病、呼吸系统疾病等)"
|
|||
|
|
)
|
|||
|
|
suspected_conditions: List[str] = Field(
|
|||
|
|
default_factory=list,
|
|||
|
|
description="可能的疾病诊断列表"
|
|||
|
|
)
|
|||
|
|
onset_pattern: str = Field(
|
|||
|
|
...,
|
|||
|
|
description="起病模式(急性、亚急性、慢性)"
|
|||
|
|
)
|
|||
|
|
severity_level: str = Field(
|
|||
|
|
...,
|
|||
|
|
description="疾病严重程度(轻度、中度、重度)"
|
|||
|
|
)
|
|||
|
|
evaluation_priorities: Dict[str, List[str]] = Field(
|
|||
|
|
default_factory=dict,
|
|||
|
|
description="各子任务的评估重点,key为子任务名称,value为重点因素列表"
|
|||
|
|
)
|
|||
|
|
medical_reasoning: str = Field(
|
|||
|
|
...,
|
|||
|
|
description="医学分析推理过程"
|
|||
|
|
)
|