実行プログラムと拡張機能
最終更新
oMLXでMacのローカルAIを動かす:0.7.1rc1の新設定は?
oMLX 0.7.1rc1でSplashを接続し、モデルごとの実行設定を選びます。
oMLXはApple Silicon MacでMLX1モデルを実行し、アプリの要求に答えるサーバーです。リリース候補の0.7.1rc1はSplash外部エンジンとMuse Spark Open対応を追加しました。以下の0.7.1.dev1測定は当時の開発版の資料として分け、新機能は使うモデルと同じ入力で試します。
既存の0.7.0サーバーに慣れていても、更新後はモデル一覧、最初の応答、ログをもう一度確認してください。特に、1人で使うチャット画面と複数のリクエストが重なるアプリサーバーでは、処理結果が異なる場合があります。以下では安定版を維持するか、開発版のどの機能を試すかを選び、確認項目を整理します。
まず、利用環境に0.7.1.dev1が必要か判断します
安定版は0.7.0、0.7.1rc1は新機能を試すリリース候補です。以下には先行する0.7.1.dev1の変更と再現手順も残しています。管理画面かomlx --versionで版を調べ、DMGアプリかソースからの導入かも別に確認します。アプリは新しいbundleで、ソース版は対象バージョンの依存関係とkernelをそろえて更新します。
oMLXはGGUF2ではなくMLXチェックポイント3を実行します。Apple Silicon搭載MacとmacOS 15以降で利用できます。新規インストールでは公式ReleasesからmacOS用DMGをダウンロードして開き、oMLXをApplicationsフォルダーに移して起動します。開始画面でモデルフォルダーを選び、サーバーを起動して対応するMLXチェックポイントをダウンロードしてください。モデル形式と量子化4がMacのユニファイドメモリ5に収まるかも確認します。
サーバーが起動したら、管理画面はhttp://localhost:8000/admin、チャット画面はhttp://localhost:8000/admin/chatで開きます。まず短い質問を送り、モデルが応答することを確認してください。開発版を試す場合は、既存のAPI6接続設定とモデルフォルダーを記録しておくと、以前の環境と比較できます。
画面上の短い質問でモデル応答を確認したら、性能比較に進む前にAPIの基本接続も確かめます。YOUR_OMLX_API_KEYは管理画面で設定したキーに置き換えてください。
curl http://127.0.0.1:8000/health
curl http://127.0.0.1:8000/v1/models -H 'Authorization: Bearer YOUR_OMLX_API_KEY'/healthで正常状態が返り、/v1/modelsに使用可能なモデルIDが表示されれば、サーバーとAPI認証の準備ができています。接続できない場合は、まずサーバーが起動しているか確認します。モデル一覧のリクエストで401が返る場合はキーを確認してください。一覧が空なら、モデルフォルダーとチェックポイントのダウンロード状態を調べます。

