Coze 复刻吴恩达开源 AI 翻译神器 | 「智图派」

Coze 复刻吴恩达开源 AI 翻译神器 | 「智图派」

AI 最大的应用场景之一,就是翻译。虽然说现在的 AI 翻译比以前的机器翻译好了很多,但是常常还是不够完美。不过现在呢,有一种超强的方法可以显著提升 AI 翻译的水准,这就是 AI 界大神,吴恩达 Andrew Ng 教授最新开源的「反思工作流」

它利用prompt engineering,让AI不仅能翻译,还能"思考"如何改进翻译!这意味着,无论你要翻译的文档有多专业、多复杂,都能得到一个高度定制化的优质翻译。我们可以先看一下翻译效果。

吴恩达老师的反思翻译核心思路

吴恩达老师的翻译工作流可以归纳为两个核心要点:

第一,采用"初始翻译-反思-优化"的三步迭代流程,不断改进翻译质量。首先使用一个 AI 进行初始的翻译,然后让另一个 AI 对初始的翻译结果进行思考和评判,找出可以改进的地方,最后,由第三个 AI 根据反思结果,对初始翻译进行优化输出最终的翻译结果。

第二,引入分块和特定国家地区语言习惯指定,进一步提升翻译的细节品质。把很长的文章进行分块,一方面可以突破 AI 输出文本长度的限制,另一方面 AI 聚焦在一小段文本上的优化会有更高的精度。同时,为AI指定目标语言的国别(如英式英语、美式英语)和语言习惯,翻译会更贴合目标读者的文化背景。如果再加上语气以及术语表,将会使翻译结果更加精准。

总的来说,吴恩达老师的翻译工作流通过"反思"实现翻译的整体质量提升,通过"分块"和"习惯指定"实现翻译细节的精准优化。这两大创新点共同开创了一种全新的、高质量的AI翻译范式。

Coze AI 工作流简介

由于开源的项目是纯代码,用起来并不方便,因此我在 Coze 平台上完美复刻了吴恩达老师的反思翻译工作流。今天我将手把手教你如何在 Coze 平台上从零实现一个「反思型」AI 翻译的自动化工作流。跟着我一步步操作,你也能拥有一个强大的AI翻译助手!当然,你如果懒得动手,也可以直接在 Coze 的聊天机器人商店中搜索我的「超级翻译智能体」,一个是简洁版、一个是强力版,可以直接使用。这两个版本的区别就是,强力版可以对长文进行分块。

Coze 是一站式 AI Bot 开发平台。无论你是否有编程基础,都可以在 Coze 平台上快速搭建基于 AI 模型的各类问答 Bot,还可以发布到各类社交媒体,与大家互动。我们最初认识 Coze,就是它慷慨地提供了免费使用 GPT-4 Turbo 的额度,在我的 Coze 入门视频中有讲到。而它更强大的地方,在于我们可以制作复杂的工作流。

我们的「超级翻译智能体」的工作流,就用到了 Coze 工作流中各种高端特性,比如条件分支、代码块、批处理等等,我们先看一下整体的工作流以及运行效果。

超级翻译智能体工作流

这部分是吴恩达老师的反思翻译工作流的核心流程,也是用于我们的简洁版的「超级翻译智能体」的工作流,所以起名为 Super_Translation_Core,Core 就代表核心的意思。而具备分块功能的工作流,就是建立在这个核心工作流的基础之上。

工作流的输入参数

工作流接受 4 个输入参数,分别是源语言、目标语言、要翻译的文本以及最终的翻译结果应该符合哪个国家地区的语言习惯。

接下来的部分就是几个关键的翻译节点了。

工作流节点

初始翻译

首先是初始翻译的节点,这是一个 LLM 节点,也就是大语言模型节点。我们可以选择任何一个模型,比如 GPT 或者 Gemini,由于 Coze 对使用模型的额度是有一定限制的,因此当一个模型用超了之后,可以换一个模型继续使用。

PROMPT 很简单,就是要求 AI 把提供的文本翻译成目标语言,不要进行任何的解释,纯粹翻译就行,然后输出翻译后的文本。

