Vela Omni Mini
Vela Omni Mini maps text, images, and speech into a shared embedding space for multimodal search, routing, and clustering.
1044M parameters · 768 dimensions · L2-normalized embeddings.
Try it in Vela Studio.
Evaluation
Scores use a 0–100 scale; higher is better. All applicable models use the same examples and retrieval pools. N/A denotes a modality the text-only model does not support. Bold Vela scores improve on multi-modal-embed-large.
| Metric |
Vela-1.0-Encoder-307M-Embedding |
multi-modal-embed-small |
multi-modal-embed-large |
Vela-1.0-Omni-Mini |
| Banking77 · Accuracy |
80.00 |
70.42 |
75.78 |
77.99 |
| Banking77 · Macro-F1 |
79.95 |
70.21 |
75.84 |
77.91 |
| MASSIVE English · Accuracy |
75.64 |
65.95 |
72.31 |
73.35 |
| MASSIVE English · Macro-F1 |
72.89 |
61.72 |
68.20 |
69.35 |
| COCO · Image → text · R@1 |
N/A |
40.83 |
42.53 |
66.10 |
| COCO · Image → text · R@5 |
N/A |
67.19 |
75.21 |
89.79 |
| COCO · Image → text · R@10 |
N/A |
78.49 |
87.61 |
95.63 |
| COCO · Text → image · R@1 |
N/A |
30.18 |
35.04 |
50.52 |
| COCO · Text → image · R@5 |
N/A |
59.42 |
70.09 |
82.07 |
| COCO · Text → image · R@10 |
N/A |
74.29 |
83.91 |
92.54 |
| LibriSpeech · Audio → text · R@1 |
N/A |
4.21 |
56.99 |
90.23 |
| LibriSpeech · Audio → text · R@5 |
N/A |
11.99 |
81.85 |
97.09 |
| LibriSpeech · Audio → text · R@10 |
N/A |
19.03 |
87.94 |
98.12 |
| LibriSpeech · Text → audio · R@1 |
N/A |
9.58 |
78.58 |
92.22 |
| LibriSpeech · Text → audio · R@5 |
N/A |
22.53 |
94.02 |
98.16 |
| LibriSpeech · Text → audio · R@10 |
N/A |
30.69 |
97.01 |
99.12 |
Macro-F1 gives equal weight to every intent class (77 for Banking77 and 60 for MASSIVE), complementing the query-weighted accuracy; undefined class F1 is zero. Text evaluation uses fixed class prototypes: 3,080 Banking77 and 2,972 MASSIVE English queries. Vela Omni is adapted using training examples and intent labels from these two datasets; comparison models are evaluated as published without additional adaptation here. These scores measure supervised task adaptation with nearest-prototype classification, not zero-shot transfer or the MTEB classification protocol.
Image retrieval uses the COCO Karpathy CC-BY2 image subset: 823 images and 4,115 captions. Speech retrieval uses 2,611 LibriSpeech test-clean clips and 2,610 unique transcripts, with clips limited to 30 seconds. Recall is measured against each complete candidate pool, accepting all matching positives.
Evaluation uses FP32 embeddings, cosine similarity, and a common 128-token text limit. Full scores and protocol include model revisions, sample counts, and paired uncertainty against the original and previous models. These fixed evaluation pools are reused across releases.
Standard benchmarks
The following selected tasks use MTEB 2.21.0, frozen encoders and each task's official evaluation protocol. They cover text similarity, retrieval, classification and clustering, plus image and audio classification, clustering and zero-shot label matching. Scores are multiplied by 100; higher is better. A dash means not measured here. These results do not represent a complete MTEB, MMTEB, MIEB or MAEB score. Bold Mini scores improve on the previous Mini release.
| Task |
Metric |
Vela Embedding 307M |
Omni Nano |
Omni Mini |
| SICK-R |
Spearman ρ |
79.71 |
71.70 |
76.02 |
| STSBenchmark |
Spearman ρ |
81.32 |
77.92 |
75.25 |
| ArguAna |
nDCG@10 |
— |
37.51 |
36.41 |
| 20 Newsgroups · Clustering v2 |
V-measure |
— |
44.88 |
39.56 |
| MTOP domain · English |
Accuracy |
— |
86.72 |
86.00 |
| Oxford Pets · Classification |
Accuracy |
— |
44.47 |
92.26 |
| Tiny ImageNet · Clustering |
NMI |
— |
46.03 |
75.55 |
| Oxford Pets · Zero-shot |
Accuracy |
— |
15.26 |
9.57 |
| CREMA-D · Classification |
Accuracy |
— |
29.76 |
21.70 |
| CREMA-D · Clustering |
V-measure |
— |
2.36 |
0.56 |
| Speech Commands v0.02 · Zero-shot |
Accuracy |
— |
14.97 |
42.00 |
Evaluation uses FP32, batch size 8 and seed 20260918. Text limits are 512 tokens for Nano, 32,768 for Mini and 128 for the separate Embedding reference. The benchmark adapter truncates longer inputs: on ArguAna this affects 222 of 10,080 Nano inputs and none for Mini. Text, image and audio classification use task-specific labeled probes; zero-shot tasks compare media with fixed text labels. CREMA-D classification uses the official five-fold protocol on its named train split, with the encoder frozen. Official clustering subsampling is preserved.
Full metrics and protocol include dataset and model revisions, evaluation counts, repeated-probe results, classification F1/precision/recall, retrieval metrics and clustering statistics. MTOP validation results are included there separately. These measurements show that fine-grained image label matching and audio emotion recognition need stronger alignment; speech retrieval scores should not be read as general audio understanding.
Audio benchmarks
Complete MAEB(beta) audio-only panel: 19 tasks and 134 subset/split combinations, evaluated with MTEB 2.21.0.
| Official task group |
Vela Omni Nano |
Vela Omni Mini |
| Classification |
39.57 |
42.95 |
| Clustering |
5.42 |
3.12 |
| Pair classification |
57.19 |
62.90 |
| Retrieval |
68.90 |
53.38 |
| Reranking |
63.79 |
63.26 |
| Mean task |
39.78 |
41.43 |
| Mean task type |
46.97 |
45.12 |
Scores ×100; bold compares Nano and Mini, not a previous release. Each group follows the official mean of task scores. Classification includes official supervised probes; joint text/audio tasks are excluded.
All 19 task metrics and exact evaluated revisions. The current models retain the evaluated audio weights and processing.
Quick start
Use PyTorch, Transformers 4.57.6, Hugging Face Hub, safetensors, NumPy, and Pillow:
import sys
from huggingface_hub import snapshot_download
path = snapshot_download("llm-semantic-router/Vela-1.0-Omni-Mini")
sys.path.insert(0, path)
from vela_omni import VelaOmni
model = VelaOmni.from_pretrained(path, device="cpu")
vectors = model.encode_text(["A bicycle beside a building.", "Someone is reading aloud."])
print(vectors.shape) # (2, 768)
Pass a list of Pillow images to model.encode_image(images). Pass a list of mono NumPy waveforms to model.encode_audio(waveforms, sampling_rate=16000); each waveform must be at most 30 seconds. Compare normalized vectors with their dot product. To route media, embed each destination’s name and description, then select the closest vector. To discover routing categories, cluster media embeddings and inspect each group. Similarity scores are rankings, not calibrated probabilities.
Cross-modal alignment uses COCO image–caption pairs from the CC-BY 2.0 image subset and LibriSpeech speech–transcript pairs (CC-BY 4.0). COCO annotations, Banking77, and MASSIVE are provided under CC-BY 4.0.
The repository includes the native model code, component configurations, and tokenizer and processor files. See NOTICE and LICENSE for component attribution and license terms.
Explore the Vela model collection