
使用AI翻译电子书
需要三个部分:calibre电子书管理工具、ebook translator翻译插件、一个AI语言模型的API接口。
1、下载安装calibre电子书管理工具
https://calibre-ebook.com/download
根据自己电脑的系统下载对应版本并安装在自己的电脑上。
2、下载ebook translator翻译插件
https://github.com/bookfere/Ebook-Translator-Calibre-Plugin/releases
3、在calibre中添加ebook translator翻译插件
打开calibre,在主界面上方靠右侧依次点击进入“首选项——高级选项/插件”,在插件页面右下角点击“从文件加载插件”。加载完成后,重启calibre。此时若在主界面右上方可以看到“翻译书籍”图标,表示插件安装成功。
点击翻译插件图标的下拉箭头,可以看到一些设置,可以根据自己的需求调整。
有三个页面,“通用”、“引擎”、“内容”,中间的“引擎”页面是我们后面需要设置的。
目前可以看到里面内置了一些翻译引擎,那些需要配置api key的是付费的,不需要api key的可以直接使用,如果只需要精度不高的翻译,满足日常阅读的需求,可以使用google(free)或Microsoft edge(free)。若需高质量的翻译,需要添加AI。
4、无论我们使用哪个品牌的AI,我们都需要三个内容:
1) Api接口地址
一个网址,格式类似https://xxxxxxx.com/xxxxxxx/v1/chat/completions
2) Api key,
这是应用程序接口密钥,一般是一长串的字符xx-xxxxxxxxxxxxxxxxxxx(格式不一定);
3) 调用的模型名称
例如:deepseek v3或gpt 4o等
5、以deepseek例,获取调用ai三要素:
1) 注册和登录
进入deepseek 平台(可以通过网页搜索找到其他ai的api平台,chatgpt api、grok api等)
https://platform.deepseek.com/
注册账号并登录deepseek开放平台,先不要充值,许多ai品牌有免费赠送的流量,基本都够可以翻译整本书。另外,在ai的网页版免费使用,测试一下翻译效果,十分满意再充值,不十分满意立即更换厂家。
2) 创建api key
找到Api key一栏,点击进入,创建一个api key。注意,创建的api key要立即复制并保存,很多平台只提供一次可见,并不要提供给他人。
3) 查看接口文档,找到可调用的模型名和接口地址url
这时我们可能会看到复杂的代码页面,没有编程基础的弟兄姐妹也不必担心,我们不需要明白这些代码,但可以找看到我们所需要的内容。
Deepseek的api 文档页面提供这样一个调用说明:
deepseek-chat 模型已全面升级为 DeepSeek-V3,接口不变。
通过指定 model='deepseek-chat' 即可调用 DeepSeek-V3。 deepseek-reasoner 是 DeepSeek 最新推出的推理模型 DeepSeek-R1。 通过指定 model='deepseek-reasoner',即可调用 DeepSeek-R1。 调用对话 API 在创建 API key 之后,你可以使用以下样例脚本的来访问 DeepSeek API。样例为非流式输出,您可以将 stream 设置为 true 来使用流式输出。 curl python nodejs curl https://api.deepseek.com/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer <DeepSeek API Key>" \ -d '{ "model": "deepseek-chat", "messages": [ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Hello!"} ], "stream": false }'
我已经用红色标出了我们需要的部分,
一个是在“model=”后面的模型名,可以看到有两个,deepseek-chat,deepseek-reasoner,我们需要的是前者,:deepseek-chat,就是调用DeepSeek V3,而不是R1(R1会输出思考过程,翻译并不需要)
一个是调用的地址
https://api.deepseek.com/chat/completions \
至此,我们已经拥有了调用AI的三要素:api key、模型名、api接口地址。我们只需要回到carlibre中添加这些要素。
6、在calibre的翻译插件中自定义ai
再忍耐以下,马上就完成了。
1) 修改并复制以下代码。
这一步是将前面的三要素填入相应位置,只需要替换注意红色字体部分,模型名需要填入两个位置,第一行的name后面,和靠后的model后面。
注意:红色的中文字是使用国产ai的时候用的,如果用chatgpt,用英文更好。这部分是“提示词”,是可以修改的,如果翻译内容不理想,可以尝试修改这部分。我个人的意见,不要太复杂,越复杂问题越多。但如果ai使用经验,也可以提出更多更明确的要求。
{ "name": "deepseek-chat", "languages": { "source": { "English": "english" }, "target": { "中文": "ZH" } }, "request": { "url": "https://api.deepseek.com/chat/completions", "method": "POST", "headers": { "Content-Type": "application/json", "User-Agent": "Ebook Translator", "Authorization": "Bearer xxxxxxxxx 此处填入你的api key xxxxxxxxxxxxx" }, "data": { "messages": [ { "role": "user", "content": "你是一个翻译专家,精通各国语言,通晓各个专业领域。你将翻译一本电子书,你的翻译要准确、流畅,注意专有词汇,只要翻译给你的文本,不要添加内容,不要附加说明,将文本从 <source> 到<target>,文本:<text>" } ], "model": "deepseek-chat" } }, "response": "response['choices'][0]['message']['content']" }
2) 添加自定义ai
这是最后一步了,复制以上修改好的代码。打开calibre,点击主界面“翻译书籍”旁边的下拉箭头,进入“设置-引擎-自定义-添加”。这时,我们会看到一个代码框,里面有基本的代码格式,不要管它。将我们的代码复制粘贴,完全替换里面的代码。
点击下面的“验证”,如果出现“有效的引擎数据格式”,就说明代码格式没有问题,然后点击保存。如果出现“引擎数据必须是有效的json格式”则说明代码格式有问题,也许是引号不小心被删除了,就是修改红色字的时候可能删掉了其他字,或者加入了回车换行,仔细检查以下。
代码保存后关闭代码框,回到“引擎”选项卡,有下拉菜单,可以看到刚保存的deepseek-chat,选中它,点击测试,然后点击下面的“翻译”,等待数秒,如果出现“Hello World!”理想的翻译结果,如“你好,世界”,则表示设置陈工,关闭测试页,点击保存即可。
测试时可以在“Hello World!”位置填入一段复杂的英文,如果翻译不理想,可以修改代码中的提示词,或更换ai。
7、正式工作
1) 添加书籍
在calibre主界面,上方左侧点击“添加书籍”,可以是文档或任意常见的电子书格式。(pdf或图片式的有可能出问题,扫描本很可能识别不出)。
2) 开始翻译
选中所添加的文档或电子书,点击“翻译书籍”(不是下拉箭头),等待数秒,会出现准备界面,会出现自动划分的段落,可以直接点击“翻译全部”,也可以按需要选择翻译。
3) 校对和导出
在翻译结束后,可以手动校对。
校对结束后,右上角有输出功能,选择输出格式后,点击输出,等待一段时间即可。
8、翻译引擎出现问题可能的原因:
1) Ai服务器拥挤,反应慢,或厂商设置的流量限制,这时需要在引擎页面下调整“并发数”、“时间间隔”、“重试次数”、“超时时间”,
目前deepseek没有流量限制,但服务器拥堵,长时间没有回应,需要把超时时间调大,例如300。
其他厂家可能需要设置并发数,例如并发数15,就是每次发送15条;隔调到60,就是每60秒发送一次。重试次数不需要太高,2-3次即可。
2) Ai服务器所在地受政治政策影响,敏感内容不予回馈。在校对时手动翻译,或切换其他国家ai。