当前位置: 首页 > article >正文

【实践】基于SakuraLLM的离线日文漫画及视频汉化

介绍

LLM

大型语言模型(英语:large language model,LLM),也称大语言模型,是由具有大量参数(通常数十亿个权重或更多)的人工神经网络组成的一类语言模型。在进行语言理解与分析(如文本分类、信息抽取)后,可以赋能用于语言生成(含文本创作、对话、机器翻译)、知识问答与推理等工作。

Qwen2.5

Qwen2.5是一款由阿里根据自己的预训练策略、优化目标和数据筛选方法,不断迭代,开源的基础模型。

SakuraLLM

SakuraLLM也在不断的迭代。通过SakuraLLM的介绍主页我们知道SakuraLLM目前的发布版本基于Qwen2.5进行微调,其宗旨是提供可控可离线自部署的、ACGN风格的日中翻译模型。

实践

得益于SakuraLLM提供高于网络词典的翻译质量,我们可以配合其他工具,在免费非商用的前提下,为我们实现漫画翻译以及日语视频生成中午字幕这些满足个人娱乐的功能。

前置准备

首先说一下博主的机器配置

显卡 ROG STRIX GeForce RTX® 4080 16GB GDDR6X 猛禽

CPU i7-13700KF 

内存 32.0 GB

获取翻译模型

首先这里介绍一下模型中的大模型中0.5B, 1.5B, 3B, 7B, 14B, 32B是什么意思

这些数字(0.5B, 1.5B, 3B, 7B, 14B, 32B)通常表示大语言模型(如GPT、BERT等)中的参数数量,单位是十亿(B代表“Billion”)。参数是模型学习的关键部分,它们决定了模型的复杂性和能力。具体来说:

  • 0.5B 表示模型有 5 亿个参数。
  • 1.5B 表示模型有 15 亿个参数。
  • 3B 表示模型有 30 亿个参数。
  • 7B 表示模型有 70 亿个参数。
  • 14B 表示模型有 140 亿个参数。
  • 32B 表示模型有 320 亿个参数。

随着参数数量的增加,模型的计算能力和表示能力通常也会提高,但这也意味着需要更多的计算资源和数据来训练模型。大模型(如 GPT-3、GPT-4)通常有数百亿甚至数千亿个参数。

目前发布的正式版模型如下,参考上述我的设备规格目前我选用的是sakura-14b-qwen2.5-v1.0-iq4xs.gguf

模型显存大小模型规模
sakura-7b-qwen2.5-v1.0-iq4xs.gguf8G/10G7B
sakura-14b-qwen2.5-v1.0-iq4xs.gguf11G/12G/16G14B
sakura-14b-qwen2.5-v1.0-q6k.gguf24G14B

p.s. 如果无法连接到HuggingFace服务器,可将链接中的huggingface.co改成hf-mirror.com,使用hf镜像站下载。

安装Python

因为对于大模型的丰富生态支持,因此大多数工具都是基于Python来开发,因此我们需要在官方网站下载并安装python-3.12.4

启动模型

为了更简化操作,我用使用了SakuraLLMServer来启动模型,根据提示把翻译模型放到文件夹中启动即可。

文件结构如下

  SakuraLLMServer\llama\...
                    \00_Core.bat
                    \01_1280_NP16.bat
                    \sakura-14b-qwen2.5-v1.0-iq4xs.gguf
                    \...
显存大小模型规模启动脚本
8G/10G7B01_1280_NP16.bat
11G14B01_1280_NP4.bat
12G14B01_1280_NP6.bat
16G/24G14B01_1280_NP16.bat

结合我的配置启动01_1280_NP16.bat脚本即可

下面两个功能的使用默认已经做好前置准备

漫画翻译

一张漫画使用程序翻译大概需要通过日文识别、日译中翻译、译文漫画重嵌3个步骤。

遵从不使用第三方整合下载(防病毒)的原则自行部署,目前我部署成功的项目是BallonsTranslator: 深度学习辅助漫画翻译工具, 支持一键机翻和简单的图像/文本编辑,如果我们使用BallonsTranslator进行漫画翻译,那么他具体的操作流程如下

使用本文描述的的部署方式,不想自己手动配置环境,需要能正常访问互联网

1. 从 MEGA 或 Google Drive 下载 BallonsTranslator_dev_src_with_gitpython.7z,正常来说执行launch_win.bat即可。

