项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
技术标签
使用教程
—
环境要求
- Python >= 3.10
- PyTorch >= 1.13 且 <= 2.13(更新版本未经测试)
- Windows、Linux 或 macOS 系统
- GPU 训练加速(可选,但推荐)
安装与启动步骤
-
1检查 Python 版本
确认本机 Python 不低于 3.10,版本过低需先升级解释器。
python --version -
2安装 PyTorch
先装 PyTorch,版本需在 1.13 到 2.13 之间;README 未给出具体安装命令,请按官网指引选择对应 CUDA 版本。
-
3安装 brevitas
从 PyPI 直接安装最新发布版,会自动拉取依赖包。建议在虚拟环境中执行以免污染全局环境。
pip install brevitas -
4验证导入
在 Python 中导入 brevitas.nn 并查看版本,确认安装成功、无缺少依赖报错。
python -c "import brevitas; import brevitas.nn; print(brevitas.__version__)" -
5运行 PTQ 示例
README 提供 ImageNet 分类的 PTQ 参考流程,可对 torchvision 模型做训练后量化,按需调整位宽与缩放粒度。
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
量化位宽(bit-width) | 否 | 控制权重/激活量化为多少比特,位宽越低压缩越强。 | 4 |
缩放粒度(granularity of scale) | 否 | 决定缩放因子按张量、按通道还是按组统计。 | per-channel |
量化器放置 | 否 | 通过 brevitas.nn 的 Quant 层分别设定输入、权重、偏置、输出的量化方式。 | QuantConv2d |
如何确认成功
执行 python -c "import brevitas; print(brevitas.__version__)",能正常输出版本号且无 ImportError 即安装成功。
常见问题
Q:PyTorch 版本有要求吗?
A:有。README 要求 PyTorch >= 1.13 且 <= 2.13,更新的版本属于未测试范围,可能出现兼容问题。
Q:必须用 GPU 吗?
A:不必须。GPU 训练加速是可选项,CPU 也能安装和运行,但量化感知训练会明显更慢。
Q:Brevitas 是官方产品吗?
A:不是。README 明确说明它是研究项目,并非 Xilinx 官方产品,生产使用需自行评估。
Q:怎么快速上手 PTQ?
A:参考 brevitas_examples.imagenet_classification.ptq 下的示例脚本,用不同量化配置对 torchvision 模型做训练后量化。
注意事项
- Brevitas 是研究项目,不是 Xilinx 官方产品。
- README 未给出 PyTorch 的具体安装命令,请到 pytorch.org 按系统与 CUDA 版本获取。
- README 未提供独立 CLI 工具、端口或配置文件,所有配置均通过 Python API 以代码方式设定。
- 示例脚本来自源码仓库而非 PyPI 包,如需运行请另行获取仓库代码。
核心亮点
- QAT 与 PTQ 双流程齐全,量化器、位宽、舍入策略均可插拔配置
- 与 Xilinx FINN/FPGA 工具链打通,量化结果可直接对接硬件部署
- 量化行为贴近真实硬件,支持低位宽与混合精度,便于精度-资源权衡实验
不足之处
- 与 Xilinx 生态绑定较深,非 FPGA 或非 AMD 平台的部署路径支持有限
- API 与版本迭代较快,文档和示例对新手不够友好,学习曲线偏陡
适用场景
- 在 FPGA 上部署低比特 CNN 做边缘推理
- 研究量化感知训练算法与低位宽精度对比
- 把训练好的 PyTorch 模型导出为硬件可用的量化模型
替代项目
PyTorch Quantization (torch.ao.quantization)、NNCF、AIMET
同类项目推荐
Long-RL
开源
让强化学习轻松驾驭超长序列,训练更稳更快
Long-RL: Scaling RL to Long Sequences (NeurIPS 2025)
TPA
开源
把注意力复杂度从平方降到线性,长序列不再卡顿
[NeurIPS 2025 Spotlight] TPA: Tensor ProducT ATTenTion Transformer (https://arxiv.or···
minimind
开源
两小时造出你的小模型,练手入门不求人
Train a 64M-parameter LLM from scratch in just 2h!
pruna
开源
一键优化 AI 模型,推理提速又省资源。
Pruna is a model optimization framework built for developers, enabling you to delive···
