模型 / 数据集
datawhalechina/self-llm avatar
datawhalechina/self-llm

self-llm:一份面向国内初学者的开源大模型部署与微调教程

项目速览:Linux /Lora 法学硕士 / MLLM。 《开源大模型吃货指南》是为中国宝宝量身定制的基于Linux环境的国内外开源大模型(LLM)/多模态大模型(MLLM)快速微调(全参数/Lora)和部署的教程。

32,217 个 Star3,120 个 ForkJupyter NotebookApache-2.0
GitHub

秒懂

它是什么?
self-llm 是一个基于 Linux 平台、覆盖 50 余个主流开源 LLM/MLLM 的部署与微调教程仓库。它把环境配置、模型调用、LoRA 微调等内容整理成可跟随的步骤,但也存在教程更新滞后和依赖外部工具链的问题。
适合谁用?
self-llm 适合没有 GPU 服务器使用经验、需要从零开始部署或微调开源模型的国内学生和研究者,尤其是想快速上手 Qwen、InternLM、MiniCPM 等模型的初学者。它不适合已经熟悉 conda、CUDA、transformers 等工具链的开发者,也不适合需要最新版本模型支持的人。
能商用吗?
可以。Apache-2.0 是宽松许可证:你可以使用、修改并销售基于它的软件,只需保留版权和许可证声明。
还在维护吗?
在维护。仓库最近一次提交在 4 天前。
用什么语言写的?
主要是 Jupyter Notebook(依据 GitHub 的语言统计)。

以上回答依据项目的 GitHub 数据(最近同步于 2026年9月15日)和我们的分析,不构成法律意见。

开源项目深度解析

它解决的是「从哪开始」的问题

开源大模型的数量增长很快,但每个模型的部署方式都有差异。对于没有接触过 Linux 服务器、CUDA 环境或 transformers 库的学生来说,光是把一个模型跑起来就可能耗费数天。self-llm 把这些问题整理成一套按模型分类的教程,覆盖环境配置、本地部署、命令行调用、在线 Demo、LangChain 集成以及全参数微调和 LoRA 微调。它的目标读者很明确:国内普通学生和研究者,尤其是那些没有 API 使用条件或希望低成本长期使用模型的人。

仓库结构:按模型组织,而非按任务组织

仓库的主体是 support_model.md 中列出的 50 余个模型条目,每个条目链接到对应的教程目录。每个教程通常包含环境配置、模型下载、推理示例和微调示例。这种组织方式的好处是,你只需要找到自己感兴趣的模型,然后按步骤执行即可。缺点是,不同模型之间的教程结构并不统一,有的模型可能只提供部署说明,而微调部分则依赖外部工具如 xtuner。例如 AMChat 示例使用 InternLM2-Math-7B 并通过 xtuner 微调,而 Chat-嬛嬛 则是基于《甄嬛传》台词做 LoRA 微调。这种多样性反映了社区共创的性质,但也意味着教程质量参差不齐。

环境配置是第一个门槛,也是教程的重点

README 中明确建议学习顺序:先环境配置,再部署使用,最后微调。环境配置部分针对不同模型给出不同的依赖要求,例如 CUDA 版本、Python 版本、显存大小等。这些内容通常以 Jupyter Notebook 或 Markdown 文件呈现,包含具体的 conda 创建命令、pip 安装命令和模型下载链接。对于初学者,这些步骤可以照抄,但需要留意教程中的版本号是否与当前模型仓库一致。由于模型迭代快,教程可能滞后,例如 README 中提到的 Qwen3.5、MiniCPM5 等模型,实际发布时间可能早于教程更新。

微调部分:LoRA 为主,全参数为辅

项目涵盖全量微调和高效微调,其中 LoRA 是主要的高效微调方法。以 Chat-嬛嬛 为例,它利用《甄嬛传》剧本中甄嬛的台词,基于 LLM 进行 LoRA 微调,最终得到一个模仿甄嬛语气的聊天模型。这类示例的价值在于展示了完整流程:数据准备、模型选择、微调参数设置、推理测试。但项目没有提供统一的微调框架,而是针对不同模型推荐不同的工具,例如 xtuner、transformers 等。这意味着你无法从一个教程中迁移所有经验,换一个模型就需要重新学习新的工具链。

局限:教程的时效性和深度问题

开源模型更新频繁,而教程仓库的维护节奏往往跟不上。README 中列出的模型列表已经包含一些较新的模型,但具体教程中的命令和依赖版本可能基于旧版本。另一个局限是,教程侧重于「怎么做」,而不是「为什么这么做」。例如,它不会解释 LoRA 为什么能减少显存占用,也不会深入讨论不同微调策略的权衡。如果你需要理解底层原理,README 中推荐了 Datawhale 的另一个项目 Happy-LLM 来学习从零训练。因此,self-llm 更适合作为操作手册,而非理论教材。

替代方案:Happy-LLM 与官方文档

与 self-llm 最接近的替代是 Datawhale 的 Happy-LLM,它从零开始讲解大语言模型的原理和训练流程,适合想深入理解模型机制的人。而 self-llm 则更偏向于快速上手。另一个替代是直接阅读各模型的官方文档,例如 Qwen 或 Llama 的官方 GitHub 仓库,这些文档通常更新及时,但缺乏针对国内环境的配置说明,比如镜像源、国内服务器选择等。self-llm 的优势在于它聚合了多个模型的教程,并针对 Linux 平台做了适配,但代价是可能不如官方文档准确。

维护与许可证:Apache-2.0 下的社区驱动

项目采用 Apache-2.0 许可证,这意味着你可以自由使用、修改和分发教程内容,但需要注意保留版权声明。仓库的维护依赖社区贡献,任何人都可以提出 issue 或提交 PR。从 README 看,项目有明确的贡献者协作机制,但未提供版本发布记录,也没有明确的维护承诺。对于学习者来说,这意味着教程可能随时变化,你需要自行判断内容的时效性。如果某个模型教程长期未更新,建议直接参考该模型的官方仓库。

编辑结论

self-llm 适合没有 GPU 服务器使用经验、需要从零开始部署或微调开源模型的国内学生和研究者,尤其是想快速上手 Qwen、InternLM、MiniCPM 等模型的初学者。它不适合已经熟悉 conda、CUDA、transformers 等工具链的开发者,也不适合需要最新版本模型支持的人。在采用前,应先确认你选择的模型在 support_model.md 中是否仍在维护,并检查对应教程中的依赖版本是否与当前模型仓库的 release 一致。对于生产环境部署,建议以官方模型卡和框架文档为准,本项目仅作为学习路径参考。

官方来源

  1. Official README
  2. Project repository
社区笔记

社区笔记