MiniLLM 是一个使用 Python 和 PyTorch 从零实现的小型 Transformer 语言模型教学项目。项目围绕“数据处理—分词器训练—Transformer 预训练—文本生成—监督微调—评估与性能分析”构建了一套完整的小型语言模型流水线。
它主要用于帮助学习者理解语言模型的核心工作原理和训练流程,而不是用于构建大规模生产级聊天机器人。项目目标模型规模约为 1400 万参数,训练数据主要来自 TinyStories 数据集。有多人经过学习该项目后感到收获颇多。
主要功能包括字节级BPE分词、TinyStories数据处理与编码、decoder-only Transformer模型构建、因果注意力计算、文本预训练、AdamW优化与学习率调度、梯度裁剪、检查点保存和断点恢复、文本生成以及Tiny-SFT监督微调。
项目还提供故事生成和情绪标签任务评估、训练损失与指标记录、训练曲线绘制、注意力后端及不同硬件和精度下的性能测试,并支持CPU、CUDA和Apple MPS运行环境。同时配套完整测试、数据校验、实验报告生成和教学文档,形成从数据准备、分词、模型训练到评估分析的完整语言模型实验流程。
点击空白处退出提示









评论