经济全球化的明天,人们在工作和生存中常常会与外语打交道。相较流传性较广的英语而言,其余语种的辨认和浏览对大多数人来说是一件难事,此时就须要借助语言翻译软件来帮忙了解。
华为 HMS Core 机器学习服务(ML Kit)翻译性能提供了多种翻译模式,不仅能够满足利用出行购物、网络社交等日常场景,还提供办公文档、视频字幕等专业翻译服务,满足多种语言和场景利用。其中在线文本翻译能力反对15国语种中文互译,满足邮件翻译、语音翻译、浏览器翻译、同传翻译等场景。
以后支流的翻译模式大都以语料资源较为丰盛的英文作为两头语言进行“桥接”翻译,然而经英文转移后翻译精度有所损失,且计算资源加倍执行成果升高。
基于此,HMS Core机器学习服务对在线文本翻译能力进行降级,在原有的8国语言上又新增中意、中阿、中波、中荷、意中、阿中、波中、荷中 、中马、中泰、中越、越中、泰中、马中十四个直译模型,反对TOP15语种中文互译。相较于英文桥接翻译,中文直译模型可实现每秒并发300字符,端到端翻译速度小于150ms,翻译时延升高100%,翻译速度更快;针对中文特色词、俚语的翻译后果更纯粹,翻译品质更优。在线文本翻译能力分批次打造可信中文直译零碎,确保中文和TOP语种的互译成果优于友商,打造差异化竞争力,能够满足中企出海或外企入华等对翻译要求更高场景的需要。
产品劣势
个性化术语翻译
用户可自行提供术语以优化翻译后果,华为术语翻译引擎提供可定制的个性化术语翻译能力。
中文为轴心的机器翻译
反对TOP15语种中文互译,让翻译时延更低,品质更优。在WMT 2021 国内机器翻译大赛三角翻译工作中,取得俄到中翻译第一名。
响应实时稳固
全流程毫秒级响应,译文后果精准晦涩。寰球四大站点部署,助力品牌出海无忧。
多语言翻译品质当先
依靠先进的机器翻译技术,联合各垂域大数据劣势,满足用户在多畛域、多场景下的翻译需要。在IWSLT 2020国内翻译大赛中,取得中到英字幕翻译第一名。
开发步骤
开发筹备
在进行开发之前,您须要实现必要的开发筹备工作,同时请确保您的工程中曾经配置HMS Core SDK的Maven仓地址,并且实现了本服务的SDK集成。
在线文本翻译能力集成
- 请参见云端鉴权信息应用须知,设置您利用的鉴权信息。
- 创立在线文本翻译器。能够通过文本翻译器自定义参数类MLRemoteTranslateSetting创立翻译器。
// 应用自定义的参数配置创立文本翻译器。MLRemoteTranslateSetting setting = new MLRemoteTranslateSetting .Factory() // 设置源语言的编码,应用ISO 639-1规范(中文繁体应用BCP-47规范)。此设置为可选项,如果不设置,将自动检测语种进行翻译。 .setSourceLangCode("zh") // 设置目标语言的编码,应用ISO 639-1规范(中文繁体应用BCP-47规范)。 .setTargetLangCode("en") .create();MLRemoteTranslator mlRemoteTranslator = MLTranslatorFactory.getInstance().getRemoteTranslator(setting);
- 可通过上面的办法查问在线翻译所反对的语种。
异步办法示例代码:
MLTranslateLanguage.getCloudAllLanguages().addOnSuccessListener( new OnSuccessListener<Set<String>>() { @Override public void onSuccess(Set<String> result) { // 胜利获取在线翻译所反对的语种。 }});
同步办法示例代码:
try { Set<String> result = MLTranslateLanguage.syncGetCloudAllLanguages(); // 胜利获取在线翻译所反对的语种。} catch (MLException e) { // 获取在线翻译所反对的语种出现异常。}
- 进行在线文本翻译(错误码信息可参见:机器学习服务错误码)。
异步办法示例代码:
// sourceText是待翻译的文本,长度需小于5000个字符。final Task<String> task = mlRemoteTranslator.asyncTranslate(sourceText);task.addOnSuccessListener(new OnSuccessListener<String>() { @Override public void onSuccess(String text) { // 辨认胜利的解决逻辑。 }}).addOnFailureListener(new OnFailureListener() { @Override public void onFailure(Exception e) { // 辨认失败的解决逻辑。 try { MLException mlException = (MLException)e; // 获取错误码,开发者能够对错误码进行解决,依据错误码进行差异化的页面提醒。 int errorCode = mlException.getErrCode(); // 获取报错信息,开发者能够联合错误码,疾速定位问题。 String errorMessage = mlException.getMessage(); } catch (Exception error) { // 转换错误处理。 } } });
可选:同步办法示例代码:
try { String output = mlRemoteTranslator.syncTranslate(sourceText); // 辨认胜利的解决逻辑。} catch (MLException e) { // 辨认失败的解决逻辑。 // 获取错误码,开发者能够对错误码进行解决,依据错误码进行差异化的页面提醒。 int errorCode = e.getErrCode(); // 获取报错信息,开发者能够联合错误码,疾速定位问题。 String errorMessage = mlException.getMessage();}
- 翻译实现后,开释资源。
if (mlRemoteTranslator!= null) { mlRemoteTranslator.stop();}
理解更多详情>>
拜访华为开发者联盟官网
获取开发领导文档
华为挪动服务开源仓库地址:GitHub、Gitee
关注咱们,第一工夫理解 HMS Core 最新技术资讯~