在先进的 LLM 技术和 Azure AI 服务的支持下,使用合作翻译器轻松自动化项目的多语言翻译。
Co-op Translator是一个 Python 包,旨在使用先进的大语言模型 (LLM) 技术和 Azure AI 服务自动为您的项目进行多语言翻译。该项目旨在简化将内容翻译成多种语言的过程,使开发人员可以轻松访问并提高效率。
通过将 Co-op Translator 集成到您的工作流程中,您可以自动生成不同语言的有组织的翻译文件夹,并轻松翻译 Markdown 文件和图像。
以下示例展示了 Co-op Translator 如何构建翻译并翻译项目中图像中的 Markdown 文件和文本:
您在处理 Markdown 文件时是否遇到过使用传统翻译工具的困扰?许多翻译引擎无法保留 Markdown 语法,迫使您在翻译后手动修复格式问题。即使像 ChatGPT 这样的高级工具也可能会误解代码块,从而很难在保持原始结构的同时复制和粘贴翻译的内容。
Co-op Translator就是专门为解决这些问题而设计的。使用单个命令,您可以将项目中的所有 Markdown 文件和图像翻译成任何所需的语言,同时保留正确的 Markdown 语法。
使用 Co-op Translator 轻松翻译项目的 Markdown 文件!
该过程从项目文件夹中的 Markdown 和图像文件开始,这些文件由Azure AI 服务处理:
最终翻译的 Markdown 和图像文件保存在指定的翻译文件夹中,可供多种语言使用。
pip install co-op-translator
poetry add co-op-translator
这些案例研究展示了如何应用合作翻译器来翻译现实世界的项目。重点介绍了翻译过程、遇到的挑战以及取得的成果,为将该工具应用于类似项目提供了有益的参考。
在开始翻译过程之前,您可以在自述文件中添加一个表格,链接到文档的翻译版本。合作翻译器会在翻译过程中自动调整这些链接,让用户可以在不同语言版本之间无缝切换。
例如,如果用户导航到韩语自述文件,他们可以轻松切换到其他翻译,例如西班牙语或日语,而无需离开翻译页面。
以下是运行翻译之前表格的外观示例:
## ? Multi-Language Support
> ** Note: **
> These translations were automatically generated using the open-source [ co-op-translator ] ( https://github.com/Azure/co-op-translator ) and may contain errors or inaccuracies. For critical information, it is recommended to refer to the original or consult a professional human translation. If you'd like to add or update a translation, please refer to the [ co-op-translator ] ( https://github.com/Azure/co-op-translator ) repository, where you can easily contribute using simple commands.
| Language | Code | Link to Translated README | Last Updated |
| ---------------------- | ------ | --------------------------------------------------------- | -------------- |
| Chinese (Simplified) | zh | [ Chinese Translation ] ( ./translations/zh/README.md ) | 2024-10-04 |
| Chinese (Traditional) | tw | [ Chinese Translation ] ( ./translations/tw/README.md ) | 2024-10-04 |
| French | fr | [ French Translation ] ( ./translations/fr/README.md ) | 2024-10-04 |
| Japanese | ja | [ Japanese Translation ] ( ./translations/ja/README.md ) | 2024-10-04 |
| Korean | ko | [ Korean Translation ] ( ./translations/ko/README.md ) | 2024-10-04 |
| Spanish | es | [ Spanish Translation ] ( ./translations/es/README.md ) | 2024-10-04 |
## ? Multi-Language Support
| [English](./translations/en/README.md) | [French](./translations/fr/README.md) | [Spanish](./translations/es/README.md) | [German](./translations/de/README.md) | [Russian](./translations/ru/README.md) | [Arabic](./translations/ar/README.md) | [Persian (Farsi)](./translations/fa/README.md) | [Urdu](./translations/ur/README.md) | [Chinese (Simplified)](./translations/zh/README.md) | [Chinese (Traditional, Macau)](./translations/mo/README.md) | [Chinese (Traditional, Hong Kong)](./translations/hk/README.md) | [Chinese (Traditional, Taiwan)](./translations/tw/README.md) | [Japanese](./translations/ja/README.md) | [Korean](./translations/ko/README.md) | [Hindi](./translations/hi/README.md) | [Bengali](./translations/bn/README.md) | [Marathi](./translations/mr/README.md) | [Nepali](./translations/ne/README.md) | [Punjabi (Gurmukhi)](./translations/pa/README.md) | [Portuguese](./translations/pt/README.md) | [Italian](./translations/it/README.md) | [Polish](./translations/pl/README.md) | [Turkish](./translations/tr/README.md) | [Greek](./translations/el/README.md) | [Thai](./translations/th/README.md) | [Swedish](./translations/sv/README.md) | [Danish](./translations/da/README.md) | [Norwegian](./translations/no/README.md) | [Finnish](./translations/fi/README.md) | [Dutch](./translations/nl/README.md) | [Hebrew](./translations/he/README.md) | [Vietnamese](./translations/vi/README.md) | [Indonesian](./translations/id/README.md) | [Malay](./translations/ms/README.md) | [Tagalog (Filipino)](./translations/tl/README.md) | [Swahili](./translations/sw/README.md) | [Hungarian](./translations/hu/README.md) | [Czech](./translations/cs/README.md) | [Slovak](./translations/sk/README.md) | [Romanian](./translations/ro/README.md) | [Bulgarian](./translations/bg/README.md) | [Serbian (Cyrillic)](./translations/sr/README.md) | [Croatian](./translations/hr/README.md) | [Slovenian](./translations/sl/README.md) |
> ** Note: **
> These translations were automatically generated using the open-source [ co-op-translator ] ( https://github.com/Azure/co-op-translator ) and may contain errors or inaccuracies. For critical information, it is recommended to refer to the original or consult a professional human translation. If you'd like to add or update a translation, please refer to the [ co-op-translator ] ( https://github.com/Azure/co-op-translator ) repository, where you can easily contribute using simple commands.
下表列出了Co-op Translator目前支持的语言。它包括语言代码、语言名称以及与每种语言相关的任何已知问题。如果您想添加对新语言的支持,请在位于src/co_op_translator/fonts/
的font_language_mappings.yml
文件中添加相应的语言代码、名称和适当的字体,并在测试后提交拉取请求。
语言代码 | 语言名称 | 字体 | RTL 支持 | 已知问题 |
---|---|---|---|---|
zh | 英语 | NotoSans-Medium.ttf | 不 | 不 |
FR | 法语 | NotoSans-Medium.ttf | 不 | 不 |
英语 | 西班牙语 | NotoSans-Medium.ttf | 不 | 不 |
德 | 德语 | NotoSans-Medium.ttf | 不 | 不 |
茹 | 俄语 | NotoSans-Medium.ttf | 不 | 不 |
阿尔 | 阿拉伯 | NotoSansArabic-Medium.ttf | 是的 | 是的 |
发 | 波斯语(波斯语) | NotoSansArabic-Medium.ttf | 是的 | 是的 |
你的 | 乌尔都语 | NotoSansArabic-Medium.ttf | 是的 | 是的 |
zh | 中文(简体) | NotoSansCJK-Medium.ttc | 不 | 不 |
莫 | 中文(繁体,澳门) | NotoSansCJK-Medium.ttc | 不 | 不 |
香港 | 中文(繁体,香港) | NotoSansCJK-Medium.ttc | 不 | 不 |
TW | 中文(繁体,台湾) | NotoSansCJK-Medium.ttc | 不 | 不 |
贾 | 日本人 | NotoSansCJK-Medium.ttc | 不 | 不 |
科 | 韩国人 | NotoSansCJK-Medium.ttc | 不 | 不 |
你好 | 印地语 | NotoSansDevanagari-Medium.ttf | 不 | 不 |
BN | 孟加拉 | NotoSansBengali-Medium.ttf | 不 | 不 |
先生 | 马拉地语 | NotoSansDevanagari-Medium.ttf | 不 | 不 |
讷 | 尼泊尔语 | NotoSansDevanagari-Medium.ttf | 不 | 不 |
帕 | 旁遮普语(古尔穆奇语) | NotoSansGurmukhi-Medium.ttf | 不 | 不 |
点 | 葡萄牙语 | NotoSans-Medium.ttf | 不 | 不 |
它 | 意大利语 | NotoSans-Medium.ttf | 不 | 不 |
PL | 抛光 | NotoSans-Medium.ttf | 不 | 不 |
t | 土耳其 | NotoSans-Medium.ttf | 不 | 不 |
埃尔 | 希腊语 | NotoSans-Medium.ttf | 不 | 不 |
th | 泰国 | NotoSansThai-Medium.ttf | 不 | 不 |
SV | 瑞典 | NotoSans-Medium.ttf | 不 | 不 |
达 | 丹麦语 | NotoSans-Medium.ttf | 不 | 不 |
不 | 挪威 | NotoSans-Medium.ttf | 不 | 不 |
菲 | 芬兰 | NotoSans-Medium.ttf | 不 | 不 |
NL | 荷兰语 | NotoSans-Medium.ttf | 不 | 不 |
他 | 希伯来语 | NotoSansHebrew-Medium.ttf | 是的 | 不 |
六 | 越南语 | NotoSans-Medium.ttf | 不 | 不 |
ID | 印度尼西亚 | NotoSans-Medium.ttf | 不 | 不 |
多发性硬化症 | 马来语 | NotoSans-Medium.ttf | 不 | 不 |
特尔 | 他加禄语(菲律宾语) | NotoSans-Medium.ttf | 不 | 不 |
SW | 斯瓦希里语 | NotoSans-Medium.ttf | 不 | 不 |
胡 | 匈牙利 | NotoSans-Medium.ttf | 不 | 不 |
CS | 捷克语 | NotoSans-Medium.ttf | 不 | 不 |
斯克 | 斯洛伐克语 | NotoSans-Medium.ttf | 不 | 不 |
罗 | 罗马尼亚语 | NotoSans-Medium.ttf | 不 | 不 |
背景 | 保加利亚语 | NotoSans-Medium.ttf | 不 | 不 |
高级 | 塞尔维亚语(西里尔字母) | NotoSans-Medium.ttf | 不 | 不 |
小时 | 克罗地亚语 | NotoSans-Medium.ttf | 不 | 不 |
斯尔 | 斯洛文尼亚语 | NotoSans-Medium.ttf | 不 | 不 |
添加对新语言的支持:
rtl
属性。src/co_op_translator/fonts/
目录下。例子:
new_lang :
name : " New Language "
font : " NotoSans-Medium.ttf "
rtl : false
该项目欢迎贡献和建议。有兴趣为 Azure Co-op Translator 做出贡献吗?请参阅我们的 CONTRIBUTING.md,了解有关如何帮助使合作翻译器更易于使用的指南。
该项目采用了微软开源行为准则。有关详细信息,请参阅行为准则常见问题解答或联系 [email protected] 提出任何其他问题或意见。
Microsoft 致力于帮助我们的客户负责任地使用我们的 AI 产品,分享我们的经验教训,并通过透明度说明和影响评估等工具建立基于信任的合作伙伴关系。其中许多资源可以在 https://aka.ms/RAI 中找到。 Microsoft 负责任的 AI 方法基于我们的公平、可靠和安全、隐私和安全、包容性、透明度和问责制等 AI 原则。
大规模自然语言、图像和语音模型(如本示例中使用的模型)可能会表现出不公平、不可靠或冒犯性的行为,从而造成伤害。请参阅 Azure OpenAI 服务透明度说明,了解风险和限制。
减轻这些风险的建议方法是在您的架构中包含一个可以检测和防止有害行为的安全系统。 Azure AI 内容安全提供独立的保护层,能够检测应用程序和服务中用户生成的有害内容和 AI 生成的内容。 Azure AI 内容安全包括文本和图像 API,可让你检测有害材料。我们还有一个交互式内容安全工作室,可让您查看、探索和尝试示例代码,以跨不同方式检测有害内容。以下快速入门文档将指导您向服务发出请求。
另一个需要考虑的方面是整体应用程序性能。对于多模式和多模型应用程序,我们认为性能意味着系统按照您和您的用户的期望运行,包括不生成有害输出。使用发电质量以及风险和安全指标来评估整个应用程序的性能非常重要。
您可以使用提示流 SDK 在开发环境中评估您的 AI 应用程序。给定测试数据集或目标,您的生成式 AI 应用程序生成将通过内置评估器或您选择的自定义评估器进行定量测量。要开始使用提示流 sdk 来评估您的系统,您可以按照快速入门指南进行操作。执行评估运行后,您可以在 Azure AI Studio 中可视化结果。
该项目可能包含项目、产品或服务的商标或徽标。 Microsoft 商标或徽标的授权使用须遵守且必须遵循 Microsoft 的商标和品牌指南。在此项目的修改版本中使用 Microsoft 商标或徽标不得引起混淆或暗示 Microsoft 赞助。对第三方商标或徽标的任何使用均须遵守这些第三方的政策。