近期,斯坦福大学教授吴恩达开源了一个AI智能体机器翻译——一个使用反思工作流进行翻译的智能体,该项目中演示了反思智能体工作流的机器翻译示例。智能体的主要步骤如下:
翻译过程中,优先判断模型的长度是否超过了模型所能承受的最大token,针对超过模型长度的情况,先对文本进行切块,再对分块后的文本进行翻译,
但是无论长文本还是短文本,翻译过程都是基于初始翻译->反思->修改的流程进行的。
在aU中实现该翻译的过程主要分为以下几步:
定义翻译相关的prompt,短文本翻译三个,长文本翻译三个,相关文件如下:
短文本翻译init prmpt
短文本翻译reflection prmpt
短文本翻译improve prmpt
长文本翻译init prmpt
长文本翻译reflection prmpt
长文本翻译improve prmpt
在aU中,可以很容易的通过配置文件定义prompt,并统一由PromptManager管理。
定义三个智能体
短文本翻译智能体
短文本翻译智能体
短文本翻译智能体
该智能体当中,需要根据执行的时长文本翻译还是短文本翻译切换对应的prompt,具体逻辑可参考代码实现
由于定义的prompt全部由PromptManager进行管理,这里可以很容易的实现prompt的切换
定义三个智能体的协同工作过程
协同过程可参考前面介绍的多智能体协同工作过程的流程图,具体的实现逻辑如图:
更细的流程可以参考代码文件
协同智能体的配置文件
可以看到,使用aU与原本的translation_agent原工程翻译结果保持一致,复刻成功。
aU的执行结果:
Translation_agent的执行结果:
DASHSCOPE_API_KEY
。此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。