
EvoLink에서 DeepSeek V4 Pro API 사용법: 첫 호출부터 Claude Code 연동까지
POST https://direct.evolink.ai/v1/messages에 Anthropic Messages 형식으로 model: "deepseek-v4-pro"를 담아 보내고, content에서 응답을 읽으면 됩니다. 같은 엔드포인트로 Claude Code를 DeepSeek V4 Pro에 연결할 수도 있습니다 — 환경 변수 2개만 바꾸면 되고, 코드 수정은 없습니다.deepseek-v4-pro이며, 2026년 8월 13일(공식 체인지로그 날짜)부터 이 동일한 ID가 업그레이드된 0813 빌드(에이전트 중심 GA 릴리스)를 서빙합니다. 새 빌드를 쓰기 위해 ID를 바꿀 필요가 없습니다. 구 별칭 deepseek-chat과 deepseek-reasoner는 2026년 7월 24일 업스트림에서 폐기되었습니다 — 코드가 아직 이 별칭을 쓰고 있다면, 이 가이드가 바로 마이그레이션 경로입니다.이 가이드에서 완성할 것
- Anthropic Messages 형식의 첫 V4 Pro 요청 성공;
- EvoLink를 통해 V4 Pro로 실행되는 Claude Code 설정;
- 올바른 thinking 모드 제어(그리고
budget_tokens가 조용히 무시되는 이유); - Claude 마이그레이션을 망가뜨리는 파라미터 매핑 3가지 대응;
- 프로덕션을 위한 429/동시성 전략과 폴백 라우팅.
사전 준비
- EvoLink 계정과 대시보드에서 발급한 API 키.
- 아무 HTTP 클라이언트나 가능합니다. 아래 예제는 요청 구조가 명확히 보이도록 cURL과 순수 Python(
requests)을 사용합니다. - 전체 파라미터 계약은 DeepSeek V4 Messages API 문서에 있습니다. 이 가이드는 레퍼런스를 반복하는 대신 흐름과 함정에 집중합니다.
1단계 — 첫 V4 Pro 요청
curl https://direct.evolink.ai/v1/messages \
-H "Authorization: Bearer $EVOLINK_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-v4-pro",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "Refactor this function to be iterative: def f(n): return n*f(n-1) if n else 1"}
]
}'content 배열이 반환됩니다. thinking이 켜져 있으면(기본값) 모델의 추론이 type: "thinking" content 블록으로 먼저 도착하고 답변 블록이 뒤따릅니다 — 마지막 텍스트 블록을 읽고, thinking 토큰을 출력 비용 예산에 반영하세요(4단계에서 자세히 다룹니다).같은 호출을 의존성 부담 없이 Python으로 작성하면:
import requests, os
resp = requests.post(
"https://direct.evolink.ai/v1/messages",
headers={"Authorization": f"Bearer {os.environ['EVOLINK_API_KEY']}"},
json={
"model": "deepseek-v4-pro",
"max_tokens": 1024,
"messages": [{"role": "user", "content": "Summarize the tradeoffs of MoE routing in two sentences."}],
},
timeout=120,
)
resp.raise_for_status()
blocks = resp.json()["content"]
print(next(b["text"] for b in blocks if b["type"] == "text"))max_tokens는 최대 384,000까지 허용됩니다 — V4 Pro의 이례적으로 큰 출력 상한입니다 — 컨텍스트 윈도우는 1M 토큰입니다.2단계 — Claude Code를 DeepSeek V4 Pro로 전환
EvoLink가 V4 Pro를 Anthropic 호환 Messages 엔드포인트로 제공하기 때문에, Claude Code는 엔드포인트 환경 변수만 덮어쓰면 V4 Pro에서 실행됩니다:
export ANTHROPIC_BASE_URL="https://direct.evolink.ai"
export ANTHROPIC_AUTH_TOKEN="your-evolink-api-key"
export ANTHROPIC_MODEL="deepseek-v4-pro"
claude전환은 이게 전부입니다: 에이전트 워크플로, 도구, 프롬프트는 그대로 유지됩니다. 커뮤니티 리포트는 V4 Pro가 길고 다단계인 코딩 작업에서 가장 강하다고 일관되게 평가합니다 — 0813 빌드는 터미널 에이전트 벤치마크 점수를 거의 두 배로 올렸습니다 — 그래서 Claude Code 같은 에이전트 하니스야말로 클로즈드 모델 대비 가격 차이가 진가를 발휘하는 지점입니다.
이 설정에서 실무적으로 알아둘 두 가지:
- 도구 호출은 표준 Anthropic
tool_use/tool_result플로를 따르므로, Claude Code의 파일 편집과 셸 도구가 정상 작동합니다. - V4 Pro는 비전 입력이 없습니다. 스크린샷이나 이미지를 첨부하는 Claude Code 기능은 이 경로에서 작동하지 않습니다. 해당 작업에는 비전 지원 모델을 별도로 구성해 두세요.
3단계 — 마이그레이션 함정 3가지
Anthropic 네이티브 API와 조용히 다르게 동작하는 매핑들입니다. 세 가지 모두 현재 EvoLink 계약 기준이며, 2026년 8월 13일에 검증했습니다.

