a-ghorbani/pocketpal-ai
An app that brings language models directly to your phone.
PocketPal AI – オンデバイス AI チャットアシスタント
概要 – PocketPal AI は、無料のオープンソースモバイルアプリ(iOS および Android)で、大規模言語モデルと対話し、その音声を聞き、簡単なツール(計算機、日時、HTML レンダリング)を提供できます。すべてスマートフォンから離れることなく実行できます。アプリは GGUF 形式のモデルを Hugging Face から一度ダウンロードし、その後、電話の CPU、GPU(Metal/OpenCL)、または NPU(Qualcomm Hexagon)を使用してローカルで推論を実行します。クラウドアカウントやサブスクリプションは不要で、ベンチマーク結果やフィードバックを明示的に共有しない限り、すべてがプライベートに保たれます。
主な機能
| 機能 | 内容 |
|---|---|
| オンデバイスチャット | 人気の LLM(Gemma、Qwen、Phi、Llama など)を GGUF 形式でオフライン実行。 |
| ニューラル TTS | オンデバイス音声合成(Kokoro およびその他の ONNX モデル)– インターネット呼び出しなし。 |
| Pals と PalsHub | カスタムプロンプト、個性、ロールプレイ設定を備えたパーソナライズされた「アシスタント」を作成またはダウンロード。 |
| ツール使用(Talents) | モデルはツール使用ループを介して組み込みツール(計算機、日時、HTML レンダラー)を呼び出せます。 |
| ハードウェアアクセラレーション | 推論は CPU、GPU(iOS では Metal、Android では OpenCL)、または NPU を使用可能。アプリは自動的にフォールバックします。 |
| ベンチマークとリーダーボード | 1 秒あたりのトークン数とメモリ使用量を測定。オプションで結果を公開の AI-Phone リーダーボードに送信。 |
| ローカリゼーション | UI は 11 言語に対応。iPad を完全サポート。 |
| オープンソース&無料 | MIT ライセンス、隠れた「プロ」ティアなし。 |
仕組み(高レベル)
- UI レイヤー – React Native アプリ(React Native Paper、MobX 状態、WatermelonDB によるチャット履歴)。
AgentRunnerがモデルトークンをストリーミングし、モデルが要求したときに Talents をディスパッチします。 - ブリッジレイヤー – ネイティブモジュールが llama.cpp 推論(
llama.rn)と ONNX-Runtime TTS を JavaScript に公開します。 - エンジンレイヤー –
llama.cppが量子化 GGUF LLM を実行。ONNX Runtime がニューラル TTS モデルを実行。 - ハードウェアレイヤー – 計算はデバイスの CPU、GPU(Metal/OpenCL)、または NPU(Qualcomm Hexagon)で実行され、自動フォールバックが行われます。
ユーザーとしての始め方
- App Store または Google Play からインストールします。
- アプリを開く → メニュー ☰ → モデル → デバイスのメモリに合ったモデルを選択してダウンロードします(または個人用トークンを使用して Hugging Face から追加)。
- モデルをロードしてチャットを開始します。音声出力を有効にしたり、Pals を切り替えたり、ベンチマーク画面を実行したりできます。
開発者としての始め方
- 前提条件 – Node 22(
.nvmrc経由)、Yarn 1、Xcode + CocoaPods(iOS)、または Android Studio(Android)。リポジトリは標準的な React-Native レイアウトに従っています。 - ビルド –
git clone … && nvm use && yarn install && (cd ios && pod install)その後yarn iosまたはyarn android。 - コード構造 –
src/screens– UI ページ(チャット、モデル、Pals、ベンチマーク、設定)。src/services/agent–AgentRunnerがチャットツールループを実装。src/services/talents– 組み込みツール。TalentEngineを実装して登録することで追加できます。src/services/tts– TTS エンジン。追加の ONNX モデルで拡張可能。src/store– モデル、チャットセッション、設定などの MobX ストア。
- 品質ゲート –
yarn lint、yarn typecheck、yarn testは PR 前に合格する必要があります。 - 拡張 – 新しい Talents、TTS エンジン、またはロケール(
src/localesの JSON ファイル)を追加します。
誰が恩恵を受けるか?
- プライバシー重視のユーザー – データをアップロードしない会話型 AI を求める方。
- 旅行者 / フィールドワーカー – 飛行機や遠隔地でオフライン AI が必要な方。
- 開発者 – オンデバイス LLM 推論、ハードウェアアクセラレーション、またはカスタム AI アシスタントの構築に興味がある方。
ライセンスとコミュニティ
- ライセンス – MIT。
- サポート – GitHub Discussions、Issues、ウェブサイト pocketpal.dev、およびオプションの GitHub Sponsors スポンサーシップ。
- 謝辞 – llama.cpp、llama.rn、ONNX Runtime、React-Native、MobX、WatermelonDB、およびその他の多くのオープンソースライブラリに基づいています。
結論 – PocketPal AI は、最新の量子化 LLM がスマートフォン上で完全にオフラインで実行できることを示し、プライベートで拡張可能な AI アシスタントを継続的な費用なしで提供します。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト