mirror of
https://github.com/qdrant/fastembed.git
synced 2026-09-29 01:18:01 -05:00
* feat: Added jina reranker models * chore: Added jina reranker canonical score values * chore: added rounding of the output for easier reproducability * chore: Added jina reranker models in batch test * chore: remove redundant np.round * chore: test only <1gb files in local * chore: Updated docs to add rerankers * fix: recompute canonical values with fp16 * new: extend NOTICE with jina reranker v2 --------- Co-authored-by: George Panchuk <george.panchuk@qdrant.tech>
30 KiB
30 KiB
In [10]:
%load_ext autoreload
%autoreload 2The autoreload extension is already loaded. To reload it, use: %reload_ext autoreload
In [11]:
import pandas as pd
from fastembed import (
SparseTextEmbedding,
TextEmbedding,
LateInteractionTextEmbedding,
ImageEmbedding,
)
from fastembed.rerank.cross_encoder import TextCrossEncoderIn [12]:
supported_models = (
pd.DataFrame(TextEmbedding.list_supported_models())
.sort_values("size_in_GB")
.drop(columns=["sources", "model_file", "additional_files"])
.reset_index(drop=True)
)
supported_modelsOut [12]:
| model | dim | description | license | size_in_GB | |
|---|---|---|---|---|---|
| 0 | BAAI/bge-small-en-v1.5 | 384 | Text embeddings, Unimodal (text), English, 512... | mit | 0.067 |
| 1 | BAAI/bge-small-zh-v1.5 | 512 | Text embeddings, Unimodal (text), Chinese, 512... | mit | 0.090 |
| 2 | snowflake/snowflake-arctic-embed-xs | 384 | Text embeddings, Unimodal (text), English, 512... | apache-2.0 | 0.090 |
| 3 | sentence-transformers/all-MiniLM-L6-v2 | 384 | Text embeddings, Unimodal (text), English, 256... | apache-2.0 | 0.090 |
| 4 | jinaai/jina-embeddings-v2-small-en | 512 | Text embeddings, Unimodal (text), English, 819... | apache-2.0 | 0.120 |
| 5 | BAAI/bge-small-en | 384 | Text embeddings, Unimodal (text), English, 512... | mit | 0.130 |
| 6 | snowflake/snowflake-arctic-embed-s | 384 | Text embeddings, Unimodal (text), English, 512... | apache-2.0 | 0.130 |
| 7 | nomic-ai/nomic-embed-text-v1.5-Q | 768 | Text embeddings, Multimodal (text, image), Eng... | apache-2.0 | 0.130 |
| 8 | BAAI/bge-base-en-v1.5 | 768 | Text embeddings, Unimodal (text), English, 512... | mit | 0.210 |
| 9 | sentence-transformers/paraphrase-multilingual-... | 384 | Text embeddings, Unimodal (text), Multilingual... | apache-2.0 | 0.220 |
| 10 | Qdrant/clip-ViT-B-32-text | 512 | Text embeddings, Multimodal (text&image), Engl... | mit | 0.250 |
| 11 | jinaai/jina-embeddings-v2-base-de | 768 | Text embeddings, Unimodal (text), Multilingual... | apache-2.0 | 0.320 |
| 12 | BAAI/bge-base-en | 768 | Text embeddings, Unimodal (text), English, 512... | mit | 0.420 |
| 13 | snowflake/snowflake-arctic-embed-m | 768 | Text embeddings, Unimodal (text), English, 512... | apache-2.0 | 0.430 |
| 14 | nomic-ai/nomic-embed-text-v1.5 | 768 | Text embeddings, Multimodal (text, image), Eng... | apache-2.0 | 0.520 |
| 15 | jinaai/jina-embeddings-v2-base-en | 768 | Text embeddings, Unimodal (text), English, 819... | apache-2.0 | 0.520 |
| 16 | nomic-ai/nomic-embed-text-v1 | 768 | Text embeddings, Multimodal (text, image), Eng... | apache-2.0 | 0.520 |
| 17 | snowflake/snowflake-arctic-embed-m-long | 768 | Text embeddings, Unimodal (text), English, 204... | apache-2.0 | 0.540 |
| 18 | mixedbread-ai/mxbai-embed-large-v1 | 1024 | Text embeddings, Unimodal (text), English, 512... | apache-2.0 | 0.640 |
| 19 | jinaai/jina-embeddings-v2-base-code | 768 | Text embeddings, Unimodal (text), Multilingual... | apache-2.0 | 0.640 |
| 20 | sentence-transformers/paraphrase-multilingual-... | 768 | Text embeddings, Unimodal (text), Multilingual... | apache-2.0 | 1.000 |
| 21 | snowflake/snowflake-arctic-embed-l | 1024 | Text embeddings, Unimodal (text), English, 512... | apache-2.0 | 1.020 |
| 22 | thenlper/gte-large | 1024 | Text embeddings, Unimodal (text), English, 512... | mit | 1.200 |
| 23 | BAAI/bge-large-en-v1.5 | 1024 | Text embeddings, Unimodal (text), English, 512... | mit | 1.200 |
| 24 | intfloat/multilingual-e5-large | 1024 | Text embeddings, Unimodal (text), Multilingual... | mit | 2.240 |
In [13]:
(
pd.DataFrame(SparseTextEmbedding.list_supported_models())
.sort_values("size_in_GB")
.drop(columns=["sources", "model_file", "additional_files"])
.reset_index(drop=True)
)Out [13]:
| model | vocab_size | description | license | size_in_GB | requires_idf | |
|---|---|---|---|---|---|---|
| 0 | Qdrant/bm25 | NaN | BM25 as sparse embeddings meant to be used wit... | apache-2.0 | 0.010 | True |
| 1 | Qdrant/bm42-all-minilm-l6-v2-attentions | 30522.0 | Light sparse embedding model, which assigns an... | apache-2.0 | 0.090 | True |
| 2 | prithivida/Splade_PP_en_v1 | 30522.0 | Independent Implementation of SPLADE++ Model f... | apache-2.0 | 0.532 | NaN |
| 3 | prithvida/Splade_PP_en_v1 | 30522.0 | Independent Implementation of SPLADE++ Model f... | apache-2.0 | 0.532 | NaN |
In [14]:
(
pd.DataFrame(LateInteractionTextEmbedding.list_supported_models())
.sort_values("size_in_GB")
.drop(columns=["sources", "model_file"])
.reset_index(drop=True)
)Out [14]:
| model | dim | description | license | size_in_GB | additional_files | |
|---|---|---|---|---|---|---|
| 0 | answerdotai/answerai-colbert-small-v1 | 96 | Text embeddings, Unimodal (text), Multilingual... | apache-2.0 | 0.13 | NaN |
| 1 | colbert-ir/colbertv2.0 | 128 | Late interaction model | mit | 0.44 | NaN |
| 2 | jinaai/jina-colbert-v2 | 128 | New model that expands capabilities of colbert... | cc-by-nc-4.0 | 2.24 | [onnx/model.onnx_data] |
In [15]:
(
pd.DataFrame(ImageEmbedding.list_supported_models())
.sort_values("size_in_GB")
.drop(columns=["sources", "model_file"])
.reset_index(drop=True)
)Out [15]:
| model | dim | description | license | size_in_GB | |
|---|---|---|---|---|---|
| 0 | Qdrant/resnet50-onnx | 2048 | Image embeddings, Unimodal (image), 2016 year | apache-2.0 | 0.10 |
| 1 | Qdrant/clip-ViT-B-32-vision | 512 | Image embeddings, Multimodal (text&image), 202... | mit | 0.34 |
| 2 | Qdrant/Unicom-ViT-B-32 | 512 | Image embeddings, Multimodal (text&image), 202... | apache-2.0 | 0.48 |
| 3 | Qdrant/Unicom-ViT-B-16 | 768 | Image embeddings (more detailed than Unicom-Vi... | apache-2.0 | 0.82 |
In [16]:
(
pd.DataFrame(TextCrossEncoder.list_supported_models())
.sort_values("size_in_GB")
.drop(columns=["sources", "model_file"])
.reset_index(drop=True)
)Out [16]:
| model | size_in_GB | description | license | |
|---|---|---|---|---|
| 0 | Xenova/ms-marco-MiniLM-L-6-v2 | 0.08 | MiniLM-L-6-v2 model optimized for re-ranking t... | apache-2.0 |
| 1 | Xenova/ms-marco-MiniLM-L-12-v2 | 0.12 | MiniLM-L-12-v2 model optimized for re-ranking ... | apache-2.0 |
| 2 | jinaai/jina-reranker-v1-tiny-en | 0.13 | Designed for blazing-fast re-ranking with 8K c... | apache-2.0 |
| 3 | jinaai/jina-reranker-v1-turbo-en | 0.15 | Designed for blazing-fast re-ranking with 8K c... | apache-2.0 |
| 4 | BAAI/bge-reranker-base | 1.04 | BGE reranker base model for cross-encoder re-r... | mit |
| 5 | jinaai/jina-reranker-v2-base-multilingual | 1.11 | A multi-lingual reranker model for cross-encod... | cc-by-nc-4.0 |
In [ ]: