授课计划与教案批量生成器
概述
本技能用于辅助职业院校或培训机构教师,基于课程标准、教材内容和授课计划模板,自动生成完整的授课计划文档;并基于生成的授课计划,结合教案模板和教学设计理念(默认 OBE + BOPPPS),批量生成对应每个项目/任务的标准教案文档。
触发条件
当用户提及以下需求时触发:
- "根据课程标准和教材生成授课计划"
- "基于授课计划批量生成教案"
- "帮我自动编写这门课的教案"
- 或明确要求使用本技能进行教学文件制作
核心工作流(5 阶段)
严格按照以下 5 个阶段顺序执行。
阶段 1:文件导入与解析
引导用户提供以下 4 类文件(如用户未明确路径,需主动询问):
- 授课计划模板(.docx):确定授课计划的表格结构、表头字段及排版格式。若用户未提供,可参考技能包内
examples/授课计划模板.docx样例。 - 课程标准(.pdf/.docx):提取课程性质、总学时、课程目标、内容模块划分、考核方式等。
- 教材/教学资料(.pdf/.docx):提取项目/任务名称、知识点详述、操作步骤、案例数据等。
- 教案模板(.docx):确定教案的固定板块及字体、表格、页边距等排版规范。若用户未提供,可参考技能包内
examples/教案模板.docx样例。
默认样例(技能包内置):
- examples/授课计划模板.docx:授课计划表格结构样例
- examples/教案模板.docx:教案固定板块与排版规范样例
> 当用户仅提供课程标准与教材、未单独提供模板时,优先调用上述 examples/ 下样例作为模板来源。
文件读取方式:
- 若文件在 IMA 知识库中:使用 IMA MCP 工具 fetch_media_content 读取(详见 references/ima_workflow.md)。
- 若为本地文件(含技能包 examples/ 下样例):使用 Read 工具直接读取。
- 若为 Office 文档(.docx):优先使用 tencent-docs-routing 技能路由到正确的编辑工具。
模板格式解析要点(详见 references/template_analysis.md):
- 锁定表格列数、行数、表头名称及顺序
- 记录合并单元格规则(gridSpan 水平合并、vMerge 垂直合并)
- 提取字体规范(中文字体、英文字体、字号体系)
- 记录页面设置(页边距、纸张方向、页眉页脚)
阶段 2:提取结构化信息
解析授课计划模板:
- 锁定需填充的字段(周次、课次、项目/任务名称、教学内容、学时、教学方法、作业/备注等)
- 记录表头顺序和合并单元格规则
解析课程标准与教材:
- 按教材目录或课标模块,提取全部项目/任务清单及对应的核心知识点
- 统计总学时,按项目/任务的重要程度或课标建议,合理分配各项目/任务的学时数
- 提取课程的整体目标(毕业要求/课程目标),为后续拆解三维目标提供依据
阶段 3:生成授课计划
将阶段 2 提取的内容,按阶段 1 解析的授课计划模板结构进行填充。
生成逻辑:
- 依据教材顺序编排项目/任务次序
- 将课程标准中的教学内容细化,对应填入每周/每次课的内容栏
- 建议教学方法(如讲授法、任务驱动法、小组实操等)
- 假期周(国庆、中秋等)和考试周(期中、期末)需在备注列标注,内容列留空
- 输出初稿后,必须向用户展示预览,并提示确认
确认节点(Checkpoint):
"授课计划初稿已生成,请确认内容与学时分配是否合理。确认无误后将进入教案生成阶段,如需修改请告知。"
输出:保存为 [课程名称]_授课计划.docx
脚本参考:可参考 scripts/generate_teaching_plan.py 中的 python-docx 表格生成代码模式。
阶段 4:教学设计与教案填充(核心增值环节)
在用户确认授课计划后,依据用户指定的教学设计要求(若未指定,默认 OBE + BOPPPS 融合模式),将授课计划中的每个项目/任务逐一转化为完整教案。
详细方法论参见 references/obe_boppps_guide.md。
教学目标设计(OBE 导向):
- 将每个项目的教学目标改写为知识目标、能力目标、素质目标三维度
- 每条目标必须以"学生能够……"开头,动词具体可测(描述、列举、操作、设计、调试、分析)
教学过程设计(BOPPPS 六阶段):
- B(导入):设计情境引入(案例、问题、视频等),说明本任务的学习价值
- O(目标):呈现该课时的 OBE 三维学习目标
- P1(前测):设计 3~5 个问题/小任务摸底
- P2(参与式学习):拆解教学内容为"讲授+实操+互动",须明确标注"教师活动"与"学生活动",至少 2 个互动节点
- P3(后测):设计与目标对应的检测任务(上机操作/案例分析/随堂测验)
- S(总结):知识图谱/思维导图式回顾,布置课后拓展作业
- 时间分配按总学时合理切分(六阶段时间总计须等于该任务总学时)
格式填充:
- 将设计内容严格对应填入教案模板的指定表格和段落
- 若授课计划中某任务内容较简略,依据教学逻辑专业补全(补全内容前后加 ★ 标注)
脚本参考:可参考 scripts/generate_lesson_plans.py 中的 BOPPPS 表格生成代码模式。
阶段 5:批量导出与自查
- 为每个项目/任务独立生成一份 Word 文档(.docx)
- 命名规则:
[序号]_[项目/任务名称]_教案.docx - 格式强制锁定:所有文档的页边距、行距、字体、表格边框与对齐方式,必须与教案模板 100% 一致
质量自检清单:
1. 格式一致性:与模板的字体、表格、段落样式是否一致
2. OBE 目标:三维目标是否以"学生能够……"开头、是否可测量
3. BOPPPS 完整性:六个阶段是否完整呈现
4. 内容匹配度:教案内容是否与授课计划对应任务匹配
5. 参与式学习:是否设计了至少 2 个互动/实操环节
6. 前后测一致性:前测与后测是否分别对应课前摸底和课后检验
7. 学时分配:各阶段时间分配是否合理且总计等于总学时
8. 评价对应:后测/评价方式是否与 OBE 目标一一对应
硬性约束
- 格式至上:输出文档的一切排版要素均以用户提供的模板为准。若无法读取模板样式,停止操作并引导用户说明模板关键样式参数。
- 教学理论落地:若无特殊说明,默认启用 OBE + BOPPPS 模式,六阶段缺一不可。
- 人机交互确认:在"生成授课计划后"和"批量生成教案前"必须设置确认节点,等待用户明确同意后再继续。
- 内容一致性:教案中的"教学目标"必须反向支撑授课计划中的"课程目标";"后测"内容必须能直接证明"教学目标"的达成。
- 完整性兜底:若教材内容无法填满 BOPPPS 环节,依据该学科常规教学逻辑合理补充,不得留空或跳过。
技术注意事项
生成 Word 文档时使用 python-docx 库,需注意以下常见陷阱(详见 references/python_docx_pitfalls.md):
- 垂直单元格合并:必须使用 XML 级别的
vMerge属性,不能用cell.merge()方法(该方法会导致表格结构损坏) - 中文字体设置:必须同时设置
w:eastAsia、w:ascii、w:hAnsi三个属性 - Python 字符串中的中文单引号:中文内容中使用单引号会与 Python 字符串定界符冲突,须替换为书名号或转义
输入输出示例
| 项目 | 内容 |
|---|---|
| 默认样例(技能包内置) | examples/授课计划模板.docx、examples/教案模板.docx(用户未单独提供模板时作为模板来源) |
| 输入 | 课程标准.pdf、教材.pdf、授课计划模板.docx、教案模板.docx |
| 阶段 3 输出 | [课程名称]_授课计划.docx(含项目列表、学时分配表) |
| 阶段 5 输出 | 01_项目名称_教案.docx;02_项目名称_教案.docx;……(每项目一份) |
技能启动提示
当用户启动本技能时,首先回复以下内容并同步执行文件读取:
"已启动【授课计划与教案批量生成器】。请确认已准备好以下 4 类文件:授课计划模板、课程标准、教材资料、教案模板。请直接拖拽或上传文件,完成后输入'确认',将开始解析。如有特殊教学设计要求(如指定使用 OBE 或 BOPPPS),请一并告知。"