datawhalechina/zero-to-sglang
Official SGLang x Datawhale course on LLM inference: understand inference, build a mini-sglang from scratch, then read the real SGLang source and land your first PR. Available in English and Chinese.
zero‑to‑sglang – LLM 추론 엔진 구축을 위한 실습 튜토리얼
소개 – 최신 LLM 추론의 이론과 코드를 영어와 중국어 이중 언어로 설명하는 오픈소스 과정입니다. 기초(KV 캐시, 프리필 대 디코드, 계산 대 메모리 바운드 병목 현상)부터 시작해 mini‑sglang 추론 엔진을 처음부터 구현하는 방법을 안내하고, 마지막으로 실제 SGLang 프로젝트가 구현한 고급 기술(RadixAttention, 페이징 KV 캐시, 연속 배칭, 계층적 캐싱, 양자화, 분산 어텐션)을 소개합니다.
대상 독자 – 기본적인 Python과 PyTorch 지식을 갖추고 LLM이 효율적으로 서비스되는 방식을 이해하려는 모든 사람. 전반부는 GPU가 필요 없으며, 후반부 챕터는 CPU에서 실행할 수 있지만 성능 실험에는 GPU가 좋습니다.
주요 학습 성과
- 핵심 추론 개념(KV 캐시, 프리필/디코딩, 루프라인 모델) 이해.
- 작동하는 미니 추론 엔진(포워드 패스, 생성, HTTP 서빙, 스케줄러) 구현.
- 실제 SGLang 소스 코드를 읽고 이해하며 최첨단 최적화를 파악.
- 프로파일링, 트레이스 분석, 활발한 오픈소스 프로젝트에 PR 기여 실무 기술 습득.
과정 구조
| 파트 | 내용 | 상태 |
|---|---|---|
| 0 – 준비 | 코딩 윤리, 첫 SGLang 서버 배포 | ✅ |
| I – 기본 | LLM 기초, 추론 이론, GPU 소개, KV 캐시, 벤치마킹 | ✅ |
| II – mini‑sglang 구축 | 아키텍처 개요, 요청 흐름, 포워드 패스, KV 캐시 최적화, HTTP 및 동시성, RadixAttention 등 | ✅ (대부분 챕터) – 일부 후반 챕터는 진행 중 |
| III – 고급 기법 | 어텐션 백엔드, 양자화, 계층적 캐싱, DP/EP/PP 스케일링, 추측 디코딩 | ✅ 계층적 캐싱만, 나머지는 진행 중 |
| IV – 기여 | 배포 쿡북, 프로파일링, 전체 PR 워크플로 | 계획됨 |
시작 방법
# 리포지토리 클론
git clone https://github.com/datawhalechina/zero-to-sglang.git
cd zero-to-sglang
# `course-material/eng/`(영어) 또는 중국어 버전의 챕터별 지침을 따르세요.
리포지토리에는 마크다운 코스 파일, 학습자 기여용 community/ 폴더, 온라인 버전용 VitePress 사이트 구성이 포함되어 있습니다.
중요성 – LLM이 커질수록 추론 비용이 지배적입니다. 효율적인 추론 엔진을 이해하고 구축하는 것은 드문 기술입니다. 이 튜토리얼은 높은 수준의 개념과 프로덕션급 코드 간의 격차를 메우고 학습자를 실제 SGLang 프로젝트(RadixArk가 유지 관리)에 직접 연결하여 기여할 수 있게 합니다.
라이선스 – 크리에이티브 커먼즈 저작자표시‑비영리‑동일조건변경허락 4.0.
관련
- 프로젝트
- Dispatch
- Dispatch
- 프로젝트
- 프로젝트