self-llm README

The project's README from github.com/datawhalechina/self-llm. As one markdown file: README.md.

开源大模型食用指南

中文 | English

  本项目是一个围绕开源大模型、针对国内初学者、基于 Linux 平台的中国宝宝专属大模型教程,针对各类开源大模型提供包括环境配置、本地部署、高效微调等技能在内的全流程指导,简化开源大模型的部署、使用和应用流程,让更多的普通学生、研究者更好地使用开源大模型,帮助开源、自由的大模型更快融入到普通学习者的生活中。

  本项目的主要内容包括:

  1. 基于 Linux 平台的开源 LLM 环境配置指南,针对不同模型要求提供不同的详细环境配置步骤;
  2. 针对国内外主流开源 LLM 的部署使用教程,包括 LLaMA、ChatGLM、InternLM 等;
  3. 开源 LLM 的部署应用指导,包括命令行调用、在线 Demo 部署、LangChain 框架集成等;
  4. 开源 LLM 的全量微调、高效微调方法,包括分布式全量微调、LoRA、ptuning 等。

  项目的主要内容就是教程,让更多的学生和未来的从业者了解和熟悉开源大模型的食用方法!任何人都可以提出issue或是提交PR,共同构建维护这个项目。

  想要深度参与的同学可以联系我们,我们会将你加入到项目的维护者中。

  学习建议:本项目的学习建议是,先学习环境配置,然后再学习模型的部署使用,最后再学习微调。因为环境配置是基础,模型的部署使用是基础,微调是进阶。初学者可以选择Qwen1.5,InternLM2,MiniCPM等模型优先学习。

  进阶学习推荐 :如果您在学习完本项目后,希望更深入地理解大语言模型的核心原理,并渴望亲手从零开始训练属于自己的大模型,我们强烈推荐关注 Datawhale 的另一个开源项目—— Happy-LLM 从零开始的大语言模型原理与实践教程 。该项目将带您深入探索大模型的底层机制,掌握完整的训练流程。

注:如果有同学希望了解大模型的模型构成,以及从零手写RAG、Agent和Eval等任务,可以学习Datawhale的另一个项目Tiny-Universe,大模型是当下深度学习领域的热点,但现有的大部分大模型教程只在于教给大家如何调用api完成大模型的应用,而很少有人能够从原理层面讲清楚模型结构、RAG、Agent 以及 Eval。所以该仓库会提供全部手写,不采用调用api的形式,完成大模型的 RAG 、 Agent 、Eval 任务。

注:考虑到有同学希望在学习本项目之前,希望学习大模型的理论部分,如果想要进一步深入学习 LLM 的理论基础,并在理论的基础上进一步认识、应用 LLM,可以参考 Datawhale 的 so-large-llm课程。

注:如果有同学在学习本课程之后,想要自己动手开发大模型应用。同学们可以参考 Datawhale 的 动手学大模型应用开发 课程,该项目是一个面向小白开发者的大模型应用开发教程,旨在基于阿里云服务器,结合个人知识库助手项目,向同学们完整的呈现大模型应用开发流程。

项目意义

  什么是大模型?

大模型(LLM)狭义上指基于深度学习算法进行训练的自然语言处理(NLP)模型,主要应用于自然语言理解和生成等领域,广义上还包括机器视觉(CV)大模型、多模态大模型和科学计算大模型等。

  百模大战正值火热,开源 LLM 层出不穷。如今国内外已经涌现了众多优秀开源 LLM,国外如 LLaMA、Alpaca,国内如 ChatGLM、BaiChuan、InternLM(书生·浦语)等。开源 LLM 支持用户本地部署、私域微调,每一个人都可以在开源 LLM 的基础上打造专属于自己的独特大模型。

  然而,当前普通学生和用户想要使用这些大模型,需要具备一定的技术能力,才能完成模型的部署和使用。对于层出不穷又各有特色的开源 LLM,想要快速掌握一个开源 LLM 的应用方法,是一项比较有挑战的任务。

  本项目旨在首先基于核心贡献者的经验,实现国内外主流开源 LLM 的部署、使用与微调教程;在实现主流 LLM 的相关部分之后,我们希望充分聚集共创者,一起丰富这个开源 LLM 的世界,打造更多、更全面特色 LLM 的教程。星火点点,汇聚成海。

  我们希望成为 LLM 与普罗大众的阶梯,以自由、平等的开源精神,拥抱更恢弘而辽阔的 LLM 世界。

项目受众

  本项目适合以下学习者:

项目规划及进展

   本项目拟围绕开源 LLM 应用全流程组织,包括环境配置及使用、部署应用、微调等,每个部分覆盖主流及特点开源 LLM:

Example 系列

已支持模型

✨ 已支持 50+ 主流大语言模型 ✨
每个模型都提供完整的部署、微调和使用教程
📖 查看完整模型列表和教程 | 🎯 快速开始

