線上文本翻譯能力新增14個直譯模型,打造以中文為軸心語言的翻譯系統

来源:https://www.cnblogs.com/hmscore/archive/2023/02/28/17164393.html
-Advertisement-
Play Games

經濟全球化的今天,人們在工作和生活中經常會與外語打交道。相較傳播性較廣的英語而言,其他語種的識別和閱讀對大多數人來說是一件難事,此時就需要藉助語言翻譯軟體來幫助理解。 華為 HMS Core 機器學習服務(ML Kit)翻譯功能提供了多種翻譯模式,不僅可以滿足應用出行購物、網路社交等日常場景,還提供 ...


經濟全球化的今天,人們在工作和生活中經常會與外語打交道。相較傳播性較廣的英語而言,其他語種的識別和閱讀對大多數人來說是一件難事,此時就需要藉助語言翻譯軟體來幫助理解。

華為 HMS Core 機器學習服務(ML Kit)翻譯功能提供了多種翻譯模式,不僅可以滿足應用出行購物、網路社交等日常場景,還提供辦公文檔、視頻字幕等專業翻譯服務,滿足多種語言和場景應用。其中線上文本翻譯能力支持15國語種中文互譯,滿足郵件翻譯、語音翻譯、瀏覽器翻譯、同傳翻譯等場景。

當前主流的翻譯模式大都以語料資源較為豐富的英文作為中間語言進行“橋接”翻譯,但是經英文轉移後翻譯精度有所損失,且計算資源加倍執行效果降低。

基於此,HMS Core機器學習服務對線上文本翻譯能力進行升級,在原有的8國語言上又新增中意、中阿、中波、中荷、意中、阿中、波中、荷中 、中馬、中泰、中越、越中、泰中、馬中十四個直譯模型,支持TOP15語種中文互譯。相較於英文橋接翻譯,中文直譯模型可實現每秒併發300字元,端到端翻譯速度小於150ms,翻譯時延降低100%,翻譯速度更快;針對中文特色詞、俚語的翻譯結果更地道,翻譯質量更優。線上文本翻譯能力分批次打造可信中文直譯系統,確保中文和TOP語種的互譯效果優於友商,打造差異化競爭力,可以滿足中企出海或外企入華等對翻譯要求更高場景的需求。

產品優勢

個性化術語翻譯

用戶可自行提供術語以優化翻譯結果,華為術語翻譯引擎提供可定製的個性化術語翻譯能力。

中文為軸心的機器翻譯

支持TOP15語種中文互譯,讓翻譯時延更低,質量更優。在WMT 2021 國際機器翻譯大賽三角翻譯任務中,獲得俄到中翻譯第一名。

響應實時穩定

全流程毫秒級響應,譯文結果精準流暢。全球四大站點部署,助力品牌出海無憂。

多語言翻譯質量領先

依托先進的機器翻譯技術,結合各垂域大數據優勢,滿足用戶在多領域、多場景下的翻譯需求。在IWSLT 2020國際翻譯大賽中,獲得中到英字幕翻譯第一名。

開發步驟

開發準備

在進行開發之前,您需要完成必要的開發準備工作,同時請確保您的工程中已經配置HMS Core SDK的Maven倉地址,並且完成了本服務的SDK集成

線上文本翻譯能力集成

  1. 請參見雲端鑒權信息使用須知,設置您應用的鑒權信息。

  2. 創建線上文本翻譯器。可以通過文本翻譯器自定義參數類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);
  1. 可通過下麵的方法查詢線上翻譯所支持的語種。

非同步方法示例代碼:

MLTranslateLanguage.getCloudAllLanguages().addOnSuccessListener(
    new OnSuccessListener<Set<String>>() {
        @Override
        public void onSuccess(Set<String> result) {
            // 成功獲取線上翻譯所支持的語種。
    }
});

同步方法示例代碼:

try {
    Set<String> result = MLTranslateLanguage.syncGetCloudAllLanguages();
    // 成功獲取線上翻譯所支持的語種。
} catch (MLException e) {
    // 獲取線上翻譯所支持的語種出現異常。
}
  1. 進行線上文本翻譯(錯誤碼信息可參見:機器學習服務錯誤碼)。

非同步方法示例代碼:

// 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();
}
  1. 翻譯完成後,釋放資源。
if (mlRemoteTranslator!= null) {
    mlRemoteTranslator.stop();
}

瞭解更多詳情>>

訪問華為開發者聯盟官網
獲取開髮指導文檔
華為移動服務開源倉庫地址:GitHubGitee