budget_tokens는 무시됩니다. Anthropic 네이티브의 thinking 예산 필드는 여기서 아무 효과가 없습니다. thinking은 다른 두 필드로 제어합니다:{
"thinking": {"type": "enabled"},
"output_config": {"effort": "high"}
}effort가 받는 값은 low, high, max이며, **기본값은 high**입니다 — medium과 xhigh는 전달할 수는 있지만 DeepSeek 공식 매핑 표에 따라 조용히 high로 매핑됩니다. budget_tokens를 설정한 코드를 마이그레이션했거나 기본값이 medium이라고 생각했는데 동작도 청구 금액도 전혀 바뀌지 않아 의아했다면 — 바로 이것이 원인입니다.role: "system"은 거부됩니다. 시스템 프롬프트는 system 역할의 메시지가 아니라 최상위 system 필드를 사용해야 합니다:{
"model": "deepseek-v4-pro",
"system": "You are a terse senior reviewer.",
"messages": [{"role": "user", "content": "Review this diff..."}]
}top_k, container, mcp_servers, metadata는 이 경로에서 지원되지 않으며, 이미지/문서 content 타입은 거부됩니다. 프로덕션에서 요청이 실패하게 두지 말고 마이그레이션 단계에서 미리 제거하세요.4단계 — thinking effort와 청구서에 미치는 영향
DeepSeek은 thinking 토큰을 출력 토큰으로 과금하며, V4 Pro는 생각이 많은 모델입니다: 커뮤니티 측정에서 같은 작업에 클로즈드 모델 대비 몇 배 더 많은 추론 토큰을 소비하는 것으로 나타났습니다. 실무 가이드:
- 기본값은
effort: "high"로, 일상 작업에는 무거운 설정입니다. 대량 처리 단계에는 명시적으로low를 지정하고, "실패한 시도의 비용이 추가 토큰보다 큰" 작업에만high를 유지하세요.max는 에스컬레이션용 단계입니다. - 캐시 히트 입력이 캐시 미스 대비 약 1/120 요율로 과금되는 것은 2026년 8월 16일 16:00 UTC까지입니다. 이후에는 DeepSeek이 이미 공표한 새 요금이 적용됩니다(피크/오프피크 이중 요금제, Pro의 캐시 비율은 약 1/30로 변경). 시스템 프롬프트가 안정적인 장시간 에이전트 세션은 여전히 이득을 봅니다. 실시간 토큰 단가는 이 글을 포함해 어떤 블로그의 숫자도 믿지 말고 EvoLink의 DeepSeek 모델 가격에서 확인하세요.
- 대량·저난도 단계(분류, 요약)는
deepseek-v4-flash로 라우팅하고, Pro는 어려운 단계에 남겨 두세요.
5단계 — 동시성, 429, 폴백
429를 반환합니다. 추론 시작 전 대기열에서 10분을 넘긴 요청은 끊어집니다. 프로덕션에서는:429를 백프레셔 신호로 다루세요: 지터를 포함한 지수 백오프를 쓰고, 인플라이트 요청 수를 실측 상한 아래로 유지하세요.higheffort 작업에는 클라이언트 타임아웃을 넉넉히 잡으세요 — 첫 토큰 전에 생각하는 시간이 먼저 옵니다.- 폴백을 구성하세요: EvoLink 경로는 여러 모델에 동일한 Messages 형식을 쓰기 때문에,
deepseek-v4-pro에서 다른 가용 모델로의 라우터 수준 폴백은 재작성이 아니라 설정 변경 한 번입니다. 커뮤니티 스레드에 넘쳐나는 패턴이 바로 이것입니다 — 대량 단계는 Flash, 어려운 단계는 Pro, 최종 폴백은 클로즈드 모델.
FAQ
deepseek-v4-pro입니다. 2026년 8월 13일부터 같은 ID가 0813 GA 빌드를 서빙합니다 — ID는 그대로, 모델만 업그레이드되었습니다./v1/messages 경로입니다. OpenAI 스타일 클라이언트를 연결하기 전에 API 문서에서 최신 상태를 확인하세요.thinking.type(enabled/disabled)과 output_config.effort(low/high/max, 기본값 high; medium은 전달되지만 high로 매핑됨)로 제어합니다. Anthropic의 budget_tokens는 이 경로에서 무시됩니다.다음 단계
- EvoLink의 DeepSeek 모델 — 실시간 가격과 모델 접근.
- DeepSeek V4 Pro 0813: 무엇이 바뀌었나 — GA 빌드의 에이전트 및 Codex 변경 사항.
- Pro vs Flash 선택 가이드 — 어떤 티어가 어떤 워크로드에 맞는지.


