AI 서비스에서 답변의 품질만큼 자주 체감하는 요소가 응답 속도입니다. 질문에 대한 답이 화면에 조금씩 나타나는 동안 사용자는 기다립니다. 여러 번 모델을 호출하는 에이전트에서는 이러한 대기가 작업 단계마다 반복됩니다. 더 빠른 응답을 만들려면 모델의 크기나 서버뿐 아니라 텍스트를 생성하는 방식도 살펴볼 필요가 있습니다.
확산형 언어모델(Diffusion Language Model, dLLM)은 여러 위치의 토큰을 병렬로 예측하고 반복적인 정제 과정을 거쳐 문장을 완성하는 접근입니다. 최근에는 공개 연구 모델과 상용 서비스 양쪽에서 이 방식을 발전시키고 있습니다. 이 글에서는 기본 원리, 블록 단위 생성과 토큰 수정 그리고 실제 서비스에서 확인해야 할 성능 기준을 설명합니다.
1. 자기회귀 모델은 어떻게 문장을 생성할까
현재 널리 쓰이는 자기회귀(Autogressive, AR) 언어모델의 기본 디코딩은 앞서 나온 토큰을 조건으로 다음 토큰을 예측하는 방식입니다. 예를 들어 “AI는 문서를 빠르게 요약합니다”라는 문장을 만들 때 이미 생성한 부분을 바탕으로 뒤에 올 내용을 차례로 결정합니다.
여시서 토큰은 모델이 처리하는 텍스트 단위입니다. 한 글자나 한 단어가 항상 일치하지 않으며 화면에 표시되는 단위와도 다를 수 있습니다. 아래 그림에서는 생성 순서를 쉽게 보기 위해 문장을 네 개의 어절로 나누었습니다.
이 순차적 구조에서는 다음 위치의 예측이 이전 위치의 결과에 의존합니다. 확산형 언어모델은 여러 위치의 후보를 함께 예측할 수 있도록 생성 과정을 구성합니다. 다만 병렬 예측이 곧 한 번의 계산으로 완성된 답변을 얻는다는 뜻은 아닙니다. 문장을 완성하기까지 여러 차례의 모델 실행이 필요할 수 있습니다.

2. 마스킹으로 이해하는 텍스트 확산
확산 모델은 훼손된 데이터에서 원래의 구조를 복원하는 과정을 학습합니다. 텍스트 확산에는 여러 설계가 있지만 여기서는 LLaDA가 사용하는 마스킹 기반 방식을 예로 들겠습니다. 텍스트 일부를 [MASK]라는 기호로 가리고 주변 문맥을 이용해 가려진 토큰을 예측하는 방식입니다.
학습 단계에서는 문장의 토큰을 다양한 비율로 가립니다. 예를 들어 “AI는 [MASK] 빠르게 [MASK]”와 같은 입력에서 가려진 부분을 복원하도록 모델을 학습합니다. 이때 여러 위치를 함께 예측할 수 있고 왼쪽분 아니라 현재 보이는 오른쪽 문맥도 활용됩니다.
응답을 생성할 때는 사용자 프롬프트와 함께 마스킹된 응답 영역을 준비합니다. 모델이 가려진 위치의 후보를 예측하면 정해진 샘플링 정책에 따라 일부를 남기고 불확실한 위치는 다시 처리합니다. 이러한 과정을 반복해 응답을 완성합니다. 반복 횟수와 토큰 선택 정책은 속도와 품질을 조절하는 요소가 됩니다.
따라서 이 방식은 단순한 빈칸 채우기 기능보다 넓은 의미를 가집니다. 마스킹된 응답 영역에서 출발해 새로운 텍스트를 생성하는 모델이기 때문입니다. 동시에 모든 확산형 언어모델이 같은 마스킹·정제 규칙을 사용한다고 이해해서도 안됩니다.
3. 블록 단위로 생성하면 무엇이 달라질까
문장 전체를 한꺼번에 다루는 방식 외에도 응답을 여러 블록으로 나누는 블록 확산(Block Diffusion)이 있습니다.
블록 사이에는 순서를 두고 현재 블록 안에서는 여러 토큰을 병렬로 예측합니다. 이렇게 하면 순차 생성과 병렬 정제를 한 구조 안에서 결합할 수 있습니다.