0.7.1rc1ではモデルごとに実行エンジンを選べます
2026年10月15日公開の0.7.1rc1はリリース候補版です。安定版は0.7.0で、新機能を試す場合はrc1を選びます。更新前に使用中のモデルと設定を記録すると、不具合時に同じモデルで安定版へ戻して比較できます。
Qwen3.8・Qwen3.6をSplashで動かしても、モデル一覧とAPIアドレスはoMLXで管理できます。Settings → Integrations → External enginesでSplashを指定し、モデルのModel Settings → AdvancedでUse external engineを有効にします。対応するDFlash2の重みもoMLXのモデルフォルダーへ用意してください。
Muse Spark Openにも新しく対応しました。oQ3eの370GB構成は512GB Macが対象です。使うモデルを決めてから、統合メモリと他アプリに残す容量を計算してください。新しいダウンロード画面では、そのMacで読み込める候補を提案します。
同時リクエストを処理するサーバーでは、まずプリフィルの変更を確認します
プリフィル7は、モデルが質問や文書を読み、最初の応答を準備する段階です。0.7.1.dev1のbatched prefillは、近いタイミングで入力処理を始めた複数リクエストのchunkを1回のforwardでまとめて計算します。リクエストごとのキャッシュを分けて維持しながら、MoE8のexpert weightを個別に読み込む回数を減らします。追加設定は不要です。複数ユーザーのリクエストが重なるサーバーで確認できる変更です。
リリースの表は、同時に送る場合、間隔を空ける場合、生成中のリクエストに新しいリクエストが加わる場合を分けています。リクエストが重なると、次の入力を進行中の生成と並行してプリフィルできます。そのため、単独生成速度より最初のトークン9までの待ち時間に注目します。表の3つのパターンとハードウェア別の結果を、自分の使い方に合わせて読んでください。
個人用Macでは、まずリクエストが実際に重なっているか確認します。同じプロンプト10を単独で送り、次に複数のリクエストを重ねて、最初のトークンまでの時間と全体の完了時間を別々に記録してください。モデルファイル、コンテキスト、回答長、同時リクエスト数は同じにします。1件だけでも最初の応答が遅い場合は、batched prefillの数値より先に入力長、モデル読み込み、メモリ状態を調べます。
| モデル・ハードウェア | リクエスト方法 | 変更前 → 変更後 |
|---|---|---|
| Qwen3.8-Flash-Next oQ4e · M5 Max | 8件同時 | 2.08秒から1.81秒(-13%) |
| Qwen3.8-Flash-Next oQ4e · M5 Max | 8件、0.4秒間隔 | 7.41秒から5.75秒(-22%) |
| Qwen3.8-27B oQ4e · M3 Ultra | 生成中の4件に新しい4件が合流 | 6.11秒から5.10秒(-17%) |
モデルに合わせてQwen最適化とMTPを選びます
Qwen3.8-Flash-Nextのgroup size 32チェックポイントはdecode11経路を最適化します。M3 UltraではMTP12 onの別比較が98から134 tok/s(+37%)でした。表のFlash-Next行はMTP offでの測定です。
Qwen3.8-27B oQ8eのINT8 activation prefillは、長い入力を読むプリフィル段階に適用されます。M5 Maxで4K入力の結果は+25%で、16Kの条件は表にまとめています。Experimental Featuresに項目が表示されるモデルで有効にし、長文書の最初のトークンまでの待ち時間と生成速度を分けて記録します。
Lightning MTPはモデル内の次トークン予測headで候補を作り、メインモデルが確認することでdecodeの逐次計算を減らします。リリースで試されたモデル系統とファイル編集の条件は表にまとめています。対応チェックポイントで有効にし、同じリクエストで通常生成と完了時間、出力を比べてください。
同じリリースでは、Qwen3.6-35B-A3Bのdecodeが+31%(M5 Max)、GLM-5.3-Flashが+30%(M3 Ultra)、DeepSeek V4.1 Flashの初回実行が+48%(M3 Ultra)でした。処理段階とチップをそろえて読み、テスト記録にも同じ条件を残してください。
Qwen3.8-27Bを別の実行環境でも試すなら、TensorFoldのMacメモリ変更で必要ファイルと文脈長13を確認してください。同じ入力を使ってメモリ使用量、最初の回答までの時間、完了時間を記録します。
| 機能・モデル | 条件・ハードウェア | 公開結果 |
|---|---|---|
| group size 32 · Flash-Next, MTP off | decode · M3 Ultra | 39 → 91 tok/s (+133%) |
| INT8 activation prefill · Qwen3.8-27B oQ8e | 16Kプリフィル · M5 Max | +38% |
| Lightning MTP · Qwen・Gemma 4・GLM-5.3・MiMoのファイル編集 | temperature 1.0 · M3 Ultra | 1.5~2倍速く完了 |
ソース版ではMLXカーネルを再ビルドします
ソース版を更新すると、oMLX 0.7.1.dev1ではMLX 0.32.3を使います。以前のMLXでビルドしたカーネルは拒否され、遅い代替経路で動く場合があります。リリース案内に従い、既存のリポジトリと仮想環境14を準備して、リポジトリフォルダーからmake kernelsを実行します。
make kernelsエラーなくビルドが完了したらoMLXを再起動します。管理画面のEngine VersionsにMLX 0.32.3と表示されることを確認し、使い慣れた短いプロンプトを送ってください。モデルが読み込まれ応答が返れば、基本動作を確認できます。
make kernelsが失敗したら、エラーの最初の行と有効なPython仮想環境を確認します。コマンドが終了しても速度が低い場合は、Engine VersionsのMLXバージョンとカーネル状態、サーバーログのカーネル読み込みエラーを確認してください。アプリ版ではこのソース手順ではなく、該当するインストール形態の公式ダウンロードを利用します。

