datawhalechina/self-llm

《开源大模型食用指南》针对中国宝宝量身打造的基于Linux环境快速微调(全参数/Lora)、部署国内外开源大模型(LLM)/多模态大模型(MLLM)教程

这个项目是什么

self-llm(标题为“开源大模型食用指南”)是一个免费的、社区编写的教程合集。它教中文初学者如何在 Linux 计算机上安装、运行和定制开源大语言模型(LLM)。

该项目的核心目标是降低技术门槛,让普通学生和研究人员——不仅仅是工程师——能够真正在本地使用开源 LLM,而不是只能调用付费 API。

适合谁

README 列出了以下目标学习者:

  • 想使用 LLM 但无法访问或负担不起商业 API 的人
  • 需要长期、低成本、高容量 LLM 使用的人
  • 对开源 LLM 好奇并想获得动手经验的人
  • 想超越理论的 NLP 学生
  • 想构建定制化、领域特定 LLM(例如,为自己的领域)的人
  • 没有特殊技术背景的普通学生

它教什么

四个主要技能领域,按推荐顺序:

  1. 环境搭建 — 针对不同模型量身定制的逐步 Linux 配置指南
  2. 部署 — 如何在本地运行模型,包括命令行使用、Web 演示以及与 LangChain 框架的集成
  3. 微调 — 包括全量微调(包括分布式训练)和高效方法如 LoRA 和 P-Tuning
  4. 应用 — 部署后使用模型的实际方法

支持的模型和平台

  • 50+ 主流 LLM 被覆盖,每个都有完整的部署、微调和使用教程。示例包括 Qwen(多个版本)、DeepSeek、GLM/ChatGLM、Llama、InternLM、MiniCPM、Gemma、Kimi、Baichuan、Yi 等。
  • AMD GPU 部分 — 通过 ROCm 在 AMD 硬件上运行模型的教程,使用 LM Studio、vLLM、Ollama 和 llama.cpp 等工具。由 AMD 大学计划支持。
  • 昇腾 NPU 部分 — 华为昇腾 NPU 平台的教程,包括通过 vLLM-ascend、MindIE 和 sglang-ascend 部署,以及性能/精度测试指南。
  • Apple M 系列 — 专门针对 Apple Silicon Mac 的部分(单独链接)。
  • Muxi GPU — 列为“即将推出”。
  • 项目明确欢迎其他硬件平台的贡献(例如,摩尔线程 MUSA)。

包含的示例项目

四个完整示例展示了实际中的完整流程:

  • Chat-嬛嬛 — 使用 LoRA 在中国电视剧《甄嬛传》的对话台词上微调的聊天机器人,模仿角色的说话风格
  • Tianji-天机 — 一个完整的社交/人际场景 LLM 系统,涵盖提示工程、智能体构建、数据收集、微调和 RAG 数据清洗
  • AMChat — 从 InternLM2-Math-7B 微调而来的数学专注 LLM,用于回答高等数学问题
  • 数字生命 — 在自定义数据集上微调的个人 AI 克隆,模仿创建者的语气、表达和思维模式;数据集构建过程被强调为关键创新

建议的学习路径

  1. 先进行环境配置(这是基础)
  2. 其次进行模型部署和使用
  3. 最后进行微调(这是高级主题)

建议初学者从 Qwen1.5、InternLM2 或 MiniCPM 等模型开始。

社区和贡献

  • 任何人都可以打开 issue 或提交 pull request 来帮助构建项目。
  • 活跃贡献者可以被添加为维护者。
  • 该项目是 Datawhale 开源社区的一部分,该社区还维护相关教程:Happy-LLM(从零构建 LLM)、Tiny-Universe(手写 RAG、Agent 和 Eval 系统)、so-large-llm(LLM 理论)和 llm-universe(构建 LLM 应用)。
  • 一长串具名的核心贡献者被致谢,还有贡献者图表和星标历史图表。

关键要点

项目的使命声明:“我们希望成为 LLM 与普通人之间的垫脚石——以开源的自由和平等精神拥抱广阔的 LLM 世界。”

相关

  • 项目
  • 项目
  • 项目
  • 项目