宣布 LlamaCloud 全面可用(以及我们获得 1900 万美元 A 轮融资)!
LlamaIndex

LlamaIndex 2023-12-08

弥合编程中的语言障碍:隆重推出 AutoTranslateDoc

作者:Pierre-Loic Doulcet

作为程序员,我们常常会受到语言障碍的限制。各种编程框架和工具的文档主要以英文提供,虽然中文等语言的文档也在增多,但这仍然给非母语者带来了挑战。我在早期编程时也面临过类似的障碍,直到 traduc.org 等社区组织翻译 man pages 的努力,我才得以克服这些困难。

今天,我们很高兴宣布推出一个针对这个普遍问题的解决方案:AutoTranslateDoc,一个命令行工具,旨在通过打破语言障碍来普及技术文档的获取。

AutoTranslateDoc 工作原理

  1. 收集文档:该工具连接到 GitHub,识别并下载任意仓库中的 .md 和 .mdx 文件。
  2. 分块和准备:然后将文档进行分块或拆分以进行翻译。
  3. 高效翻译:利用 GPT-3.5 和 GPT-4 等 LLM 的强大能力,对文档的每个分块进行准确翻译。
  4. 验证和增强:自动验证翻译,如有需要则重新翻译,确保最高质量。
  5. 合并:最后,将分块重新合并成一个完整的文档。

我们对 llamaIndexTS 文档翻译进行的初步测试非常有前景。现在,您可以用十多种语言阅读我们的文档,包括中文法语西班牙语

开始使用

通过 npm 轻松安装 AutoTranslateDoc,或克隆仓库 (https://github.com/run-llama/automatic-doc-translate)

npm install -g autotranslatedoc

试用 run-lama/LlamaIndexTS 或您喜欢的仓库!您需要一个 GitHub 个人访问令牌 和一个 OpenAI API 密钥(该工具会提示您进行设置)

# Translate
autotranslatedoc translate run-llama LlamaIndexTS -d apps/docs -l fr
#build
autotranslatedoc build run-llama LlamaIndexTS -d apps/docs -l fr

这将翻译 GitHub 仓库 run-llama/LlamaIndexTS 中的目录 apps/docs

提高准确性和一致性

我们致力于提高翻译准确性,这促使我们在翻译过程和验证方法上都进行了创新。

策略性文档拆分

我们通过将文档的每一页划分为多个部分来进行翻译。为了提供增强的上下文和连贯性,翻译时会将每个部分的标题层级附加到其对应的分块。这项技术确保了翻译后的内容保持原有的结构和主题相关性。

严格的翻译验证

我们的验证流程旨在严格评估翻译的准确性。我们对翻译后的文档采用了多项检查:

  • 翻译长度检查:我们比较翻译文本与原文的长度,以确保一致性。
  • 标题层级分析:我们验证翻译中没有意外地添加新的部分。
  • 链接数量验证:我们将超链接的数量与原文进行比对,确保没有遗漏或不必要的添加。
  • 代码块准确性:检查翻译中代码块是否存在以及是否与原文一致。

这些检查解决了 LLM 的常见问题,如幻觉或遗漏,并在必要时触发重新翻译。这一严格流程显著提高了我们翻译的准确性。此外,我们还加入了一个独特的自我批判功能,LLM 会评估自身的翻译输出,进一步提升质量。

这种细致分块和全面验证的双重方法确保了我们的翻译不仅准确,而且在上下文上具有相关性,保持了原文文档的完整性和实用性。

管理文档更新:保持翻译最新

文档本质上是一个动态实体,会随时间演变。认识到这一点,我们在 AutoDocTranslate 中集成了一个强大的系统来高效管理文档更新。

通过 JSON 进行历史跟踪

使用我们的工具翻译仓库时,会生成一个 .json 文件,记录翻译历史。该文件对于跟踪文档的更改和版本至关重要。它为差异化翻译奠定了基础,该过程仅识别和翻译新增或修改的内容。通过 autotranslatedoc update 命令可以访问此功能,从而简化了保持翻译最新状态的维护工作。

未来增强功能

我们正在积极努力,为该系统增强以下功能:

人工修改集成:考虑到翻译生成后可能会有人工编辑,我们正在开发功能,以便在更新时考虑这些人工修改。这将确保保留所有人工修订,并且在后续更新中仅翻译源文档中新增或修改的部分。

翻译管理 GUI:为了进一步简化翻译编辑、跟踪和验证过程,我们正处于开发图形用户界面 (GUI) 的早期阶段。该界面将允许用户更直观地与翻译进行交互。通过 autotranslatedoc serve 命令可以访问此功能的实验版本。此 GUI 将使用户能够可视化地浏览翻译、进行编辑,并更高效地验证内容的准确性。

通过不断更新和完善这些功能,AutoDocTranslate 旨在始终处于技术文档多语言普遍可访问且易于维护的前沿。

技术文档的未来

AutoDocTranslate 不仅仅是一个工具;它是迈向一个包容、无障碍技术世界的脚步,在这个世界里,语言不再是学习和成长的障碍。我们很高兴看到它如何赋能全球的程序员。

加入我们的旅程,为建设一个更易于访问的编程社区贡献力量!