exampass 用于把课程资料按章节加工成便于复习的页面。命令路由:args 为 "update" 时做技能更新;以 "final" 开头进入出题流程;以 "graph" 开头生成知识图谱;以 "grade" 或 "批改" 开头进入 AI 批改;其他情况走默认流程。
默认流程每章产出一个合并 HTML 页,顶部有「知识清单 | 章节测试」两个 tab。知识清单含右侧 PPT 对照栏(整页渲染图加原文)、目录、四色标签、易错 blockquote、折叠自测答案;章节测试支持交互答题与一键批改。
流程分四阶段。Phase 0 提取:运行 python scripts/run_exampass.py <课程目录>,生成 .epa_work/chapter_manifest.json 及各章 _extraction_bundle.json。Phase 1 骨架:输出 knowledge_skeleton.json,其中 source_refs 页码必须真实,需先确认 PDF 实际页数,并写 slices 切片。Phase 2 每章并行生成笔记与题目:笔记按 Hook、TL;DR、Why、What、How、Checkpoint 叙事,含四色标签与页码锚点;题目按学科选题型,每 KC 至少一题,整章不少于 8 题,选择题正确答案 A/B/C/D 均匀分布,JSON 用 json.loads() 自检。Phase 3 评审为可选。Phase 4 渲染:运行 python scripts/render_chapters.py <课程目录> full,输出到 <课程目录>/EPA/,浏览器打开即可用;文件过大可将 full 改为 key。
AI 批改读入测试页导出的 answers JSON,客观题按 test_js_template.js 同逻辑自动比对,主观题结合作答与图片给分评语,再统计总分与各知识点掌握度,最终用 save_grade_report_html 生成报告 HTML;grade_count 由同目录 批改.html 数量加一确定。若确认 tf 题 correct_answer 与 explanation 矛盾,以 explanation 为准并注明数据可能有误。
技能更新命令会 git fetch origin master,判断落后提交数,必要时 stash、pull、pop 并 pip install -r requirements.txt。适用场景为期末复习的资料整理、自测与批改;限制与依赖(如具体模型、平台要求、收费情况)资料中暂未提供。