This repository has been archived on 2026-08-07 . You can view files and clone it. You cannot open issues or pull requests or push a commit.
phase, plan, subsystem, tags, requires, provides, affects, tech-stack, key-files, key-decisions, patterns-established, requirements-completed, duration, completed
phase
plan
subsystem
tags
requires
provides
affects
tech-stack
key-files
key-decisions
patterns-established
requirements-completed
duration
completed
13-llm
04
llm
pydantic
llm
semantic-segmentation
title-generation
VideoSegment.title 字段和验证器
SEGMENTATION_PROMPT 标题生成指令
标题生成测试套件
added
patterns
pydantic-field-validator
optional-string-validation
created
modified
kb_workflow/srt/semantic_engine.py
tests/test_semantic_engine.py
标题验证:使用 Pydantic @field_validator 验证标题长度不超过 15 字
标题生成:LLM 自主判断是否需要标题,Prompt 中给出明确指导
标题格式:简洁描述型(5-15字),如「机器学习概述」
Pattern 1: Pydantic @field_validator 用于字段级别验证
Pattern 2: Optional[str] 字段允许 null 值
TITLE-01
TITLE-02
TITLE-03
15min
2026-03-22
Phase 13: Plan 04 - 主题标题生成 Summary
使用 Pydantic @field_validator 实现 VideoSegment.title 字段验证(不超过 15 字),Prompt 中添加标题生成指令让 LLM 自主判断是否需要标题
Performance
Duration: 15 min
Started: 2026-03-21T16:22:59Z
Completed: 2026-03-21T16:37:00Z
Tasks: 1
Files modified: 2
Accomplishments
VideoSegment.title 字段定义为 Optional[str],支持有标题和无标题分段
@field_validator 验证标题长度不超过 15 字,超过时抛出 ValueError
SEGMENTATION_PROMPT 包含标题生成指令(第 6 点和输出格式说明)
测试验证标题生成、标题省略、标题长度验证
Task Commits
Each task was committed atomically:
Task 1: 实现标题生成功能 - 8c2b3e0 (feat)
Plan metadata: (pending final commit)
Files Created/Modified
kb_workflow/srt/semantic_engine.py - 语义分段引擎模块,包含 VideoSegment 和 SegmentationResult Pydantic 模型,标题长度验证器
tests/test_semantic_engine.py - 测试套件,包含标题生成和验证测试
Decisions Made
标题验证:使用 Pydantic @field_validator 在字段级别验证标题长度
标题生成策略:LLM 自主判断,Prompt 中明确"主题/章节类型生成标题,论点/观点类型不加标题"
标题长度限制:不超过 15 字,验证器中提供清晰的错误消息
Deviations from Plan
None - plan executed exactly as written.
Issues Encountered
测试数据问题 :创建 15 字测试字符串时遇到汉字计数问题,通过使用简单数字汉字解决("一二三四五六七八九十十一二十三")
start_index 约束 :现有 VideoSegment 模型中 start_index 有 ge=1 约束,测试中需要使用 start_index=1 而非 0
User Setup Required
None - no external service configuration required.
Next Phase Readiness
标题生成功能已完成,可被后续计划使用
Pydantic 模型和验证器已建立,可扩展用于其他字段验证
测试框架已就绪,可添加更多测试场景
Phase: 13-llm, Plan: 04
Completed: 2026-03-22