v1.2.0 — 段落组织 / 视频总结 / 推理模型兼容
course2md v1.2.0
阅读体验与 LLM 稳定性版本:段落组织 + 视频总结 + 推理模型兼容。
本版本两项核心改进来自社区贡献,感谢 @QiuShunan 与 @1Cookie2gavh 🎉
✨ 新特性
段落组织(#6,感谢 @QiuShunan 的首个贡献)
- 同一截图下、短停顿(<3.5s)内的连续 ASR 片段合并为自然段落——
文稿不再是 VAD 碎片流水账;LLM 校对单位随之升级为段落 - 独立语气词条目(「嗯」「啊」)自动过滤,无需 LLM
- 跨页文本只在句读/空格处切分,找不到自然断点整段保留(不词中截断)
- HTML 去掉「……」对话式包裹;timeline.jsonl 完整保留原始事件供溯源
视频总结(#7,感谢 @1Cookie2gavh)
course2md summarize <目录>:为已有输出生成 TL;DR / 核心要点 /
带时间戳大纲,就地写入 course.md/html(幂等,--force覆盖,
-o导出独立<标题>.summary.md)[llm] summarize = true转换后自动总结;超长视频 map-reduce- 幻觉防护:仅以带时间戳字幕为输入、temperature=0、结构化 JSON 输出
推理模型润色兼容(#7)
json_object响应格式(端点不支持时自动降级重试)max_tokens16384(reasoning 不再吃光正文预算)- 解析三级容错:严格 → 尾逗号清理 → 逐对象扫描跳坏项
- 失败批次拆半递归重试;Section 级 4 路并发润色(长视频约 1/4 耗时)
- DeepSeek V4 Flash 等推理模型从「必现失败」到稳定可用
其他
course2md remove [--asr]:清除 LLM/STT API 凭据(分享/提交前)
🔧 移植时修复(#7 代码审查)
宽容扫描方向反了会漏掉首对象;严格解析含坏项时早退跳过降级;
json_object 无降级路径;contains_summary 标题误判;CI 编译错误
与 clippy 违规。全部已带回归测试。
📦 安装
brew upgrade mizorewww/tap/course2md
# 或下载下方对应平台二进制完整变更见 CHANGELOG.md。
Full Changelog: v1.1.0...v1.2.0