argosopentech/argos-translate
Open-source offline translation library written in Python
Argos Translate – 離線機器翻譯庫
功能簡介 – 一個允許你在本地執行神經機器翻譯模型而無需網際網路連接的 Python 套件。它封裝了 OpenNMT / CTranslate2 推理引擎,並提供簡單的 API、命令列工具以及(透過單獨的儲存庫)桌面 GUI。
核心能力
- 外掛式語言模型 – 翻譯模型以 ".argosmodel" zip 檔案形式分發。
argospm-index儲存庫列出了數十個預訓練模型(阿拉伯語、中文、法語、斯瓦希里語……),套件管理員 (argospm) 可以下載並安裝它們。 - 樞軸翻譯 (Pivot translation) – 如果缺少特定語言對的直接模型,Argos Translate 可以使用你已安裝的模型,透過中間語言自動路由文本(例如:es → en → fr)。
- GPU 支援 – 設定環境變數
ARGOS_DEVICE_TYPE=cuda(或auto)即可將裝置選擇傳遞給底層的 CTranslate2 引擎,從而啟用 CUDA 加速。 - 多種前端 –
- Python 函式庫 (
argostranslate.translate.translate) - CLI (
argos-translate和argospm命令) - 桌面 GUI(在單獨的
argos-translate-gui儲存庫中) - Web/API – LibreTranslate 服務基於 Argos Translate 構建,並提供 REST 端點。
- Python 函式庫 (
- 擴充功能 – 用於翻譯 HTML (
translate-html) 和整個檔案 (argos-translate-files) 的輔助函式庫。
安裝
# 核心函式庫
pip install argostranslate
# 選項 GUI
pip install argostranslategui
你也可以複製儲存庫並在虛擬環境中使用 pip install -e. 進行安裝。
快速範例 (Python)
import argostranslate.package, argostranslate.translate
from_code, to_code = "en", "es"
# 獲取最新的模型列表並安裝所需的配對
argostranslate.package.update_package_index()
pkg = next(p for p in argostranslate.package.get_available_packages()
if p.from_code == from_code and p.to_code == to_code)
argostranslate.package.install_from_path(pkg.download())
print(argostranslate.translate.translate("Hello World", from_code, to_code))
# → ¡Hola Mundo!
命令列用法
argospm update # 重新整理模型索引
argospm install translate-en_de # 安裝特定模型
argos-translate --from en --to de "Hello World!"
# → Hallo Welt!
生態系統與相關專案
- LibreTranslate – 一個公開的 Web API 和演示網站,其底層執行著 Argos Translate。
- argos‑train – 用於訓練與 Argos Translate 相容的自有模型的腳本。
- MetalTranslate – 對同一翻譯引擎的 C++ 封裝。
- 許多語言(Python, Rust, Go, Java)的語言模型綁定列在 README 中。
授權 – 採用 MIT 或 CC0 雙重授權,允許寬鬆的商業用途和公有領域奉獻。
適用對象 – 需要裝置端翻譯的開發者(隱私敏感型應用、邊緣裝置、離線工具)、正在嘗試 OpenNMT 模型的研究人員,或任何想要免費、自行託管的雲端翻譯服務替代方案的人。
相關
- 專案
- 專案
- 專案
- 專案
- 專案