SuperAPI AI 工具集

Steel-LLM

Steel-LLM 是一个由个人发起的从零预训练中文大模型开源项目,使用 1T token 数据训练约 1B 参数量的中文 LLM。项目从开始到微调出首个版本耗时约 8 个月,详细分享了数据收集、数据处理、预训练框架选择、模型设计等全过程,并开源了全部代码,目标是在拥有 8 至几十张显卡的条件下即可复现。其名称“Steel(钢)”灵感来自乐队万能青年旅店,寓意在有限条件下“土法炼钢”。据官方介绍,得益于开源中文数据,Steel-LLM 在中文 benchmark 上表现优于部分机构早期发布的更大模型,在 CEVAL 达到 42 分,CMMLU 达到 36 分。项目还包含预训练程序、数据准备脚本、微调与评估细节,并发布了技术报告及相关博客,后续将在数学能力、强化学习、复杂推理等方面继续探索。

访问官网

工具介绍

Steel-LLM 是一个个人发起的从零预训练中文大模型项目,目标是训练一个约 1B 参数量的中文 LLM,使用 1T token 的数据进行预训练。根据官方资料,项目从开始到微调出第一版模型耗时约 8 个月,并详细分享了数据收集、数据处理、预训练框架选择、模型设计等全过程,全部代码已开源,使每个人在拥有 8 至几十张卡的条件下都能复现相关工作。

用途方面,Steel-LLM 主要用于从零预训练中文大语言模型,并覆盖数据准备、模型修改、预训练、微调和评估等环节。官方表示,得益于开源中文数据,Steel-LLM 在中文 benchmark 上表现优于机构早期发布的一些更大的模型,在 CEVAL 达到 42 分,CMMLU 达到 36 分。项目名称“Steel(钢)”取名灵感来源于华北平原乐队“万能青年旅店(万青)”,寓意在有限条件下“土法炼钢”,但希望能炼出好“钢”来。

主要能力与设计方面,模型基于 Qwen1.5 完成修改,模型大小为 1.12B,FFN 层使用 softmax moe,官方称在相同参数量下有更高的训练速度。项目不单独训练 tokenizer,使用 Qwen/Qwen1.5-MoE-A2.7B-Chat 的 tokenizer。预训练程序基于 TinyLlama 预训练程序改进,支持兼容 HuggingFace 格式的模型、加载 checkpoint 时完全恢复数据训练的进度、在不影响已训练数据的情况下向数据集追加新的数据。

数据方面,项目使用的数据集包括 Skywork/Skypile-150B 数据集、wanjuan1.0(nlp 部分)。源数据针对四类数据进行格式统一的转化处理:简单文本包括百度百科(title 和各段落需要手动合并)、中文维基;对话(含单轮与多轮)包括百度百科问答数据、BELLE 对话数据(BELLE_3_5M)、moss 项目对话数据、知乎问答数据、BELLE 任务数据(BELLE_2_5M)、firefly1.1M;代码数据为 starcode;其他数据中 wanjuan 和 skypile 数据集不用做单独处理。目标格式为 {"text": "asdfasdf..."},文件保存为 .jsonl 类型。

使用方式上,官方资料给出了相关运行命令:数据预处理可运行 python data/pretrain_data_prepare/step1_data_process.py,以及 sh data/pretrain_data_prepare/step2/run_step2.sh,具体使用的 data juicer 算子见相关文档。准备 Steel-LLM 数据时,需要先在代码中修改 filename_sets,指定数据路径,然后运行 python pretrain_modify_from_TinyLlama/scripts/prepare_steel_llm_data.py,输入数据格式为包含 'text' 字段的 jsonl 文件。预训练可运行 python Steel-LLM/pretrain_modify_from_TinyLlama/pretrain/pretrain_steel_llm.py。

评估与资源方面,Steel-LLM 在 CEVAL、CMMLU 上进行了测试。官方说明 Steel-LLM 旨在训练一个中文 LLM,80% 的训练数据都是中文,因此在英文 benchmark 并未做过多的测试。其他模型的指标来自于 CEVAL 论文、MiniCPM 技术报告、MAP-Neo 技术报告等途径。训练硬件方面,GPU 8* H800 80G 训练约 30 天左右,或 8* A100 80G 训练约 60 天左右。

版本与动态方面,官方日志显示:2024 年 5 月 19 日基于 Qwen1.5 完成模型修改,模型大小 1.12B;2024 年 8 月 18 日预训练已经完成,后续进行微调以及评测;2024 年 10 月 28 日更新第一版 chat 模型,在 CEVAL 达到 38 分,CMMLU 达到 33 分;2025 年 1 月 17 日更新 steel-LLM-chat-v2,微调时加入英文数据,中英文数据比例和预训练保持一致,最终在 CEVAL 上由 38 分提高到 41.9 分,CMMLU 从 33 分提高到 36 分;2025 年 2 月 13 日上传技术报告;2025 年 3 月 6 日《Steel-LLM:From Scratch to Open Source -- A Personal Journey in Building a Chinese-Centric LLM》被 ICLR 2025 workshop 接收;2025 年 3 月 10 日发布强化学习相关博客。此外,项目还发布了多篇微信文章和知乎博客,涵盖项目汇总、微调评估细节、预训练程序修改、数据处理等内容。交流群人数已超过 200,可添加微信 a1843450905 入群。

限制方面,官方资料未提供完整的安装步骤、依赖清单、许可证信息、API 或在线服务说明,也未提供明确的商业使用条款。项目定位为个人研究性质的中文预训练实践,英文能力测试较少,更多详情需参考官方仓库和相关博客。