bstnxbt/dflash-mlx
Lossless DFlash speculative decoding for MLX on Apple Silicon
해결하는 문제
dflash-mlx는 Apple Silicon에서 LLM 추론을 가속화하기 위해 설계된 예측적 디코딩 기술인 DFlash을 구현합니다. 자기회귀 생성의 병목을 해결하기 위해 작은 드래프트 모델을 사용해 병렬로 여러 토큰을 예측하고, 이를 더 큰 타겟 모델이 단일 패스로 검증함으로써 출력 품질을 유지하면서도 토큰/초 단위 처리량을 크게 증가시킵니다.
작동 방식
이 프로젝트는 일반적으로 약 1B 파라미터의 블록 확산 드래프트 모델을 사용해 한 번의 패스로 16개의 토큰을 생성합니다. 이후 더 큰 타겟 모델이 이 토큰들을 단일 프로퍼게이션으로 검증합니다. 타겟 모델이 드래프트와 일치하면 토큰을 수락하고, 일치하지 않으면 첫 번째 오류 지점까지 드래프트를 자르고 타겟 모델이 올바른 다음 토큰을 제공합니다.
Apple Silicon을 위한 주요 기술 최적화는 다음과 같습니다:
- 테이프 리플레이 롤백: 검증 실패 시 GatedDeltaNet 모델의 상태를 효율적으로 복원하기 위해 혁신 테이프를 기록합니다.
- 사용자 정의 Metal 커널: M급 GPU를 위한 특화된
verify_qmmint4 양자화 행렬 곱셈 커널을 포함하여 검증 단계를 가속화합니다. - 계층적 프리픽스 캐시: RAM과 SSD의 두 수준 캐시 시스템으로 타겟 모델의 상태 스냅샷을 저장하여 재방문된 프롬프트의 프리필을 건너뜁니다.
- 위치 스파스 프리필: 타겟 모델의 프리필을 선택된 토큰 하위 집합에 대해 수행하여 계산량을 줄입니다.
대상 사용자
Apple Silicon(M시리즈 칩)을 사용하여 Qwen 및 Gemma와 같은 대규모 언어 모델을 훨씬 더 빠른 생성 속도로 실행하고자 하는 개발자 및 연구자.
주요 특징
- 손실 없는 가속화: 모든 생성된 토큰은 타겟 모델과 비교되어 출력이 타겟 모델의 그리디 디코딩과 완전히 동일함을 보장합니다.
- 높은 가속 비율: 벤치마크 결과에 따르면 모델과 프롬프트 길이에 따라 1.3배에서 4.3배까지의 가속이 가능합니다.
- OpenAI 호환 서버: aider, Continue, Open WebUI와 같은 도구와 통합 가능한 서버를 포함합니다.
- 아키텍처 지원: Qwen3.5, Qwen3.6, Gemma4 모델에 최적화되어 있습니다.
- 통합 진단 기능: 디버깅 및 성능 분석을 위한 세부 메트릭과 구조화된 아티팩트를 제공합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- Dispatch
- Dispatch