从零开始训练一个ChatGPT大模型(低资源,1B3)

macrogpt-prertrain

大模型全量预训练(1b3), 多卡deepspeed/单卡adafactor

源码地址:https://github.com/yongzhuo/MacroGPT-Pretrain.git

踩坑

python 复制代码
1. 数据类型fp16不太行, 很容易就Nan了, 最好是fp32, tf32,
2. 单卡如果显存不够, 可以用优化器'adafactor',
3. 如果数据量很大, 加载时间特别长(默认设置稍微大一点数据就得加载好几个小时), 可以分批次训练,

环境配置

shell 复制代码
transformers>=4.31.0
torch>=1.10.1
rouge==1.0.1
nltk==3.6.6
peft>=0.2.0
numpy
tqdm

预训练

shell 复制代码
地址: macro_gpt/ft_gpt

配置: macro_gpt/ft_gpt/config.llama_1b3_float32.json
单卡第一次训练: python train.pt.py
单卡继续训练: python train.pt.add.py
多卡训练: deepspeed --num_gpus=2 train.pt.speed.py --deepspeed ds.json

预训练日志(TigerBot-en)

图为tigerbot-en-00001-of-00097.json的预训练日志, loss收敛到3左右

图为baidu百科数据集(第一个60w,此外还有10%领域专业数据)的预训练日志, loss收敛到3左右

预测日志

一问一答还行, 1b3的大模型上下文能力确实比较弱

数据集-中文

参考/感谢

免责申明

本项目相关资源仅供学术研究之用,使用涉及第三方代码的部分时,请严格遵循相应的开源协议。模型生成的内容受模型计算、随机性和量化精度损失等因素影响,本项目不对其准确性作出保证。对于模型输出的任何内容,本项目不承担任何法律责任,亦不对因使用相关资源和输出结果而可能产生的任何损失承担责任。

对于模型输出的任何内容,本项目不承担任何法律责任,亦不对因使用相关资源和输出结果而可能产生的任何损失承担责任。

相关推荐
AIGC大时代31 分钟前
方法建议ChatGPT提示词分享
人工智能·深度学习·chatgpt·aigc·ai写作
糯米导航35 分钟前
ChatGPT Prompt 编写指南
人工智能·chatgpt·prompt
小虚竹3 小时前
用AI辅导侄女大学物理的质点运动学问题
人工智能·chatgpt
日出等日落3 小时前
小白也能轻松上手的GPT-SoVITS AI语音克隆神器一键部署教程
人工智能·gpt
Daphnis_z6 小时前
大模型应用编排工具Dify之常用编排组件
人工智能·chatgpt·prompt
LlRr20 小时前
[已解决]chatgpt被降智了怎么办?(无法联网、识别图片、文件、画图)
chatgpt
hellocode_1 天前
DeepSeek-R1性能如何?如何使用DeepSeek-R1和o1 Pro模型
chatgpt·openai o1·chatgpt pro·deepseek-r1·chatgpt-plus·deekseek-r1如何使用·openai o1如何获取使用
qq_433502181 天前
Browser-Use WebUI项目启动指南
人工智能·经验分享·python·chatgpt
网络安全研发随想2 天前
深入理解GPT底层原理--从n-gram到RNN到LSTM/GRU到Transformer/GPT的进化
gpt·rnn·lstm
2401_897605652 天前
OpenAI进军实体机器人:GPT赋能的智能未来
前端·gpt·机器人