bojieli/ai-infra-book
《深入理解 AI Infra:量化分析与系统设计》(李博杰 著)开源书稿:从硬件约束和模型架构出发,量化推导 LLM 推理与训练系统设计。含全书正文、PDF、配套计算工具与实验
| 필드 | README 실제 내용 |
|---|---|
| 개요 | 오픈소스 책으로, 제목은 "深入理解 AI Infra:量化分析与系统设计" (대략: AI 인프라 심층 이해: 정량적 분석 및 시스템 설계). 저자의 이전 책 『深入理解 AI Agent』(AI 에이전트 이해)의 동반 볼륨으로, GitHub 스타는 50,000개 이상. 원고는 아직 초안이며 지속적으로 수정 중. |
| 저자 | Li Bojie (이보제, GitHub: @bojieli). 리포지토리 소유자이며 원본 간체 중국어 텍스트의 저자. 책은 Apache License 2.0(원문, 그림, 코드)으로 라이선스. Copyright © 2026 Bojie Li. |
| 존재 이유 | 저자의 명시된 동기: 모델 기반 애플리케이션을 구축한다는 것은 그 아래의 인프라를 이해하는 것을 의미한다. 소프트웨어 엔지니어가 OS나 컴파일러를 직접 만들지 않아도 배우는 것과 같다. 모든 메모리 할당, 파일 읽기, 함수 호출에는 리소스와 시간 비용이 들기 때문이다. LLM 앱에서는 지연 시간과 비용 차이가 제품과 비즈니스 모델을 바꾼다. 저자의 프레임: LLM은 LLM 시대의 "운영 체제"가 되었고, AI 인프라는 그 "컴퓨터 아키텍처"이다. 이 책은 하드웨어 제약과 모델 아키텍처에서 시스템 설계를 정량적으로 도출하는 책이 없다는 격차를 메우는 것을 목표로 한다. 저자는 또한 박사 지도교수의 조언을 인용: 물리적 한계까지 최적화하라. 이 책은 먼저 하드웨어의 이론적 상한을 계산한 다음 측정 결과와 비교한다. |
| 핵심 방법(“다섯 가지 질문”) | 책 전체에 걸쳐 반복되는 주제는 데이터 이동(데이터 이동)이다. 모든 사례는 다섯 가지 질문을 반복한다: 무엇을 이동할 것인가, 얼마나 많은 양인가, 몇 번인가, 어디를 통해(어떤 경로)인가, 누가 그것을 기다려야 하는가—즉, 이동되는 것, 그 양, 전송 횟수, 경로, 의존성/대기. 방법은 일관되게 "제약에서 설계 도출": 작업과 품질 요구 사항을 명시하고, 계산/저장/통신/의존성 요구를 나열한 다음, 하드웨어 용량, 대역폭, 컴퓨팅 성능에 대한 자릿수 추정을 수행한다. README는 이것이 오류가 발생하기 쉽다고 강조한다: KV 캐시를 잊는 것, 피크 컴퓨팅만 확인하고 대역폭을 확인하지 않는 것, GPU 간에 작업을 분할하면서 카드 간 통신을 놓치는 것—어떤 누락이든 결론을 몇 배 또는 자릿수로 왜곡할 수 있다. |
| 내용 — 12개 장 | 1) AI 인프라 입문—단일 생성에 필요한 메모리, 컴퓨팅, 데이터 I/O의 양. 2) 모델 아키텍처—어텐션, 기록 상태, 전문가 구조가 시스템 요구 사항을 어떻게 바꾸는지. 3) 추론 및 훈련 워크로드—작업 단계, 도착 패턴, 상태 수명이 리소스 요구에 어떻게 영향을 미치는지. 4) 가속기 아키텍처—컴퓨팅, 저장, 대역폭, 전력, 비용 간의 균형. 5) 연산자 및 런타임—융합, 재사용, 동시성, 스케줄링이 실행 오버헤드를 어떻게 줄이는지. 6) 슈퍼노드—다중 장치 협업이 용량, 처리량, 동기화 비용의 균형을 어떻게 맞추는지. 7) 데이터센터 네트워크—대역폭, 통신 패턴, 혼잡이 컴퓨팅 효율에 어떻게 영향을 미치는지. 8) 추론 최적화—배칭, KV 관리, 오프로딩, 추측 디코딩이 언제 유용한지. 9) 분산 추론—계산과 상태를 어떻게 배치하고, 확장과 복구를 어떻게 처리하는지. 10) 훈련 시스템—효율을 위해 메모리, 통신, 재계산을 어떻게 배치하는지. 11) 리소스 스케줄링 및 실행 환경—모델 서빙과 도구 환경이 리소스를 공유하고 대기를 줄이는 방법. 12) 엣지-클라우드-디바이스 협업—품질, 지연 시간, 비용의 균형을 맞추고 작업을 어디에 둘지(로컬, 엣지, 클라우드). |
| 대상 독자 | 모델 API를 호출하거나 로컬에서 모델을 실행해 본 적이 있고, 모델이 느린 이유와 비용 절감 방법을 이해하려는 사람들. 또한 시스템, 네트워크, 칩 엔지니어와 이러한 분야의 연구자 및 학생. 전제 조건: Python, 선형 대수, 컴퓨터 시스템 기초. README는 1 |
| 동반 계산 도구 | calculations/의 명령줄 도구로, 책의 숫자를 다시 계산하거나 다른 모델과 입력으로 리소스 요구를 추정할 수 있다. 정적 계산은 Python 3.10+ 표준 라이브러리만 필요( GPU나 모델 가중치 불필요). 명령 예: python3 calculations/calc.py models(지원 모델 목록), python3 calculations/calc.py forward --model qwen3-8b --tokens 8192 --format md(Qwen3-8B의 8192 토큰 프리필에서 연산자별 리소스 요구 추정). 결과 인덱스와 모델 구성이 포함됨. |
| 동반 실험 | experiments/chXX/XX-YY/에 장별로 정리. 각각 실행 방법, 입력 조건, 결과 설명이 있음. GPU가 필요한 실험은 하드웨어 및 종속성 요구 사항을 명시. 해당 하드웨어가 없는 독자는 기존 기록을 읽을 수 있음. 재현 또는 인용하려면 원고 버전, 모델, 하드웨어, 입력 매개변수를 기록하라고 README에 명시됨. |
| 리포지토리 크기 및 Git LFS | 큰 파일(논문, 큰 입력, 측정 기록)은 Git LFS에 저장되며 총 약 20GB. 리포지토리의 .lfsconfig는 기본적으로 모든 LFS 파일을 건너뛰도록 설정되어 있어 클론은 포인터 파일만 가져옴. 본문, 그림, 정적 계산에는 필요 없음. 특정 실험만 가져오려면: git lfs pull --include="experiments/ch05/05-01/**" --exclude="". |
| 사용 가능한 형식 및 언어 | 원본: 간체 중국어(저자 자신). 커뮤니티 번역: 영어(@tg1482), 번체 중국어(@edward821220), 러시아어(@ilkruglov가 조직한 커뮤니티 에디션). 각 버전은 PDF, EPUB, 온라인 읽기 사이트로 제공. 온라인 사이트는 장 탐색, 전체 텍스트 검색, 다크 모드, 오른쪽 상단 언어 전환(루트가 간체 중국어, en/, zh-tw/, ru/ 하위 경로)을 제공. PDF는 XeLaTeX로 조판, EPUB은 휴대폰/리더기에 맞게 리플로우. 릴리스는 main에 푸시할 때마다 자동 빌드 및 게시—다운로드 링크는 항상 최신 버전을 가리킴. |
| 로컬 빌드 | 웹사이트: Python 3.10+, venv 생성, pip install -r website/requirements.txt, python scripts/build_site.py, 선택적으로 python scripts/check_site.py, --serve로 http://127.0.0.1:8000에서 미리보기. 전체 PDF: Pandoc, XeLaTeX, 글꼴 필요. 스크립트 book/build_pdf.sh(zh), book-en/build_pdf.sh(en), book-zh-tw/build_pdf.sh(zh-TW). EPUB: python3 book/build_epub.py --edition zh(edition은 zh, en, zh-tw, ru)로 Pandoc과 Poppler만 필요. 번역 이미지 자산은 Git LFS에 있으며, 빌드 전에 git lfs pull --include="book-en/images/**,book-zh-tw/images/**" --exclude=""로 가져옴. CI(GitHub Actions)는 모든 언어로 사이트 및 PDF/EPUB의 PR 빌드를 확인. |
| 기여 | 환영. README에는 다음이 나열되어 있음: 잘못된 사실(잘못된 숫자, 단위/자릿수, 불일치 인용, 잘못된 공식/그림)을 정오표 이슈 템플릿 또는 PR로 수정. 불명확한 구절(생략된 유도 단계, 첫 언급에서 정의되지 않은 용어, 따라가기 어려운 예) 재작성. 중요한 메커니즘/아키텍처/트레이드오프 누락 추가. 동반 코드(experiments/ 및 calculations/ CLI)의 버그 수정. 웹 버전(레이아웃, 탐색, 검색, 모바일 경험) 개선. 더 많은 언어로 번역(영어와 번체 중국어는 참조 구조로 이미 존재. 시작 전에 이슈를 열어 조정). 텍스트의 단일 소스는 manuscripts/의 Markdown이며, 웹과 PDF는 여기서 빌드되므로 변경 사항은 거기로. |
| 구조 | 리포지토리 디렉터리: manuscripts/(서문, 12개 장, 그림, 플로팅 스크립트). experiments/(장별 실험 및 기록). calculations/(계산 도구, 고정 입력, 재계산 결과). case-studies/(모델/하드웨어/시스템 분석, 장별 색인). references/(인용, 소스 목록, 버전 스냅샷). research/(지원 조사 및 개정 기록). book/(PDF 템플릿, 빌드/확인 도구). book-en/, book-zh-tw/(자체 스크립트가 있는 번역 에디션). website/, scripts/(사이트 자산 및 빌드/확인). archive/(과거 개요, 검토, 조정 노트). |
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트