• MiniCPM5
• Qwen3.5
• Kimi-K2.5
• Step-3.5-Flash
• GLM-4.7-Flash
• GLM-5.2
• Gemma3
• MiniMax-M3
• MiniMax-M2.7
• MiniMax-M2.5
• MiniMax-M2
• Qwen3
• Qwen3-VL
• SpatialLM
• Hunyuan3D-2
• Qwen2-VL
• MiniCPM-o
• Qwen2.5-Coder
• DeepSeek-Coder-V2
• gpt-oss-20b
• GLM-4.1-Thinking
• DeepSeek-R1
• InternLM3
• phi4
• GLM-4.5-Air
• Hunyuan-A13B
• DeepSeek
• Baichuan
• InternLM
• Kimi
• ERNIE-4.5
• Llama4
• Apple OpenELM
• Llama3.1
• Gemma-2
• Qwen2.5
• Qwen2
• GLM-4
• Qwen 1.5
• phi-3
• MiniCPM
• Yi 零一万物
• Yuan2.0
• Yuan2.0-M32
• 哔哩哔哩 Index
• CharacterGLM
• BlueLM
• Qwen-Audio
• TransNormerLLM
• Atom
• ChatGLM3
• Qwen2-57B-A14B-Instruct
• Qwen2-72B-Instruct
• Qwen2-7B-Instruct
• InternLM2-20B
• Tele-Chat
• XVERSE2

AMD GPU 专区

ROCm     AMD University Program

🚀 AMD GPU 平台已支持模型
每个模型都提供完整的 ROCm 环境配置与部署教程(LM Studio / vLLM / Ollama / llama.cpp)
感谢 AMD University Program(AMD 大学计划)对本项目的支持
📖 查看完整 AMD 平台模型列表和教程
📘 进阶学习推荐:hello-rocm(Datawhale ROCm 部署 / 微调 / 基础设施完整教程)

• 谷歌 Gemma4
• ROCm 7 环境准备
• LM Studio / vLLM / Ollama / llama.cpp
• Qwen3.5
• ROCm 7 环境准备
• LM Studio / vLLM / Ollama / llama.cpp

昇腾Ascend NPU 专区

🚀 昇腾Ascend NPU 平台已支持模型
每个模型都提供完整的昇腾Ascend NPU 环境配置和部署教程
📖 查看完整昇腾 NPU 平台模型列表和教程

• Qwen3.6
• vLLM-ascend 部署调用
• Qwen3
• Ascend NPU 环境配置通用指南
• MindIE 服务化部署调用
• vLLM-ascend 部署调用
• sglang-ascend 部署调用
• 大模型服务化性能和精度测试
• AISBench 测试工具环境配置
• 昇腾大模型服务化性能测试
• 昇腾大模型服务化精度测试

沐曦专区

Coming Soon!

Apple M 专区

📖 点击跳转 Apple M 专区

Welcome More Platforms!

致谢

核心贡献者

注:排名根据贡献程度排序

其他

感谢 AMD University Program(AMD 大学计划)对本项目的支持
ROCm     AMD University Program

Star History

self-llm (datawhalechina/self-llm)

Searching Database…

32.5K ·GitHub
Что это такое?Self-llm — это коллекция учебных материалов на китайском языке, которая учит новичков настраивать окружение, разворачивать и дообучать (полная настройка параметров или LoRA) более 50 открытых больших языковых моделей и мультимодальных моделей на Linux.
Это библиотека, которую нужно установить, или набор руководств?Это набор руководств в формате Jupyter Notebook, по одному комплекту на каждую поддерживаемую модель. Это не библиотека, не приложение и не фреймворк, который нужно импортировать.
С чего новичку начать?Начните с настройки окружения, затем переходите к развертыванию модели и в конце занимайтесь дообучением. Новичкам рекомендуется начинать с более простых моделей, таких как Qwen1.5, InternLM2 или MiniCPM, и только потом смотреть полную таблицу из более чем 50 поддерживаемых моделей.
Все ли аппаратные платформы и модели уже полностью готовы?Не все. Раздел для платформы Muxi прямо помечен как пока недоступный, а поддержка Apple Silicon всё ещё тестируется и расширяется.
Для кого это предназначено?Это для китайских студентов и тех, кто учится самостоятельно и хочет запускать и дообучать открытые LLM локально, без доступа к API. Это ступенька перед более глубокими курсами по теории LLM или по разработке приложений на их основе.
Что такое Tianji (天机), который упоминается как пример проекта?Tianji — один из примеров мини-проектов, созданных с помощью self-llm: полноценное приложение на основе LLM для сценариев соблюдения социального этикета. Оно охватывает инжиниринг промптов, создание агентов, сбор данных и дообучение, а также очистку данных для RAG.
Какие инструменты развертывания описаны в учебных материалах?В зависимости от модели и оборудования руководства показывают развертывание через вызовы из командной строки, онлайн-демо, интеграцию с LangChain, а также такие инструменты, как vLLM, Ollama, LM Studio, llama.cpp и sglang.
Поддерживается ли оборудование не от Nvidia?Да. Помимо основного трека для Linux и GPU, есть отдельные разделы для видеокарт AMD (ROCm) и нейропроцессоров Huawei Ascend NPU, а поддержка Apple Silicon также находится в разработке.
Могу ли я сам добавить руководство для новой модели?Да, в проекте прямо приглашают участников открывать issues или отправлять pull request'ы с руководствами для новых моделей и аппаратных платформ.
Size
215.1 MB
Stars
32.5K
Updated
CommitSep 12
Age
2y
Commits · 90 Days