16GB MacBookでoMLXをフリーズさせずに動かすメモリ割り当て設定
9 мая 2026 г.
0
Computing/SoftwareComments (0)
Log in to leave a comment
No posts yet
Log in to leave a comment
No posts yet
AppleシリコンMacはCPUとGPUがメモリを共有しています。ローカルLLMを闇雲に実行するとシステム全体が停止するのはそのためです。特に16GBモデルでLLMが利用可能なリソースをすべて占有してしまうと、VS Codeやブラウザがカクつき始めます。oMLXを単なる実行機ではなく実際の開発ツールとして使うには、まずOSが息をつくための隙間を作る必要があります。
ローカルLLMのプロセスにRAMを無制限に使わせてはいけません。macOSのカーネルやIDEの言語サーバーが使用する最小限の余裕空間が必要です。oMLX駆動時に max-process-memory フラグを使用して、上限を強制的に設定する必要があります。
--max-process-memory 0.65 オプションを付けます。16GBモデル基準で約5.6GBをシステム用に残しておく設定です。8GBモデルなら、この値を 0.5 まで下げて3B以下のモデルを使うべきです。oMLXをターミナルだけで使うのは、本来の活用法の半分に過ぎません。VS Codeの拡張機能であるContinueを連携させ、実際のコーディングフローに乗せるべきです。この際、重いモデル一つにすべてを任せるのではなく、用途に応じてモデルを分離するのが鍵となります。
config.json で provider を openai に、 apiBase を http://localhost:8000/v1 に指定します。対話型には7B〜9Bモデルを使うとしても、 tabAutocompleteModel 項目には qwen2.5-coder-1.5b-mlx のような軽量モデルを個別に割り当てます。oMLXはメモリが不足するとKVキャッシュをSSDに送ります。しかし、システムルートボリュームでこの作業が繰り返されるとI/O負荷が大きくなり、長期的にはSSDの寿命に良くありません。APFSコンテナ機能を使って、AI作業用の空間を物理的に隔離するのが賢明です。
AI_Storage という名前のAPFSボリュームを追加します。予約サイズを20GBに設定して容量を確保した後、oMLX実行時に --paged-ssd-cache-dir /Volumes/AI_Storage/cache オプションでパスを固定します。MLXベースのツールはPythonの依存関係の衝突が頻繁に起こります。 pip であれこれインストールしていると、既存のプロジェクト環境が壊れてしまいがちです。Rust製のパッケージマネージャー uv を使えば、この問題をスマートに解決できます。
curl -LsSf [https://astral.sh/uv/install.sh](https://astral.sh/uv/install.sh) | sh でuvをインストールした後、 uv venv --python 3.12 で独立した環境を作ります。その後、 uv pip install omlx[mcp] を入力して必要なライブラリを一括でインストールします。oMLXはllama.cppよりも電力効率が高く生成速度も速いですが、制御しなければシステムリソースを独占してしまいます。RAMの40%はOSに譲り、SSD I/Oを隔離する設定だけで、十分に快適なローカルAI開発環境を構築できます。数値上のベンチマークよりも、自分のMacBookが耐えられる実質的な設定値の方がはるかに重要です。