MemPalace · Wiki
專案 / Project

Jarvis 語音助手計畫

2026-04-22 vampire 要的「對答如流像真人」語音 AI,已鎖定全免費 A 方案

檔名 project_jarvis_voice.md · 修改 2026-04-22 17:51 · session 1675278e

Jarvis 語音助手計畫(2026-04-22 啟動)

vampire 核心需求

  • 對答如流(像跟真人講電話)延遲 < 1 秒
  • 不失憶(必須保留 MemPalace)
  • 免費優先(不行再花錢)
  • 不用視覺(砍掉 AR / camera 那塊)
  • 智慧家電暫緩(以前弄過,要再啟動會主動說)

鎖定最終方案(NT$22/月,2026-04-22 定案)

vampire 「HomePod 接入了」+ 理解到不需要電話號碼,砍掉 eSIM 省 NT$99/月。

硬體:HomePod(大+mini,家裡用)+ 主 iPhone(外面用,戴藍芽耳機)+ Mac Studio(大腦)
軟體:
  - STT: Apple SFSpeechRecognizer(iOS 捷徑 call,免費無限,延遲 500ms)
  - LLM: Claude Haiku(~NT$22/月,保留 MemPalace)
  - TTS: Edge TTS 微軟台灣女聲(免費,延遲 300ms)
流程:
  在家 → 嘿 Siri 跟 CC 說話 → HomePod 收音(走 Siri API)→ 捷徑傳字串到 Mac → Pipecat → AirPlay 回 HomePod
  在外 → iPhone 打開 CC 對話捷徑/App → 走 4G/5G 連 Mac Studio(CF Tunnel bijia.bluefin.work)→ 回傳耳機
總月費:NT$22(只付 Claude,其他全免費)

eSIM / 真電話號碼 = 暫不做,因為 vampire 自己用不需要(只有家人/外人要撥才需要)。

Jarvis 完成度評估(focus 對答如流)

  • 記憶 95% ✅(MemPalace)
  • 執行動作 90% ✅
  • 自然對話 80% 🟡(Pipecat 打斷支援)
  • 跨裝置 85% 🟡(LINE/Discord/電話一體)
  • 聲音品質 50% 🟡(Edge TTS 夠用,要更像真人就 ElevenLabs)
  • 喊名字喚醒 60% 🟡(靠嘿 Siri)
  • 主動找你 50% 🟡(要加)
  • 總完成度:~70%

等 vampire 提供的資訊

  1. 家裡舊 iPhone 型號(確認 eSIM 支援,至少 XS 以後)
  2. eSIM 辦哪家(看預算與訊號)

已知家裡有的硬體

  • HomePod mini + HomePod 大的都有(2026-04-22 vampire 回報)— 可做多房間 Jarvis

誤判紀錄

  • 2026-04-22 14:48 vampire 說「120」,我誤判為 iPhone 12,實際是記帳金額 NT$120。下次看到孤立數字先問再登記。

下一步(週末執行)

  1. Clone Pipecat(https://github.com/pipecat-ai/pipecat)
  2. 寫 Apple STT + Claude Haiku + Edge TTS 三段整合
  3. 接 MemPalace MCP 保持記憶一致
  4. eSIM 載體與 Pipecat 串接
  5. 跑單實測延遲

2026-04-22 15:00-16:10 實作進度(搶先版)

vampire 臨時要求「現在就做」,改用 全本地堆疊: - Pipecat 1.0.0 已裝 ~/jarvis/voice-demo/ - STT: faster-whisper BASE(本地) - LLM: qwen2.5:14b(本地 Ollama,非 Claude Haiku)— 換回 Haiku 等週末 - TTS: edge-tts + pydub wrapper 寫在 edge_tts_service.py(zh-TW-HsiaoChenNeural) - Transport: SmallWebRTC + prebuilt UI - 公網:voice.bluefin.work → localhost:7860(CF Tunnel 已設) - TURN: Metered Open Relay(免費公用)— 穿透 iPhone 4G CGNAT

✅ 已驗證

  • Mac Chrome 連上能講話(HomePod 聽到 CC 講「你好」)
  • TTS / LLM / STT pipeline 全通
  • /start endpoint 回傳 TURN ice config

❌ iPhone 端 2025-04-22 16:02 連不上

錯誤:Received an unexpected media stream error while reading the audio,連上 0.1 秒立刻斷 推測:NAT 穿透失敗(已加 TURN 等 vampire 起床實測)

2026-04-22 下午實戰結論

加了 TURN 後 iPhone 能連,撐 3-5 分鐘(切 App 就斷 iOS 限制) - Qwen 2.5:14b 被 vampire 嫌笨「他不是你」 - 切 Gemini 2.5 Flash → 503 過載 - 切 Gemini 2.0 Flash → 429 quota - 切 Gemini 2.5 Flash Lite → 能跑但 vampire 已經不想玩 - 改做 /voice-cmd/audio endpoint(對講機式語音命令)— 端到端 4.3 秒跑通記帳 但 vampire 仍覺「不是我要的」

vampire 真正要的(2026-04-22 17:50 釐清)

「跟 CC 講話就像跟身邊的人講話」— 不用喊 Siri、不用捷徑、不用按鈕、不會斷、聽得懂、記得住、反應快 = AR/VR 級別無縫語音 AI = 2026 年現有技術做不到(ChatGPT Voice / Gemini Live / Apple Intelligence 都差一截)

暫停/降溫結論

vampire 說「還是不是我要的。唉~」→ 我承認技術天花板、暫停此專案、讓他休息 等 1-2 年技術追上或他改變場景需求再重啟

Server 檔案

  • ~/jarvis/voice-demo/server.py — FastAPI + SmallWebRTC bot
  • ~/jarvis/voice-demo/edge_tts_service.py — Edge TTS wrapper
  • /tmp/jarvis-server.log — runtime log
  • 重啟:pkill -f "python server.py"; cd ~/jarvis/voice-demo && source .venv/bin/activate && nohup python server.py --host 0.0.0.0 --port 7860 > /tmp/jarvis-server.log 2>&1 &

成本升級路線(對答如流不達標時)

  • 延遲太高 → 換 Deepgram($200 試用)+ ElevenLabs(NT$150/月)→ 總月費升到 NT$300-500
  • 聲音太假 → 加 ElevenLabs voice clone
  • 主動找你 → 寫 cron 讓 CC 主動撥電話

How to apply

  • vampire 提「語音/對話/Jarvis」→ 這條拉出來接續
  • 不要主動推「加錢升級」,除非他抱怨卡頓
  • 週末有整天空檔時動工,跑單時段不打擾

← 回索引