🤖

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:26bgemma4: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-mlxqwen3.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