From cb25100f925a0db274086fa4506118eb6c5017ef Mon Sep 17 00:00:00 2001 From: George Date: Tue, 29 Sep 2026 20:09:24 +0700 Subject: [PATCH] new: add constella Co-authored-by: Dylan Couzon --- fastembed/text/onnx_embedding.py | 26 +++++++++++++++++++ fastembed/text/pooled_normalized_embedding.py | 13 ++++++++++ tests/test_text_onnx_embeddings.py | 9 +++++++ 3 files changed, 48 insertions(+) diff --git a/fastembed/text/onnx_embedding.py b/fastembed/text/onnx_embedding.py index 0f6cec9f..31876734 100644 --- a/fastembed/text/onnx_embedding.py +++ b/fastembed/text/onnx_embedding.py @@ -176,6 +176,32 @@ sources=ModelSource(hf="jinaai/jina-clip-v1"), model_file="onnx/text_model.onnx", ), + DenseModelDescription( + model="Qdrant/constella-zero", + dim=1024, + description=( + "Text embeddings, Unimodal (text), English, 512 input tokens truncation, " + "Query-side lookup table with no transformer, embeds into the document space of " + "stella_en_400M_v5, Prefixes for queries/documents: not necessary, 2026 year." + ), + license="mit", + size_in_GB=0.03, + sources=ModelSource(hf="Qdrant/constella-zero"), + model_file="model.onnx", + ), + DenseModelDescription( + model="Qdrant/stella-en-400M-v5-doc-onnx", + dim=1024, + description=( + "Text embeddings, Unimodal (text), English, 512 input tokens truncation, " + "Document side of stella_en_400M_v5 only -- queries need its s2p_query prompt, " + "Prefixes for queries/documents: necessary, 2026 year." + ), + license="mit", + size_in_GB=1.75, + sources=ModelSource(hf="Qdrant/stella-en-400M-v5-doc-onnx"), + model_file="model.onnx", + ), DenseModelDescription( model="minishlab/potion-base-8M", dim=256, diff --git a/fastembed/text/pooled_normalized_embedding.py b/fastembed/text/pooled_normalized_embedding.py index b107b05c..31bf4337 100644 --- a/fastembed/text/pooled_normalized_embedding.py +++ b/fastembed/text/pooled_normalized_embedding.py @@ -120,6 +120,19 @@ sources=ModelSource(hf="Qdrant/gte-large-onnx"), model_file="model.onnx", ), + DenseModelDescription( + model="Qdrant/constella-nano", + dim=1024, + description=( + "Text embeddings, Unimodal (text), English, 512 input tokens truncation, " + "Query-side 34.5M-parameter transformer, embeds into the document space of " + "stella_en_400M_v5, Prefixes for queries/documents: not necessary, 2026 year." + ), + license="mit", + size_in_GB=0.14, + sources=ModelSource(hf="Qdrant/constella-nano"), + model_file="model.onnx", + ), ] diff --git a/tests/test_text_onnx_embeddings.py b/tests/test_text_onnx_embeddings.py index 51e47675..82e17c09 100644 --- a/tests/test_text_onnx_embeddings.py +++ b/tests/test_text_onnx_embeddings.py @@ -85,6 +85,15 @@ "google/siglip2-base-patch16-224": np.array( [-0.01181389, 0.00737596, 0.01118064, 0.0103095, 0.3451049] ), + "Qdrant/constella-zero": np.array( + [-0.00065711, -0.02646863, -0.03326607, 0.01312574, -0.01599784] + ), + "Qdrant/constella-nano": np.array( + [0.00829927, -0.00579543, -0.05936033, 0.02826244, -0.01873815] + ), + "Qdrant/stella-en-400M-v5-doc-onnx": np.array( + [0.00934642, -0.00412083, -0.0927834, -0.00382371, -0.0415402] + ), "minishlab/potion-base-8M": np.array( [-0.03432461, -0.08020256, -0.14396408, 0.08480079, 0.01958815] ),