a-ghorbani/pocketpal-ai
An app that brings language models directly to your phone.
PocketPal AI – スマートフォン上のプライベートでオフラインのAI
何であるか – PocketPal AI は、無料でオープンソースの React‑Native モバイルアプリで、大規模言語モデル(LLM)とニューラルテキスト読み上げを iOS や Android デバイス上で完全にローカルで実行できます。モデルをダウンロードした後は、アカウントやクラウドエンドポイント、インターネット接続は一切不要です。
主な機能
- デバイス内チャット –
llama.cppエンジン(llama.rnブリッジ)を介して GGUF 量子化モデル(Gemma、Qwen、Phi、Llama など)をサポート。推論はスマートフォンの CPU、GPU(Metal / OpenCL)または Qualcomm Hexagon NPU で実行され、バックエンドが利用できない場合はスムーズにフォールバックします。 - ニューラル TTS – ONNX Runtime(Kokoro など)を用いたデバイス内音声合成。外部 API 呼び出しは一切不要です。
- Pals と PalsHub – カスタムシステムプロンプトとモデル選択で「個性(アシスタントまたはロールプレイ)」を作成できます。コミュニティが作成した Pals をアプリ内マーケットプレイスで共有または購入できます。palshub.ai
- ツール(Talent)の使用 – 内蔵の AgentRunner により、会話中に計算機、日時、HTML レンダラーなどのツールを呼び出すことができます。シンプルなエージェントループを実現します。
- モデル管理 – Hugging Face から GGUF モデルを直接ブラウズ・ダウンロード可能(個人トークンでゲート付きモデルも対応)し、ローカルに保存できます。
- ベンチマークとリーダーボード – トークン/秒とメモリ使用量を測定でき、結果を公開の AI‑Phone リーダーボードに送信することも可能です。
- ローカライズ – UI は 11 言語に対応。iPad にも完全対応。
始める方法
- App Store または Google Play からインストール(README にリンクあり)。
- アプリを開く → メニュー ☰ → Models → デバイスの RAM/ストレージに合ったモデルを選択して Download をタップ(または Hugging Face から追加)。
- Load をタップして、Chat スクリーンで会話を開始します。
開発者向け詳細
- スタック – React‑Native(v0.82.1)+ TypeScript、UI は React‑Native‑Paper、状態管理は MobX、永続化は WatermelonDB。ネイティブブリッジにより JavaScript と以下のコンポーネントを接続しています:
llama.rn(llama.cppGGUF 推論用の JSI バインディング)react-native-speech+ ONNX Runtime による TTS
- ハードウェアバックエンド – CPU(フォールバック)、GPU(iOS では Metal、Android では OpenCL)、NPU(Qualcomm Hexagon)。エンジンは自動的に最速のパスを選択します。
- アプリの拡張 –
src/services/talents/にTalentEngineを実装して登録することで、新しい Talent(ツール)を追加できます。src/services/tts/engines/に新しい TTS エンジン、またはsrc/locales/に新しいロケール JSON ファイルを追加できます。 - ビルド手順 –
PR を提出する前に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 androidyarn lint && yarn typecheck && yarn testを実行してください。 - 品質ゲート – ESLint、TypeScript の型チェック、Jest テスト、ロケール検証、Husky による Conventional‑Commit の強制。
コミュニティとサポート
- 議論、バグ報告、機能リクエストは GitHub の Discussions と Issues で行います。
- 翻訳は Weblate で調整されています。
- GitHub Sponsors によるスポンサーシップにより、広告のないアプリを維持しています。
ライセンス – MIT(LICENSE を参照)。
結論 – PocketPal AI は完全にオフラインでプライバシーを最優先したモバイルAIアシスタントであり、既に所有しているスマートフォンに本格的な LLM 推論とニューラル音声合成を実装しています。また、開発者がデバイス内エージェント、ツール使用、カスタムキャラクターの実験に利用できる、洗練された拡張可能なコードベースを提供しています。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- Dispatch