nndl/llm-beginner

LLM、Agent上手教程

What it solves

本项目提供一条结构化、实操导向的学习路径,让初学者掌握大型语言模型(LLM)和 AI 代理。它弥合了理论知识与实际实现之间的差距,通过六个渐进式任务,从基础的 Transformer 架构一直到复杂的自主编码代理。

How it works

用户按照六个独立任务的课程进行学习,每个任务设计为可在数周内完成。学习方法强调“先从头写,再与框架对比”,确保对底层原理有深入理解。每个任务都包含其依赖、数据下载脚本和自检脚本,以验证实现的正确性。

  1. Transformer Basics:实现自注意力和 Transformer 块,用于文本分类。
  2. mini-GPT:从头构建仅解码器模型,包含 BPE 分词、RoPE 和 KV 缓存。
  3. SFT & DPO:使用 LoRA 在基础模型上进行监督微调(Supervised Fine‑Tuning)和直接偏好优化(Direct Preference Optimization)。
  4. RAG:构建检索增强生成(Retrieval‑Augmented Generation)流水线,结合嵌入模型、向量数据库(FAISS)和重排序模型。
  5. Tool Agents:实现 ReAct 循环,使 LLM 能使用外部工具(计算器、沙箱、API)。
  6. Coding Agents:创建能够修改本地代码并运行测试的高级代理,使用 MCP(Model Context Protocol)、Skills 和 Subagents。

Who it’s for

具备 Python 和深度学习基础,想通过实操、代码优先的练习进入 LLM 与 AI 代理领域的学习者。

Highlights

  • Progressive Curriculum:从基础架构逐步过渡到高级代理工作流。
  • Hands-on Validation:每个任务都提供 eval/run.py 脚本,立即反馈实现是否正确。
  • Hardware Accessible:设计可在消费级 GPU(8GB‑16GB VRAM)或 Mac M 系列芯片上运行。
  • Comprehensive Tech Stack:覆盖 RoPE、LoRA、DPO、RAG、ReAct、MCP 等现代技术。