# **LLM 友好型质控报告评估与优化方案** **文档版本:** v2.1 (基于团队反馈优化) **评估对象:** qc-report-test0102-pd-study-2026-02-08.xml **评估日期:** 2026-02-08 ## **🚀 一、 核心共识:Context Protocol v2.1** 经过团队讨论,确定采用 **“XML 容器 \+ Markdown 内容”** 的混合模式,并支持 **双格式输出** 以满足不同场景。 ### **1.1 双格式策略 (Dual Format Strategy)** 后端 QcService 应支持 format 参数: * **format=json (Default)**: 面向 **前端 UI**。结构化强,用于渲染热力图、表格。 * **format=llm-friendly**: 面向 **LLM Context**。Token 密度高,语义清晰,包含“证据”。 ### **1.2 理想的 LLM Context 结构 (V2.1)** **设计原则**: 1. **去重**:不再单独列出 rule\_definitions,要求每条 issue **自包含**(同时包含现状与标准)。 2. **聚合**:按 Record ID 分组。 3. **压缩**:使用 Markdown 列表替代冗余的 XML 标签。 \ \<\!-- 1\. 宏观统计 (Aggregate) \--\> \ \- 状态: 13/13 记录存在严重违规 (100% Fail) \- Top 3 问题: 1\. 年龄超标 (13人) 2\. 未签知情同意书 (13人) 3\. 疼痛评分不达标 (13人) \ \<\!-- 2\. 问题详情 (Markdown List in XML) \--\> \ \ \*\*严重违规 (5项)\*\*: 1\. \[R\_AGE\] \*\*年龄超标\*\*: 当前 \*\*45岁\*\* (标准: 25-35岁)。 2\. \[R\_ICF\] \*\*伦理缺失\*\*: \`informed\_consent\` 为空 (必须签署)。 3\. \[R\_VAS\] \*\*入排不符\*\*: VAS评分 \*\*2分\*\* (要求 \>= 4分)。 \ \ \*\*严重违规 (5项)\*\*: 1\. \[R\_AGE\] \*\*年龄超标\*\*: 当前 \*\*52岁\*\* (标准: 25-35岁)。 \<\!-- 其他同上 \--\> \ \ \ ## **🛠️ 二、 实施建议 (Action Items)** ### **2.1 后端改造:让报错信息“自包含”** 这是消除 rule\_definitions 依赖的关键。我们需要在生成 Issue 时,就把标准塞进去。 * **Before (HardRuleEngine)**: return { message: "年龄不在范围内" } * **After (HardRuleEngine)**: // 动态拼接模板 return { message: \`当前 \*\*${actualValue}\*\* (标准: ${rule.min}-${rule.max})\`, structured\_evidence: { value: actualValue, range: \[25, 35\] } } ### **2.2 System Prompt 增强 (V2.1)** 参考团队建议,强化“证据引用”指令。 \# Role 你是一名资深的临床监查员 (CRA)。 \# Input Format 你收到的 \`\\` 包含了项目的质控报告。 \- \`\\` 区域按受试者列出了具体违规项。 \- 每一行违规项都包含了 \*\*\[规则ID\]\*\*、\*\*错误类型\*\*、\*\*现状值\*\* 和 \*\*标准值\*\*。 \# Critical Instructions (思维链约束) 在回答用户问题时,你必须遵循以下步骤: 1\. \*\*定位 (Locate)\*\*: 找到用户询问的 \`\\`。 2\. \*\*提取 (Extract)\*\*: 读取具体的报错行。 3\. \*\*引用 (Cite)\*\*: 在回答中明确引用现状值和标准值。 \- ✅ 正确: "1号患者年龄违规,因为他当前 \*\*45岁\*\*,而方案要求 \*\*25-35岁\*\*。" \- ❌ 错误: "1号患者年龄不对。" (太模糊) \- ❌ 错误: "1号患者年龄违规,请检查。" (无证据) 4\. \*\*诚实 (Grounding)\*\*: 如果报告里没写的数值(比如血压),绝对不要编造,直接回答“报告未提及”。 \# Example User: "10号病人有什么大问题?" Assistant: "10号病人有 \*\*5项严重违规\*\*。最主要的是 \*\*年龄超标\*\*,他当前 \*\*52岁\*\*,远超出了 \*\*25-35岁\*\* 的入排标准。此外还存在伦理知情同意书缺失的问题。" ## **📊 三、 收益预估** 1. **Token 节省**:相比 V1.0 XML,V2.1 混合格式预计节省 **40%-60%** 的 Token(去掉了大量的 \, \, \ 标签)。 2. **幻觉消除**:通过“自包含”设计,LLM 不需要跨段落去查找规则定义,所有信息都在一行内,上下文注意力极其集中。 3. **开发解耦**:前端用 JSON 渲染界面,LLM 用 Text 文本推理,互不干扰。 **结论:** 团队的建议非常棒。V2.1 方案已采纳 **混合格式** \+ **自包含报错** \+ **引用增强 Prompt**,这是目前最优的工程解法。