stacktube
← ランディングへ戻る

完成ノートギャラリー

Stacktube が実際の公開動画から作った実ノートを、抜粋なしでそのまま掲載。動画によって構造が変わります。

サンプルノートはランダムに表示され、随時入れ替わります。

Apple Developer·2026-06-08チュートリアル長期有効
読了17分
#AIエージェント#ローカルAI#Appleシリコン#MLX

WWDC26: MLXを使ってMac上でローカルエージェンティックAIを実行する | Apple

原題: WWDC26: Run local agentic AI on the Mac using MLX | Apple

要点: Mac(Mac)上でApple(アップル)シリコンを活用するMLX(エムエルエックス)を使うことで、プライバシー、低遅延、オフラインアクセスが可能なローカルAI(AI)エージェントワークフローを構築・実行できる。これにより、クラウドやAPI(エーピーアイ)キーに依存せず、強力なエージェントワークフローを完全にデバイス上で実現する。

一行要約

このチュートリアルは、Apple(アップル)シリコンを搭載したMac(Mac)上で、MLX(エムエルエックス)フレームワークを使ってローカルAI(AI)エージェントを3ステップでセットアップし、プライバシーとパフォーマンスを両立した開発ワークフローを構築する方法を教える。


核心インサイト

AI(AI)エージェントは、モデルと連携して次の行動を決定し、ツールを呼び出してタスクを実行する「エージェンティックループ」を通じて動作する。このループは、ユーザー、エージェント、モデル、ツール間で繰り返され、タスクが完了するまでサイクルが継続する。

Apple(アップル)シリコンを搭載したMac(Mac)では、このエージェンティックループ全体をデバイス上でローカルに実行できる。これにより、データはデバイス上に留まり、AI(AI)はいつでもどこでも利用可能で、使用コストもかからないというメリットがある。

ローカルエージェンティックAI(AI)スタックは、Apple(アップル)シリコン向けに設計されたオープンソースのアレイフレームワークであるMLX(エムエルエックス)を基盤とする。その上にMLX-LM(エムエルエックス・エルエム)が言語モデルを、OpenAI(オープンエーアイ)互換のMLX-LM Server(エムエルエックス・エルエム・サーバー)がモデルを標準API(エーピーアイ)で公開し、最上位にエージェント本体(OpenCode(オープンコード)など)が位置する。

MLX(エムエルエックス)は、Apple(アップル)シリコンのM5チップに搭載された専用のNeural Accelerator(ニューラル・アクセラレーター)を活用し、プロンプト処理を最大4倍高速化する。これにより、エージェントはコードベースの読み込みやツール結果の処理を劇的に速く行える。

MLX-LM Server(エムエルエックス・エルエム・サーバー)は、継続的バッチ処理により、複数のサブエージェントからのリクエストを動的にバッチにグループ化してGPU(ジーピーユー)上でまとめて処理する。これにより、すべてのリクエストが並行してサービスを受けられ、エージェンティックワークフロー全体のパフォーマンスが向上する。

MLX(エムエルエックス)の分散サポートにより、Thunderbolt(サンダーボルト)やEthernet(イーサネット)経由で接続した複数のMac(Mac)にモデルを分散できる。これにより、1台のマシンでは動かせない大規模なモデルの実行や、デバイスをまたいだプロンプト処理の並列化が可能になる。

ローカルエージェントのセットアップは、pip install mlx-lmでMLX-LM(エムエルエックス・エルエム)をインストールし、ツール呼び出し対応モデルでmlx_lm.serverを実行してサーバーを起動する。その後、エージェントフレームワークのbase URL(ベース・ユーアールエル)をローカルサーバーのアドレスに向けるという3ステップで非常に簡単に行える。

実演デモでは、エージェントが空のXcode(エックスコード)プロジェクトからSwiftUI(スウィフトユーアイ)描画アプリをゼロから構築し、さらに既存のバグを修正する様子が示された。これは、ローカルAI(AI)が強力なコーディング支援能力を持ち、既存のXcode(エックスコード)開発ワークフローにシームレスに統合できることを強調している。


事前準備物

  • Apple(アップル)シリコンを搭載したMac(Mac)デバイス
  • Python(パイソン)環境(pip(ピップ)が利用可能であること)
  • 基本的なターミナル操作の知識
  • (オプション)GitHub CLI(ギットハブ・シーエルアイ)やXcode(エックスコード)など、エージェントが利用する開発ツール

ローカルエージェンティックAI(AI)スタックの構成

03:45では、Mac(Mac)上で実行されるローカルエージェンティックAI(AI)スタックの全体像が示されています。このスタックは以下の4層で構成されています。

