Codex CLIでDeepSeekを使用する:V4 Flash / Proセットアップガイド
APIMasterのResponsesエンドポイントを介して、Codex CLIでDeepSeek V4 FlashおよびProを設定します。APIキーの設定、モデルの切り替え、ツールテスト、トラブルシューティングが含まれます。
Codex CLIはDeepSeekを使用できますか?Codex CLI 0.153.4でのテストでは、APIMasterのResponsesエンドポイントを介してdeepseek-v4-flashとdeepseek-v4-proが正常に使用できました。 ベースURL https://apimaster.ai/v1とwire_api = "responses"を指定してカスタムプロバイダーを設定します。OpenAI互換のChat Completionsだけでは、この構成には不十分です。
最終テスト日:2026-09-07、Codex CLI 0.153.4、Linux。両モデルとも期待されたテキストを返し、シェルツールを呼び出してローカルテストファイルを読み取り、その内容で応答しました。すべての実行はコード0で終了しました。メタデータとストリーミングイベントの警告が発生しました。トラブルシューティングを参照してください。Windows / macOSのコマンドもセットアップ用に提供されていますが、このテストはLinuxで実行されました。長時間のセッション、画像入力、複雑なコーディングワークフローはテストされていません。
1. CodexとAPIキーの準備
環境ガイドとCodexセットアップガイドに従ってCodexをインストールし、次に確認します:
codex --version
選択したDeepSeekモデルへのアクセス権と十分なクォータを持つAPIMaster APIキーを作成します。このチュートリアルでは、以下の専用構成を使用してください。既存のauth.jsonを置き換えたり、別のアカウントからサインアウトしたりする必要はありません。
2. ターミナルでキーを設定する
macOS / Linux:
export APIMASTER_API_KEY='YOUR_APIMASTER_API_KEY'
Windows PowerShell:
$env:APIMASTER_API_KEY = 'YOUR_APIMASTER_API_KEY'
この変数は、このターミナルセッションでのみ存在します。構成には変数名が保存され、シークレット自体は保存されません。
3. 専用のプロバイダー構成を作成する
このチュートリアルで使用するディレクトリに、deepseek.tomlを次の内容で作成します。既存のCodex構成は変更しないでください。
model = "deepseek-v4-flash"
model_provider = "apimaster_deepseek"
[model_providers.apimaster_deepseek]
name = "APIMaster DeepSeek"
base_url = "https://apimaster.ai/v1"
env_key = "APIMASTER_API_KEY"
wire_api = "responses"
コピー可能で分離された最初のテストのために、同じ設定をコマンドラインオーバーライドとして渡します。--ignore-user-configは、通常の構成内の別のプロバイダーが優先されるのを防ぎます。--ephemeralは、このテストセッションの保存を回避します。
codex exec --ignore-user-config --ephemeral --skip-git-repo-check --sandbox read-only --model deepseek-v4-flash -c 'model_provider="apimaster_deepseek"' -c 'model_providers.apimaster_deepseek.name="APIMaster DeepSeek"' -c 'model_providers.apimaster_deepseek.base_url="https://apimaster.ai/v1"' -c 'model_providers.apimaster_deepseek.env_key="APIMASTER_API_KEY"' -c 'model_providers.apimaster_deepseek.wire_api="responses"' "Reply with exactly: DEEPSEEK_TEST_OK"
キーを設定したターミナルからコマンドを実行します。期待される最終回答:DEEPSEEK_TEST_OK。古いWindows PowerShellバージョンでは、ネイティブ引数の引用が異なる場合があります。TOML引数が拒否される場合は、PowerShell 7または以下のプロファイルメソッドを使用してください。
4. 構成を再利用可能なプロファイルとして保存する
テスト済みのCLIバージョンでは、deepseek.tomlを~/.codex/deepseek.config.toml(Windows:%USERPROFILE%\.codex\deepseek.config.toml)に配置します。CODEX_HOMEがカスタマイズされている場合は、そのディレクトリを使用します。この名前付きプロファイルにより、DeepSeek設定を通常のconfig.tomlから分離して保持できます。
macOS / Linux、deepseek.tomlを含むディレクトリから:
mkdir -p ~/.codex
cp deepseek.toml ~/.codex/deepseek.config.toml
codex --profile deepseek --model deepseek-v4-flash
Windows PowerShell:
New-Item -ItemType Directory -Force "$env:USERPROFILE\.codex" | Out-Null
Copy-Item .\deepseek.toml "$env:USERPROFILE\.codex\deepseek.config.toml"
codex --profile deepseek --model deepseek-v4-flash
そのファイル名が既に存在する場合は、最初にプロファイルファイルをバックアップしてください。プロファイル構文はバージョンに依存します。これらのコマンドは0.153.4を対象としています。インストールされているバージョンでcodex --helpを確認してください。古いリリースでは、代わりにconfig.toml内のプロファイルを使用する場合があります。
Proを使用するには:
codex --profile deepseek --model deepseek-v4-pro
プロファイルは通常の構成の上に重なるため、既存のMCPサーバーやその他の設定が引き続き適用される場合があります。手順3の分離コマンドは、構成の競合を診断するときに役立ちます。
5. ツール呼び出しを検証する
probe.txtという名前のローカルファイルを作成し、次の内容を含めます:
TOOL_PROBE_739182
同じディレクトリから、次を実行します:
codex exec --profile deepseek --skip-git-repo-check --sandbox read-only --model deepseek-v4-flash "Use your file reading or shell tool to read probe.txt in the current directory. Reply with only the exact content. Do not guess."
期待される結果:ファイル読み取りコマンドが正常に実行され、その後にTOOL_PROBE_739182が続きます。--model deepseek-v4-proで繰り返します。これにより、単純なテキスト応答を超えて、ツールリクエスト/ツール結果のラウンドトリップがチェックされます。実際のプロジェクト作業では、通常の権限プロンプトを有効のままにしてください。
トラブルシューティング
| 症状 | 説明または次のステップ |
|---|---|
Model metadata ... not found |
テスト済みのCLIには、これらのモデルIDの組み込みメタデータがなく、フォールバックメタデータを使用しました。テキストおよびツールのテストは完了しましたが、コンテキスト制限やその他のデフォルトは、検証済みのモデル機能として扱わないでください。 |
| モデルリストの解析エラー | ゲートウェイのモデルリストがCodexのメタデータカタログと異なる場合があります。モデルを明示的に指定し、実際のリクエストが完了するかどうかを確認してください。 |
OutputTextDelta without active item |
ストリーミングテストで発生しました。最終応答とツールのラウンドトリップは完了しました。出力が欠落または中断された場合は、CLIバージョン、タイムスタンプ、エラーをサポート用に保存してください。 |
| 401またはリクエストが別のプロバイダーに送信される | APIMASTER_API_KEY、プロバイダーの選択、継承された設定を確認してください。手順3の分離コマンドを再試行してください。 |
| 404またはサポートされていないプロトコル | ベースURLは/v1で終わり、/chat/completionsではありません。wire_api = "responses"を設定してください。 |
| 不明なコマンドラインオプション | インストールされているCLIバージョンを確認してください。記載されているオプションは0.153.4でテストされました。 |
よくある質問
これは、すべてのDeepSeekエンドポイントがCodexで動作することを意味しますか?
いいえ。これらの結果は、APIMasterのゲートウェイ構成に適用されます。プロバイダーは、Codexが期待するプロトコルとツールの動作をサポートする必要があります。/chat/completionsを受け入れることは、Responses互換性を確立するものではありません。
このセットアップにはChatGPTサブスクリプションが必要ですか?
このカスタムプロバイダーは、APIMaster APIキーとアカウントクォータを使用します。ChatGPTサブスクリプションのクォータは使用しません。現在のAPIレートについては、モデルマーケットプレイスを確認してください。
これらのテストから完全なCodex互換性を主張できますか?
検証された範囲は、短いテキスト出力とローカルファイル読み取りツールのラウンドトリップです。上記の警告は引き続き関連します。長いコンテキストの動作、すべてのツール、および将来のすべてのCLIリリースは対象外です。