Użycie DeepSeek w Codex CLI: Przewodnik konfiguracji V4 Flash / Pro
Skonfiguruj DeepSeek V4 Flash i Pro w Codex CLI przez punkt końcowy Responses APIMaster. Zawiera konfigurację klucza API, przełączanie modeli, testy narzędzi i rozwiązywanie problemów.
Czy Codex CLI może używać DeepSeek? Nasze testy z Codex CLI 0.153.4 z powodzeniem użyły deepseek-v4-flash i deepseek-v4-pro przez punkt końcowy Responses APIMaster. Skonfiguruj niestandardowego dostawcę z bazowym URL https://apimaster.ai/v1 i wire_api = "responses". Zgodne z OpenAI Chat Completions samo w sobie nie wystarcza dla tej konfiguracji.
Ostatnio testowane: 2026-09-07, Codex CLI 0.153.4, Linux. Oba modele zwróciły oczekiwany tekst, wywołały narzędzie powłoki do odczytu lokalnego pliku testowego i odpowiedziały jego zawartością. Wszystkie uruchomienia zakończyły się kodem 0. Wystąpiły ostrzeżenia dotyczące metadanych i zdarzeń strumieniowych; zobacz sekcję rozwiązywania problemów. Polecenia dla Windows / macOS są podane do konfiguracji, ale test został przeprowadzony na Linuxie. Długie sesje, wprowadzanie obrazów i złożone przepływy pracy związane z kodowaniem nie były testowane.
1. Przygotuj Codex i swój klucz API
Zainstaluj Codex zgodnie z przewodnikiem środowiska i przewodnikiem konfiguracji Codex, a następnie sprawdź:
codex --version
Utwórz klucz API APIMaster z dostępem do wybranego modelu DeepSeek i wystarczającym limitem. Na potrzeby tego samouczka użyj dedykowanej konfiguracji poniżej; nie musisz zastępować istniejącego auth.json ani wylogowywać się z innego konta.
2. Ustaw klucz w terminalu
macOS / Linux:
export APIMASTER_API_KEY='YOUR_APIMASTER_API_KEY'
Windows PowerShell:
$env:APIMASTER_API_KEY = 'YOUR_APIMASTER_API_KEY'
Zmienna istnieje tylko w tej sesji terminala. Konfiguracja przechowuje nazwę zmiennej, a nie sam sekret.
3. Utwórz osobną konfigurację dostawcy
W katalogu, którego używasz do tego samouczka, utwórz deepseek.toml z następującą zawartością. Pozostaw istniejącą konfigurację Codex bez zmian.
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"
Aby uzyskać kopiowalny, izolowany pierwszy test, przekaż te same ustawienia jako nadpisania wiersza poleceń. --ignore-user-config zapobiega przejęciu pierwszeństwa przez innego dostawcę w normalnej konfiguracji. --ephemeral unika zapisywania tej sesji testowej.
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"
Uruchom polecenie z terminala, w którym ustawiłeś klucz. Oczekiwana końcowa odpowiedź: DEEPSEEK_TEST_OK. W starszych wersjach Windows PowerShell cytowanie argumentów natywnych może się różnić; użyj PowerShell 7 lub metody profilu poniżej, jeśli argumenty TOML są odrzucane.
4. Zapisz konfigurację jako wielokrotnego użytku profil
Dla testowanej wersji CLI umieść deepseek.toml w ~/.codex/deepseek.config.toml (Windows: %USERPROFILE%\.codex\deepseek.config.toml). Jeśli CODEX_HOME jest dostosowany, użyj tego katalogu. Ten nazwany profil utrzymuje ustawienia DeepSeek oddzielnie od normalnego config.toml.
macOS / Linux, z katalogu zawierającego 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
Najpierw utwórz kopię zapasową pliku profilu, jeśli taka nazwa pliku już istnieje. Składnia profilu zależy od wersji: te polecenia dotyczą 0.153.4. Sprawdź codex --help w swojej zainstalowanej wersji; starsze wydania mogą używać profili wewnątrz config.toml.
Aby użyć Pro:
codex --profile deepseek --model deepseek-v4-pro
Profil nakłada się na normalną konfigurację, więc istniejące serwery MCP lub inne ustawienia mogą nadal obowiązywać. Izolowane polecenie z kroku 3 jest przydatne podczas diagnozowania konfliktów konfiguracji.
5. Zweryfikuj wywołanie narzędzia
Utwórz lokalny plik o nazwie probe.txt zawierający:
TOOL_PROBE_739182
Z tego samego katalogu uruchom:
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."
Oczekiwane: polecenie odczytu pliku wykonuje się pomyślnie, a następnie pojawia się TOOL_PROBE_739182. Powtórz z --model deepseek-v4-pro. To sprawdza pełny cykl żądania narzędzia / wyniku narzędzia, wykraczając poza prostą odpowiedź tekstową. Zachowaj normalne monity o uprawnienia włączone do rzeczywistej pracy nad projektem.
Rozwiązywanie problemów
| Objaw | Wyjaśnienie lub następny krok |
|---|---|
Model metadata ... not found |
Testowane CLI nie miało wbudowanych metadanych dla tych identyfikatorów modeli i użyło metadanych zastępczych. Nasze testy tekstu i narzędzi zakończyły się, ale limitów kontekstu i innych wartości domyślnych nie należy traktować jako zweryfikowanych możliwości modelu. |
| Błąd parsowania listy modeli | Lista modeli bramy może różnić się od katalogu metadanych Codex. Określ model jawnie i sprawdź, czy rzeczywiste żądanie kończy się. |
OutputTextDelta without active item |
Zaobserwowano w naszym teście strumieniowym. Końcowa odpowiedź i pełny cykl narzędzia nadal zostały ukończone. Jeśli dane wyjściowe są niekompletne lub przerwane, zachowaj wersję CLI, znacznik czasu i błąd dla wsparcia. |
| 401 lub żądanie trafia do innego dostawcy | Sprawdź APIMASTER_API_KEY, wybór dostawcy i odziedziczone ustawienia. Ponów izolowane polecenie z kroku 3. |
| 404 lub nieobsługiwany protokół | Bazowy URL kończy się na /v1, a nie /chat/completions; ustaw wire_api = "responses". |
| Nieznana opcja wiersza poleceń | Sprawdź zainstalowaną wersję CLI. Udokumentowane opcje były testowane z wersją 0.153.4. |
Często zadawane pytania
Czy to oznacza, że każdy punkt końcowy DeepSeek działa w Codex?
Nie. Te wyniki dotyczą konfiguracji bramy APIMaster. Dostawca musi obsługiwać protokół i zachowanie narzędzi, których oczekuje Codex; akceptowanie /chat/completions nie ustanawia zgodności z Responses.
Czy potrzebuję subskrypcji ChatGPT do tej konfiguracji?
Ten niestandardowy dostawca używa Twojego klucza API APIMaster i limitu konta. Nie korzysta z limitu subskrypcji ChatGPT. Sprawdź rynek modeli w celu uzyskania aktualnych stawek API.
Czy mogę twierdzić, że te testy potwierdzają pełną zgodność z Codex?
Zweryfikowany zakres to krótkie wyjście tekstowe i pełny cykl narzędzia do odczytu lokalnego pliku. Powyższe ostrzeżenia pozostają istotne; zachowanie długiego kontekstu, każde narzędzie i każda przyszła wersja CLI nie są objęte.