系統定位與查證範圍
FluentRead 是開源瀏覽器擴充功能,可在原文下方顯示譯文,並提供選取翻譯、AI 閱讀卡、學習紀錄、文件閱讀與支援平台的雙語字幕。輸入為網頁文字、選取句子、文件或可讀取字幕;輸出與可用操作取決於安裝版本、瀏覽器及所選翻譯服務。
基本網頁翻譯可使用免 API key 的免費服務。AI 解說需另有可用的 AI 服務與模型;使用本機模型也只改變對應功能的處理路徑,不能推論所有工具都離線執行。
安裝與首次翻譯
官方 README 提供下列安裝入口。從對應瀏覽器安裝後,重新整理已開啟的網頁,再固定工具列上的 FluentRead 圖示。
| 環境 | 安裝入口 | 需要確認的限制 |
|---|---|---|
| Chrome | Chrome Web Store | 商店版本與來源 checkout 可能不同 |
| Edge | Edge Add-ons | 行動版是否出現安裝入口,取決於瀏覽器版本與管理政策 |
| Firefox | Mozilla Add-ons | 使用裝置提供的相容安裝方式 |
| Userscript | Greasy Fork | 先安裝並啟用相容的腳本管理器,功能範圍較少 |
| Safari | Userscripts 路線或原生開發者預覽 | 沒有現成 Safari 商店套件;桌面擴充功能 ZIP 不能直接裝到 iPhone |
Chrome 可從網址列旁的擴充功能選單找到 FluentRead,再點選固定圖示。其他瀏覽器的固定入口可能不同;以能打開 FluentRead 選單為檢查起點。
- 未完成:
在一般 HTTP(S)文章頁測試,避開瀏覽器設定與擴充功能商店等受保護頁面。
- 未完成:
首次開啟時選擇介面語言並確認;介面語言只影響按鈕與設定。
- 未完成:
另外設定目標語言,來源語言可先保留自動偵測。
- 未完成:
先使用
Free translation services,確認目標語言受可用服務支援。 - 未完成:
選擇
Translate,閱讀後再用Restore還原。
核心功能與操作入口
網頁閱讀
Translate / Restore
雙語對照與原文還原
原文與譯文可並列閱讀,預設依閱讀位置處理內容;更換語言或服務後先還原,再開始新的翻譯。
詞句查詢
Selection translation
查詢目前選取的內容
啟用後選取文字,點擊附近的 FluentRead 圖示,使用翻譯、字典或朗讀等可用工具。
深入理解
AI explanations / Structure
以可用 AI 模型解釋句意與句構
設定 AI 服務與模型後,主動選擇解說或句構操作;分析結果需對照原文,無法對齊時可能只顯示文字說明。
持續學習
Learning Center
保留詞句及來源語境
保存字詞、片語與句子供後續閱讀及複習;學習資料與設定備份的涵蓋範圍不同。
文件閱讀
Document translation
匯入、翻譯、校訂與下載文件
依檔案格式與大小限制開啟文件,切換原文、雙語與譯文視圖;下載使用目前保留的譯文與編輯結果。
影音閱讀
Video subtitle translation
在支援的播放器對照字幕
多數平台需要本身提供可讀字幕;X 可使用部分桌面擴充功能的本機辨識路徑,Userscript 不提供字幕功能。
網頁選取卡不會因開啟就自動呼叫 AI。使用者主動啟動學習操作時,才將選取內容與允許的語境送往設定的服務。
翻譯服務與 AI 設定
在 Settings → Translation services 選擇服務,依供應商填入 URL、金鑰與必要欄位;AI 服務還需選擇帳號可用的模型。按下 Check connection 會送出短請求,可能使用額度;成功只證明該次檢查通過。
確認供應商支援所需語言,並核對帳號的 API 額度、地區與模型權限。
完成連線設定與檢查後,選擇
Set as default translation service。以一小段一般文字測試,再翻譯整篇文章。
文件、字幕與閱讀卡可有不同服務設定,逐一核對正在使用的服務。
| 路線 | 需要準備的資料 | 費用與處理邊界 |
|---|---|---|
| 免費翻譯服務 | 可用候選服務與語言設定 | 不需 API key,但公開端點可能限流、變動或停止服務 |
| 既有機器翻譯帳號 | 對應服務的金鑰、區域或帳號欄位 | 依供應商 API 方案與額度計費 |
| AI 服務 | 正確端點、金鑰及可用模型 | 訂閱聊天產品不一定包含 API 額度 |
| 自訂相容端點 | 相容協定、模型 ID 與完整路由 | 相容端點使用 OpenAI Chat Completions;其他協定不能直接當成相同入口 |
免費服務的自動分配或備援可能將同一段文字送往另一供應商。若只允許單一供應商接收內容,停用其他候選服務,或直接選擇該供應商的獨立服務。
額外 AI 語境與 AI 多段翻譯預設關閉。啟用語境會增加提交的網頁內容,可能影響額度與等待時間;語境有範圍限制,仍需核對術語與重要資訊。
瀏覽器本機模型與 Ollama
| 路線 | 操作方式 | 限制 |
|---|---|---|
Local model translation | 在服務設定選擇模型,下載並完成驗證,再選為翻譯服務 | 不需另開伺服器;需瀏覽器擴充功能,Userscript 無此功能 |
Ollama (local) | 安裝 Ollama、啟動伺服器並下載模型,再填入實際模型名稱 | 需允許擴充功能的來源連線;模型與伺服器需自行管理 |
Ollama 的預設位址為 http://127.0.0.1:11434,不需 API key;其他裝置或連接埠需依文件提供完整的 /v1/chat/completions URL。較慢的電腦可在 Request limits → Entire service → Custom 將並行數設為 1,再觀察回應與資源用量。
本機模型首次下載仍需網路,下載大小也不等於執行時記憶體用量。模型檔保留於目前瀏覽器,設定備份不包含模型;Ollama 自行管理模型常駐狀態。
文件與字幕的可用範圍
文件匯入與下載
開啟 Document translation 後匯入檔案,或提供線上 PDF 的直接連結。若連結需要登入而無法開啟,先下載檔案,再從本機匯入。
| 項目 | 已確認的範圍 |
|---|---|
| 文件格式 | PDF、ePub、DOCX、HTML、TXT、Markdown、JSON |
| 字幕檔格式 | SRT、VTT、ASS、SSA、LRC |
| 大小限制 | PDF 為 50 MB,其他格式為 10 MB |
| 舊版 Word | 先將 .doc 轉為 .docx |
| 掃描 PDF | 先辨識文字,再翻譯;可能需要下載辨識語言資料 |
| 下載結果 | 選擇雙語或純譯文,並包含目前保留的校訂內容 |
文件可暫停、續譯與重試,已完成的結果與編輯會保留。更換語言或部分設定後執行 Retranslate 會取代原有譯文與人工編輯;需要保留時先下載目前版本。
未翻譯的段落在部分下載中保留原文,下載不代表全部內容都已翻譯。掃描辨識、公式與專業術語仍可能有誤,請對照原始檔;瀏覽器資料被清除也可能使本機文件與編輯紀錄消失。
影片與會議字幕
官方文件列出 YouTube、X、Udemy、Disney+ 及 Google Meet、Teams、Zoom 網頁會議等路線。多數情境需要平台本身提供可讀字幕,帳號、地區、播放器與會議主持權限也可能限制可用性。
先啟用 Video subtitle translation,再開啟播放器原生字幕。X 上沒有字幕的影片可在支援的桌面 Chrome、Edge、Firefox 擴充功能使用瀏覽器內 Whisper;首次需下載模型,文件限制每部影片最長 20 分鐘。
Whisper 辨識可以在本機執行,但辨識後的文字仍可能送給所選翻譯服務。FluentRead 不會替沒有字幕的會議產生字幕,也不控制桌面會議程式。
Userscript、手機與 Safari
Userscript 需搭配 Tampermonkey、Violentmonkey、Via 或 Safari Userscripts 等相容管理器。只保留一份 FluentRead 腳本,確認站點權限與腳本已啟用,再重新載入一般網頁。
| 安裝形式 | 可採用的路線 | 主要限制 |
|---|---|---|
| 一般 Userscript | 核心網頁、選取與懸停翻譯 | 無圖片 OCR、區域擷取、影片字幕、寫作輔助及部分統計功能 |
| Android Via | 依文件建立 standalone 腳本後匯入 | Greasy Fork 與來源建置各自更新,需確認實際檔案與管理器版本 |
| Safari Userscripts | 開啟管理器與網站權限,從浮動按鈕進入設定 | 沒有腳本選單命令;頁面與服務網域權限分開處理 |
| 原生 Safari | Safari/iOS 26+ 的開發者預覽 | 需來源建置、Xcode 與簽署流程,尚無 Safari 商店套件 |
原生 Safari 預覽仍缺少 Chrome 內建翻譯、圖片 OCR、區域擷取及部分平台功能。iOS 系統影片全螢幕不顯示一般網頁覆蓋層;目前文件描述的系統字幕路徑仍需實體裝置驗證。
進階閱讀與操作原則
依閱讀位置處理內容
預設先翻譯目前閱讀位置附近的段落。先往下捲動確認是否持續出現譯文,尚未捲到的內容不能直接當成翻譯失敗。
更換服務前先還原
網頁更換語言、服務或部分基本樣式後,先還原原文再翻譯。文件的續譯與重新翻譯規則不同,先保留重要編輯。
對指定範圍進行翻譯
使用 Section 選取文章或討論串,鎖定後再確認翻譯。選取範圍本身不會送出翻譯請求。
避免重複處理相同網頁
版面重複或錯亂時,先還原,再停用瀏覽器內建翻譯與其他翻譯擴充功能,逐一縮小衝突來源。
AI 句構的角色標示與詞性是不同層次,分析也可能因模型輸出格式而退回文字說明。將結果當成閱讀參考,對照原句與上下文;重要專業用語可搭配術語表維持一致。
一篇外語文章的閱讀範例
此範例使用可公開閱讀的一般文章,目標為繁體中文。先使用免費翻譯,不配置 API key;AI 解說留作已具備可用服務時的選項。
| 階段 | 操作 | 檢查結果 |
|---|---|---|
| 確認基準 | 重新整理文章,開啟 FluentRead,分別確認介面與目標語言 | 按鈕語言符合設定,翻譯目標另行顯示 |
| 閱讀雙語 | 選擇 Free translation services,按 Translate,往下閱讀 | 原文保留,附近段落逐步出現譯文 |
| 查詢單句 | 啟用 Selection translation,選取一句並打開卡片 | 卡片顯示目前選取的內容與可用查詢工具 |
| 深入解釋 | 有可用 AI 服務時設定 AI explanations,主動選 Structure | 顯示句構或文字解說;未配置服務時保留普通翻譯 |
| 比較與還原 | 對照原文確認術語,最後按 Restore | 頁面回到原文,待完成的網頁翻譯停止 |
本例依官方介面文件整理;本次研究未執行外掛。實際驗收時,記錄瀏覽器、已安裝版本、服務、語言與文章網址,並保留已遮蔽私人內容的畫面。
隱私、金鑰與備份
設定與學習紀錄預設留在本機;雲端翻譯會把相關文字送給所選供應商,備援也可能改由其他供應商接收。額外 AI 語境、文件內容與字幕各有處理路徑,使用敏感資料前先核對對應功能及服務。
API key 會持續保存在本機設定,不是關閉瀏覽器即清除的暫存憑證。設定儲存的加密使用公開的應用程式材料,不能視為使用者自有密碼的秘密保護;可存取瀏覽器設定檔或備份的人仍可能讀取憑證。
| 備份形式 | 涵蓋範圍 | 需要確認的限制 |
|---|---|---|
| 本機完整備份 | 設定、字詞庫及模型用量,可能含 API key、服務憑證與來源文字 | 未加密 JSON;不等於所有本機資料庫的完整鏡像 |
| 雲端基本設定 | 語言、外觀、快捷鍵及網站規則等一般設定 | 預設排除連線、金鑰、模型選擇、URL 與私人提示詞 |
| 雲端敏感設定 | 明確選用後,加入設定中的服務連線、憑證及私人提示詞 | 仍不包含字詞庫、對話、使用統計或最近文件 |
Google Drive 與 WebDAV 的雲端設定備份由使用者手動執行,修改設定不會自動上傳。敏感設定的同意會保存在目前瀏覽器,直到關閉該選項;取消、失敗或更換帳號不會自動清除這項選擇。
故障排除與已知限制
| 現象 | 優先檢查 | 下一步 |
|---|---|---|
| 網頁完全沒有變化 | 外掛開關、頁面權限與是否為受保護頁面 | 重新整理一般文章頁,以單段文字重試 |
| 只有附近段落出現譯文 | 預設依閱讀位置處理 | 向下捲動,再檢查服務與文章辨識範圍 |
| 介面是中文但譯文不是中文 | 介面語言與目標語言分開設定 | 修正目標語言,還原後重新翻譯 |
| 選取可翻譯但沒有 AI 分析 | AI 服務、模型及學習操作是否啟用 | 設定可用服務,再主動要求解說或句構 |
| 連線檢查失敗 | URL、金鑰、模型、區域與額度 | 依供應商錯誤碼修正,不公開完整請求 |
| 回傳網頁的 HTTP 404 | 端點路徑或 API 協定不符 | 核對完整路由,不能只據此判定金鑰無效 |
| 遇到限流或整篇翻譯失敗 | 並行數、請求量與服務額度 | 降低並行或縮小範圍,稍後重試或換服務 |
| 文件無法匯入 | 格式、大小、連結登入與辨識條件 | 先下載可用檔案,核對限制後重試 |
| 影片沒有雙語字幕 | 安裝形式、字幕開關與原生字幕 | 先啟用平台字幕,X 再檢查支援的本機辨識 |
| 重複譯文或版面錯亂 | 其他翻譯工具同時作用 | 還原後逐一停用衝突工具 |
免費端點、服務模型與瀏覽器限制會變動,文件中的功能也可能尚未進入所用商店版本。回報時提供實際安裝版本及可公開重現的步驟;文字辨識、翻譯與 AI 解說均需人工核對重要內容。
開發者建置與貢獻
一般讀者可直接使用商店版。需要研究或修改程式時,固定至本次查證 commit,依 .nvmrc 使用 Node.js 22.23.4,並透過 Corepack 採用套件指定的 pnpm 12.18.0。
git clone https://github.com/FluentRead/FluentRead.git
cd FluentRead
git checkout 2f0fb198db20addfbfda06b84185a7638a6dfc52
nvm install
corepack pnpm install --frozen-lockfile
corepack pnpm devcorepack pnpm dev 啟動本機開發;Chrome 打包入口為 corepack pnpm zip。這些是上游工程命令,本次研究未執行安裝、建置或外掛載入測試。
維護者發版文件另列 Edge、Firefox、Userscript 與 Safari 的建置方式。產生 ZIP 不代表已完成商店審核或簽署;Firefox 與 Safari 等平台還有各自的分發流程。
後續閱讀與問題回報
先完成基本翻譯與還原,再依需求設定 AI、文件或字幕的服務。需要減少文字對外傳送時,評估本機翻譯路徑並逐項確認其他工具的網路行為。
官方使用指南:查詢目前介面與支援範圍。
來源儲存庫與 Issues:回報版本、公開網址、重現步驟與遮蔽後的畫面。
GPL-3.0 授權檔:散布或修改程式前,連同第三方授權聲明閱讀。
官方 README 歡迎程式碼、文件、介面翻譯及網站適配的貢獻。先以可重現的單一問題描述預期與實際結果,再提出對應修改。
參考資料
- FluentRead LICENSE
- FluentRead README.md
- FluentRead package.json
- FluentRead .nvmrc
- FluentRead docs/en/guide/getting-started.md
- FluentRead docs/en/guide/features.md
- FluentRead docs/en/config/translation-engines.md
- FluentRead docs/en/guide/webpage-translation.md
- FluentRead docs/en/guide/sentence-analysis.md
- FluentRead docs/en/guide/document-translation.md
- FluentRead docs/en/guide/video-subtitles.md
- FluentRead docs/en/guide/faq.md
- FluentRead docs/en/guide/mobile-safari.md
- FluentRead docs/en/guide/userscript.md
- FluentRead docs/maintainers/releases.md
- FluentRead docs/en/guide/privacy.md
- FluentRead docs/en/config/backup-sync.md
- FluentRead src/platform/storage/configEncryption.ts
- FluentRead src/platform/google-drive/encryption.ts