datawhalechina

datawhalechina/diy-llm

Jupyter Notebook Education

🎓 系统性大语言模型构建课程|🛠️ 覆盖预训练数据工程、Tokenizer、Transformer、MoE、GPU 编程 (CUDA/Triton)、分布式训练、Scaling Laws、推理优化及对齐 (SFT/RLHF/GRPO)|🚀 6 个渐进式作业 + 代码驱动,建立 LLM 全栈认知体系

1k stars
110 forks
recent
GitHub +33 / week

1k

Stars

110

Forks

0

Open issues

9

Contributors

V0.1 10 Jun 2026

AI Analysis

A comprehensive Chinese-language course for building large language models from scratch, covering pre-training data engineering, tokenizers, Transformers, MoE, GPU programming (CUDA/Triton), distributed training, scaling laws, inference optimization, and alignment techniques (SFT/RLHF/GRPO). It serves students and practitioners in China seeking systematic, hands-on LLM education adapted to local environments and resources, combining theory with progressive coding assignments; it is not a libr...

Education Research Project Discovery value: 6/10
Documentation 9/10
Activity 9/10
Community 7/10
Code quality 5/10

Inferred from signals mentioned in the README (tests, CI, type safety) — not a review of the actual code.

Overall score 8/10

AI's overall editorial judgment — not an average of the bars above, can weigh other factors too.

llm-training gpu-programming distributed-training transformer-architecture model-optimization
Actively maintained Well documented Educational Niche/specialized use case
Deep Analysis · Based on README and public signals
2w ago

Chinese-language LLM systems course with hands-on assignments, built atop Stanford CS336

DIY-LLM is a structured educational curriculum designed to teach LLM development from first principles to practitioners. Created by DataWhale (a Chinese open-source learning collective), it covers tokenization, transformer architecture, MoE systems, GPU programming (CUDA/Triton), distributed training, scaling laws, inference optimization, and alignment (SFT/RLHF/GRPO). The project pairs 15 chapters of written theory with 6 progressive coding assignments. Content is primarily in Chinese, adapted for learners in mainland China with emphasis on local compute constraints and domestic models (Qwen, DeepSeek). Adoption appears confined to Chinese-speaking LLM practitioners and students; mainstream adoption outside that region is unlikely given language and regional focus.

Origin

Created November 2025, DIY-LLM forks the pedagogical structure of Stanford's CS336 course but repositions it as a Chinese-localized, code-driven workshop ('LLM forging workshop') rather than direct translation. Sits within DataWhale's ecosystem of learning materials, which already operates successful parallel projects (self-llm with 31k stars, happy-llm with 31k stars). Launched in an environment where LLM education demand was already established in China.

Growth

Project gained ~981 stars over ~7 months (launched late Nov 2025, current date June 2026). Growth appears steady but modest: 19 stars in last 7 days. No evidence of viral adoption or spike. Momentum is consistent with an actively maintained educational resource in a niche geography/language; not trending toward mainstream visibility. Last push 2026-06-26 shows ongoing maintenance. Forks (106) suggest some adoption among students/practitioners, but absolute numbers remain small compared to parallel DataWhale projects and international competitors (mlabonne/llm-course: 80k stars).

In production

Adoption not verified. No evidence of institutional deployment, corporate training adoption, or measurable learner cohort size. Repository itself is an educational tool, not production infrastructure, so traditional production metrics do not apply. Anecdotal evidence of use would be pull requests from learners, completed assignment submissions, or forks indicating real learning, but volume of forks (106) relative to project age does not suggest large-scale cohort throughput. Status of active learners using assignments is unknown.

Code analysis
Architecture

Based on README, project appears to be a Jupyter Notebook-based curriculum (primary language listed as Jupyter Notebook). Likely organized as: (1) markdown documentation chapters in `docs/zh/` (2) standalone assignment directories in `coursework/` containing code templates and starter notebooks. README does not detail the runtime environment, dependency management, or scaffolding infrastructure. Assignment 1 involves 'hand-rolling' tokenizer, model architecture, optimizer; assignments 2–6 cover systems optimization (Triton), distributed training, scaling experiments, data processing, alignment, and evaluation. Code examples appear to use PyTorch. No reference to testing frameworks, CI/CD, or automated quality gates in provided README.

Tests

Not documented in README. No mention of test suites, validation procedures, or benchmark reproducibility protocols. Assignments likely include expected outputs or validation logic, but this is not made explicit.

Maintenance

Repository shows active maintenance as of June 26, 2026 (last push ~3 days before analysis date). Status column in README uses emoji to mark chapters as ✅ (complete), 📝 (pending refinement), 🔄 (in progress), suggesting iterative development. No recent closed issues or PR velocity provided in metadata. For a curriculum resource <9 months old with 19 new stars in past week, this appears to be steady, low-intensity maintenance rather than rapid iteration or stagnation.

