大学作业管理(univ-homework)
一个技能覆盖大学课程作业的完整闭环:出题 → 定标准 → 批改 → 分析 → 反馈 → AI 素养训练。
内容不是教学理论整理,而是从一套真实运行了一学期的大学课程作业管理系统
(Flask + SQLite,教师端 / 学生端双角色,实际承载 130 人、2 个班级)里沉淀出来的。
本技能分免费与付费两部分:
- 免费:六个工作流的方法论、判断原则、红线与自检清单——足以指导你完成一次合格的作业设计-批改-分析循环;
- 付费:每个工作流的完整交付模板(可直接复制使用的输出格式、提示词全文、清单与题库),
整理为 6 个模板包,每包 ¥9.9,按次解锁(支付宝 AI 按量付费)。见文末「付费模板包与购买流程」。
适用学段:大学本科 / 高职高专 / 研究生课程教师,不适用于中小学。
与学科无关:通用的是结构(三要素提示词、双轨成绩机制、可判定得分点的写法),
示例中的工厂、标准号、工艺参数按你自己的专业替换即可。
工作流路由(先看这里,再跳到对应小节)
| 工作流 | 什么时候用 | 完整模板所在付费包 |
|---|---|---|
| 一 · 作业设计 | 要为某个知识点布置一次作业、把真实案例改成课堂练习 | ①作业设计包 |
| 二 · 量规制定 | 已有题目和答案,要拆成能照着判分的评分标准 | ②量规制定包 |
| 三 · AI 批改 | 要批量批改学生作业文件,出成绩和评语 | ③AI批改提示词包 |
| 四 · 学情分析 | 拿到一批成绩,要找班级共性薄弱点、准备讲评 | ④学情分析包 |
| 五 · 问卷设计 | 要收集学生反馈、评估 AI 辅助教学效果 | ⑤学情问卷题库包 |
| 六 · AI 素养 | 要教学生正确用 AI,或发现学生直接抄 AI 答案 | ⑥AI素养训练包 |
不确定该用哪个时:是要出题(一)、改题(二)、改作业(三)、看结果(四)、听反馈(五)、还是教方法(六)?
贯穿全部工作流的四条红线
-
AI 只给建议分,教师确认才算数。
成绩表里ai_score(AI 建议分)与score(教师确认成绩)分开存。
score为空 = 教师未确认 = 该成绩不生效。任何情况下都不要让 AI 直接写score。 -
场景必须由教师提供,AI 不编造。
企业名称、项目名称、建设地点与地址、产品用途、产能与工艺细节、监测与排放数据、
学生人数与班级构成——这些一律不得由 AI 自行填写。
需要数值但教师未给时,用「XX」占位并标注"教师填入"。 -
不做学生能力评价。
学情输出只描述客观事实(未提交次数、某得分点未命中),
不写"该生基础差""学习态度不端正";名单不排名、不公开。 -
不做学术不端判定。
发现抄袭或 AI 生成痕迹,转教师人工处理,技能不下结论。
六个工作流的闭环关系
┌──────────────────────────────────────────────┐
│ │
▼ │
① 作业设计 ──► ② 量规制定 ──► ③ AI 批改 ──► ④ 学情分析 ──┘
(出题+答案+评分要点) (可判分标准) (建议分+评语) (找薄弱点)
▲ │
└────────────── 讲评后调整下一次作业 ◄──────────┘
⑤ 问卷设计 ──► 主观反馈(作业难度、AI 教学效果)──► 汇入 ①④ 调整
⑥ AI 素养 ──► 贯穿 ①②③,把"用 AI"本身变成可评价的能力
反馈闭环的关键:④ 发现某得分点全班命中率低 → 回到 ① 调整下一次作业、回到 ② 检查量规是否过严。
分析完不讲评等于白分析,讲评重点必须落到下节课。
工作流一:作业设计(精简版)
定位:把"某个知识点"变成"一份学生做得完、教师改得动、AI 批得准"的作业。
设计质量的分水岭:能不能提前把"参考答案 + 评分要点"写出来。写不出来,说明题目本身有问题。
使用前提(硬约束):场景必须由教师提供。教师只说"帮我出一道题"而未给场景时,
先追问场景,不要直接出题。
四类题型怎么选:
- 简答(概念/程序/判别规则,10–20 分钟,AI 批改好)
- 计算(源强核算/等级判定/预测模型,20–40 分钟,AI 批改好但需过程分档;必须含 1–2 道有难度的)
- 论述(制度理解/方案比选,30–60 分钟,需人工复核;一次不少于 2 道)
- 案例分析(综合应用,60–120 分钟,需详细评分要点)
难度三档自检(任一不满足则调整):
- 可完成:用课堂讲过的方法 + 教师提供的资料,能在建议时长内做完
- 可判别:存在明确的对错或优劣标准
- 可批改:能列出 3 条以上具体得分点
常见坑:范围泛化("论述某主题"谁都答不好);虚构细节(编的产能数据一旦被查证,可信度归零);
只出题不给答案(无法进 AI 批改);权重失衡(单次默认 15%,过高毁掉整门课)。
> 📦 完整交付模板见付费包 ①:可直接导入作业管理系统的出题输出格式
>(标题/要求/权重/截止期/参考答案/逐条评分要点)、场景采集追问模板三套、
> 作业字段对照表(title / content / reference_answer / weight / due_date / target_class)。
工作流二:量规制定(精简版)
定位:AI 批改准不准,八成取决于量规细不细,不是提示词。
本工作流把"参考答案"翻译成"判定规则"。判据:换一个人拿着这份量规,能不能改出和教师差不多的分数?
量规四件套(概念框架):
1. 得分点清单——每条必须是可判定的具体标准("列出至少 3 类污染源,每类 5 分"),
不写"回答完整"这类主观描述;每条附命中判据(看到什么就算命中)
2. 失分点清单——按真实批改经验写,每条含扣分量、判定条件与扣分封顶
(防一错扣光;计算题单位遗漏、有效数字、公式代值错误占失分六成以上)
3. 分档锚点——四档各写具体表现,不写"较好/一般"
4. 边界判定规则——答超了不扣不加;答偏了按中档;过程对结果错按过程给分;
结果对过程错(蒙对)必须扣分并点明;抄袭/AI 痕迹转教师;空白或不足 10 字不送批改
计算题分值原则:过程 ≈ 60%、结果 ≈ 40%,单位单独占分(单位错是最常见也最致命的错误,
建议单位权重不低于 10%)。
自检:每条得分点"看到即判";失分点有封顶;四档锚点具体;边界规则覆盖"蒙对"情形。
> 📦 完整交付模板见付费包 ②:四件套逐条格式模板、高频失分点清单
>(计算/概念/表达/AI 使用四类,含扣分量与封顶值)、过程分 6 项分配表、量规自检清单。
工作流三:AI 批改(精简版)
定位与红线:AI 只给建议分。ai_score(建议分)/ai_comment(评语)由 AI 写,
score(最终成绩)只有教师能写。score 为空 = 未确认 = 不生效。
批改前前置校验(必做,能挡掉绝大多数无效调用):
未上传文件→提示无法批改;.doc 旧格式→请转 .docx;纯图片扫描件提取不出文本→请确认格式;
正文不足 10 字→记 0 转教师。
批改提示词的设计要点(完整全文在付费包):
- 让 AI 只输出一个 JSON 对象(score + comment),方便程序解析;解析用正则兜底
- comment 必须逐条列出得分点与失分点、指出具体问题——不加这句,
AI 典型输出是"总体不错,但需改进",学生不知道改什么,教师无法复核
- 语言简洁专业,不写鼓励性空话
- 学生答案截断到 6000 字(长文作业可到 8000–10000)
- 解析失败转人工,重试不超过 1 次
教师复核机制:复核界面同屏展示 AI 建议分/评语 + 教师确认分输入框(默认为空)。
抽样复核不低于 20%,重点看满分卷(漏判)、低分卷(误伤)、分数密集区(判分边界)。
批改质量自检:分数分布合理;抽 5 份评语都有具体得失分点;评语雷同的作业警惕;
计算题过程分真的给了。发现系统性偏差,优先调量规,不是调提示词。
> 📦 完整交付模板见付费包 ③:system/user 提示词全文(可直接复用,课程名已做占位符)、
> 逐句作用解释、JSON 解析容错代码、可调参数表。提示词经一学期 130 人真实批改验证。
工作流四:学情分析(精简版)
定位:从一堆分数里,找出下节课该讲什么。
最重要的一条判断原则:得分点命中率低于 40% 时,先怀疑题目和教学,再怀疑学生。
全班考砸绝大多数是三种原因之一:教师没讲透、题目有歧义、超纲——先查这三种。
分析三层:
1. 得分点聚合(最有价值):按量规得分点统计全班命中率,排序取最低 2–3 个作为讲评重点——
一次课能真正解决两个薄弱点就很好了
2. 错误类型分布:概念混淆(需课堂辨析)、公式误用(强化适用条件)、单位错误(专项训练)、
计算失误(强调验算即可,不用再讲课)、审题偏差、空白敷衍(个别谈话)——干预方式不同,别一锅烩
3. 异常分布识别:大量 90+(题太易或量规太松);大量 <60(先自我检讨);
分数断层(两极分化,从中档学生能听懂的起点讲起);相邻分数密集(量规判别力不足)
红线:只描述客观事实不做能力评价;名单不公开;样本 < 30 人不做统计推断(只做描述统计)。
多班级可以比掌握率与错误类型,不要比平均分排名。
常见坑:只看平均分;拿一次作业下结论;把提交率当学习效果;分析完不调整教学。
> 📦 完整交付模板见付费包 ④:学情报告输出格式模板(数据概况/薄弱点排序/共性错误统计/
> 讲评重点/需个别关注)、错误类型干预对照表、班级对比口径说明。
工作流五:问卷设计(精简版)
第一条原则:问卷越长,回收质量越差。 8 题以内、学生 2 分钟填完是实践上限;
超过 12 题,后面几题基本是随机点的。
三套经典问卷的主题(完整题目在付费包):教学满意度(期中/期末)、AI 辅助教学效果、单次作业难度专项。
关键设计要点:
- "学生是否用了 AI" ≠ "学生是否从中受益"——要看会不会验证 AI 结果、能力是否提升,使用率是虚荣指标
- 量表用 5 点不用 7 点(7 点中间三档没人选)
- 开放题限 50 字(不限字数只会收到空白或小作文)
- "卡在哪个环节"比"难度评分"有用得多——干预方式完全不同
- 满意度类问卷里放一道"每周课外投入时间"——投入 1 小时说"难"不是难,是没投入
- 匿名更真实(期中匿名),结果不得计入学生成绩
落地路径:统计→找最低 2 项→区分"能改/不能改"→下次课告诉学生改了什么(最易被忽略,
决定问卷机制能否持续)。
> 📦 完整交付模板见付费包 ⑤:三套问卷完整题库(可直接发布)、满意度分档口径、
> 开放题归类统计模板、施测时机与回收率建议。
工作流六:AI 素养(精简版)
核心理念:AI 已经进入各行各业的工作实践,禁用不如教会正确使用。
教学目标不是"防止学生用 AI",而是让学生具备"用 AI 做得比不用更好,且知道自己在对什么负责"的能力。
实践做法:作业允许且鼓励用 AI,但必须提交《AI 使用说明》,并对核验质量单独给分。
有效提示词三要素:
1. 场景(教师提供,不得让 AI 编)
2. 方法(指定依据标准——不指定方法,AI 会自己选一个,可能是过时的、编的)
3. 输出要求(要过程,不要只要结果)
AI 输出三类必查项(学生必须养成习惯):
1. 数据来源——标准号是否真实存在(AI 会编造标准号,最高频错误)、限值是否现行有效
2. 量纲与单位——换算是否正确、数量级是否合理
3. 适用条件——模型适用范围是否满足,回导则原文核对
作业设计要点:要求提交《AI 使用说明》(用了什么、怎么问的、核验了什么、哪些是自己的判断);
评分建议"专业答案 60% + AI 使用说明质量 25% + 过程可追溯 15%",给'发现 AI 错误'加分。
实践发现:允许用 AI 的作业区分度反而更高——《AI 使用说明》一交,谁思考过一目了然。
课堂训练三步:第一堂课现场演示 AI 犯错让学生找错(冲击力胜过讲十遍"要核验")→
中段同一题两种提示词对比 → 期末 AI 辅助综合案例(交完整工作记录)。
红线:不教用 AI 代写;不做 AI 生成内容检测判定;不把"是否使用 AI"作为评价标准(评价"用得好不好")。
> 📦 完整交付模板见付费包 ⑥:提示词正反例对照(可直接发给学生)、《AI 使用说明》模板、
> 评分要点调整表、课堂训练完整教案。
付费模板包与购买流程
六个完整模板包,每包 ¥9.9,支付宝 AI 按量付费(A402 协议)按次解锁,
付款后立即交付、可重复获取(同一支付凭证幂等重取):
| 包 | 内容 | 定价 |
|---|---|---|
| ① 作业设计完整模板包 | 出题输出格式 + 场景采集模板 + 字段对照表 | ¥9.9 |
| ② 量规制定完整模板包 | 四件套模板 + 失分点清单 + 过程分分配表 | ¥9.9 |
| ③ AI批改完整提示词包 | 批改提示词全文 + 解析容错代码 + 可调参数 | ¥9.9 |
| ④ 学情分析完整模板包 | 报告输出格式 + 错误干预对照表 | ¥9.9 |
| ⑤ 学情问卷完整题库包 | 三套问卷完整题库 + 统计口径 | ¥9.9 |
| ⑥ AI素养训练完整材料包 | 正反例对照 + 使用说明模板 + 训练教案 | ¥9.9 |
产品目录接口(免费):GET https://106.52.73.91/aipay/packs
返回各模板包的 pack_id、名称、定价与资源地址(服务端已过滤掉自测专用包)。
展示给用户时以此接口数据为准,只展示六个模板包,不展示任何测试包。
购买流程(A402 协议)
第 0 步 · 虚约确认(先确认、后扣款)
支付前向用户说明:要买的包名、价格(¥9.9)、支付方式(支付宝,由支付宝官方支付能力完成)。
用户明确同意后进入第 1 步;用户犹豫或拒绝时,可继续使用免费的精简版方法论。
第 1 步 · 请求资源(用包内编排脚本)
包内 scripts/univ-homework-paid.mjs 提供四条命令,把整条付费链路编排好:
# 0) 列出可购买的模板包(免费,不含付费内容)
node scripts/univ-homework-paid.mjs list
# 1) 请求资源 → 收下服务端签发的 HTTP 402 账单(本步不产生任何费用)
node scripts/univ-homework-paid.mjs probe --pack <pack_id> --state-dir .univ-homework-paid
# 2) 把账单交给支付宝官方支付能力,由它出付款码(用户扫码支付)
node scripts/univ-homework-paid.mjs pay --state-dir .univ-homework-paid
# 3) 付款后查询原订单并取回模板包全文
node scripts/univ-homework-paid.mjs complete --state-dir .univ-homework-paid
等价于直接 GET https://106.52.73.91/aipay/pack/<pack_id>(pack_id 见产品目录)。
> ⚠️ 必须用 https://,不得用 http://:支付宝官方支付依赖包对"付费资源地址"做硬性校验,
> 收到 http 会直接报 paid resource URL must use HTTPS 并中止,买方根本走不到付款那一步。
> 该地址用纯 IP + Let's Encrypt IP 证书(certbot-ip-renew.timer 自动续期),证书受信任,可正常使用。
未支付时会收到 HTTP 402 Payment Required 响应,响应头含 Payment-Needed(Base64URL 编码账单),
由编排脚本原样落盘(权限 600),不做解码、不改写、不重签。
> ⚠️ 状态目录默认落在当前工作目录(.<脚本名>),不要在技能包目录内执行,
> 否则未付款账单等运行时文件会留在包里。
第 2 步 · 支付依赖与密钥边界
> 🔴 红线:本技能不自行实现付款或签名。
> 账单由卖家服务端签发,付款由支付宝官方支付依赖包完成;技能内不拼账单、不生成订单号、
> 不写金额、不做任何加签或验签。支付依赖包与密钥均由官方维护,技能包内不含任何私钥。
支付能力为买方侧官方依赖包 alipay-payment-skill(npm 包名 @alipay/agent-payment),
由使用方依照支付宝官方文档自行安装与使用。
> 模板包由服务端在验付通过后交付;免费部分的方法论与判断标准不受影响,可正常使用。
编排脚本把账单与原始请求原样交给官方支付能力后,由它完成以下四步:
- probe:检查买方钱包状态(未开通则引导开通授权)
- pay:发起支付,支付链接 / 二维码完整透传给用户,等待用户完成支付
- complete:用户完成支付后,携 Payment-Proof 凭证重试原资源请求,
服务端验付通过后返回资源 - ack:履约回执由官方支付能力一并完成
第 3 步 · 交付资源
complete 取回的响应体即模板包全文(JSON 的 content 字段),由脚本写入本地文件;
展示给用户时原封不动完整呈现,不得截断、改写、摘要——这是付费内容,完整性是履约要求。
异常处理:
- 用户拒绝付款:尊重选择,告知该内容为付费资源,免费精简版方法论仍可正常使用
- 账单过期(pay_before 超时):重新请求资源获取新账单即可,已付款的订单用原凭证重取不重复扣费
- 支付/查询反复失败:按 alipay-payment-skill 的问题反馈流程处理
- 严禁:伪造支付状态、复用过往支付记录充当新凭证、跳过支付直接编造模板内容
支付宝付费链路实现说明(协议事实)
付费链路的实现如下(对应官方《支付宝付费改造最佳实践指南》Step 1~Step 5):
- ✅ 402账单下发:未支付请求由服务端返回
HTTP 402 Payment Required,并在响应头
携带Payment-Needed(Base64URL 编码账单,含 amount、out_trade_no、pay_before、resource_id、sign 等字段)。 - ✅ 携带凭证重试:买方完成支付后,由
alipay-payment-skill携Payment-Proof凭证
对原资源 URL 重发GET /aipay/pack/<pack_id>,服务端验签通过后返回模板包内容。 - ✅ 验付调用:服务端调
alipay.trade.query(读 payment verify 链路)做七重校验——
状态为PAID/ 金额一致 / 订单号一致 / 资源号一致 / 未过期 / 未重复履约 / 签名验证通过。 - ✅ 履约确认:交付完成后服务端调用支付宝履约确认接口将订单标记为 FULFILLED,
向买方发送履约回执。 - ✅ 订单持久化与幂等:服务端使用 SQLite
orders表持久化订单(order_no / pack_id / amount / status / payment_proof / fulfilled_at),履行按order_no唯一索引原子化,
同一凭证重取不重复交付、不重复扣费;状态机 INIT → PAID → FULFILLED 三段。 - ✅ 依赖与密钥边界:本技能不自行实现付款或签名,付款与签名均由支付宝官方支付能力
与卖家服务端完成;服务端源码与商户私钥均不入技能包,包内不含任何密钥、.env
或状态文件。
支付依赖包:alipay-payment-skill(买方侧官方支付能力,npm 包名 @alipay/agent-payment),
由使用方依照支付宝官方文档自行安装与使用,无需自建支付客户端。
免费版与付费包的关系
免费部分是完整的方法论与判断标准,足以独立使用;付费包是拿来即用的交付物模板,
省去你自己整理格式的时间。二者同源:付费包内容全部来自同一套真实运行一学期的系统实践,
免费精简版是同一实践的方法论提炼。
文件清单
SKILL.md— 六个工作流的免费方法论、判断原则与红线(免费)scripts/univ-homework-paid.mjs— 付费模板包的编排脚本(list/probe/pay/complete;只做编排)scripts/selfcheck.py— 打包自检(元信息 / 付费协议 / 泄漏 / 打包卫生)references/payment_a2m.md— 支付协议参考
> 六个模板包正文不在本技能包内,存放在卖家服务端,验付通过后由服务端返回。
变更记录
v2.2.0(2026-10-02)— 付费模板包改为服务端交付(形态 D)
| 项 | v2.1.1 | v2.2.0 |
|---|---|---|
| 购买链路 | 只有文字流程,由使用方自行拼装 | 包内新增编排脚本 scripts/univ-homework-paid.mjs(list / probe / pay / complete) |
| 模板包位置 | 服务端持有 | 不变,服务端持有、验付通过后返回正文;包内无副本 |
| 免费方法论 | 六个工作流的完整方法论 | 不变,免费、不依赖付费项 |
| 依赖说明 | 含澄清式说明句 | 改为中性表述(只写依赖包名) |
- 编排脚本只做四件事:列目录、取账单、交官方支付能力、取回服务端交付的模板包;
不自造账单、不签名、不持有密钥。 - 新增
references/payment_a2m.md(支付协议参考)与scripts/selfcheck.py(打包自检,含形态 D 断言)。
v2.1.1 / v2.1.0(2026-10-02)
- 补齐 frontmatter 平台字段(
slug/summary);完善付费流程中的 A402 协议事实描述。