diff --git a/.planning/STATE.md b/.planning/STATE.md index 79e2a66..59b5761 100644 --- a/.planning/STATE.md +++ b/.planning/STATE.md @@ -1,17 +1,17 @@ --- gsd_state_version: 1.0 -milestone: v1.4 -milestone_name: Zhihu Anti-Crawler -status: planning -stopped_at: Phase 13 context gathered -last_updated: "2026-03-21T16:14:07.594Z" -last_activity: 2026-03-21 — Roadmap created for v1.6 +milestone: v1.6 +milestone_name: 语义分段改进 +status: ready_to_execute +stopped_at: Phase 13 planning complete +last_updated: "2026-03-22T10:00:00.000Z" +last_activity: 2026-03-22 — Phase 13 plan created (7 plans) progress: total_phases: 15 - completed_phases: 10 - total_plans: 31 + completed_phases: 12 + total_plans: 38 completed_plans: 30 - percent: 0 + percent: 79 --- # Project State @@ -26,9 +26,9 @@ See: .planning/PROJECT.md (updated 2026-03-21) ## Current Position Phase: Phase 13 - 核心 LLM 分段功能 -Plan: TBD -Status: Planning -Last activity: 2026-03-21 — Roadmap created for v1.6 +Plan: 01-07 +Status: Ready to execute +Last activity: 2026-03-22 — Phase 13 plan created (7 plans) Progress: [░░░░░░░░░░] 0% (Phase 13/15) @@ -56,29 +56,38 @@ Key decisions from v1.0-v1.5 (preserved): - SRT 独立模块 — kb_workflow/srt/ 职责分离 - ASR 纠错可选 — AI 不可用时返回原文 -v1.6 scope (待验证): -- LLM 语义分析 — 替代简单规则分段 -- 通用自适应 — 自动识别视频类型 -- 主题识别与标题 — 主题章节生成标题 -- 内容完整性 — 避免错误截断话题 +v1.6 Phase 13 decisions (from 13-CONTEXT.md): +- **数量控制**: 采用建议式数量引导(5-8段),不强制执行 +- **视频类型策略**: 无类型区分 — 使用统一 Prompt,不针对不同类型设计不同策略 +- **句边界保护**: 纯 Prompt 约束 — 依赖 LLM 理解,不进行代码后处理 +- **论点完整性**: 一般性指令 — 不提供具体示例或标记词识别 +- **并列结构**: 不特别指定 — 让 LLM 根据整体语义自然判断 +- **中文句边界**: Prompt 中强调 — 列举所有中文句末标点 +- **标题范围**: LLM 自主判断 — 哪些分段需要标题由 LLM 决定 +- **标题风格**: 简洁描述型 — 5-15字,如「机器学习概述」 +- **标题格式**: H2 (##) — 与现有格式保持一致 +- **标题缺失处理**: 跳过标题 — 无法生成标题时设为 null +- **模块位置**: `kb_workflow/srt/semantic_engine.py` +- **现有 SemanticSegmenter**: 完全替代 — 新代码完全替代旧代码 +- **SRTProcessor 集成**: 配置开关控制 — `enable_semantic_segmentation` 参数 +- **Pydantic Schema 位置**: `semantic_engine.py` 内 ### Technical Context **架构集成:** -- 扩展现有 `SemanticSegmenter`,保持向后兼容 - 新增 `SemanticSegmentationEngine` 模块(`kb_workflow/srt/semantic_engine.py`) +- 替代现有 `SemanticSegmenter`(规则分段) - 在 `SRTProcessor` 中添加 LLM 分支(`enable_semantic_segmentation` 参数) **技术栈:** - SimpleAIClient(已集成 zhipu/openai/minimax) - Pydantic v2(LLM 响应验证) -- 现有 SemanticSegmenter(规则分段保留) +- Protocol(SegmentationStrategy 接口) **数据流:** ``` -SRT Input → Parse Subtitles → Video Type Detection → -Semantic Segmentation → Extract Paragraphs → ASR Correction → -Deep Analysis +SRT Input → Parse Subtitles → SemanticSegmentationEngine (LLM) → +Extract Paragraphs → ASR Correction → Generate Markdown ``` ### Known Risks @@ -91,8 +100,9 @@ Deep Analysis 5. **成本失控** — 高频 LLM 调用可能导致费用激增 **缓解策略:** -- Phase 13: 实现 Pydantic 验证 + 句边界保护 -- Phase 14: 实现分块处理 + 缓存 + 温度控制 +- Phase 13: 实现 Pydantic 验证 + 句边界保护(Prompt 约束) +- Phase 14: 实现分块处理 + 缓存 + 温度控制 + 降级策略 +- Phase 15: 输出格式优化 + 配置开关 ### Blockers/Concerns @@ -100,8 +110,23 @@ None. ## Session Continuity -Last session: 2026-03-21T16:14:07.592Z -Stopped at: Phase 13 context gathered +Last session: 2026-03-22T10:00:00.000Z +Stopped at: Phase 13 planning complete Resume file: .planning/phases/13-llm/13-CONTEXT.md -**Next step:** `/gsd:plan-phase 13` - 开始 Phase 13 的详细规划 +**Next step:** `/gsd:execute-phase 13` - 开始执行 Phase 13 的 7 个计划 + +## Phase 13 Plan Structure + +**Wave 1** (并行执行,无依赖): +- Plan 01: 视频类型识别(TDD)- VIDEO-01, VIDEO-02, VIDEO-03 +- Plan 02: 语义边界检测(TDD)- BOUND-01, BOUND-02, BOUND-03, BOUND-04 +- Plan 03: 内容完整性保护(TDD)- COMP-01, COMP-02, COMP-03 +- Plan 04: 主题标题生成(TDD)- TITLE-01, TITLE-02, TITLE-03 +- Plan 05: 中文句边界检测(TDD)- SENT-01, SENT-02, SENT-03 + +**Wave 2** (依赖 Wave 1): +- Plan 06: 可扩展策略架构 - STRAT-01, STRAT-02, STRAT-03 +- Plan 07: SRTProcessor 集成 - CONFIG-03 + +**Total**: 7 plans (5 TDD + 2 execute)