レイヤー役割備考
MLX(エムエルエックス)Apple(アップル)シリコン向けに最適化されたオープンソースのアレイフレームワーク利用可能なハードウェアに最適なカーネルを自動選択する
MLX-LM(エムエルエックス・エルエム)HuggingFace(ハギングフェイス)の数千のモデルをサポートする言語モデルレイヤーモデルのロード、実行、量子化、ファインチューニングなどが可能
MLX-LM Server(エムエルエックス・エルエム・サーバー)OpenAI(オープンエーアイ)互換のHTTP(エイチティーティーピー)サーバー構造化ツール呼び出しとリーズニングモデルをサポート
Agent(エージェント)OpenCode(オープンコード)やXcode(エックスコード)など、タスクを自律実行するエージェント本体OpenAI(オープンエーアイ)のchat completion(チャット・コンプリーション)プロトコルに対応

MLX(エムエルエックス)は、Ollama(オラマ)、LM Studio(エルエム・スタジオ)、vLLM(ヴィーエルエルエム)など人気の高いアプリの基盤としても使われています。


視覚資料: 「Local Agentic AI Stack on Mac(Mac上のローカルエージェンティックAIスタック)」という… — 4:00 ▶

段階別手順

Step 1: MLX-LM(エムエルエックス・エルエム)のインストール

07:15 から、最初のステップとしてMLX-LM(エムエルエックス・エルエム)のインストールが紹介されています。

MLX-LM(エムエルエックス・エルエム)は、HuggingFace(ハギングフェイス)の何千ものモデルをサポートするオープンソースの言語モデルレイヤーです。pip install mlx-lm コマンドをPython(パイソン)環境で実行するだけで、必要なライブラリとツールがすべてインストールされます。これにより、モデルのロード、実行、量子化、ファインチューニングなどの機能が利用可能になります。

pip install mlx-lm

このコマンドを実行するだけで、ローカルエージェントに必要な基礎が整います。

Python(パイソン)環境が適切に設定されていることを確認してください。


Step 2: MLX-LM Server(エムエルエックス・エルエム・サーバー)の起動

07:25 で、次のステップとしてMLX-LM Server(エムエルエックス・エルエム・サーバー)の起動方法が解説されます。

インストールしたMLX-LM(エムエルエックス・エルエム)を使って、OpenAI(オープンエーアイ)互換のHTTP(エイチティーティーピー)サーバーを起動します。これは、ローカルでロードされたモデルを標準API(エーピーアイ)を通じて公開する役割を果たすものです。mlx_lm.server --model <モデル名> コマンドで起動し、特にツール呼び出しをサポートするモデル(例: Mistral-7B-Instruct-v0.2(ミストラル・セブンビー・インストラクト・ブイゼロドットツー))を選択することが推奨されます。サーバーが起動すると、ローカルホストでリクエストを受け付ける準備ができます。

mlx_lm.server --model Mistral-7B-Instruct-v0.2 --port 8080

--port オプションでポート番号を指定でき、デフォルトでは8080(ハチマルハチマル)が使われます。

最初に小さなモデルから始めて、サーバーが正しく動作するかテストするのが良いでしょう。--port オプションでポート番号を指定できます(例: 8080)。


Step 3: エージェントをローカルサーバーに向ける

07:45 から、最終ステップとしてエージェントの設定が説明されます。

ほとんどのエージェントフレームワーク(例: OpenCode(オープンコード)、Xcode(エックスコード)など)は、OpenAI(オープンエーアイ)のchat completion(チャット・コンプリーション)プロトコルに対応しているため、base URL(ベース・ユーアールエル)をローカルサーバーのアドレスに設定するだけで、エージェントがローカルモデルと通信できるようになります。例えば、OpenCode(オープンコード)では、プロバイダー設定でURL(ユーアールエル)をhttp://localhost:<ポート番号>に、モデル名をサーバーで指定したものに設定します。

{
  "provider": "openai",
  "base_url": "http://localhost:8080",
  "model": "Mistral-7B-Instruct-v0.2"
}

これで、エージェントは完全にローカル環境で動作し、クラウドやAPI(エーピーアイ)キーを使わずにタスクを実行できます。

エージェントのフレームワークによって設定方法が異なる場合があるため、各フレームワークのドキュメントを確認する必要があります。


ローカルエージェント実行の課題とMLX(エムエルエックス)の解決策

08:00 から、ローカルでエージェントを実行する際の3つの主な課題と、MLX(エムエルエックス)がそれらをどう解決するかが紹介されます。

課題問題MLX(エムエルエックス)の解決策
プロンプト処理エージェントは大規模なコードベースを読み込む際、長いプロンプトを処理する必要があり、これがボトルネックになるM5チップのNeural Accelerator(ニューラル・アクセラレーター)を活用し、プロンプト処理を最大4倍高速化
並行処理エージェントは複数のサブエージェントを並行して実行するため、すべてのリクエストを効率的に処理する必要がある**継続的バッチ処理(Continuous Batching)**により、複数のリクエストを動的にバッチ化してGPU(ジーピーユー)で並行処理
モデルサイズ単一のMac(Mac)では大規模モデルを実行できない場合がある**分散推論(Distributed Inference)**により、複数のMac(Mac)間でモデルをシャードして実行

