一款基于【mtool】或【Translator++】,chatgpt自动批量翻译工具,主要是用来翻译各种RPG游戏。
教程视频:https://www.bilibili.com/video/BV18c411K7WN
下载地址:https://github.com/NEKOparapa/AiNiee-chatgpt/releases
-
python环境:到官网https://www.python.org/downloads/windows/ 下载合适的版本安装,建议安装3.10及以上,记得安装到最后勾选“Add Python to PATH”或其他类似意思选项(不要安装3.8,会无法兼容,出自某位群友的经历)
-
魔法工具:自己得弄个好的代理环境,设置全局代理或者其他方式,不然api接口会频繁报错无法连接,错误代码443或者一直没有回复。
-
【Mtool】或者【Translator++】: 【Mtool】下载地址:https://afdian.net/a/AdventCirno?tab=feed ··· 【Translator++】 下载地址:https://dreamsavior.net/download/ 两者免费版本就可以,新人推荐mtool,如果希望能够自行校正,构建用户词典,获得更好的翻译效果,推荐Translator++
-
API_Key:新建一个,并且最好在使用期间不要和其他程序一起使用,不然容易达到请求次数限制。现在有很多店铺卖10-30的120美元余额的key或者账号,可以翻译十几个游戏(我没有店铺,别找我买)
-
IDE软件:能运行python的IDE软件如vscode https://code.visualstudio.com/ pycharm等等 。
-
AI相关库和UI相关库:打开cmd,分别输入下面每行代码后回车,这里都使用清华源来下载。
pip install openai -i https://pypi.tuna.tsinghua.edu.cn/simple
pip3 install PyQt5 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install "PyQt-Fluent-Widgets[full]" -i https://pypi.org/simple/
pip install openpyxl -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install -U sentence-transformers -i https://pypi.tuna.tsinghua.edu.cn/simple
第一次使用该工具,会自动安装上面的依赖库,如果已经安装了,则会很快结束。
安装过程中如果报错了,可重新运行,还是无法解决,请根据报错内容进行解决,或者手动安装上面的AI相关库和UI相关库。
【 启用该平台】 如果使用该平台的AI进行翻译,请勾上
【 账号类型 】是你账号类型,免费用户基本只能并发两三个线程翻译任务,而付费用户可以并发几十个,大幅缩减翻译时间。
【 模型选择 】默认都是GPT3.5,如果你的账号获得了GPT4的使用资格,请选择付费账号(48h后)和模型gpt-4来进行翻译,并且可以把Lines设置为80。
【 API KEY 】填入你的api_key
【 代理地址 】可以不输入,如果需要设置代理时,再则填入http://<代理ip>:<代理端口>,示例:http://127.0.0.1:10081
【 API KEY 】填入国内代理平台给你生成的API KEY
【 域名地址 】填入国内代理平台提供的请求地址,如OpenAI-sb平台提供的请求地址是api.openai-sb.com,则填入:https://api.openai-sb.com/v1
导出原文1 | 导出原文2 |
【 Lines 】是每次请求翻译的文本行数。行数设置越大,整体的翻译效果会更好,上下文更加流畅,但每次请求回复速度会越慢,回复的内容越容易出错,建议gpt3.5模型不要设置超过50,gpt4模型不超过90。
【 错行检查 】是针对AI回复内容的检查功能,因为AI在翻译时有时会把上下文一起翻译,并放到一个文本行中,导致回复的文本错行,对不上原文。开启这个功能,会对AI回复内容进行检查,会增加时间和花销,追求翻译质量可开。
【 Prompt 】是系统提示词,用于告诉chatgpt任务目标的命令语。希望大家有空去探索一下Prompt的写法,如果写得越好,AI酱就能更能准确回复译文格式,以你想要的写作风格进行翻译。只要在Prompt里加上"以json文件格式回复译文",程序就能够处理。
【 文件位置 】是选择你需要翻译的原文文件,也是ManualTransFile.json文件
【 输出文件夹】是选择翻译后文件的存储文件夹
控制台输出日志 | UI界面输出状态 |
这个过程比较煎熬,通常我翻译1mb的json文件,就得花一个小时左右,免费玩家就是这样的,而付费玩家,使用多线程功能,可以基本在20分钟左右翻译完成。
控制台输出日志 | UI界面输出状态 |
新建工程1 | 新建工程2 |
新建工程3 | 新建工程4 |
当弹出提示框,问你:“Do you also want to load JavaScript files ”时,选择“Cancel”,加载脚本里的文本修改容易出错,而且大多都是脚本注释,翻译了也没用
汉化设置1 | 汉化设置2 |
导出工程1 | 导出工程2 |
当弹出提示框,问如何处理标记列,就点击红色和选择“Do not process row with selected tag”,或者不设置,直接导出,因为这工具暂时存在bug,无法过滤标记内容。
【 项目文件夹】 选择之前T++导出的项目文件夹data
【 输出文件夹】 选择翻译后项目文件夹的存储文件夹
翻译中的备份会在在Backup Folder文件夹的data里。
导入工程1 | 导入工程2 |
if (this.tags) {
if (this.tags.includes("red")) this.cells[1]=this.cells[0];
}
处理错误1 | 处理错误2 |
修改游戏1 | 修改游戏2 |
-
如果希望翻译从其他语言到中文,可以尝试修改Prompt词,把“日语”换成源语言,英语除外,因为已经被设置过滤了。
-
关于Mtool项目的实时备份功能。进行Mtool项目翻译时,运行中会实时输出TrsData.json和ManualTransFile.json存储在Backup Folder文件夹里,Backup Folder文件夹里面的ManualTransFile.json是还没有翻译的数据,TrsData.json是现在已经翻译好的数据。如果因为意外中断了,把文件夹里的文件A(TrsData.json)放置其他地方保存,再选择备份文件夹里面的ManualTransFile.json开始翻译,生成新的文件B(TrsData.json)。然后把文件B里的数据复制粘贴到文件A里面。
-
关于Translator++项目的实时备份功能。运行中会实时输出data文件夹存储在Backup Folder文件夹里,在每个表格里,如果原文文本已经被翻译,译文会写在第二列,如果没有被翻译,则第二列继续为空。所以出现意外时,可直接选择备份文件夹里data文件夹来继续翻译。
-
词义检查。是原文与译文的词义相似度检测功能,用来判断译文是否翻译错误,以解决AI翻译时错行的问题。开启这个功能会耗费一段不短的时间进行检查,而且会将错误内容进行重翻译,也会增加开销,而非常非常吃性能,性能越好,速度越快,CPU利用率会达到100%,请慎重使用!!!!!!!这个功能使用到了huggingface上的开源模型multilingual-MiniLM-L12-v2,第一次使用时会下载500mb的模型文件在C盘的.cache文件夹中,之后使用就不用了。
-
经过几个版本的优化,从以前的翻译1mb大小json文件花费3刀左右,已经减少到1.5刀左右,所以大家在进行翻译前,掂量一下自己的账号余额。
-
特别注意,在翻译到最后99%时,因为要处理难翻译的文本,所以要处理蛮长一段时间,输出日志更新很慢,要保持耐心等待。除非频繁报错。
-
虽然有点编程基础,但还是第一次用python写程序,不是相关从业者,写法奇奇怪怪莫要怪。后续我不知道有没有时间去更新维护。既然已经开源了,就交给其他大佬了
-
AI酱实在太厉害啦,一边写一边问她,什么都能回答,帮我写,帮我改bug,heart,heart,heart。
-
建了一个QQ交流群821624890,群里只用于反应bug,功能建议,以及prompt词交流,不要分享各种游戏资源,发黄键镇
一个根据MTool导出其翻译结果用GPT翻译的项目 https://github.com/XHXJ/json-GPT-translator
对已解包的GalGame脚本文件实行ChatGPT自动化翻译 https://github.com/Lilyltt/GalUpTs
该款AI翻译工具仅供个人合法用途。任何使用该工具进行直接或者间接非法盈利活动的行为,均不属于授权范围,也不受到任何支持和认可