alt.freeweights.text / bitnet-embedding-0.6b
From: microsoft <huggingface.co/microsoft>Newsgroups: alt.freeweights.textSubject:

bitnet-embedding-0.6b

Date: 2026-11-15Commit: 16176d1Signed: 2DC28CC7B26A283B ✓

Feature extraction model. Gguf weights, 428 MB in all. Published by microsoft under MIT.

text428MBbitnet-embedding-0.6bggufpermissive
FactsParamsnot statedSize428 MBFormatsggufTaskfeature extractionLicenseMITFrom sourcepermissive
$ fw get microsoft/bitnet-embedding-0.6b
# manifest sha256 0d0292f1339c… · 428 MB · 5 files
$ fw verify ./bitnet-embedding-0.6b microsoft/bitnet-embedding-0.6b
From sourceHosted (signed)microsoft/bitnet-embedding-0.6bLast check: 2026-11-15 03:46 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Overview

Size
428 MB
Weights
428 MB (GGUF)
Parameters
not stated
Formats
gguf
Task
feature extraction
License
MIT (permissive)
Files
5, each with a sha256
Publisher
microsoft
Added
2026-11-15
Section
alt.freeweights.text
Lineage

Original release from the publisher.

Where these bytes come from
Publisher at the pinned commit→You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-15 03:46 UTCpassed

Model card

From the publisher at commit 16176d1. Shown as plain text with links; images open at the publisher.

BitNet Embeddings#

Model Description#

BitNet-Embeddings is a family of multilingual text embedding models developed by Microsoft BitNet team. The models use decoder-only architecture with last-token pooling and L2 normalization to produce dense text embeddings. They can be applied to a wide range of tasks, including text retrieval, clustering, semantic similarity, classification, bitext mining, and reranking. They achieve competitive performance on public benchmarks while maintaining excellent inference and storage efficiency.

  • Developed by: BitNet Team, Microsoft Research
  • Model type: BitNet b1.58 based Text Embeddings
  • Language(s): Multilingual (see Supported Languages)
  • License: MIT License

Model Sources#

ModelWeightsParametersEmbedding DimensionMax TokensMTEB v2 Mean
bitnet-embeddings-270m1.58-bit270M64032,76866.26
harrier-oss-v1-270mbf16270M64032,76866.5
bitnet-embeddings-0.6b1.58-bit0.6B1,02432,76867.49
harrier-oss-v1-0.6bbf160.6B1,02432,76869.0

Model Details#

  • Architecture: Transformer-based, modified with BitLinear layers (BitNet framework).
    • Uses Rotary Position Embeddings (RoPE).
    • Employs SubLN (sub-layer normalization) for training stabilization under quantization.
    • No bias terms in linear or normalization layers.
  • Quantization: Native 1.58-bit weights and 8-bit activations (W1.58A8).
    • Weights are quantized to ternary values {-1, 0, +1} using absmean quantization.
    • Activations are quantized to 8-bit integers using absmax quantization (per-token).
    • Trained from scratch with this quantization scheme, not post-training quantized.
  • Context Length: 32,768 tokens.
  • Pooling Strategy: Last-token (EOS) pooling followed by L2 normalization.
  • Training Pipeline:
    1. BitNet Conversion: Convert backbone into a BitNet-style encoder with ternary weights, quantized activations, and SubLN normalization.
    2. Continual Contrastive Pre-training: Trained on 1B text pairs with InfoNCE loss.
    3. Distillation-based Supervised Fine-tuning: Contrastive loss + similarity-distribution distillation + attention-relation distillation from FP16 teacher.
Modelbitnet-embedding-0.6Bbitnet-embedding-270M
BackboneQwen3-0.6BGemma3
Parameters~0.6B~270M
Embedding Dimension1,024640
Hidden Layers2818
Attention Heads (KV)16 (8)4 (1)
head_dim128256
Intermediate Size3,0722,048
ActivationSiLUGELU
TokenizerQwen3 (151,936)Gemma (262,144)
Post-attn/FFW normsNoYes
Embedding scalingNosqrt(hidden_size)

MTEB v2 Evaluation Scores (16-bit embeddings)#

ModelWeightsBitextClassificationClusteringPair Class.RerankingRetrievalSTSMean
bitnet-embeddings-270m1.58-bit80.4771.0952.3779.7260.5066.7174.3566.26
bitnet-embeddings-0.6b1.58-bit81.4772.6553.0680.4762.1268.3374.9767.49

