使用 LLM 大模型对语音识别结果重新断句
为了提升字幕断句的自然度和准确性,pyVideoTrans 从 v3.69 版本开始,引入了基于 LLM (大型语言模型) 的智能断句功能,旨在优化您的字幕处理体验。
背景:传统断句的局限
在 v3.68 及更早版本中,我们提供了一个“重新断句”功能。该功能在 faster-whisper
、openai-whisper
或 deepgram
完成初步语音识别后,会调用阿里模型对已生成的字幕进行二次切分和断句。
原有的“重新断句”功能也存在一些不足:
- 首次使用不便:需要在线从 ModelScope 下载三个较大的模型文件。
- 效率与效果欠佳:处理速度较慢,且断句效果有时仍不理想。
尽管 faster-whisper
等模型本身就能输出断句结果,但在实际应用中,常常会出现句子过长、过短或断句生硬等问题。
革新:v3.69+ 引入 LLM 大模型智能断句
为了解决上述问题,从 v3.69 版本起,我们将“重新断句”功能全面升级为 LLM重新断句。
工作原理: 当您使用 faster-whisper(本地)
、openai-whisper(本地)
或 Deepgram.com
进行语音识别,并启用了新的大模型重新断句功能,且已在 翻译设置 - OpenAI API 及兼容 AI 中正确配置了模型、API Key (SK) 等信息后:
- pyVideoTrans 会将识别到的包含单词级时间戳的完整文本内容一次性发送给您配置的 LLM。
- LLM 会根据
/videotrans/recharge-llm.txt
文件中的提示词 (Prompt) 指导,对文本进行智能断句。 - 断句完成后,结果将被重新整理为标准的 SRT 字幕格式,供后续翻译或直接使用。
启用“大模型重新断句”的必要条件
要成功启用并使用此功能,请确保满足以下条件:
勾选启用:在软件界面中,选中 LLM重新断句 选项。
指定语音识别模型:语音识别引擎必须是以下三者之一:
faster-whisper(本地)
openai-whisper (本地)
Deepgram.com
选择语音切割模式:需设置为
整体识别
。配置 LLM API:在 菜单 -> 翻译设置 -> OpenAI API 及兼容 AI 中,正确填写您的 API Key (SK)、选择模型名称,并设置其他相关参数。
重要注意事项:Token 长度限制
为了降低复杂性,当前版本会将整个音视频识别到的字幕信息一次性发送给 LLM 进行断句,而没有采用分批处理。
这意味着,如果您的音视频文件过长,导致断句后的文本,超出了所选 LLM 模型的最大输出 Token (Max Output Tokens) 限制(许多模型默认为 4096 tokens),则输出会中断,从而引发错误。
如果 LLM 重新断句失败,软件将自动回退,使用 faster-whisper/openai-whisper/deepgram
自身提供的断句结果。
如何避免因输出超长导致断句失败?
您可以根据所使用 LLM 模型的具体能力,调整其最大输出 Token 限制。
注意必须是最大输出token(Max output token),而非
上下文token
,通常上下文长度很大,如128k,256k, 1M等,而 最大输出token远小于上下文token,一般为 8k(8092) / 32k(32768)等.
在 翻译设置 -> OpenAI API 及兼容 AI 界面中,找到 最大输出token设置项,默认值为 4096
- 例如,如果您使用的是
deepseek-chat
(即deepseek-v3) 模型,其支持的最大上下文长度是 8k即8 x 1024=8092
,您可以相应设置此数值为8092
。 - OpenAI 的
gpt-4.1
系列模型支持高达 32768 最大输出 tokens , 你可以填写32768
操作步骤:
- 查询您选用的 LLM 模型支持的最大输出 Token 数量(注意必须是最大输出token,而非上下文token)。
- 将查询到的数值(注意去掉数字中的逗号)填写到 pyVideoTrans 的“最大输出token”设置框中。
如何查询不同模型的最大输出 Token?
1. OpenAI 系列模型
您可以在 OpenAI 官方模型文档中查看各模型详情: https://platform.openai.com/docs/models
- 点击您计划使用的模型名称进入详情页。
- 查找 "Max output tokens" 等相关描述。
2. 其他兼容 OpenAI 的模型
对于其他兼容 OpenAI API 的大模型提供商,其最大输出 Token (非上下文长度) ,通常会在其官方API文档或模型说明中列出。
- DeepSeek (例如
deepseek-chat
或deepseek-reasoner
): 查阅其定价或模型说明页面,如:https://platform.deepseek.com/api-docs/pricing
硅基流动 (SiliconFlow): 在其 模型文档中查找:https://docs.siliconflow.cn/cn/faqs/misc#2-%E5%85%B3%E4%BA%8Emax-tokens%E8%AF%B4%E6%98%8E
阿里百炼: 在模型广场或模型文档中查找具体模型的参数限制:https://help.aliyun.com/zh/model-studio/models
其他均类似,只需要注意是最大输出长度或最大输出token,而非上下文长度。
重要提示: 请务必找到所使用模型的最大输出tokens,而非上下文token,并将其正确填写到 pyVideoTrans 的设置中。