Speculative decoding 훈련·평가 풀스택 코드베이스
데이터 준비부터 학습·평가까지 speculative decoding용 드래프트 모델을 재현하고 벤치마크하는 Python 기반 풀스택 코드베이스이다.
TL;DR
DeepSpec은 speculative decoding을 위한 데이터 준비, 드래프트 모델 학습, 수용률 평가를 하나의 파이프라인으로 통합한 풀스택 코드베이스이다. 프롬프트 다운로드와 타깃 모델을 통한 응답 재생성으로 대용량 타깃 캐시를 구축하고 이 캐시를 기준으로 DSpark·DFlash·Eagle3 같은 드래프트를 학습시킨 뒤 여러 벤치마크에서 acceptance를 측정하는 방식으로 작동한다. README는 기본 Qwen/Qwen3-4B 설정에서 타깃 캐시가 약 38TB에 달할 수 있음을 명시하고 학습 스크립트가 가시적 GPU마다 워커를 띄우도록 설계되어 있어 대규모 스토리지와 다중 GPU 환경이 요구된다는 한계가 분명하다. 논문 Table 1과 대응되는 체크포인트를 Hugging Face에 공개해 연구 재현성이 확보되어 있으며 동일 설정을 맞춰야만 의미 있는 비교가 가능하다는 점이 강조되었다.
주요 기능
- 데이터 준비 파이프라인을 실행하여 프롬프트 다운로드·정답 재생성·타깃 캐시를 구축한다
- 드래프트 모델(DSpark, DFlash, Eagle3)을 학습하기 위한 구성과 스크립트를 제공한다
- 학습된 드래프트에 대해 여러 벤치마크에서 speculative-decoding 수용률을 평가한다
- 논문 Table 1과 대응되는 사전 학습 체크포인트를 공개하여 결과 재현을 지원한다
어떻게 동작하는가
레포는 세 단계 워크플로를 순차적으로 구성한다. 첫 단계에서 프롬프트를 다운로드하고 타깃 모델을 서빙해 응답을 재생성한 뒤 이 출력을 타깃 캐시에 저장하여 학습 시 정답으로 활용한다. 두 번째 단계에서 제공된 config를 지정해 train.sh가 train.py를 기동하고 가시적 GPU 수만큼 워커를 생성하여 드래프트 모델을 학습하며, 세 번째 단계에서 eval.sh가 학습된 드래프트에 대해 여러 벤치마크에서 acceptance를 측정한다.
해결 문제
이 레포는 speculative decoding 연구와 재현 가능한 실험을 위해 필요한 데이터 파이프라인·학습 루틴·평가 도구의 통합을 제공한다. 프롬프트 재생성과 대용량 타깃 캐시 구축 과정을 자동화하여 드래프트 학습에 필요한 정답 레퍼런스를 확보하게 한다. 또한 논문과 대응되는 체크포인트를 공개해 동일한 환경에서 성능 비교와 추가 실험을 수행할 수 있도록 한다.
지금 주목받는 이유
레포가 높은 스타 수(5748)와 공개된 논문 및 체크포인트를 보유하고 있어 연구자와 엔지니어 사이에서 주목을 받았다. 논문 Table 1에 대응하는 여러 체크포인트가 Hugging Face에 공개되어 결과 재현 가능성이 높다는 점이 관심을 끌었다. speculative decoding이 추론 비용 절감과 지연 개선을 목표로 하는 연구 주제인 만큼 연구 커뮤니티의 실험 인프라 수요와 맞물려 화제가 되었다.
차별점
- 데이터 준비부터 평가까지 실험 재현을 염두에 둔 풀스택 파이프라인을 단일 레포지토리에서 제공한다
- DSpark, DFlash, Eagle3 등 여러 드래프트 알고리즘에 대한 학습 구성과 기학습 체크포인트를 함께 공개해 논문 결과를 직접 재현할 수 있게 설계되었다
- 타깃 캐시 생성과 재생성 과정에서 타깃 모델 서빙을 요구하는 단계까지 자동화하여 드래프트 학습용 정답 데이터의 일관성을 유지하도록 구성되었다
사용 사례
- speculative decoding 알고리즘의 새로운 드래프트 디자인을 연구하고 성능을 비교하는 실험 플랫폼으로 사용한다
- 논문에 기록된 학습 설정과 체크포인트를 이용해 결과를 재현하거나 추가로 미세조정하여 비교 실험을 수행한다
- 드래프트 모델을 실서비스 추론 파이프라인에 통합하기 전 acceptance 측정과 비용-지연 트레이드오프 분석에 활용한다
시작하기
초기 환경 구성은 requirements.txt를 이용한 Python 의존성 설치로 시작한다. 데이터 준비 단계는 scripts/data/README.md에 따른 프롬프트 다운로드와 타깃 답변 재생성, 타깃 캐시 구축 순서로 진행되며 재생성에는 별도의 타깃 모델 서빙 인프라가 필요하다. 학습과 평가는 각각 bash scripts/train/train.sh와 bash scripts/eval/eval.sh로 실행하고 config 경로와 target/draft 경로를 지정하여 실험을 재현한다.
요구사항
- Python 의존성 목록을 담은 requirements.txt에 따른 런타임 패키지
- 타깃 모델의 응답을 재생성하기 위한 별도 inference 엔진 또는 모델 서빙 환경
- 기본 설정의 타깃 캐시 저장을 위한 대용량 스토리지(기본 Qwen/Qwen3-4B 설정에서 약 38 TB)
- 기본 구성은 단일 노드 8 GPUs를 전제로 하며 더 적은 GPU로 실행 시 CUDA_VISIBLE_DEVICES 조정 필요
- 유닉스 계열 셸에서 실행 가능한 bash 환경
5.7k
Stars
461
Forks
+213
Trending
1
조회수
관련 토론
아직 관련 토론이 없습니다.
댓글
댓글을 작성하려면 로그인이 필요합니다.