a-ghorbani/pocketpal-ai

An app that brings language models directly to your phone.

PocketPal AI – 您手機上的私人、離線 AI

是什麼 – PocketPal AI 是一款免費開源的 React‑Native 移動應用,可在 iOS 或 Android 設備上完全本地運行大型語言模型(LLMs)與神經文本轉語音。下載模型後,無需帳戶、無需雲端端點,也無需網路連接。

核心功能

  • 設備內聊天 – 透過 llama.cpp 引擎(llama.rn 橋接)支援 GGUF 量化模型(Gemma、Qwen、Phi、Llama 等)。推論在手機的 CPU、GPU(Metal / OpenCL)或高通 Hexagon NPU 上執行,當後端不可用時會優雅降級。
  • 神經 TTS – 使用 ONNX Runtime(Kokoro 及其他語音模型)在設備上進行語音合成,無需外部 API 呼叫。
  • Pals 與 PalsHub – 透過自訂系統提示與模型選擇建立「個性」(助手或角色扮演)。可透過應用內市場在 palshub.ai 共享或購買社群製作的 Pals。
  • 工具(Talent)使用 – 內建 AgentRunner 使模型在對話中呼叫工具(計算機、日期時間、HTML 渲染器),實現簡單的代理循環。
  • 模型管理 – 可直接從 Hugging Face 瀏覽並下載 GGUF 模型(包括透過個人金鑰存取受保護模型),並本地儲存。
  • 基準測試與排行榜 – 可測量每秒令牌數與記憶體使用量,可選擇將結果提交至公開的 AI-Phone 排行榜。
  • 本地化 – UI 支援 11 種語言;全面支援 iPad。

如何開始

  1. App StoreGoogle Play 安裝(README 中有連結)。
  2. 開啟應用 → 菜單 ☰ → Models → 選擇適合您設備記憶體/儲存空間的模型並點選 Download(或從 Hugging Face 新增)。
  3. 點選 Load 並在 Chat 預覽開始對話。

開發者相關細節

  • 技術棧 – React‑Native(v0.82.1)+ TypeScript,UI 使用 React‑Native‑Paper,狀態管理使用 MobX,持久化使用 WatermelonDB。原生橋接連接 JavaScript 與:
    • llama.rnllama.cpp GGUF 推理的 J​SI 綁定)
    • react-native-speech + ONNX Runtime(TTS)
  • 硬體後端 – CPU(降級備用)、GPU(iOS 上為 Metal,Android 上為 OpenCL)、NPU(高通 Hexagon)。引擎會自動選擇最快可用路徑。
  • 擴充應用 – 透過實作 TalentEngine 並在 src/services/talents/ 中註冊,新增 Talent(工具)。在 src/services/tts/engines/ 新增 TTS 引擎,或在 src/locales/ 新增語言 JSON 檔案。
  • 建置說明
    git clone https://github.com/a-ghorbani/pocketpal-ai
    cd pocketpal-ai
    nvm use               # Node 22.21.0(於 .nvmrc 中固定)
    yarn install          # 安裝 JS 依賴
    (cd ios && pod install)   # 僅 iOS
    yarn start            # Metro 打包器
    yarn ios   # 或 yarn android
    
    提交 PR 前請執行 yarn lint && yarn typecheck && yarn test
  • 品質門檻 – ESLint、TypeScript 類型檢查、Jest 測試、語言包驗證,以及透過 Husky 強制執行 Conventional‑Commit。

社群與支援

  • 討論、錯誤回報與功能請求請前往 GitHub DiscussionsIssues
  • 翻譯由 Weblate 協調。
  • 透過 GitHub Sponsors 贊助可協助維持應用無廣告狀態。

授權 – MIT(參見 LICENSE)。


總結 – PocketPal AI 是一款完全離線、以隱私為首要的行動 AI 助手,將真實的 LLM 推理與神經語音合成帶到您已擁有的手機上,並為希望探索設備內代理、工具使用與自訂角色的開發者提供乾淨、可擴充的程式碼庫。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • Dispatch