Azure认知服务文本翻译API ,已正式落地由世纪互联运营的Microsoft Azure !
这是一种基于神经网络的机器翻译服务,开发者只需通过简单的REST API调用,即可将其与自己的应用程序、网站、工具或其他需要多语言支持的解决方案相集成,针对超过60种语言(支持的语言和区域完整列表请点击
这里
)实现近乎实时的文本翻译。
图示:神经网络基于句中的上下文翻译单词
借此,网站本地化、电子商务、客户支持、消息处理、内部沟通等各类型的应用场景所需的双向实时翻译,都可以轻松实现!不仅支持自动检测和翻译文字,还支持通过「本地功能」进行离线使用。更棒的是,目前注册使用,还能获得每个月前200万个字符免费翻译的服务,对于一些实验性的或者小规模的应用,基本上不花一分钱就能用。
为了帮助大家顺利上手,我们在此分享文本翻译API的六种常见操作指南!
1、使用Azure试用帐户或正式帐户登录 Azure管理门户 。
2、选择“+ 创建资源”。
3、在“搜索市场”搜索框中,输入“文本翻译”,然后从结果中选择它。
4、选择“创建”,定义该订阅的详细信息。
5、从“定价层”列表中,选择最适合需要的定价层。
● 每个订阅都有一个免费层。免费层具有与付费计划相同的特征和功能,并且不会过期。
● 帐户只能有一个免费订阅。
6、选择“创建”完成创建订阅。
1、通过先选择相应的订阅检索身份验证密钥。
2、在订阅详细信息的“资源管理”部分中选择“密钥”。
3、复制订阅所列出的任一密钥。
文本内容的翻译,不可避免会遇到不雅内容,此时如何处理这类问题就成了很多人头疼的问题。
通常来说,文本翻译服务在翻译中会保留源中存在的不雅内容。由于不雅程度和使词语不雅的语境在不同文化之间有所不同,因此在翻译后的目标语言中,其不雅程度可能会被放大或降低。
如果希望避免在翻译中看到不雅内容(即使源文本中存在不雅内容),此时可以使用Translate ()方法中提供的不雅内容筛选选项。借此可以选择是要将不雅内容删除,添加相关标记,或是不被执行任何操作。
Translate () 方法采用的“options”参数包含了一个新元素:“ProfanityAction”。ProfanityAction可接受的值包括:“NoAction”(不采取操作)、“Marked”(加标记)和“Deleted”(直接删除)。
我们只需要在调用该API时为这个元素指定需要的值即可。具体做法可参阅: 通过Translator API调用应用不雅内容筛选 。
如果希望在使用该API时接收对齐信息,此时需要使用Translate方法,并包含可选的includeAlignment参数。
对齐将作为以下格式的字符串值返回给源的每个词。每个词的信息由一个空格分隔,其中包括非空格分隔的语言(脚本),例如中文:
[[SourceTextStartIndex]:[SourceTextEndIndex]-[TgtTextStartIndex]:[TgtTextEndIndex]] *
对齐字符串示例:“0:0-7:10 1:2-11:20 3:4-0:3 3:4-4:6 5:5-21:21”。
换而言之,冒号分隔开始和结束索引,连字符分隔语言,空格分隔词。一个词可能与另一种语言中的0个、1个或多个词对齐,而对齐的词可能是非连续的。当没有可用的对齐信息时,Alignment元素将为空。在这种情况下,该方法不会返回任何错误。
● 从英语到任何其他语言;
● 从任何其他语言到英语,但简体中文、繁体中文和拉脱维亚语到英语除外;
● 从日语到韩语或从韩语到日语;如果句子是预录翻译,则不会收到对齐信息。预录翻译示例包括“This is a test”、“I love you”等高频率句子。
[
{
"translations": [
{
"text": "Kann ich morgen Ihr Auto fahren?",
"to": "de",
"alignment": {
"proj": "0:2-0:3 4:4-5:7 6:10-25:30 12:15-16:18 17:19-20:23 21:28-9:14 29:29-31:31"
}
}
]
}
]
有时候我们可能需要避免翻译某些内容,例如「Windows Operating System」就不需要对「Windows」这个词进行翻译。
因而可以在文本翻译API中标记无需翻译的内容。例如,我们可能需要标记本地化后没有意义的代码、品牌名称或单词/短语。
此时可以通过四种方法实现目的:
将无需翻译的内容转义为Twitter标记:@somethingtopassthrough或#somethingtopassthrough,并在翻译后取消转义。
使用 notranslate 标记无需翻译的内容。例如:
使用动态词典(具体介绍见下文)给出特定翻译。
不要将字符串传递到文本翻译API进行翻译。
具体做法请参阅: 避免在Translator API调用中进行翻译 。
上文提到了动态词典,该功能的用途是这样的:如果已知要应用于某个单词或短语的翻译,可以在请求中将其作为标记提供。动态词典仅适用于复合名词,例如专有名称和产品名称。
其语法是这样的:
<mstrans:dictionary translation=”translation of phrase”>phrase</mstrans:dictionary>
例如德文到英文的翻译:
源输入:The word <mstrans:dictionary translation="wordomatic">word or phrase</mstrans:dictionary> is a dictionary entry.
目标输出:Das Wort "wordomatic" ist ein Wörterbucheintrag.
无论使用或不使用HTML模式,该功能都会以相同方式工作。但一般建议尽量少使用该功能。
文本翻译API需要访问网络,因而对于企业本地部署的使用该API的应用,为了确保正确运行,可能需要对防火墙进行必要的配置。
文本翻译API可以使用域名或IP筛选在防火墙后面翻译。域名筛选是首选方法。我们建议不要在经过IP筛选的防火墙后面运行Microsoft Translator。此外,安装程序在将来可能会发生中断,恕不另行通知。
自2018年11月20日起,api.cognitive.azure.cn - Microsoft文本翻译API的IP地址为:
亚太区:40.90.139.163, 104.44.89.44
欧洲:40.90.138.4, 40.90.141.99
北美:40.90.139.36, 40.90.139.2
只需根据所在区域在防火墙上针对上述IP地址进行必要配置即可。
了解了这些常见场景使用指南后,赶快试着用起来吧,同时还可参阅下列资源进一步了解这个全新的API:
文本翻译介绍文档
文本翻译API 3.0参考
GitHub上的代码范例
福利欢送
想要进一步了解如何在微软云上更好地运用人工智能?
扫描下方二维码,免费领取 微软官方电子书 !