DeepSeek V3가 AI 세계를 강타하고 있는 이유: 개발자의 관점
오늘날 우리가 사용하는 모든 대규모 언어 모델(LLMs)의 최종 목표 중 하나는 인간이 할 수 있는 모든 지적 과제를 이해하고 수행할 수 있는 능력을 갖추는 것입니다. 이 개념은 일반적으로 범용 인공지능(AGI)이라고 불립니다. AGI를 향한 경쟁은 OpenAI, Meta, Google, Anthropic, Qwen과 같은 세계 선도 AI 개발사들의 여러 LLM에서 빠른 발전을 촉발했습니다.
최근 DeepSeek가 개발한 새로운 LLM들은 성능과 운영 비용의 조합으로 인해 AI 커뮤니티 내에서 엄청난 화제를 불러일으켰습니다. 예를 들어, DeepSeek R1 모델은 훈련 비용의 극히 일부만으로도 현재까지 OpenAI의 가장 진보된 추론 모델인 o1 모델과 유사하게 작동한다고 주장됩니다. 한편, DeepSeek V3 모델의 성능은 GPT-4o와 견줄 만하며 훈련 비용은 극히 일부에 불과합니다. OpenAI와 달리 DeepSeek는 모델을 완전히 오픈소스로 공개하기로 결정하여, 전체 AI 커뮤니티가 DeepSeek의 모델 가중치에 접근할 수 있게 했습니다. 이는 AGI를 향한 과정을 더욱 가속화할 것입니다.
이 글에서는 이 LLM의 성능을 현재 이용 가능한 최신 최첨단 비공개 소스 모델들과 견줄 수 있게 만드는 DeepSeek 모델, 특히 DeepSeek V3의 몇 가지 혁신적인 기능을 논의합니다. 그럼 더 지체하지 말고 첫 번째 핵심 혁신 기능을 살펴보겠습니다.
기능 1: Multi Head Latent Attention
핵심적으로 DeepSeek V3는 여전히 고전적인 Transformers 아키텍처를 채택합니다. 이는 엄청난 수의 Transformer 블록으로 구성되며, 각 블록에는 다음 시각화에서 볼 수 있듯이 정규화, attention, feed-forward 레이어라는 몇 가지 중요한 레이어가 포함되어 있습니다:
단일 Transformer 블록의 시각화.
이 섹션에서는 attention 레이어에만 집중할 것입니다. DeepSeek V3 모델의 Multi-head Latent Attention(MLA)이 바로 여기에 있기 때문입니다.
간단히 말해, attention 레이어는 특정 위치에 있는 토큰의 embedding 표현을 입력으로 기대합니다. attention 레이어의 첫 번째 단계는 세 개의 학습된 가중치 행렬을 사용하여 이 입력 embedding을 query, key, value 벡터로 투영하는 것입니다. 그런 다음 레이어는 이러한 값들을 사용하여 이전 토큰들과 관련해 이 특정 토큰의 문맥을 추정하는데, 이 과정은 일반적으로 attention 메커니즘이라고 불립니다.
그러나 attention 메커니즘이 계산되는 방식에는 상당한 단점이 있습니다. 이미 알고 계실 수도 있듯이, LLM은 시퀀스에서 한 번에 하나의 토큰을 생성하며, 새 토큰은 항상 이전에 생성된 토큰들에 의존합니다. 따라서 새 토큰의 문맥을 추정하려면 이전 토큰들의 attention을 다시 계산해야 합니다. 예를 들어, 50번째 토큰을 생성하려면 매번 1번부터 49번까지 토큰의 attention 재계산이 필요합니다. 이는 추론 중 매우 느린 토큰 생성 과정으로 이어집니다.
vLLM에서의 KV Cache 관리. 출처.
이 문제를 해결하기 위해 일반적으로 LLM에서는 토큰 생성 과정을 가속화하기 위해 KV cache라는 접근 방식이 구현됩니다. 이름에서 알 수 있듯이, KV cache에서는 각 생성 과정 동안 새 토큰의 key와 value가 cache에 저장됩니다. 따라서 새 토큰의 attention 계산 중에는 모든 것을 처음부터 다시 계산하는 대신 이전 토큰들의 캐시된 key와 value를 사용합니다. 이는 토큰 생성 과정을 효과적으로 가속화합니다.
DeepSeek V3 또한 어텐션 레이어에서 KV cache를 활용합니다. 실제로 MLA의 도입으로 이 접근법을 한층 더 발전시켰습니다. 본질적으로 MLA는 중복 요소를 제거하여 입력 임베딩 차원을 저랭크 표현으로 압축합니다. 이러한 압축의 결과로 key, value, query 벡터의 크기가 더욱 작아지며, 이를 통해 KV cache를 위한 메모리를 최적화하고 토큰 생성 과정을 가속화합니다.
단일 Transformer 블록에서의 DeepSeek V3 아키텍처. 출처.
위 그림에서 볼 수 있듯이, 이 접근법은 key와 value를 함께 저랭크 표현으로 공동 압축합니다. 이렇게 압축된 key-value 벡터 버전은 일반적인 KV cache와 유사하게 캐시될 수 있습니다.
한편, query는 독립적으로 압축됩니다. 압축된 후 query 벡터의 저랭크 표현은 두 가지 서로 다른 파이프라인으로 처리됩니다. 하나는 레이어를 통해 직접 투영되어 다시 고차원 표현으로 매핑되고, 다른 하나는 Rotary Positional Embedding (RoPE)이라는 접근법으로 처리됩니다. RoPE 방법은 시퀀스에서 새로운 토큰의 위치 정보를 도입하는 데 중요합니다. 이 두 파이프라인의 출력은 그런 다음 multi-head attention 레이어를 위한 하나의 최종 입력으로 연결됩니다.
공동 압축된 key-value 벡터도 query 벡터와 유사한 과정을 거칩니다. 그러나 key 벡터의 RoPE 입력은 압축된 key-value 벡터가 아니라 원래 입력 임베딩에서 나옵니다.
기능 2: DeepSeek MoE
DeepSeek V3 내에 구현된 또 다른 흥미로운 접근법은 Mixture of Experts (MoE) 접근법입니다. 위 이미지에서 볼 수 있듯이, 이 방법은 DeepSeek V3에서 Transformers 블록의 원래 feed-forward network를 대체하는 방식으로 구현됩니다.
MoE가 무엇을 하는지 쉽게 이해하기 위해 예를 들어보겠습니다. 우리가 여러 교수님이 있는 대학교에서 공부하고 있다고 상상해 보세요. 각 교수님은 서로 다른 과목(수학, 물리학, 문학)의 전문가입니다. 우리가 미적분학에 대해 무언가를 묻고 싶다면, 수학 교수님께 안내될 것입니다. 마찬가지로 양자 물리학에 대해 묻고 싶다면, 물리학 교수님께 안내될 것입니다.
MoE도 비슷한 방식으로 작동합니다. 이는 각각 특정 문제를 해결하는 데 자신만의 전문성을 가진 여러 모델로 구성됩니다.
학습 단계에서 각 모델은 특정 도메인의 서로 다른 데이터를 받으며, 그 결과 해당 도메인의 작업을 해결하는 전문가가 됩니다. 그런 다음 추론 중에는 문제의 모든 도메인을 처리하기 위해 하나의 거대한 모델에 의존하는 대신, MoE가 query를 가장 유능한 expert 모델들에게 할당합니다. 이 접근법은 작업에 따라 예측 중 소수의 expert 모델만 활성화되므로 추론을 더 빠르고 효율적으로 만듭니다.
DeepSeek V3의 MoE. 출처.
MoE 접근법에서 중요한 요소는 gating network입니다. 이 네트워크에는 두 가지 주요 책임이 있습니다. 입력 query를 분석한 다음 가장 적절한 expert 모델로 라우팅하는 것입니다. 그러나 MoE 학습과 관련된 일반적인 문제는 load balancing 문제로, gating network가 학습 데이터를 다른 모델에 분배하는 대신 계속해서 하나의 특정 모델로만 라우팅하는 상황입니다.
auxiliary loss를 구현하면 gating network가 학습 데이터를 서로 다른 모델에 분배하도록 학습하게 강제하는 데 도움이 됩니다. 문제는 auxiliary loss에만 의존하면 학습 후 모델의 성능이 저하되는 것으로 나타났다는 점입니다.
로드 밸런싱과 모델 성능 사이의 트레이드오프를 도입하기 위해, DeepSeek V3는 보조 손실 없는 로드 밸런싱 전략을 구현했습니다. 이 전략은 각 전문가 모델에 편향 항을 도입하며, 이는 해당 전문가의 라우팅 부하에 따라 동적으로 조정됩니다. 이를 통해 어떤 전문가 모델도 과부하되거나 과소 활용되지 않도록 보장합니다.
또한 위의 시각화에서 볼 수 있듯이, DeepSeek V3는 특정 전문가를 "공유 전문가"로 설계했으며, 이러한 전문가들은 다양한 작업에서 항상 활성화됩니다. 이 구현은 모델이 서로 다른 작업 도메인 전반에 걸쳐 일반화하는 능력을 향상시키는 데 도움이 됩니다.
이 MoE 기능은 DeepSeek V3의 다재다능함 뒤에 있는 비밀 레시피입니다. 다음 섹션에서 보게 되겠지만, DeepSeek V3는 수학, 코딩, 언어 등과 같은 다양한 도메인의 여러 작업에서 매우 뛰어난 성능을 보입니다. 실제로 이 모델은 현재 여러 도메인에서 가장 강력한 오픈 소스 기반 모델입니다.
기능 세 번째: 멀티 토큰 예측
일반적인 LLM은 각 디코딩 단계에서 하나의 토큰을 예측하지만, DeepSeek V3는 특히 훈련 단계에서 다르게 작동합니다. DeepSeek V3는 훈련 중에 이른바 멀티 토큰 예측(MTP)을 구현하여 모델이 각 디코딩 단계에서 여러 미래 토큰을 예측할 수 있게 합니다.
복잡성이 더해지기는 하지만, MTP 접근 방식은 다양한 작업 전반에서 모델 성능을 향상시키는 데 중요합니다. 상상할 수 있듯이, 하나의 디코딩 단계에서 몇 단계 앞의 가능한 미래 토큰을 살펴봄으로써, 모델은 주어진 작업에 대한 최선의 가능한 해결책을 학습할 수 있습니다.
DeepSeek V3의 MTP 접근 방식 시각화. 출처.
MTP를 구현하기 위해, DeepSeek V3는 각각 여러 Transformer 레이어로 구성된 둘 이상의 모델을 채택합니다. 하나의 모델은 메인 모델로 작동하고, 나머지는 MTP 모듈로 작동합니다. 명확히 정의되어 있지는 않지만, MTP 모델은 일반적으로 메인 모델에 비해 크기가 더 작습니다(HuggingFace의 DeepSeek V3 모델 전체 크기는 685B이며, 메인 모델이 671B, MTP 모듈이 14B입니다).
훈련 단계에서 메인 모델과 MTP 모듈은 모두 동일한 임베딩 레이어로부터 입력을 받습니다. 그러나 구현은 여전히 순차적으로 이루어져야 합니다. 즉, 메인 모델이 먼저 한 단계 앞의 토큰을 예측하고, 그 후 첫 번째 MTP 모듈이 두 단계 앞의 토큰을 예측합니다. 이 과정은 MTP 모듈의 수에 따라 계속됩니다. 토큰을 예측한 후, 메인 모델과 MTP 모듈은 모두 동일한 출력 헤드를 사용합니다.
추론 단계에서는 MTP 모듈을 완전히 유연하게 다룰 수 있습니다. 예를 들어, 일반적인 LLM처럼 추론 중에 MTP 모듈을 완전히 버리고 메인 모델만 사용할 수 있습니다. 또한 MTP 모듈을 사용해 추측 디코딩 접근 방식을 구현하여 생성 과정을 잠재적으로 더욱 빠르게 할 수도 있습니다.
다른 모델과 비교한 DeepSeek V3 비용 및 성능
위에서 언급한 모든 혁신적인 기능 덕분에 DeepSeek V3 모델은 비공개 소스 경쟁 모델들보다 훨씬 저렴하게 훈련될 수 있었습니다.
DeepSeek V3는 2,048개의 NVIDIA H800 GPU로 구성된 클러스터에서 훈련되었습니다. DeepSeek V3 모델의 사전 훈련 단계 비용은 약 0.01M였으며, DeepSeek V3 모델을 처음부터 끝까지 훈련하는 데 총 100M의 비용이 들었습니다](https://www.wired.com/story/openai-ceo-sam-altman-the-age-of-giant-ai-models-is-already-over/).
DeepSeek V3는 또한 아래 그림에서 볼 수 있듯이, 다양한 벤치마크 전반에서 Qwen2.5 72B, Llama 3.1 405B, Claude 3.5 Sonnet, ChatGPT 4o와 같은 다른 오픈 및 비공개 소스 LLM과 비교해 우수한 성능을 보여주었습니다:
DeepSeek-V3와 다른 최첨단 챗 모델 간의 비교. 출처.
DeepSeek V3의 성능은 코딩, 수학, 중국어와 같은 다양한 작업에서 다른 최첨단 모델과 비교해 우수한 것으로 입증되었습니다. 영어 작업에서의 성능은 여러 벤치마크에서 Claude 3.5 Sonnet과 유사한 결과를 보였습니다.
또한 DeepSeek V3의 성능은 GPT-4-Turbo-1106을 평가자로 사용하고 길이 제어 승률을 지표로 삼아 개방형 생성 작업에서 다른 LLM들과 비교되었습니다. 그 결과, DeepSeek V3는 Arena-Hard 및 AlpacaEval 2.0 벤치마크에서 다른 모델들에 비해 최고의 성능을 보여주었습니다.
AlpacaEval 2.0 및 Arena-Hard 벤치마크에서 DeepSeek-V3와 다른 최첨단 챗 모델 간의 비교. 출처.
Arena-Hard와 AlpacaEval 2.0 벤치마크 모두에서 DeepSeek V3가 보여준 우수한 성능은 길고 복잡한 프롬프트뿐만 아니라 글쓰기 작업과 단순한 질의응답 시나리오를 처리하는 능력과 견고성을 잘 보여줍니다.
개발자가 DeepSeek V3를 활용하는 방법
성능 외에도 DeepSeek V3 모델의 또 다른 주요 매력은 오픈소스라는 점입니다. DeepSeek는 MIT 라이선스하에 V3 모델을 오픈소스로 공개하기로 결정했으며, 이는 개발자가 해당 가중치에 무료로 접근하고 상업적 사용까지 포함해 자신의 목적에 맞게 사용할 수 있음을 의미합니다.
개인화 추천과 콘텐츠 생성부터 가상 비서, 내부 챗봇, 문서 요약 등 다양한 GenAI 사용 사례에 이를 활용할 수 있습니다. 이러한 사용 사례는 또한 수십억 개의 컨텍스트 임베딩을 저장하기 위해 DeepSeek V3의 강력함을 오픈소스 벡터 데이터베이스인 Milvus와 결합할 수 있게 해줍니다.
이 글을 작성하는 시점에서 DeepSeek V3는 아직 Hugging Face에 통합되지 않았습니다. 하지만 매우 곧 통합될 것으로 예상되며, 그러면 모델을 쉽고 로컬에서 사용하고 실행할 수 있을 것입니다. 공식 Hugging Face 통합을 기다리는 동안에도 DeepSeek V3를 여러 방식으로 실행할 수 있습니다.
DeepSeek V3를 가장 쉽게 사용해보는 방법은 DeepSeek의 공식 채팅 플랫폼을 이용하는 것입니다. 가입만 하면 모델과 채팅을 시작할 수 있습니다.
로컬 머신에서 실행하고 싶다면, 먼저 다음 명령어로 공식 DeepSeek V3 저장소를 클론해야 합니다:
git clone <https://github.com/deepseek-ai/DeepSeek-V3.git>
다음으로 inference 폴더로 이동한 뒤, 다음 명령어를 실행하여 필요한 모든 종속성을 설치합니다:
cd DeepSeek-V3/inference
pip install -r requirements.txt
다음으로 모델의 가중치를 다운로드해야 합니다. HuggingFace에는 두 가지 모델 가중치가 제공됩니다: 기본 버전 (사전 학습 단계 이후만 해당)과 채팅 버전 (후학습 단계 이후)입니다. 원하는 모델 버전을 다운로드한 다음 가중치를 /path/to/DeepSeek-V3 폴더 안에 넣습니다.
이제 다음 명령어를 사용해 HuggingFace 모델 가중치를 특정 형식으로 변환할 수 있습니다:
python convert.py --hf-ckpt-path /path/to/DeepSeek-V3 --save-path /path/to/DeepSeek-V3-Demo --n-experts 256 --model-parallel 16
마지막으로 다음 명령어를 실행하여 DeepSeek V3와 채팅을 시작할 수 있습니다:
torchrun --nnodes 2 --nproc-per-node 8 generate.py --node-rank $RANK --master-addr $ADDR --ckpt-path /path/to/DeepSeek-V3-Demo --config configs/config_671B.json --interactive --temperature 0.7 --max-new-tokens 200
DeepSeek V3를 시작하고 실행하는 또 다른 방법은 vLLM, SGLang, LMDeploy, 그리고 TensorRT-LLM와 같은 여러 LLM 최적화 서빙 프레임워크를 이용하는 것입니다.
DeepSeek V3 이후의 미래 전망
DeepSeek V3의 등장은 여러 측면에서 중요한 돌파구로 볼 수 있습니다. MLA, MoE, MTP, FP8 양자화를 활용한 혼합 정밀도 학습 등 DeepSeek V3의 학습 단계에서 구현된 많은 혁신은 성능과 효율이 뛰어날 뿐만 아니라 학습 비용도 훨씬 저렴한 LLM을 개발할 수 있는 길을 열어주었습니다.
MLA, MoE, MTP의 구현은 서로 다른 방식으로 추론 중 토큰 생성 프로세스를 가속화하는 데 기여합니다:
MLA는 입력 표현의 차원을 저랭크 표현으로 압축함으로써 KV cache 메모리를 절약하고 토큰 생성을 가속화할 수 있게 합니다.
MoE는 작업에 따라 추론 중 특정 전문가만 활성화함으로써 토큰 생성 프로세스를 가속화하고 모델 확장성을 향상시킵니다. 추론 중 671B개의 모든 파라미터를 활성화하는 대신, 모델은 그중 작은 일부(약 37B)만 활성화합니다.
MTP는 추론 중 투기적 디코딩 접근 방식을 촉진하도록 재활용될 수 있습니다. 이 접근 방식을 사용하면 다음 토큰 예측을 처음부터 수행하는 대신 MTP 모듈이 예측한 가능한 미래 토큰에서 시작할 수 있습니다.
DeepSeek이 MIT 라이선스하에 DeepSeek V3를 오픈소스로 공개하기로 선택했다는 사실은 전 세계 AI 커뮤니티인 우리가 그 기술에 기여하고, 실험하며, 이를 기반으로 구축하도록 장려합니다. 이는 결국 우리 모두에게 이로운 AGI에 도달한다는 목표를 향해 더 빠른 혁신의 순환 속에 우리 모두를 참여시킵니다.
이미 다른 최첨단 LLM들과 비교해 성능이 우수하지만, 연구에 따르면 DeepSeek V3의 성능은 앞으로 더욱 개선될 수 있습니다.
이전에 DeepSeek 팀은 가장 강력한 모델인 DeepSeek R1의 추론 능력을 DeepSeek V2.5 모델로 증류하는 연구를 수행했습니다. 이에 익숙하지 않다면, 증류는 더 크고 더 성능이 뛰어난 모델의 지식을 더 작은 모델로 이전하는 과정을 의미합니다.
DeepSeek V2.5는 R1 모델에서 나온 추가 증류 데이터를 제공받았을 때 LiveCodeBench 및 MATH-500 벤치마크에서 상당한 개선을 보였지만, 동시에 명백한 단점도 있었습니다: 평균 응답 길이의 증가입니다.
DeepSeek-R1에서 DeepSeek V2.5로의 증류가 기여한 바. 출처.
그럼에도 불구하고, 이 연구는 동일한 지식 증류 기법이 향후 DeepSeek V3에도 적용되어 다양한 데이터 도메인 전반에서 성능을 더욱 최적화할 수 있음을 보여줍니다.
결론
DeepSeek V3는 오픈소스 AI 분야에서 큰 진전을 의미합니다. 이는 학습 비용의 일부만으로도 선도적인 폐쇄형 소스 모델에 필적하는 성능을 제공합니다. Multi-Head Latent Attention (MLA), Mixture of Experts (MoE), Multi-Token Predictions (MTP)를 포함한 혁신적인 기능은 학습 및 추론 단계 모두에서 효율성과 정확성에 기여합니다. 또한 MIT 라이선스하의 오픈소스 특성은 AI 커뮤니티가 그 발전을 기반으로 구축할 수 있게 하여 AGI를 향한 진전을 가속화합니다.
앞으로 DeepSeek V3의 영향력은 훨씬 더 강력해질 수 있습니다. 이전에 DeepSeek R1과 DeepSeek V2.5가 탐구한 바 있는 지식 증류 기법의 잠재적 적용은 추가적인 최적화와 효율성 개선의 여지가 있음을 시사합니다. DeepSeek V3는 비용 효율적이고 고성능의 AI 연구를 위한 새로운 벤치마크를 제시한다고 말할 수 있습니다.
계속 읽기

Zilliz Cloud Now Available in AWS Europe (Ireland)
Zilliz Cloud launches in AWS eu-west-1 (Ireland) — bringing low-latency vector search, EU data residency, and full GDPR-ready infrastructure to European AI teams. Now live across 30 regions on five cloud providers.

Why AI Databases Don't Need SQL
Whether you like it or not, here's the truth: SQL is destined for decline in the era of AI.

Optimizing Embedding Model Selection with TDA Clustering: A Strategic Guide for Vector Databases
Discover how Topological Data Analysis (TDA) reveals hidden embedding model weaknesses and helps optimize vector database performance.