モデル別の高度な設定は必要な場合に確認します
リリースではデバッグ用のOMLX_*環境変数が約150個削除され、読み込まれなくなりました。OMLX_MOE_EXPERT_OFFLOAD、OMLX_QWEN35_ANE_PREFILL、OMLX_RDMA_STAGE_LINKSも対象です。対応モデルで機能を使う場合は、管理画面のモデル設定で調整します。
たとえばモデル別のExperimental Featuresには、対応モデルの場合にINT8 activation prefillやANE15 prefillなどが表示されます。設定を変える前に現在値を記録し、項目を1つだけ変更して同じ質問を送ってください。入力トークン数、最初のトークンまでの時間、回答生成速度、エラーを比べると、実際の使い方に影響したか確認できます。
モデル一覧が読み込まれない場合は、まずモデルフォルダーとダウンロード状態を確認します。サーバーは開くのに応答しない場合は、管理画面の状態表示とサーバーログから最初のエラーを探します。メモリエラーなら別のモデルをアンロードするか同時リクエストを減らし、短い入力で再試行してください。速度だけが変わった場合は設定名だけでなく、入力長、モデルファイル、キャッシュ状態が同じだったかも確認します。
チャット以外のモデルと管理機能は別の経路です
ClefやOpenJev系のモデルは、毎回自由文を生成するのではなく、状態と選択肢を読み取り、各選択肢の確率を返す決定モデルです。oMLXはPOST /v1/systemoneでTypeSafe System One形式のリクエストを受け付けます。質問タイプはnoul、choice、scoreです。チェックポイントを自動検出するか、モデルタイプをdecisionに指定できます。標準の/v1/chat/completionsとは目的が異なるため、この形式に対応済みのアプリまたは独自クライアントで利用します。
EmbeddingGemma 2は画像と音声の入力にも対応し、rerankリクエストにはinstructionとmax_lengthが追加されました。音声ローダーはFish・TADA・LongCatのref_audio処理を改善しています。これらのモデルを使うアプリでは、モデルカードとAPIの形式に合わせて画像・音声・参照音声を送ります。
Webダッシュボードは新しいレイアウトになり、詳細ログ、設定セクションへのリンク、RestartとUnload all、まとめて実行するベンチマークプリセットが加わりました。更新後は新しい設定レールとServing Statsでモデル状態を確認します。管理画面でモデルログと再起動操作の位置も確認してください。
テスト結果を見て現在の設定を続けるか決めます
同時リクエストが少なく、0.7.0で作業が安定して完了するなら、安定版を使い続けても十分です。リクエストが重なったときに最初のトークンまでの待ち時間が問題なら、同じプロンプトと同時リクエスト数で0.7.1.dev1のTTFT16を測定します。特定のQwenチェックポイントで入力処理や生成が遅い場合は、group size、MTP、INT8 prefillの対応条件を確認し、そのモデルだけで比較してください。
インストールしたバージョン、モデルリポジトリと量子化、Macのチップ、入力長、同時リクエスト数、MTPとキャッシュの設定、最初のトークンまでの時間、完了時間、回答品質を記録します。リリースの数値は各変更直前のコードとの比較であり、0.7.0全体との包括的な比較ではありません。自分のモデルとリクエストで繰り返し確認できる変化をもとに更新を判断してください。
基本的なリクエストが失敗する場合は、最適化オプションを追加する前にサーバーとモデルを正常に読み込める状態にします。同じ短いリクエストで応答を確認してから、機能を1つずつ試せば問題の原因を絞り込めます。実作業は安定版サーバーで続け、記録をもとに開発版のテストを分離するか、新機能の確認後に移行するか決めてください。

