DeepInfer가 공개한 것: DeepSeek의 V4.1-Flash 엔진
DeepInfer 릴리스는 출시 당시의 이야기보다 범위가 좁습니다. 그리고 바로 그 점 때문에 더 흥미롭습니다. 범위, 빌드, 라이선스, 그리고 엔진과 서비스를 가르는 경계를 정리했습니다.
DeepInfer는 DeepSeek-V4.1-Flash를 대규모로 서빙하기 위한 DeepSeek의 오픈소스 추론 프레임워크입니다. 2026년 10월 20일 Apache-2.0 라이선스로 공개되었고, NVIDIA SM100 GPU와 Huawei Ascend 950 NPU용 오프라인 추론 엔진을 제공합니다. 다만 완전한 온라인 서비스에 필요한 KV cache 시스템, 프리필/디코드 분리, 데이터 병렬 로드 밸런싱은 포함하지 않습니다. 이 페이지에서는 범위, 빌드, 라이선스를 다룹니다.
그 문단이 이 글의 논지 전부입니다. 아래 내용은 모두 그 근거입니다.
한 표로 보는 범위
README의 “지원 기능” 목록과 “완전한 추론 서비스에 필요하지만 이번 릴리스에는 포함되지 않은 항목” 목록은 이례적으로 명확합니다. 두 목록을 나란히 옮기면서 빈틈을 덮지 않았습니다.
| 포함 | 미포함 |
|---|---|
| DeepSeek-V4.1-Flash 오프라인 추론 | KV cache 시스템 |
| 최적화된 커널과 모델/샘플러 런타임 | VE / 프리필 / 디코드 분리 |
| 어텐션 DP / 균형 CP; MoE EP + EPLB | 데이터 병렬 복제본 간 로드 밸런싱 |
| DSpark와 신뢰도 기반 검증 스케줄링 | 사용자 대상 온라인 API |
| SWA 바운디드 리플레이 | 다른 DeepSeek 모델 지원 |
| 비동기 스케줄링 | 공개된 Ascend 950 성능 데이터 |
| 배치 불변 추론(NVIDIA) | 제3자 벤치마크 재현 |
| 결정론적 샘플링(NVIDIA) | 프로덕션 동등성 보장 |
| 구조화된 출력: 정규식, JSON Schema, EBNF | — |
왼쪽 열은 저장소에 실제로 들어 있는 것입니다. 오른쪽 열은 서빙 팀이 여전히 직접 만들거나 운영해야 하는 것입니다. DeepSeek의 Q&A는 빠진 구성요소를 자세히 설명합니다. 설계를 이해하는 데는 도움이 되지만, 그 코드가 릴리스에 들어오는 것은 아닙니다.
저장소 구조
공개된 트리는 작습니다. 독자가 열어 볼 만한 디렉터리만 정리했으며, 모든 파일을 감사한 것은 아닙니다.
| 경로 | 확인한 내용 | 열어 볼 이유 |
|---|---|---|
deepinfer/ | Python 패키지와 엔진 코드 | 주요 런타임과 스케줄링 로직 |
csrc/ | C++/CUDA 네이티브 확장 | 커널과 바인딩 작업 |
doc/ | 배포 Q&A, 이미지 | 가장 상세한 공식 설명 |
examples/ | 오프라인 추론, 벤치마크, 스윕 | 의도된 사용법을 가장 빨리 확인하는 방법 |
eval/ | AIME 2026, HLE, GPQA Diamond 스크립트 | 참조 점수 재현 |
tests/ | pytest 스위트, PPL 기준선 | 저자들이 말하는 “정답”의 기준 확인 |
scripts/ | 포맷팅 및 보조 스크립트 | 기여자용 도구 |
vendor/ | 벤더링된 서드파티 코드 | 라이선스와 의존성 감사 |
deep_cluster/ | 트리에 포함된 클러스터 관련 코드 | 감사하지 않았습니다. 공개 API에 대한 주장은 하지 않습니다 |
공개 이력은 2026년 10월 20일의 커밋 세 개로 시작합니다. 04:09 UTC의 최초 커밋, 09:06의 Q&A 문서 업데이트, 11:03의 영문 Q&A 업데이트입니다. 이는 오래 이어진 공개 개발 이력이 아니라 코드 일괄 공개입니다. 커밋 수를 프로젝트의 엔지니어링 투입량으로 읽어서는 안 됩니다.
빌드 요구사항
DeepInfer는 NVIDIA SM100 GPU와 Huawei Ascend 950 NPU를 지원하지만, DeepSeek가 공개한 성능 차트는 NVIDIA 하드웨어만 다룹니다. 빌드 자체도 데이터센터용 소프트웨어입니다. README에 적힌 요구사항은 다음과 같습니다.
- Linux
- GCC ≥ 13.0
- Python 3.12
- NVIDIA는 CUDA 13, Ascend는 CANN 9.2
- NVIDIA SM100 GPU 또는 Huawei Ascend 950 NPU
문서에 나온 경로는 소스 빌드입니다.
# NVIDIA용. Ascend 플랫폼에서는 “ascend”를 사용합니다.
export DEEPINFER_ACCELERATOR=nvidia
./build.sh
# 기본 체크포인트는 첫 실행 시 Hugging Face에서 내려받습니다.
python examples/offline_inference.py
체크포인트를 이미 로컬에 가지고 있다면 DEEPINFER_HF_MODEL_DIR=/path/to/DeepSeek-V4.1-Flash-1017을 설정하세요. examples README는 병렬 배치를 위한 --ep, --dp, --cp 플래그도 제공합니다. 그래도 하드웨어 요구사항은 달라지지 않습니다. README에 적힌 것은 SM100과 Ascend 950이며, H100, H200, H20 또는 소비자용 카드는 목록에 없습니다.
라이선스, 섞지 않고 보기
| 구성요소 | 라이선스 | 적용 범위 |
|---|---|---|
| DeepInfer | Apache-2.0 | 엔진 코드: deepseek-ai/DeepInfer |
| DeepSeek-V4.1-Flash-1017 | MIT | 기본 모델 가중치 |
| deepseek-recipe | MIT | 별도 프로토콜/토큰화 라이브러리 |
| 벤더링된 커널 | 각각 확인 | FlashMLA, DeepGEMM, DeepEP, TileKernels, DeepSelect 및 기타 의존성 |
Apache-2.0은 고지 의무와 특허 허여를 조건으로 상업적 사용과 수정을 허용합니다. MIT도 비슷하게 관대합니다. 그렇다고 해서 벤더링된 모든 의존성의 라이선스나 모델의 허용 사용 조건까지 자동으로 정리되는 것은 아닙니다. 상업적으로 배포한다면 요약에 의존하지 말고 트리와 모델 카드를 직접 감사하세요.
지금 할 수 있는 것
- 오프라인 추론 실행: 지원 하드웨어에서 기본 V4.1-Flash-1017 체크포인트로 실행할 수 있습니다.
- 벤치마크 스윕 재현:
examples/sweep/run_sweep.sh로 실행하고plot_pareto.py로 그래프를 그립니다. - 참조 평가 실행:
eval/의 스크립트로 AIME 2026, GPQA Diamond, HLE를 돌립니다. - 구현 분석: Wide-EP, EPLB, DSpark 검증, SWA 바운디드 리플레이, 비동기 스케줄러의 구현을 살펴봅니다.
- deepseek-recipe 활용: 서드파티 API 동작을 DeepSeek의 프로토콜 처리 방식에 맞춥니다.
- 서빙 계층 구축: 그 위에 서빙 계층을 올릴 수 있습니다. 다만 그 계층은 릴리스가 아니라 여러분의 작업입니다.
아직 할 수 없는 것
- DeepSeek와 같은 API를 여는 것. 이번 릴리스는 오프라인이며 KV cache, PD 분리, 로드 밸런싱이 포함되지 않습니다.
- 다른 모델 서빙. V4.1-Flash만 목록에 있습니다.
- 구형 NVIDIA 또는 Ascend 하드웨어에서 실행하는 것. 대상으로 명시된 것은 SM100과 Ascend 950입니다.
- Ascend 처리량을 인용하는 것. DeepSeek는 NVIDIA 차트만 공개했습니다.
- 프로덕션 동등성을 주장하는 것. DeepSeek는 이 프레임워크가 자사 서비스를 구동한다고 말하지만, 공개된 코드는 일부입니다. 외부에서 검증할 방법은 없습니다.
DeepInfer는 오프라인 추론 엔진이며 호스팅 API나 모델이 아닙니다. 이번 릴리스에는 완전한 온라인 서비스에 필요한 KV cache 시스템, 프리필/디코드 분리, 데이터 병렬 로드 밸런싱이 포함되지 않았습니다.
버전 참고
이 글을 쓰는 시점에 GitHub Release나 태그는 없습니다. 저장소에는 공개 커밋이 세 개뿐이고, Q&A는 출시 당일 갱신되었습니다. 이 페이지는 스냅샷으로 다루세요. 배포 결정을 앞두고 있다면 현재 README와 Q&A를 읽고, 빠진 구성요소가 추가되었는지 확인해야 합니다.
다음: 엔진의 작동 방식, 또는 빠진 구성요소가 실제로 무엇을 뜻하는지.