關註我們,第一時間瞭解 HMS Core 最新技術資訊~


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 該引擎繼承於MergeTree,併在數據塊合併演算法中添加了摺疊行的邏輯。CollapsingMergeTree會非同步的刪除(摺疊)這些除了特定列Sign有1和-1的值以外,其餘所有欄位的值都相等的成對的行。沒有成對的行會被保留。因此,該引擎可以顯著的降低存儲量並提高SELECT查詢效率。 簡單來說就 ...
  • 轉載於:(140條消息) 如何管理oralce口令文件和參數文件_oracle 口令文件_夢想家DBA匠人的博客-CSDN博客口令文件審核 Step 1: 使用root賬號將 oracle dba的許可權移除 [[email protected] ~]# su - oracle[[email protected] ...
  • 前言 Redis 提供了 2 個不同形式的持久化方式: RDB(Redis DataBase) AOF(Append Of File) RDB 在指定的時間間隔內將記憶體中的數據集快照寫入磁碟, 也就是行話講的 Snapshot 快照,它恢復時是將快照文件直接讀到記憶體里。 備份是如何執行的 Redis ...
  • 約束 約束是作用於表中欄位上的規則,用於限制存儲在表中的數據,保證資料庫中數據的正確、有效和完整。 一. 常用的約束 約束作用於表中的欄位,可以在創建表或修改表的時候添加約束。 AUTO_INCREMENT 約束關鍵字 自動增長:用於比如每次新添加一行數據,id就+1。 如果自增和主鍵一起使用時,插 ...
  • 連接查詢用於多表關聯查詢,連接方式不同,查詢重點不同。 內連接 作用:查詢多表之間交集部分數據 關鍵詞:inner join 可簡寫為:join,即 inner join = join 圖示: 左外連接 作用:表 A 左連接表 B,以左表 A 為主查詢,關聯查詢表 B,查詢左表 A 所有數據,以及表 ...
  • sqlite3資料庫是一個小型的資料庫,當數據量不大,要求不是特別高的時候,是個不錯的選擇。 在Linux上移植和使用也非常的方便。 本示例是在硬體全志r528 .linux5.4 上驗證的。 移植操作: 1、源碼下載 去官網進行下載源碼SQLite Download Page,根據自己的選取選擇不 ...
  • 摘要:GaussDB目前採用的FIFO調度機制,該調度機制無法滿足用戶的網路隔離需求和QoS需求,同時FIFO調度可能帶來比較嚴重的抖動。 本文分享自華為雲社區《【玩轉PB級數倉GaussDB(DWS)】GaussDB(DWS)網路調度與隔離管控能力》,作者:門前一棵葡萄樹 。 一、常見的調度演算法 ...
  • 最近工作中需要部署一套資料庫服務到內網伺服器上,藉此機會,我重新整理了postgresql資料庫的搭建及入門使用方法 1、安裝方式(兩種選一種) a、第一種方式 sudo yum install -y https://download.postgresql.org/pub/repos/yum/rep ...
一周排行
    -Advertisement-
    Play Games
  • .NET Core 選項系統的主要實現在 Microsoft.Extensions.Options 和 Microsoft.Extensions.Options.ConfigurationExtensions 兩個 Nuget 包。對於一個框架的源碼進行解讀,我們可以從我們常用的框架中的類或方法入手 ...
  • 最近在工作中遇到一個問題,就是我有多個線程會調用bitmap對象,運行的時候報錯,對象當前正在其他地方使用。第一反應肯定是加鎖啊,於是我就在每個用到bitmap的地方都加了鎖,但是運行之後依然報這個錯 測試代碼如下 using System; using System.Drawing; using ...
  • 一:背景 1. 講故事 前段時間有位朋友微信找到我,說他的程式使用 hsl 庫之後,採集 plc 時記憶體溢出,讓我幫忙看一下怎麼回事,哈哈,貌似是分析之旅中的第二次和 hsl 打交道,既然找到我,那就上 windbg 說話吧。 二:WinDbg 分析 1. 為什麼會記憶體溢出 簡單觀察程式的提交記憶體之 ...
  • 在 IIS 上啟用 Websocket 在 Windows Server 2012 或更高版本上啟用對 WebSocket 協議的支持: 備註 使用 IIS Express 時無需執行這些步驟 通過“管理”菜單或“伺服器管理器”中的鏈接使用“添加角色和功能”嚮導。 選擇“基於角色或基於功能的安裝”。 ...
  • C#-垃圾回收機制(GC) 什麼是GC 官網中有這麼一句話: The garbage collector is a common language runtime component that controls the allocation and release of managed memory ...
  • 呆了2個大屏行業的公司,對大屏幕有一些瞭解,所以整理下所瞭解的觸摸屏相關概念。方便自己以及進入這個行業的小伙伴們,能有個系統、快速的認知。 觸摸屏詳細的知識點,網上其實都有。整理資料過程中,我也瞭解了更多的觸摸屏知識,像聲波屏、光學屏之類的之前就沒接觸。下麵分不同的模塊,給大家介紹 交互觸摸屏類型 ...
  • 近段時間忙於各種項目和對【易排平臺】的優化,沒顧得上分享APS相關的小技巧,回頭看看小公眾號的關註人數早已達1500+,在此爭取時間寫一下這段時間在項目上及平臺優化過程中遇到的一些小技巧,以感謝諸位的關註。過去數月的解決的問題中,涉及最多的是規劃模型中,實現各種時間維度的功能,目前在平臺上也稍有成果 ...
  • 針對大量log日誌快速定位錯誤地方 動態查看日誌 tail -f catalina.ou 從頭打開日誌文件 cat catalina.ou 可以使用 >nanjiangtest.txt 輸出某個新日誌去查看 [[email protected] logs]# cat -n catalina.out |grep 7 ...
  • 前言 RocketMQ是阿裡巴巴旗下一款開源的MQ框架,經歷過雙十一考驗、Java編程語言實現,有非常好完整生態系統。RocketMQ作為一款純java、分散式、隊列模型的開源消息中間件,支持事務消息、順序消息、批量消息、定時消息、消息回溯等 本篇文章第一部分屬於一些核心概念和工作流程的講解;第二部 ...
  • 在java,c#類的成員修飾符包括,公有、私有、程式集可用的、受保護的。 對於python來說,只有兩個成員修飾符:公有成員,私有成員 成員修飾符是來修飾誰呢?當然是修飾成員了。那麼python類的成員包括什麼呢? python成員: 欄位,方法,屬性 每個類成員的修飾符有兩種: 公有成員:內部外部 ...