想像你在學英文,開啟瀏覽器、允許麥克風和鏡頭,然後開始跟 AI 對話。它聽得到你的聲音、看得到你手裡的物體,用流暢的中文或英文回應,所有運算都發生在你自己的電腦裡。這不是科幻電影,這是開發者 fikrikarim 用 Parlor 在 M3 Pro 上實現的場景。

根據 GitHub 的說明,Parlor 使用 Google 的 Gemma 4 E2B 模型來理解語音和影像,搭配 Kokoro 文字轉語音技術,建立了一個完全本地運行的多模態 AI 對話系統。

為什麼要本地運行?

作者在一篇部落格中提到,他自架了一個免費的語音 AI 伺服器來幫助人學英語,已經有數百名每月活躍使用者。但他一直在思考:如何讓這個服務維持免費,同時又能長久運營?

顯而易見的答案是:把所有運算都搬到本機上,徹底消除伺服器成本。六個月前,要即時運行語音模型還需要一張 RTX 5090 顯卡。

但 Google 剛剛釋出的一個超強小型模型改變了這一切。開發者發現,他可以在 M3 Pro 上即時運行這個模型,而且還支援視覺輸入。你無法用這個模型寫程式碼,但對於學習新語言的人來說,這是遊戲規則的改變。

想像幾年後,人們可以在自己的手機上本地運行這樣的系統。他們可以把鏡頭對準物體,然後用語音討論它們。而且這個模型支援多種語言,使用者隨時可以切換回母語。

這基本上就是 OpenAI 幾年前展示過的技術願景,但現在已經可以在消費級硬體上實現。

Parlor 的技術架構

Parlor 的整體架構很直觀:瀏覽器透過 WebSocket 傳送音訊和影像給後端伺服器,伺服器運行模型推理,然後把音訊串流回傳給瀏覽器播放。

具體來說,瀏覽器透過 WebSocket 傳送 PCM 音訊和 JPEG 影格到 FastAPI 伺服器。伺服器上有兩個核心組件:Gemma 4 E2B 透過 LiteRT-LM 在 GPU 上運行,負責理解語音和視覺輸入;Kokoro TTS(在 Mac 上用 MLX,在 Linux 上用 ONNX)負責文字轉語音輸出。

這意味著使用者可以透過瀏覽器跟 AI 對話,所有資料都在本機處理,不需要任何雲端服務。

核心功能

Parlor 的設計目標是提供自然的語音對話體驗,而不只是聽命行事。它幾個關鍵功能讓這個體驗接近真實的人際溝通。

第一個重要功能是語音活動偵測。Parlor 在瀏覽器內使用 Silero VAD 技術,可以自動偵測使用者何時在說話、何時停頓。這意味著使用者不需要按按鈕來開始或結束對話,完全免持操作。

第二個功能是插話。如果 AI 正在說話,但使用者有話要說,可以直接開口。系統會偵測到使用者的聲音,然後中斷 AI 的回應,切換成聆聽模式。這讓對話更有流暢感,而不是嚴格的你一句我一句輪流說。

第三個是句子層級的文字轉語音串流。當 AI 生成回應時,它不需要等待整段話完全生成完畢才開始播放。只要生成完整句子,就會立即開始播放。這顯著減少了使用者等待的時間,讓對話感覺更即時。

根據作者的基準測試,系統的整體延遲大約在 2.5 到 3 秒之間。其中,語音和視覺理解大約佔 1.8 到 2.2 秒,生成約 25 個 token 的回應大約佔 0.3 秒,文字轉語音(1 到 3 句話)大約佔 0.3 到 0.7 秒。

在 M3 Pro 的 GPU 上,解碼速度大約是每秒 83 個 token。這個數字已經足夠支撐自然的對話速度。

系統需求

要運行 Parlor,你需要準備一些硬體和軟體環境。

作業系統方面,你需要在 macOS(Apple Silicon)或 Linux 上運行。如果你使用 Windows,目前沒有直接支援,但可以透過 WSL 來嘗試。

硬體方面,你至少需要大約 3 GB 的空閒 RAM 來載入模型。這對於大多數現代電腦來說都不是問題,尤其是配備 8 GB 或以上記憶體的系統。

軟體方面,你需要 Python 3.12 或更新版本。Parlor 使用 Python 包管理工具 uv 來管理依賴。

