qh-试卷生成器 (qh-paper-generator)
> 知识库文件 → 完整试卷 的六阶段工程化流水线。Author: qh@chzu
Overview
本技能将任意形态的知识库文件(文档、课件、表格、图片、网页、音视频转录文本等)转化为一套结构严谨、含计算题、配套答案/解析/评分标准的试卷。它不是一次性"拼题",而是一条带阶段评审闸门的流水线:每个阶段必须达到准入分数(前 5 阶段 ≥90 分,终审 ≥95 分)方可进入下一阶段,确保最终交付物零缺陷。
When to Use
- 用户给出资料/文档/文件夹,要求"出一套卷子""根据这份资料出题""生成考试题""建题库"。
- 用户提到:双向细目表、知识点图谱、计算题命题、采分点、分步评分、错误传递(ECF)、组卷。
- 用户需要把教材/讲义/规范/制度转化为可考核的试题或考试。
Core Principles(贯穿全流程的铁律)
- 闸门制(Gate):六阶段顺序执行,每阶段结束做评审打分;前 5 阶段得分 <90 必须返工,第 6 阶段 <95 必须整改重验。不要跳过评审直接跳到下一阶段。
- 计算题不可凭空编造:计算题只能来源于知识库中明确含公式、模型、定量关系的内容;评分必须细化到"公式分/代入分/计算分/结果分/单位分",并明确错误传递(ECF)处理原则。
- 覆盖优先:核心知识点覆盖率 ≥85%(蓝图)且可出题核心知识点覆盖率 ≥95%(提取阶段)。
- 客观可追溯:每个知识片段标注来源文件与版本号、章节/主题、知识点标签、摘要;所有题目能回溯到知识片段。
- 中文考试语境:试卷遵循国内教育惯例(题号、分值、注意事项、计算器说明齐全)。
Workflow(六阶段,必须按序执行)
> 每个阶段先执行操作,再用对应 references/ 文档中的评审表打分;达标才放行。详细操作、模板、评分细则见 references/。
阶段一 · 知识库文件预处理
目标:把异构文件变成干净、结构化、可追溯的知识片段(Chunk)。
- 建立文件清单(文件名、格式、大小、来源、版本号),按类型登记。
- 统一格式转换:PDF→文本(扫描版 OCR,保留公式/图表描述);Word/PPT→文本+层级;图片→OCR+图表文字化;表格→JSON/CSV。处理乱码、编码。
- 文本清洗:去页眉页脚/水印/广告/冗余空白,修正错别字与断行,统一术语。
- 逻辑切分:按章节/主题/段落切分为 Chunk,每个标注元数据(来源+版本、章节、标签、摘要)。
- 评审:加载 references/workflow.md 的「阶段一评审标准」打分,≥90 放行。
阶段二 · 知识点提取与分析
目标:从 Chunk 中抽取知识点,建图谱,标重要度与可计算性。
- 提取知识点并按类型归类:概念类 / 原理类(公式·定律·机制,计算题核心来源) / 方法类 / 事实类 / 应用类。
- 构建知识点图谱(上下位、并列、因果、前置依赖),建立 章→节→知识点→子知识点 层级。
- 评估重要度(核心/重要/一般)与可计算性(标记适合出计算题的公式/模型类知识点)。
- 统计总量、层级分布、高低频考点;统计可出题数与适合计算题的知识点数。
- 评审:用「阶段二评审标准」打分,≥90 放行。
阶段三 · 试题设计方案(出题蓝图 / 双向细目表)
目标:定参数、出蓝图,确保结构科学、难度梯度合理、计算题分布恰当。
- 定总体参数:题量(如 120 分钟≈50–60 题)、题型与数量(≥6 种且必须含计算题)、难度 5 级及占比、分值占比(客观≈45% / 计算≈20% / 主观≈35%)、按知识点模块分配权重。
- 制双向细目表(知识点 × 题型 × 难度 三维矩阵),明确每格题数与分值,计算题精准对应含公式/模型的知识点。
- 用 scripts/blueprint_validator.py 校验矩阵行/列总分、覆盖率、计算题占比与难度分布;达标后定稿。
- 评审:用「阶段三评审标准」打分,≥90 放行。
阶段四 · 试题生成
目标:按蓝图逐题生成,控制难度与查重。
- 按蓝图分配任务(知识点+题型+难度+分值+对应 Chunk)。
- 逐题编写:题干无歧义;选择题 4 选项且干扰项有迷惑性(基于常见错误);判断题设易混淆表述;填空题挖空关键信息;计算题给充分已知条件+清晰解题路径+分步评分标准;简答/论述给参考答案与采分点。
- 难度控制:调题干复杂度、干扰项迷惑性、知识点综合性。
- 题目去重:相似度比对,去除/替换高相似题,避免同知识点重复考查。
- 评审:用「阶段四评审标准」打分(存在科学性错误必须重写),≥90 放行。
阶段五 · 试题审核与优化
目标:初审、组卷排版、生成配套材料。
- 初审:准确性(答案/知识点)、规范性(表述/格式/术语/计算题已知条件完备无歧义)、合理性(选项/难度/分值)、公平性(无歧义/偏见/超纲)。
- 组卷:按蓝图组装;排序由易到难、同题型集中、计算题置于客观题之后主观题之前;加试卷头(考试名称、时间、总分、注意事项、计算器类型说明);排版生成 PDF/Word。
- 配套:标准答案、评分标准/细则(含计算题分步规则与 ECF 原则)、逐题解析。
- 评审:用「阶段五评审标准」打分,≥90 放行。
阶段六 · 终审与发布
目标:终审验收、试做闭环、归档发布。
- 终审:难度分布、覆盖率、题型/数量/分值与蓝图一致(重点核对计算题)、试做估时;邀学科专家签字。
- 试做:1–2 名非命题人独立试做,收集歧义/时间(重点评估计算题运算量)/难度反馈并修正。
- 归档发布:试卷+答案+解析+蓝图+评审记录全套归档;按需求导入线上系统或线下印刷;建题库版本管理。
- 评审:用「阶段六评审标准」打分,≥95 方可正式发布。
流程总览
[一]预处理 ─≥90→ [二]提取 ─≥90→ [三]蓝图(含计算题) ─≥90→ [四]生成 ─≥90→ [五]审核优化 ─≥90→ [六]终审发布 ─≥95→ ✅
Calculator-Problem Rules(计算题专项,见 references/calculation.md)
- 来源限制:只能源于知识库明确的公式/模型/定量关系,禁止凭空编造。
- 评分细则:必须细到 公式分 / 代入分 / 计算分 / 结果分 / 单位分,并写明 ECF(上一步算错、下一步用错值继续算是否给步骤分)。
- 时间评估:运算量必须在阶段六试做重点评估,确保中等水平考生能在规定时间内完成。
Resources
references/
references/workflow.md— 六阶段完整操作细则与六张满分100分评审表(阶段一~六),执行与打分的主依据。references/blueprint.md— 双向细目表构造方法、模板与从参数推导题量/分值的公式。references/calculation.md— 计算题命题技巧、分步评分标准模板、ECF 处理原则、试做运算量评估。
scripts/
scripts/blueprint_validator.py— 校验双向细目表:行/列总分=100%、覆盖率≥85%、计算题题量与分值占比、难度分布偏差。输入 JSON,输出校验报告。scripts/review_scorer.py— 给定阶段与各项扣分值,计算阶段得分与闸门结果(≥90 / ≥95),输出是否放行。
assets/
assets/exam_template.md— 最终交付物模板:试卷头、各题型排版、标准答案、评分标准(含计算题分步)、逐题解析,直接复制填充。
Operating Notes
- 文件格式转换优先用内置工具:Read 直接解析 docx/pptx/xlsx/pdf;扫描版 PDF 与图片用多模态读取做 OCR 与图表描述。
- 每阶段务必先打分再放行;评审表分值与扣则严格按
references/workflow.md执行。 - 最终务必产出全套材料(试卷+答案+解析+蓝图+评审表),否则阶段六「归档完整性」扣分。