This is an {{source_lang}} to {{target_lang}} translation, please provide the {{target_lang}} translation for this text. Do not provide any explanations or text apart from the translation.
{{source_lang}}: {{source_text}}


{{target_lang}}: 

消息节点

消息节点用于在工作流的执行过程中,向用户输出信息。由于我们的翻译工作流用到了三次 AI 翻译,因此速度必然会很慢,用户等起来容易丧失耐心,所以我们可以在初始翻译完成之后,把初始翻译的结果输出给用户,让用户知道工作流还在工作呢。当然,这一步是可选的。没有这一步也并不影响工作流的功能。

条件节点

工作流的输入参数中,有一项是参数是国家和地区,用于告诉 AI,翻译结果应该符合哪个地区的语言习惯,这一个参数是可选参数,大部分情况下是不需要的。而且,有没有这个参数,给 AI 的 PROMPT,提示词,也会不一样,所以我们在这一步要进行一次条件判断,因此加入一个 Condition 条件节点。

判断条件很简单,就是看开始节点的 Country 参数,有没有内容。如果有,就说明提供了国家地区的参数。因此我们判断的条件就是这个参数是否为空。

反思翻译

条件节点之后,就进入到了「反思翻译」阶段,这同样是一个 LLM 语言模型节点。它的 PROMPT 就有些复杂了,主要的目的就是把所有参数提供的信息以及初始翻译后的文本,全部交给这个模型,要求它根据一定的评估条件,对翻译的结果进行评价并提出改进建议。

PROMPT 比较长,下面我们就把有 Country 这个参数的 PROMPT 翻译成中文供大家参考:

您的任务是仔细阅读一篇源文本和从{{source_lang}}翻译成{{target_lang}}的译文,然后提出建设性批评和有益建议以改进翻译。

最终翻译的风格和语调应与{{country}}口语中使用的{{target_lang}}风格相匹配。

源文本和初始翻译,由XML标记<SOURCE_TEXT></SOURCE_TEXT> 和 <TRANSLATION></TRANSLATION> 分隔如下:

<SOURCE_TEXT>

{{source_text}}

</SOURCE_TEXT>

<TRANSLATION>

{{translation_1}}

</TRANSLATION>

在撰写建议时,请注意是否有改进翻译准确性(通过纠正添加错误、误译、遗漏或未翻译文本)、流畅性(通过应用 {{target_lang}} 语法、拼写和标点规则,并确保没有不必要的重复)、风格(通过确保翻译反映源文本风格并考虑任何文化背景)、术语(通过确保术语使用一致且反映源文本领域;并只确保您使用等效习语 {{target_lang}})方面是否有改进空间。

列出具体、有帮助且富有建设性的改进建议清单。

每个建议都应针对一个特定部分进行。

原英文 PROMPT 如下:

Your task is to carefully read a source text and a translation from {{source_lang}} to {{target_lang}}, and then give constructive criticism and helpful suggestions to improve the translation. 


The final style and tone of the translation should match the style of {{target_lang}} colloquially spoken in {{country}}.


The source text and initial translation, delimited by XML tags <SOURCE_TEXT></SOURCE_TEXT> and <TRANSLATION></TRANSLATION>, are as follows:


<SOURCE_TEXT>
{{source_text}}
</SOURCE_TEXT>


<TRANSLATION>
{{translation_1}}
</TRANSLATION>


When writing suggestions, pay attention to whether there are ways to improve the translation's: 
(i) accuracy (by correcting errors of addition, mistranslation, omission, or untranslated text),
(ii) fluency (by applying {{target_lang}} grammar, spelling and punctuation rules, and ensuring there are no unnecessary repetitions),
(iii) style (by ensuring the translations reflect the style of the source text and takes into account any cultural context),
(iv) terminology (by ensuring terminology use is consistent and reflects the source text domain; and by only ensuring you use equivalent idioms {{target_lang}}).


Write a list of specific, helpful and constructive suggestions for improving the translation.
Each suggestion should address one specific part of the translation.
Output only the suggestions and nothing else.