Embedding Quantization#

The output embeddings can be quantized to 8, 4, 2, or even 1 bit, allowing users to flexibly trade off between storage cost and retrieval performance based on their application needs.

Image: Embedding Quantization — Mean MTEB v2 Score

Training#

The models are trained with contrastive learning objectives on a large-scale mixture of multilingual datasets covering diverse tasks. Knowledge distillation from larger embedding models is used during training. The BitNet quantization is applied to all linear layers, resulting in 1.58-bit ternary weights while keeping activations in higher precision.

How to Use (with bitnet.cpp)#

For achieving the efficiency benefits, use the dedicated C++ implementation: bitnet.cpp.

Build#
git clone --recursive https://github.com/microsoft/BitNet.git
cd BitNet
cmake -S . -B build \
  -DCMAKE_BUILD_TYPE=Release \
  -DCMAKE_C_COMPILER=clang \
  -DCMAKE_CXX_COMPILER=clang++ \
  -DGGML_NATIVE=ON \
  -DGGML_OPENMP=OFF \
  -DLLAMA_BUILD_COMMON=ON \
  -DLLAMA_BUILD_TOOLS=ON \
  -DLLAMA_BUILD_EXAMPLES=ON
cmake --build build --target llama-embedding llama-bench -j$(nproc)
Download#
# 270M
hf download microsoft/bitnet-embedding-270m \
  bitnet-embeddings-270m-bf16-i2_s.gguf \
  --local-dir models/bitnet-embedding-270m

# 0.6B
hf download microsoft/bitnet-embedding-0.6b \
  bitnet-embeddings-0.6b-bf16-i2_s.gguf \
  --local-dir models/bitnet-embedding-0.6b
Inference#
# Choose one model:
MODEL=models/bitnet-embedding-270m/bitnet-embeddings-270m-bf16-i2_s.gguf
# MODEL=models/bitnet-embedding-0.6b/bitnet-embeddings-0.6b-bf16-i2_s.gguf

./build/bin/llama-embedding \
  -m "$MODEL" \
  -p "query: What is BitNet?" \
  --embd-normalize 2 \
  --embd-output-format array

Example output (L2-normalized embedding; 640 dimensions for 270M or 1,024 for 0.6B; truncated):

[[0.0239517, 0.6826404, -0.0000000, -0.0644535, 0.0613754, 0.0473094, 0.0114330, ...]]

Please refer to the bitnet.cpp GitHub repository for detailed compilation steps, usage examples, and command-line options.

Evaluation#

Embedding Quality (MMTEB eng, v2)#

BitNet Embedding 0.6B was evaluated against its full-precision FP16 teacher model on the MMTEB (eng, v2) benchmark:

ModelCls.Clust.PairCls.Rerank.Retr.STSSumm.Avg.Speed (t/s)
FP16 Teacher86.3755.4882.5643.8955.3481.1531.8767.95382.15
BitNet Embedding 0.6B86.4955.4282.3043.4154.0381.1532.0667.60870.90

The model achieves 67.60 average score on MMTEB (eng, v2), only 0.35 points below the FP16 teacher, while delivering 2.28x higher CPU throughput.

Inference Performance (CPU, 8 threads)#

Performance on Intel Xeon Platinum 8573C with 8 threads, Clang/Clang++ (no OpenMP), GGML_NATIVE=ON. All results in tokens/second (mean +/- std over 3 runs).

Note on build flags: The results below use -DGGML_NATIVE=ON, which auto-detects and enables the best instruction set supported by the host CPU (e.g., AVX, AVX2, AVX-VNNI, FMA, F16C). This yields optimal performance. To target only AVX2 (e.g., for portable binaries), set -DGGML_NATIVE=OFF and manually specify:

-DGGML_AVX=ON -DGGML_AVX2=ON -DGGML_FMA=ON -DGGML_F16C=ON
-DGGML_AVX512=OFF -DGGML_AVX512_VBMI=OFF -DGGML_AVX512_VNNI=OFF -DGGML_AVX512_BF16=OFF
bitnet-embedding-0.6B#
TestF16.gguf (t/s)I2_S.gguf (t/s)Speedup
pp128382.15870.902.28x
pp256373.95827.752.21x
pp512371.86716.271.93x
pp1024341.55620.581.82x
pp2048298.21481.141.61x
pp4096236.76336.321.42x
bitnet-embedding-270m#
TestF16.gguf (t/s)I2_S.gguf (t/s)Speedup
pp1281212.682019.591.67x
pp2561221.282119.501.74x
pp5121394.992181.231.56x
pp10241265.222086.461.65x
pp20481024.471471.601.44x
pp4096785.541033.461.32x

Uses#

Direct Use#

BitNet-Embeddings is designed for direct use in tasks requiring text embeddings. Its primary applications include:

  • Efficient information retrieval for RAG, web search, enterprise search, and question answering applications.
  • Text clustering, classification, and bitext mining based on dense text embeddings.
Out-of-Scope Use#
  • BitNet-Embeddings does not generate any human-readable texts or other multi-modal content. Instead, it maps input texts into dense embedding vectors that are used by downstream Vector DB or classifiers.
  • Limited Training Data Representation: While the training data includes a mix of multilingual datasets, it may not represent diverse linguistic, cultural, or geographical contexts for low-resource languages. As a result, performance in low-resource languages may be significantly limited.
  • Domain-Specific Limitations: The training data predominantly covers general-purpose knowledge tasks. Specific or niche domains such as legal, medical, or scientific literature may not be adequately represented, and results in these areas should be interpreted with caution.
  • Use in High-Risk Applications: We do not recommend using BitNet-Embeddings in commercial or real-world applications without further testing and development. As the model is being released for research purposes, additional evaluation and fine-tuning are required to ensure reliability and fairness in high-stakes scenarios.

Supported Languages#

The models are trained on multilingual data and support a wide range of languages, including but not limited to: Arabic, Bulgarian, Catalan, Czech, Danish, German, Greek, English, Spanish, Estonian, Persian, Finnish, French, Hebrew, Hindi, Croatian, Hungarian, Indonesian, Italian, Japanese, Korean, Lithuanian, Latvian, Macedonian, Malay, Dutch, Norwegian, Polish, Portuguese, Romanian, Russian, Slovak, Slovenian, Albanian, Serbian, Swedish, Thai, Turkish, Ukrainian, Urdu, Vietnamese, and Chinese.

Evaluation#

Please follow the mteb repository on how to reproduce our scores. The evaluation prompts used for each task are also available at mteb_v2_eval_prompts.json.

Bias, Risks, and Limitations#

  • Predictions may perpetuate biases present in the training data.
  • There is limited support for extremely low-resource languages and underrepresented domains.
  • The model is designed for text embedding tasks (retrieval, similarity, classification) and is not suitable for text generation.

Disclaimer#

We do not recommend using BitNet Embedding 0.6B in commercial or real-world applications without further testing and development. This model is intended for research and development purposes. Please use responsibly.

FAQ#

1. Do I need to add instructions to the query?

Yes, this is how the model is trained, otherwise you will see a performance degradation. The task definition should be a one-sentence instruction that describes the task. This is a way to customize text embeddings for different scenarios through natural language instructions.

On the other hand, there is no need to add instructions to the document side.

2. Why are my reproduced results slightly different from reported in the model card?

Different versions of transformers and pytorch could cause negligible but non-zero performance differences.

3. What pooling strategy does this model use?

The model uses last-token pooling — the embedding of the last non-padding token is used as the sentence representation. The embedding is then L2-normalized.

Citation#

@misc{li2026bitnettextembeddings,
  title={BitNet Text Embeddings},
  author={Zhen Li and Xin Huang and Liang Wang and Nan Yang and Ting Song and Yan Xia and Xun Wu and Shaohan Huang and Huishuai Zhang and Furu Wei and Dongyan Zhao},
  year={2026},
  eprint={2606.25674},
  archivePrefix={arXiv},
  primaryClass={cs.CL},
  url={https://arxiv.org/abs/2606.25674}
}

@inproceedings{wang2025bitnet,
  title={BitNet.cpp: Efficient Edge Inference for Ternary LLMs},
  author={Wang, Jinheng and Zhou, Hansong and Song, Ting and Cao, Shijie and Xia, Yan and Cao, Ting and Wei, Jianyu and Ma, Shuming and Wang, Hongyu and Wei, Furu},
  booktitle={Proceedings of the 63rd Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers)},
  pages={9305--9322},
  year={2025}
}

