subtitle-studio:DeepSeek Harness 下的多语言字幕翻译工作流

DeepSeek Harness (DSH) 的核心理念是「一切皆插件」。在进行自动化视频处理或多语言内容分发时,字幕的解析、翻译与合并是常见但繁琐的环节。subtitle-studio 是一个针对 DSH 的多语言字幕翻译工作流插件。它由 JohnXu22786 维护,基于 MIT 协议开源。该插件从零实现了字幕解析器,不依赖重型库,提供 SRT/VTT 解析、句子级 LLM 翻译、双语字幕合并、对齐校验以及批量处理能力。

核心功能

  1. 解析与写入:支持 SRT 和 WebVTT 格式。解析器采用容错状态机,能处理缺失序号、空白分隔符、CRLF 以及 UTF BOM(UTF-8/UTF-16LE/UTF-16BE)。输出强制为 UTF-8,毫秒级时间戳可无损回环。
  2. 句子级翻译:基于 LLM 的批处理请求,支持字符预算控制、JSON 模式、重试机制和术语表注入。默认对接 DeepSeek(OpenAI 兼容接口),也可通过配置接入其他 OpenAI 兼容端点。
  3. 双语合并:支持堆叠(原文在下)和交错(原文与译文交替)两种布局,可自定义分隔符和标签。
  4. 对齐校验:检查译文数量、缺失/多余条目、空译文以及时间轴重叠。
  5. 批量处理:支持目录级处理,包含并发控制、文件级重试、回退机制以及原子检查点文件,支持暂停/恢复。
  6. 双入口:提供 5 个 DSH 工具(sub_parse, sub_translate, sub_merge, sub_export, sub_glossary)以及一个无依赖的 CLI 工具。

安装与配置

前置要求:Node.js >= 18.18。插件本身零运行时依赖。

安装:在 DSH profile 中添加插件:

dsh plugin --profile <name> add subtitle-studio

安装后,插件会在 profile 中注册配置行,并注入相应的工具和服务。

关键配置项:插件通过 cordis.patch.yml 注入配置。以下是部分核心配置项说明:

  • LLM 配置:
    • llm.provider:HTTP 后端或 harness ctx.llm seam,默认为 openai。
    • llm.baseUrl:OpenAI 兼容接口地址,默认为 https://api.deepseek.com/v1。
    • llm.apiKey:API 密钥,支持环境变量展开。
    • llm.model:模型名称,默认为 deepseek-chat。
    • llm.chunkChars:单次请求的字符预算,默认 3500。
  • 语言配置:
    • sourceLanguage:源语言标签,默认为空(自动)。
    • targetLanguages:目标语言列表,默认为空。
  • 输出配置:
    • output.layout:双语合并布局,可选 stacked(堆叠)或 interleaved(交错),默认 stacked。
    • output.format:输出格式,可选 srt 或 vtt,默认保留源格式。
  • 批量与校验:
    • batch.concurrency:批量处理时的并发数,默认 2。
    • validation.maxChars:CJK 超长字幕阈值,默认 160。
    • validation.maxWords:拉丁语超长字幕阈值,默认 40。

使用方法

插件提供了两种使用方式:CLI 工具和 DSH 工具集。

CLI 使用:安装后可直接运行全局命令:

subtitle-studio --help

DSH 工具使用:插件注册了 5 个工具,可通过 DSH 的 ctx.tools 调用:

  1. sub_parse:解析字幕文件为 JSON 结构。
  2. sub_translate:调用 LLM 进行翻译。
  3. sub_merge:合并源字幕与译文。
  4. sub_export:导出为 SRT 或 VTT。
  5. sub_glossary:管理 JSON 术语表。

示例命令(需在 DSH 环境中执行):

# 调用翻译工具
dsh tools sub_translate --file input.srt --lang zh

适用场景与注意

适用场景:需要自动化处理多语言字幕的视频项目,或需要将字幕翻译集成到更大的 DSH 工作流中的开发者。

注意:插件以当前 DSH 进程的权限运行,涉及 API 调用和文件读写,请确保配置的 API Key 安全。安装前建议查看源码以确认许可证和依赖情况。

总结

subtitle-studio 提供了一套从解析到翻译、合并、校验的完整字幕处理链路。对于需要在 DSH 生态中集成字幕功能的开发者,这是一个直接可用的解决方案。插件源码与目录页见下方链接。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