优化翻译

这是第三个翻译节点,同样也是 LLM 语言模型节点。它的任务是根据「反思翻译」节点的建议,对「初始翻译」进行优化,输出最终的翻译文本。

这部分的PROMPT与「反思翻译」部分大同小异,区别在于,给它的任务是:您的任务是仔细阅读并根据专家建议和建设性批评意见对翻译进行编辑。

Your task is to carefully read, then edit, a translation from {{source_lang}} to {{target_lang}}, taking into account a list of expert suggestions and constructive criticisms.


The source text, the initial translation, and the expert linguist suggestions are delimited by XML tags <SOURCE_TEXT></SOURCE_TEXT>, <TRANSLATION></TRANSLATION> and <EXPERT_SUGGESTIONS></EXPERT_SUGGESTIONS> as follows:


<SOURCE_TEXT>
{{source_text}}
</SOURCE_TEXT>


<TRANSLATION>
{{translation_1}}
</TRANSLATION>


<EXPERT_SUGGESTIONS>
{{reflection_1}}{{reflection_2}} 
</EXPERT_SUGGESTIONS>


Please take into account the expert suggestions when editing the translation. Edit the translation by ensuring:


(i) accuracy (by correcting errors of addition, mistranslation, omission, or untranslated text),
(ii) fluency (by applying {{target_lang}} grammar, spelling and punctuation rules and ensuring there are no unnecessary repetitions), 
(iii) style (by ensuring the translations reflect the style of the source text)
(iv) terminology (inappropriate for context, inconsistent use), or
(v) other errors.


Output only the new translation and nothing else.

另外,把「反思翻译」节点给出的建议放到了专家建议的标签当中:

<EXPERT_SUGGESTIONS>
{{reflection_1}}{{reflection_2}}
</EXPERT_SUGGESTIONS>

这里面的建议使用了两个变量,reflection_1 和 reflection_2,分别是前两个「反思翻译」节点的输出结果。一个是指定了国家和地区的反思翻译,另外一个是没有指定的。由于前两个节点会根据「条件节点」的结果不同而执行不同的节点,不会两个节点都执行,所以把他们两个的输出结果全部写在一起是没有问题的,在一次执行过程中,只会有一个输出结果有内容,所以不会产生冲突和重复。

最后,把「优化翻译」最终生成的翻译内容作为输出,给到最后一个「结束」节点,整个工作流就完成了。我们点击「测试运行」来看一下效果。

测试成功之后就可以发布了,而发布之后,我们就可以把它集成在聊天机器人中让大家使用了。

超级翻译智能体 - Bot

工作流完成之后,我们就可以创建一个聊天机器人来使用这个工作流了,创建聊天机器人很简单,点击「Create Bot」,就可以创建一个机器人

聊天机器人的模型建议选择 GPT-4o,然后在 Skills,也就是技能树这边,只添加一项,就是我们刚刚发布好的工作流,Super Translation Core.

重点就是提示,把提示写清楚,我们把已经写好的 PROMPT 粘贴过来就可以了,这里要求它必须调用工作流来执行任务,否则 GPT 会自作主张帮你翻译,也就失去了我们使用「反思」翻译流程的意义了。

PROMPT 说明

详细 PROMPT 如下:

Read more

AI 智能体工作流:用 Dify 打造本地、开源长文翻译神器

AI 智能体工作流:用 Dify 打造本地、开源长文翻译神器