Honest verdict

ADOPT IF: you are a Chinese-speaking learner or trainer seeking a structured, systems-level LLM engineering curriculum with hands-on assignments and recent maintenance, and you have capacity to work in Chinese and understand locale-specific tools (Qwen, DeepSeek, local compute constraints). AVOID IF: you need an English-language resource, require production-grade code reuse, or seek community breadth and tooling ecosystem maturity outside educational context. MONITOR IF: you are evaluating DataWhale's LLM curriculum portfolio to understand market fragmentation or considering translation/adaptation of this material for non-Chinese audiences; monitor whether assignment completion rates and learner feedback drive visibility growth or reveal pedagogical gaps.

Independent dimensions

Mainstream potential

2/10

Technical importance

7/10

Adoption evidence

3/10

Risks
  • Language barrier limits adoption to Chinese speakers; unlikely to reach mainstream (English-speaking) LLM engineering market.
  • Educational resource lifecycle risk: curriculum may become outdated as LLM field advances (e.g., post-training techniques, new model architectures). Maintenance burden may increase if real learners encounter bugs or unclear explanations at scale.
  • Redundancy within DataWhale ecosystem: unclear how DIY-LLM differentiates from self-llm, happy-llm, and llms-from-scratch-cn; market cannibalization or learner confusion possible.
  • Adoption not verified: repository metrics (stars, forks) do not confirm real educational throughput; projects can accumulate stars without producing learning outcomes.
  • Assignment infrastructure underspecified: README does not detail how learners submit, receive feedback, or verify solutions; limits usability for self-directed or cohort-based learning.
Prediction

DIY-LLM will likely remain a stable, modestly-adopted educational resource within the Chinese-language LLM practitioner community over the next 12–24 months. Slow, steady growth (15–30 stars/week) is plausible if content quality is high and learners complete assignments and refer peers. Mainstream (non-Chinese) adoption is unlikely unless material is translated or learners actively port content. Real impact will be measured by learning outcomes (e.g., how many alumni ship LLM projects) rather than GitHub metrics, which are not publicly visible.

0 found this helpful

Newsletter

Get analyses like this every Monday

Free weekly digest of the most interesting open-source discoveries.

Languages

Jupyter Notebook
78.2%
Python
21.6%
Shell
0.1%

Information

Language
Jupyter Notebook
Last updated
2w ago
Created
8mo ago
Analyzed with
anthropic/claude-haiku-4-5

Stars over time

Loading…

Contributors over time

Top 100 contributors only — repos with more will plateau at 100.

Loading…

Open issues

No open issues — clean slate.

Open pull requests

No open pull requests.

Similar repos

datawhalechina

datawhalechina/happy-llm

Happy-LLM is a comprehensive Chinese-language educational project that teaches...

31.9k Jupyter Notebook Education
datawhalechina

datawhalechina/llms-from-scratch-cn

A hands-on educational tutorial for building large language models (LLMs) from...

4.3k Jupyter Notebook Education
datawhalechina

datawhalechina/self-llm

A comprehensive Chinese-language tutorial project for deploying, fine-tuning,...

31.2k Jupyter Notebook AI & ML
Lordog

Lordog/dive-into-llms

A hands-on programming tutorial series for learning large language models,...

42.3k Jupyter Notebook Education
mlabonne

mlabonne/llm-course

A structured, free course for learning Large Language Models, divided into...

80.8k AI & ML
vs. alternatives
mlabonne/llm-course

Broader English-language LLM course with 80k stars; multilingual (English primary); no apparent dependency on Stanford CS336. Likely reaches 10–100x more learners globally. DIY-LLM is more narrowly scoped to Chinese learners and references Stanford CS336 explicitly.

Lordog/dive-into-llms

Chinese-language LLM course with 41k stars (also based on Stanford material). Predates DIY-LLM; higher adoption within Chinese ecosystem. DIY-LLM may serve learners seeking a newer, more recently maintained resource or different pedagogical emphasis.

datawhalechina/self-llm (31k stars) and happy-llm (31k stars)

Parallel DataWhale projects with 30x+ higher star counts. DIY-LLM is the newest in DataWhale's LLM curriculum portfolio. Fragmented market share among related DataWhale offerings may indicate either specialized positioning (DIY-LLM for systems/training focus) or redundant offerings.

datawhalechina/llms-from-scratch-cn

Another DataWhale Chinese-language LLM course (4.2k stars). DIY-LLM supersedes or complements this offering; exact positioning is unclear from README.