Metaが2024年9月25日に発表したばかりの「Llama 3.2」モデルシリーズの中で、軽量・小型の3Bパラメータのモデルは、なんとiPhoneやAndroidなどのスマホ上でも動作する。
昨今のオープンソースLLMの性能の向上と小型軽量化、またスマートフォンのスペックの向上によって、人工知能(AI)モデルを、ローカル環境で動作させることが可能になりつつあるのだ。
本記事では、「PocketPal」というiOS/Android向けアプリを用いて、実際に筆者のiPhoneで、ローカルLLMを使用する方法を紹介する。
数世代前のiPhoneを使っていて、最新のiPhoneで利用可能になるApple純正のAI「Apple Intelligence」が利用できない人でも、ローカルLLMの可能性を体感できるので、ぜひ試してみて欲しい。
ローカルLLMをスマホ上で動かす「PocketPal」
「PocketPal」は、Metaが開発するLlama、Googleが開発するGemma、マイクロソフトが開発するPhiなど、オープンソースのAIモデルをダウンロードして、iPhoneやAndroidなどのスマートフォン端末上で動作させることのできるアプリだ。
ネット接続がなくても、ChatGPTのようにAIとチャットをすることができる。
インターネット上に情報を一切送信しないので、ChatGPTやClaudeなどのサービスを使用する場合より、圧倒的にプライバシーとセキュリティが守られる。
メールなど個人情報を含む機微な情報を扱う場合などに有用だ。
しかもありがたいことに、PocketPalは、iOS/Android向けにリリースされており、利用料金も一切かからない。
iPhoneやiPadの場合はAppleストアでダウンロードできる。
同じく、Androidの場合も、Google Play Storeからダウンロードすることができる。
「PocketPal」で利用可能なAIモデル
記事執筆現在(2024/10/9)、PocketPalで利用できるオープンソースLLMは以下の5つである。それぞれ、より小型の派生系なども利用可能だ。
いずれのモデルシリーズにおいても、最大で、サイズは2GB程度で、30億パラメータの軽量のモデルがラインナップされている。
- Gemma 2 2B
- Danube 3
- Phi 3.5 mini
- Qwen 2.5 3B
- Llama 3.2 3B
アリババが開発するQwen、H2O.aiが開発するDanubeなどまで、主要なオープンソースLLMの幅広いモデルがラインナップされている。
使用したいモデルを選んで、「Download」をクリックすれば、iPhone上にモデルをダウンロードすることができる。
デバイス上に保存してあるモデルを読み込ませることも可能なので、将来的により新しい軽量小型のLLMが登場すれば、それをユーザーが追加することも可能そうだ。
スマホ上でLlama 3.2 3Bとチャットする方法
今回は、PocketPalで、Llama 3.2 3Bをダウンロードしてみた。
モデルの容量は3.42GBと比較的大きいが、モバイル回線でも10分程度でダウンロードすることができたので、用意されているサーバーの速度もそこそこ早いようだ。
ただし、筆者が使用したiPhone 12 miniの場合、モデル容量がiPhoneのメモリ容量に肉薄しており、警告メッセージが表示された。
一応、動作はしたが、速度は遅くぎこちなかったので、古いiPhoneを使用する場合にはPhi 3.5 miniなどより軽量なモデルで試した方が良いかもしれない。
メモリが8GB以上ある高スペックなAndroidスマートフォンなどを利用している場合は、より高速でスムーズに利用できるだろう。
スマホを購入する際のスペックの比較検討時にも、ローカルLLMを使えるかどうかが重要になる時代も近そうだ。
iPhone 12 miniでLlama 3.2は動くのか!?
筆者が試したのは4世代前の古いスマートフォン(iPhone 12 mini)であったが、Llama 3.2 3Bモデルから、ちゃんと回答を得ることができた。
PocketPalで、Llama 3.2 3Bをダウンロードしたのち、「Load」ボタンを押すことで、チャットインターフェースにLlamaが読み込まれる。
「Type your message here」というところに、回答してほしい質問を打ち込めば、iPhoneローカル上で、Llama 3.2 3Bモデルが動作し、完全にオフライン環境であっても、ちゃんと回答してくれる。
今回は、Pythonのちょっとした関数を書かせる以下のプロンプトを打ち込んでみた。
In Python, create a function that takes a string and returns it reversed. Show only the code.
(Pythonで、文字列を逆順にして返す関数を作成してください。コードのみを示してください。)
すると、ゆっくりではあるが、ちゃんとコードを書き出してくれた。
非常に短いコードスニペットだが、生成するのに1〜2分を要した。
流石に、メモリが小さくスペックも低いスマホでは、いくら軽量小型のAIモデルとはいえ、回答の生成には時間がかかってしまうようだ。
より新しいiPhone 16やiPhone 15、または処理能力の高いiPad Proなどで使えば、もっと実用的なスピードで利用できるだろう。
それにしても、30億パラメータを持つ大規模言語モデルが、iPhone上で普通に動作してしまうとは、技術革新のスピードに驚かされる。
頻繁に新モデルシリーズがリリースされる中、MetaやMicrosoftやGoogleの熾烈な競争の中で、小型軽量モデルの精度がさらに上がっていけば、スマホ上でなんでも代行してくれるAIアシスタントが手に入る時代も近そうだ。
スマホで動作するローカルLLMがもたらす可能性
Llama 3.2 3Bのような軽量モデルを、スマートフォン上で実行することで、個人情報などを外部のサーバーに送信することなく、端末内で完結させることができる。
長文の文章を生成させるには、まだスマホのスペックが足りないかもしれないが、電話番号を識別するとか、短いメッセージを翻訳するとか、カレンダーからスケジュールを提案するとか、シンプルながら重要なタスクで、ローカルLLMが活躍できる場は非常に多いだろう。
これからさらにスマホのスペックが向上していけば、3Bモデルと言わずに、8Bモデルなどより大型のモデルを動かせる日も近いかもしれない。
PocketPalは、高度なAI技術を、誰でも・いつでも・どこでもアクセスしやすくする革新的なアプリだ。一般ユーザーの日常生活にAIが溶け込むとどうなるのか、その入り口を覗くことができる。
Apple Inteligenceの10月中の登場も噂される中で、今後のアプリのアップデート、またローカルLLMのさらなる発展に期待したい。