中医体质测评
> 本文件为 2026-08-27 去冗杂终版:所有硬性规则完整保留,仅去除重复堆叠。凡标注「🔒 锁死」者,用户未点名不得改动。
概述
依据 GB/T 46939—2025《中医体质分类与判定》国家标准,完成九种体质的测评、计分、判定与个性化调养建议。覆盖:基础信息采集、舌象辅助、国标量表作答、转化分计算、体质判定、调养报告生成。
权威来源(已核对可访问):国标全文 · 标委会发布 · 王琦院士解读
核心五步流程
- 基础信息(第 1 步):年龄、性别、身高、体重(算 BMI)。
- 舌象采集(第 2 步,必填):只读
assets/tongue_card.html原样展示,引导用户一次性打字回复五项(舌色/舌苔/舌体形态/舌面湿润度/舌下脉络)。 - 量表作答(第 3 步):先展示锁死的版本选择话术,再逐组(共 9 组)发问卷卡片,每组等回复校验后再发下一组。
- 计分判定(第 4 步):用
scripts/tizhi_score.py算转化分并判定,严禁心算。 - 测评报告(第 5 步):
scripts/generate_report.py一步生成自包含 HTML,对话内仅展示 3 张核心图,最后present_files交付。
🔒 永久锁定模板总清单(用户终版,未点名不得改动)
- 基础信息卡
assets/basic_info_card.html— 原样展示,格式/配色不改。 - 舌象观察卡
assets/tongue_card.html— 五项固定(舌色 4 色块 / 舌苔 4 色块 / 舌体 4 CSS 图 / 湿润度 3 CSS 图 / 舌下脉络 3 色块);舌下脉络锁死为「正常/偏粗偏紫/不清楚」;flex 等宽等间距、无按钮无交互。 - 问卷卡
assets/question_card_template.html+scripts/fill_question_card.py— 以「第 5 部分痰湿质」为唯一基准,CSS/间距/字号/配色固定;评分标准「1 没有 2 很少 3 有时 4 经常 5 总是」;题干逐字;答案只用数字 1-5。卡片结构固定:标题行第 X 部分:XX质+ 右侧XX/66 题完成;描述行灰字;评分标准行;题目列表N 题干(逆向题末尾标 *);底部作答提示。 - 版本选择话术 — 见下方锁定格式,逐字锁死。
- 报告 hero 表头
generate_report.py— 红渐变横幅(#c74a58→#a8354a)+ 右侧半透明太极图 SVG(唯一装饰,严禁任何按钮/操作控件、无印章)+ 标题 + 副标题标准号 + 判定药丸行 + 基础信息药丸行(深色字 #3d3a33、等宽不换行居中)+ 底部来源小字。 - 报告区块序号 — 统一带圈数字 ① 雷达图 / ② 转化分排名 / ③ 舌象 / ④ 体质画像 / ⑤ 调养建议 / ⑥ 就医引导 / ⑦ 复测建议 / ⑧ FAQ / ⑨ 参考来源,严禁黑点、序号固定。
- 雷达图
svg_radar()— 460×460、圆心 230,230、半径 120、标签显示「体质名 分数」、数据点圆点、渐变填充;数值必须来自本用户实际计分。 - 条形图 / 舌象图 — 位置顺序(雷达→条形→舌象)与样式固定。
- 体质画像卡 — 6 图标卡(🔥总体 / 🧁形体 / 😊常见表现 / ❤️心理 / 💧发病适应 / 🩸舌象)+ 黄色判定框,照抄定稿。
- 调养建议卡 — 6 类图标卡(🍽️饮食 / ⏰起居 / 🏃运动 / 🧘情志 / 📍穴位 / ⚠️提醒)+ 白色 chip,底部严禁显示体质名。
- 所有提问/引导/过渡话术 — 已定稿措辞不再改动。
🔒 版本选择锁定格式(逐字锁死,不许增删改任一字/标点/空格/加粗/表格结构)
请选择量表版本(回复「精简版」或「完整版」即可开始):
| 版本 | 题量 | 特点 |
|---|---|---|
| 精简版 | 28 题(约 4 分钟) | 国标转载版条目;湿热质按 2 题计分(官方第 3 题页面缺失)。题量少、速度快 |
| 完整版 | 66 题(约 10 分钟,女性实际) | 九种体质共 67 条目逐题与官方标准核对,含平和质逆向题、湿热质性别题处理,判定更准 |
收到你的选择后,我会用固定的卡片格式从第 1 部分平和质开始逐组出题。
> 无论选哪个版本,报告均以完整版报告为唯一标准,两者视觉/排版/配色/布局/图表/结论区/调养区完全一致,只差题量与判定精度。
硬性规则(违反即错误,按优先级)
- A. 格式与模板:用户未点名要改的模板/话术/区块一律原样保留,禁止「顺手优化」「我觉得更好」式改动;发现问题先指给用户确认再动。
- B. 严禁乱码(最高优先级):所有卡片与报告必须正常中文输出,禁止替换字符(U+FFFD)/BOM 残留/方块乱码/半角问号占位。两道保险:① 生成期
scripts/fill_question_card.py的verify_html()硬校验(UTF-8 无替换字符/BOM、无残留占位符{{...}}、首标签必须为<div、结构完整,任一项不过直接退出拒交付);② 渲染期show_widget的widget_code必须取生成文件内容逐字原样,首字符必须为<(紧跟div),<后严禁空格/换行、严禁手工改写增删。 - C. 逐组推进不抢跑:第 3 步 9 组严格一组一组来——发完一组卡→停→等用户回复→校验无误→才发下一组;严禁预发/抢跑。基础信息卡与舌象卡必须严格串行(先发基础信息、等回复、再发舌象、等回复、再版本选择);同一张卡片严禁重复发出。
- D. 版本选择不可跳过:第 2 步舌象后、进第 3 步前必展示锁定版本选择话术并等回复,任何场景(含重新测/换用户/上轮选过)不省略。
- E. 题目准确性:每组出题前必 Read
references/jiuzhong_tizhi.md该体质条目表逐题核对,严禁凭记忆;出题后自查题数/题干/逆向位/性别题/语义归属;发现不符先修正参考文件再重出,严禁带疑发出(历史教训:痰湿质第 8 题曾误串气虚质)。 - F. 计分准确性:必用
scripts/tizhi_score.py的determine(),严禁心算;核对条目数(平和 8 / 气虚 8 / 阳虚 7 / 阴虚 8 / 痰湿 8 / 湿热 7 / 血瘀 7 / 气郁 7 / 特禀 7;湿热质女性第 7 题按「没有」=1 计、男性第 6 题同理按 1 计、第 7 题由用户作答)、逆向题反向(1↔5、2↔4、3 不变)、转化分公式与判定阈值;报告所有分数须与脚本一致。 - G. 精短展示:每步只发卡片 + 一句必要过渡语,严禁卡片后追加「已正常显示/纯 HTML/渲染成功/找到原因/重发/调试过程」等冗余解释,严禁向用户暴露内部调试过程。
- H. 权威正式表述:开场用标准表述带标准号+依据+免责;环节标题统一正式编号(第 1 步 基础信息 / 第 2 步 舌象观察 / 第 3 步 体质量表测评 / 第 4 步 计分判定 / 第 5 步 测评报告);问卷正文用国标原文、禁表情/语气词/网语;评分标准用官方措辞;报告标题结论用正式表述。
- I. 纯 HTML 卡片:所有
show_widget卡片必须纯 HTML(CSS 色块 / emoji / 文字替代 SVG),widget_code直接传原始片段,严禁带<svg>前缀或占位符;严禁把双引号全转义成&quot;塞srcdoc(触发截断)。 - J. 报告加速:收到最后一组即一步调
generate_report.py(传入 JSON:基础信息+舌象+九组答案;女性湿热质第 7 题补 1 分),脚本内一次性完成计分+七维提取+三图生成+12 区块组装。对话内仅展示 3 张核心图(雷达→条形→舌象,舌象只发一次),最后present_files。严禁报告阶段再读多余文件/写临时脚本/重复发舌象/分批拼装。 - K. 以最新回复为准:只认用户最新一条回复作当前组答案,不查不引之前的测试回复。
- L. 视觉卡片化:基础信息卡/舌象卡/问卷每组/报告 3 张核心图必须用
show_widget;统一红色主题(主色 #c74a58 / 倾向紫 #8e6bbf / 背景 #f6f3ec / 卡片 #fff / 正文 #3d3a33),严禁英文标签。 - M. 舌象确认:用户回复后须复述五项确认(缺项指出补、超范围提示选最近),严禁无效话术、严禁编造未提供的舌象信息。
历史错误红线(严禁重犯)
- 模板用错:报告唯一标准是
assets/report_template.html(= 2026-08-26 18:52 完整版),严禁翻早晨旧文件/其他工作区/新生成同名文件当模板。 - 抢跑:未收齐当前组就预发下一组。
- 卡片内嵌 SVG 致渲染失败:所有卡片必须纯 HTML。
- 版本选择被跳过:第 3 步前必展示。
- 题目串档:如痰湿质第 8 题曾误串气虚质。
- 冗余话术/泄露调试:卡片后只接一句过渡语。
- 计算不准/心算:计分必用脚本。
- 简易版与完整版报告不一致:报告一律套同一模板。
计分公式与判定标准
原始分 = 该体质各条目得分之和(逆向条目先反向)
转化分 = [(原始分 − 条目数)÷(条目数 × 4)] × 100
| 体质类型 | 条件 | 判定结果 |
|---|---|---|
| 平和质 | 转化分 ≥ 60 且其他 8 种均 < 30 | 是(平和质) |
| 平和质 | 转化分 ≥ 60 且其他 8 种均 < 40 | 基本是 |
| 平和质 | 不满足上述 | 否 |
| 偏颇体质 | 转化分 ≥ 40 | 是 |
| 偏颇体质 | 转化分 30 ~ 39 | 倾向是 |
| 偏颇体质 | 转化分 < 30 | 否 |
> 关键:平和质 ≥ 60 但存在偏颇 ≥ 40 时不判平和质,以该偏颇体质为结果。兼夹体质如实记录,分数最高者为主要方向。
九种体质速查
| 型 | 体质 | 主要特征 | 发病倾向 | 调养要点 |
|---|---|---|---|---|
| A | 平和质 | 阴阳气血调和、体态适中、精力充沛 | 平素患病较少 | 均衡饮食、规律作息、适度运动 |
| B | 气虚质 | 元气不足、疲乏、气短、自汗 | 易感冒、内脏下垂 | 黄芪/山药/大枣补气健脾 |
| C | 阳虚质 | 阳气不足、畏寒怕冷、手足不温 | 痰饮、肿胀、泄泻 | 羊肉/韭菜/生姜温补 |
| D | 阴虚质 | 阴液亏少、口燥咽干、手足心热 | 虚劳、失精、不寐 | 银耳/百合/枸杞滋阴 |
| E | 痰湿质 | 痰湿凝聚、形体肥胖、口黏苔腻 | 消渴、中风、胸痹 | 薏米/赤小豆/冬瓜祛湿 |
| F | 湿热质 | 湿热内蕴、面垢油光、易生痤疮 | 疮疖、黄疸、热淋 | 绿豆/薏米/苦瓜清利 |
| G | 血瘀质 | 血行不畅、肤色晦黯、舌质紫黯 | 症瘕、痛证、血证 | 山楂/黑木耳/玫瑰花活血 |
| H | 气郁质 | 气机郁滞、神情抑郁、忧虑脆弱 | 脏躁、梅核气、郁证 | 玫瑰花/佛手/陈皮疏肝 |
| I | 特禀质 | 先天失常、生理缺陷、过敏反应 | 哮喘、荨麻疹、过敏 | 规避过敏原、饮食清淡 |
> 完整七维特征与自测条目见 references/jiuzhong_tizhi.md。
核心能力
- 体质自测与辨识:调
tizhi_score.py算九种转化分并判定。 - 生成测评报告:权威图文可视化自包含 HTML(12 区块:头部结论区 + 雷达图 + 条形图 + 舌象图 + 七维画像 + 调养建议 + 风险提示 + 就医引导 + 复测 + FAQ + 来源 + 免责)。图优先、文字密度 ≤ 30%、每区块底部标来源/逻辑。规范见
references/report_guide.md,模板 =assets/report_template.html。 - AI 报告解读:转化分图描述 + 主要结论 + 兼夹提示 + 按季节/地域定制调养。
- 就医引导:4 场景主动建议(偏颇 ≥ 40 / 不适但结果不明 / 与既往诊断冲突 / 特殊人群),话术见
references/jiuyi_yindao.md。 - 养生误区纠偏:见
references/faq.md(36 Q&A)。 - 复测与趋势跟踪:记录历次转化分生成变化曲线。
测定流程
| 阶段 | 环节 | 说明 |
|---|---|---|
| 测定前 | ① 基础信息 | 年龄/性别/身高/体重(算 BMI) |
| 测定前 | ② 舌象采集(必填) | 纯文字描述,引导对照五项色块逐项选择打字回复,不依赖图片读取 |
| 测定中 | ③ 问卷测评 | 进问卷前先二选一(锁死版本话术),5 级评分,逐组等回复 |
| 测定中 | ④ 算法判定 | 转化分 → 判定 |
| 测定后 | ⑤ AI 报告 | 七维解读 + 调养 + 风险 + 趋势 |
免责声明
> ⚠️ 体质辨识结果为健康风险提示,不能替代执业医师的诊断与治疗。涉及药物、针刺、艾灸等须由专业中医师执行。本能力依据 GB/T 46939—2025 编制,仅供健康管理参考。
Resources
scripts/tizhi_score.py— 计分与判定(五级/逆向/转化分/判定)scripts/fill_question_card.py— 问卷卡填充器(含verify_html()生成期硬校验,杜绝乱码/残缺)scripts/generate_report.py— 报告生成(一次性计分 + 三图 + 12 区块)references/jiuzhong_tizhi.md— 九种体质七维特征 + 完整条目表(出题唯一权威源)+ 精简版转载条目 + 舌象对照 + 来源references/workflow.md— 完整工作流与示例references/shexiang_caiji_zhinan.html— 舌象采集图文指南references/jiuyi_yindao.md— 就医引导节点规范references/tiaoyang_laiyuan.md— 调养建议来源标注规范references/report_guide.md— 报告生成规范(12 区块/视觉/来源)references/faq.md— FAQ(36 Q&A)assets/basic_info_card.htmlassets/tongue_card.htmlassets/question_card_template.htmlassets/report_template.html— 固定卡片/报告模板(唯一权威源,禁止改动)