Files
fastapi/docs/07_demo_function_traceability.md
T
2026-06-01 10:39:07 +08:00

6.2 KiB

Demo 功能追踪表

本文档用于说明当前 Demo 功能、前端入口、后端接口、核心函数和数据表之间的对应关系。

1. 功能到代码映射

功能 前端页面/按钮 API Router 函数 Service / Agent 数据表 状态
Agent 连接检查 入口页“连接/进入” GET /api/v1/agent/hello agent.hello AuditService.log audit_logs 已实现
病例列表 病例页“刷新” GET /api/v1/cases cases.list_cases CaseService.list_cases case_base 已实现
病例详情 点击病例卡片 GET /api/v1/cases/{case_id} cases.get_case_detail CaseService.get_case_detail case_basetraditional_caseteaching_casecase_exam_item 已实现
删除病例预览 病例详情“删除病例” GET /api/v1/cases/{case_id}/delete-preview cases.get_case_delete_preview CaseService.get_delete_preview 病例表、训练表统计 已实现
删除病例 删除弹窗“确认删除” DELETE /api/v1/cases/{case_id} cases.delete_case CaseService.delete_caseCaseRepository.delete_case_cascade case_basetraditional_caseteaching_casescoring_rulecase_exam_itemtraining_sessiontraining_ordertraining_submissiontraining_record 已实现
病例 SQL 预检 导入页“解析检查” POST /api/v1/imports/case-sql/preview imports.preview_case_sql CaseSqlImportService.preview 不写库 已实现
病例 SQL 导入 导入页“确认导入” POST /api/v1/imports/case-sql/apply imports.apply_case_sql CaseSqlImportService.applyscripts.import_source_case_sql case_basetraditional_caseteaching_casescoring_rulecase_exam_item 已实现
创建训练会话 训练配置页“创建训练会话” POST /api/v1/sessions sessions.create_session SessionService.create_session training_session、runtime memory 已实现
普通问诊 Chat 页“发送问诊” POST /api/v1/sessions/{session_id}/chat sessions.chat SessionService.chatPatientAgent.reply runtime memory 已实现
流式问诊 Chat 页流式开关开启 POST /api/v1/sessions/{session_id}/chat/stream sessions.chat_stream SessionService.stream_chatPatientAgent.stream_reply runtime memory 已实现
查看提示 Chat 页“查看提示” POST /api/v1/sessions/{session_id}/hints sessions.generate_hints SessionService.generate_hintsHintAgent.generate runtime memory、training_order 已实现
检查项目列表 检查面板刷新 GET /api/v1/sessions/{session_id}/order-items sessions.list_order_items OrderService.list_order_items case_exam_item 已实现
申请检查 检查面板“申请该检查” POST /api/v1/sessions/{session_id}/orders sessions.create_order OrderService.create_order case_exam_itemtraining_order 已实现
完成问诊 Chat 页“完成问诊” POST /api/v1/sessions/{session_id}/complete-inquiry sessions.complete_inquiry SessionService.complete_inquiry training_session 已实现
提交诊断 提交页“提交诊断” POST /api/v1/sessions/{session_id}/diagnosis sessions.submit_diagnosis SessionService.submit_diagnosis training_submission 已实现
提交治疗 提交页“提交治疗方案” POST /api/v1/sessions/{session_id}/treatment sessions.submit_treatment SessionService.submit_treatment training_submission 已实现
生成评价 报告页“生成 AI 评价报告” POST /api/v1/sessions/{session_id}/evaluation sessions.create_evaluation EvaluationService.create_evaluationScoringAgent.scoreReportAgent scoring_ruleknowledge_chunkstraining_record 已实现
历史评价列表 历史页刷新 GET /api/v1/evaluations evaluations.list_evaluations EvaluationService.list_history training_record 已实现
评价详情 历史页详情/报告页 GET /api/v1/evaluations/{evaluation_id} evaluations.get_evaluation_detail EvaluationService.get_detail training_record 已实现
PDF 导出 报告页“导出 PDF” POST /api/v1/evaluations/{evaluation_id}/export-pdf evaluations.export_pdf PdfExportService.export training_record 已实现
知识检索 后端预留/评价内部使用 GET /api/v1/knowledge/search knowledge.search_knowledge KnowledgeService.search_guidelines knowledge_sourcesknowledge_documentsknowledge_chunks 已实现
LLM Fast 测试 LLM 测试页“测试 Fast” POST /api/v1/llm/test/deepseek-fast llm_test.test_deepseek_fast OpenAICompatibleLLMClient.chat 无长期表 已实现
LLM Reason 测试 LLM 测试页“测试 Reason” POST /api/v1/llm/test/deepseek-reason llm_test.test_deepseek_reason OpenAICompatibleLLMClient.stream_chat/chat 无长期表 已实现

2. 当前数据表状态

当前运行只依赖新表:

case_base
traditional_case
teaching_case
scoring_rule
case_exam_item
training_session
training_order
training_submission
training_record
prompt_templates
knowledge_sources
knowledge_documents
knowledge_chunks
user_learning_profiles
audit_logs

旧表不参与运行。旧表删除后,后端测试和前端构建均已通过。

3. 关键业务边界

  • X-User-Id 是会话、提交、评价和历史记录的隔离依据。
  • Chat 消息只作为短期 memory 使用,不作为长期历史保存。
  • 检查/检验结果只来自 case_exam_item,不由 LLM 编造。
  • 完整训练结束后只沉淀 training_record
  • 删除病例会删除病例相关业务数据和训练记录,但保留 audit_logs
  • 病例详情接口不返回标准答案和隐藏病史。

4. 核心状态流

inquiry -> diagnosis -> treatment -> evaluating -> evaluated
  • inquiry:允许 Chat、查看提示、申请检查、完成问诊。
  • diagnosis:允许提交诊断。
  • treatment:允许提交治疗方案。
  • evaluating:允许生成 AI 评价。
  • evaluated:允许查看报告、导出 PDF、查看历史。