翻譯器和語言檢測器 API

實驗性: 這是一項實驗性技術
在生產中使用此技術之前,請仔細檢查瀏覽器相容性表格

安全上下文: 此功能僅在安全上下文(HTTPS)中可用,且支援此功能的瀏覽器數量有限。

Translator and Language Detector APIs 提供透過瀏覽器自帶的內部 AI 模型來檢測文字語言以及將文字翻譯成不同語言的功能(不同瀏覽器內建的 AI 模型可能有所不同)。

概念與用法

翻譯大量文字是當今網路上的常見任務。典型的用例包括:

  • 即時翻譯您語言不支援的文章。
  • 將使用者的支援請求翻譯成客服人員能理解的語言。
  • 促進不同語言使用者之間的聊天交流。

檢測文字語言是成功實現自動化翻譯的重要前提,但其用途也超越了直接翻譯。例如,它可以根據使用者的文字輸入自動配置使用者介面,從更新 UI 和錯誤字串,到自動載入合適的詞典以進行拼寫檢查或髒話檢測。

AI 非常適合促進語言檢測和翻譯。Translator and Language Detector APIs 提供基於非同步(Promise)的機制,讓網站可以透過瀏覽器自帶的內部 AI 模型來檢測語言和翻譯文字。這很有用且高效,因為瀏覽器會處理服務,而開發者不必依賴使用者下載 AI 模型,或者託管或付費使用基於雲的翻譯服務。

您還可以使用 AbortController 來取消掛起的 P2P 操作。

TranslatorLanguageDetector 例項會消耗大量資源,因此一旦您不再使用它們,建議使用 destroy() 例項方法將其移除(例如,Translator.destroy())。

有關如何使用這些 API 的演練,請參閱 使用 Translator and Language Detector APIs

介面

LanguageDetector 實驗性

包含所有語言檢測功能,包括檢查 AI 模型可用性、建立新的 LanguageDetector 例項、使用它來檢測語言等。

Translator 實驗性

包含所有翻譯功能,包括檢查 AI 模型可用性、建立新的 Translator 例項、使用它來建立翻譯等。

HTTP 標頭

Permissions-Policylanguage-detector 指令

控制對語言檢測功能的訪問。如果策略明確禁止使用,任何嘗試呼叫 LanguageDetector 方法的操作都將以 NotAllowedError DOMException 失敗。

Permissions-Policytranslator 指令

控制對翻譯功能的訪問。如果策略明確禁止使用,任何嘗試呼叫 Translator 方法的操作都將以 NotAllowedError DOMException 失敗。

安全注意事項

建立 LanguageDetectorTranslator 物件需要使用者最近與頁面進行過互動(需要 暫時的使用者啟用)。

對 API 的訪問還透過 language-detectortranslator Permissions-Policy 指令進行控制。

示例

完整示例請參閱 使用 Translator and Language Detector APIs

規範

規範
未知規範

瀏覽器相容性

另見