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이 /chat/completions가 아닌 /v1로 끝납니다. wire_api = "responses"로 설정하십시오. |
| 알 수 없는 명령줄 옵션 | 설치된 CLI 버전을 확인하십시오. 문서화된 옵션은 0.153.4에서 테스트되었습니다. |
자주 묻는 질문
이것이 모든 DeepSeek 엔드포인트가 Codex에서 작동한다는 의미입니까?
아니요. 이러한 결과는 APIMaster의 게이트웨이 구성에 적용됩니다. 공급자는 Codex가 기대하는 프로토콜과 도구 동작을 지원해야 합니다. /chat/completions를 수락한다고 해서 Responses 호환성이 설정되는 것은 아닙니다.
이 설정에 ChatGPT 구독이 필요합니까?
이 사용자 지정 공급자는 APIMaster API 키와 계정 할당량을 사용합니다. ChatGPT 구독 할당량을 사용하지 않습니다. 현재 API 요금은 모델 마켓플레이스를 확인하십시오.
이러한 테스트에서 전체 Codex 호환성을 주장할 수 있습니까?
검증된 범위는 짧은 텍스트 출력과 로컬 파일 읽기 도구 왕복입니다. 위의 경고는 여전히 관련이 있습니다. 긴 컨텍스트 동작, 모든 도구 및 모든 향후 CLI 릴리스는 다루지 않습니다.