File size: 3,458 Bytes
c37cd6e
 
 
 
 
 
 
 
 
 
 
 
 
e00a879
c37cd6e
 
9aea531
c37cd6e
9aea531
c37cd6e
9aea531
c37cd6e
9aea531
c37cd6e
3993464
9aea531
 
 
 
 
 
c37cd6e
 
 
8a3b707
811b39e
 
 
 
 
 
 
 
8a3b707
811b39e
 
 
 
8a3b707
9aea531
 
c37cd6e
 
9aea531
c37cd6e
48fac2a
 
 
 
 
 
 
 
c37cd6e
 
 
9b51836
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
---
license: cc-by-nc-4.0
language:
- en
base_model:
- Qwen/Qwen3-4B
pipeline_tag: text-ranking
tags:
- finance
- legal
- code
- stem
- medical
library_name: sentence-transformers
---

<img src="https://i.imgur.com/oxvhvQu.png"/>

# Releasing zeroentropy/zerank-1

In search enginers, [rerankers are crucial](https://www.zeroentropy.dev/blog/what-is-a-reranker-and-do-i-need-one) for improving the accuracy of your retrieval system.

However, SOTA rerankers are closed-source and proprietary. At ZeroEntropy, we've trained a SOTA reranker outperforming closed-source competitors, and we're launching our model here on HuggingFace.

This reranker [outperforms proprietary rerankers](https://huggingface.co/zeroentropy/zerank-1#evaluations) such as `cohere-rerank-v3.5` and `Salesforce/LlamaRank-v1` across a wide variety of domains, including finance, legal, code, STEM, medical, and conversational data.

At ZeroEntropy we've developed an innovative multi-stage pipeline that models query-document relevance scores as adjusted [Elo ratings](https://en.wikipedia.org/wiki/Elo_rating_system). See our Technical Report (Coming soon!) for more details.

Since we're a small company, this model is only released under a non-commercial license. If you'd like a commercial license, please contact us at [email protected] and we'll get you a license ASAP.

For this model's smaller twin, see [zerank-1-small](https://huggingface.co/zeroentropy/zerank-1-small), which we've fully open-sourced under an Apache 2.0 License.

## How to Use

```python
from sentence_transformers import CrossEncoder

model = CrossEncoder("zeroentropy/zerank-1", trust_remote_code=True)

query_documents = [
    ("What is 2+2?", "4"),
    ("What is 2+2?", "The answer is definitely 1 million"),
]

scores = model.predict(query_documents)

print(scores)
```

The model can also be inferenced using ZeroEntropy's [/models/rerank](https://docs.zeroentropy.dev/api-reference/models/rerank) endpoint.

## Evaluations

NDCG@10 scores between `zerank-1` and competing closed-source proprietary rerankers. Since we are evaluating rerankers, OpenAI's `text-embedding-3-small` is used as an initial retriever for the Top 100 candidate documents.

| Task           | Embedding | cohere-rerank-v3.5 | Salesforce/Llama-rank-v1 | zerank-1-small | **zerank-1** |
|----------------|-----------|--------------------|--------------------------|----------------|--------------|
| Code           |    0.678  |       0.724        |           0.694          |      0.730     |   **0.754**  |
| Conversational |    0.250  |       0.571        |           0.484          |      0.556     |   **0.596**  |
| Finance        |    0.839  |       0.824        |           0.828          |      0.861     |   **0.894**  |
| Legal          |    0.703  |       0.804        |           0.767          |      0.817     |   **0.821**  |
| Medical        |    0.619  |       0.750        |           0.719          |      0.773     |   **0.796**  |
| STEM           |    0.401  |       0.510        |           0.595          |      0.680     |   **0.694**  |

Comparing BM25 and Hybrid Search without and with zerank-1:

<img src="https://cdn-uploads.huggingface.co/production/uploads/67776f9dcd9c9435499eafc8/2GPVHFrI39FspnSNklhsM.png" alt="Description" width="400"/> <img src="https://cdn-uploads.huggingface.co/production/uploads/67776f9dcd9c9435499eafc8/dwYo2D7hoL8QiE8u3yqr9.png" alt="Description" width="400"/>