RTranslator 是一款(幾乎)開源、免費、離線的 Android 即時翻譯應用程式。
連接到擁有該應用程式的人,連接藍牙耳機,將手機放入口袋中,然後您就可以像對方說您的語言一樣進行對話。
對話模式是RTranslator的主要功能。在此模式下,您可以與使用此應用程式的另一部手機連接。如果用戶接受您的連線請求:
當您說話時,您的手機(或藍牙耳機,如果已連接)將捕獲音訊。
捕獲的音訊將轉換為文字並發送到對話者的手機上。
對話者的手機會將收到的文字翻譯成他的語言。
對話者的手機會將翻譯後的文字轉換為音頻,並從揚聲器中再現它(或透過對話者的藍牙耳機,如果連接到他的手機)。
所有這一切都是雙向的。
每個使用者可以擁有多部已連接的電話,以便您可以翻譯兩個以上的人之間以及任意組合的對話。
如果對話模式適用於與某人進行長時間對話,那麼該模式則專為快速對話而設計,例如在街上詢問資訊或與店員交談。
此模式只能翻譯兩個人之間的對話,不適用於藍牙耳機,而且必須輪流說話。它不是真正的同聲翻譯,但它只能與一部手機一起使用。
在此模式下,智慧型手機麥克風將同時以兩種語言聆聽(可在對講機模式的相同畫面中選擇)。
該應用程式將檢測對話者使用哪種語言,將音頻翻譯成另一種語言,將文字轉換為音頻,然後從手機揚聲器中再現。 TTS 結束後,它將自動恢復收聽。
這種模式只是一個經典的文字翻譯器,但總是有用的。
RTranslator 使用Meta 的NLLB 進行翻譯,使用OpenAi 的Whisper 進行語音識別,兩者都是(幾乎)開源且最先進的AI,具有出色的品質並直接在手機上運行,確保絕對隱私,甚至可以在離線狀態下使用RTranslator。
此外,RTranslator 甚至可以在背景運行、手機處於待機狀態或使用其他應用程式時(只有當您使用對話或 WalkieTalkie 模式時)。然而,有些手機會限制後台的電量,因此在這種情況下,最好避免它並在螢幕打開的情況下保持應用程式開啟。
新的圖形使用者介面!由基亞拉·欽達莫 (Chiara Chindamo) 設計。
在文字翻譯模式中加入了說話和複製按鈕。
新增了在 WalkieTalkie 模式下手動控制麥克風的選項。
新增了使用低品質語言的選項。
修復了一些錯誤。
有關更改的完整列表,請參閱此處。
我對 AI 模型進行了很多優化,以最大限度地減少 RAM 消耗和執行時間,儘管如此,為了能夠使用該應用程式而沒有崩潰的風險,您需要一部至少有6GB RAM 的手機,並且有足夠好的執行時間你需要一部CPU夠快的手機。
如果您的手機相當蹩腳(或者如果您想要最大速度),您始終可以使用 RTranslator 1.0 版(但由於它使用 Google API,因此它不是免費的,並且需要一些初始設定)。
要安裝應用程序,請從https://github.com/niedev/RTranslator/releases/ 下載最新版本的應用程式apk 文件並安裝它(忽略其他文件,這些文件將在第一次啟動時由應用程式自動下載)。
首次啟動時,RTranslator 將自動下載翻譯和語音辨識模型 (1.2GB),完成後您就可以開始翻譯。
初始下載將從 GitHub 獲取模型,但是在某些地區 GitHub 速度非常慢,遇到此類問題的人可以從電腦單獨下載模型(或一般以他們喜歡的任何方式),然後手動將它們插入到應用程式遵循本指南。
如果您有 GitHub 帳戶並希望在新版本發佈時收到通知,您可以透過點擊頁面頂部的「觀看」->「自訂」->「發布」->「應用程式」來實現此目的。
支援的語言如下:
阿拉伯語、保加利亞語、加泰隆尼亞語、中文、克羅埃西亞語、捷克語、丹麥語、荷蘭語、英語、芬蘭語、法語、加利西亞語、德語、希臘語、義大利語、日語、韓語、馬其頓語、波蘭語、葡萄牙語、羅馬尼亞語、俄語、斯洛伐克語、西班牙語、瑞典語、泰米爾語、泰語、土耳其語、烏克蘭語、烏爾都語、越南語。
如果您的語言不在清單中,從 RTranslator 2.1 版本開始,您可以進入設定並啟用「支援低品質語言」來新增以下語言(翻譯和語音辨識品質較低):
南非荷蘭語、阿坎語(僅文本)、阿姆哈拉語、阿薩姆語、班巴拉語(僅文本)、孟加拉語、巴什基爾語、巴斯克語、白俄羅斯語、波斯尼亞語、宗卡語(僅文本)、世界語(僅文本)、愛沙尼亞語、埃維語(僅文本)、法羅語、斐濟語(僅文本)、格魯吉亞語、瓜拉尼語(僅文本)、古吉拉特語、豪薩語、希伯來語、印地語、匈牙利語、爪哇語(僅文本)、卡納達語、克什米爾語(僅文本)、哈薩克語、基庫尤語(僅文本)、基尼亞盧安達語(僅文本) )、韓語、吉爾吉斯語(僅文本)、寮語、林堡語(僅文本)、林加拉語、立陶宛語、盧森堡語、馬其頓語、他加祿語(僅文本)、藏語。
說話時,RTranslator 使用您手機的系統 TTS,因此後者的品質和支援的語言取決於您手機的系統 TTS。
上面看到的支援的語言都與Google TTS相容,這是建議的TTS(儘管你可以使用你想要的TTS)。
若要變更系統 TTS(以及 RTranslator 使用的 TTS),請從 Play 商店或您喜歡的來源下載您要使用的 TTS,然後開啟 RTranslator,然後開啟其設定(右上角),然後在「輸出」部分,點擊“文字轉語音”,此時系統設定將在該部分中打開,您可以在其中選擇首選系統TTS 引擎(在已安裝的引擎中),此時,如果您更改了首選引擎,重新啟動RTranslator 以應用更改。
隱私是一項基本權利。這就是為什麼 RTranslator 不收集任何個人資料(我甚至沒有伺服器)。欲了解更多信息,請閱讀隱私權政策(目前與RTranslator 1.0相同的隱私權政策,但我將來會更新)。
RTranslator 程式碼是完全開源的,但它使用的一些外部程式庫的許可證不太寬鬆,這些是應用程式使用的所有外部程式庫(帶有其許可證的指示):
BluetoothCommunicator(開源):用於裝置之間的藍牙 LE 通訊。
GalleryImageSelector(開源):用於從圖庫中選擇和裁剪個人資料圖像。
OnnxRuntime(開源):用作人工智慧模型的加速器引擎。
SentencePiece(開源):用於 NLLB 輸入文字的標記化。
Ml Kit(閉源):用於WalkieTalkie模式下的語言辨識。
以及以下 AI 模型:
NLLB(開源,但僅限非商業用途):使用的模型是帶有KV快取的NLLB-Distilled-600M。
Whisper(開源):使用的模型是具有KV快取的Whisper-Small-244M。
我將NLLB 和Whisper 都轉換為onnx 格式,並以int8 對其進行量化(排除一些權重以確保質量損失幾乎為零),我還分離了模型的某些部分以減少RAM 消耗(如果沒有這種分離,一些權重會在運行時重複,消耗更多RAM 超出預期)並進行了其他優化以減少執行時間。
以下是我的優化結果:
正常 NLLB onnx 模型 (全 int8,無 kv 快取) | RTranslator NLLB onnx 模型 (部分int8,帶有kv-cache,分開的部分) | |
---|---|---|
記憶體消耗 | 2.5GB | 1.3GB(提升 1.9 倍) |
75 個代幣的執行時間 | 8秒 | 2 秒(提高 4 倍) |
使用 Olive 優化的 Whisper onnx 模型 (全 int8,附 kv 快取) | RTranslator Whisper onnx 模型 (部分int8,帶有kv-cache,分開的部分) | |
---|---|---|
記憶體消耗 | 1.4GB | 0.9 GB(提升 1.5 倍) |
11秒音訊的執行時間 | 1.9秒 | 1.6 秒(提高 1.2 倍) |
NB RTranslator Whisper 型號也可以消耗 0.5 GB RAM,但執行時間為 2.1 秒(此模式用於 RAM 小於 8 GB 的手機)
這是一個開源且完全無廣告的應用程序,我不從中賺錢。
因此,如果您喜歡該應用程式並想要表示感謝並支持該項目,您可以透過 PayPal 點擊下面的按鈕進行捐贈(任何金額都可以)。
如果你願意捐贈,或只是活出一顆星星,謝謝你❤️
如果您發現任何錯誤,請透過提出問題或發送電子郵件至 [email protected] 來報告。
享受您的同聲翻譯機。