812f016b1b
- Add SemanticSegmenter and ASRCorrector to __all__ - Maintain lazy loading for optional dependencies Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
28 lines
724 B
Python
28 lines
724 B
Python
"""SRT Processing Module
|
|
|
|
B站字幕处理模块,包含:
|
|
- SRT 解析器 (parser)
|
|
- 语义分段器 (segmenter)
|
|
- ASR 纠错器 (corrector)
|
|
"""
|
|
|
|
from kb_workflow.srt.parser import parse_srt, parse_srt_file, Segment
|
|
|
|
__all__ = [
|
|
"parse_srt",
|
|
"parse_srt_file",
|
|
"Segment",
|
|
"SemanticSegmenter",
|
|
"ASRCorrector",
|
|
]
|
|
|
|
# 延迟导入,避免循环依赖
|
|
def __getattr__(name: str):
|
|
if name == "SemanticSegmenter":
|
|
from kb_workflow.srt.segmenter import SemanticSegmenter
|
|
return SemanticSegmenter
|
|
if name == "ASRCorrector":
|
|
from kb_workflow.srt.corrector import ASRCorrector
|
|
return ASRCorrector
|
|
raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
|