Repolode
skyzh

skyzh/tiny-llm

面向系统工程师的动手课程,基于 MLX 在 Apple Silicon 上从零构建 Qwen3 推理系统,最终实现迷你 vLLM。

Star
5,675
Fork
522
未关闭 Issue
12
最近提交
昨天

这是什么?

tiny-llm 是一门面向系统工程师的课程,帮助读者从头到尾理解 LLM 推理过程。学习者需要实现加载 Qwen3 模型、将 token 转为 logits、再生成文本的完整路径,从 MLX 数组运算开始,随模型需要逐步加入算子和服务机制。

课程基于 MLX 数组和 MLX 扩展运行时构建,不使用高层神经网络层。每个算子章节中,学习者需用 Python、C++ 或 Metal 自行实现,MLX 原生算子则作为正确性参照和性能基线。代码规模刻意保持较小,便于通读。

四周的学习路径包括:单请求模型(KV cache、量化权重)、支持连续批处理、分块预填充和分页 KV cache 的迷你 vLLM,以及第四周逐步构建的带校验编辑和检查点的编程智能体。课程面向 Apple Silicon 设备,教程已在线发布,并附带用于测试的参考实现。

核心功能

  • 01从 MLX 数组运算出发,搭建包含注意力、RoPE、GQA 和 RMSNorm 的 Qwen3 模型
  • 02以 Python、C++ 或 Metal 实现 KV cache、量化矩阵向量乘和融合算子
  • 03在迷你 vLLM 中讲解连续批处理、分块预填充和分页 KV cache
  • 04提供参考实现和测试套件,用于逐章验证实现
  • 05以带校验编辑和可恢复检查点的编程智能体收尾

适用场景

  • 希望把 LLM 推理公式与内存访问、KV cache 增长联系起来的系统工程师
  • 想了解 vLLM 式批处理和分页注意力内部机制的开发者
  • 在 Apple Silicon Mac 上进行本地模型实验的工程师

快速上手

  1. 1

    阅读书中的环境配置指南

  2. 2

    使用 PDM 安装依赖

    pdm install -v
  3. 3

    验证安装是否成功

    pdm run check-installation
  4. 4

    运行第 1 周参考解答的测试

    pdm run test-refsol -- -- -k week_1

使用前须知

  • 本课程基于 MLX 构建,设计目标是 Apple silicon 芯片的 Mac。
  • 第 2 周和第 4 周的章节仍在制作中,并非全部完成。
  • 第 4 周的编码智能体可以执行命令并修改文件,因此请使用不含机密信息的临时工作区。

收录于专题

标签

常见问题

tiny-llm 是什么?
面向系统工程师的动手课程,基于 MLX 在 Apple Silicon 上从零构建 Qwen3 推理系统,最终实现迷你 vLLM。 tiny-llm 是一门面向系统工程师的课程,帮助读者从头到尾理解 LLM 推理过程。学习者需要实现加载 Qwen3 模型、将 token 转为 logits、再生成文本的完整路径,从 MLX 数组运算开始,随模型需要逐步加入算子和服务机制。
tiny-llm 可以免费使用吗?用的什么许可证?
tiny-llm 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
tiny-llm 还在维护吗?
活跃维护中。tiny-llm 最近一次提交是在 2026年11月6日。
tiny-llm 适合用来做什么?
希望把 LLM 推理公式与内存访问、KV cache 增长联系起来的系统工程师 想了解 vLLM 式批处理和分页注意力内部机制的开发者 在 Apple Silicon Mac 上进行本地模型实验的工程师
tiny-llm 怎么安装和运行?
阅读书中的环境配置指南 使用 PDM 安装依赖: pdm install -v 验证安装是否成功: pdm run check-installation 运行第 1 周参考解答的测试: pdm run test-refsol -- -- -k week_1
在哪里获取 tiny-llm?
源代码和安装说明在 GitHub 上:https://github.com/skyzh/tiny-llm

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目