build_MiniLLM_from_scratch 入门学习资料汇总 - 从零构建迷你大语言模型

RayRay
build_MiniLLM_from_scratchbert4torchTorch4keras预训练指令微调Github开源项目

build_MiniLLM_from_scratch

build_MiniLLM_from_scratch 入门学习资料汇总

build_MiniLLM_from_scratch 是一个从零构建迷你大语言模型的开源项目,旨在以可控成本完成一个简单的聊天模型。本文汇总了该项目的关键学习资料,帮助读者快速入门。

项目概述

  • GitHub 仓库: build_MiniLLM_from_scratch
  • 作者: Bo Li (Tongjilibo)
  • 项目目标: 构建小参数量的 LLM,完成预训练、指令微调、奖励模型、强化学习四个阶段
  • 当前进度: 已完成预训练和指令微调阶段

项目特色

  • 使用 bert4torch 训练框架,代码简洁高效
  • 训练的 checkpoint 可直接用 transformers 包推理
  • 优化了训练时文件读取方式,减少内存占用
  • 提供完整训练 log 供复现比对
  • 增加自我认知数据集,可自定义机器人属性
  • chat 模型支持多轮对话

快速开始

  1. 环境安装:
pip install git+https://github.com/Tongjilibo/torch4keras.git pip install git+https://github.com/Tongjilibo/bert4torch.git@dev
  1. 预训练:
cd pretrain torchrun --standalone --nproc_per_node=4 pretrain.py
  1. 指令微调:
cd sft python sft.py

预训练语料

项目使用的预训练语料包括:

总计约634亿 Tokens 的数据量。

预训练模型

项目提供了以下几个预训练模型:

  1. MiniLLM-0.2B-NoWudao

  2. MiniLLM-0.2B-WithWudao

  3. MiniLLM-1.1B-WithWudao

指令微调数据集

项目使用的指令微调数据集包括:

等多个高质量指令数据集。

指令微调模型

项目提供了以下指令微调模型:

  1. MiniLLM-0.2B-WithWudao-SFT_Alpaca

  2. MiniLLM-0.2B-WithWudao-SFT

模型使用示例

from transformers import AutoTokenizer, LlamaForCausalLM import torch device = 'cuda' if torch.cuda.is_available() else 'cpu' model_name = 'Tongjilibo/MiniLLM-0.2B-WithWudao-SFT_Alpaca' tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True) model = LlamaForCausalLM.from_pretrained(model_name).to(device) query = '你好' query = f'<human>{query}<robot>' inputs = tokenizer.encode(query, return_tensors='pt', add_special_tokens=False).to(device) output_ids = model.generate(inputs) response = tokenizer.decode(output_ids[0].cpu(), skip_special_tokens=True)[len(query):] print(response)

未来计划

项目计划继续完成奖励模型和强化学习阶段,构建完整的LLM训练流程。欢迎感兴趣的开发者关注和参与项目开发。

通过本文的资料汇总,相信读者可以快速了解 build_MiniLLM_from_scratch 项目,并开始动手实践构建自己的迷你大语言模型。项目仍在持续更新中,建议定期关注 GitHub 仓库获取最新进展。

编辑推荐精选

seedancetwo2.0

seedancetwo2.0

能听懂你表达的视频模型

Seedance two是基于seedance2.0的中国大模型,支持图像、视频、音频、文本四种模态输入,表达方式更丰富,生成也更可控。

nano-banana纳米香蕉中文站

nano-banana纳米香蕉中文站

国内直接访问,限时3折

输入简单文字,生成想要的图片,纳米香蕉中文站基于 Google 模型的 AI 图片生成网站,支持文字生图、图生图。官网价格限时3折活动

扣子-AI办公

扣子-AI办公

职场AI,就用扣子

AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!

堆友

堆友

多风格AI绘画神器

堆友平台由阿里巴巴设计团队创建,作为一款AI驱动的设计工具,专为设计师提供一站式增长服务。功能覆盖海量3D素材、AI绘画、实时渲染以及专业抠图,显著提升设计品质和效率。平台不仅提供工具,还是一个促进创意交流和个人发展的空间,界面友好,适合所有级别的设计师和创意工作者。

图像生成热门AI工具AI图像AI反应堆AI工具箱AI绘画GOAI艺术字堆友相机
码上飞

码上飞

零代码AI应用开发平台

零代码AI应用开发平台,用户只需一句话简单描述需求,AI能自动生成小程序、APP或H5网页应用,无需编写代码。

Vora

Vora

免费创建高清无水印Sora视频

Vora是一个免费创建高清无水印Sora视频的AI工具

Refly.AI

Refly.AI

最适合小白的AI自动化工作流平台

无需编码,轻松生成可复用、可变现的AI自动化工作流

酷表ChatExcel

酷表ChatExcel

大模型驱动的Excel数据处理工具

基于大模型交互的表格处理系统,允许用户通过对话方式完成数据整理和可视化分析。系统采用机器学习算法解析用户指令,自动执行排序、公式计算和数据透视等操作,支持多种文件格式导入导出。数据处理响应速度保持在0.8秒以内,支持超过100万行数据的即时分析。

AI工具使用教程AI营销产品酷表ChatExcelAI智能客服
TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

热门AI工具生产力协作转型TraeAI IDE
AIWritePaper论文写作

AIWritePaper论文写作

AI论文写作指导平台

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

数据安全AI助手热门AI工具AI辅助写作AI论文工具论文写作智能生成大纲
下拉加载更多