skyzh/tiny-llm

给系统工程师的动手课程:在 Apple 芯片上用 MLX 数组从矩阵乘法开始自己实现 Qwen3 推理,再一步步加 KV 缓存、量化、连续批处理和分页 KV,做出迷你 vLLM,最后搭一个编码代理。

给系统工程师的动手课程:在 Apple 芯片上用 MLX 数组从矩阵乘法开始自己实现 Qwen3 推理,再一步步加 KV 缓存、量化、连续批处理和分页 KV,做出迷你 vLLM,最后搭一个编码代理。

星数 4851(+22 / 24h)

理由

  • 四周路线:第 1 周只用 mlx.core 写注意力、RoPE、GQA、RMSNorm、MLP、采样和自回归循环;第 2 周加 KV 缓存、4 位量化矩阵向量乘、SIMD 预填充;第 3 周做连续批处理、分块准入和分页 KV,让解码注意力和 FlashAttention 直接读页
  • 讲到哪个算子就要你用 Python、C++ 或 Metal 自己实现,不调 MLX 现成的优化版本;MLX 只当正确性参照和性能基线
  • 第 4 周的编码代理按天发布,目前开放到第 9 天:审批后改文件、单条验证命令、检查点与恢复、上下文压缩、确定性评测等

用法

  • 教材在 skyzh.github.io/tiny-llm,先看环境配置一章;检查环境:pdm install -v、pdm run check-installation、pdm run test-refsol -- -- -k week_1
  • 练习写在 tiny_llm 包里,tiny_llm_ref 是测试用的参考答案,按书的目录顺序做

风险

  • 需要 Apple 芯片 Mac;作者提醒第 4 周第 3 天起代理会把文件内容发给模型、能改文件和跑命令,要用没有密钥的一次性工作区
  • 这是教学项目,不是生产推理框架;仓库 2025 年就有,许可证 Apache-2.0

打开

Trendshift(GitHub Trending 快照)

浏览最新 AI 动态