用語の注釈
MLX — Appleが開発する機械学習フレームワークで、Apple SiliconのCPUとGPUが共有するメモリを使ってモデルを実行します。
本文に戻るGGUF — モデル情報を格納するファイル形式で、llama.cpp系のツールで広く使われます。
本文に戻るチェックポイント — 学習済みモデルの重みなどを保存したファイルです。同じモデル系列でも、版や用途によって異なるチェックポイントを使うことがあります。
本文に戻る量子化 — モデルの重みや計算値を少ないビット数で表し、保存容量やメモリ使用量を減らす方法です。表現が粗くなるため、精度にも影響することがあります。
本文に戻るユニファイドメモリ — CPUとGPUが同じ物理メモリ領域を共有する構造です。
本文に戻るAPI — 別のコードからプログラムの機能を呼び出すための決められたインターフェースです。
本文に戻るプリフィル — LLMが入力プロンプトを読み、各トークンの内部表現を計算する段階です。プロンプトが長いほど処理するトークンが増えます。
本文に戻るMoE — 複数の専門家サブネットワークから入力に応じて一部を選ぶモデル構造です。総パラメータ数と1トークン処理時に有効な数は異なることがあります。
本文に戻るトークン — モデルが入力や出力を分けて処理する単位です。
本文に戻るプロンプト — モデルに送る入力文です。生成モデルでは作りたい結果を説明する文になり、出力の構成や内容を大きく左右します。
本文に戻るトークンのデコード — 入力とそれまでの回答をもとに、次の出力トークンを順に生成する段階です。
本文に戻るMTP — 複数の将来トークンを一度に予測する学習目標、またはそれを行うモデル構成です。投機的デコーディングでは、その予測を候補トークンとして提案できます。
本文に戻るコンテキスト長 — 1回のリクエストでモデルが扱える入力と生成内容のトークン範囲です。上限や実際のメモリ使用量はモデルと実行設定によります。
本文に戻るPython仮想環境 — プロジェクトごとにPythonパッケージを分けて導入する環境です。パッケージのバージョンの衝突を減らせます。
本文に戻るNeural Engine — Apple Siliconに搭載されたニューラルネットワーク計算用の専用装置です。
本文に戻る最初のトークンまでの時間 — リクエスト送信から最初の出力トークンが届くまでの時間です。
本文に戻る
よくある質問
- この記事で最初に確認すべきことは何ですか?
- oMLXはApple Silicon MacでMLXモデルを実行し、アプリの要求に答えるサーバーです。リリース候補の0.7.1rc1はSplash外部エンジンとMuse Spark Open対応を追加しました。以下の0.7.1.dev1測定は当時の開発版の資料として分け、新機能は使うモデルと同じ入力で試します。
- 必要なメモリはどのくらいですか?
- Muse Spark Openにも新しく対応しました。oQ3eの370GB構成は512GB Macが対象です。使うモデルを決めてから、統合メモリと他アプリに残す容量を計算してください。新しいダウンロード画面では、そのMacで読み込める候補を提案します。
変更履歴
サイトの説明を変更した記録です。インストール済みのエンジンやモデルのバージョンを自動で確認した結果ではありません。
oMLXのモデル管理・キャッシュ・高速化の案内を追加
MLXモデルでサーバーを起動し、メモリガード・モデルの保持・キャッシュ再利用を確認する手順を追加しました。MTPとSpecPrefillの適用条件を分け、SSD上の入力キャッシュとモデル重みのオフロードを区別しました。
この条件の応答を見る
機器とモデルを選択済みの速度シミュレーションです。
