translation-agent

translation-agent

高度可定制的自反式机器翻译工作流

这是一个基于自反式工作流的机器翻译演示项目。通过大型语言模型实现翻译、自我反馈和改进,具有高度可定制性。它支持调整输出风格、处理特殊术语和适应地区用语。虽然整体性能与商业产品相当,但在某些场景下表现优异。该项目支持多语言翻译,适用于正式/非正式文本、专业术语和地区方言的翻译需求。作为代理式翻译的起点,它为翻译研究和开源社区提供了新的可能性,欢迎贡献者参与改进和扩展。

机器翻译反思工作流LLM开源自定义翻译Github开源项目

翻译代理:使用反思工作流的智能翻译

这是一个使用反思工作流进行机器翻译的Python演示。主要步骤如下:

  1. 提示LLM将文本从源语言翻译成目标语言
  2. 让LLM反思翻译,提出建设性的改进建议;
  3. 利用这些建议来改进翻译。

可定制性

通过使用LLM作为翻译引擎的核心,该系统具有高度的可操控性。例如,通过更改提示,使用这种工作流比传统机器翻译(MT)系统更容易:

  • 修改输出的风格,如正式/非正式。
  • 指定如何处理习语和特殊术语,如名称、技术术语和缩写。例如,在提示中包含术语表可以确保特定术语(如开源、H100或GPU)的翻译保持一致。
  • 指定语言的特定地区用法或特定方言,以服务于目标受众。例如,拉丁美洲使用的西班牙语与西班牙使用的不同;加拿大使用的法语与法国使用的不同。

这不是成熟的软件,而是Andrew在过去几个月的周末里玩转翻译的结果,加上合作者(Joaquin Dominguez、Nedelina Teneva、John Santerre)帮助重构代码。

根据我们使用BLEU分数在传统翻译数据集上的评估,这个工作流有时可以与领先的商业产品竞争,但有时也不如它们。然而,我们偶尔也得到了出色的结果(优于商业产品)。我们认为这只是智能翻译的起点,是一个有前景的翻译方向,还有很大的改进空间,这就是为什么我们发布这个演示来鼓励更多的讨论、实验、研究和开源贡献。

如果智能翻译能够生成比传统架构(如输入文本直接输出翻译的端到端transformer)更好的结果——这些架构通常比我们这里的方法运行得更快/更便宜——这也提供了一种自动生成训练数据(平行文本语料库)的机制,可用于进一步训练和改进传统算法。(另见The Batch的这篇文章关于使用LLM生成训练数据。)

欢迎对如何改进这一方法提出意见和建议!

入门

要开始使用translation-agent,请按以下步骤操作:

安装:

  • 安装需要Poetry包管理器。Poetry安装 根据您的环境,这可能有效:
pip install poetry
  • 需要一个包含OPENAI_API_KEY的.env文件来运行工作流。请参考.env.sample文件作为示例。
git clone https://github.com/andrewyng/translation-agent.git cd translation-agent poetry install poetry shell # 激活虚拟环境

使用:

import translation_agent as ta source_lang, target_lang, country = "English", "Spanish", "Mexico" translation = ta.translate(source_lang, target_lang, source_text, country)

参见examples/example_script.py获取示例脚本以尝试。

许可证

Translation Agent 在 MIT 许可证下发布。您可以自由使用、修改和分发代码,用于商业和非商业目的。

扩展ideas

以下是我们没有时间尝试但希望开源社区能够尝试的ideas:

  • 尝试其他LLM。 我们主要使用gpt-4-turbo进行原型设计。我们希望其他人也能尝试其他LLM以及其他超参数选择,看看是否有一些在特定语言对上表现更好。
  • 术语表创建。 最有效地构建术语表的最佳方法是什么——也许使用LLM——以确保最重要的术语能够一致地翻译?例如,许多企业使用的专业术语在互联网上并不广泛使用,因此LLM不了解,还有许多术语可以有多种翻译方式。例如,西班牙语中的"open source"可以是"Código abierto"或"Fuente abierta";两者都可以,但最好在一个文档中选择一个并坚持使用。
  • 术语表使用和实现。 给定一个术语表,在提示中包含它的最佳方式是什么?
  • 不同语言的评估。 它在不同语言中的性能如何变化?是否有一些变化可以使其在特定的源语言或目标语言中表现更好?(请注意,对于MT系统正在接近的非常高的性能水平,我们不确定BLEU是否是一个很好的指标。)此外,它在低资源语言上的性能还需要进一步研究。
  • 错误分析。 我们发现,指定一种语言和一个国家/地区(例如,"墨西哥日常口语中的西班牙语")对我们的应用来说效果相当不错。当前方法在哪些方面存在不足?我们特别有兴趣了解它在专业主题(如法律、医学)或特殊类型的文本(如电影字幕)上的表现,以了解其局限性。
  • 更好的评估。 最后,我们认为更好的评估(evals)是一个巨大而重要的研究课题。与其他生成自由文本的LLM应用一样,当前的评估指标似乎存在不足。例如,我们发现,即使在我们的智能工作流能更好地捕捉上下文和术语的文档中,导致我们的人类评估者更喜欢它而不是当前的商业产品,但在句子级别的评估(使用FLORES数据集)中,智能系统在BLEU上的得分反而更低。我们能否设计出更好的指标(也许使用LLM来评估翻译?)来捕捉文档级别的翻译质量,使其与人类偏好更好地相关?

相关工作

一些学术研究小组也开始关注基于LLM和智能翻译。我们认为这个领域还处于早期阶段!

编辑推荐精选

扣子-AI办公

扣子-AI办公

职场AI,就用扣子

AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!

堆友

堆友

多风格AI绘画神器

堆友平台由阿里巴巴设计团队创建,作为一款AI驱动的设计工具,专为设计师提供一站式增长服务。功能覆盖海量3D素材、AI绘画、实时渲染以及专业抠图,显著提升设计品质和效率。平台不仅提供工具,还是一个促进创意交流和个人发展的空间,界面友好,适合所有级别的设计师和创意工作者。

图像生成AI工具AI反应堆AI工具箱AI绘画GOAI艺术字堆友相机AI图像热门
码上飞

码上飞

零代码AI应用开发平台

零代码AI应用开发平台,用户只需一句话简单描述需求,AI能自动生成小程序、APP或H5网页应用,无需编写代码。

Vora

Vora

免费创建高清无水印Sora视频

Vora是一个免费创建高清无水印Sora视频的AI工具

Refly.AI

Refly.AI

最适合小白的AI自动化工作流平台

无需编码,轻松生成可复用、可变现的AI自动化工作流

酷表ChatExcel

酷表ChatExcel

大模型驱动的Excel数据处理工具

基于大模型交互的表格处理系统,允许用户通过对话方式完成数据整理和可视化分析。系统采用机器学习算法解析用户指令,自动执行排序、公式计算和数据透视等操作,支持多种文件格式导入导出。数据处理响应速度保持在0.8秒以内,支持超过100万行数据的即时分析。

AI工具酷表ChatExcelAI智能客服AI营销产品使用教程
TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
AIWritePaper论文写作

AIWritePaper论文写作

AI论文写作指导平台

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

AI辅助写作AI工具AI论文工具论文写作智能生成大纲数据安全AI助手热门
博思AIPPT

博思AIPPT

AI一键生成PPT,就用博思AIPPT!

博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。

AI办公办公工具AI工具博思AIPPTAI生成PPT智能排版海量精品模板AI创作热门
潮际好麦

潮际好麦

AI赋能电商视觉革命,一站式智能商拍平台

潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。

下拉加载更多