Utiliser DeepSeek dans Codex CLI : Guide de configuration V4 Flash / Pro
Configurez DeepSeek V4 Flash et Pro dans Codex CLI via le point de terminaison Responses d'APIMaster. Comprend la configuration de la clé API, le changement de modèle, les tests d'outils et le dépannage.
Codex CLI peut-il utiliser DeepSeek ? Nos tests avec Codex CLI 0.153.4 ont utilisé avec succès deepseek-v4-flash et deepseek-v4-pro via le point de terminaison Responses d'APIMaster. Configurez un fournisseur personnalisé avec l'URL de base https://apimaster.ai/v1 et wire_api = "responses". Les Chat Completions compatibles OpenAI seules ne suffisent pas pour cette configuration.
Dernier test : 2026-09-07, Codex CLI 0.153.4, Linux. Les deux modèles ont renvoyé le texte attendu, ont invoqué un outil shell pour lire un fichier de test local, et ont répondu avec son contenu. Toutes les exécutions se sont terminées avec le code 0. Des avertissements de métadonnées et d'événements de streaming ont eu lieu ; voir la section de dépannage. Les commandes Windows / macOS sont fournies pour la configuration, mais ce test a été exécuté sur Linux. Les sessions longues, l'entrée d'images et les flux de travail de codage complexes n'ont pas été testés.
1. Préparer Codex et votre clé API
Installez Codex en suivant le guide d'environnement et le guide de configuration Codex, puis vérifiez :
codex --version
Créez une clé API APIMaster avec accès au modèle DeepSeek sélectionné et un quota suffisant. Pour ce tutoriel, utilisez la configuration dédiée ci-dessous ; vous n'avez pas besoin de remplacer un auth.json existant ni de vous déconnecter d'un autre compte.
2. Définir la clé dans votre terminal
macOS / Linux :
export APIMASTER_API_KEY='YOUR_APIMASTER_API_KEY'
Windows PowerShell :
$env:APIMASTER_API_KEY = 'YOUR_APIMASTER_API_KEY'
La variable n'existe que dans cette session de terminal. La configuration stocke le nom de la variable, pas le secret lui-même.
3. Créer une configuration de fournisseur séparée
Dans un répertoire que vous utilisez pour ce tutoriel, créez deepseek.toml avec ce contenu. Laissez votre configuration Codex existante inchangée.
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"
Pour un premier test copiable et isolé, passez les mêmes paramètres en tant que remplacements en ligne de commande. --ignore-user-config empêche un autre fournisseur dans votre configuration normale de prendre le dessus. --ephemeral évite d'enregistrer cette session de test.
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"
Exécutez la commande depuis le terminal où vous avez défini la clé. Réponse finale attendue : DEEPSEEK_TEST_OK. Dans les anciennes versions de Windows PowerShell, le quoting des arguments natifs peut différer ; utilisez PowerShell 7 ou la méthode de profil ci-dessous si les arguments TOML sont rejetés.
4. Enregistrer la configuration comme profil réutilisable
Pour la version CLI testée, placez deepseek.toml dans ~/.codex/deepseek.config.toml (Windows : %USERPROFILE%\.codex\deepseek.config.toml). Si CODEX_HOME est personnalisé, utilisez ce répertoire à la place. Ce profil nommé garde les paramètres DeepSeek séparés de votre config.toml normal.
macOS / Linux, depuis le répertoire contenant 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
Sauvegardez d'abord un fichier de profil si ce nom de fichier existe déjà. La syntaxe du profil dépend de la version : ces commandes ciblent 0.153.4. Vérifiez codex --help sur votre version installée ; les versions plus anciennes peuvent utiliser des profils dans config.toml à la place.
Pour utiliser Pro :
codex --profile deepseek --model deepseek-v4-pro
Un profil se superpose à votre configuration normale, donc les serveurs MCP existants ou d'autres paramètres peuvent toujours s'appliquer. La commande isolée de l'étape 3 est utile pour diagnostiquer les conflits de configuration.
5. Vérifier un appel d'outil
Créez un fichier local nommé probe.txt contenant :
TOOL_PROBE_739182
Depuis le même répertoire, exécutez :
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."
Attendu : une commande de lecture de fichier s'exécute avec succès, suivie de TOOL_PROBE_739182. Répétez avec --model deepseek-v4-pro. Cela vérifie un aller-retour de demande / résultat d'outil, au-delà d'une simple réponse texte. Gardez les invites de permission normales activées pour le travail de projet réel.
Dépannage
| Symptôme | Explication ou prochaine étape |
|---|---|
Model metadata ... not found |
Le CLI testé n'avait pas de métadonnées intégrées pour ces identifiants de modèle et a utilisé des métadonnées de secours. Nos tests de texte et d'outils ont abouti, mais les limites de contexte et autres valeurs par défaut ne doivent pas être considérées comme des capacités de modèle vérifiées. |
| Erreur d'analyse de la liste des modèles | La liste des modèles de la passerelle peut différer du catalogue de métadonnées de Codex. Spécifiez le modèle explicitement et vérifiez si la demande réelle se termine. |
OutputTextDelta without active item |
Vu dans notre test de streaming. La réponse finale et l'aller-retour d'outil ont quand même abouti. Si la sortie est manquante ou interrompue, conservez la version du CLI, l'horodatage et l'erreur pour le support. |
| 401 ou la demande va vers un autre fournisseur | Vérifiez APIMASTER_API_KEY, la sélection du fournisseur et les paramètres hérités. Réessayez la commande isolée de l'étape 3. |
| 404 ou protocole non pris en charge | L'URL de base se termine par /v1, pas /chat/completions ; définissez wire_api = "responses". |
| Option de ligne de commande inconnue | Vérifiez la version du CLI installé. Les options documentées ont été testées avec 0.153.4. |
Questions fréquemment posées
Cela signifie-t-il que chaque point de terminaison DeepSeek fonctionne dans Codex ?
Non. Ces résultats s'appliquent à la configuration de la passerelle d'APIMaster. Un fournisseur doit prendre en charge le protocole et le comportement d'outil que Codex attend ; accepter /chat/completions n'établit pas la compatibilité Responses.
Ai-je besoin d'un abonnement ChatGPT pour cette configuration ?
Ce fournisseur personnalisé utilise votre clé API APIMaster et votre quota de compte. Il n'utilise pas le quota d'abonnement ChatGPT. Consultez la place de marché des modèles pour les tarifs API actuels.
Puis-je revendiquer une compatibilité complète avec Codex à partir de ces tests ?
La portée vérifiée est une sortie texte courte et un aller-retour d'outil de lecture de fichier local. Les avertissements ci-dessus restent pertinents ; le comportement en contexte long, chaque outil et chaque future version du CLI ne sont pas couverts.