DeepSeek-V3.1은 적절한 제공자/양자화 및 도구를 사용하면 로컬에서 실행할 수 있는 하이브리드 "사고/비사고" MoE 언어 모델(총 671억 개, 토큰당 약 37억 개 활성화)입니다. 아래에서는 DeepSeek-V3.1의 개요, 하드웨어/소프트웨어 요구 사항, 단계별 로컬 실행 튜토리얼(Ollama + llama.cpp 예제) 및 실행 방법을 설명합니다. Thinking Mode를 배포하고 사용하세요 ( <think>/</think> 코드 예제가 포함된 채팅 템플릿을 복사/붙여넣기할 수 있습니다.
DeepSeek-V3.1이란 무엇인가요?
DeepSeek-V3.1은 DeepSeek의 MoE(Mixture-of-Experts) 제품군의 v3.1 릴리스입니다. 두 가지 대화 템플릿/모드를 지원하는 하이브리드 추론 모델로 설계되었습니다. diver 및 생각하지 않음 — 채팅 템플릿을 변경하여 동일한 체크포인트에서 개선했습니다. 모델 아키텍처는 DeepSeek-V3 MoE 설계(총 671억 개의 매개변수, 추론을 위해 토큰당 약 37억 개의 매개변수 활성화)를 기반으로 하며, 도구 사용, 에이전트 기술 및 긴 컨텍스트 처리를 위한 학습 후 개선 사항을 추가합니다.
빠른 기능 하이라이트
- 잡종 생각하다 / 생각 안하다 모드(채팅 템플릿 토큰화에 의해 전환됨).
- MoE 아키텍처: 총 매개변수 수는 많지만 토큰당 활성화된 매개변수는 제한적입니다(효율성이 가능함).
- 도구 호출 및 에이전트 워크플로(모델 자산에 문서화된 도구 호출 형식 및 에이전트 템플릿)에 대한 사후 교육 향상
DeepSeek-V3.1을 로컬에서 실행하려면 무엇이 필요합니까?
러닝 가득 찬 DeepSeek-V3.1(원시 체크포인트)은 매우 무겁습니다. 학습/체크포인트 저장 및 추론 오케스트레이션이 쉽지 않습니다. 하지만 실용적인 방법은 있습니다.
하드웨어
- 전체 분산 추론(연구/클러스터): 여러 개의 고용량 메모리 GPU(A100/H800 클래스) 또는 모델 병렬 처리 기능을 갖춘 GPU 클러스터(일반적으로 600B 이상 체크포인트). 프로덕션 연구 클러스터를 운영하는 경우에만 사용하세요.
- 실용적인 현지 옵션: 사용 활성화된 매개변수 원근법(약 37B 활성화) 또는 양자화된 GGUF/1비트 동적 빌드. 커뮤니티 양자화(1비트 동적/GGUF)는 디스크+RAM 요구 사항을 크게 줄입니다. 예를 들어, 커뮤니티 게시물에 따르면 양자화된 변형의 경우 720GB 체크포인트를 약 170GB GGUF로 압축한다고 합니다. 이를 통해 리소스가 충분한 데스크톱/서버에서 로컬 단일 서버 GPU 추론이 가능해집니다.
하단 라인 : 대용량 모델 워크플로(양자화된 아티팩트의 경우 수십에서 수백 GB 디스크)를 예상합니다. GPU VRAM의 경우 양자화된 변형을 사용하고 적절한 처리량을 위해 ≥24–48GB VRAM을 목표로 합니다. 그렇지 않은 경우 성능 저하가 있는 CPU+스왑을 사용합니다.
소프트웨어 및 툴링
Python 3.10+(변환기/토큰화 도구 및 사용자 정의 스크립트용).
transformers (토큰화기 및 도우미 기능용) - 모델 카드는 다음을 사용하는 예를 보여줍니다. transformers.AutoTokenizer.
하나 이상의 로컬 추론 런타임:
- 올라마 (쉬운:
ollama pull/ollama run통합; Ollama 기반의 일부 DeepSeek 빌드에는 사전 출시 버전이 필요합니다. 모델/ollama 참고 사항을 확인하세요.) Ollama는 커뮤니티 모델을 위한 표준 로컬 러너가 되었습니다. - llama.cpp / ggml 스택 또는
llama-serverGGUF 양자화 파일용 — GGUF를 직접 실행하는 데 적합합니다. - 텍스트 생성 추론 / Triton / FlashAttention 스택 더 높은 성능의 GPU 추론을 위해(고급 설정).
디스크: 모델 파일을 위한 대용량 여유 공간(양자화에 따라 수십 → 수백 GB).
모델 아티팩트(어떤 파일을 가져올 것인가)
- 공식 세이프텐서 / BF16 / FP8 / GGUF 변형: Hugging Face는 V3.1 모델 아티팩트와 여러 양자화를 호스팅합니다. GGUF/양자화 파일이 필요한 경우
llama.cpp커뮤니티 양자화 릴리스(또는 safetensors → GGUF에서 변환 스크립트)를 찾으세요. 모델 카드에 양자화된 변형이 나열되어 있습니다.
지역 추론을 위해 모델을 어떻게 준비합니까?
아래는 간단한 것부터 고급까지의 권장 준비 단계를 정리한 것입니다.
1단계 - 런타임 선택(권장 사항)
- 초보자 / 빠른 테스트: Ollama — 최소 설정: 다운로드, 모델 실행, API 호출. 참고: 일부 DeepSeek-V3.1 빌드는 특정 기능을 위해 Ollama v0.11.7이 필요하다는 점을 명시하고 있습니다.
- 고급/저수준 제어:
llama.cpp+ GGUF 양적(GGUF 양자화가 사용 가능한 경우). 이를 통해 직접 추론 제어 및 통합이 가능합니다.llama-server.
2단계 - 모델 다운로드
Ollama를 사용하는 경우:
# install ollama (see https://ollama.com/docs)
# Pull the model (this downloads the model to your machine)
ollama pull deepseek-ai/DeepSeek-V3.1
# or a specific tag: ollama pull deepseek-ai/DeepSeek-V3.1:quant-q4_0
(올라마의 run 존재하지 않으면 자동으로 끌어옵니다. pull (시간을 조절할 수 있습니다.)
Hugging Face + llama.cpp를 사용하는 경우:
# Example: download via huggingface-cli or hf_transfer
pip install huggingface_hub
hf_hub_download(repo_id="deepseek-ai/DeepSeek-V3.1", filename="DeepSeek-V3.1.gguf")
# or use a community quant file (gguf) referenced on the Hugging Face model page
Hugging Face는 모델 카드에 모델 아티팩트, 템플릿, 양자화를 나열합니다.
3단계 - 변환/양자화(선택 사항)
세이프텐서나 BF16 아티팩트만 찾았지만 GGUF가 필요한 경우 llama.cpp, 변환 스크립트를 사용하세요 llama.cpp (또는 커뮤니티 도구)를 사용하여 변환 → 양자화할 수 있습니다. 1비트 동적 양자화를 위한 커뮤니티 도구가 있는데, 정확도를 유지하면서 크기를 줄입니다. 최대 170GB까지 줄일 수 있다는 커뮤니티 게시물을 참조하세요.
DeepSeek-V3.1을 로컬에서 실제로 어떻게 실행하나요? (실습 튜토리얼)
내가 보여 줄게요 올라마 (쉬움, 추천) 그리고 라마.cpp (GGUF) 예제와 모델 카드 토크나이저 도우미를 사용한 짧은 Python 예제입니다.
A — Ollama와 함께 달리기(빠른 시작)
- Ollama를 설치하세요(공식 지침을 따르세요).
- 모델을 끌어와서 실행합니다.
# pull model to disk (optional; run will pull automatically)
ollama pull deepseek-ai/DeepSeek-V3.1
# start an interactive session (runs model and exposes local API)
ollama run deepseek-ai/DeepSeek-V3.1
- 로컬 Ollama 서버에 HTTP 요청을 만듭니다.
# curl usage example (local Ollama server usually listens on port 11434)
curl -sS -X POST 'http://localhost:11434/api/generate' \
-H 'Content-Type: application/json' \
-d '{
"model":"deepseek-ai/DeepSeek-V3.1",
"prompt":"Explain the difference between thinking and non-thinking mode in DeepSeek.",
"max_tokens":256
}'
Ollama의 CLI 및 API 패턴은 간단하게 설계되었습니다. ollama run 필요한 경우 모델 서버를 가져와서 실행합니다. 메모리 힌트와 정확한 모델 이름/태그는 Ollama 문서와 모델 페이지를 참조하세요.
B — llama.cpp를 통해 양자화된 GGUF 실행
- 구축
llama.cppCUDA(선택 사항) 또는 CPU 사용:
git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp
# for CUDA:
make clean && make LLAMA_CUBLAS=1
# or CPU only:
make
- 모델 GGUF 파일을 경로에 넣고 다음을 실행합니다.
./main -m /path/to/DeepSeek-V3.1.q4_K_M.gguf \
-p "Explain how to enable thinking mode." \
--temp 0.2 --n_predict 512
- 서버 사용을 위해
llama-server(커뮤니티 프로젝트)는 HTTP 엔드포인트를 노출할 수 있습니다.
llama-server -m /path/to/DeepSeek-V3.1.q4_K_M.gguf
# then POST to the server like:
curl -X POST "http://localhost:8080/api/v1/generate" -d '{"prompt":"Hello","max_tokens":200}'
GPU/CPU 예산에 맞게 커뮤니티 GGUF 양자화(q4/q8/1비트 동적)를 사용합니다. llama.cpp repo는 변환 도구와 지침을 제공합니다.
C — 토크나이저 + 채팅 템플릿을 사용한 Python 예제
Hugging Face 모델 카드는 다음을 제공합니다. tokenizer.apply_chat_template 도우미이며 대화를 인코딩하는 방법을 보여줍니다. thinking=True. 다음은 모델 카드에서 가져온 간단한 Python 예제입니다.
from transformers import AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained("deepseek-ai/DeepSeek-V3.1")
messages = [
{"role": "system", "content": "You are a helpful assistant"},
{"role": "user", "content": "Who are you?"},
{"role": "assistant", "content": "<think>Hmm</think>I am DeepSeek"},
{"role": "user", "content": "1+1=?"}
]
# apply thinking chat template
s = tokenizer.apply_chat_template(messages, tokenize=False, thinking=True, add_generation_prompt=True)
print(s) # the template includes the special <think> token placement
그런 다음 스택에 따라 토큰화된 프롬프트를 추론 런타임(Ollama/llama.cpp/TGI)에 입력할 수 있습니다.
사고모드는 어떻게 작동하며, 로컬에 어떻게 배포하나요?
DeepSeek-V3.1 사용 채팅 템플릿 특별한 사고 토큰을 포함하는 (예: <think> 및 </think>). 이 템플릿 모델이 사고 모드인지 비사고 모드인지 판별합니다.
- 생각하지 않음 템플릿 위치
</think>모델에 직접적인 응답을 생성하도록 지시하는 보조 접두사입니다(비사고에서는 도구 호출 형식이 지원됩니다). - diver 템플릿 위치
<think>모델이 내부적으로 사고의 사슬 형태의 중간 신호를 출력하도록 하는 보조 접두사에서(모델은 해당 토큰 시퀀스를 사용하여 내부적으로 추론하고 더 높은 품질의 다단계 답변을 생성하도록 훈련됨). Hugging Face 모델 카드는 이러한 정확한 토큰과tokenizer.apply_chat_template(..., thinking=True)API.
프로그래밍 방식 토글(예시)
A — 토크나이저(Python)를 사용하면:
# thinking=True or thinking=False changes how the prompt is formatted
prompt_thinking = tokenizer.apply_chat_template(messages, thinking=True, add_generation_prompt=True)
prompt_non_thinking = tokenizer.apply_chat_template(messages, thinking=False, add_generation_prompt=True)
먹이 prompt_thinking 추론 런타임에 사고 행동을 적용하세요.
B — 원시 프롬프트(llama.cpp / manual):
끼워 넣다 <think> 조수가 방향을 바꾸기 전에 당신의 지시를 따르세요:
<|begin_of_sentence|>You are a helpful assistant<|User|>How to optimize this code?<|Assistant|><think>
(정확한 토큰 프레이밍은 모델 카드에 있습니다. 원시 템플릿을 사용하는 경우 간격과 특수 마커를 준수해야 합니다.)
C — Ollama 사용(UI 토글):
DeepSeek 공식 웹 데모와 릴리스 노트에는 호스팅된 UI에서 모드를 전환하는 "DeepThink" 토글/버튼이 언급되어 있습니다. 로컬 환경에서는 Ollama 또는 앱이 채팅 템플릿을 전환하여(즉, 두 토큰화된 폼 사이에서 런타임에 전송하는 프롬프트를 변경하여) 해당 동작을 구현해야 합니다. Ollama를 통해 DeepSeek을 실행하는 경우, 두 가지 프롬프트 템플릿(생각하는 프롬프트와 생각하지 않는 프롬프트)을 유지하고 Ollama API를 통해 해당 템플릿을 토글하여 애플리케이션에서 이를 구현할 수 있습니다.
사고 모드를 에이전트(도구 호출, 코드 에이전트)로 배포하려면 어떻게 해야 하나요?
DeepSeek-V3.1 문서 툴콜 및 대리인 모델 자산의 템플릿. 모델은 도구가 특정 JSON/명령 형식으로 표현되기를 기대하며, 모델 카드에 설명된 정확한 래퍼 토큰을 따르는 경우 단일 턴에서 여러 도구 호출을 체인 방식으로 연결할 수 있습니다.
예: 간단한 도구 호출 래퍼(가상)
모델은 도구 설명자 블록과 엄격한 tool_calls_begin / tool_call_begin 형식. 최소한의 예(개념적):
## Tools
You have access to the following tools:
### web_search
Description: Query the web
Parameters: {"q": "string"}
<|begin_of_sentence|>{system prompt}
## Tools
...tool descriptions...
<|User|>Find the population of Tokyo<|Assistant|></think>
<|tool_calls_begin|><|tool_call_begin|>web_search<|tool_sep|>{"q":"population of Tokyo 2025"}<|tool_call_end|><|tool_calls_end|>
그런 다음 도구 출력은 모델의 규정된 형식(참조)에 따라 다음 턴에서 모델로 다시 피드백되어야 합니다. assets/search_tool_trajectory.html (정확한 흐름은 모델 페이지에서 확인하세요.) 에이전트를 구현하려면 프로그래밍 방식의 오케스트레이션이 필요합니다. 도구 호출 → 결과 캡처 → 템플릿에서 규정한 대로 결과를 채팅 컨텍스트에 다시 삽입 → 모델을 다시 호출합니다.
실용적인 팁, 문제 해결 및 안전 참고 사항(무엇을 주의해야 하나요?)
- 토큰 템플릿은 엄격합니다. 모델을 사용하세요
tokenizer.apply_chat_template또는 정확한 것을 재현합니다<think>/</think>표시된 대로 토큰입니다. 간격이 잘못되었거나 마커가 누락되면 모델 동작이 변경됩니다. - 도구 형식은 유효한 JSON이어야 합니다. 이 모델은 도구 인수를 JSON으로 구문 분석합니다. 유효하지 않은 JSON은 도구 호출을 중단시킵니다.
- 양자화 트레이드오프. 1비트 동적/공격적 양자화는 저장 공간과 RAM을 줄이지만 수치적 충실도가 약간 떨어질 수 있습니다. 작업 부하를 테스트해 보세요. 디스크 사용량을 80% 줄이는 커뮤니티 양자화(예시 보고서: 720GB → ~170GB)가 있지만, 항상 프롬프트를 통해 검증하세요.
- 올라마 호환성. 일부 DeepSeek 변형 버전은 출시 전 기능에 Ollama v0.11.7이 필요하다고 명시되어 있습니다. Ollama 모델 페이지를 확인하고 그에 따라 업데이트하세요.
엔드투엔드 예시: Thinking Mode를 사용하여 DeepSeek-V3.1을 로컬로 실행(간단한 연습)
- Ollama를 설치하고 모델을 가져옵니다.
# install ollama per docs, then:
ollama pull deepseek-ai/DeepSeek-V3.1
ollama run deepseek-ai/DeepSeek-V3.1 &
- Python 토크나이저를 사용하여 사고의 촉구를 작성하세요.
from transformers import AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained("deepseek-ai/DeepSeek-V3.1")
msgs = [
{"role":"system","content":"You are a helpful assistant."},
{"role":"user","content":"Plan a multi-step strategy to prototype a mobile app in 2 weeks."}
]
prompt = tokenizer.apply_chat_template(msgs, thinking=True, add_generation_prompt=True)
import requests
resp = requests.post("http://localhost:11434/api/generate", json={
"model": "deepseek-ai/DeepSeek-V3.1",
"prompt": prompt,
"max_tokens": 400
})
print(resp.json())
- 모델이 toolcall 형식으로 도구 호출을 반환하는 경우 JSON을 구문 분석하고 도구를 실행한 다음 모델 카드 템플릿에 따라 결과를 다음 메시지에 삽입합니다.
배포 경로를 어떻게 선택해야 할까요?
- 가장 빠른 실험 경로를 원하신다면: 사용 올라마 그리고 Hugging Face 모델 카드의 예시입니다. Ollama는 많은 인프라 세부 정보를 숨기고 로컬 HTTP API를 제공합니다.
- 더 낮은 비용/더 높은 휴대성이 필요한 경우: 커뮤니티를 이용하다 GGUF 양자화 유물과 함께 실행
llama.cpporllama-server양자화는 디스크와 메모리를 절약하지만 작업 부하에 대한 테스트 정확도는 떨어집니다. - 에이전트나 도구를 빌드하는 경우: 모델 카드를 따르세요 툴콜 및 대리인 템플릿을 정확히 사용합니다. 도구 출력을 모델 컨텍스트로 다시 조정합니다.
시작 가이드
CometAPI는 OpenAI의 GPT 시리즈, Google의 Gemini, Anthropic의 Claude, Midjourney, Suno 등 주요 공급업체의 500개 이상의 AI 모델을 단일 개발자 친화적인 인터페이스로 통합하는 통합 API 플랫폼입니다. CometAPI는 일관된 인증, 요청 형식 지정 및 응답 처리를 제공하여 애플리케이션에 AI 기능을 통합하는 과정을 획기적으로 간소화합니다. 챗봇, 이미지 생성기, 음악 작곡가 또는 데이터 기반 분석 파이프라인 등 어떤 제품을 구축하든 CometAPI를 사용하면 AI 생태계 전반의 최신 혁신 기술을 활용하면서 반복 작업을 더 빠르게 수행하고 비용을 관리하며 공급업체에 구애받지 않을 수 있습니다.
개발자는 액세스할 수 있습니다 딥시크 V3.1 CometAPI를 통해 나열된 최신 모델 버전은 기사 발행일을 기준으로 합니다. 시작하려면 다음에서 모델의 기능을 살펴보세요. 운동장 그리고 상담하십시오 API 가이드 자세한 내용은 CometAPI를 참조하세요. 접속하기 전에 CometAPI에 로그인하고 API 키를 발급받았는지 확인하세요. 코멧API 공식 가격보다 훨씬 낮은 가격을 제공하여 통합을 돕습니다.
결론
DeepSeek-V3.1은 실용적인 하이브리드 추론 철학(단일 체크포인트 + 템플릿 기반 사고 행동)을 도입하여 채팅 템플릿 및 툴링 요구 사항을 준수하는 경우, 사고 연쇄 방식 추론 및 에이전트 도구 사용을 간편하게 실험할 수 있도록 합니다. 먼저 Hugging Face 모델 카드와 DeepSeek 릴리스 노트를 참고하고, 로컬 런타임(단순화를 위해 Ollama)을 선택합니다. llama.cpp 제어를 위해) 그리고 실제 지역 배포를 위해 양자화된 빌드를 테스트합니다.



