File size: 3,134 Bytes
a06c7df
9a834b4
 
 
a06c7df
8888cb2
a06c7df
 
9a834b4
a06c7df
9a834b4
a06c7df
9a834b4
a06c7df
7354204
a06c7df
9a834b4
 
 
 
 
 
 
 
 
a06c7df
 
 
9a834b4
a06c7df
9a834b4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
---
license: cc-by-nc-4.0
language: [multilingual]
tags: [embeddings, gguf, ggml, text-embeddings, qwen3, crispembed]
pipeline_tag: feature-extraction
base_model: jinaai/jina-embeddings-v5-text-small
---

# jina-v5-small GGUF

GGUF format of [jinaai/jina-embeddings-v5-text-small](https://huggingface.co/jinaai/jina-embeddings-v5-text-small) for use with [CrispEmbed](https://github.com/CrispStrobe/CrispEmbed).

Jina Embeddings v5 Small. Full-size decoder model, 1024-dimensional.

## Files

| File | Quantization | Size |
|------|-------------|------|
| [jina-v5-small-classification.gguf](https://huggingface.co/cstr/jina-v5-small-GGUF/resolve/main/jina-v5-small-classification.gguf) | F32 | 2279 MB |
| [jina-v5-small-clustering.gguf](https://huggingface.co/cstr/jina-v5-small-GGUF/resolve/main/jina-v5-small-clustering.gguf) | F32 | 2279 MB |
| [jina-v5-small-q4_k.gguf](https://huggingface.co/cstr/jina-v5-small-GGUF/resolve/main/jina-v5-small-q4_k.gguf) | Q4_K | 400 MB |
| [jina-v5-small-q5_k.gguf](https://huggingface.co/cstr/jina-v5-small-GGUF/resolve/main/jina-v5-small-q5_k.gguf) | Q5_K | 452 MB |
| [jina-v5-small-q8_0.gguf](https://huggingface.co/cstr/jina-v5-small-GGUF/resolve/main/jina-v5-small-q8_0.gguf) | Q8_0 | 610 MB |
| [jina-v5-small-text-matching.gguf](https://huggingface.co/cstr/jina-v5-small-GGUF/resolve/main/jina-v5-small-text-matching.gguf) | F32 | 2279 MB |
| [jina-v5-small.gguf](https://huggingface.co/cstr/jina-v5-small-GGUF/resolve/main/jina-v5-small.gguf) | F32 | 2279 MB |



## Quick Start

```bash
# Download
huggingface-cli download cstr/jina-v5-small-GGUF jina-v5-small-classification.gguf --local-dir .

# Run with CrispEmbed
./crispembed -m jina-v5-small-classification.gguf "Hello world"

# Or with auto-download
./crispembed -m jina-v5-small "Hello world"
```

## Model Details

| Property | Value |
|----------|-------|
| Architecture | Qwen3 |
| Parameters | 600M |
| Embedding Dimension | 1024 |
| Layers | 28 |
| Pooling | last-token |
| Tokenizer | GPT-2 BPE |
| Base Model | [jinaai/jina-embeddings-v5-text-small](https://huggingface.co/jinaai/jina-embeddings-v5-text-small) |

## Verification

Verified bit-identical to HuggingFace sentence-transformers (cosine similarity >= 0.999 on test texts).

## Usage with CrispEmbed

CrispEmbed is a lightweight C/C++ text embedding inference engine using ggml.
No Python runtime, no ONNX. Supports BERT, XLM-R, Qwen3, and Gemma3 architectures.

```bash
# Build CrispEmbed
git clone https://github.com/CrispStrobe/CrispEmbed
cd CrispEmbed
cmake -S . -B build && cmake --build build -j

# Encode
./build/crispembed -m jina-v5-small-classification.gguf "query text"

# Server mode
./build/crispembed-server -m jina-v5-small-classification.gguf --port 8080
curl -X POST http://localhost:8080/v1/embeddings \
    -d '{"input": ["Hello world"], "model": "jina-v5-small"}'
```

## Credits

- Original model: [jinaai/jina-embeddings-v5-text-small](https://huggingface.co/jinaai/jina-embeddings-v5-text-small)
- Inference engine: [CrispEmbed](https://github.com/CrispStrobe/CrispEmbed) (ggml-based)
- Conversion: `convert-decoder-embed-to-gguf.py`