使用 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 会将识别到的包含单词级时间戳的
字/单词
按每 3000 个发送给您配置的 LLM 进行重新断句。 - LLM 会根据
/videotrans/recharge-llm.txt
文件中的提示词指导,对文本进行智能断句。 - 断句完成后,结果将被重新整理为标准的 SRT 字幕格式,供后续翻译或直接使用。
- 如果 LLM 重新断句失败,软件将自动回退,使用
faster-whisper/openai-whisper/deepgram
自身提供的断句结果。
启用“大模型重新断句”的必要条件
要成功启用并使用此功能,请确保满足以下条件:
勾选启用:在软件界面中,选中 LLM重新断句 选项。
指定语音识别模型:语音识别引擎必须是以下三者之一:
faster-whisper(本地)
openai-whisper (本地)
Deepgram.com
选择语音切割模式:需设置为
整体识别
。配置 LLM API:在 菜单 -> 翻译设置 -> OpenAI API 及兼容 AI 中,正确填写您的 API Key (SK)、选择模型名称,并设置其他相关参数。
调整优化LLM重新断句效果
在
工具--选项--高级选项--LLM重新断句每批次发送数量
中调整数值,默认每 3000 个字或单词发送一次断句请求,该值越大,断句效果越好,但如果输出超过了所用模型允许的最大输出token,会引发错误。同时若增大该值,也需要相应调大下条所述的最大输出token可以根据所使用 LLM 模型允许的最大输出 Token,修改 菜单-->翻译设置 -> OpenAI API 及兼容 AI -> 最大输出token ,默认
4096
,该值越大LLM重新断句每批次发送数量
也允许越大。在软件目录下
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" 等相关描述。
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 的设置中。