bitnet.cpp (BitNet inference framework)
Project record
bitnet.cpp is Microsoft's official inference framework for 1-bit large language models, such as BitNet b1.58, whose weights are ternary (1.58-bit). It provides optimized kernels for running these models on x86 and ARM CPUs, with a separate GPU inference kernel, and is based on llama.cpp.1
- Repository: Repository (external site: github.com)
- License: LICENSE (external site: github.com)
- Model hub: BitNet b1.58 2B4T model card (external site: huggingface.co)
Availability and license
Overall availability
Documented as available to the general public. Access conditions and license terms may still apply.12
Availability is separate from permission: read the license before using or redistributing.
Component reuse rights
- weights
- Unknown — no complete fact-level rights review
- code
- Reviewed qualifying license recorded — check scope and conditions
- data
- Unknown — no complete fact-level rights review
- documentation
- Unknown — no complete fact-level rights review
No complete system-rights review is recorded for this release.
Public materials checklist
| Item | Status | Notes and evidence |
|---|---|---|
| Source codeIs the source code publicly readable? | Public | Public repository in Microsoft's GitHub organization.1 |
| DocumentationIs user documentation published? | Public | The README documents requirements, building, usage, benchmarking, and checkpoint conversion, with linked guides for the GPU kernel and CPU optimizations.1 |
| InstallationAre installation instructions or packages publicly available? | Public | Build from source with Python 3.10 or later, CMake 3.22 or later, and Clang 18 or later (Visual Studio 2022 tooling on Windows); conda is recommended. A setup script prepares a downloaded model and builds the kernels.1 |
| Supported platformsAre supported operating systems or hardware documented? | Public | The README lists which CPU kernels (I2_S, TL1, TL2) support each model on x86 and ARM, and gives build instructions for Windows and Debian/Ubuntu. GPU inference uses a separate kernel documented in the repository.1 |
| Release statusAre versioned releases published? | Partial | The README announces bitnet.cpp 1.0 (October 17, 2024) and later kernel updates, but the GitHub repository has no published releases; it is built from the main branch.13 |
What it is useful for
Run and use notes
- The BitNet b1.58 2B4T model card says its efficiency benefits require bitnet.cpp; running the model with the standard Transformers library is not expected to give speed, latency, or energy gains.4
- The README's build example downloads the GGUF version of BitNet b1.58 2B4T from Hugging Face and prepares it with the i2_s quantization type.1
Organization context
Provenance and derivatives
bitnet.cpp is based on the llama.cpp framework, and its kernels build on the lookup-table methods of Microsoft's T-MAC project, per the README.1
- Derived from: llama.cpp — Framework that bitnet.cpp is based on.
- Derived from: T-MAC (external site: github.com) — Lookup-table kernel methods.
U.S. eligibility
Eligible · basis: U.S.-governed project
The repository is in Microsoft's GitHub organization, the README describes bitnet.cpp as the official inference framework for 1-bit LLMs, and the LICENSE names Microsoft Corporation as copyright holder. Microsoft is headquartered in the United States (see the Microsoft record).21
Sources
This listing is not an endorsement, a safety assessment, or a federal approval.