ChatGPT 系列之 bilingual_book_maker: 1个小时生成一本中英双字的小说是什么体验?

bilingual_book_maker

在我刚接触 ChatGPT 时我就在推上看到有同学在分享自己使用 bilingual_book_maker 这个脚本的经历了,只需要系统中配置好 OpenAI API Keys、Python 以及正常的 proxy 环境即可用1小时20分翻译生成一本自动排版的中英文 epub 小说,真的是正!

bilingual_book_maker 是一个基于 OpenAI 的 AI 翻译脚本,可以帮助用户制作多语言版本的 epub 文件和图书。该工具仅适用于翻译进入公共版权领域的 epub 图书,不适用于有版权的书籍。

以上是自动生成的双语 epub 小说截图,前面是原文,后面是中译文,在使用这款脚本前需要准备一下,很简单的:

  1. 注册 ChatGPT 然后搞到 OpenAI token
  2. 准备 epub 小说
  3. 能正常联网的环境带 proxy
  4. Python 3.8+

怎么配置 Python 我就不在本文介绍了,如果你不想折腾,可以直接装了 Docker。

使用(官方提供的)

  1. pip install -r requirements.txt(这一步是装一些需要的模块)
  2. 使用 --openai_key 指定 OpenAI API key,如果有多个可以用英文逗号分隔(xxx,xxx,xxx),可以减少接口调用次数限制带来的错误。 或者,指定环境变量 OPENAI_API_KEY 来略过这个选项。
  3. 本地放了一个 test_books/animal_farm.epub 给大家测试
  4. 默认用了 GPT-3.5-turbo 模型,也就是 ChatGPT 正在使用的模型,用 --model gpt3 来使用 gpt3 模型
  5. 使用 --test 命令如果大家没付费可以加上这个先看看效果(有 limit 稍微有些慢)
  6. 使用 --language 指定目标语言,例如: --language "Simplified Chinese",预设值为 "Simplified Chinese". 请阅读 helper message 来查找可用的目标语言: python make_book.py --help
  7. 使用 --proxy 参数,方便中国大陆的用户在本地测试时使用代理,传入类似 http://127.0.0.1:7890 的字符串
  8. 使用 --resume 命令,可以手动中断后,加入命令继续执行。
  9. epub 由 html 文件组成。默认情况下,我们只翻译 <p> 中的内容。 使用 --translate-tags 指定需要翻译的标签。使用逗号分隔多个标签。例如: --translate-tags h1,h2,h3,p,div
  10. 如果你遇到了墙需要用 Cloudflare Workers 替换 api_base 请使用 --api_base ${url} 来替换。 请注意,此处你输入的api应该是’https://xxxx/v1‘的字样,域名需要用引号包裹
  11. 翻译完会生成一本 ${book_name}_bilingual.epub 的双语书
  12. 如果出现了错误或使用 CTRL+C 中断命令,不想接下来继续翻译了,会生成一本 ${book_name}_bilingual_temp.epub 的书,直接改成你想要的名字就可以了
  13. 如果你想要翻译电子书中的无标签字符串,可以使用 --allow_navigable_strings 参数,会将可遍历字符串加入翻译队列,注意,在条件允许情况下,请寻找更规范的电子书

如果你想快速测一下

python3 make_book.py –book_name test_books/animal_farm.epub –openai_key ${openai_key} –test

你可以先用这个命令测试一下是否可以正常跑这个脚本,–openai_key ${openai_key} 直接改成 –API Key

或翻译完整本书

python3 make_book.py –book_name test_books/animal_farm.epub –openai_key ${openai_key} –language zh-hans

没问题的话可以执行这个完整的命令。

我在执行翻译动物农场这本英文原版小说时,会偶尔遇到这个提示:

Rate limit reached for default-gpt-3.5-turbo in organization org-VFvb2w8CUNUU40toitmNdiVI on requests per min. Limit: 20 / min. Current: 30 / min. Contact support@openai.com if you continue to have issues. Please add a payment method to your account to increase your rate limit. Visit https://platform.openai.com/account/billing to add a payment method. will sleep  60 seconds

应该是超过了 gpt-3.5-turbo 的限流上限了,不过不影响翻译进程,只是在提醒你为不影响翻译速度可以付费购买 Plus 提高速度了。

整个小说翻译历时 1 小时 20分钟,打开 OpenAI 后台看看 API Tokens 用量记录,累计花费了 $0.4。

为什么我的账号默认只提供 5 美元的试用量呢?

欢迎大家到应用自荐版块上传自己的 OpenAI 以及其他人工智能应用,我们会根据作品质量直接推送到首页进行介绍!

👉👉👉  直达电梯 👈👈👈

bilingual_book_maker
评论