Minimind 是一个“小”语言模型,总共只有 2500 万个参数,最小版本体积只有 GPT-3 的七千分之一,作者称只需要3块钱+2小时就可以完成训练,项目地址为:https://github.com/jingyaogong/minimind

为防止误解,“2小时” 基于NVIDIA 3090硬件设备(单卡)测试,“3块钱” 指GPU服务器租用成本,具体规格详情见下文。

Minimind 完全从0开始,对大语言模型实现了全阶段开源复现,是入门 LLM 的绝佳教程。

本文将根据项目文档完成两阶段训练(预训练和有监督微调),初步感受一下“大”模型的训练过程:

环境准备

Minimind 作者的软硬件配置(仅供参考):

  • CPU: Intel® Core™ i9-10980XE CPU @ 3.00GHz
  • RAM: 128 GB
  • GPU: NVIDIA GeForce RTX 3090(24GB) * 8
  • Ubuntu 20.04
  • CUDA 12.2
  • Python 3.10.16
  • requirements.txt

我的软硬件配置(我的个人电脑GPU只有500M显存,所以使用了云主机):

  • ModelScope 免费提供的阿里云PAI-DSW实例(36个小时,完成本文训练共花费4小时左右)
  • 8核CPU + 32GB内存
  • NIVDIA A10,24G显存
  • Ubuntu 22.04
  • CUDA 12.1
  • Python 3.10.16(Miniconda虚拟环境)

ModelScope提供的免费GPU实例

ModelScope提供的免费GPU实例

获取代码

代码语言:bash

复制

# 从 github 下载代码并进入项目目录
git clone https://github.com/jingyaogong/minimind.git
cd minimind

# 创建虚拟环境并激活
conda create --name minimind python=3.10.16
conda init
conda activate minimind

# 安装需要的依赖
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simp

下载数据

代码语言:bash

复制

# 还是在 minimind 目录
pip install modelscope

modelscope download --dataset gongjy/minimind_dataset --local_dir ./dataset

总共下载了 20 多 G 的数据,都是 jsonl 格式:

预训练

预训练需要执行一个 python 文件:

代码语言:bash

复制

python train_pretrain.py

预训练过程其实是有一些参数可以调整的,但为了快速完成训练,我们先全部使用默认参数。

预训练所使用的数据:

在我的这个云主机里,训练一个 epoch大概需要两个小时:

预训练

预训练

有监督微调

有监督微调也只需要执行一个 python 文件:

代码语言:bash

复制

python train_full_sft.py

微调使用的数据格式和预训练不同,对对话的双方做了区分:

从肉眼上看,微调的速度比预训练略快:

有监督微调

有监督微调

模型评估

经过上面的训练,我们得到了两个模型,一个是预训练模型,一个是微调模型,都在 out 目录下:

可以看到两个模型的大小一模一样,说明两个模型的结构应该是相同的。

下面我们使用 python eval_model.py 来比较两个模型的表现,eval_model.py 这个文件接收两个参数:

  • --load 参数,用来指示加载我们自己训练的模型(在 out 目录),还是加载从Huggingface下载下来的模型(在 MiniMind2 目录);
  • model_mode 参数,用来指示加载哪个阶段的模型,0表示预训练模型,1表示微调模型,2表示RLHF模型等;

首先是项目自带的评测:

预训练模型-自动评测

预训练模型-自动评测

微调模型-自动评测

微调模型-自动评测

可以看出,虽然都只训练了一个epoch,微调后的模型比预训练模型明显强了很多,即使存在信息不准确或者错误,但是对话的语气和意图是很明显的,而预训练模型就差了很多,而且看起来似乎有时没办法终止对话。

再来看看人工评测,我问了两个模型三个相同问题:

  • 豆腐脑甜的好吃还是咸的好吃?
  • 大模型是什么东西?
  • 邓紫棋哪首歌好听?

下面是它们的回答:

预训练模型-人工评测

预训练模型-人工评测

微调模型-人工评测

微调模型-人工评测

和自动评测的结果差不多,微调模型“知道”自己在对话,而预训练模型的回答非常发散。

项目也提供了 Web 页面和模型交互的方法,通过 streamlit 实现:

