TeachAnyHEPBL은(는) 무엇을 하나요?
将大学课程项目目标(+ 可选学科 / 课程 / 交付物)转化为:
- PNG 长图 — 结构化的 HE-PBL 拆解 + 课程知识体系图谱
- 交互式网页 — 与长图内容一致的交互式项目拆解网页,含可在线填写的项目书、小组信息栏,支持一键提交到教师邮箱(规范见 references/interactive-webpage.md)
- 编辑链接 —
https://www.teachany.cn/pbl?...用于聊天细化、节点调整、课件制作
拆解使用 TeachAny 在 teachany.cn 上的六阶段流水线(LLM + 课程索引)。不要自己发明知识节点——必须对齐目标课程大纲(课程大纲 / 培养方案),而不是编造章节级结构。
工作流程
- 解析课程项目目标及可选字段(见 references/parameters.md)。默认
--grade university。 - 从此技能目录(
SKILL.md所在目录)运行捆绑的 CLI:
python3 scripts/hepbl-decompose.py \
--goal "用户的项目任务原文" \
--grade university \
--subject computer-science \
-o ./pbl-output
- 首次运行时,如果缺失依赖则安装:
pip install playwright && playwright install chromium - 按照 references/course-blueprint.md 草拟 HE-PBL 设计方案——三维目标、布鲁姆层级、前置知识链条、学术工作流。使用 references/examples.md 作为样式参考。
- 设计方案权威校准(存在设计方案文档时强制,不得跳过):从设计方案逐字提炼 overlay JSON → 运行
scripts/calibrate_hepbl.py重建网页与长图(详见下文「设计方案权威校准门禁」与「技术路线可视化规范」)。 - 回复中返回 PNG 路径、交互式网页路径、JSON 中的节点计数、三维目标以及 edit_url(提供给用户的链接中永远不要包含
auto=1)。 - 如果 Playwright 失败,请遵循 references/fallback.md —— 仍要返回一个编辑链接。
受限机器替换脚本(保留原方案,跑不通时改用)
scripts/hepbl-decompose-local.py 是原脚本的替换版(原 hepbl-decompose.py 保留不动),针对以下已验证的本机问题:
- Playwright 自带 Chromium 下载停滞(CDN 不可达)→ 自动回退
channel="msedge"系统 Edge - 360s 超时不够 →
TIMEOUT_MS = 900_000(pbl 页统一索引 localStorage 超配额,每次全量重建约 100–180s,全流程实测 8–11 分钟,务必后台运行) - goto 偶发
net::ERR_NETWORK_CHANGED→ 自动重试 3 次(间隔 5s)
# 用法与原脚本完全一致(模板仍按 ../assets/hepbl-report.html 相对定位,勿移动)
python scripts/hepbl-decompose-local.py --goal "..." --grade university --subject mathematics -o ./pbl-output
排障速查:长图有了但缺交互网页 = 脚本被复制到别处运行导致 ../assets/ 模板找不到(静默跳过,把模板放回同级即可);本机 SciPy 被 Windows 应用控制策略拦截(_trlib DLL),LP 类项目代码一律 PuLP(CBC) 为主、SciPy 用 try/except 设为可选交叉验证(NumPy/PuLP 正常)。
HE-PBL 设计标准(输出中必须包含)
每个设计必须包含:
- 知识目标 / 能力目标 / 素质目标(三维目标)
- 布鲁姆认知层级(记忆 / 理解 / 应用 / 分析 / 评价 / 创造)每个目标对应
- 前置知识要求(指向先修课程/章节的依赖链)
- 核心概念与难点 映射到课程知识体系
- 项目流程:文献调研 → 方案设计 → 实施验证 → 成果汇报
- 可评估产出 附学业标准(实验报告 / 设计文档 / 答辩)
完整标准见 references/course-blueprint.md。
设计方案权威校准门禁(强制)
存在设计方案文档(如「PBL 项目设计方案」md)时,引擎拆解只是初稿,最终交付必须过校准门禁:
- 逐字提炼 overlay:节点名、三维目标、约束数字、基准结果(x*/Z*/影子价格)、阶段学时全部从设计方案文档逐字摘取,不得编造或改写。
- null 删除污染:引擎编造字段(
techRoute/pathPlan/projectBlueprint/stats)在 overlay 中置null,deep_merge时删除;_前缀元数据键剥离。 - 长图 = 网页:用
scripts/calibrate_hepbl.py重建网页与长图(Playwright 整页截图,device_scale_factor=2),交付前完成自查(节点名与设计方案一致、payload 零残留、summary 与节点数一致)。 - 统一标题:overlay 必须含
title字段(与设计方案标题逐字一致)——网页 Hero、标签页、导出报告、长图标题全部取自DATA.title(缺失回退 goal)。 - 继续编辑入口:网页端「在 TeachAnyHE 打开」按钮一键复制
@skill:TeachAnyHE技能调用指令(粘贴到 WorkBuddy 对话框即以高等教育场景继续编辑);引擎 teachany.cn 链接降级为「TeachAny 引擎初稿」小字链接保留(DATA.edit_url)。
技术路线可视化规范
- 网页端优先渲染
techStages[](stage/hours/tasks[]/output)+toolChain[](name/use)分层流程图:工具链 chips → 箭头衔接 → 阶段卡(序号圆点 + 连接线 + 学时徽章 + 任务清单 + 阶段产出);缺失时回退projectPhases四段式列表。 - 数据契约与区块结构见 references/interactive-webpage.md;完整 overlay 示例见 references/calibration-example-lp.json。
输出模板
## HE-PBL 课程设计拆解
**项目**:{title}

- **图谱节点**:{nodeCount}(大纲对齐 {matched} · 拓展 {external})
- **知识目标**:{...}
- **能力目标**:{...}
- **素质目标**:{...}
- **布鲁姆层级**:{...}
- **交互式网页**:[打开项目拆解网页]({html_path})(可在线填写项目书、小组信息并提交教师邮箱)
- **继续编辑**:网页端「在 TeachAnyHE 打开」按钮一键复制技能调用指令(粘贴到 WorkBuddy 对话框即以 HE 场景继续编辑)· 引擎初稿链接:{edit_url}
「在 TeachAnyHE 打开」按钮复制的指令粘贴到 WorkBuddy 对话框,可继续对话修改拆解、调整知识点、一键制作课件。
在支持图片的环境中,在聊天中显示 PNG 图片。
为什么不能手写图谱?
TeachAny 将节点与课程索引匹配、进行相关性审查并构建依赖边。纯 LLM 列表会遗漏大纲对齐并产生虚假节点 ID。
示例
完整 HE-PBL 示例库见 references/examples.md,涵盖 数学 / 计算机 / 通信 / 电气 课程。快速示例:
示例 1 — 数据结构:python3 scripts/hepbl-decompose.py --goal "设计校园导航最短路径系统…" --grade university --subject computer-science --deliverable engineering-prototype -o ./pbl-output
示例 2 — 信号与系统:python3 scripts/hepbl-decompose.py --goal "FIR 滤波器设计与频谱分析…" --grade university --subject communications --deliverable simulation-report -o ./pbl-output
附加资源
- 参数参考:references/parameters.md
- HE-PBL 设计标准:references/course-blueprint.md
- 交互式网页规范:references/interactive-webpage.md
- 示例库:references/examples.md
- Playwright 不可用时:references/fallback.md