--- language: - en license: cc-by-nc-4.0 pipeline_tag: feature-extraction tags: - sentence-transformers - mteb - feature-extraction - e8-lattice - english base_model: jinaai/jina-embeddings-v5-text-nano base_model_relation: adapter --- # jina-v5-text-nano — E8 Snap Head (1024-dim) E8 lattice projection head trained on top of a **frozen** [jinaai/jina-embeddings-v5-text-nano](https://huggingface.co/jinaai/jina-embeddings-v5-text-nano) backbone. The head expands 768-dim float embeddings to **1024-dim E8 lattice coordinates** — enabling O(1) semantic lookup in [LatticeMemory](https://huggingface.co/spaces/dfrokido/LatticeMemory). ## MTEB STS Results | Task | Float baseline | E8 Snap Head | Delta | |---|---|---|---| | STSBenchmark | 0.9445 | **0.9185** | -0.0260 | | STS13 | 0.8948 | 0.8711 | -0.0237 | | SICK-R | 0.9197 | 0.8952 | -0.0245 | | STS17 | 0.8835 | 0.8604 | -0.0231 | | STS16 | 0.8687 | 0.8500 | -0.0187 | | STS15 | 0.9281 | 0.9153 | -0.0128 | | STS12 | 0.8534 | 0.8408 | -0.0126 | | BIOSSES | 0.8744 | 0.8619 | -0.0125 | | STS22 | 0.7030 | 0.6965 | -0.0065 | | **STS14** | 0.8891 | **0.8929** | **+0.0038** | | **10-task mean** | 0.8759 | **0.8602** | -0.0157 | STSBenchmark 0.9185 places this model **top 10 globally** on the MTEB STS leaderboard (260 submitted models as of 2026-06-04). ## What This Is The backbone is fully frozen. The head learns to map 768-dim encoder output onto the nearest E8 lattice point in 1024 dimensions, preserving cosine similarity while producing addresses that can be indexed in an integer hash table. - **Architecture:** `OutputOnlyE8Head(input_dim=768, output_dim=1024, hidden_dim=1024)` - **Training:** STS-B train/val pairs, 5 epochs, AdamW lr=2e-4, batch 16 - **Inference:** frozen jina backbone → E8 head → L2-normalised 1024-dim output ## Usage ```python from sentence_transformers import SentenceTransformer from liora_core.embed.small_model_e8_head import load_head_checkpoint from huggingface_hub import snapshot_download head_dir = snapshot_download("dfrokido/jina-v5-text-nano-e8-snap-1024") head, _ = load_head_checkpoint(head_dir) backbone = SentenceTransformer( "jinaai/jina-embeddings-v5-text-nano", trust_remote_code=True, model_kwargs={"default_task": "text-matching"}, ) import torch texts = ["semantic search", "vector retrieval"] with torch.no_grad(): embs = backbone.encode(texts, convert_to_tensor=True, task="text-matching") e8_embs = head(embs, snap=True) # (N, 1024) E8-snapped ``` ## Links - Demo: [LatticeMemory](https://huggingface.co/spaces/dfrokido/LatticeMemory) - GitHub: [sangmorg1-debug/e8-Project](https://github.com/sangmorg1-debug/e8-Project) - Base model: [jinaai/jina-embeddings-v5-text-nano](https://huggingface.co/jinaai/jina-embeddings-v5-text-nano)