
项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-09-25 · 当前星标 ★ 2854
使用教程
环境要求
- Python 3.11(README 使用 --python 3.11 创建虚拟环境)
- uv(用于创建虚拟环境和安装依赖)
- 带 CUDA 的 PyTorch(README 安装的是 cu124 版本,需 NVIDIA GPU 环境)
- 已训练好的 checkpoint 目录(运行生成脚本时需要)
安装与启动步骤
-
1创建虚拟环境
用 uv 创建名为 nanotron 的 Python 3.11 虚拟环境并激活,同时升级 pip。HF 集群用户建议设置 UV_LINK_MODE=copy。
uv venv nanotron --python 3.11 && source nanotron/bin/activate && uv pip install --upgrade pip -
2安装 PyTorch
从 PyTorch 官方 cu124 索引安装 PyTorch,默认适配 CUDA 12.4 环境。
uv pip install torch --index-url https://download.pytorch.org/whl/cu124 -
3安装核心依赖
在项目根目录以可编辑模式安装 nanotron 本体及核心依赖。
uv pip install -e . -
4安装示例依赖
要运行示例脚本,再安装数据集、模型加载、日志等可选依赖。
uv pip install datasets transformers datatrove[io] numba wandb -
5运行文本生成
用 torchrun 从已有 checkpoint 启动生成脚本;1 张卡时 tp、pp 都设为 1。
torchrun --nproc_per_node=1 run_generate.py --ckpt-path checkpoints/{checkpoint_number}/ --tp 1 --pp 1
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
--ckpt-path | 是 | 指定要加载的 checkpoint 目录路径 | checkpoints/{checkpoint_number}/ |
--tp | 否 | 张量并行度,增大可用多卡加速生成 | 1 |
--pp | 否 | 流水线并行度,超大模型可设更大值 | 1 |
--nproc_per_node | 否 | torchrun 使用的单机进程(GPU)数量 | 1 |
如何确认成功
torchrun 命令正常退出且无报错,并输出模型生成的文本结果。
常见问题
Q:安装 torch 时下载很慢或失败怎么办?
A:README 指定从 https://download.pytorch.org/whl/cu124 索引安装,请保留 --index-url 参数并确认网络可访问该地址。
Q:生成速度慢,怎么加速?
A:README 说明可增大 --tp(张量并行)值,用多张 GPU 加速生成。
Q:模型特别大,显存不够怎么办?
A:README 建议对非常大的模型使用更大的 --pp(流水线并行)值。
Q:运行时提示缺少 datasets、transformers 等模块?
A:说明只装了核心依赖,需补装示例依赖:uv pip install datasets transformers datatrove[io] numba wandb。
Q:uv 出现缓存警告怎么处理?
A:Hugging Face 集群用户可在 .bashrc 中加入 export UV_LINK_MODE=copy 以抑制 uv 的缓存警告。
注意事项
- 所有命令需先激活虚拟环境(source nanotron/bin/activate)后再执行。
- 命令中的 checkpoints/{checkpoint_number}/ 要替换成你实际的 checkpoint 目录。
- --tp、--pp 的取值需与可用 GPU 数量匹配,否则可能启动失败。
- README 只给出了生成脚本 run_generate.py 的示例,其余训练脚本请自行查阅仓库文档。
核心亮点
- 代码极简可读,3D并行逻辑清晰,便于二次开发与教学
- 原生集成FlashAttention、ZeRO、混合精度与梯度检查点等加速特性
- 与Hugging Face生态打通,数据集和权重加载方便
不足之处
- 文档与示例相对精简,复杂并行配置需读源码理解
- 社区规模较小,遇到问题可参考的案例和讨论有限
适用场景
- 多机多卡集群上预训练百亿参数级大语言模型
- 研究团队做并行策略对比实验与消融研究
- 在有限算力下微调或继续训练开源大模型
替代项目
Megatron-LM、DeepSpeed
上一篇:halo
同类项目推荐
AlphaEdit
开源
不改模型结构,精准修改大模型知识,性能不塌方
AlphaEdit: Null-Space Constrained Knowledge Editing for Language Models, ICLR 2025 (···
RLCSD
开源
用对比自蒸馏强化 RL 训练,让策略更稳更高效
Source code of paper "RLCSD: Reinforcement Learning with Contrastive On-Policy Self-···
Awesome-LLM-On-Policy-Distillati···
开源
一网打尽LLM在线策略蒸馏论文,快速跟上研究前沿
A curated collection of papers and resources on On-Policy Distillation for Large Lan···
MPO
开源
让LLM智能体先学会定计划,再动手执行,提升复杂任务成功率
MPO: Boosting LLM Agents with Meta Plan Optimization (EMNLP 2025 Findings)
SIM-CoT
开源
让模型在内部悄悄思考,推理更快更省token
[ICLR 2026] An official implementation of "SIM-CoT: Supervised Implicit Chain-of-Tho···
finetrainers
开源
用有限显存微调视频扩散模型,多卡也能跑
Scalable and memory-optimized training of diffusion models
OneTrainer
开源
图形化界面搞定扩散模型训练,从 LoRA 到全量微调一站式完成。
OneTrainer is a one-stop solution for all your Diffusion training needs.
AwesomeOPD
开源
一站式速览在线策略蒸馏,紧跟LLM前沿
Awesome List for On-Policy Distillation
self-refine
开源
让大模型自己挑错改错,越改越好
LLMs can generate feedback on their work, use it to improve the output, and repeat t···