Speculative decoding (SD)은 토큰별 생성의 순차적 비용을 줄여 대규모 언어 모델(LLM) 추론 속도를 가속화합니다. 고급 SD 방법들은 전체 블록을 한 번의 순방향 패스(forward pass)로 예측하는 병렬 드래프터(drafters)를 사용하여 제안 비용(proposal cost)을 줄이지만, 전반적인 속도 향상은 여전히 수용 길이(acceptance length)에 달려 있습니다. 온정책 증류(On-policy distillation, OPD)는 잘 훈련된 드래프터를 수용 길이 평탄 구간(plateaus) 너머로 밀어 올릴 수 있지만, 기존 파이프라인들은 순차적인 드래프트 및 검증 롤아웃(draft-and-verify rollouts)을 통해 감독(supervision) 데이터를 수집합니다. 우리의 핵심 통찰은 온정책 감독이 이러한 의존성을 물려받을 필요가 없다는 것입니다. 즉, 하나의 드래프트 블록은 오직 참조 접두사(reference prefix)와 드래프트 샘플링된 이력(draft-sampled history)만을 사용하여 감독될 수 있습니다.
우리는 SpecOPD를 제안합니다. 이는 브랜치 병렬 OPD 프레임워크로, 발전하는 드래프터 정책에서 추출된 독립적인 여러 브랜치에 걸쳐 드래프트 샘플링과 목표 감독을 병렬화합니다. 우리는 이 브랜치들을 제안 트리(proposal trees)로 패킹하여 목표 접두사 계산을 공유하며, 전체 어텐션(full attention)에는 트리 마스크(tree masks)를, 희소 어텐션(sparse attention)에는 브랜치 일관성 인덱서 그룹(branch-consistent indexer groups)을, 그리고 선형 어텐션(linear attention)에는 각 브랜치의 이력을 보존하기 위한 인덱싱 상태 리플레이(indexed state replay)를 사용합니다. 우리는 목표 수용 길이(acceptance length)를 직접적으로 겨냥하는 E2E-TV 서로게이트(surrogate)를 사용하여 드래프터를 훈련시킵니다.
우리의 연구는 8B 전체 어텐션 (GQA), 27B 전체–선형 (GQA–GDN), 그리고 125B 희소–선형 (QSA–GDN) 목표, 세 가지 병렬 드래프트 아키텍처(DFlash, DSpark, 및 DFlash V2), 네 가지 작업 도메인(대화, 코딩, 수학, 에이전트적)에 걸쳐 진행되었습니다. SpecOPD는 최대 41.45% 높은 평균 수용 길이를 달성했으며, 기본 구성에서 순차 롤아웃 OPD 대비 16.09배의 감독 토큰 처리량(supervised-token throughput)을 기록했고, 자기회귀 디코딩(autoregressive decoding) 대비 최대 3.56배의 생성 속도 향상을 보여줍니다.
논문: https://qwenapp.github.io/SpecOPD/specopd-paper.pdf 프로젝트/블로그: https://qwenapp.github.io/SpecOPD/en.html GitHub: https://github.com/QwenApp/SpecOPD