看了吴恩达老师的翻译智能体开源代码
因为最近打算做一次 AI 工作流方面的分享,所以查找了相关的资料和应用,花了一个早上阅读了吴恩达老师开源的翻译智能体的核心代码,获益匪浅。
这个小项目的核心代码就几百行,代码思路非常清晰。其中体现的 AI 智能体概念,AI工作流设计等概念虽然并不新奇,但是整体实现度和完成度很高,不失为一个 llm 应用开发者入门学习的好项目。
这个智能体核心做的是翻译任务,使用大模型后可以将任意内容的从源语言翻译为目标语言。(如英文到中文)
这是一个很产品化的工作流:
1. 首先判断文本长度,看大模型能不能一次处理完。
2. 翻译短文本,则直接走反思工作流:
(1) 第一次翻译。依据源语言,目标语言(等更多信息),待翻译内容构建提示词,然后给大模型翻译。
(2) 反思: 把翻译结果等信息给到反思智能体,有针对性的根据 AI 翻译常犯的错误进行反思评价,给出改进意见。
(3)二次翻译。把源语言,目标语言,待翻译内容,第一次翻译内容,反思评价内容等等都用来构建提示词,再次翻译,对第一次翻译内容进行改进提高。
3. 如果是长文本,一次翻译不完则会拆分多段翻译。为了保持翻译结果和上下文的连贯性和流畅度,翻译的时候会把当前段落和之前一段与之后一段(共三段)一起拿过去翻译。然后和短文本一样走反思评价工作流。
我也管上面的叫二次翻译工作流,和宝玉老师提出的思路类似。顺带想到了之前刚哥
@李继刚 分享的信达雅翻译,三次翻译的工作流,也是可以用类似方法做的更精细稳定的。
总的来说,吴恩达老师这个翻译智能体里面没有涉及太多新的概念,也不复杂,几乎是最简单的工作流了,不过细节处理的很精细,延续了吴老师一贯以来的严谨细致的学术范儿。
如果是在做llm的落地应用,相信会比较有启发。
项目地址: