我打不了字,所以做了一款免費、開源的 Mac 聽寫 App

YapToText 是免費、開源的 Mac 聽寫軟體,採用 GPL 授權,完整的 Swift 原始碼在 GitHub 上,並在你的 Mac 上執行 Whisper Large v3 Turbo 和 Phi-3.5 Mini。它不用花錢,沒有付費方案,也沒有用量上限,我會做它,是因為我的手打字有困難。價格頁面只有一句話:免費。

Mac 上每一款好到能取代鍵盤的聽寫 App,不是要訂閱,就是要 249.99 美元的授權,不然就是要我把聲音交給別人的伺服器。我寫的所有東西都靠聽寫,所以這不是偏好,而是使用電腦的代價。於是我做了 YapToText:永遠免費,採用 GPL 開源,完全在這台機器上執行。它在 Mac App Store 上,所以安裝只要點一下,不需要 Terminal。

在 Mac App Store 下載 YapToText免費下載。不需要帳號,沒有鎖住的功能。需要搭載 Apple 晶片的 Mac 和 macOS 14 或以上版本。 原始碼在 GitHub 上。

步驟

  1. 從 Mac App Store 免費安裝 YapToText。
  2. 打開它並允許使用麥克風,再打開 <span lang="en">Accessibility</span>,讓它能在游標的位置輸入。
  3. 把游標放在你要文字出現的地方:電子郵件、訊息、程式碼註解。
  4. 按一下 <span lang="en">Right Command</span> 鍵,開始說話。
  5. 再按一次。你說的話會輸入在游標的位置。

我為什麼做它

我聽寫不是因為方便。我聽寫是因為打字對我來說很困難,而聽寫就是我寫電子郵件、訊息、文件,以及這款 App 裡程式碼註解的方式。當語音就是你的鍵盤,聽寫 App 就不是提升效率的玩具,而是輸入裝置。

這改變了價格的意義。文字編輯器要訂閱,是一個商業決定。為了能夠寫字這件事本身而訂閱,就是一種通行費。而把你說的每一個字都送到伺服器,也不是隱私頁面上的一個勾選框,而是你的信件、你的工作和你的就醫預約,全都經過一家你得永遠信任的公司。

我找不到同時做到三件事的 Mac App:好到足以取代打字,完全在裝置上執行,而且免費。所以我自己寫了一個,並把它送出去。

App Store 海報,標題為 I created this because my hands don't work,畫面上有無障礙圖像和 YapToText 的水豚。
圖1. 它存在的原因,一句話說完:我首先把 YapToText 做成無障礙工具,因為我需要靠它來寫字。

其他選擇實際要花多少錢

下面是我原本可能會用的那些 App 的價格,2026年10月3日在各家自己的網站上查閱。價格會變,換之前請再確認,完整比較有附來源的詳細資料。

  • Apple 聽寫。免費,在搭載 Apple 晶片的 Mac 上,支援的語言可以在裝置上處理。它不會整理你說的話,不會替電子郵件排版,也無法編輯你已經寫好的文字。
  • Wispr Flow。每月 15 美元,或按年付費每月 12 美元,免費方案在桌面版每週限 2,000 字。它的隱私頁面說,轉錄一律在雲端進行。
  • superwhisper。有使用本機模型的免費方案,Pro 每月 8.49 美元、每年 84.99 美元,或一次付清 249.99 美元。
  • MacWhisper。Pro 一次付清 64 歐元。它在本機執行,是很好的軟體。

這些不是不好的 App。有幾款在我還沒做出來的地方比我的更好。重點比較窄:底層的語音模型是開源的,Apple 把硬體加速免費提供給每一位開發者,而這些成本都不該落在一個無法使用鍵盤的人身上。

它能做什麼

按一個鍵,說話,再按一次,文字就出現在游標的位置,任何 App 都可以。你要做的就只有這些。底下是真正花了功夫的部分。

