今天为大家介绍一个特别实用的开源项目 - MiniMind。它让我们可以用普通电脑,在短短 3 小时内训练出一个迷你版的 ChatGPT!

为防止误读,「最快 3 小时」是指您需要具备>作者本人硬件配置的机器,具体规格的详细信息将在下文提供。

为什么这个项目这么特别?

目前市面上的大语言模型动辄上百亿参数,训练成本高昂。就算是自己想学习和研究,也会被巨大的硬件门槛挡在门外。而 MiniMind 通过精妙的设计,把模型参数压缩到了最小,让个人开发者也能亲手训练 AI 模型!

最小版本仅有 26M 大小(约为 GPT-3 的 1/7000),一张普通的游戏显卡就能运行。项目提供了完整的训练流程:

  1. 基础语言能力训练(预训练)

  2. 对话能力训练(指令微调)

  3. 快速适应新任务(LoRA 微调)

  4. 优化回答质量(DPO 偏好对齐)

环境需要
CPU: Intel(R) Core(TM) i9-10980XE CPU @ 3.00GHz   内存:128 GB   显卡:NVIDIA GeForce RTX 3090(24GB) * 2   环境:python 3.9 + Torch 2.1.2 + DDP单机多卡训练   

  • Ubuntu == 20.04

  • Python == 3.9

  • Pytorch == 2.1.2

  • CUDA == 12.2

  • requirements.txt(本项目环境依赖)

实际应用场景

1. 个性化助手开发

你可以训练一个针对特定领域的 AI 助手,比如:

  • 客服机器人:根据公司产品知识库训练

  • 教育辅导:针对特定学科的习题讲解

  • 行业助手:为特定行业提供专业建议

2. 技术学习与研究
  • 了解大语言模型的工作原理

  • 实践各种训练方法

  • 尝试模型优化和改进

3. 产品原型验证
  • 快速验证 AI 产品创意

  • 测试不同场景下的效果

  • 收集用户反馈进行迭代

技术亮点解析

轻量级架构
  • 采用 Transformer 的 Decoder-Only 结构

  • 使用 RMSNorm 预标准化提升性能

  • 引入旋转位置编码处理长文本

创新的专家模型版本(MoE)
  • 提供 4×26M 的混合专家模型

  • 通过专家分工提升模型能力

  • 保持较低的计算资源需求

灵活的部署选项
  • 支持单卡/多卡训练

  • 兼容主流深度学习框架

  • 提供网页交互界面

上手有多简单?

只需几步就能开始:

# 1. 克隆项目   git clone https://github.com/jingyaogong/minimind.git      # 2. 安装依赖   pip install -r requirements.txt      # 3. 开始对话测试   python 2-eval.py   

如果想要可视化界面,还可以使用内置的网页版:

streamlit run fast_inference.py   

定制大模型

1. 克隆项目代码
git clone https://github.com/jingyaogong/minimind.git   cd minimind   

2. 环境安装
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple      # 测试torch是否可用cuda   import torch   print(torch.cuda.is_available())   

如果不可用,请自行去 torch_stable 下载 whl 文件安装。参考链接,

https://blog.csdn.net/weixin_45456738/article/details/141029610

3. 自己训练数据集
  • 下载数据集放到./dataset目录下

  • python data_process.py 命令处理数据集,例如 pretrain 数据提前进行 token-encoder、sft 数据集抽离 qa 到 csv 文件

  • ./model/LMConfig.py 中调整 model 的参数配置

    这里仅需调整 dim 和 n_layers 和 use_moe 参数,分别是(512+8)(768+16),对应于minimind-v1-smallminimind-v1

  • python 1-pretrain.py 执行预训练,得到 pretrain_*.pth 作为预训练的输出权重

  • python 3-full_sft.py 执行指令微调,得到 full_sft_*.pth 作为指令微调的输出权重

  • python 4-lora_sft.py 执行 lora 微调(非必须)

  • python 5-dpo_train.py 执行 DPO 人类偏好强化学习对齐(非必须)

持续进化中

项目正在快速发展,目前已支持:

  • 文本对话:流畅的中英文交互

  • 视觉理解:可以理解和描述图像

  • 知识更新:持续优化训练数据

  • 性能提升:不断改进模型结构

最后

MiniMind 降低了 AI 开发的门槛,让更多人能够参与到大语言模型的探索中来。无论你是:

  • 想入门 AI 的开发者

  • 需要定制化 AI 助手的企业

  • 对语言模型感兴趣的研究者

    在这里插入图片描述

如何学习AI大模型?

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

在这里插入图片描述

👉学会后的收获:👈

• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

在这里插入图片描述

1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集

👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

在这里插入图片描述

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