跟着项目学 Python | OpenAI 翻译双语文档

Reference: 本教程的所有代码由 bilingual_book_maker 提供。

bilingual_book_maker 是一个 epub 格式电子书翻译项目,很好用,但很多朋友并不熟悉 Python 和 Github。本文提供一个简化流程,通过 Jupter Notebook 实现。

本教程依托于詹老师发起的「自闭症」康复教育行动。国内比较缺乏相关的资料,国外的知识体系比较发达,但欠缺中文翻译,且很多内容中国无法出版。该项目动员志愿者,通过 OpenAI、DeepL 和彩云翻译等软件,翻译一些相关资料,并非盈利性的共享给需要的群体。

想要尝鲜的,可以直接看最后一节,通过 Google colab 运行。不用配置环境,windows 和 macos 上的流程一样。需要注意:Colab 没有本地运行稳定,对网络的要求也高,如需进行几小时的翻译作业,容易被系统重置。还是更推荐在本地运行。

准备阶段

演示环境:Apple M2 Pro,Ventura 13.2.1 (22D68),Anaconda 2.4.0

下载 Anaconda,安装,并启动。

进入 bilingual_book_maker 项目的 Github 库,点击下图所示的 Download ZIP

解压缩该文件夹,文件夹名应该为:bilingual_book_maker-main。(非必要:将文件夹保存在一个你熟悉的路径下,方便随后的步骤)

将下面这个 Jupter notebook 文件(简化版双语书翻译.ipynb)复制到 「bilingual_book_maker-main 文件夹」中。

该文件也可以从 Github 中下载:https://github.com/DayuGuo/follow-project-learn-data-science

开始翻译

下图是 Anaconda 的主界面,点击 Jupter Notebook。

随后自动会激活「终端」,并在你的默认浏览器中启动 Jupter Notebook,界面如下。

然后,需要找到「bilingual_book_maker-main 文件夹」,进入文件夹,并双击启动刚刚下载的「简化版双语书翻译.ipynb」。

我们先使用 animal_farm.epub 来测试一下流程。

共有三段代码。

需要修改的部分,仅有下图中红色圈出的部分,请删除圈出的文字,并填入你的 API key。两边的空格请保留。

鼠标单击第一组代码,然后点击 Run,即可运行这一组代码。

依次运行这三组代码,即可开始翻译,正常运行的界面如下:

翻译过程中,不能关闭 Anaconda 软件、终端和浏览器,并需要保持网络通畅。

翻译你的电子书

将你要翻译的电子书,放置于 test_books 文件夹中,命名请尽可能简单,使用全英文,不使用符号。

将下图中的 animal_farm 替换为新书的文件名。

之后,您只需要启动第三段代码,即你修改过的这段代码,即可启动翻译程序。

通过 Googel colab 运行

注册一个 Google 账号。

点击这个 link:https://colab.research.google.com/drive/16Q6AZgjOaXWkD8Rcoh_oHrRrREjc8FBv?usp=sharing

填入你的 API,依次运行代码框,即可完成测试。

如果想要翻译自己的书,需要将书上传到下图所示的文件夹中,并更换代码中的书名(参考上面几章节的教程)。

14 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

  1. 您好,文中提到詹老师「自闭症」康复教育行动,在哪里可以具体了解下吗?我也想学习下,谢谢。

  2. 您好我想请教下,有没有什么合适的prompt可以用在这个项目上。按照默认的设置,翻译的结果总感觉不是很理想,虽然能读懂大致的含义但感觉用词不够优雅整洁。

  3. Traceback (most recent call last):
    File “C:\Users\lasx\Desktop\ebook-GPT-translator\bilingual-book-maker\make_book.py”, line 4, in
    main()
    File “C:\Users\lasx\Desktop\ebook-GPT-translator\bilingual-book-maker\book_maker\cli.py”, line 407, in main
    e.translate_model.set_gpt35_models()
    File “C:\Users\lasx\Desktop\ebook-GPT-translator\bilingual-book-maker\book_maker\translator\chatgptapi_translator.py”, line 316, in set_gpt35_models
    i[“id”] for i in self.openai_client.models.list().model_dump()[“data”]
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File “F:\ANACONDA\Lib\site-packages\openai\resources\models.py”, line 79, in list
    return self._get_api_list(
    ^^^^^^^^^^^^^^^^^^^
    File “F:\ANACONDA\Lib\site-packages\openai\_base_client.py”, line 1257, in get_api_list
    return self._request_api_list(model, page, opts)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File “F:\ANACONDA\Lib\site-packages\openai\_base_client.py”, line 1102, in _request_api_list
    return self.request(page, options, stream=False)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File “F:\ANACONDA\Lib\site-packages\openai\_base_client.py”, line 897, in request
    return self._request(
    ^^^^^^^^^^^^^^
    File “F:\ANACONDA\Lib\site-packages\openai\_base_client.py”, line 988, in _request
    raise self._make_status_error_from_response(err.response) from None
    openai.NotFoundError: Error code: 404 – {‘detail’: ‘Not Found’}
    显示这个,搞不清楚状况

    • 用 Google colab 试试吧,这个环境稳定一些,路径也简单。
      另外,现在直接用这个浏览器插件翻译更方便些:沉浸式翻译。

      • colad 第三部就出问题了,ERROR: file:///content (from -r /content/bilingual_book_maker/requirements.txt (line 1)) does not appear to be a Python project: neither ‘setup.py’ nor ‘pyproject.toml’ found.我就点了一下启动,其他都没动

        • 好像改版了,删掉`pip install -r /content/bilingual_book_maker/requirements.txt`,试试这个:`pip install -U bbook_maker`

          参考:https://github.com/yihong0618/bilingual_book_maker