laptop_mac macOS Sonoma
Intermediate
schedule 8 min read
by Alex Rivera • May 14, 2024
あなたはすでに、地球上で最もパワフルなローカルAIマシンの一つを所有している。 ベースモデルの MacBook Pro M3、MacBook Pro M3 Max、あるいは Mac Studio を使っていても関係ない — このガイドでは、Ollama を使ってその真の潜在能力を最大限に引き出す方法を伝授する。クラウド不要。APIの課金も不要。ただ、純粋でプライベートなインテリジェンスがそこにある。
Introduction
Ollama の動作には macOS 11 Big Sur 以降が必要だ。ただし、Apple Silicon GPU アクセラレーションと最高の Metal Performance Shaders (MPS) サポートを得るためには、macOS 14 Sonoma 以降で実行することを強く推奨する。
本ガイドでは macOS のターミナルを使用する。Cmd + Space を押して "Terminal" と入力するか、iTerm2 や Warp などの高機能な代替アプリを使用されたい。
Step 1 Installing Ollama
Mac に Ollama をインストールする方法は二つある。公式の macOS GUI インストーラーを使う方法と、Homebrew(macOS 向けパッケージマネージャー)を使う方法だ。Homebrew を強く推奨する — アップデートが驚くほど簡単になるからだ。
すでに Homebrew がインストール済みであれば、ターミナルを開いて以下を実行するだけだ:
インストール完了後、コマンドを待ち受けられるよう Ollama のバックグラウンドサービスを起動する:
(注記: このターミナルウィンドウは開いたままにしておくか、brew services start ollama を実行してブート時にバックグラウンドで自動起動させること。)
Step 2 Pulling Your First Model
Ollama を使えば、大規模言語モデル(LLM)のダウンロードが Docker コンテナのプルと同じくらい簡単になる。
まずは Meta の Llama 3(パラメータ数 8B) から始めよう。高速かつ高い性能を持ち、あらゆる M3 Mac のメモリに完璧に収まるモデルだ。新しいターミナルウィンドウを開いて以下を実行する:
次に何が起きるか?
- Ollama がレジストリに接続する。
- 4.7GB のモデルウェイトをローカルドライブにダウンロードする。
- インタラクティブなチャットプロンプトに移行する。
あとは Write a python script to scrape a website と入力すれば、完全オフラインで Mac がリアルタイムにコードを生成するのを目の当たりにできる。
Hardware and RAM Limits
なぜ Apple Silicon Mac は AI に強いのか?答えは Unified Memory(ユニファイドメモリ) にある。
従来の PC では、システム RAM とグラフィックス RAM(GPU の VRAM)が分離している。AI モデルを高速に動かすには、モデル全体が VRAM に収まっている必要がある。しかし M3 Mac では、CPU と GPU が同一のメモリプールを共有する。36GB のユニファイドメモリを搭載した Mac であれば、GPU はそのすべてにアクセスできる!
Mac の RAM に応じて実行可能なモデルを以下に整理した:
| Mac の RAM |
最大モデルサイズ |
推奨モデル |
備考 |
| 8GB(ベース M3) |
〜7B〜8B パラメータ |
Llama 3 (8B)、Mistral (7B)、Gemma (2B) |
メモリのスワップを避けるため他のアプリを閉じること。 |
| 16GB / 18GB |
〜13B〜14B パラメータ |
Qwen 2.5 (14B)、Command R |
最もバランスの取れた構成。Llama 3 (8B) を爆速で動かせる。 |
| 36GB / 64GB |
〜30B〜70B パラメータ |
Mixtral (8x7B)、Llama 3 (70B at Q2) |
デスクトップクラスの AI をネイティブに動作。 |
| 128GB+ |
〜120B+ パラメータ |
Llama 3 (70B Q8)、Command R+ |
個人用スーパーコンピューターを所有している。 |
Ollama が M3 の GPU を実際に使用しているのか、それとも低速な CPU にフォールバックしているのかを確認したいはずだ。数値で検証してみよう。
- Mac で アクティビティモニタ を開く(
Cmd + Space -> "Activity Monitor")。
Cmd + 4 を押して GPU ヒストリー ウィンドウを開く。
- そのウィンドウを表示したまま、
ollama run llama3 を実行中のターミナルに戻る。
- 大きなプロンプトを入力する:
Write a 1000 word essay about the history of artificial intelligence.
GPU ヒストリーのグラフを観察せよ。GPU 使用率が 90〜100% に張り付く、大きく持続的なスパイクが確認できるはずだ。これが見えれば、Apple の Metal アクセラレーションが完璧に機能している証拠だ!
Step 4 Exposing the Local API
ターミナルは優れたツールだが、美しい Web インターフェースを使いたい場合や、開発中のアプリにローカルモデルを統合したい場合はどうすればいいか?
Ollama はデフォルトでローカル API サーバーを起動している。ブラウザを開き、以下にアクセスしてみよう:
http://localhost:11434
この API には、OpenAI API とまったく同じ要領で curl や Python からアクセスできる:
Terminal
curl http://localhost:11434/api/generate -d '{
"model": "llama3",
"prompt": "Why is the sky blue?",
"stream": false
}'
これで Mac M3 は、プライベートかつオフラインの AI サーバーへと変貌した。データはマシンの外に出ることなく、API 料金も一切発生しない。