2016年のIntel Macで日本語小型LLMを動かして学んだこと
きっかけ
手元にある2016年製のIntel MacBook Pro(Core i5 / メモリ8GB)を活用し、日本語向け小型LLM「Qwen3.5-0.8B-Japanese-SFT-v2」をローカルで動かせるか試してみたことがきっかけです。
最新のApple Siliconではなく、10年近くのMacでも、軽量モデルなら実用的な速度で動作するのではないかと考え、検証を行いました。
学んだこと
今回の検証を通じて、ハードウェアと小型LLMの組み合わせについて以下の知見を得ました。
- 古いGPUよりCPU単体の方が速い
古い内蔵GPU(Intel Iris Graphics 540)はMetalの特定命令に対応しておらず、GPUを使うと生成速度がCPUの約3分の1に低下しました。結果として、CPUのみ(-ngl 0)で動作させた方が約17〜20トークン/秒と高速でした。 - 超小型モデルでは量子化の選択が品質を大きく左右する
0.8Bクラスのモデルでは、Q4_K_Mまで圧縮すると指示無視が目立ちました。一方、Q8_0(約812MB)にすると出力の自然さと安定性が向上しました。 - 完全クリーンな実行環境の構築手順
sudoやグローバルなPATH変更を行わず、~/local-llm配下に閉じたビルドと、macOS標準のAppleScript(osacompile)+llama.cpp内蔵Web UIを組み合わせることで、「フォルダを消せば完全に元に戻る」GUI付きの実行環境が作れることを確認しました。
自分なりの理解
「ローカルLLMを動かすには最新のGPU環境が必須」と思われがちですが、0.8Bクラスの超小型モデルであれば、CPUでも「人間が読む速度を上回るスピード(十数文字/秒)」で十分に実用域に達します。
また、モデルサイズが小さい場合、量子化ロスが出力に影響します。「メモリに余裕があるなら過度な圧縮は避け、Q8を選んで品質を担保する」というトレードオフの判断が小型モデル運用では特に重要だと理解しました。
さらに、AIエージェントに環境構築を任せる際は「管理者権限を使わない」「特定フォルダ外を変更しない」といった強い制約を最初に課すことで、古いOS環境の依存関係を壊さず安全に実験できる点も大きな収穫でした。
実践へのつなげ方
- オフライン・低負荷な日常テキスト処理
「敬語への言い換え」や「簡単な文章の整形」など、高度な事実確認を必要としない定型的な文章処理ツールとして常駐させます。外部通信が一切発生しないため、機密情報を扱う作業の下書きにも安心して利用できます。 - 古いPCの再利用・配布パターン
llama-serverの内蔵Web UIとAppleScriptランチャーの組み合わせは、追加ライブラリなしでワンクリック起動できるため、古いPCを活用したローカルAI環境のセットアップ手法として横展開できます。
次に試すこと
8GBの空きリソースを活かして、1.5B〜3Bクラスのモデルで「賢さと快適さのベストバランス」を探る 今回メモリ使用量が約1.2GBとかなり余裕があることが分かったため、マシンのポテンシャルをさらに引き出し、少し賢いモデル(1.5Bや3Bクラス)でも「読む速度を超える快適さ」を維持できるか検証してみます。