Skip to content

code-your-own-llm #375

@Tsumugii24

Description

@Tsumugii24

你是否已经阅读并同意《Datawhale开源项目指南》?

你是否已经阅读并同意《Datawhale开源项目行为准则》?

项目简介

code-your-own-llm 是一个基于 nanochat 深度扩展的全栈式大语言模型学习项目。该项目面向任何对大语言模型原理与工程实践感兴趣的学习者,以最简洁的代码实现、最清晰的原理讲解,系统性地展示从零开始构建大语言模型的完整流程。项目涵盖环境配置、数据处理、分词技术、模型架构设计、预训练与中期训练、有监督微调、强化学习对齐、模型推理优化、评估体系构建以及安全性保障等大语言模型全生命周期的关键环节。我们用极致扁平化的代码结构,零层级嵌套和极简的项目依赖,让学习者能够深入理解每一行代码背后的数学原理与工程考量。

立项理由

大语言模型技术正在深刻改变人工智能的发展方向,但目前市面上的学习资源要么过于理论化缺乏工程实践,要么代码过于复杂充斥着层层封装和抽象,让初学者难以理解核心原理。现有的开源框架如 transformersLLaMA-Factory 等虽然功能强大,但其代码结构对新手并不友好,学习曲线陡峭。该项目受 Andrej Karpathy 的 nanochat 启发,旨在提供一个"麻雀虽小,五脏俱全"的最小化但完整的大语言模型实现,用最简洁直白的代码展示从数据处理到模型部署的全流程。我们希望通过这个项目,让学习者不仅知其然,更知其所以然,能够真正掌握构建和训练大语言模型的核心技术,为未来深入研究或工业应用打下坚实基础。

项目受众

  • 对大语言模型原理感兴趣,希望深入理解其工作机制的技术爱好者;
  • 计算机科学、人工智能相关专业的学生,需要系统学习大语言模型技术栈;
  • 从事 AI 相关工作的工程师和研究人员,希望掌握大语言模型从训练到部署的全流程;
  • 希望自己动手训练小型语言模型,用于特定领域或场景的开发者;
  • 以及任何充满学习热情、想要探索大语言模型技术本质的学习者。

项目亮点

一个真正从零开始、端到端完整的大语言模型实践教程,采用极简代码风格,零封装、零继承,每一行代码都清晰可读。项目涵盖从数据处理、分词器构建、模型架构设计、预训练、微调、强化学习对齐到推理部署的完整流程,不仅提供代码实现,更深入讲解背后的数学原理和工程考量。项目知识体系完整且合理,难度层级划分清晰,从原理到实践层层递进。完成后将成为 Datawhale 大语言模型系列教程中的核心基础项目,为学习者提供扎实的技术功底。

项目规划

目录

章节 摘要 状态
第1章 引言 项目概述和使用建议 🚧
第2章 环境配置 🚧
第3章 数据 🚧
第4章 分词 🚧
第5章 模型架构 🚧
第6章 预训练 🚧
第7章 中期训练 🚧
第8章 有监督微调 🚧
第9章 强化学习 🚧
第10章 模型推理 🚧
第11章 模型评估 🚧
第12章 模型安全与红队测试 🚧
附录 附录部分 🚧

项目负责人

姜舒凡 @Tsumugii24

预估完成日期

Timeline:
整体章节规划 10/15
大纲修改拟定 10/20
核心章节初稿完成 10/31
公测/组队学习 参与11月组队学习

已完成内容

https://github.com/datawhalechina/code-your-own-llm

❗❗❗注意事项❗❗❗:为了便于我们跟你取得联系,请务必加我们的微信:at-Sm1les(备注你来自于项目立项即可),发起立项申请后DOPMC成员将会在7天内给出审核意见并评论在该Issue,若7天内无反对意见则默认立项通过,如有任何疑问或者需要帮助均可随时联系微信:at-Sm1les

  • 我已知悉上述注意事项并添加了微信:at-Sm1les

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions