Skip to content

使用 LLM 大模型对语音识别结果重新断句

为了提升字幕断句的自然度和准确性,pyVideoTrans 从 v3.69 版本开始,引入了基于 LLM (大型语言模型) 的智能断句功能,旨在优化您的字幕处理体验。

背景:传统断句的局限

在 v3.68 及更早版本中,我们提供了一个“重新断句”功能。该功能在 faster-whisperopenai-whisperdeepgram 完成初步语音识别后,会调用阿里模型对已生成的字幕进行二次切分和断句。

传统方式:对识别结果字幕切分断句

原有的“重新断句”功能也存在一些不足:

  1. 首次使用不便:需要在线从 ModelScope 下载三个较大的模型文件。
  2. 效率与效果欠佳:处理速度较慢,且断句效果有时仍不理想。

尽管 faster-whisper 等模型本身就能输出断句结果,但在实际应用中,常常会出现句子过长、过短或断句生硬等问题。

革新:v3.69+ 引入 LLM 大模型智能断句

为了解决上述问题,从 v3.69 版本起,我们将“重新断句”功能全面升级为 LLM重新断句

工作原理: 当您使用 faster-whisper(本地)openai-whisper(本地)Deepgram.com 进行语音识别,并启用了新的大模型重新断句功能,且已在 翻译设置 - OpenAI API 及兼容 AI 中正确配置了模型、API Key (SK) 等信息后:

  1. pyVideoTrans 会将识别到的包含单词级时间戳字/单词按每 3000 个发送给您配置的 LLM 进行重新断句。
  2. LLM 会根据 /videotrans/recharge-llm.txt 文件中的提示词指导,对文本进行智能断句。
  3. 断句完成后,结果将被重新整理为标准的 SRT 字幕格式,供后续翻译或直接使用。
  4. 如果 LLM 重新断句失败,软件将自动回退,使用 faster-whisper/openai-whisper/deepgram 自身提供的断句结果。

启用“大模型重新断句”的必要条件

要成功启用并使用此功能,请确保满足以下条件:

  1. 勾选启用:在软件界面中,选中 LLM重新断句 选项。 LLM重新断句

  2. 指定语音识别模型:语音识别引擎必须是以下三者之一:

    • faster-whisper(本地)
    • openai-whisper (本地)
    • Deepgram.com指定语音识别模型
  3. 选择语音切割模式:需设置为 整体识别选择语音切割模式

  4. 配置 LLM API:在 菜单 -> 翻译设置 -> OpenAI API 及兼容 AI 中,正确填写您的 API Key (SK)、选择模型名称,并设置其他相关参数。

调整优化LLM重新断句效果

  1. 工具--选项--高级选项--LLM重新断句每批次发送数量中调整数值,默认每 3000 个字或单词发送一次断句请求,该值越大,断句效果越好,但如果输出超过了所用模型允许的最大输出token,会引发错误。同时若增大该值,也需要相应调大下条所述的最大输出token默认每次发送3000个字或单词

  2. 可以根据所使用 LLM 模型允许的最大输出 Token,修改 菜单-->翻译设置 -> OpenAI API 及兼容 AI -> 最大输出token ,默认 4096,该值越大LLM重新断句每批次发送数量也允许越大。 默认最大输出token是4096,通常所有模型都支持

  3. 在软件目录下videotrans/recharge-llm.txt中可调整优化提示词,以取得更佳效果。 默认断句提示词

总结下:最大输出token 越大,允许的LLM重新断句每批次发送数量的字或单词也越多,断句效果就越好,但 最大输出token不得超过模型本身支持的值,否则必然报错。LLM重新断句每批次发送数量每个字或单词断句后对应的输出,可能需要消耗多个token,因此该值请谨慎缓缓增加,避免输出超过最大token导致错误。

如何查询不同模型的最大输出 Token?

注意必须是最大输出token(Max output token),而非上下文token,通常上下文长度很大,如128k,256k, 1M等,而 最大输出token远小于上下文token,一般为 8k(8092) / 32k(32768)等.

1. OpenAI 系列模型

您可以在 OpenAI 官方模型文档中查看各模型详情: https://platform.openai.com/docs/models

  • 点击您计划使用的模型名称进入详情页。
  • 查找 "Max output tokens" 等相关描述。

点击所使用的某个模型进入详情页

找到该模型支持的最大输出tokens,非上下文窗口

2. 其他兼容 OpenAI 的模型

对于其他兼容 OpenAI API 的大模型提供商,其最大输出 Token (非上下文长度) ,通常会在其官方API文档或模型说明中列出。

deepseek的最大输出token是8k即 8092

其他均类似,只需要注意是最大输出长度或最大输出token,而非上下文长度。

重要提示: 请务必找到所使用模型的最大输出tokens,而非上下文token,并将其正确填写到 pyVideoTrans 的设置中。

记得填写到正确位置