Repolode
ridgerchu

ridgerchu/matmulfreellm

MatMul-free 语言模型的开源实现,用三值权重与加法运算替代矩阵乘法,兼容 Hugging Face Transformers。

Star
3,101
Fork
204
未关闭 Issue
25
最近提交
2个月前

这是什么?

MatMul-Free LM 是一种去除了矩阵乘法(MatMul)运算的语言模型架构,目标是降低大语言模型的计算开销。本仓库提供基于 PyTorch 的实现,可直接接入 Hugging Face Transformers 库,支持通过 AutoModel 初始化模型,并使用标准的文本生成接口。

项目提供 370M、1.3B 和 2.7B 参数规模的预训练模型,其中 370M 与 1.3B 分别基于 15B 与 100B 个 token 训练。内核使用 Triton 编写,依赖 PyTorch 2.0 及以上版本和 einops。代码基于 flash-linear-attention 改写,对应论文《Scalable MatMul-free Language Modeling》(arXiv 2406.02528)。

核心功能

  • 01不含矩阵乘法运算的语言模型架构
  • 02兼容 Hugging Face 的 AutoModel 与 generate 接口
  • 03提供 370M、1.3B、2.7B 参数的预训练模型
  • 04基于 Triton 实现的内核,代码改自 flash-linear-attention
  • 05可直接通过 GitHub 仓库安装

适用场景

  • 研究不依赖矩阵乘法的高效语言模型架构
  • 借助 Transformers 工具链在 GPU 上试验三值权重大模型
  • 在自定义数据上预训练或微调 MatMul-free 模型
  • 探索面向类脑或低算力硬件的大模型部署

快速上手

  1. 1

    安装所需依赖:PyTorch 2.0 或更高版本、Triton 2.2 或更高版本以及 einops

  2. 2

    直接从 GitHub 安装该库

    pip install -U git+https://github.com/ridgerchu/matmulfreellm

使用前须知

  • 提供的生成示例需要 CUDA GPU,因为其中调用了 .cuda() 和 .half()。
  • 依赖 Triton,会带来较重的 GPU 相关依赖栈。

标签

#large-language-model#llm#transformers#triton#pytorch#efficient-inference#ternary-weights#linear-transformer

常见问题

matmulfreellm 是什么?
MatMul-free 语言模型的开源实现,用三值权重与加法运算替代矩阵乘法,兼容 Hugging Face Transformers。 MatMul-Free LM 是一种去除了矩阵乘法(MatMul)运算的语言模型架构,目标是降低大语言模型的计算开销。本仓库提供基于 PyTorch 的实现,可直接接入 Hugging Face Transformers 库,支持通过 AutoModel 初始化模型,并使用标准的文本生成接口。
matmulfreellm 可以免费使用吗?用的什么许可证?
matmulfreellm 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
matmulfreellm 还在维护吗?
半年内有更新。matmulfreellm 最近一次提交是在 2026年9月6日。
matmulfreellm 适合用来做什么?
研究不依赖矩阵乘法的高效语言模型架构 借助 Transformers 工具链在 GPU 上试验三值权重大模型 在自定义数据上预训练或微调 MatMul-free 模型 探索面向类脑或低算力硬件的大模型部署
matmulfreellm 怎么安装和运行?
安装所需依赖:PyTorch 2.0 或更高版本、Triton 2.2 或更高版本以及 einops 直接从 GitHub 安装该库: pip install -U git+https://github.com/ridgerchu/matmulfreellm
在哪里获取 matmulfreellm?
源代码和安装说明在 GitHub 上:https://github.com/ridgerchu/matmulfreellm

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目