@article{wang2024multilingual,
  title={Multilingual E5 Text Embeddings: A Technical Report},
  author={Wang, Liang and Yang, Nan and Huang, Xiaolong and Yang, Linjun and Majumder, Rangan and Wei, Furu},
  journal={arXiv preprint arXiv:2402.05672},
  year={2024}
}

Files

5 files · 428 MBWeights 428 MB (GGUF). Sizes and sha256 from the signed manifest.
Hide all 5 files with their sha256
FileSizesha256
.gitattributes1.59 KBccf6eb0a226a7aba51c0c8b0ea9571b44358b8eccebeb4107a58efdd5db4d3dd
README.md13.5 KB87d7f156ed1b056717cc036428028940b49a940ea62be24b087f38331174ac86
bitnet-embeddings-0.6b-bf16-i2_s.gguf428 MBc89c64f05a2d3f83565250a6762640197fc624df866d4a1bd5853f811219af17
fig1_quant_per_task.png62.9 KBaf14d99b6a5c370218161bc4cb2dd3eb13c58edb5b04fd6ef76939b73f26f84d
mteb_v2_eval_prompts.json11.7 KBedca128f74638be6582bb9bb74333d099b2380c74484c103c9da0c40325dfe14
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
16176d1085 pinned now2026-11-15 03:46 UTC5 files · 428 MB

Use it

$ fw get microsoft/bitnet-embedding-0.6b
# manifest sha256 0d0292f1339c… · 428 MB · 5 files
$ fw verify ./bitnet-embedding-0.6b microsoft/bitnet-embedding-0.6b
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/microsoft/bitnet-embedding-0.6b.json --dir ./bitnet-embedding-0.6b $ python3 fw.py verify ./bitnet-embedding-0.6b ./microsoft__bitnet-embedding-0.6b.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download microsoft/bitnet-embedding-0.6b --revision 16176d108561b62e3d6f2b558587afe1140b413f --local-dir ./bitnet-embedding-0.6b
llama.cppDownload one GGUF variant (bitnet-embeddings-0.6b-bf16-i2_s, 428 MB), then serve it.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download microsoft/bitnet-embedding-0.6b --include "bitnet-embeddings-0.6b-bf16-i2_s*" --local-dir ./bitnet-embedding-0.6b $ llama-server -m ./bitnet-embedding-0.6b/bitnet-embeddings-0.6b-bf16-i2_s.gguf
OllamaMake an Ollama model from the downloaded file.
$ printf 'FROM ./bitnet-embedding-0.6b/bitnet-embeddings-0.6b-bf16-i2_s.gguf\n' > Modelfile $ ollama create bitnet-embedding-0.6b -f Modelfile

License

Name
MIT License
Id
MIT
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
License as declared by the publisher. No person read it. 2026-11-15
Text in
README.md
Text sha256
87d7f156ed1b056717cc036428028940b49a940ea62be24b087f38331174ac86
Terms gate
No extra terms beyond the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: microsoft <huggingface.co/microsoft>Newsgroups: alt.freeweights.textSubject: bitnet-embedding-0.6bDate: 2026-11-15Commit: 16176d1Signed: 2DC28CC7B26A283B ✓
Upstream
microsoft/bitnet-embedding-0.6b
Pinned commit
16176d108561b62e3d6f2b558587afe1140b413f
Manifest
bitnet-embedding-0.6b.json · .minisig
Manifest sha256
0d0292f1339ced4165272b240e9cee02f505bac30b1c9d3e04021bca13f14156
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-15 03:46 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/microsoft/bitnet-embedding-0.6b.json $ curl -O https://freeweights.allternit.com/manifests/microsoft/bitnet-embedding-0.6b.json.minisig $ minisign -Vm bitnet-embedding-0.6b.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

No related models in this catalog.Nothing here lists this model as its parent, and it names no parent.
Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download microsoft/bitnet-embedding-0.6b
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. bitnet-embedding-0.6b.json. Provenance. Takedown history: none.
From: laion <huggingface.co/laion>Subject: a2-rl-e2egit_large-50-32B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_e2egit-large-15-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_e2egit-v2-10-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_pymethods2test-large-80-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_unitsyn-python-large-10-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_mix_h2_language_proportional-65-8B