如何安裝和運行

安裝 Parlor 的步驟很直接。首先,用 git 把專案複製到本機:

git clone https://github.com/fikrikarim/parlor.git
cd parlor

接下來,如果你還沒有安裝 uv,可以先安裝它。uv 是一個快速的 Python 套件安裝和解析工具,比傳統的 pip 更高效。

curl -LsSf https://astral.sh/uv/install.sh | sh

安裝完 uv 後,進入 src 目錄並同步依賴:

cd src
uv sync
uv run server.py

這些指令會完成所有必要的安裝和配置。第一次運行時,系統會自動從 HuggingFace 下載所需的模型。Gemma 4 E2B 模型大約佔用 2.6 GB 儲存空間,另外還需要下載 TTS 模型。根據你的網路速度,這可能需要一些時間。

完成後,在瀏覽器中打開 http://localhost:8000。瀏覽器會請求存取你的鏡頭和麥克風,你需要允許這些權限。然後就可以開始跟 AI 對話了。

模型和技術細節

Parlor 的核心技術選擇值得深入了解,因為它們代表了當前開源 AI 模型的最新發展。

Gemma 4 是 Google DeepMind 開發的開源語言模型。E2B 版本特別針對邊緣裝置和即時應用進行了優化。透過 LiteRT-LM(Google AI Edge 的輕量化推理框架),這個模型可以在 Apple Silicon 或其他 GPU 上高效運行。

LiteRT-LM 本身是 Google 為邊緣裝置設計的推理框架,它可以讓大型語言模型在資源有限的裝置上運行,同時保持合理的推理速度。

Kokoro TTS 是另一個關鍵組件。它是由 Hexgrad 開發的文字轉語音模型。Parlor 在不同的平台上使用不同的後端:在 Apple Silicon 上使用 MLX(Apple 的機器學習框架),在 Linux 上使用 ONNX Runtime。這種平台感知的設計確保了 TTS 可以在各種環境下高效運行。

Silero VAD 是瀏覽器端使用的語音活動偵�技術。它可以在瀏覽器中直接運行,不需要把音訊傳送到伺服器進行分析,這不僅減少了延遲,也提升了隱私性。

使用場景

Parlor 最初的設計目標是語言學習,但它的應用場景遠不止於此。

對於語言學習者來說,這是一個理想的練習工具。你可以用英文跟 AI 對話,讓它糾正你的發音,或者請它解釋某個單詞的用法。當你遇到表達困難時,隨時可以切換回母語請求說明。AI 也可以看著你拿著的物體或書本,提供相關的英文詞彙和對話練習。

對於程式設計師或技術愛好者來說,Parlor 展示了小型開源模型的潛力。你可以研究它的代碼,理解如何整合語音辨識、視覺理解、語言生成和文字轉語音等技術,然後把這些技術應用到自己的專案中。

對於重視隱私的使用者來說,全本地運行是一個巨大的優勢。你的語音、影像和對話內容都不會離開你的裝置,這對於處理敏感資料或個人隱私來說特別重要。

實際使用體驗

作者提到這是一個「研究預覽」,意味著你應該預期會遇到一些粗糙的邊緣和錯誤。但即使如此,它已經展示了本地多模態 AI 的巨大潛力。

當你第一次啟動系統時,最令人印象深刻的是不需要任何設定或 API 金鑰。所有模型都會自動下載和配置,這對於非技術背景的使用者來說很友善。

對話體驗方面,延遲大約在 3 秒左右,雖然還不能說是真正的即時,但已經足夠進行自然的交流。更重要的是,因為所有運算都在本機,延遲是穩定的,不會因為網路狀況而波動。

視覺理解的功能讓 AI 能夠「看」到你的環境。你可以把鏡頭對準某個物體,然後用語音問它相關的問題。例如,你可以問:「這個物體用英文怎麼說?」或者「你可以用簡單的英文描述一下這本書的內容嗎?」

對未來的影響

Parlor 的意義不在於它是一個完美的產品,而在於它展示了一個可能的未來:隨著開源模型和邊緣裝置算力的持續進步,越來越多今天需要雲端運算的 AI 功能,未來可能會在本地運行。

這種轉變有幾個深層的含義。

第一是成本結構的改變。如果運算成本趨近於零,AI 應用的商業模式也需要重新思考。開發者可能需要從訂閱制或按使用量付費的模式,轉向一次性買斷或增值服務的模式。

