Fast Byte Latent Transformer (Fast-BLT) 연구 소개
바이트 단위 언어 모델(BLT)과 문제
대규모 언어 모델(LLM)을 사용해 보면 한 가지 묘한 경험을 하게 됩니다. 한국어, 중국어, 또는 흔치 않은 도메인의 텍스트를 입력할 때마다 영어에서는 잘 작동하던 모델이 갑자기 성능이 떨어지거나, 같은 문장에 대해 영어 대비 몇 배 많은 토큰을 쓰는 것을 발견합니다. 이는 우연이 아니라, 현재 LLM들이 의존하는 서브워드 토크나이저(subword tokenizer) 의 구조적 한계 때문입니다.
서브워드 토크나이저는 학습 단계에서 본 텍스트 분포에 맞춰 고정된 어휘 사전(vocabulary)을 만듭니다. 이로 인해 (1) 입력 노이즈에 취약하고, (2) 구조화된/도메인 외(out-of-domain) 입력 처리가 어렵고, (3) 문자 단위 이해 능력이 떨어지며, (4) 언어별 토큰 효율성이 크게 불균형해지는 문제가 발생합니다. 이런 한계를 근본적으로 우회하기 위해 등장한 것이 바이트 단위(byte-level) 언어 모델, 즉 토크나이저-프리(tokenizer-free) 모델입니다.
문제는 효율성입니다. 평균적으로 하나의 서브워드 토큰은 여러 바이트에 해당하므로, 동일한 텍스트를 표현하는 바이트 시퀀스는 토큰 시퀀스보다 몇 배나 길어집니다. 단순한 자기회귀(autoregressive) 바이트 모델은 학습과 추론 비용이 모두 폭증할 수밖에 없습니다.
이런 비용 문제를 완화하기 위해 Byte Latent Transformer(BLT) (
한국어 정리 글)가 제안되었습니다.
BLT는 바이트들을 가변 길이 패치(variable-length patch) 로 동적으로 묶고, 무거운 글로벌 트랜스포머는 패치 단위의 잠재 토큰(latent token)에서만 동작하게 함으로써 연산 비용을 크게 줄였습니다. 그러나 BLT가 해결한 것은 주로 연산량(computation) 문제였습니다. 실제 LLM 추론에서 더 큰 병목인 메모리 대역폭(memory bandwidth) 문제는 그대로 남아 있었습니다. 모델 가중치와 KV 캐시를 반복적으로 GPU 메모리에서 불러오는 비용이 추론 속도를 지배하는데, 바이트 단위 디코더는 여전히 한 번에 한 바이트씩 생성하기 때문입니다.
Fast-BLT 연구의 발상 전환: 잠재 표현은 그대로, 바이트 생성만 병렬화
본 논문 Fast-BLT(Fast Byte Latent Transformer) (FAIR at Meta, Stanford University, University of Washington 공동 연구)는 바로 이 메모리 대역폭 병목을 정조준합니다. 핵심 아이디어는 다음과 같습니다.
BLT의 계층적 잠재 토큰화는 그대로 유지하면서, 바이트 디코더가 한 번의 호출로 여러 바이트를 동시에 만들어내도록 만들 수 있는가?
연구진은 이 질문에 세 가지 방식으로 답합니다.
-
BLT-D (BLT Diffusion): 디코더에 블록 단위 이산 확산(block-wise discrete diffusion) 목적 함수를 추가하여, 마스킹된 바이트 블록을 한 번에 병렬로 생성합니다. 가장 빠른 변형으로, BLT 대비 메모리 대역폭을 최대 92\% 까지 감소시킵니다.
-
BLT-S (BLT Self-speculation): 어떤 학습도 새로 하지 않고, 기존 BLT의 로컬 디코더가 패치 경계를 넘어 드래프트(draft) 바이트를 만들고 풀 모델이 이를 검증(verify)합니다. 그리디 디코딩(greedy decoding) 결과를 정확히 보존하면서 최대 77\% 의 메모리 대역폭 감소를 얻습니다.
-
BLT-DV (BLT Diffusion + Verification): BLT-D의 확산 드래프트를 자기회귀 다음 바이트 예측으로 검증해, 속도와 품질의 중간 지점을 노립니다. 메모리 대역폭은 최대 81\% 감소합니다.
이는 마치 문장을 한 글자씩 받아쓰는 학생과 전체 단락을 한꺼번에 채우고 사후에 검토하는 학생의 차이와 같습니다. BLT-D는 후자에 해당하며, BLT-S/BLT-DV는 그 사이에서 정확도를 보장하는 사후 검토 절차를 추가한 방식입니다. 세 방법 모두 추가 모델이나 별도의 드래프트 네트워크 없이 BLT의 기존 컴포넌트만으로 가속을 달성한다는 점이 핵심입니다.
배경: BLT 아키텍처와 이산 확산 언어 모델
계층적 BLT: 인코더, 글로벌 모델, 디코더
BLT는 다음과 같은 세 가지 컴포넌트로 구성됩니다:
-
로컬 인코더(local encoder) \mathcal{E}: 길이 N 의 원시 바이트 시퀀스 x = [x_1; x_2; \dots; x_N] \in \mathcal{V}^N 을 임베딩한 뒤, 가변 길이 패치들로 묶어 M \approx N/4 개의 잠재 토큰(latent token) 표현 \mathbf{T} \in \mathbb{R}^{M \times d_{\text{global}}} 로 압축합니다. 패치 경계는 작은 보조 모델이 추정한 엔트로피 기반 분할(entropy-based segmentation) 로 결정되며, 예측 가능한 구간은 길게, 불확실한 구간은 짧게 묶입니다.
-
글로벌 트랜스포머(global transformer) \mathcal{G}: 잠재 토큰 시퀀스 \mathbf{T} 를 다음 잠재 토큰을 예측하기 위한 컨텍스트 표현 \mathbf{O} \in \mathbb{R}^{M \times d_{\text{global}}} 로 변환합니다. 이 모듈이 파라미터의 대부분을 차지합니다.
-
로컬 디코더(local decoder) \mathcal{D} : 잠재 토큰 \mathbf{O} 에 대한 크로스 어텐션(cross-attention) 을 통해 바이트 시퀀스 y \in \mathcal{V}^N 를 자기회귀적으로 출력합니다. 각 레이어는 다음과 같은 형태로 동작합니다.
\mathbf{B}_l = \mathbf{D}_{l-1} + \mathbf{W}_o\!\left(\mathrm{softmax}\!\left(\frac{\mathbf{Q}\mathbf{K}^\top}{\sqrt{d_k}}\right)\mathbf{V}\right), \quad \mathbf{D}_l = \mathrm{DecoderTransformerLayer}(\mathbf{B}_l).
이 구조 덕분에 BLT는 높은 연산 비용을 갖는 글로벌 모델을 패치당 한 번씩만 호출하며, 디코더는 가벼운 모듈로 유지됩니다. 하지만 바이트 출력은 여전히 한 번에 하나입니다. 평균 패치 크기가 4바이트라면, 패치 하나를 채우기 위해 디코더 호출이 4 회, 글로벌 모델은 1 회 필요합니다.
이산 확산 언어 모델(dLM): 마스크 채우기 관점의 디코딩
이산 확산 언어 모델(discrete diffusion language model, dLM) 은 토큰 시퀀스에 확률적 손상(corruption)을 정의하고, 이를 되돌리는 역과정을 학습합니다. 본 연구는 흡수 상태 이산 확산(absorbing discrete diffusion) 을 사용합니다. 깨끗한 시퀀스 x^0 에 대해, 잡음 수준 t \sim \mathcal{U}(0, 1) 을 뽑은 뒤, 각 위치를 독립적으로 \mathtt{[MASK]} 로 치환합니다.
모델은 손상된 시퀀스로부터 원래 토큰을 복원하는 디노이징 분포(denoising distribution) p_\theta(x^0_i \mid x^t, t) 를 학습합니다. 이 손실은 데이터 로그우도에 대한 단순화된 ELBO(Evidence Lower Bound) 상한에 해당하며, 개념적으로 마스크 언어 모델(masked language model) 과 매우 유사합니다. 추론 시에는 마스크 위치를 한꺼번에 디노이징하므로 자기회귀보다 훨씬 적은 모델 호출로 시퀀스를 생성할 수 있습니다.
기존 dLM은 보통 고정 길이 토큰 위에서 정의되어 BLT처럼 동적 패치를 사용하는 계층 구조와는 자연스럽게 맞물리지 않습니다. 이를 해결하는 것이 BLT-D의 핵심 과제였습니다.
BLT-D: 계층적 바이트 모델에 블록 확산 결합하기
BLT-D는 BLT의 인코더 \mathcal{E} 와 글로벌 모델 \mathcal{G} 는 그대로 두고, 디코더 \mathcal{D} 와 학습 손실만 변경합니다. 디코더는 마스킹된 고정 길이 블록을 한 번의 호출로 부분적으로 채워 나가는 블록 단위 이산 확산 으로 동작합니다. 여기에서는 BLT-D의 (1) 추론 절차, (2) 어텐션 마스크, (3) 언마스킹 전략, (4) 학습 절차로 나누어 살펴보겠습니다.
BLT-D 추론: 블록 단위 확산 디코딩
길이 N 의 프리픽스 x = [x_1; \dots; x_N] 이 주어지면, BLT-D는 다음과 같은 순서로 한 블록의 B 바이트를 생성합니다.
-
잠재 토큰 계산: 패처(Patcher)가 x 를 M 개 패치로 분할하면, 인코더 \mathcal{E} 가 잠재 토큰 \mathbf{T} 를 만들고, 글로벌 모델 \mathcal{G} 가 컨텍스트 잠재 토큰 \mathbf{O} = [\mathbf{o}_1; \dots; \mathbf{o}_M] 을 출력합니다.
-
블록 초기화: 디코더 입력으로 x' = [x_1; \dots; x_N; \underbrace{\mathtt{[MASK]}; \dots; \mathtt{[MASK]}}_{B \text{ 개}}] \in \mathcal{V}^{N+B} 를 구성합니다.
-
반복적 언마스킹: 디코더가 x' 에 대해 포워드 패스를 수행하고, 매 스텝마다 마스크 위치 중 1 \leq k \leq B 개를 선택해 모델 예측으로 채웁니다. 모든 마스크가 채워질 때까지 이 과정을 반복합니다. 일반적으로 s 번의 언마스킹 스텝만으로 B 바이트를 모두 채우며, s < B 일 때 가속이 발생합니다.
-
블록 이어붙이기: 채워진 블록을 시퀀스에 합친 뒤, 다시 1단계로 돌아가 패처/인코더/글로벌 모델을 호출해 다음 블록을 생성합니다.
따라서 BLT-D는 블록 간(across-block) 자기회귀, 블록 내(within-block) 확산의 준-자기회귀(semi-autoregressive) 구조입니다. 인코더와 글로벌 모델은 (평균 패치 크기보다 큰) 블록 단위로만 호출되므로, 디코더뿐 아니라 계층 전체의 호출 빈도가 함께 감소 합니다. 또한 깨끗한 프리픽스와 처음 M-1 개의 잠재 토큰은 캐시할 수 있어, 매 스텝마다 마지막 잠재 토큰과 현재 블록만 재계산하면 됩니다.
BLT-D의 어텐션 마스크: 깨끗한 프리픽스 vs. 마스킹된 블록
BLT-D 디코더의 핵심은 프리픽스(prefix)와 블록의 어텐션 패턴을 분리했다는 것입니다. i \in \{1, \dots, N+B\} 가 x' 의 위치, p(i) 가 위치 i 의 패치 인덱스라 할 때:
-
크로스-어텐션(latent token 참조): 깨끗한 프리픽스 위치(i \leq N)는 직전 패치의 잠재 토큰 \mathbf{o}_{p(i)-1} 에 주의를 둡니다(단, 각 패치의 마지막 바이트만 자신의 잠재 토큰 \mathbf{o}_{p(i)} 에 주의를 두며, 이는 표준 BLT와 동일합니다). 마스킹된 블록 위치(i > N)는 마지막 잠재 토큰 \mathbf{o}_M 한 곳만 바라봅니다.
-
셀프-어텐션(self-attention): 프리픽스 위치들은 인과적(causal) 어텐션, 블록 위치들은 양방향(bidirectional) 어텐션을 사용합니다. 즉 블록 내부의 마스크들은 서로를 자유롭게 참조하면서 동시에 디노이징됩니다.
이 마스크 구성 덕분에, 디코더는 기존 BLT의 인과적 디코딩 능력을 유지하면서 블록 내부에서는 양방향 정보 흐름을 활용할 수 있습니다. 같은 가중치를 인과적 마스크로 다시 돌리면 곧바로 표준 자기회귀 BLT처럼 동작하므로, 뒤에서 다루는 BLT-DV의 검증 단계가 자연스럽게 가능해집니다.
블록 언마스킹 전략
매 디코더 스텝마다 어떤 마스크를 언마스킹할지 선택하는 규칙이 속도와 품질을 결정합니다:
-
신뢰도 기반 언마스킹(Confidence-based Unmasking): 각 위치의 최대 예측 확률을 신뢰도로 보고, 임계값 \alpha 를 넘는 위치들을 한꺼번에 확정합니다(Ghazvininejad et al., 2019). 만약 임계값을 넘는 위치가 없다면 가장 신뢰도가 높은 한 위치를 강제로 언마스킹해 진행이 멈추지 않게 합니다.
-
엔트로피 기반 샘플링(Entropy-bounded Sampling, EB Sampling): 각 마스크 위치의 예측 엔트로피를 오름차순으로 정렬하고, 누적 엔트로피가 임계값 \gamma 이하인 최대 부분집합을 한 번에 디코딩합니다(Ben-Hamu et al., 2025). top-p 샘플링 과 결합 가능해 생성 다양성을 조절할 수 있습니다.
후자는 마스크 토큰 사이의 상호 정보(mutual information) 를 직접 계산하기 어렵다는 점을 고려해 주변 엔트로피의 합 이라는 상한을 사용한다는 점이 흥미롭습니다.
BLT-D 학습: 두 가지 목적 함수의 결합
BLT-D는 같은 모델이 디퓨전 모드와 자기회귀 모드 양쪽으로 모두 동작 하도록, 데이터 전처리와 손실 함수가 다음과 같이 설계됩니다.
1) 블록 구성(Block Construction)
원시 바이트 시퀀스 x = [x_1; \dots; x_N] 가 M 개 패치로 분할되고 패치 p_i 가 인덱스 s_i 에서 시작한다고 합시다. BLT-D는 두 번째 패치 이후의 패치마다 시작점 s_i 로부터 고정 길이 B 의 블록 b_{i-1} = [x_{s_i}; x_{s_i+1}; \dots; x_{s_i+B-1}] 를 만듭니다(첫 패치는 1바이트라 블록 구성에서 제외됩니다). 보통 B 는 평균 패치 크기보다 크게 설정되므로, 각 블록은 현재 패치의 끝을 넘어 미래 패치의 바이트까지 포함 하게 됩니다. 이 설계가 바로 디코더가 평균 패치 크기 이상의 미래 바이트 를 예측하도록 만드는 핵심입니다. 블록이 시퀀스 끝을 넘으면 \mathtt{[PAD]} 로 채우고, 모든 블록은 이어 붙여 x_{\text{block}} \in \mathcal{V}^{B \cdot (M-1)} 를 만듭니다. 각 바이트의 원래 위치 인덱스 [s_i; s_i+1; \dots; s_i+B-1] 는 그대로 보존되어 디코더의 RoPE 위치 인코딩 에 사용됩니다.
2) 확산 과정(Diffusion Process)
각 학습 샘플에 대해 t \sim \mathcal{U}(0, 1) 을 뽑고, x_{\text{block}} 의 각 바이트를 독립적으로 확률 t 로 \mathtt{[MASK]} 로 치환해 손상된 시퀀스 x_{\text{block}}^t 를 만듭니다. 디코더 입력은 깨끗한 시퀀스와 손상된 시퀀스를 연결한 형태 입니다.
3) 디코더 어텐션(Decoder Attention)
학습 시 디코더의 어텐션 마스크는 다음과 같이 구성됩니다:
-
크로스 어텐션: 깨끗한 패치 p_i 의 바이트는 (마지막 바이트를 제외하고) \mathbf{o}_{i-1} 을, 마지막 바이트는 \mathbf{o}_i 를 봅니다. 손상된 블록 b_{i-1}^t 의 바이트는 모두 \mathbf{o}_{i-1} (직전 잠재 토큰)을 참조 해, 블록과 패치의 정렬을 유지합니다.
-
셀프 어텐션: 깨끗한 시퀀스 부분은 인과적 마스크, 손상된 블록 내부는 양방향 마스크를 사용하며, 손상된 블록의 바이트는 이전 깨끗한 바이트들에 대해서는 인과적으로 어텐션을 둡니다. 이렇게 함으로써 한 번의 포워드 패스로 모든 블록의 디노이징을 병렬 로 학습할 수 있습니다.
4) 결합 손실(Combined Loss)
손실 함수는 깨끗한 시퀀스에 대한 자기회귀 다음 바이트 예측 손실과 손상된 블록에 대한 디노이징 손실의 합입니다. 먼저 깨끗한 시퀀스 손실(Clean Sequence Loss) 은 표준 자기회귀 형태입니다:
디노이징 손실(Masked Diffusion Loss) 은 마스킹된 위치에서만 계산되며, 흡수 상태 이산 확산의 ELBO 유도에 따라 1/t 로 재가중 됩니다:
전체 학습 손실(Total Training Loss) 은 위 두 손실의 단순 합입니다:
이 이중 학습 덕분에 BLT-D는 한 세트의 가중치로 두 가지 추론 모드를 모두 지원합니다. 블록 마스크 + 양방향 어텐션으로 돌리면 확산 디코딩, 인과적 어텐션으로 돌리면 표준 자기회귀 디코딩이 되며, 이 두 모드의 결합이 곧 BLT-DV의 토대가 됩니다. 향후 두 손실 사이의 가중치 \lambda 를 도입해 검증 정확도를 더 높이는 방향이 후속 연구로 제안되어 있습니다.
BLT-S와 BLT-DV: 추론만 바꿔 얻는 가속
BLT-S와 BLT-DV는 추측 디코딩(speculative decoding) 의 발상을 BLT의 계층 구조에 그대로 옮겨 적용합니다. 차이점은 다음과 같습니다. 보통의 추측 디코딩은 별도의 드래프트 모델을 두고 그 출력을 타깃 모델이 검증하지만, BLT는 이미 가벼운 로컬 디코더와 무거운 인코더/글로벌 모델로 분해되어 있어 추가 모델 없이도 같은 모델의 컴포넌트만으로 드래프트-검증 구조를 만들 수 있습니다.
두 방법이 공유하는 검증 절차는 다음과 같습니다.
-
드래프트 시퀀스 x' 에 대해 패처/인코더/글로벌/디코더 전체를 한 번 돌려 그리디(Greedy)한 다음 바이트 예측 y 를 만듭니다.
-
드래프트 위치 i = l+1, \dots, l+r 을 순회하며, x'_i 와 y_{i-1} 이 같으면 수용하고 다르면 첫 불일치 위치에서 모델 예측으로 교체 한 뒤 중단합니다.
-
모든 바이트가 일치하면 검증 단계에서 얻은 다음 바이트 예측 하나를 공짜 바이트(free byte) 로 추가 수용합니다.
이 절차는 확률 분포가 아닌 바이트 자체의 일치를 요구하므로 표준 추측 디코딩보다 수용 기준이 엄격합니다. 그 대신 그리디 디코딩 결과의 정확한 보존이라는 강한 보장을 얻습니다. 온도가 0이 아닌 샘플링은 거부 샘플링과 결합해 확장 가능하지만, 본 논문에서는 그리디 설정만 평가합니다.
BLT-S: 자기 자신을 드래프터(drafter)로 쓰는 자기 추측
표준 BLT 추론에서 디코더는 엔트로피 기반 패처가 "여기서 새 패치를 시작해야 한다" 고 판단할 때까지만 바이트를 생성합니다. 이는 보통 약 4 바이트마다 발생하며, 그때마다 무거운 글로벌 모델이 다시 호출됩니다.
BLT-S(BLT Self-speculation) 는 단순한 발상에서 출발합니다. 디코더가 패치 경계를 넘어 고정된 윈도우 크기 k 까지 계속 자기회귀적으로 바이트를 생성하게 한 뒤, 패처가 시퀀스를 다시 분할하고 인코더/글로벌/디코더 전체를 한 번 돌려 검증합니다. 검증된 바이트와 드래프트가 일치하면 그대로 수용하고, 불일치가 처음 발생한 위치에서 드래프트는 폐기되며 모델의 예측으로 대체됩니다.
이 방식은 그리디 디코딩 결과를 표준 BLT와 완전히 동일하게 보존하면서도, 패치 경계마다 호출되던 글로벌 모델을 덜 자주 호출하게 만듭니다. 디코더 NFE는 늘지만(드래프트하느라 더 많이 호출), 글로벌 NFE의 큰 감소가 이를 상쇄하고도 남습니다. 일반적인 추측 디코딩(speculative decoding) 과 달리 별도의 드래프트 모델, 추가 헤드, 추가 학습이 전혀 필요 없다는 점이 차별점입니다. BLT의 기존 가벼운 로컬 디코더가 그대로 드래프터 역할을 합니다.
BLT-DV: 확산을 드래프트, 자기회귀를 검증으로
BLT-DV(BLT Diffusion + Verification) 는 BLT-D의 두 가지 학습 목적 중 자기회귀 부분을 검증에 활용합니다. 앞서 본 결합 손실에서 \mathcal{L}_{\text{clean}} 으로 다음 바이트 예측을 동시에 학습했기 때문에, 동일한 가중치에 인과적 마스크만 다시 씌우면 자기회귀 모델로 변신 할 수 있습니다. 즉 드래프트와 검증 모두 같은 모델 파라미터 가 수행하며, 변경되는 것은 디코더의 셀프/크로스 어텐션 마스크뿐입니다.
BLT-DV의 한 스텝은 다음과 같이 진행됩니다:
-
디퓨전 디코더가 마스크 블록을 채워 드래프트 블록 을 생성합니다(
do_verify=True분기). -
같은 모델에 인과적 마스크를 씌워 풀 패스를 한 번 더 돌려 다음 바이트 예측을 만듭니다.
-
Algorithm 2의 검증 절차를 적용해 일치하지 않는 첫 위치까지만 수용합니다.
실험적으로 흥미로운 발견 중 하나는, 단일 스텝 디퓨전(one-step diffusion) + 검증 의 조합이 가장 빠른 추론을 만든다는 점입니다. 단일 스텝 디퓨전만 사용하면 품질이 급격히 떨어지지만, 자기회귀 검증이 이 결함을 "마치 교정자가 빠른 초고를 다듬듯이" 보정해 줍니다. 블록 크기 B 와 언마스킹 전략의 선택이 생성 속도와 검증 수용률 사이의 균형을 결정합니다.
사전 학습 및 실험 설정
모델, 데이터, 하이퍼파라미터
연구진은 BLT와 BLT-D-{4, 8, 16}(블록 크기 B \in \{4, 8, 16\})을 1B 파라미터와 3B 파라미터 두 규모로 학습했습니다.
- 1B 모델: 글로벌 1.28\text{B}, 인코더 19\text{M}, 디코더 160\text{M}
- 3B 모델: 글로벌 2.82\text{B}, 인코더 26\text{M}, 디코더 160\text{M}
- 패치 설정: 엔트로피 패칭, 평균 패치 크기 4 바이트, 최대 패치 크기 8 바이트
- 사전 학습 데이터: BLT-1T(1조 토큰, Datacomp-LM 일부 포함)
평가 태스크와 효율성 지표
평가는 두 유형의 생성 태스크로 진행됩니다.
- 번역: FLORES-101의 French→English, German→English(4-shot), 지표는 SentencePiece BLEU
- 코드 생성: HumanEval(0-shot)과 MBPP(3-shot), 지표는 \mathtt{pass@1}
모든 태스크 추론은 그리디 디코딩 으로 수행하며, BLT-D 변형에 대해서는 신뢰도 기반 언마스킹과 EB 샘플링 양쪽에 대해 하이퍼파라미터 스윕을 수행합니다.
추론 효율성은 다음 세 가지 지표로 측정됩니다.
- 디코더 NFE(Network Function Evaluation): 출력 시퀀스당 평균 디코더 포워드 패스 수
- 인코더/글로벌 NFE: 출력 시퀀스당 평균 인코더 및 글로벌 모델 포워드 패스 수
- 메모리 대역폭(memory bandwidth): 16-bit 정밀도 기준 파라미터 로드량을 추정한 값으로, 다음 식으로 계산됩니다.
여기서 b = 2 바이트, N_{\text{dec}}, N_{\text{enc}} 는 각각 디코더와 인코더/글로벌의 평균 호출 수, P_* 는 각 모듈의 파라미터 수입니다. 작은 배치 크기와 작은 KV 캐시를 가정한 로컬 서빙(local serving) 시나리오에 가까운 가정입니다.
Fast-BLT 실험 결과: 속도와 품질의 트레이드오프 지도
BLT vs. BLT-D: 블록 크기에 따른 효율-품질 곡선
3B 모델 비교에서 BLT-D 계열은 모든 태스크에서 BLT 대비 NFE와 메모리 대역폭이 큰 폭으로 감소합니다(이하 결과는 신뢰도 임계값 \alpha = 0.7 기준).
- BLT-D-4: BLT의 태스크 점수에 거의 근접 하면서도 NFE와 메모리 대역폭은 절반 이하로 줄어듭니다. 가장 균형 잡힌 변형입니다.
- BLT-D-8: 효율성에서 BLT-D-4보다 한층 앞서며, 특히 번역에서 강한 성능을 유지합니다.
- BLT-D-16: 가장 빠른 변형으로, BLT 대비 메모리 대역폭을 87\% ~ 92\% 감소시킵니다. 번역은 여전히 경쟁력이 있지만, 코드 생성 에서는 성능이 다소 하락합니다. 이는 코드처럼 국소적 의존성이 강한 도메인 에서는 큰 블록의 병렬 예측이 어렵다는 직관과 일치합니다.
흥미롭게도 BLT-D 계열의 인코더/글로벌 호출도 함께 줄어드는데, 이는 패치 경계가 줄어들면서 글로벌 모델 호출 자체가 적어지기 때문입니다. 다시 말해 BLT-D는 디코더만 빠르게 만든 것이 아니라, 계층 전체를 덜 자주 부르도록 만든 것입니다.
확장 기법 비교: BLT-S와 BLT-DV의 위치
확장 기법들을 도입한 3B 모델 비교 결과(k \in \{8, 16\}, B \in \{8, 16\}), 다음과 같은 양상이 관찰되었습니다.
-
BLT-S(self-speculation): 디코더 NFE는 BLT보다 증가 하지만, 글로벌 NFE는 크게 감소합니다. 결과적으로 메모리 대역폭은 최대 77\% 감소하면서, 태스크 성능은 BLT와 완전히 동일 합니다(그리디 결과 보존). 글로벌 모델이 큰 환경에서 가장 안전한 가속 기법 이라 부를 만합니다.
-
BLT-DV(diffusion + verification): BLT-D 대비 글로벌 NFE가 늘지만, 태스크 점수가 회복됩니다. 메모리 대역폭은 최대 81\% 감소합니다. 단일 스텝 디퓨전과 결합했을 때 가장 빠른 BLT-DV 설정이 나타납니다.
-
BLT-D-8/16: 검증 없이도 여전히 가장 빠른 옵션이지만, 코드 생성 같은 엄격한 시퀀스 일관성 이 요구되는 태스크에서는 점수가 떨어집니다.
저자들은 이를 한 줄로 요약합니다. "BLT-D는 절대 속도, BLT-S는 정확도 보존, BLT-DV는 중간 지점"이라는 식의 지도(map) 가 만들어지는 셈이며, 응용 시 요구 사항에 맞게 선택할 수 있습니다.
우도 기반 평가: 자기회귀 능력은 보존되는가
연구진은 BLT-D가 디퓨전 학습으로 인해 자기회귀 능력을 잃지는 않았는지를 확인하기 위해, 인과적 마스크를 적용한 BLT-D로 ARC-Easy, ARC-Challenge, PIQA, HellaSwag, MMLU 등 5개 벤치마크에서 우도 기반 평가를 수행했습니다. 결과적으로 BLT-D 변형들은 BLT 베이스라인에 근접한 점수 를 보였습니다. 즉, 디퓨전 목적 함수와 다음 바이트 예측을 함께 학습해도 언어 이해 및 추론 능력은 거의 손상되지 않습니다. 이 관찰은 BLT-DV의 검증 단계 신뢰도에 대한 강력한 근거가 됩니다.
다양성과 효율성의 트레이드오프
비조건 생성에서 엔트로피 기반 샘플링과 top-p 샘플링을 조합한 분석을 보면, TTR(type-token ratio, 어휘 다양성 지표) 가 증가할수록 필요한 디코더 호출 수도 함께 증가합니다. 즉, 모델이 반복적이고 예측 가능한 텍스트 를 생성할 때는 적은 호출로도 충분하지만, 다양하고 예측 어려운 텍스트 를 생성할 때는 더 많은 디코더 패스가 필요합니다. 이는 블록 확산 디코딩이 연산 비용과 생성 다양성 사이의 트레이드오프를 사용자가 명시적으로 탐색 할 수 있게 해 준다는 점에서 흥미로운 부수 효과입니다.
한계점 및 향후 연구 방향
저자들은 평가의 가장 큰 한계로, 효율 지표가 NFE와 메모리 대역폭 추정치 라는 대리 지표(proxy metric) 라는 점을 솔직하게 인정합니다. 실제 추론 속도는 커널 구현, 하드웨어 활용도, 배칭 전략, KV 캐시 관리 등 구현 디테일 에 크게 좌우되므로, 고도로 최적화된 추론 엔진 위에서 BLT, BLT-D, BLT-S, BLT-DV를 벤치마킹하는 것이 자연스러운 다음 단계입니다.
향후 연구로 제안된 방향은 구체적입니다.
-
다른 패치 크기: 평균 4 바이트, 최대 8 바이트 외의 설정 탐색
-
디퓨전과 자기회귀 손실의 가중치 조정: 두 손실 사이에 가중치를 도입해 BLT-DV 검증 정확도를 더 끌어올릴 가능성
-
학습 스케일 확장: 디퓨전 언어 모델은 학습 스케일에 특히 민감하다는 보고(Ni et al., 2025)가 있어, 추가 사전 학습으로 격차 축소 가능
-
디코더 파라미터 할당: 더 큰 디코더는 BLT-D/BLT-DV에 유리하지만, BLT-S에는 오히려 오버헤드를 키울 수 있어 모델 컴포넌트별 크기 최적화 연구 필요
거시적으로 보면, Fast Byte Latent Transformer 는 토크나이저-프리 LLM의 가장 큰 실용적 장애물이었던 추론 효율성을 알고리즘 수준 에서 크게 좁힌 작업입니다. 메모리 대역폭이 절반에서 90% 이상 줄어들 수 있다면, 언어/도메인 불균형이 없는 진짜 다국어 LLM, 문자 단위 이해가 필수인 음성/코드/생물학 시퀀스 모델, 노이즈에 강인한 엣지 추론 등 그동안 비용 때문에 미뤄졌던 응용들이 한층 가까워집니다. 이산 확산과 추측 디코딩이 바이트 단위 계층 구조 라는 새로운 토대 위에서 만나면서 만들어 낸 가능성이라는 점도, 분야 전체에 시사하는 바가 큽니다.
Fast Byte Latent Transformer 논문
Byte Latent Transformer(BLT, 선행 연구) 논문
Block Diffusion(BLT-D의 디퓨전 토대) 논문
더 읽어보기
이 글은 GPT 모델로 정리한 글을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다. ![]()
파이토치 한국 사용자 모임
이 정리한 이 글이 유용하셨나요? 회원으로 가입하시면 주요 글들을 이메일
로 보내드립니다! (기본은 Weekly지만 Daily로 변경도 가능합니다.)
아래
쪽에 좋아요
를 눌러주시면 새로운 소식들을 정리하고 공유하는데 힘이 됩니다~ ![]()