展開的 YapToText 面板:轉錄句子上方有即時的藍色波形,還有取消、暫停和停止按鈕,以及編號的模式標籤。
圖2. 一個鍵開始,你說話時文字在面板裡成形,然後落在游標的位置。
  • 它會讀你正在往裡面聽寫的那個句子。把游標放在一行的中間再開口,第一個字該變小寫時就會變小寫,空格會接得乾淨,句子還要繼續時會去掉結尾的句號。這是我在其他每一款 App 裡最懷念的功能。
  • 它分得出電子郵件和便條。Auto mode 會讀你說的內容,自己選擇格式。電子郵件出來就是電子郵件,簡短的訊息保持隨性,其他的就只是整理過。
  • 你可以用語音編輯文字。在任何 App 裡選取文字,按一下 Quick Edit 鍵,說出要改的內容:make this shorter(縮短)、fix the grammar(修正文法)、translate it to Spanish(翻成西班牙文)。改寫的結果會直接取代你選取的內容。
  • 口述標點的運作方式,就是聽寫使用者預期的樣子。說「is it working now, question mark」,就會得到那個標點,不會留下多餘的逗號。
  • 字典和語音指令。教它一個它老是聽錯的名字怎麼拼,或是在 Commands 頁面填入電話號碼的起始範本,這樣說「insert phone number」就會輸入你真正的號碼。

Intelligent Insert、Auto mode 和 Dictionaries 說明頁面各有詳細介紹,Mac 語音轉文字指南則帶你做第一次聽寫。

音訊路徑的內部

大部分的工程都花在這裡,因為我說話很輕,常常是在一間有 3D 印表機在運轉的房間裡。把原始的麥克風音訊丟給 Whisper 然後祈禱,是大多數包裝工具停下來的地方,也是它們在真實房間裡一碰就垮的原因。

在語音模型看到任何一個取樣之前:會先測量房間的雜訊,只有在訊噪比需要時才扣除穩定的雜訊,所以安靜的房間不會被過度處理。輕聲的語音是相對於房間被提升,而不是相對於固定的音量。擷取有峰值保護,所以一個大聲的字不會爆音。長時間的靜音會被壓縮,讓解碼器不會漂移。當片段測得有雜訊時,解碼會從貪婪搜尋切換成束搜尋。

在這之後:當轉寫結果比輸入的語音短時,會跑一次救援流程,另有一道防護,把 Whisper 在靜音結尾會掉進去的重複迴圈收攏起來。這一切在上線之前,都用我自己真實聽寫組成的測試環境量測過。對乾淨錄音有幫助的改動,常常會傷害輕聲說話的錄音。

App Store 海報,標題為 It hears you through anything,在展開的錄音面板上方列出上述音訊步驟。
圖3. 六個步驟的音訊路徑,從背景雜訊消除到語速修正,全都發生在 Whisper 之前或前後,而且全都在 Mac 上完成。

和其他開源 Whisper 包裝工具的差別

把 Whisper 接到一個快速鍵上,是一個週末的專案,好幾個人都做得很好。open-wispr 就是一個好例子:按住一個鍵,說話,放開,文字就出現在游標的位置,全部在裝置上,採用 MIT 授權。如果你要的只有這些,它是很好的選擇,你應該用它。

差別在逐字稿產生之後的事。包裝工具交給你的是 Whisper 的原始輸出。YapToText 大部分的工作,都在那份輸出和你真正想要的文字之間:

  • 語境。它會讀游標兩側的文字,並調整逐字稿去配合,所以句子中間的聽寫會有正確的大小寫、空格和結尾標點。
  • 整理。本機的語言模型把口語的贅詞變成完成的文字,並依你說的內容選擇格式,不需要呼叫雲端。
  • 編輯。在任何地方選取現有的文字,用語音修改,這是和轉錄完全不同的工作。
  • 音訊路徑。它有依訊噪比決定的雜訊扣除、相對於房間的增益、有峰值保護的擷取,以及在片段有雜訊時會切換策略的解碼器。輕聲在吵雜的房間裡也能用,靠的就是這些。
  • 安裝。它從 App Store 安裝,而不是用 shell 指令碼,所以它是沙盒化的,經過 Apple 審查,並由系統更新。
Quick Edit 卡片,有即時波形,寫著 Listening for your edit,下方是口述的指示 make it sound more formal。
圖4. 編輯和轉錄是不同的工作:在任何 App 裡選取文字,按一下 Quick Edit 鍵,說出要改的內容,卡片會顯示它聽到了什麼。

