A small and strong 1-bit LLM
💬 On-Device Chat · Blog · Code
Boole-1.7B is a 1-bit language model derived from Qwen3-1.7B. Its weights take 247 MB, 13.9× less than the BF16 original, and it keeps 85.9% of the original's ten-task benchmark average (50.55 vs 58.83).
| File | Runtime | Size |
|---|---|---|
| Boole-1.7B.safetensors | vLLM + Humming · CUDA | 247.1 MB |
| Boole-1.7B-Q1_0.gguf | llama.cpp · CPU or CUDA | 292.1 MB |
The GGUF is larger because it stores the embedding and output matrices separately.
Use the boole-demo repository, which builds the pinned llama.cpp and contains the vLLM + Humming loader.
git clone https://github.com/PrecisionNumerics/boole-demo.git && cd boole-demo
hf download precision-numerics/Boole-1.7B Boole-1.7B-Q1_0.gguf --local-dir model
bash scripts/setup_llama_cpp.sh # GGML_CUDA=0 for CPU only
third_party/llama.cpp/build/bin/llama-server \
-m model/Boole-1.7B-Q1_0.gguf -ngl 99 -c 4096 \
--chat-template-kwargs '{"enable_thinking": false}'
Use -ngl 0 on CPU, then open the server URL. For vLLM + Humming (CUDA, vLLM 0.31.0 and
humming-kernels 0.1.16), follow the
repository README.
English-language inference in non-thinking mode (enable_thinking=false).
Scores are the equal-weight mean of ten tasks: MMLU-Redux, GPQA-Diamond, MuSR, IFEval, IFBench, GSM8K, MATH-500, HumanEval+, MBPP+ and BFCLv3, run in non-thinking mode with greedy decoding (GPQA-Diamond averages ten sampled runs). Harness: EvalScope 1.4.2 and bfcl-eval 2025.10.27.1. See the blog for the comparison.
We use the same evaluation settings as PrismML's Bonsai. The settings below cover 10 generative benchmarks.
| Setting | Value |
|---|---|
| Few-shot examples | 0 |
| Generative prompts | Benchmark prompts with the checkpoint's chat template |
| Thinking mode | Disabled (enable_thinking=false) |
| Default generation | Greedy: temperature 0, top-p 1 |
| Default seed / repetitions | Seed 42; one response per example |
| Additional sampling filters | Top-k and min-p disabled; repetition penalty 1.0 |
| Dataset limit | Full benchmark splits; no sample limit |
GPQA-Diamond uses temperature 0.6, top-p 0.95, and 10 repetitions per example with seeds 42–51. Its score is averaged across those repetitions.
Maximum generated tokens per response:
| Benchmark | Max new tokens |
|---|---|
| MMLU-Redux | 2,048 |
| GPQA-Diamond | 8,192 |
| MuSR | 2,048 |
| IFEval | 4,096 |
| IFBench | 4,096 |
| GSM8K | 2,048 |
| MATH-500 | 8,192 |
| HumanEval+ | 8,192 |
| MBPP+ | 4,096 |
| BFCL-v3 | 4,096 |
Generation context is 16,384 tokens by default and 40,960 for BFCL-v3, capped when a checkpoint specifies a lower limit. Concurrency and memory allocation are tuned to the runtime and available GPU memory.
IFEval and IFBench report the mean of strict prompt-level and instruction-level
accuracy. HumanEval+ and MBPP+ use augmented tests and pass@1. BFCL-v3 reports the
macro average of 13 single-turn subsets, with is_fc_model=false and
underscore_to_dot=false. GSM8K and MATH-500 use a 10-second per-answer scoring
deadline; timed-out answers receive zero.
Evaluation packages: EvalScope 1.4.2 and bfcl-eval 2025.10.27.1.
Weights and runtime code use Apache 2.0. NOTICE includes upstream Qwen attribution.
@misc{precisionnumerics2026boole1p7b,
author = {{Precision Numerics}},
title = {{Boole}-1.7B},
year = {2026},
month = {October},
url = {https://huggingface.co/precision-numerics/Boole-1.7B}
}
A small and strong 1-bit LLM
💬 On-Device Chat · Blog · Code
Boole-1.7B is a 1-bit language model derived from Qwen3-1.7B. Its weights take 247 MB, 13.9× less than the BF16 original, and it keeps 85.9% of the original's ten-task benchmark average (50.55 vs 58.83).
| File | Runtime | Size |
|---|---|---|
| Boole-1.7B.safetensors | vLLM + Humming · CUDA | 247.1 MB |
| Boole-1.7B-Q1_0.gguf | llama.cpp · CPU or CUDA | 292.1 MB |
The GGUF is larger because it stores the embedding and output matrices separately.
Use the boole-demo repository, which builds the pinned llama.cpp and contains the vLLM + Humming loader.
git clone https://github.com/PrecisionNumerics/boole-demo.git && cd boole-demo
hf download precision-numerics/Boole-1.7B Boole-1.7B-Q1_0.gguf --local-dir model
bash scripts/setup_llama_cpp.sh # GGML_CUDA=0 for CPU only
third_party/llama.cpp/build/bin/llama-server \
-m model/Boole-1.7B-Q1_0.gguf -ngl 99 -c 4096 \
--chat-template-kwargs '{"enable_thinking": false}'
Use -ngl 0 on CPU, then open the server URL. For vLLM + Humming (CUDA, vLLM 0.31.0 and
humming-kernels 0.1.16), follow the
repository README.
English-language inference in non-thinking mode (enable_thinking=false).
Scores are the equal-weight mean of ten tasks: MMLU-Redux, GPQA-Diamond, MuSR, IFEval, IFBench, GSM8K, MATH-500, HumanEval+, MBPP+ and BFCLv3, run in non-thinking mode with greedy decoding (GPQA-Diamond averages ten sampled runs). Harness: EvalScope 1.4.2 and bfcl-eval 2025.10.27.1. See the blog for the comparison.
We use the same evaluation settings as PrismML's Bonsai. The settings below cover 10 generative benchmarks.
| Setting | Value |
|---|---|
| Few-shot examples | 0 |
| Generative prompts | Benchmark prompts with the checkpoint's chat template |
| Thinking mode | Disabled (enable_thinking=false) |
| Default generation | Greedy: temperature 0, top-p 1 |
| Default seed / repetitions | Seed 42; one response per example |
| Additional sampling filters | Top-k and min-p disabled; repetition penalty 1.0 |
| Dataset limit | Full benchmark splits; no sample limit |
GPQA-Diamond uses temperature 0.6, top-p 0.95, and 10 repetitions per example with seeds 42–51. Its score is averaged across those repetitions.
Maximum generated tokens per response:
| Benchmark | Max new tokens |
|---|---|
| MMLU-Redux | 2,048 |
| GPQA-Diamond | 8,192 |
| MuSR | 2,048 |
| IFEval | 4,096 |
| IFBench | 4,096 |
| GSM8K | 2,048 |
| MATH-500 | 8,192 |
| HumanEval+ | 8,192 |
| MBPP+ | 4,096 |
| BFCL-v3 | 4,096 |
Generation context is 16,384 tokens by default and 40,960 for BFCL-v3, capped when a checkpoint specifies a lower limit. Concurrency and memory allocation are tuned to the runtime and available GPU memory.
IFEval and IFBench report the mean of strict prompt-level and instruction-level
accuracy. HumanEval+ and MBPP+ use augmented tests and pass@1. BFCL-v3 reports the
macro average of 13 single-turn subsets, with is_fc_model=false and
underscore_to_dot=false. GSM8K and MATH-500 use a 10-second per-answer scoring
deadline; timed-out answers receive zero.
Evaluation packages: EvalScope 1.4.2 and bfcl-eval 2025.10.27.1.
Weights and runtime code use Apache 2.0. NOTICE includes upstream Qwen attribution.
@misc{precisionnumerics2026boole1p7b,
author = {{Precision Numerics}},
title = {{Boole}-1.7B},
year = {2026},
month = {October},
url = {https://huggingface.co/precision-numerics/Boole-1.7B}
}