Mac mini M4 Pro 48GBでローカルLLM比較:Gemma4とQwen3.6、常駐させるならどっち?(前編)
はじめに
先日届いたMac mini M4 Pro 48GBを、ローカルLLM / 常駐エージェント用のマシンとしてセットアップしています。
常駐候補のローカルLLM選定を行い、結論としてはQwen3.6を選んだのですが、その選定過程を、前後編で記事にしてみようと思います。
ローカルLLMでやりたいこと:
- 毎日 Tech Daily Digest を生成してDiscord通知
- チャットボット的な利用(ChatGPT, Claude, Gemini, Grok契約してるけど・・・)
単純にベンチマークでの比較はせず、自分のユースケースに合うように、以下の視点で比べました。
- 速度
- 軽く雑談したときの反応
- 技術相談の回答の質
- 文章修正力
- ハルシネーション
- 常駐させてもメモリに余裕があるか
検証環境
Mac mini M4 Pro
- 14コアCPU / 20コアGPU
- 48GB unified memory
- 512GB internal SSD
- 外付けUSB4 SSDにOllamaモデルを配置
- Ollama
今後、色々とモデルを入れて遊ぶかもしれないので、内蔵512GB SSDは極力使わずに、別途購入したSSDに保存することにしました(内蔵SSDをケチらずに1TBで買っておけばよかった😇)。
モデルはOllama経由で実行しました。
今回の検証では、thinking出力は、Ollama実行時に以下を付けることで、非表示にしています。(回答の冗長化を防ぐため)
ollama run --hidethinking --think=false <model> "<prompt>"
比較したモデル
この記事では便宜上「モデル比較」と書いていますが、実際にはOllama上のタグ違いも含めて比較しています。たとえば gemma4:26b と gemma4:26b-mlx は同じGemma4 26B系ですが、実行形式・最適化・メモリ使用量が異なるため、別候補(モデル)として扱っています。
qwen3:8b
gemma4:e4b
gemma4:e4b-mlx
gemma4:26b
gemma4:26b-mlx
qwen3.6:35b-a3b-nvfp4
qwen3.6:35b-a3b-q4_K_M
なぜこの7つを選んだのか
今回の比較対象は、以下のような理由で選びました。
| モデル | 選んだ理由 |
|---|---|
qwen3:8b |
ベースラインとして採用 |
gemma4:e4b |
軽量チャットbot候補。小さくても会話品質が良ければ常駐向き |
gemma4:e4b-mlx |
Apple Silicon向けに期待。通常版より軽く速い可能性を見るため |
gemma4:26b |
Gemma4の高品質チャット候補。E4Bとの差を見るため |
gemma4:26b-mlx |
26B品質とMLX最適化の両立を見るため。チャット本命候補 |
qwen3.6:35b-a3b-nvfp4 |
Qwen3.6のApple Silicon向け本命候補。35B-A3Bながら20GB台前半で動くため |
qwen3.6:35b-a3b-q4_K_M |
GGUF / llama.cpp系の代表的quant。日本語の自然さや安定性を比較するため |
qwen3.6:35b-a3b には複数の量子化・実行形式がありますが、私のMac miniは48GB unified memoryなので、BF16やQ8のような重いタグは避け、現実的に常駐できそうな以下2つを選びました。
qwen3.6:35b-a3b-nvfp4
qwen3.6:35b-a3b-q4_K_M
nvfp4 はMLX系で、Apple Silicon上での速度とメモリ効率に期待。
一方で q4_K_M はGGUF / llama.cpp系の定番quantなので、日本語の自然さや安定性に期待。
評価方法
以下の6プロンプトで比較しました。
01 日常雑談
今日ちょっと疲れた。軽く話し相手になって。
02 技術相談
Mac mini M4 Pro 48GBでローカルLLMを常駐させて、Discord通知とTech Daily Digestを運用している。いまの構成をどう評価する?
03 モデル比較相談
Qwen3.6-35B-A3BとGemma 4 E4B、チャットbot用途ならどう比較する?
04 通知文リライト
以下のDiscord通知を、硬すぎず短くして。
Tech Daily Digestの主面生成が完了しました。OpenAI、Anthropic、xAI、Google、Ollama、DeepSeekに重要更新がありました。Markdownはstagingに保存されています。
05 知らないことへの対応
OpenClaw-Hermes Fusionについて教えて。知らないなら知らないと言って。
06 軽い創作・口調
ローカルLLM常駐エージェントに「朝の一言」を言わせたい。短く、ちょっと可愛げがある文を5個出して。
4番は、実際にDiscordへ流すTech Daily Digest生成完了通知に近いものを渡しています。
見るポイントは以下です。
- 応答速度と常駐時メモリ
- 日本語チャットの自然さ
- 技術相談・要約用途での使いやすさ
- 知らないことを知ったかぶりしないか
- Discord通知文など実運用タスクで使いやすいか
あくまで手元環境での体感評価です。
ただ、毎日使うならこの「手触り」はかなり大事だと思っています。
応答速度・メモリの比較
今回の7タグについて、手元ログ上の値をまとめると以下の通りです。
なお、メモリ目安とcontextは、モデル一覧ページの表記ではなく、実際にOllamaでロードした後の ollama ps の表示をもとにしています。
そのため、モデルファイルサイズそのものではなく、今回の環境で常駐させたときの実測目安です。
| モデル | メモリ目安 | コンテキスト | 日常雑談 | 技術相談 | モデル比較 | 通知文 | 不明対応 | 創作 |
|---|---|---|---|---|---|---|---|---|
qwen3:8b |
約10GB | 32k | 4s | 11s | 24s | 11s | 6s | 9s |
gemma4:e4b |
約11GB | 32k | 1s | 12s | 14s | 2s | 1s | 2s |
gemma4:e4b-mlx |
約9GB | 131k | 5s | 10s | 10s | 1s | 2s | 1s |
gemma4:26b |
約20GB | 32k | 4s | 8s | 9s | 1s | 1s | 3s |
gemma4:26b-mlx |
約18GB | 262k | 2s | 5s | 6s | 1s | 2s | 1s |
qwen3.6:35b-a3b-nvfp4 |
約21GB | 262k | 8s | 3s | 4s | 1s | 1s | 1s |
qwen3.6:35b-a3b-q4_K_M |
約26GB | 32k | 17s | 16s | 15s | 1s | 7s | 3s |
| もっと色々試したかったですが、ダウンロード時間が結構かかったため、今回は7つに留めました。 | ||||||||
この表を見ると、最終候補として目立つのは gemma4:26b-mlx と qwen3.6:35b-a3b-nvfp4 でした。 |
gemma4:26b-mlx は、約18GBで動き、日常雑談2秒・技術相談5秒・モデル比較6秒とかなり速く、チャットbotとしての手触りも良好。
一方、qwen3.6:35b-a3b-nvfp4 は、約21GBで262k context(ollama psベース)を持ち、技術相談3秒・モデル比較4秒・通知文1秒と、実務寄りタスクが非常に速い。
その他気づいた点:
-
gemma4:e4bは雑談1秒で最速だが、技術相談・モデル比較では容量の大きな26B系より遅い -
gemma4:26bはE4Bより容量が大きいが、技術相談・モデル比較が速く、返答も落ち着いている -
gemma4:26b-mlxは通常26Bよりさらに軽く速く、Apple Silicon最適化の効果が出ている -
qwen3.6:35b-a3b-nvfp4は35B-A3Bながら、技術相談が最速 -
qwen3.6:35b-a3b-q4_K_Mは期待に反して重く遅い
なお、gemma4:e4b-mlx も約9GB・131k contextでかなり魅力的でしたが、48GB環境では gemma4:26b-mlx も十分現実的で、応答品質も明確に上だったため、最終候補としては、(予想通り)26b-mlxを優先。
また、qwen3.6:35b-a3b-q4_K_M はGGUF系の定番quantとして期待していましたが、今回の手元検証では nvfp4 より遅く、メモリ使用量も大きかったため、候補からは脱落。
そのため、以降は以下2つの生の応答を中心に見ていきます。
チャットの担当候補:
gemma4:26b-mlx
実務処理の担当候補:
qwen3.6:35b-a3b-nvfp4
・・・長くなってきたので一旦終わりにします。
次の記事(後編)で、チャットの応答や、最終的な結論を書きます!
Discussion