FishHawk / auto-novel

轻小说机翻网站,支持网络小说/文库小说/本地小说
https://books.fishhawk.top/
GNU General Public License v3.0
241 stars 28 forks source link

更新计划 #1

Open FishHawk opened 1 year ago

FishHawk commented 1 year ago

See https://books.fishhawk.top/forum/64f3e280794cbb1321145c09

LaneSun commented 8 months ago

我想问下那个Sakura模型是什么,是看版娘吗?还是用来处理什么的神经网络模型?

FishHawk commented 8 months ago

我想问下那个Sakura模型是什么,是看版娘吗?还是用来处理什么的神经网络模型?

是一个群友做的翻译特化神经网络模型。本来是做Galgame的,但最近测试翻译小说也很稳定了。

现在openai的审查越来越严,依赖GPT不靠谱,计划是朝自己部署模型的方向做。

LaneSun commented 8 months ago

话说 Sakura模型 自部署会不会很困难?

我昨天看了下大概要占用 26 GiB(顶峰)的显存,至少是两张 T4 卡,成本会不会有些太高了?(虽然效果看上去是真的好。。。)

与之相比,我觉得可以考虑 Marian网络,这是一个可以在 CPU 上跑的网络,而且火狐和欧盟合作在这个网络之上开发了个 WebAssembly 的本地翻译器 Bergamot,这意味着服务器只需要托管一个很小的网络权重,然后所有的翻译都交给用户浏览器自行处理(这个项目在最新的 Firefox 118 上已经开始实际使用了,作为火狐一直缺失的内置翻译提供,完全本地化,而且快到离谱的翻译,当时震撼了我好久。。。)。

这样的话,我觉得应该有充足的算力将所有收录的小说都翻译一遍(无论是服务器自己翻译还是客户端),甚至是全新的小说也可以在客户端用一次点击、几十秒之内全部翻译,对提升性能、节约成本有很大帮助。

另外轻小说特化的 Marian网络 基本上效果肯定会超过百度、有道等等(GPT大概不可能),而且这个也是未来 Bing翻译 背后的模型。

所以我觉得长期部署的翻译服务可以考虑用 Marian 实现(用于提供快速、可靠的翻译结果),而更高质量的翻译则可以用 Sakura模型实现,通过提供示例的 HuggingFace 工作区供会使用的用户自行拷贝,然后在本站输入 API 来翻译。

LaneSun commented 8 months ago

除此以外,还有一个 Meta 的专项项目 NLLB(No Language Left Behind),这是另一个对翻译特化的神经网络,相比于 Marian 更重量级,但比 Sakura 更轻量(但最新的模型好像突然变大了。。。),也可以考虑一下,作为 GPT3.5 的快速/本地版本提供。

FishHawk commented 8 months ago

谢谢分享,浏览器直接跑有点意思,之后我研究研究。卡到不是问题,Sakura有4bit量化版本,性能没有明显下降,3090也可以跑。

FishHawk commented 8 months ago

Bergamot的思路很有意义,但我看了下不支持中文。

Marian这个模型你有试过翻译吗?效果怎么样?以它的大小我很怀疑效果,感觉不会比百度强。

至于NLLB,用huggingface测试了一下: 日文:幾つもの影が鬱蒼と茂る森の中に浮かび上がる。入念に臭いを落とした特殊な黒衣に身を包む面を被った人影達が佇む。 NLLB:阴影出在阴暗的天空和茂密的森林中. 那些穿着特别的黑色衣着,着着着面的影子,着着着着臭味的脸. 这个质量太差了,也看不到潜力,在中日翻译这方面我个人认为没必要研究它。

LaneSun commented 8 months ago

Bergamot的思路很有意义,但我看了下不支持中文。

Marian这个模型你有试过翻译吗?效果怎么样?以它的大小我很怀疑效果,感觉不会比百度强。

至于NLLB,用huggingface测试了一下: 日文:幾つもの影が鬱蒼と茂る森の中に浮かび上がる。入念に臭いを落とした特殊な黒衣に身を包む面を被った人影達が佇む。 NLLB:阴影出在阴暗的天空和茂密的森林中. 那些穿着特别的黑色衣着,着着着面的影子,着着着着臭味的脸. 这个质量太差了,也看不到潜力,在中日翻译这方面我个人认为没必要研究它。

Bergamot是Marian的上层包装,只是用来让Marian可以在浏览器运行使用的。

Marian我没试过,但有空我会来研究。

从翻译能力上比较,大规模语言模型网络(指GPT/Sakura/NLLB)> 一般深度学习网络(DeepL/Marian)> 概率学翻译引擎(百度/有道/Google),所以NLLB的效果其实应该是不错的,然而语料库对翻译效果也有绝大影响,所以看上去NLLB的效果很差。

我个人的倾向是实现 Sakura(高质量翻译,既然要质量就要最好的)和 Marian(快速翻译)这两个,而NLLB只是提下(既然Sakura量化版本的开销可控的话就没必要考虑了)。

理论上,如果使用日轻特化的语料库(或许可以从Sakura项目获得?),即使是概率学引擎也会有很好的效果,更不用说是用深度学习网络了,所以我觉得Marian的翻译效果是一定可以超过百度等的。

嘛,反正这也是个长期计划吧?有空我会来试下的,主要是Sakura的语料库我现在不知道从哪拿。。。

FishHawk commented 8 months ago

Sakura的数据是这位提供的

s4028600 commented 6 months ago

有可能在沒網路的情況下 用Sakura翻譯嗎

FishHawk commented 6 months ago

有可能在沒網路的情況下 用Sakura翻譯嗎

暂时不行,还在做,TODO里面的封pwa就是干这个的。

但是前一个月推sakura进度透支了大量时间,最近很忙,所以进度不会太快。

FishHawk commented 6 months ago

有可能在沒網路的情況下 用Sakura翻譯嗎

现在部分可以了。新版的文件翻译已经是完全跑在浏览器里面的了,只需要加载好网页就行。

如果环境连加载网页都做不到的话,建议去用sakura官方发布的翻译脚本。