我是如何借助 AI 翻译英文文章的
自从今年二月份开始搭建自己的博客以来,我在 AI 的帮助下翻译了 100 多篇英文文章,这里给大家分享一下我的主要翻译 pipeline。在分享之前,我想先感谢一下大家都熟悉的博主——宝玉,他在推特上分享了大量 AI 相关的资讯,特别是他的三步翻译法,对我帮助很大。 我翻译英文文章的初衷是让优秀的文章可以被更多人看到,同时也方便自己留存,所以用准确恰当的中文来表达原文的含义是必要的,这点是沉浸式翻译做不到的,下面我来讲一讲我完整的翻译 pipeline。 第一步:获取文章正文 html 刚开始翻译英文文章的时候,我获取原文的方式简单粗暴,就是直接复制原网页上的内容,但缺点很明显,复制过来的内容丢失了原来的排版和格式,如果遇到包含图片的文章就更麻烦了,还需要把图片一个一个存下来,并插入到复制内容的原位置,工作量比较大切复杂。我解决这个问题的方案也很简单,在 chrome web store 上找一个能支持自动提取网页正文 html 的插件,因为html 里包含了各种标签,所以可以把版式和图片保留。这种插件很多大家可以自行搜索,也可以使用 FisherAI 插件。 这里我也简单介绍一下 FisherAI 插件,这是我年中的时候写的一款插件,说明一下这不是广告啊,因为没什么收费内容,当初写它的目的也是为了方便我自己使用而已,且它的源代码也开源了。写这个插件主要源于我对文章有自动总结和摘要的需求,看了市面上一些摘要插件,基本都无法满足我的需求。我想要的是不仅可以自动摘要,也可以聊天,也要支持工具调用,最重要的是要支持自定义使用的模型和 api key。至于提取网页正文 html 的功能正好是我的一个需求,就顺手加到了这个插件里。 第二步:使用三步翻译法进行翻译 所谓的三步就是:直译–>反思–>意译。我基于这三步翻译法创建了一个 ChatGPT 插件: TransLingo,它可以方便我调试 prompt 以及验证翻译结果的准确性。 对于短的文章,用这个插件翻译很方便,但遇到长文章就比较麻烦了,需要在插件的聊天窗口里点很多次继续,才能翻译完成,有的时候还由于文章太长被截断或失败的情况。对于长文章,有一个比较方便的解决方案,就是使用 Google AI Studio,因为 gemini 从一开始就支持 100 万 + token 上下文,特别适合长文翻译,且价格也很便宜,我最常用的模型就是 gemini-1.5-flash,这不今天 google 又放出来了 gemini-2-flash-exp,主打多模态,后续应该可以切换到这个模型上了。 下面也分享以下我在用的三步翻译 prompt,大家可以自行取用。 你是一位精通简体中文的专业翻译,尤其擅长将专业学术论文翻译成浅显易懂的科普文章。请你帮我将以下英文段落翻译成中文,风格与中文科普读物相似。 规则: - 翻译时要准确传达原文的事实和背景。 - 即使意译也要保留原始段落格式,以及保留术语,例如 FLAC,JPEG 等。保留公司缩写,例如 Microsoft, Amazon, OpenAI 等。 - 人名不翻译 - 同时要保留引用的论文,例如 [20] 这样的引用。 - 对于 Figure 和 Table,翻译的同时保留原有格式,例如:“Figure 1: ”翻译为“图 1: ”,“Table 1: ”翻译为:“表 1: ”。 - 全角括号换成半角括号,并在左括号前面加半角空格,右括号后面加半角空格。 - 输出格式为 Markdown 格式 - 在翻译专业术语时,第一次出现时要在括号里面写上英文原文,例如:“生成式 AI (Generative AI)”,之后就可以只写中文了。 - 遇到用figure包裹的img标签,只需保留img的src属性,其他属性如alt/loading/width/height/srcset等需要忽略掉。 - 以下是常见的 AI 相关术语词汇对应表(English -> 中文): * Transformer -> Transformer * Token -> Token * LLM/Large Language Model -> 大语言模型 * Zero-shot -> 零样本 * Few-shot -> 少样本 * AI Agent -> AI 智能体 * AGI -> 通用人工智能 * o1 -> o1 策略: 分三步进行翻译工作,并打印每步的结果: 1....