DeepSeek V4 - OpenAI 호환 인터페이스
- OpenAI Chat Completions 프로토콜로 DeepSeek V4 모델 호출
deepseek-v4-flash(빠른 범용)와deepseek-v4-pro(심층 추론) 두 모델 지원- 순수 텍스트 대화: 단일 또는 다중 턴 컨텍스트 대화, 1M 초장문 컨텍스트 지원
- 시스템 프롬프트: AI의 역할 및 동작 사용자 정의
- 사고 모드:
thinking.type으로 심층 추론 제어;deepseek-v4-pro의 사고 내용은reasoning_content로 반환 - 스트리밍 출력: SSE 스트림 반환 지원
- 도구 호출: Function Calling 지원 (최대 128개 도구)
- JSON 모드:
response_format으로 활성화 - 컨텍스트 캐시: 동일한 접두사 요청은 자동으로 캐시 히트하여 입력 비용을 대폭 절감
인증
##모든 인터페이스는 Bearer Token 인증이 필요합니다## **API Key 받기**: [API Key 관리 페이지](https://starmagic.ai/app/api-keys)를 방문하여 API Key를 받으세요 **사용 시 요청 헤더에 추가**: ``` Authorization: Bearer YOUR_API_KEY ```
Authorization: Bearer YOUR_API_KEY요청 본문
application/json채팅 모델 이름 - `deepseek-v4-flash`: 빠른 범용 모델, 1M 컨텍스트 - `deepseek-v4-pro`: 심층 추론 모델, 수학·프로그래밍 및 복잡한 논리에 능숙 **팁**: 두 모델 **모두 기본적으로 `thinking`이 활성화**되어 있어 응답에 `reasoning_content`가 포함됩니다. 출력 token 비용을 낮추려면 `thinking.type="disabled"`로 끌 수 있습니다. 두 모델의 매개변수는 완전히 동일합니다.
"deepseek-v4-flash"대화 메시지 목록, 다중 턴 대화 지원 역할마다 메시지 필드 구조가 다르므로 해당 역할을 선택하여 확인하세요
[
null
]사고 모드 제어 (V4 신규) **설명**: - 심층 사고(Chain of Thought) 기능 제어에 사용 - **두 모델 모두 기본 활성화** (`type=enabled`) - 활성화되면 추론 과정이 `choices[].message.reasoning_content`로 반환되며 출력 token으로 과금됩니다 ⚠️ **다중 턴 대화/도구 호출 주의사항**: 이번 턴의 응답에 `reasoning_content`가 포함된 경우, **다음 요청의 `messages` 히스토리 내 해당 assistant 메시지에 이 필드를 그대로 돌려보내야 합니다**. 그렇지 않으면 API가 400 `The reasoning_content in the thinking mode must be passed back to the API`를 반환합니다. 처리하고 싶지 않다면 세션 전체에 `thinking.type="disabled"`를 명시적으로 설정할 수 있습니다.
{
"type": "enabled",
"reasoning_effort": "medium"
}샘플링 온도, 출력의 무작위성을 제어합니다 **설명**: - 낮은 값(예: 0.2): 더 결정적이고 집중된 출력 - 높은 값(예: 1.5): 더 무작위적이고 창의적인 출력 - 기본값: 1
1Nucleus Sampling (핵 샘플링) 매개변수 **설명**: - 누적 확률 상위 몇 %의 token에서 샘플링할지 제어합니다 - 예를 들어 0.9는 누적 확률 90%까지의 token 중에서 선택합니다 - 기본값: 1.0 (모든 token 고려) **권장**: temperature와 top_p를 동시에 조정하지 마세요
1생성 콘텐츠의 최대 token 수 제한 **설명**: - V4 시리즈는 최대 **384,000 tokens**까지 가능 - thinking 활성화 시 reasoning_tokens도 max_tokens 상한에 포함됩니다 - 설정하지 않으면 모델이 생성 길이를 스스로 결정합니다
4096빈도 페널티 매개변수, 반복 내용을 줄이는 데 사용 **설명**: - 양수 값은 이미 생성된 텍스트에서의 token 빈도에 따라 페널티를 부여합니다 - 값이 클수록 이미 등장한 내용이 반복될 가능성이 낮아집니다 - 기본값: 0 (페널티 없음)
0존재 페널티 매개변수, 새로운 주제 생성을 장려하는 데 사용 **설명**: - 양수 값은 token이 이미 텍스트에 등장했는지 여부에 따라 페널티를 부여합니다 - 값이 클수록 새로운 주제를 논의하는 경향이 강해집니다 - 기본값: 0 (페널티 없음)
0응답 형식 지정 **설명**: - `{"type": "json_object"}`로 설정하면 JSON 모드가 활성화됩니다 - JSON 모드에서는 모델이 유효한 JSON 형식의 콘텐츠를 출력합니다 - 최상의 결과를 얻으려면 system 또는 user 메시지에서 JSON 형식 출력을 명시적으로 요청하는 것이 좋습니다
{
"type": "text"
}중지 시퀀스, 모델이 이 문자열을 만나면 생성을 중단합니다 **설명**: - 단일 문자열 또는 문자열 배열일 수 있습니다 - 최대 16개의 중지 시퀀스 지원
응답을 스트리밍 방식으로 반환할지 여부 - `true`: 스트리밍 반환, SSE(Server-Sent Events)를 통해 청크 단위로 실시간 반환 - `false`: 완전한 응답을 기다린 후 한 번에 반환 (기본값)
false스트리밍 응답 옵션 `stream=true`일 때만 유효합니다
{
"include_usage": true
}도구 정의 목록, Function Calling에 사용 **설명**: - 최대 128개의 도구 정의 지원 - 각 도구는 이름, 설명, 매개변수 schema를 정의해야 합니다
[
{
"type": "function",
"function": {
"name": "string",
"description": "string",
"parameters": {},
"strict": false
}
}
]도구 호출 동작 제어 **가능한 값**: - `none`: 어떤 도구도 호출하지 않음 - `auto`: 모델이 도구 호출 여부를 자동 결정 (tools 제공 시 기본값) - `required`: 모델이 하나 이상의 도구를 반드시 호출하도록 강제 - 객체 형식 `{"type":"function","function":{"name":"xxx"}}`: 특정 도구를 지정하여 호출 **기본값**: tools 미제공 시 `none`, tools 제공 시 `auto`
token의 로그 확률을 반환할지 여부 **설명**: - `true`로 설정하면 응답에 각 token의 로그 확률 정보가 포함됩니다
false확률 상위 N개 token의 로그 확률 반환 **설명**: - `logprobs`가 `true`로 설정되어야 합니다 - 값 범위: `[0, 20]`
0Token 바이어스 매핑 **설명**: - 키는 tokenizer의 token ID이고, 값은 -100에서 100 사이의 바이어스 값입니다 - -100은 해당 token을 완전히 금지, 100은 강제 생성을 의미합니다 - 일반적인 -1에서 1 범위의 값도 관찰 가능한 영향을 미칩니다
{}각 입력 메시지에 대해 생성할 채팅 완성 옵션 수 **설명**: - 기본값 1; N으로 설정 시 N개의 후보를 반환 (N × output_tokens로 과금)
1랜덤 시드 (Beta) **설명**: - 지정하면 모델이 결정적 샘플링을 시도합니다 - 동일한 seed + 동일한 기타 매개변수 → 동일한 출력 (100% 보장은 아님)
0최종 사용자를 나타내는 고유 식별자 **설명**: - 플랫폼이 남용 행위를 모니터링하고 감지하는 데 도움이 됩니다 - 해시된 사용자 ID 사용을 권장합니다
"string"응답
application/json응답 본문
채팅 완성의 고유 식별자
"53c548dc-ec02-4a2f-bbb6-eca4184630b8"실제 사용된 모델 이름
"deepseek-v4-flash"응답 유형
"chat.completion"생성 타임스탬프 (Unix 초)
1777021417채팅 생성의 선택 목록
[
{
"index": 0,
"message": {
"role": "assistant",
"content": "안녕하세요! 저는 DeepSeek V4입니다. 일반 대화, 코드 생성, 수학적 추론 등 다양한 작업에 능숙합니다.",
"reasoning_content": "이 문제를 분석해 보겠습니다...",
"tool_calls": [
{
"id": null,
"type": null,
"function": null
}
]
},
"logprobs": null,
"finish_reason": "stop"
}
]Token 사용 통계 정보 (캐시 및 추론 세부 항목 포함)
{
"prompt_tokens": 694,
"completion_tokens": 20,
"total_tokens": 714,
"prompt_cache_hit_tokens": 640,
"prompt_cache_miss_tokens": 54,
"prompt_tokens_details": {
"cached_tokens": 640
},
"completion_tokens_details": {
"reasoning_tokens": 10
}
}시스템 지문 식별자
"fp_evolink_v4_20260402"
