最終更新

Codex ローカルモデル — Ollama・GGUF モデルをローカルで実行

自分のマシンで動くモデルは、他のプロバイダーと同じように Codex のモデルピッカーに表示できます。このページでは local-models コマンド、どのモデルをダウンロードすべきか、実際に動くかの検証方法、ローカルモデルをテキストのみプロバイダーの視覚リーダーとして使う方法を説明します。

ローカルモデル実験的無料 · オフライン

ローカルモデルを有効化

トレイの Model Settings → Local LLMs を開き、使いたいモデルにチェックを入れて、Codex を完全終了・再起動します。CLI の同等コマンド:

./bin/control local-models list                  # インストール済み+ダウンロード候補
./bin/control local-models install llama3.2:3b   # ダウンロード(進捗表示)
./bin/control local-models set llama3.2:3b on    # Codex に公開
./bin/control local-models uninstall llava --yes # ディスクから削除

チェック・インストール・削除は意図的に別アクションです:チェックを外してもダウンロードは削除されず、削除は明示的な確認が必要です。local プロバイダーは最初のモデルにチェックを入れたときに自動でオンになり、最後のモデルをクリアするとオフになります。

どのモデルを選ぶべきか

local-models list はタグを暗記させずにその答えを出します。モデルを用途別にグループ化し、サイズと状態を表示します:

コーディング用 — 実験的。Codex のプロンプトは 32K ウィンドウの約 20K を使用:

  llama3.2:3b          2.0 GB 検証済み  Codex で実ツール呼び出しを実行
  qwen2.5-coder:1.5b   1.0 GB 未テスト   最小のコーダー
  devstral            14.3 GB 未テスト   エージェント向け

画像読み取り専用 — コード不可:

  qwen2.5vl:3b         3.2 GB  正確
  moondream            1.7 GB  キャプションのみ

モデルが実際に動くか検証

ツールテンプレートは下限であり、予測ではありません。決め手になるのは実クライアントの実行です:

./bin/control local-models agent-check llama3.2:3b

これはスクラッチワークスペースで codex exec を 2 回実行し、そこにしかないマーカーファイルを両方で検証します——モデルがツールを発行し、実際の出力を読んだことの証明です。両方合格する必要があり、混在結果は不安定(flaky)と報告されます。

コンテキストウィンドウに現実的になる

すべてのローカルモデルは 32K として Codex に宣伝されますが、Codex 自身の指示とツール定義がコードを追加する前におよそ 20K を占めます——モデルがネイティブに保持する量に関係なく、使えるのはおよそ 12K。ツールサポートとネイティブコンテキストはモデル自身のファイル(チャットテンプレートと GGUF ヘッダー、約 1MB のレンジリクエスト)から読み取られ、これが phi4 が家族が示唆する 128K ではなく 16K である理由です。

ダウンロード前に検査

./bin/control local-models inspect llama3.2:3b   # tools:true  context:131072
./bin/control local-models inspect phi4          # tools:false context:16384

同じ参照にダウンロードサイズとメモリ適合の推定も含まれます——Apple Silicon はユニファイドメモリ、NVIDIA は GPU メモリ、それ以外はシステム RAM を読み、コンテキストとキャッシュ用に約 20% を上乗せします:

fit意味
fitsフルスピードで実行
tight実行できるが CPU に溢れて遅い
too-largeこのマシンでは実行不可

install はダウンロード前に too-large モデルを拒否します。tight モデルは警告して続行します——それは判断の問題であり、壁ではありません。

Codex にはツール呼び出しが必要

Codex は毎ターンをツール呼び出しで駆動するため、ツールのないモデルは最初のリクエストで失敗します。Ollama がツール対応と報告したモデルだけがピッカーに公開され、残りはインストールされたまま視覚リーダーとして使え、“no tools — vision only” と表示されます。

ローカルモデルを視覚リーダーとして使う

ビジョンブリッジはデフォルトで有効です:テキストのみのモデルにスクリーンショットを貼ると、視覚対応モデルが先に読み取り、テキストとしてターンに置き換えられるため、テキストのみのモデルは画像を見ません。すべてのプロバイダーがテキストのみの場合、ブリッジを自分のマシンで動く小さな視覚モデルに向ければ——無料、画像はマシンの外に出ず、オフラインでも動作します。

CLI で一覧・取得・固定:

./bin/control vision-bridge models
./bin/control vision-bridge pull qwen2.5vl:3b   # Ollama 経由でダウンロードして固定
./bin/control vision-bridge local qwen2.5vl:3b  # ローカルリーダーを固定

ブリッジはモデル自体を実行せず、資格情報なしで任意の OpenAI 互換 /v1/chat/completions エンドポイントに POST します。Ollama・llama.cpp・LM Studio のどれでも動作し、vision-bridge probe が一般的なランタイムを検出し、ハードウェアの推奨を報告します(およそ 8GB 未満は moondream、8GB は qwen2.5vl:3b、16GB+ は qwen2.5vl:7b)。

すべての視覚モデルが「読める」わけではありません。ほとんどの小さいモデルは説得力のある説明をしつつコードや数字を捏造します。ピッカーは名声ではなく測定で正確性を表示します——node src/vision-benchmark.mjs を実行すると、既知の請求書画像に対してインストール済みモデルを採点できます。

関連