Block Diffusion 연구는 가변 길이 생성, 병렬 샘플링, KV 캐시 활용을 함께 다룹니다. KV 캐시는 이전 문맥의 어텐션 계산에 필요한 정보를 재사용하는 장치입니다. 캐시 재사용 범위는 모델의 어텐션 구조와 확정된 문맥에 따라 달라지므로 확산 모델 전반에 일괄 적용되는 특성으로 볼 수 없습니다.
LLaDA2.0은 사전 학습된 자기회귀 모델을 확산형 모델로 전환하는 학습 절차를 제시했습니다. 블록 크기를 점진적으로 바꾸는 학습과 후속 정렬을 거쳐 총 파라미터 16B, 100B의 MoE 모델을 공개했습니다. 이는 모델을 처음부터 학습하는 접근뿐 아니라 기존 모델의 지식을 활용하는 접근도 연구되고 있음을 보여줍니다.
4. 생성한 토큰을 다시 바꾸는 LLaDA2.1
여러 위치를 병렬로 예측하면 문맥에 맞지 않는 조합이 생길 수 있습니다. LLaDA2.1은 이러한 문제를 다루기 위해 마스크를 토큰으로 채우는 연산과 이미 나온 토큰을 다른 토큰으로 바꾸는 연산을 함께 사용합니다.
Mask-to-Token(M2T)은 아직 비어 있는 위치를 채우는 연산입니다. Token-to-Token(T2T)은 현재 문맥을 다시 평가해 기존 토큰을 수정하는 연산입니다. LLaDA2.1은 두 연산에 적용할 신뢰도 기준을 조절하고 속도 중심 설정과 품질 중심 설정을 구분합니다.