代码语言:bash

复制

cd scripts
streamlit run web_demo.py

对话界面长这样:

后续

以上就是我的 Minimind 初体验,由于时间和成本问题,预训练模型和微调模型都只训练了一个 epoch,模型表现不是很给力,但是这不影响我们了解大模型的训练过程,后续我会进一步深入研究 Minimind 项目,包括复现其它的训练阶段,研究训练代码,以及过程中发现的其他问题。如果你也对此感兴趣,或者有学习大模型的建议,欢迎指点和交流!

如何系统的去学习大模型LLM ?

大模型时代,火爆出圈的LLM大模型让程序员们开始重新评估自己的本领。 “AI会取代那些行业?”“谁的饭碗又将不保了?”等问题热议不断。

事实上,抢你饭碗的不是AI,而是会利用AI的人。

科大讯飞、阿里、华为等巨头公司发布AI产品后,很多中小企业也陆续进场!超高年薪,挖掘AI大模型人才! 如今大厂老板们,也更倾向于会AI的人,普通程序员,还有应对的机会吗?

与其焦虑……

不如成为「掌握AI工具的技术人」,毕竟AI时代,谁先尝试,谁就能占得先机!

但是LLM相关的内容很多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习成本和门槛很高。

基于此,我用做产品的心态来打磨这份大模型教程,深挖痛点并持续修改了近70次后,终于把整个AI大模型的学习门槛,降到了最低!

在这个版本当中:

第一您不需要具备任何算法和数学的基础
第二不要求准备高配置的电脑
第三不必懂Python等任何编程语言

您只需要听我讲,跟着我做即可,为了让学习的道路变得更简单,这份大模型教程已经给大家整理并打包,现在将这份 LLM大模型资料 分享出来:包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

👉CSDN大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击)👈

一、LLM大模型经典书籍

AI大模型已经成为了当今科技领域的一大热点,那以下这些大模型书籍就是非常不错的学习资源。

在这里插入图片描述

二、640套LLM大模型报告合集

这套包含640份报告的合集,涵盖了大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(几乎涵盖所有行业)
在这里插入图片描述

三、LLM大模型系列视频教程

在这里插入图片描述

四、LLM大模型开源教程(LLaLA/Meta/chatglm/chatgpt)

在这里插入图片描述

五、AI产品经理大模型教程

在这里插入图片描述

LLM大模型学习路线

阶段1:AI大模型时代的基础理解

  • 目标:了解AI大模型的基本概念、发展历程和核心原理。

  • 内容

    • L1.1 人工智能简述与大模型起源
    • L1.2 大模型与通用人工智能
    • L1.3 GPT模型的发展历程
    • L1.4 模型工程
    • L1.4.1 知识大模型
    • L1.4.2 生产大模型
    • L1.4.3 模型工程方法论
    • L1.4.4 模型工程实践
    • L1.5 GPT应用案例

阶段2:AI大模型API应用开发工程

  • 目标:掌握AI大模型API的使用和开发,以及相关的编程技能。

  • 内容

    • L2.1 API接口
    • L2.1.1 OpenAI API接口
    • L2.1.2 Python接口接入
    • L2.1.3 BOT工具类框架
    • L2.1.4 代码示例
    • L2.2 Prompt框架
    • L2.3 流水线工程
    • L2.4 总结与展望

阶段3:AI大模型应用架构实践

  • 目标:深入理解AI大模型的应用架构,并能够进行私有化部署。

  • 内容

    • L3.1 Agent模型框架
    • L3.2 MetaGPT
    • L3.3 ChatGLM
    • L3.4 LLAMA
    • L3.5 其他大模型介绍

阶段4:AI大模型私有化部署

  • 目标:掌握多种AI大模型的私有化部署,包括多模态和特定领域模型。

  • 内容

    • L4.1 模型私有化部署概述
    • L4.2 模型私有化部署的关键技术
    • L4.3 模型私有化部署的实施步骤
    • L4.4 模型私有化部署的应用场景

这份 LLM大模型资料 包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

👉CSDN大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击)👈

Logo

欢迎加入 MCP 技术社区!与志同道合者携手前行,一同解锁 MCP 技术的无限可能!

更多推荐