Skip to content

这个“大模型单句翻译”是什么东西?

Philip Wang edited this page Feb 17, 2025 · 1 revision

我的 VideoCaptioner 和卡卡的一个明显不同,就是有这个“大模型单句翻译”功能。

卡卡的程序里,翻译是要先总结,优化,再送十句翻译,然后以返回的句数判断是否翻译成功,如果翻译不成功,则重新用单句翻译。

我觉得这个过程实在太耗费token,同时翻译质量也没有提高多少,于是乎就搞了自己的“大模型单句翻译”

这里如果你选了“大模型翻译”,那就是走卡卡1.2.0一样的“总结,反思,优化,翻译”路线 如果选的是“大模型单句翻译”,那用的就是我自己写的“大模型单句翻译”

单句翻译的原理其实就是告诉大模型上一句的翻译是什么,然后根据上一句的原文和翻译,以及这一句的原文,给出这一句的翻译。在实践中觉得效果还不错。

其原理就是:一般的翻译错误都是因为大模型不知道上一句是怎么一回事,因为有时候句子在半路断掉,成为两行,这样我只要让大模型知道上一句是什么,那它就会知道下一句该怎么说。

卡卡的翻译原理是:把十句话直接发给大模型,然后大模型会给出这十句的翻译,但是很多时候大模型会任意修改句子长度,或者把两句合并成一句,因此出来的效果就不行了。结果有超过一半的翻译都要以单句翻译重做,然后重做的句子因为没有上一句的提示,就显得像是机器翻译的一样。

现在我基本上都是用“大模型单句翻译”,用本地的LLM,速度还可以,可以看到其进度。

这个“大模型单句翻译” 的问题就是因为每一句都会牵涉上一句,因此只能单线执行,如果用网络大模型如Deepseek等,会显得比较慢。

Clone this wiki locally