从零开始训练一个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的大模型上下文能力确实比较弱

数据集-中文

参考/感谢

免责申明

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

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

相关推荐
一个处女座的程序猿6 小时前
LLMs之Agent:ChatGPT Agent发布—统一代理系统将研究与行动无缝对接,开启智能助理新时代
chatgpt·agent
gptplusplus6 小时前
停止“玩具式”试探:深入拆解ChatGPT Agent的技术栈与实战避坑指南
chatgpt
天若有情6738 小时前
【技术新闻】OpenAI发布GPT-5,AI编程助手迎来革命性突破
gpt·ai编程·业界资讯·新闻资讯
WSSWWWSSW11 小时前
基于模拟的流程为灵巧机器人定制训练数据
人工智能·chatgpt·机器人
一休哥助手1 天前
ChatGPT Agent架构深度解析:OpenAI如何构建统一智能体系统
人工智能·chatgpt·架构
qq_417719981 天前
免费的大模型面试辅导系列课程
人工智能·深度学习·chatgpt·面试·职场和发展·求职招聘
AI探知-阿薇2 天前
智能体之变:深度解析OpenAI ChatGPT Agent如何重塑人机协作的未来
人工智能·chatgpt
量子位2 天前
奥特曼首次透露GPT-5上手体验:在擅长领域感到无力,往后一靠感到眩晕
人工智能·gpt
陈敬雷-充电了么-CEO兼CTO3 天前
OpenAI发布ChatGPT Agent,AI智能体迎来关键变革
java·人工智能·python·gpt·chatgpt·大模型·agi
许愿与你永世安宁3 天前
RAG(检索增强生成)里的文档管理
数据库·人工智能·gpt·oracle·llama·rag