DFlash가 블록 확산(Block Diffusion)을 사용하여 추측적 디코딩(Speculative Decoding)의 병목 현상을 해결하는
요약
DFlash는 블록 확산(Block Diffusion) 기술을 활용하여 기존 추측적 디코딩의 순차적 초안 작성 병목 현상을 해결합니다. 단 한 번의 순방향 패스로 후보 블록을 생성함으로써 Qwen3-8B 기준 6배의 가속을 달성했습니다.
핵심 포인트
- 블록 확산 모델을 통해 초안 작성 단계의 순차적 계산 제약 극복
- Qwen3-8B에서 6배, EAGLE-3 대비 2.5배의 무손실 가속 달성
- NVIDIA Blackwell 하드웨어에서 최대 15배의 처리량 이득 제공
- SGLang 및 vLLM에 통합되어 즉시 사용 가능
DFlash가 블록 확산(Block Diffusion)을 사용하여 추측적 디코딩(Speculative Decoding)의 병목 현상을 해결하는 방법
자기회귀(Autoregressive) LLM 추론에는 근본적인 문제가 있습니다. 모든 토큰은 이전 토큰에 의존한다는 점입니다. 작은 초안 모델(draft model)이 토큰을 제안하고 타겟 모델(target model)이 이를 병렬로 검증하는 추측적 디코딩(speculative decoding)을 사용하더라도, 초안 작성(drafting) 단계 자체는 여전히 순차적(sequential)으로 남아 있습니다. UC San Diego의 Z Lab 연구진이 개발한 프레임워크인 DFlash는 자기회귀 초안 작성기(autoregressive drafter)를 단 한 번의 순방향 패스(forward pass)로 전체 후보 블록을 생성하는 블록 확산(block diffusion) 모델로 교체함으로써 이를 변화시킵니다.
결과는 주목할 만합니다. Qwen3-8B에서 6배의 무손실 가속(lossless acceleration)을 달성했으며, 이전의 최첨단(state-of-the-art) 모델인 EAGLE-3보다 2.5배 향상되었고, 실제 운영 동시성 수준에서 NVIDIA Blackwell 하드웨어 상에서 최대 15배의 처리량(throughput) 이득을 얻었습니다. 이 프레임워크는 현재 SGLang 및 vLLM에 통합되어 애플리케이션 수준의 변경 없이도 사용할 수 있습니다.
추측적 디코딩(Speculative Decoding)에 여전히 병목 현상이 있었던 이유
추측적 디코딩(speculative decoding)은 경량 초안 모델이 후보 토큰 시퀀스를 생성하면, 타겟 모델이 이를 단일 병렬 순방향 패스(parallel forward pass)로 검증하는 방식으로 작동합니다. 타겟 모델이 초안 토큰의 대부분을 수락하면, 비용이 많이 드는 타겟 모델이 실행되는 횟수가 줄어들어 상당한 속도 향상을 얻을 수 있습니다.
문제는 EAGLE-3와 같은 기존 초안 모델들이 그 자체로 자기회귀(autoregressive) 방식이라는 점입니다. 이들은 토큰을 한 번에 하나씩 생성하므로, γ개의 토큰을 초안 작성하는 데 γ번의 순차적 단계가 필요합니다. 이는 한계(ceiling)를 만듭니다. 초안 작성을 더 빠르게 하고 싶을수록 순차적 계산(sequential computation)에 의해 더 많이 제약받게 됩니다. EAGLE-3는 실제 환경에서 약 2~3배의 속도 향상을 달성하며 유용하게 사용되지만, 상당한 GPU 용량이 제대로 활용되지 못한 채 남아 있습니다.
확산 언어 모델(Diffusion language models)은 대안을 제시합니다. 이들은 토큰을 병렬로 생성할 수 있습니다. 하지만 단독 확산 LLM(standalone diffusion LLMs)은 역사적으로 품질 면에서 자기회귀 모델보다 성능이 떨어졌으며, 이로 인해 검증 단계(verification step)를 위한 적절한 후보가 되지 못했습니다.
DFlash가 다르게 하는 점
DFlash의 핵심 통찰은 확산 모델 (Diffusion Model)을 최종 생성(final generation)이 아닌 초안 작성(drafting) 용도로만 사용하는 것입니다. 타겟 모델 (Target Model)은 검증 (verification)을 처리하는 표준 자기회귀 (Autoregressive) LLM으로 유지됩니다. 이를 통해 DFlash는 자기회귀 검증의 품질 보증을 유지하면서도, 확산 생성 (Diffusion Generation)의 병렬성을 포착할 수 있습니다.
초안 작성 과정은 다음과 같습니다:
- 문맥 추출 (Context extraction): 타겟 모델이 입력 프롬프트를 처리하고 여러 레이어에서 은닉 상태 (Hidden States)를 생성합니다.
- KV 주입 (KV injection): 이 은닉 상태들은 투영 (Projected)되어 초안 모델 (Draft Model)의 모든 레이어에 있는 키-값 캐시 (Key-Value Cache)에 주입됩니다. 이는 초안 작성 모델을 첫 번째 레이어의 특징 (Features)에만 조건화(Conditioning)했던 이전의 확산 기반 추측적 디코딩 (Diffusion-based Speculative Decoding) 방식과의 결정적인 차이점입니다. 초안 모델의 깊이 전반에 걸쳐 타겟 문맥을 주입함으로써, DFlash는 초안 모델이 더 깊어지고 표현력이 풍부해지더라도 초안과 타겟 사이의 강력한 정렬 (Alignment)을 유지합니다.
- 병렬 블록 초안 작성 (Parallel block drafting): 초안 모델은 문제를 순차적 예측 (Sequential Prediction)이 아닌 공동 노이즈 제거 (Joint Denoising) 작업으로 취급하여, 단 한 번의 순전파 (Forward Pass) 과정에서 마스킹된 토큰 위치의 전체 블록을 채웁니다.
- 검증 (Verification): 타겟 모델이 제안된 블록을 확인합니다. 수락된 토큰은 유지되며, 처음으로 거부된 토큰이 새로운 초안 주기를 트리거합니다.
초안 작성 비용은 블록 크기에 관계없이 대략 일정하기 때문에, DFlash는 자기회귀 초안 작성 모델 (Autoregressive Drafters)을 제한하는 선형적 지연 시간 (Linear Latency) 페널티 없이 더 깊은 초안 모델과 더 큰 블록 크기를 사용할 수 있습니다. 16개의 토큰을 초안 작성하는 5레이어 DFlash 모델은 8개의 토큰을 초안 작성하는 단일 레이어 EAGLE-3 모델보다 더 빠르게 작동합니다.
초안 모델 학습 (Training the Draft Model)
DFlash 초안 모델 (draft models)을 학습시키는 과정에는 수락률 (acceptance rates)에 중요한 영향을 미치는 몇 가지 설계 선택 사항이 포함됩니다. 초안 모델은 타겟 모델 (target model)과 토큰 임베딩 (token embeddings) 및 언어 모델 헤드 (language model head)를 공유하며, 이를 통해 출력 분포 (output distribution)를 일치하게 유지합니다. 학습 과정에서는 항상 시퀀스의 시작 부분부터 시작하는 대신, 학습 데이터에서 무작위 블록 위치 (random block positions)를 샘플링합니다. 이는 임의의 컨텍스트 길이 (context lengths)에 대한 일반화 성능을 향상시킵니다.
손실 가중치 (Loss weighting)는 블록 내 위치에 따라 지수적 감쇠 (exponential decay)를 사용하며, 오류가 누적되는 초기 위치의 정확도를 우선시합니다. 그 직관은 블록 초기에 잘못된 토큰이 발생하면 나머지 블록 전체가 거부될 것이므로, 해당 위치에 더 많은 학습 신호를 할당할 가치가 있다는 것입니다.
벤치마크 결과 (Benchmark Results)
탐욕적 디코딩 (greedy decoding)을 사용한 Qwen3-8B에서 DFlash는 다음과 같은 성능을 달성했습니다:
- 코드 생성 (HumanEval)에서 6.08배 속도 향상
- 수학 (MATH-500)에서 5.15배 속도 향상
- 채팅 (MT-Bench)에서 5.62배 속도 향상
동일한 작업에서 EAGLE-3와 비교했을 때, DFlash는 1.4~1.8배 더 빠릅니다. 온도 (temperature) 1에서의 추론 모델 (reasoning models)의 경우 이득이 훨씬 더 큽니다: AIME 벤치마크에서 4.5배 가속을 기록했습니다.
NVIDIA Blackwell (DGX B300) 기반의 프로덕션 규모에서, NVIDIA 엔지니어링 팀은 사용자 상호작용 목표인 사용자당 초당 500600 토큰을 기준으로 gpt-oss-120B에 대해 표준 자기회귀 디코딩 (autoregressive decoding) 대비 최대 15배의 처리량 (throughput) 향상을 보고했습니다. EAGLE-3와 비교하더라도 DFlash는 작업 유형에 따라 1.52.6배 더 높은 처리량을 제공하며, 코딩 및 다국어 작업에서 가장 큰 이득을 보였습니다.
SGLang 및 vLLM과의 통합 (Integration with SGLang and vLLM)
LMSYS 팀의 Spec V2 블로그 포스트는 DFlash가 어떻게 SGLang의 기본 추측적 디코딩 (Speculative Decoding) 엔진이 되었는지 설명합니다. 이 통합은 오버랩 스케줄러 (overlap scheduler)를 추가하여, 초안 처리 (draft processing)를 다음 배치의 KV 캐시 할당 (KV cache allocation)과 중첩시킴으로써 호스트-디바이스 동기화 (host-device synchronization) 오버헤드를 줄입니다. 이것만으로도 DFlash의 기본 이득 위에 약 33%의 처리량 (throughput)이 추가됩니다. Qwen3-8B의 경우, 처리량이 초당 11,400개에서 15,300개 토큰으로 증가합니다.
vLLM 사용자들의 경우, DFlash는 Speculators 라이브러리를 통해 통합됩니다. EAGLE-3에서 전환하려면 체크포인트 경로를 업데이트하고 알고리즘을 지정하기만 하면 되며, 애플리케이션 코드의 변경은 필요하지 않습니다. Blackwell 및 Hopper 배포를 위한 TensorRT-LLM 지원도 가능합니다.
Z Lab은 Hugging Face에 Qwen, Llama, Gemma, 그리고 Kimi K2.6 모델 제품군을 아우르는 20개 이상의 DFlash 초안 모델 (draft model) 체크포인트를 출시했습니다. 원본 논문과 프로젝트 페이지에는 SGLang 및 Transformers 라이브러리 모두를 위한 학습 코드와 퀵스타트 (quick-start) 예제가 포함되어 있습니다.
이것이 추론 인프라에 의미하는 바
추측적 디코딩 (Speculative decoding)은 유용하지만 틈새적인 최적화 기술이었습니다. 주로 좋은 초안 모델 (draft model)과 적절한 하드웨어 설정이 갖춰졌을 때만 효과적이었습니다. DFlash는 검증 단계 (verification step)가 아니라 초안 작성 단계 (drafting step) 자체가 제한 요소였다는 점을 입증합니다.
실질적인 함의는 모델 품질의 변경 없이도 대규모 모델의 추론 서빙 (inference serving) 비용을 대폭 낮출 수 있다는 것입니다. 대규모로 LLM을 운영하는 팀들에게 DFlash와 SGLang 또는 vLLM 같은 현대적인 추론 프레임워크의 결합은 토큰당 GPU 시간 (GPU hours)의 유의미한 감소를 의미합니다. 특히 토큰 수락률 (token acceptance rates)이 높은 코딩 및 추론 (reasoning) 워크로드에서 더욱 그러합니다.
또한 이 프레임워크는 더 넓은 패턴을 시사합니다. 즉, 확산 모델 (diffusion models)은 독립적인 생성기 (standalone generators)로서가 아니라, 자기회귀적 검증 (autoregressive verification)의 품질 보증을 희생하지 않으면서도 병렬성 (parallelism)을 활용할 수 있는 하이브리드 시스템 (hybrid systems) 내의 구성 요소로서 가장 유용할 수 있다는 점입니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기