用 “从零动手” 点燃大模型学习热潮|CodeMaster#8

在 AI 浪潮以前所未有之势重塑技术与产业格局的今天,一个名为 Happy-LLM 的大模型开源教程项目在线上脱颖而出,短短一天内便斩获 3k+ 星标,迅速被开发者社区誉为“大模型学习圈的顶流教程”。
然而,在这个耀眼项目的背后,是一位拥有非典型技术背景的 90 后研究者 —— 宋志学。他从测绘工程专业成功跨行至 AI 领域,从最初的开源小白成长为明星开源项目负责人,其历程本身就如同一部生动的“从零开始”教科书。
本期报道对话 Self-LLM 和 Happy-LLM 两个开源项目的作者宋志学,探寻项目爆火背后的故事与理念,了解宋志学如何凭借对技术的热情和开源社区的协作力量,将个人的学习需求转化为服务广大开发者的公共资源,看他如何用具体的行动和实践降低大模型学习的高门槛,让更多开发者能够受益于开源共享的力量,共同参与并塑造智能时代的未来。
1|缘起:一个非典型程序员的开源之旅
代码君: 志学您好,很高兴能采访到您。能否先请您简单介绍一下自己?您是如何走上开源这条路的?
宋志学: 我叫宋志学,目前在 Datawhale 开源社区做一些关于大模型的开源内容,同时在西湖大学张驰老师的 AGI lab 实验室担任科研助理。

其实我的经历可能比较“非典型”。我本科是测绘工程专业,和计算机并没有直接关系。转折点发生在我接触 LeetCode 的时候,那些算法题目让我产生了浓厚兴趣。在刷题过程中,我偶然发现了 Datawhale 这个社区,就像是打开了一扇新世界的大门。
记得有一次,社区组织学习李沐老师的《动手学深度学习》,我提前预习了几个章节。当看到群里招募助教时,虽然心里没底,但还是鼓起勇气报了名。现在回想起来,那可能是我开源生涯的“第一粒扣子”——从学习者转变为贡献者。
代码君: 您是在怎样的背景下加入 Datawhale 社区的?这个社区对您的成长有哪些帮助?
宋志学: 我有做笔记的习惯,当时在做 Datawhale 社区助教的时候,就想把李沐老师《动手学深度学习》的课后习题做一下,做成一套笔记。然后一个 Datawhale 的成员锋哥(胡锐锋)看到后就建议:“我们可以把这个做成开源项目。”我惊讶地问:“我这个东西就能做开源项目吗?”我当时还想进一步再确认一下,然后他说:“不用管那么多,直接开始做就行。”
这种“先动手,再走程序”的理念彻底改变了我对开源的认知。作为非计算机专业的学生,我当时连 GitHub 都不会用,但在 Datawhale 鼓励自由探索的氛围下,我自然而然地就慢慢走上了开源这条路。
有意思的是,当时我们还有一个“原神群”,但是大家游戏群不聊游戏,反而经常讨论技术问题,我们经常在里面聊一些深度学习的话题哈哈哈。
后来我们这个项目做的差不多的时候,我就正式申请加入Datawhale,目的很明确:想多学习深度学习算法,与更多人交流。这是我职业生涯的重要转折点。
代码君: 刚才您提到李沐老师的《动手学深度学习》对您影响很深,能否具体分享一下这本书的独特价值?
宋志学: 这本书对我来说是深度学习的启蒙书。作为非计算机专业的学生,我在接触这本书之前对深度学习其实没什么了解。这本书最打动我的是其独特的教学理念——“从零实现+框架调用”的双重路径。
就比如说第三章线性回归,书里李沐老师会首先要求读者用 NumPy 或 PyTorch 手动实现整个训练过程,这一步让学习者真正理解算法本质。然后才会介绍如何使用 PyTorch 的高级接口快速实现相同功能。
这种“先理解原理,再掌握工具”的方法对我的开源项目设计也有很大的影响。在 Happy-LLM 的第五章和第六章,我们也是沿用了这一思路:第五章要求学习者用 PyTorch 从零实现 LLaMA2 的每一层网络,甚至从预训练开始完整走一遍流程;第六章则转向使用 Hugging Face Transformers 等成熟框架进行高效开发。
很多教程只教“怎么做”,但这本书就会同时告诉你“为什么这么做”。这种方法尤其适合我这种跨专业学习者。

