GitHub开源项目,汇总现代大语言模型架构的PyTorch实现,适合学习LLM内部机制。
modern LLM 架构在设计上存在许多微妙但关键的差异。注意力机制方面包括 MHA、GQA、MQA、MLA、滑动窗口以及 linear/DeltaNet 混合形式;归一化策略涵盖 pre-norm、post-norm、QK-Norm、sandwich norm 和 RMSNorm;位置编码方式有 RoPE、NoPE、partial RoPE 和 YaRN;解码器类型则分为 dense 与 sparse MoE(有无共享专家),以及 hybrid Mamba/注意力组合;训练技巧还涉及 Multi-token-prediction、latent experts 和 gated attention。
阅读官方模型代码往往很困难,因为生产级仓库优化的是速度、分片和向后兼容性。这个仓库则把可读性放在首位。
目前已实现的模型中,标记 ✅ 的可用于前向传播,标记 🚧 的仍在开发中。完整目标清单对标 Architecture Gallery 中的 72 种架构,欢迎贡献任何一种。
OpenArch/
├── text/
│ ├── gpt2/
│ │ ├── model.py
│ │ └── README.md
│ ├── llama3/
│ ├── qwen3/
| ├── grok2.5/
│ └── deepseek_v3/
├── multimodal/
│ └── pali-gemma/
│ ├── model.py
│ └── README.md
├── README.md
└── requirements.txt
每个模型都放在各自的文件夹中,配套 model.py 和一份简短的 README.md,记录架构选择和参考资料。
我正在积极寻找贡献者。如果你喜欢阅读模型论文、对比 config.json 文件,或者想深入理解现代 LLM 的构建方式,这是一个友好的起点。
好的首次贡献方向:
从 gallery 中选一个未实现模型,为其添加 model.py
为已有模型添加 README.md,记录其架构选择
添加前向传播测试,加载官方权重并在若干 token 上验证输出一致
修复 bug、改进文档字符串或重构共享组件
大型工作开始前请先开 issue,以便避免重复劳动。实现应优先考虑可读性而非性能——这是一个学习资源。
更多细节请参见 CONTRIBUTING.md。
这个仓库的存在离不开两位杰出教育者的工作:
Sebastian Raschka——LLM Architecture Gallery、Big LLM Architecture Comparison 系列以及 LLMs From Scratch 一书及代码库的作者。Gallery 中的架构图、事实卡片和并列对比是本仓库每个模型的主要参考。
Jason Brownlee 和 Machine Learning Mastery 团队——多年来清晰易懂的教程帮助无数从业者(包括我自己)从零开始构建对深度学习和 transformer 架构的实践理解。
实现中的任何错误均为本人责任。
本项目采用 Apache License 2.0——详见 LICENSE。个别模型实现遵循原始模型的许可证(若适用),具体见各模型文件夹。
这些实现基于公开可用的论文、技术报告、配置文件和教育材料尽心编写。作为学习资源,不与原始模型作者存在关联或为其背书。生产使用请使用官方实现或 transformers。