這些都不代表比較簡單的工具不對。它們只是不同大小的東西。我需要比較大的那一個,因為聽寫對我不是捷徑。它是我唯一的寫字方式。

開源的 Mac 聽寫 App 並排比較

這些是我所知道的 Mac 開源聽寫 App。星星數衡量的是關注度,不是品質,而且 YapToText 從 2026年7月22日 才上架 App Store,所以請看各欄的內容,不要看數字。

2026年10月3日,在 GitHub 和各專案自己的頁面上查閱。

App授權GitHub 星星數安裝方式能用語音編輯選取的文字平台
HandyMIT32,747從它的網站或 GitHub releases未說明Mac、Windows、Linux
FluidVoiceGPL-3.011,894Homebrew 或 GitHub releases可以,Write ModeMac
OpenWhisprMIT8,992從它的網站可以,用它的 voice agent 鍵Mac、Windows、Linux;付費方案另有 iPhone 和 iPad
VoiceInkGPL-3.06,651從它的網站付費下載,或自己編譯可以Mac;iPhone 和 iPad App 測試中
YapToTextGPL-3.025Mac App Store,免費,或 Homebrew可以,Quick EditMac

GPL 與 MIT,對使用者來說。兩者都讓你免費閱讀、編譯和修改程式碼。差別在於有人發佈修改後的副本時會怎樣:在 GPL 之下,他們必須以相同條款公開修改內容,在 MIT 之下則不必。對一個會聽到你所有談話的聽寫 App,我選了 GPL,這樣你能下載到的任何版本,你也都能讀到它的原始碼。VoiceInk 替代方案頁面詳細比較了最接近的 GPL App。

為什麼從 App Store 安裝,而不是用 shell 指令碼

很多開源的 Mac 工具,是把網路上的指令碼用管線送進你的 shell 來安裝。這對開發者很方便,卻要你用自己的權限,執行沒有經過審查的程式碼,來源是你在執行的那一刻無法查核的網址。

YapToText 在 Mac App Store 上。這代表它是沙盒化的,經過審查,透過系統更新,也能像其他 App 一樣移除。點一下,不用 Terminal,除了 Apple 已經檢查過的之外,沒有什麼需要你信任。免費又開源,不必搭配一種在公司的資安審查裡會過不了的安裝方式。

如果你偏好命令列,有一個 Homebrew cask,用 Developer ID 簽署並經過公證。它目前比 App Store 落後一版,是 1.5.2 對 1.5.3,而且不含模型。

Terminal:從我的 Homebrew tap 安裝 YapToText。

brew install --cask ryleighnewman/yaptotext/yaptotext

會發生什麼:下載約 12 MB 之後,YapToText 會出現在你的 Applications 資料夾裡,如果那裡有 App Store 的副本就會取代它。在 AI Models 頁面下載語音模型之前,它無法聽寫。

原始碼公開在 GitHub 上,目前是 1.5.2,所以你可以在執行之前先讀。安裝頁面說明了兩種方式。

在裝置上到底是什麼意思

語音模型和整理模型都在 App Store 版本裡。沒有帳號,沒有遙測,沒有使用情況分析,聽寫的任何部分都不會碰到網路。它在飛機上能用,第一次開啟、關掉 Wi-Fi 也能用。Homebrew 版本要先下載它的一個模型。唯一用到網路的地方,是你自己開始的模型下載,下載的是 AI Models 頁面上的其他模型,離線聽寫頁面有一個你可以自己跑的測試。

聲音是特別個人的資料。它不是一則搜尋查詢。它是你在說話,連同內容和語境一起附上。隱私聲明誠實的版本,不是公司會怎麼處理你的錄音的承諾。重點是錄音從不離開,而且證明這一點的程式碼是公開的。

App Store 海報,標題為 Nothing leaves your Mac,下方是 YapToText 的 AI Models 頁面,兩個模型都標示為 Included。
圖5. 兩個模型都在 App Store 版本裡,在 AI Models 頁面標示為 Included,所以聽寫從來不需要網路。