🔗 《动手学深度学习》:https://zh.d2l.ai/index.html
2|破局:从个人需求到社区爆款的蜕变
代码君: 您是 Happy-LLM 和 Self-LLM 的主要作者之一,这两个项目在短时间内获得了广泛关注。能否分享一下这两个项目诞生的初衷?当初希望解决什么问题?
宋志学: 这两个项目的诞生其实都很“自然”,源于真实的社区需求。先说 Self-LLM(开源大模型使用指南),这个项目目前有 25,000 多个 star,但它的起点很朴素。
最初我和 Datawhale 的小伙伴在上海人工智能实验室合作开发 InternLM 大模型的入门教程,我负责编写“Hello LLM”这样的基础章节。当时实验室提供了一些算力资源,在完成本职工作后,我想着“既然有算力,不如多尝试几个模型”,于是就开始整理 ChatGLM、千问等当时热门模型的训练脚本和 Web Demo,后来越来越多人来询问这些脚本资源,我意识到这可能是个普遍需求。大模型技术刚兴起时,虽然核心概念不复杂,但真正了解的人很少,市场上缺乏入门级的实践指南。
我记得当时有个有趣的观察:百川、零一万物等模型现在都转向垂直领域了,但在 2023 年,它们都是通用大模型的重要参与者。我们的项目就像个“时光胶囊”,记录了大模型发展的各个阶段——最新模型放在最上面,早期模型放在下面。
代码君: 也就是说您最初并未有意设定项目的理想使用场景或者用户画像,只是单纯地从解决问题的角度出发对吗?
宋志学: 我们在做这个项目时确实没有考虑太多问题,比如 Self-LLM 占据了哪个生态位之类的,我们就是基于一个简单想法:“既然我们自己需要,可能别人也需要”。
我和项目联合负责人邹雨衡把平时写的脚本整理成仓库,挂到 Datawhale 组织下。出乎意料的是,项目很快获得了关注,短时间内就达到 1000 多个 star。
当时虽然有 LLAMA Factory 这样的优秀工具,但它们更多是“黑盒”解决方案。用户把数据丢进去,模型出来,但中间过程不透明。而我们在 Self-LLM 中把整个训练流程拆解展示:数据构造、预处理、模型加载、微调策略等每个环节都透明化。
这种设计让学习者不仅知道“怎么做”,更理解“为什么这样做”。很多研究生和工程师通过我们的教程,真正掌握了模型训练的原理,再回去使用其他框架时就能得心应手。
Self-LLM 最初的受众以研究生群体居多,因为当时大家都在尝试模型训练,而随时间不断发展,可以看到目前大模型面向的群体开始越来越庞大,更多的大学生、在职党也加入了进来。所以我觉得 Self-LLM 能做成功的原因就在于它其实面向了一个非常广大的群体。
其中特别是大学生群体的参与度很高。从提交的 issue 和 PR 来看,超过一半的贡献来自学生。他们的问题也很具体:“我们实验室有几张卡,能不能微调某个模型?”这种来自一线的需求,让我们的教程始终保持实用性。
代码君: 从 Self-LLM 到 Happy-LLM,这其中的成长路径是怎么样的?
宋志学: 随着 Self-LLM 用户的增多,我们开始收到大量反馈。很多学习者告诉我们:“Self-LLM 就像是一个丰富的工具包,每个模型都有对应的使用模块,需要什么工具直接来取就行。但是,如果我们想要系统性地了解大模型的整个发展历程、架构演变,以及完整的学习路径,应该去哪里呢?”
这些声音不仅来自 issue 区,还有很多人通过微信私聊、技术群讨论等方式直接联系我们。这种需求的普遍性让我意识到,是时候创建一个更体系化的教程了。
所以去年五六月份的时候,我和项目的另一位负责人邹雨衡,以及 Datawhale 的开源项目负责人谢文睿进行了深入讨论。我们都认为,市场上确实缺少一个能够全景式展现大模型技术脉络的教程。于是 Happy-LLM 应运而生,目标很明确:为学习者提供一条从入门到精通的全链路学习路径。
但让我们所有人都没想到的是,Happy-LLM 项目开源第一天就获得了 3000 多个star,不到一个月的时间就突破 1 万 star,现在已经有 2 万多 star 了。说实话,这个增长速度让我非常震惊。
代码君: 了解到 Happy-LLM 和 Self-LLM 已经取得了显著成就,能否分享一下项目未来的发展规划?是会更注重技术升级、应用落地,还是社区共建?
宋志学: 我们确实有比较清晰的 roadmap。首先对于 Self-LLM,它已经形成了良性的社区更新机制。每当有新模型发布,比如最近 Minimax 的 M2 模型,社区贡献者就会主动跟进,第一时间更新模型结构和使用指南。这已经不再需要我亲自维护,而是由众多热情的开发者和研究者共同推动。
然后 Happy-LLM 目前正在实现“三次进化”。首先,我们正与人民邮电出版社合作,预计年底推出纸质版书籍,这将让更多不习惯在线阅读的学习者受益。其次,我们启动了多语言化计划,正在开发英文版及其他语言版本,希望将中国的开源教育经验推广到全球。
最重要的是,我们设计了独特的“扩展章节”机制。虽然现有的内容已经覆盖了从 NLP 基础到 Transformer 架构以及预训练模型的完整知识体系,但我们鼓励学习者在学习过程中提交自己的实践笔记、技术发现甚至是顶会论文的创新点。这既是对贡献者个人能力的展示,也为项目注入了持续更新的活力。
除了这两个项目,Datawhale 最近还推出了“Hello-Agents”项目,专注于大模型智能体的系统教学。
我们认为 Agent 技术可以分为两类:一类是偏软件工程的 Agent,比如 Dify 的 AI Agent 开发平台、Coze 等,这些更适合产品化部署;另一类是 AI 原生的 Agent 框架,如 Camel-AI、MetaGPT 等,更注重智能体本身的能力演进。“Hello-Agents”的教程将重点放在后者,帮助开发者理解智能体的核心技术原理。
3|深耕:开源社区运营的方法论
代码君: 您提到社区对项目发展至关重要,从生态建设角度来看,您希望社区扮演什么样的角色?欢迎哪些类型的开发者参与?
宋志学: 我觉得首先要破除“做开源必须技术高超”这个观念。回想我最初接触开源时,都不知道如何提交 issue 和 PR,但这并没有阻碍我参与开源。现在很多朋友问我:“我什么都不会,也能参与开源吗?”我的回答永远是:“没问题,边做边学就好。”
一个人能否做好开源项目,技术不是决定性因素。最重要的是对这件事是否有热情,是否真正感兴趣。我认为有两个关键点:一是降低参与门槛,技术不高的时候也可以参与,比如把自己的学习笔记开源出来;二是保持热情,你可以有功利性目的,但不能只有功利性目的。做 Self-LLM 和 Happy-LLM 时,我们并没有获得什么资金支持。初期连计算卡都没有,完全是通过资源共享的方式推进,但这种在资源有限情况下的坚持,恰恰体现了开源精神的本质。
开源最美的地方在于,它既是个人成长的平台,也是社区共赢的生态系统。社区中的每个人没有明确的目的,你可以自主选择你感兴趣的任何事情,还可以在社区里找到很多与你志同道合的伙伴,甚至找到职业发展的新方向。
代码君: 基于您从零开始到成功运营多个热门项目的经验,对于那些想要参与开源或启动自己项目的后来者,您最想分享的建议是什么?
宋志学: 我想说的是,不必等到“准备好”再开始。如果你对开源感兴趣,现在就可以参与。可以从简单的开始:查看其他项目有哪些可以改进的地方,提交 issue 与维护者沟通,或者直接提交 PR。在 Self-LLM 项目的 general 目录下,我们专门准备了 Markdown 文档,详细说明如何提交需求和 PR,就是为了降低参与门槛。事实上,每个成熟的开源项目都应该有类似的贡献指南,这是构建友好社区的基础设施。
心态层面上,要去做你真正热爱的事情。只有功利性目的的项目很难持久。你可以希望借助开源项目获得实习机会或者丰富简历,但如果这成为唯一动力,当遇到困难时很容易放弃。相反,如果是真正感兴趣的方向,即使没有即时回报,你也能从中获得乐趣和成就感。
保持好奇,勇敢开始,做你热爱的事,然后在社区中找到你的同行者。
4|展望:AI 时代开源的机遇与挑战
代码君: 在当前技术浪潮下,您如何看待 AI 与开源之间的关系?这是一种简单的加速器效应,还是更深层次的范式变革?
宋志学: 我认为开源与 AI 是相互促进的共生关系。以 DeepSeek 发布最新模型为例,当他们开源模型并发布技术文档后,整个社区都能从中学习到先进的训练方法和架构设计。同样,当 Kimi 开源其模型时,研究者可以深入研究其技术细节和创新点。
这种开放共享的模式,让后来者能够站在前人的肩膀上继续创新,形成了良性的技术演进循环。不过,这种开放也带来了“逆水行舟,不进则退”的效应——如果你的项目开源后停滞不前,很快就会被其他不断创新的项目超越。
代码君: 随着大模型技术的发展,开源项目的参与门槛似乎在不断提高,您如何看待这种趋势?
宋志学: 实际上,开源门槛正在出现明显的两极化现象。对于基础工具和应用开发,门槛确实在降低。借助 Vibe Coding 工具,即使是没有深厚编程背景的人,也能将自己的想法转化为可用的开源项目。
但在高端技术领域,如大模型训练、核心算法创新等,门槛不降反升。比如要研究改进位置编码算法 ROPE,或者开发 3D 生成模型,不仅需要深厚的理论功底,还需要大量的计算资源和团队协作。这些领域可能越来越由少数具备资源优势的团队主导。
代码君: 在 AI 编程工具日益强大的背景下,程序员受到的挑战越来越严峻,您认为未来程序员的哪些能力会变得更加重要?
宋志学: 首先是系统架构和工程管理能力。以 React 或 Vue 这样的前端框架为例,其代码结构复杂,模块间依赖关系错综复杂。AI 工具目前还难以整体把握这种大型项目的架构设计。
其次是需求定义和问题发现能力。现在的 AI 编程工具能够很好地执行明确的指令,但无法自主识别需求或发现潜在问题。这种对业务和技术的深度洞察,仍然需要人类来完成。
具体来说,未来程序员需要具备三种核心能力:
- 对复杂系统的整体认知和理解能力
- 跨领域的问题定义和需求分析能力
- 大型项目的工程管理和协作能力
我认为未来的趋势不是 AI 取代程序员,而是程序员需要学会更好地驾驭 AI 工具。就像当年程序员需要适应从命令行到 IDE 的转变一样,现在我们需要适应与 AI 协作的新工作模式。
那些只会调用 API、完成简单任务的程序员确实面临挑战,但具备系统思维和架构能力的开发者将更加珍贵。他们能够指挥 AI 工具完成具体的实现工作,而自己专注于更高级别的设计和规划。
代码君: 了解到您目前在西湖大学 AGI 实验室从事科研工作,能否分享一下个人接下来的研究方向或技术探索主题?
宋志学: 目前我在张驰老师的 AGI 实验室主要研究多模态模型性质研究,同时也在开展多模态模型智能体的相关研究。后续还计划深入 Diffusion LLM 领域,我认为扩散模型在生成速度和质量平衡方面具有独特优势。
在开源项目方面,我可能不会主动开新项目,但保持着一个重要习惯:每当有新模型或新技术出现时,我会第一时间研究其代码实现和架构设计。这种“刨根问底”的技术观察习惯,让我能够持续跟踪技术前沿的发展脉络。
此外,我逐渐意识到,单纯的技术视角可能不够全面。最近我开始关注一个有趣的现象:有些开源项目技术实现并不复杂,却能获得大量关注。这促使我思考——技术价值与产品价值之间的转换关系。
比如一个看似简单的工具,如果精准抓住了用户的痛点需求,其影响力可能远超技术复杂的项目。这种认知让我开始有意识地培养产品思维,尝试从用户需求角度反推技术实现路径,而不是纯粹从技术角度出发。
给开发者的话
让技术变得触手可及,让每个人都能在开源中找到自己的位置。
我相信开源的本质是知识的民主化,是技术进步的催化剂。通过降低参与门槛,营造友好环境,让更多人有勇气迈出第一步,并在实践中找到属于自己的技术道路。这不仅是我的个人信念,也是我们所有项目努力的方向。
开源项目链接:
- Self-LLM:https://gitcode.com/datawhalechina/self-llm
- Happy-LLM:https://gitcode.com/GitHub_Trending/ha/happy-llm
「专栏结语」
从技术钻研到产品思维,从个人成长到社区建设,宋志学展现了一位开源贡献者的完整成长路径。他的经历告诉我们,技术道路不仅是代码的积累,更是思维的进化。在快速变化的技术世界中,保持学习的好奇心、拥抱批评的勇气、以及从用户角度思考的习惯,或许才是开发者最宝贵的品质。 「成为 CodeMaster」
「CodeMaster 专栏人物」聚焦开源界有影响力与创新力的人物,通过深度访谈挖掘他们开源旅程中的故事,展现其魅力风采。「CodeMaster 专栏人物」会在 GitCode 公众号独家发布,依托庞大用户群体和广泛传播渠道,给予参与者大量曝光,使其理念与成果在开源乃至整个技术领域产生深远影响。
如果你在开源领域拥有丰富的故事和经历,想要展现自我、收获成长,扫描下方二维码联系代码君报名「CodeMaster 开源先锋计划」,一同在这个平台上书写属于自己的开源故事,为开源事业发展贡献一份力量。
长按二维码添加 GitCode 代码君,报名 CodeMaster

新一代开源开发者平台 GitCode,通过集成代码托管服务、代码仓库以及可信赖的开源组件库,让开发者可以在云端进行代码托管和开发。旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。
更多推荐



所有评论(0)