今天我们来完成一个既有挑战性又有启发性的任务:我们来使用开源的 AI 开发平台 Dify 创建一个高质量的 AI 翻译助手。同时我们可以学习一种可以应用于不同平台的通用的方法。 虽然现在的 AI 翻译比传统的机器翻译提升了很多,但是依然不够令人满意。这就是为什么我们今天要学习一种新的方法来提升翻译的质量。这种方法就是 AI 界大神吴恩达老师最新开源的反思工作流。简单来说它就是一种让 AI 对自己的输出结果进行思考并进一步改进的方法。 反思工作流它的具体步骤实际上就是三步法:先让一个 AI 进行初始翻译打一个草稿,然后再让第二个 AI 去挑毛病,然后再让第三个 AI 对草稿进行最终的优化,形成最后的翻译结果。这就相当于是一个团队作业,三个臭皮匠胜过诸葛亮。这个过程不仅能够提高翻译的准确性,还可以让翻译更加符合目标语言的表达习惯。 在上期智图派,Coze 复刻吴恩达开源 AI 翻译神器 | 「智图派」 当中我使用 Coze 平台来实现过这个翻译的工作流,今天我们将使用另外一个 AI 开发平台 Dify 来再次实现这个工作流。我们可以通过这次实例来学习到如何把同一套思想同一套工作流在不

lock-1 By Axton
Jina Reader API 的四种用法 | 「智图派」

Jina Reader API 的四种用法 | 「智图派」

构建知识库,或者分析各种文章数据,是大家使用 AI 很重要的一个应用场景,因此我们常常会需要用到爬虫去爬取某个网站上的内容,现在,Jina 推出了一款非常简单好用的获取网页内容的工具,你只要把网址给它,它就能把网页内容整理成很适合大语言模型使用的格式,简直是构建知识库的利器。今天我就给大家介绍四种用法。分别包括在自动化工作流中使用以及在 AI 智能体中使用。 Jina Reader API 的网址是 读取器 API,你可以直接输入你需要爬取内容的网址 URL 在这边进行测试,输入之后直接点击按钮「获取内容」,就可以在右边得到结果了。 而他的用法也很简单,就是把你需要爬取内容的网页的 URL 写在 https://r.jina.ai 的后面就可以了。 什么是 Reader API Reader 是将任何URL转换为LLM友好的输入,只需简单添加前缀 https://r.jina.ai/ 无需付费即可获得改进后的适用于智能体或 RAG 系统的输出。

lock-1 By Axton
Coze 工作流获取 Tweets 详解 | 「智图派」

Coze 工作流获取 Tweets 详解 | 「智图派」

Coze是一个可以不用代码来搭建AI聊天机器人的平台。我在这期视频当中已经详细地讲解了Coze的各种功能,以及如何用到GPT-4 Turbo的模型。感兴趣的朋友可以回看一下。 自从 Twitter 被马斯克买了之后,如果你想从 Twitter 网站的外面来获取推文信息,也就是用 Twitter API,就需要每个月充值100美元了。但是 Coze 却很大方地让你可以免费地用部分 Twitter API 的功能了。今天我就先给大家演示一个可以批量获取多个 Twitter 作者的推文的工作流,把这个工作流嵌入到你的 AI 聊天机器人里面。比如我这里加了两个 Twitter 账号,我的和马斯克的,这样就可以一次性地获取到我们两个人的推文了。 今天我首先给大家演示一下在 Coze 上可以用到的 Twitter API 的功能,然后再演示一下批量获取推文的工作流,最后我们再聊一聊 Coze 的局限性。 Plugins 的基本功能 getUsers 首先第一个 "get users"

lock-1 By Axton
建立微信 AI 工作流 | 支持 10000 个文件,Assistants API v2 发布 | AI 快讯20240418

建立微信 AI 工作流 | 支持 10000 个文件,Assistants API v2 发布 | AI 快讯20240418

点击进入「AI 精英学院」,做一个会 AI 的人- 新视频发布:微信如何通过 Make 与 GPT、Claude、知识库无缝集成 - 支持 10000 个文件,Assistants API v2 发布 - 我们需要为生物技术的“ChatGPT时刻”做好准备 - NVIDIA推出基于安培架构的两款新GPU,RTX A400和RTX A1000 - Google地图将利用AI帮助您找到隐蔽的电动车充电器 微信如何通过 Make 与 GPT、Claude、知识库无缝集成 没想到海外的自动化平台居然也支持微信公众号。Make 工作流自动化平台,不但支持微信,还支持的挺完善,确实有些让人意外。本期视频演示如何使用 Make 获取微信公众号信息、与 OpenAI 知识库联动、

By Axton