視覚資料: 「Challenges of running agents locally(ローカルでエージェントを実行する際の課題)」… — 8:25 ▶

プロンプト処理の高速化

08:00 では、MLX(エムエルエックス)がApple(アップル)シリコンのM5チップに搭載された専用のNeural Accelerator(ニューラル・アクセラレーター)を活用し、プロンプト処理を最大4倍高速化することが示されています。これにより、エージェントは大規模なコードベースを迅速に読み込み、ツールからの出力を効率的に処理できます。

並行処理の最適化

09:15 で紹介される**継続的バッチ処理(Continuous Batching)**は、複数のサブエージェントからのリクエストを動的にバッチにグループ化し、GPU(ジーピーユー)上でまとめて処理する仕組みです。これにより、すべてのリクエストが並行してサービスを受けられ、エージェンティックワークフロー全体のパフォーマンスが大幅に向上します。

分散推論によるモデルサイズの拡張

10:05 からは、MLX(エムエルエックス)の分散サポートが解説されます。Thunderbolt(サンダーボルト)やEthernet(イーサネット)経由で複数のMac(Mac)を接続し、大規模モデルを各Mac(Mac)のGPU(ジーピーユー)に分散してシャード化することで、1台のマシンでは動かせないモデルも実行可能になります。また、複数デバイス間でプロンプト処理を並列化することもできます。


視覚資料: 分散推論(Distributed Inference)の概念図。複数のMac(Mac)がThunderbolt(サンダー… — 10:40 ▶

よくある失敗と解決法

失敗: サーバーが起動しない、またはエージェントがサーバーに接続できない。

解決: サーバー起動時に指定したモデル名が正しいか、ポート番号が他のアプリケーションと競合していないか確認してください。ファイアウォール設定もチェックしましょう。

失敗: エージェントのパフォーマンスが期待通りに出ない、またはエラーが発生する。

解決: まずは小さいモデルで動作を確認し、その後、より大規模なモデルを試してください。Mac(Mac)のRAM(ラム)やストレージが十分か確認し、必要に応じて分散推論のセットアップを検討しましょう。


完成結果物

クラウドやAPI(エーピーアイ)キーに依存せず、プライバシーが保護され、低遅延でオフラインアクセスが可能なローカルAI(AI)エージェントワークフローがMac(Mac)上で完全に動作します。エージェントはコード生成、デバッグ、ドキュメント要約などのタスクをApple(アップル)シリコンの性能を最大限に活用して実行できるようになります。

11:30 からのライブデモでは、エージェントが空のXcode(エックスコード)プロジェクトからSwiftUI(スウィフトユーアイ)描画アプリをゼロから構築し、さらに 13:00 では、Xcode(エックスコード)に統合されたローカルAI(AI)が既存のバグを修正する様子が実演されました。

💬 重要な引用: 「ローカルAIなら、コードがMacから出ることはありません。(With local AI, your code never leaves your Mac.)」


応用・次のステップ

このチュートリアルの技術をさらに発展させるために、以下の学習を推奨します。

  • MLX(エムエルエックス)の分散推論セットアップを複数のMac(Mac)で試す
  • 自分のプロジェクトに合わせたカスタムツール呼び出しを設計する
  • HuggingFace(ハギングフェイス)の異なるモデルを比較し、タスクに最適なモデルを選定する
  • Xcode(エックスコード)のIntelligence(インテリジェンス)機能にローカルAI(AI)を統合し、開発効率を向上させる
  • MLX(エムエルエックス)のファインチューニング機能を使って、特定ドメインに最適化されたモデルを作成する

関連概念

  • エージェンティックAI
  • Apple Silicon
  • MLX フレームワーク
  • ローカル言語モデル
  • プライバシー保護AI
  • 分散機械学習
  • SwiftUI開発
  • Xcode統合
  • OpenAI互換API
  • HuggingFaceモデル
  • 継続的バッチ処理
  • Neural Accelerator

主要タイムスタンプ

  • 01:10 — エージェンティックAIの進化とローカル実行のメリット
  • 02:45 — ローカルエージェントのデモ:PR要約タスク
  • 03:45 — ローカルエージェンティックAIスタックの解説
  • 06:55 — ローカルエージェントのセットアップ方法(3ステップ)
  • 08:00 — MLXによるハードウェア活用:プロンプト処理の高速化
  • 09:15 — MLXによるハードウェア活用:並行処理(継続的バッチ処理)
  • 10:05 — MLXによるハードウェア活用:モデルサイズ(分散推論)
  • 11:30 — ライブデモ1:XcodeでのSwiftUIアプリ構築
  • 13:00 — ライブデモ2:XcodeへのローカルAI統合とバグ修正
  • 13:20 — まとめと今後の展望
Stacktube · 読了17分動画は流れていくけれど、知識は、積み上がる。