여기서 주의할 점은 모든 확산형 모델이 기존 토큰을 자유롭게 고친다는 의미는 아니라는 것입니다. 재마스킹 여부와 수정 가능한 위치, 토큰을 확정하는 기준은 모델과 디코딩 정책에 따라 다릅니다. LLaDA2.1의 토큰 편집은 이러한 설계 선택을 구체화한 사례로 이해할 수 있습니다.
5. 연구 모델과 상용 서비스에서 확인되는 흐름
확산형 언어모델의 현재 모습을 살펴볼 때는 논문, 공개 구현, 제품 발표의 역할을 구분하면 이해하기 쉽습니다.
논문은 방법과 실험 조건을, 공개 구현은 실행 방식을, 제품 발표는 제공 형태와 활용 사례를 확인하는 자료입니다.
| 사례 | 자료에서 확인할 수 있는 내용 | 읽을 때 확인할 점 |
| LLaDA2.1 | 토큰 편집을 결합한 생성 방법과 속도·품질 설정 | 논문의 설정과 공개 구현을 함께 확인 |
| Gemini Diffusion | 블록 생성과 반복 정제를 소개하는 실험 모델 | 공식 페이지에서 실험용 데모로 안내 |
| Mercury 3 | 최근 발표된 Inception의 상용 확산형 언어모델 | 제품 발표의 성능 수치와 활용 사례는 제공사 측 결과 |
Mercury 3 발표는 음성·채팅 지원, 교육, 검색 에이전트와 같은 활용 사례를 제시합니다. 이러한 사례는 확산형 모델이 연구를 넘어 제품에 적용되고 있다는 근거가 됩니다. 다만 서로 다른 회사가 발표한 토큰 처리 속도를 그대로 나열해 우열을 정하면 하드웨어나 입력 길이 등 조건의 차이를 놓치기 쉽습니다.
6. 생성 속도와 사용자가 기다리는 시간은 다르다.
초당 생성 토큰 수(Tokens Per Second, TPS)는 중요한 지표지만 그것만으로 서비스 경험을 설명할 수 없습니다. Google DeepMind는 Gemini Diffusion 페이지에서 오버헤드를 제외한 평균 샘플링 속도 1,479 tokens/s 와 오버헤드 0.84 초를 구분해 제시합니다. 이 수치는 해당 평가의 발표값이며 전체 요청의 응답 속도와 동일한 의미가 아닙니다.
실제 서비스에서는 요청 대기, 입력 처리, 생성, 검증, 네트워크 전송을 거쳐 결과가 도착합니다. 짧은 답변에서는 생성 외 구간이 상대적으로 크게 작용할 수 있고 긴 답변에서는 생성 속도의 영향이 커질 수 있습니다. 따라서 도입을 검토한다면 다음과 같은 기준으로 비교하는 것이 좋습니다.
| 평가 항목 | 비교 방법 |
| 답변 품질 | 같은 질문 세트로 정확성, 지시 준수, 형식 준수를 평가 |
| 첫 응답 지연 | 사용자가 읽을 수 있는 첫 출력이 도착하기까지 측정 |
| 전체 완료 시간 | 요청 시작부터 최종 결과가 완성될 때까지 측정 |
| 비용과 자원 | 같은 품질 기준에서 API 비용 또는 GPU 자원 사용량 비교 |
블록을 언제 확정해 사용자에게 보여줄지도 확인해야 합니다. 한 블록의 내부 예측이 빠르더라도 확정 전까지 출력하지 않는다면 사용자가 느끼는 첫 응답 속도는 별도로 달라집니다. 또한 단순히 반복 횟루를 줄인 설정과 품질을 우선한 설정을 같은 조건처럼 비교하지 않아야 합니다.
7. 기업에서는 어떤 업무부터 검토할 수 있을까
기업 적용을 위한 검증 대상으로는 짧은 문장 편집, 형식이 정해진 요약, 코드 수정처럼 결과의 적합성을 확인하기 쉬운 업무를 먼저 고려할 수 있습니다. 예를 들어 같은 원문을 여러 표현으로 바꾸는 업무에서는 사실 보존, 금지 표현, 출력 형식을 함께 평가할 수 있습니다. 이는 특정 모델의 성능을 보장하는 활용 사례가 아니라 비교 실험을 설계하기 위한 제안입니다.
RAG 서비스에서는 검색 결과를 만드는 단계와 답변을 생성하는 단계를 구분해야 합니다. 생성 모델을 바꿔도 검색된 문서가 부정확하면 원하는 답을 얻기 어렵습니다. 확산형 모델을 평가할 때도 같은 검색 문서를 제공한 뒤 근거 충실성, 답변 품질, 완료 시간을 비교하면 생성 방식의 영향을 명확히 볼 수 있습니다.
도입 형태 역시 함께 살펴볼 부분입니다. 공개 모델은 모델별 추론 구현과 실행 설정을 확인해야 하며 상용 API는 실제 제공 기능과 운영 조건을 확인해야 합니다. LLaDA 계열은 공식 저장소에서 관련 구현과 모델 자료를 확인할 수 있고 Mercury 3는 공식 발표에서 API 제공을 안내하였습니다.
확산형 언어모델은 여러 위치를 함께 예측하고 정제하는 방식으로 텍스트 생성의 선택지를 넓히고 있습니다.
앞으로의 관전 포인트는 특정 속도 수치 하나보다 품질을 유지하면서 어느 업무의 대기 시간과 자원 사용량을 줄이는 것입니다. 기업에서도 동일한 입력과 품질 기준을 갖춘 작은 비교 실험을 통해 적용 가능성을 판단할 수 있습니다.
참고문헌
[1] Shen Nie 외. Large Language Diffusion Models. arXiv:2502.09992, 2025. 마스킹 기반 학습과 생성 원리. https://arxiv.org/abs/2502.09992
[2] Marianne Arriola 외. Block Diffusion: Interpolating Between Autoregressive and Diffusion Language Models. arXiv:2503.09573, 2025. 블록 단위 생성과 캐시 활용. https://arxiv.org/abs/2503.09573
[3] Tiwei Bie 외. LLaDA2.0: Scaling Up Diffusion Language Models to 100B. arXiv:2512.15745, 2025. 자기회귀 모델의 전환 학습. https://arxiv.org/abs/2512.15745
[4] Tiwei Bie 외. LLaDA2.1: Speeding Up Text Diffusion via Token Editing. arXiv:2602.08676, 2026. M2T와 T2T 및 디코딩 설정. https://arxiv.org/abs/2602.08676
[5] Google DeepMind. Gemini Diffusion 공식 모델 페이지. 생성 방식과 평가 지표. https://deepmind.google/models/gemini-diffusion/
[6] Inception. Diffusion at Scale: Introducing Mercury 3. 2026년 10월 19일. 제품 제공 형태와 활용 사례. https://www.inceptionlabs.ai/blog/introducing-mercury-3
[7] InclusionAI. LLaDA2.X 공식 GitHub 저장소. 공개 구현과 모델 관련 자료. https://github.com/inclusionAI/LLaDA2.X