第二是隱私和數據主權。如果所有處理都在本機完成,使用者對自己的資料有完全的控制權。這可能會改變監管機構對 AI 應用的態度,也可能影響企業採用 AI 工具的決策。

第三是可及性。如果 AI 功能可以在便宜的裝置上運行,那麼更多收入較低的使用者也能享受到 AI 帶來的便利。這有助於減少數位落差,讓 AI 技術的紅利更廣泛地分享。

技術挑戰和限制

雖然 Parlor 展示了令人驚嘆的可能性,但目前還有一些技術限制需要考慮。

首先是硬體需求。雖然 M3 Pro 已經足夠運行這個系統,但對於配備舊款 Mac 或低階電腦的使用者來說,體驗可能不夠流暢。要讓這類技術普及,需要進一步優化模型和推理引擎。

其次是模型能力的限制。作者明確指出,這個模型無法用於代理式編程(agentic coding)。小型模型雖然效率高,但在處理複雜推理任務時還是跟大型模型有差距。未來需要在效率和能力之間找到更好的平衡點。

第三是功能完整性。作為一個研究預覽,Parlor 可能還缺少一些實際部署需要的功能,例如對話歷史管理、設定自訂、多使用者支援等。這些功能需要時間來開發和完善。

社群和開源

Parlor 是一個開源專案,採用 Apache 2.0 授權。這意味著任何人都可以自由使用、修改和分發這個軟體。

開源的好處是社群可以一起改進這個專案。如果使用者發現錯誤,可以直接提交 issue 或 pull request。如果有開發者想要添加新功能,也可以直接 fork 專案進行開發。

對於想要學習 AI 系統整合的開發者來說,Parlor 是一個很好的學習範例。你可以研究它的代碼結構,理解如何用 FastAPI 建立 WebSocket 伺服器,如何整合不同的模型,如何處理音訊和影像串流。

未來展望

作者在專案描述中提到,這是一個早期實驗。但從目前的成果來看,方向是正確的。

未來幾年的發展可能有幾個方向。一是模型繼續變小變快,同時保持甚至提升能力。二是硬體持續進步,讓邊緣裝置有更多算力來運行更複雜的模型。三是軟體優化,透過更好的壓縮技術、量化方法和推理框架,進一步提高效率。

如果這些趨勢持續下去,我們可能會看到越來越多今天依賴雲端的 AI 應用變成本地運行。這不會讓雲端 AI 消失,但會讓生態系統更加多樣化,使用者可以根據自己的需求選擇合適的方案。

結語

六個月前,需要一張 RTX 5090 才能做的事情,現在可以在 M3 Pro 上實現。這就是硬體進步的力量,也是開源模型社群集體努力的成果。

Parlor 展示的不是一個完美的產品,而是一個可能的未來。在這個未來裡,AI 不再是雲端服務的專利,而是可以在各種裝置上運行的基礎能力。這會改變 AI 的應用方式,改變商業模式,也可能改變我們對科技的期待。

對開發者來說,這意味著機會。你可以下載 Parlor 的代碼,學習它的技術,然後把它應用到你自己的專案中。你可以改進它,添加新功能,甚至基於它建立全新的應用。

對使用者來說,這意味著更多的選擇。你可以選擇雲端服務的便利性,也可以選擇本地運行的隱私和控制權。你可以用 AI 來學習語言,處理工作,或者只是享受跟一個能聽能看的 AI 對話的樂趣。

技術的進步往往比我們想像的還快。六個月的時間,從需要高階顯卡到可以在筆電上運行,這已經是一個巨大的跨越。如果這個速度持續下去,幾年後的本地 AI 能力,可能會超出我們今天的想像。

或許有一天,我們會回頭看 Parlor 這個專案,把它當作一個標誌性時刻——一個 AI 從雲端走向本地的轉折點。而在那個時刻之前,我們可以先把瀏覽器打開,允許鏡頭和麥克風,然後開始對話。


參考資料:
– Parlor 專案頁面:https://github.com/fikrikarim/parlor
– Gemma 4:https://ai.google.dev/gemma
– LiteRT-LM:https://github.com/google-ai-edge/LiteRT-LM
– Kokoro TTS:https://huggingface.co/hexgrad/Kokoro-82M