1.1 但是因为各种原因,有可能项目相关的lib没办法正常下载,因此在上述描述的数据载体中下载data 和 ballontrans_pylibs_win.7z,下载并放到所属文件夹即可

2.打开应用后配置Sakura,因为项目本身早已对SakuraLLM进行对接,下面的参数默认即可

3.选择我们图片所在的文件夹点击RUN

应用日志

日语视频生成中文字幕

一个视频使用程序翻译大概需要通过让提取音频、识别音频提取对话内容、对话字幕进行日译中3个步骤。

目前我部署成功的项目是VoiceTransl,使用VoiceTransl进行字幕生成与翻译,那么他具体的操作流程如下

1. 根据提示下载最新版本的VoiceTransl

1.1 把sakura的模型放置到llama文件夹下

文件结构如下

_internal/llama/
sakura-14b-qwen2.5-v1.0-iq4xs.gguf

2. VoiceTransl本身不带语音识别模型的因此我们要自行下载 faster-whisper-large-v3 、DLL文件和EXE文件 ,放到whisper-faster文件夹下

文件结构如下

faster-whisper-large-v3/
    config.json
    model.bin
    preprocessor_config.json
    tokenizer.json
    vocabulary.json
cublas64_11.dll
cublasLt64_11.dll
cudnn_cnn_infer64_8.dll
cudnn_ops_infer64_8.dll
zlibwapi.dll
whisper-faster.exe

3. 设置模型

4. 选择需要翻译的视频

程序会在调用faster-whisper-large-v3提取音频内容后,自行调用sakuraLLm进行翻译

不过通过开源模型来进行识别音频,那么就代表了不一定能进行百分百的对话识别,如我使用的这个视频【IGN】PC版《最终幻想7 重生》游戏特性介绍视频识别到的对话内容大概只有60%,可能是因为有背景配乐的原因。因此要完整的视频字幕我们需要或多或少的给翻译的字幕文件进行对话内容步充。

AiNiee

这里我发现的一个问题,就是VoiceTransl自行调用模型文件进行翻译的效率比较一般,鉴于我对字幕srt文件的认识,他本质上是一个txt文件,因此我打算利用AiNiee对txt文件进行翻译,发现测试效率比VoiceTransl自己调用的方式高,使用AiNiee进行汉化的方式如下:

1. 下载并解压AiNiee

2. 使用SakuraLLM接口,设置项目类型为Txt小说文件,确保SakuraLLMServer已正常启动

2.  把字幕的.srt后缀改成的.txt文件后缀放到AiNiee的input文件夹,开始翻译即可,翻译成功后文件会放到output文件夹

感悟

目前开源大模型,更多的是适合给自己赋能,希望后续能通过更多的了解带来更多好玩的内容

参考:大型语言模型WIKI

Qwen2.5: 基础模型

【LLM】从零开始训练大模型

SakuraLLM

【VoiceTransl】离线AI全自动烤肉 支持多语言 支持字幕合成


http://www.kler.cn/a/524299.html

相关文章:

  • 网关登录校验
  • 未来无线技术的发展方向
  • wordpress代码结构解析
  • ResNeSt: Split-Attention Networks 参考论文
  • C语言实现统计数组正负元素相关数据
  • Versal - 基础3(AXI NoC 专题+仿真+QoS)
  • HarmonyOS:状态管理最佳实践
  • 联想Y7000+RTX4060+i7+Ubuntu22.04运行DeepSeek开源多模态大模型Janus-Pro-1B+本地部署
  • 中国股市“慢牛”行情的实现路径与展望
  • 如何将 Windows 上的文件传递到 Mac 上
  • Android-音频采集
  • Python 合并 Excel 单元格
  • 望获实时Linux系统:2024回顾与2025展望
  • 代码随想录算法训练营第三十九天-动态规划-198. 打家劫舍
  • 使用kitty terminal遇到的‘xterm-kitty‘: unknown terminal type.
  • 【Convex Optimization Stanford】Lec3 Function
  • 【C++题解】1056. 所有不超过1000的数中含有数字3的自然数
  • 2025年大年初一篇,C#调用GPU并行计算推荐
  • leetcode——二叉树的中序遍历(java)
  • 机器人基础深度学习基础
  • 记忆力训练day08
  • doris:HLL
  • 网络安全攻防实战:从基础防护到高级对抗
  • 园区管理系统如何赋能企业高效运营与资产全生命周期管理
  • 星际战争模拟系统:新月的编程之道
  • Javaweb入门-Maven项目学习(Day2)