chore: initialize medical consultation agent demo
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
from datetime import datetime
|
||||
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
|
||||
class CreateEvaluationRequest(BaseModel):
|
||||
"""评价生成入参:指定输出分数类型。"""
|
||||
|
||||
score_type: str = Field(default="percentage", pattern="^(percentage|five_point)$")
|
||||
|
||||
|
||||
class DimensionScore(BaseModel):
|
||||
"""维度评分:保存单个评分维度的分数、满分和评价。"""
|
||||
|
||||
dimension: str
|
||||
score: float
|
||||
max_score: float
|
||||
comment: str
|
||||
evidence: list[str] = Field(default_factory=list)
|
||||
deductions: list[str] = Field(default_factory=list)
|
||||
improvement: str = ""
|
||||
|
||||
|
||||
class EvaluationResponse(BaseModel):
|
||||
"""评价报告响应:返回结构化 AI 评价报告。"""
|
||||
|
||||
evaluation_id: int
|
||||
score_type: str
|
||||
total_score: float
|
||||
dimension_scores: list[DimensionScore]
|
||||
errors: list[dict]
|
||||
improvement_plan: list[str]
|
||||
evidence_summary: list[str]
|
||||
guideline_refs: list[dict]
|
||||
overall_comment: str
|
||||
|
||||
|
||||
class EvaluationListItem(BaseModel):
|
||||
"""历史评价列表项:按 user_id 查询完整训练后的评价记录。"""
|
||||
|
||||
evaluation_id: int
|
||||
case_title: str
|
||||
score_type: str
|
||||
total_score: float
|
||||
created_at: datetime
|
||||
pdf_exported: bool
|
||||
|
||||
|
||||
class EvaluationListResponse(BaseModel):
|
||||
"""历史评价列表响应。"""
|
||||
|
||||
items: list[EvaluationListItem]
|
||||
|
||||
|
||||
class ExportPdfResponse(BaseModel):
|
||||
"""PDF 导出响应:返回导出记录和本地文件路径。"""
|
||||
|
||||
export_id: int
|
||||
file_path: str
|
||||
|
||||
|
||||
class EvaluationDetailResponse(EvaluationResponse):
|
||||
"""评价详情响应:在报告详情页使用。"""
|
||||
|
||||
session_id: int
|
||||
case_id: int
|
||||
case_title: str
|
||||
created_at: datetime
|
||||
pdf_file_path: str | None = None
|
||||
Reference in New Issue
Block a user