Instructions to use cstr/UltraBERT-Embed-150M-CrispEmbed-GGUF with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use cstr/UltraBERT-Embed-150M-CrispEmbed-GGUF with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible embeddings server: llama serve -hf cstr/UltraBERT-Embed-150M-CrispEmbed-GGUF --embeddings
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible embeddings server: llama serve -hf cstr/UltraBERT-Embed-150M-CrispEmbed-GGUF --embeddings
Build from source code
git clone https://github.com/ggml-org/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-app # Start a local OpenAI-compatible embeddings server: ./build/bin/llama serve -hf cstr/UltraBERT-Embed-150M-CrispEmbed-GGUF --embeddings
- Llama new
- LM Studio
- Jan
- Ollama
How to use cstr/UltraBERT-Embed-150M-CrispEmbed-GGUF with Ollama:
ollama run hf.co/cstr/UltraBERT-Embed-150M-CrispEmbed-GGUF
- Unsloth Desktop
- Docker Model Runner
How to use cstr/UltraBERT-Embed-150M-CrispEmbed-GGUF with Docker Model Runner:
docker model run hf.co/cstr/UltraBERT-Embed-150M-CrispEmbed-GGUF
- Lemonade
How to use cstr/UltraBERT-Embed-150M-CrispEmbed-GGUF with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull cstr/UltraBERT-Embed-150M-CrispEmbed-GGUF
Run and chat with the model
lemonade run user.UltraBERT-Embed-150M-CrispEmbed-GGUF-{{QUANT_TAG}}List all available models
lemonade list
- Atomic Chat
UltraBERT-Embed-150M Q4_K GGUF (CrispEmbed, EXPERIMENTAL)
A quantized GGUF of dmis-lab/UltraBERT-Embed-150M by Jungwoo Park, Taewhoo Lee and Jaewoo Kang (DMIS Lab), for CrispEmbed's default-off native UltraBERT text-embedding path. All credit for the model belongs to the original authors.
Status: experimental. It clears CrispEmbed's Q4_K precision bar (final-embedding cosine > 0.94) and retrieval quality is close to the original, but it fails the stricter F32 vector and top-1 agreement gates (below).
Do not mix Q4_K vectors into an index built with F32 (or the original model) vectors. Per-row cosine to the original can drop to 0.9779 and top-1 agreement is 0.973; re-embed the whole corpus with the same file you query with.
Quality (SciFact, 300 queries over 5,483 rows, vs the original F32 PyTorch model)
| Precision | Size | Min embedding cosine | Mean embedding cosine | nDCG@10 | MRR@10 | Recall@100 | Top-1 agreement | Strict F32 vector gate | Status |
|---|---|---|---|---|---|---|---|---|---|
| Original (F32) | 581.2 MiB | 1 | 1 | 0.7667 | 0.7290 | 0.9750 | reference | reference | reference |
Q4_K q4k-last-four-ffn (this file) |
550.3 MiB | 0.9779 | not measured | 0.7649 (-0.0018) | 0.7279 (-0.0011) | 0.9767 (+0.0017) | 0.973 | fail (max abs normalized 0.0282) | experimental |
- Measured by CrispEmbed run 40871150002 (runtime commit
018cf85b7bb6, portable build, hosted x86-64 CPU) on exactly these bytes. The protocol's own strict gates (F32 vector budget, top-1 >= 0.99, task degradation <= 0.001) fail and stay recorded; publication follows the owner's precision policy. - Not measured: GPU backends, ARM/Apple, other corpora/languages, long-context behaviour, latency.
Files
| File | Precision | Bytes | SHA256 |
|---|---|---|---|
ultrabert-embed-150m-q4_k-last-four-ffn.gguf |
Q4_K-LAST-FOUR-FFN | 576,997,440 | 087c9be0fa50ba57db74e650889521c985d306863c94aabf731764538eb4533c |
- crispembed-quantize q4_k with token_embd and every attention matrix F32 and blk.0-19 FFN gate/up/down F32: only the last four layers' FFN matrices (12 tensors) are Q4_K, 206 tensors stay F32. Legacy UltraBERT header written by the runtime-018cf85b quantizer. Stored types: F32 206, Q4_K 12.
License and attribution
- The original model is released under the Apache License 2.0; this derived file is distributed under the same
license. The model repository declares
license: apache-2.0but ships no LICENSE or NOTICE file, soLICENSEis the verbatim canonical Apache-2.0 text (SHA256cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30) and no NOTICE is included. UPSTREAM_README.mdis the unmodified upstream model card at revision367d5343b5a0164d57b810cedf5de4b8983d5984(SHA25627573272049ca66a4504b7e458887848b0fa0b7a5c6c68edcd774c6ce5070608).
Statement of changes (Apache-2.0 section 4(b))
Modified from the original by CrispEmbed: the model.safetensors weights of revision 367d5343b5a0164d57b810cedf5de4b8983d5984 were
format-converted to GGUF (models/convert-ultrabert-to-gguf.py, F32, tokenizer metadata embedded; F32 SHA256
89478b9cbbad2fd1121be4031d760f1529c989fedf23b6b19251ba2c87422566) and then quantized with CrispEmbed's crispembed-quantize (recipe above).
No weights were trained, fine-tuned, merged or otherwise altered.
How the file was produced
- Converted and quantized by CrispEmbed run 40843704011; the file is copied unchanged from that run's retained artifact and checked against the receipt's size and SHA256.
- Uploaded by CrispEmbed commit
017817a2eb13500aec2ec33d9ef86d69e3d7c1c7(workflowultrabert-publish.yml, protocoldocs/ultrabert-publication-v1.json);manifest.jsonlists the pins, receipts and file hashes.
Usage
UltraBERT support is CPU-only, experimental and default-off:
CRISPEMBED_ULTRABERT=1 CRISPEMBED_ULTRABERT_QUANT=1 CRISPEMBED_ULTRABERT_UNICODE_PRETOKEN=1 CRISPEMBED_ULTRABERT_TRUNCATE=1 \
crispembed -m ultrabert-embed-150m-q4_k-last-four-ffn.gguf "your text"
- Downloads last month
- 52