I-DLM - 내성 확산 언어 모델 (Introspective Diffusion Language Models)
(introspective-diffusion.github.io)- I-DLM은 확산 기반 언어 모델이 AR(Autoregressive) 모델 수준의 품질과 병렬 생성 속도를 동시에 달성한 첫 사례임
- Introspective Strided Decoding(ISD) 을 통해 한 번의 전방 패스에서 새 토큰 생성과 이전 토큰 검증을 병행함
- I-DLM-8B는 LLaDA-2.1-mini(16B) 대비 절반의 파라미터로 AIME-24에서 +26점, LiveCodeBench-v6에서 +15점 향상
- Gated LoRA를 이용해 비트 단위 손실 없는(lossless) 가속을 구현하고, SGLang 인프라와 완전 호환됨
- 확산 언어 모델이 자기 일관성 학습과 병렬 디코딩 최적화를 통해 실용적 대규모 배포 가능성을 입증함
개요
- I-DLM(Introspective Diffusion Language Model) 은 기존 확산 언어 모델(DLM) 의 병렬 토큰 생성 능력을 유지하면서, 자기 일관성(introspective consistency) 문제를 해결해 AR 모델 수준의 품질을 달성한 모델임
- Introspective Strided Decoding(ISD) 을 통해 한 번의 전방 패스로 새 토큰을 생성하면서 이전 토큰을 검증함
- I-DLM-8B는 동급 규모의 AR 모델과 동일한 품질을 달성한 최초의 DLM으로, LLaDA-2.1-mini(16B) 대비 절반의 파라미터로 AIME-24에서 +26점, LiveCodeBench-v6에서 +15점 향상
- 높은 동시성(C=64) 환경에서 2.9~4.1배의 처리량(throughput) 을 달성하며, Gated LoRA를 통해 비트 단위 손실 없는(lossless) 가속을 지원함
Introspective Consistency의 필요성
- AR 모델은 한 번의 전방 패스에서 생성과 자기 검증을 동시에 수행하지만, 기존 DLM은 노이즈 제거(denoising) 만 학습해 자기 일관성이 부족함
- 기존 DLM의 세 가지 병목 요인
- 낮은 자기 일관성: SDAR 0.699 vs I-DLM 0.984
- 비효율적 연산: TiDAR 약 7.8배 오버헤드 vs I-DLM 약 2.5배
- 인프라 불일치: SDAR slope=84 vs I-DLM=549
I-DLM 방법론
-
Introspective-Consistency Training
- 사전 학습된 AR 모델을 인과적 어텐션(causal attention), logit shift, 전 마스크(all-masked) 목적 함수를 통해 변환
-
Introspective Strided Decoding(ISD)
- 한 번의 전방 패스에서 N개의 토큰 생성과 이전 토큰 검증을 병행
- p/q 수용 기준(acceptance criterion) 을 사용해 생성 결과를 검증
-
AR-Compatible Serving
- 엄격한 인과 어텐션 구조로 SGLang 인프라에 직접 통합 가능
- 별도의 커스텀 인프라 없이 AR 모델과 동일한 서빙 환경에서 동작
성능 결과
- I-DLM은 동일 규모 AR 모델과 품질이 동등한 최초의 DLM으로, 15개 벤치마크 전반에서 기존 DLM을 초월
-
주요 벤치마크 결과
- 지식·추론: ARC-C 96.8, MMLU-Pro 79.7, GPQA-D 62.1
- 수학: AIME-24 83.3, AIME-25 80.0, MATH-500 97.6
- 코드: HumanEval 96.3, MBPP 94.6, LCB-v6 57.1
- 명령 수행: IFEval 84.7
- I-DLM-32B는 LLaDA-2.1-flash(100B) 보다 높은 성능을 기록
처리량(Throughput)
- 배치 크기 1~64에서 LLaDA-2.1-mini 및 SDAR 대비 2.9~4.1배 높은 처리량을 달성
- 메모리 바운드(memory-bound) 환경에서 TPF(Token Per Forward) 가 실제 속도 향상을 근사
- I-DLM(N=4, p=0.9): TPF≈2.9, 효율성 1.22
- SDAR(N=4, p=0.5): TPF≈1.1, 효율성 0.31
- 효율성 1 이상은 병렬 디코딩이 AR 대비 총 연산량을 절감함을 의미
Speedup Factor Explorer
- 수용률 p=0.9, R-ISD LoRA 오버헤드 α=1.12
-
속도 향상 근사식:
- 메모리 바운드:
Speedup ≈ TPF = (2+p+...+pN-2)/(2-pN-1) - R-ISD(손실 없음):
Speedup ≈ TPF/α - Gated LoRA는 MASK 위치에서만 활성화되어 AR 출력과 비트 단위 동일성을 보장
- 메모리 바운드:
문서 및 리소스
- 설치, 학습, 추론, 서빙, 손실 없는 R-ISD, 모델, 벤치마크 전 과정을 웹 문서로 제공
-
Installation
- GitHub 저장소를 클론 후
install.sh실행
- GitHub 저장소를 클론 후
-
Quick Start
- SGLang 서버 실행 후 REST API로 채팅 완성 요청 가능
-
Training
- 완전 마스크 시퀀스와 클린 시퀀스를 결합해 학습
- 4.5B 토큰, 8×H100 GPU, 2 epoch, stride 커리큘럼(N=2→3)
-
Inference & ISD
- MASK 위치에서 새 토큰 제안(q), 클린 위치에서 검증(p)
- 수용 기준
min(1, p(x)/q(x))으로 AR 분포 보장 - stride N=4에서 TPF=2.96, 약 3배 속도 향상
-
Serving (SGLang)
-
Paged KV 캐시**,** CUDA 그래프 캡처(+42~76%), Stationary-batch 디코드 루프(+11~21%), Argmax 제안(+11~15%), Paged-only 어텐션 커널(+10~14%)
- 전체 시스템은 기본 대비 2.1~2.5배 처리량 향상
-
-
Lossless R-ISD
- Gated LoRA(rank=128) 를 MASK 위치에만 적용
- 출력은 기본 AR 모델과 완전히 동일
- 오버헤드 약 1.12배
-
Model Zoo
- I-DLM-8B: Qwen3-8B 기반, AR 품질과 동등
- I-DLM-32B: Qwen3-32B 기반, LLaDA-2.1-flash(100B) 초월
- I-DLM-8B-LoRA: Gated LoRA(rank=128) 적용
-
Benchmarks
- 15개 벤치마크(지식, 수학, 코드, 명령 수행)에서 평가
- 재현용 스크립트 제공
인용 정보
- 논문: Introspective Diffusion Language Models (arXiv:2604.11035, 2026)
- 연구 기관: Together AI, UIUC, Princeton, Stanford, UT Austin
- 저자: Yifan Yu 외 14인
결론
- I-DLM은 확산 기반 언어 모델이 AR 모델의 품질과 속도를 동시에 달성한 첫 사례
- 자기 일관성 학습과 ISD 디코딩을 통해 병렬 생성의 한계를 극복
- SGLang 호환성, 손실 없는 가속, 높은 처리량 확장성으로 실용적 배포 가능성을 입증함
Hacker News 의견들
-
내가 이해한 게 맞다면, 이건 꽤 놀라운 접근법임
Qwen autoregressor를 여러 기법으로 변형해 diffuser처럼 작동하게 만들었고, 기존 diffuser보다 훨씬 뛰어난 성능을 보였음
LoRA 어댑터를 통해 base 모델의 분포에 맞춰 출력을 정렬할 수 있어서, 같은 시드로 바이트 단위 동일한 결과를 얻으면서도 속도는 거의 두 배 빨라짐
전문가라기보단 열정적인 실험가지만, 이건 정말 흥미로운 발전처럼 보임- 흥분할 만함. 이 논문은 AR 품질과 병렬 디코딩 사이의 다리를 놓았다고 주장함. 특히 손실 없는 LoRA 보조 모드가 가장 인상적임
- base 모델의 출력을 직접 생성하지 않고 비교할 수 있다는 게 이해되지 않음. 그렇다면 그 비교의 의미가 무엇인지 궁금함
- 사실 이건 diffusion이라기보다 multi-token prediction과 speculative decoding의 변형임
denoising 과정이 없고, 여전히 causal 구조를 유지함
구체적으로는, 여러 MASK 토큰을 사용해 한 번에 여러 토큰을 예측하도록 훈련하고, 추론 시에는 이를 병렬로 생성해 속도를 높이는 방식임
예를 들어, “what is 2+2” 뒤에 MASK 5개를 붙여 한 번에 5개의 다음 토큰을 예측함
이렇게 하면 matrix-vector 대신 matrix-matrix 연산을 수행해 메모리 효율이 높아짐
다만 k(예측 토큰 수)를 늘릴수록 품질이 급격히 떨어지며, 논문에서도 k=8에서 이미 저하가 나타남
결국 4-token 예측 기반의 self-speculative decoding으로, 기존 한계를 완전히 없애진 않지만 흥미로운 훈련 방식임
관련 설명은 이전 글에 있음
-
작년에 잠깐 Gemini 응답이 diffusion 방식처럼 점진적으로 나타나는 걸 본 적이 있음
실험 중이었는지, 단순한 시각적 효과였는지는 모르겠지만 흥미로운 현상이었음 -
혹시 여기 텍스트 생성용 Diffusion을 진지하게 실험 중인 사람이 있는지 궁금함
- Inception Labs가 이 분야를 꽤 오래 연구해온 듯함
속도는 놀랍지만 첫 토큰 지연과 출력 품질이 과제로 남아 있음
속도와 정확도가 일정 수준만 올라가면, 저비용 모델이나 비동기 작업용으로 충분히 실용화 가능할 것 같음
또, 더 긴 텍스트를 한 번에 확산시켜 추론 능력을 강제로 높이는 실험도 흥미로울 듯함 - 현재는 local LLM 영역에서 speculative decoding 용도로 탐구 중임
관련 내용은 Emergent Mind 글 참고 - Mercury 2는 지연 시간과 가격 면에서 UX 실험에 매우 매력적임
예전의 Gemini Flash Lite보다 훨씬 부드럽게 작동해, 자동 태깅이나 링크 생성 같은 작업에 적합함
다만 Haiku 3.5 수준의 도구 호출 성능은 아직 부족함
입력이 충분하고 출력이 짧은 작업에는 dLLM이 잘 맞으며, 탭 자동완성 같은 영역에서도 가능성이 있음 - 나도 실험해봤는데, 일반 LLM과는 다른 직관적 접근이 필요함. 특정 문제에는 매우 잘 맞음
- Swift로 WeDLM을 구현 중인데, 아직 성능이 부족함
왼쪽에서 오른쪽으로 생성하되 슬라이딩 윈도우 내에서만 확산이 일어남. 윈도우가 16토큰 정도라 큰 차이는 없음
- Inception Labs가 이 분야를 꽤 오래 연구해온 듯함
-
전문가 수준은 아니지만, Diffusion이라면 전체 출력을 한 번에 생성해야 하는 것 아닌가 싶음
그런데 I-LDM 모델은 이전 컨텍스트를 사용해 다음 블록을 생성하는 것처럼 보임- 블록 단위 생성은 큰 속도 향상을 줌
예를 들어 두 토큰씩 생성하면 거의 2배 가까운 속도 향상이 생김
블록 크기가 커질수록 전체 생성 속도가 충분히 빨라져, 전부 한 번에 생성하는 것과 큰 차이가 없어짐
결국 중요한 건 품질 저하를 얼마나 줄이느냐인데, 이 논문은 그 부분을 잘 해결한 듯함
- 블록 단위 생성은 큰 속도 향상을 줌
-
이런 모델을 쓰려면 sglang으로 전환해야 하는지, 아니면 vLLM에서도 이미 지원하는지 궁금함
-
예전부터 블록 기반 diffusion 아키텍처가 LLM의 미래라고 생각했음
토큰 생성 속도를 동적으로 조절하고, 생성 중에 자기 수정이 가능한 구조 — 인간의 단기 기억 같은 시스템이 될 수 있을 것 같음
수학적 원리는 잘 모르지만, 그런 방향으로 발전하길 바람 -
릴리스 노트를 보니
2025-04-12: 코드 공개 및 I-DLM-8B, 32B, 8B-LoRA 릴리스
날짜가 오래된 것처럼 보이는데, 혹시 구버전인지 궁금함- 단순한 연도 오타임. 실제로는 며칠 전 HuggingFace에 업로드된 걸 확인했음
-
이 모델을 지금 바로 사용할 수 있는지 궁금함
-
diffusion 모델이 블록을 생성하고, 그 결과를 내적 검토(introspection) 한 뒤 다시 생성하는 식의 반복적 추론이 가능한지 궁금함
- 가능함. 첫 번째 출력을 다시 모델에 입력해 AR 추론 모델처럼 재평가하는 방식으로 구현할 수 있음