我做它學到的事

  • 模型是最簡單的部分。Whisper 開箱即用就很出色。讓聽寫感覺完整的一切,都在它的周圍:知道游標在哪裡、兩側是什麼、你在哪個 App 裡,以及你說「period」是什麼意思。
  • 插入文字比轉錄文字更難。在行為各不相同的 App 裡,讀取游標周圍的文字又不搶走焦點,花的功夫比整個轉錄流程還多。
  • 無障礙是設計,不是檢查清單。給無法打字的人用的 App,必須不用打字就能操作,而且不該看起來像醫療器材。它有你聲音的真實波形、三種面板版面和系統本身的材質,因為人們倚賴的工具,也值得看起來賞心悅目。

目前的進度

這是 2026年10月3日專案的狀況,用平實的數字說明。

  • 版本。Mac App Store 上是 1.5.3 (21),2026年9月29日發佈。GitHub 和 Homebrew 是 1.5.2,發佈說明列出每一項變更。
  • 授權。GPL-3.0,原始碼在 github.com/ryleighnewman/YapToText。
  • 關注度。GitHub 上有 25 顆星。
  • 金錢。不需要付任何錢。App 裡有一個小費罐,付小費不會改變你得到的任何東西。

重點整理

  • 免費。沒有付費方案,沒有上限,沒有帳號。
  • 開源。授權是 GPL-3.0,原始碼在 GitHub 上。
  • 在你的 Mac 上。兩個模型都在本機執行,你的聲音從不離開。

如果你是從有免費方案的付費 App 轉過來,superwhisper 替代方案頁面會一項一項說明怎麼換。

如果你想把其他開源的選擇並排來看,我在Mac 開源聽寫 App裡比較過了。

如果你試了而且有哪裡不對,我寧可聽到這個,也不想聽到別的。它就是這樣走到今天的。在 GitHub 上提交 issue。每一則我都會看。

在 Mac App Store 下載 YapToText免費下載。不需要帳號,沒有鎖住的功能。需要搭載 Apple 晶片的 Mac 和 macOS 14 或以上版本。 原始碼在 GitHub 上。

關於作者。 Ryleigh Newman 從事軟體開發,用手打字有困難,每天都用本站介紹的 YapToText 聽寫。本頁譯自英文。App 的介面和網站的其他頁面是英文的。 進一步瞭解這個專案(英文)。

指南

更多指南(英文)

資料來源

常見問題

Mac 有開源的聽寫軟體嗎?

有。YapToText 是免費、採用 GPL-3.0 的開源軟體,而且在 Mac App Store 上。Handy 和 OpenWhispr 採用 MIT 授權,FluidVoice 和 VoiceInk 採用 GPL-3.0。

有沒有 Wispr Flow 和 superwhisper 的開源替代方案?

有。YapToText 採用 GPL 授權且免費,在你的 Mac 上執行 Whisper 加上本機的整理模型,可以從 Mac App Store 或 Homebrew 安裝。什麼都不會上傳,也不需要帳號。

YapToText 可以離線使用嗎?

可以,Mac App Store 版本從第一次開啟就行:語音模型和整理模型都內附在 App 裡,所以聽寫不會發出任何網路請求。Homebrew 版本要先下載一個語音模型。

這和其他開源的 Whisper 包裝工具有什麼不同?

三點。它會讓你說的話配合游標周圍的句子,所以句子中間的聽寫會有正確的大小寫、空格和標點。它會替你選擇格式,所以電子郵件出來就是電子郵件。而且它讓你在任何地方選取文字,用語音修改。它也是從 App Store 安裝,而不是用 shell 指令碼。

真的免費嗎?有什麼陷阱?

沒有陷阱,也沒有付費方案。它永遠免費,原始碼是公開的,App 裡唯一的金錢往來是自願的小費罐,它不會改變你得到的任何東西。

App Store 上有哪一款 Mac 開源聽寫 App?

YapToText。我所知道的其他開源聽寫 App,都是請你到它們自己的網站或 GitHub releases 下載。App Store 代表點一下就能安裝、自動更新,還有 Apple 的沙盒和審查。