Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
637 commits
Select commit Hold shift + click to select a range
24d5373
Update tasks table
github-actions[bot] Jan 29, 2025
2689cb8
Update tasks table
github-actions[bot] Jan 29, 2025
50f305f
Update tasks table
github-actions[bot] Jan 29, 2025
e8b8ac0
Update tasks table
github-actions[bot] Jan 29, 2025
c77c82c
Update tasks table
github-actions[bot] Jan 29, 2025
02f8ad5
Update tasks table
github-actions[bot] Jan 29, 2025
3ee0785
Update tasks table
github-actions[bot] Jan 29, 2025
ce6e666
1.31.4
invalid-email-address Jan 29, 2025
092688d
Update tasks table
github-actions[bot] Jan 29, 2025
cec0ed4
fix: Limited plotly version to be less than 6.0.0 (#1902)
x-tabdeveloping Jan 29, 2025
a91d268
Update tasks table
github-actions[bot] Jan 29, 2025
d8bf18b
Update tasks table
github-actions[bot] Jan 29, 2025
d005797
Update tasks table
github-actions[bot] Jan 29, 2025
251142e
Update tasks table
github-actions[bot] Jan 29, 2025
da08617
Update tasks table
github-actions[bot] Jan 29, 2025
93f23c4
Update tasks table
github-actions[bot] Jan 29, 2025
a764fd7
Update tasks table
github-actions[bot] Jan 29, 2025
0861254
Update tasks table
github-actions[bot] Jan 29, 2025
976bdd5
update stella/jasper metainfo (#1896)
Samoed Jan 29, 2025
cc1e899
Update tasks table
github-actions[bot] Jan 29, 2025
1c84c1c
Update tasks table
github-actions[bot] Jan 29, 2025
d6deab1
Update tasks table
github-actions[bot] Jan 29, 2025
ef929f8
Update tasks table
github-actions[bot] Jan 29, 2025
a5d1538
Update tasks table
github-actions[bot] Jan 29, 2025
42c175f
Update tasks table
github-actions[bot] Jan 29, 2025
7f9ca64
1.31.5
invalid-email-address Jan 29, 2025
e04218c
Update tasks table
github-actions[bot] Jan 29, 2025
0a57880
Update tasks table
github-actions[bot] Jan 29, 2025
d44f9c3
Update tasks table
github-actions[bot] Jan 29, 2025
35b2c09
Update tasks table
github-actions[bot] Jan 29, 2025
f3404b4
Feat: Add FaMTEB (Farsi/Persian Text Embedding Benchmark) (#1843)
mehran-sarmadi Jan 30, 2025
0a59704
Update tasks table
github-actions[bot] Jan 30, 2025
7e5d6c8
Docs: update docs according to current state (#1870)
Samoed Jan 30, 2025
7996458
Update tasks table
github-actions[bot] Jan 30, 2025
6cc0560
Update tasks table
github-actions[bot] Jan 30, 2025
f258cfc
Update tasks table
github-actions[bot] Jan 30, 2025
d0bb5b9
Adding a banner to the new MMTEB leaderboard (#1908)
wissam-sib Jan 30, 2025
77681bf
Update tasks table
github-actions[bot] Jan 30, 2025
2850a97
Update tasks table
github-actions[bot] Jan 30, 2025
28ad172
Update tasks table
github-actions[bot] Jan 30, 2025
2e817b0
Update tasks table
github-actions[bot] Jan 30, 2025
b7e412d
Update tasks table
github-actions[bot] Jan 30, 2025
938e90f
fix: Filling missing metadata for leaderboard release (#1895)
imenelydiaker Jan 30, 2025
6989fd5
Update tasks table
github-actions[bot] Jan 30, 2025
b78525d
Update tasks table
github-actions[bot] Jan 30, 2025
e07ffe8
Update tasks table
github-actions[bot] Jan 30, 2025
25a6f17
Update tasks table
github-actions[bot] Jan 30, 2025
913112a
Update tasks table
github-actions[bot] Jan 30, 2025
1030888
Update tasks table
github-actions[bot] Jan 30, 2025
b23597c
Update tasks table
github-actions[bot] Jan 30, 2025
c34ef64
Update tasks table
github-actions[bot] Jan 30, 2025
780a7d3
Update tasks table
github-actions[bot] Jan 30, 2025
ff4ae8d
Update tasks table
github-actions[bot] Jan 30, 2025
599849b
Update tasks table
github-actions[bot] Jan 30, 2025
933f4af
Update tasks table
github-actions[bot] Jan 30, 2025
67f8a79
Update tasks table
github-actions[bot] Jan 30, 2025
1b76261
Update tasks table
github-actions[bot] Jan 30, 2025
51faf65
Update tasks table
github-actions[bot] Jan 30, 2025
f7438b8
Update tasks table
github-actions[bot] Jan 30, 2025
3123d1c
Update tasks table
github-actions[bot] Jan 30, 2025
0bbc4c7
Update tasks table
github-actions[bot] Jan 30, 2025
c46cb8b
Update tasks table
github-actions[bot] Jan 30, 2025
21b60f5
Update tasks table
github-actions[bot] Jan 30, 2025
d9ab239
Update tasks table
github-actions[bot] Jan 30, 2025
9a6275e
Update tasks table
github-actions[bot] Jan 30, 2025
e35c8dd
Update tasks table
github-actions[bot] Jan 30, 2025
d510ddb
Update tasks table
github-actions[bot] Jan 30, 2025
4bb4ec6
Update tasks table
github-actions[bot] Jan 30, 2025
9076213
Update tasks table
github-actions[bot] Jan 30, 2025
12ad5bd
Update tasks table
github-actions[bot] Jan 30, 2025
6df0b8c
1.31.6
invalid-email-address Jan 30, 2025
490b59c
Update tasks table
github-actions[bot] Jan 30, 2025
93d631f
Update tasks table
github-actions[bot] Jan 30, 2025
257578c
Update tasks table
github-actions[bot] Jan 30, 2025
1275f93
Update tasks table
github-actions[bot] Jan 30, 2025
47c63c3
Update tasks table
github-actions[bot] Jan 30, 2025
e29348c
Update tasks table
github-actions[bot] Jan 30, 2025
253a499
Update tasks table
github-actions[bot] Jan 30, 2025
4d30059
Update tasks table
github-actions[bot] Jan 30, 2025
0a073df
Update tasks table
github-actions[bot] Jan 30, 2025
58d5248
Update tasks table
github-actions[bot] Jan 30, 2025
1faa897
Update tasks table
github-actions[bot] Jan 30, 2025
f539d9a
Update tasks table
github-actions[bot] Jan 30, 2025
803e973
Update tasks table
github-actions[bot] Jan 30, 2025
1b1efa7
Update tasks table
github-actions[bot] Jan 30, 2025
10d4604
Update tasks table
github-actions[bot] Jan 30, 2025
baab628
Update tasks table
github-actions[bot] Jan 30, 2025
4a15db1
Update tasks table
github-actions[bot] Jan 30, 2025
2156389
Update tasks table
github-actions[bot] Jan 30, 2025
55cf386
Update tasks table
github-actions[bot] Jan 30, 2025
750a9a9
Update tasks table
github-actions[bot] Jan 30, 2025
acb3778
Update tasks table
github-actions[bot] Jan 30, 2025
616733d
Update tasks table
github-actions[bot] Jan 30, 2025
3c57df3
Update tasks table
github-actions[bot] Jan 30, 2025
0f7206b
Update tasks table
github-actions[bot] Jan 30, 2025
fffce31
Update tasks table
github-actions[bot] Jan 30, 2025
2d9a472
Update tasks table
github-actions[bot] Jan 30, 2025
9a2665b
Update tasks table
github-actions[bot] Jan 30, 2025
28cf270
Update tasks table
github-actions[bot] Jan 30, 2025
ba68e07
Update tasks table
github-actions[bot] Jan 30, 2025
fb90fa9
Update tasks table
github-actions[bot] Jan 30, 2025
da7092c
Update tasks table
github-actions[bot] Jan 30, 2025
b755b79
Update tasks table
github-actions[bot] Jan 30, 2025
1c24ef3
Update tasks table
github-actions[bot] Jan 30, 2025
4cc0fee
Update tasks table
github-actions[bot] Jan 30, 2025
2191e83
Update tasks table
github-actions[bot] Jan 30, 2025
50f2598
Update tasks table
github-actions[bot] Jan 30, 2025
ebaa650
Update tasks table
github-actions[bot] Jan 30, 2025
605f571
Update tasks table
github-actions[bot] Jan 30, 2025
579f946
Update tasks table
github-actions[bot] Jan 31, 2025
44fc1ae
Update tasks table
github-actions[bot] Jan 31, 2025
4e2167a
Update tasks table
github-actions[bot] Jan 31, 2025
eb80d8b
Update tasks table
github-actions[bot] Jan 31, 2025
ef3fe1b
Update tasks table
github-actions[bot] Jan 31, 2025
03941bd
Update tasks table
github-actions[bot] Jan 31, 2025
d44d893
Update tasks table
github-actions[bot] Jan 31, 2025
6dd2734
Update tasks table
github-actions[bot] Jan 31, 2025
d4eaa91
Update tasks table
github-actions[bot] Jan 31, 2025
d6752c0
Update tasks table
github-actions[bot] Jan 31, 2025
fd57157
Update tasks table
github-actions[bot] Jan 31, 2025
9661751
Update tasks table
github-actions[bot] Jan 31, 2025
20a16fb
Update tasks table
github-actions[bot] Jan 31, 2025
3f09026
Update tasks table
github-actions[bot] Jan 31, 2025
92d5d17
Update tasks table
github-actions[bot] Jan 31, 2025
b60080d
Update tasks table
github-actions[bot] Jan 31, 2025
d2de690
Update tasks table
github-actions[bot] Jan 31, 2025
fe6e2cd
Update tasks table
github-actions[bot] Jan 31, 2025
cdd121a
Update tasks table
github-actions[bot] Jan 31, 2025
2a9fb4b
Update tasks table
github-actions[bot] Jan 31, 2025
9e9f2d1
Update tasks table
github-actions[bot] Jan 31, 2025
b384dae
Update tasks table
github-actions[bot] Jan 31, 2025
4cd6ad0
Update tasks table
github-actions[bot] Jan 31, 2025
74551ca
Update tasks table
github-actions[bot] Jan 31, 2025
b3eb993
Update tasks table
github-actions[bot] Jan 31, 2025
8866cc2
Update tasks table
github-actions[bot] Jan 31, 2025
50bfeaf
Update tasks table
github-actions[bot] Jan 31, 2025
d949520
Update tasks table
github-actions[bot] Jan 31, 2025
fc940e5
Update tasks table
github-actions[bot] Jan 31, 2025
e8b37f7
Update tasks table
github-actions[bot] Jan 31, 2025
1d08e42
Update tasks table
github-actions[bot] Jan 31, 2025
e1926ea
Update tasks table
github-actions[bot] Jan 31, 2025
5651f6f
Update tasks table
github-actions[bot] Jan 31, 2025
03ffb4a
Update tasks table
github-actions[bot] Jan 31, 2025
0ed6c34
Update tasks table
github-actions[bot] Jan 31, 2025
11c2452
Update tasks table
github-actions[bot] Jan 31, 2025
5f2e277
Update tasks table
github-actions[bot] Jan 31, 2025
1791fc8
Update tasks table
github-actions[bot] Jan 31, 2025
dea83b1
Update tasks table
github-actions[bot] Jan 31, 2025
b58a615
Update tasks table
github-actions[bot] Jan 31, 2025
be4f0da
Update tasks table
github-actions[bot] Jan 31, 2025
9e4166f
Update tasks table
github-actions[bot] Jan 31, 2025
8aa5a69
Update tasks table
github-actions[bot] Jan 31, 2025
813e711
Update tasks table
github-actions[bot] Jan 31, 2025
51a314c
Update tasks table
github-actions[bot] Jan 31, 2025
8baee52
Update tasks table
github-actions[bot] Jan 31, 2025
21d32f0
fix: remove SummaryRetrieval as a type (#1915)
KennethEnevoldsen Feb 1, 2025
eb837f1
Update tasks table
github-actions[bot] Feb 1, 2025
3c86eee
Update tasks table
github-actions[bot] Feb 1, 2025
07a02c5
Update tasks table
github-actions[bot] Feb 1, 2025
8ffa6cf
Update tasks table
github-actions[bot] Feb 1, 2025
4e8288d
Update tasks table
github-actions[bot] Feb 1, 2025
4977c93
Update tasks table
github-actions[bot] Feb 1, 2025
33ce26a
Update tasks table
github-actions[bot] Feb 1, 2025
da378de
Update tasks table
github-actions[bot] Feb 1, 2025
1a60580
Update tasks table
github-actions[bot] Feb 1, 2025
7184a29
Update tasks table
github-actions[bot] Feb 1, 2025
ec2cf13
Update tasks table
github-actions[bot] Feb 1, 2025
e4329f0
Update tasks table
github-actions[bot] Feb 1, 2025
42bea66
Update tasks table
github-actions[bot] Feb 1, 2025
4b88d1c
Update tasks table
github-actions[bot] Feb 1, 2025
6c0070a
Update tasks table
github-actions[bot] Feb 1, 2025
2cb0c3a
Update tasks table
github-actions[bot] Feb 1, 2025
7258174
Update tasks table
github-actions[bot] Feb 1, 2025
d2e1361
Update tasks table
github-actions[bot] Feb 1, 2025
3231736
Update tasks table
github-actions[bot] Feb 1, 2025
2b4a467
Update tasks table
github-actions[bot] Feb 1, 2025
37ef436
Update tasks table
github-actions[bot] Feb 1, 2025
a6c2841
Update tasks table
github-actions[bot] Feb 1, 2025
f70a994
Update tasks table
github-actions[bot] Feb 1, 2025
635ed80
Update tasks table
github-actions[bot] Feb 1, 2025
75ff333
fix: revert rename and add to description (#1918)
isaac-chung Feb 1, 2025
d9c9b9e
Update tasks table
github-actions[bot] Feb 1, 2025
03b2380
Update tasks table
github-actions[bot] Feb 1, 2025
88a2fe1
Update tasks table
github-actions[bot] Feb 1, 2025
1f7971f
Update tasks table
github-actions[bot] Feb 1, 2025
ad1deff
Update tasks table
github-actions[bot] Feb 1, 2025
9641319
Update tasks table
github-actions[bot] Feb 1, 2025
d9ba681
Update tasks table
github-actions[bot] Feb 1, 2025
96f3aff
Update tasks table
github-actions[bot] Feb 1, 2025
2e34cc7
Update tasks table
github-actions[bot] Feb 1, 2025
5c2cbfc
Update tasks table
github-actions[bot] Feb 1, 2025
b61de5d
Update tasks table
github-actions[bot] Feb 1, 2025
26ffe3a
Update tasks table
github-actions[bot] Feb 1, 2025
ff4e7c6
Update tasks table
github-actions[bot] Feb 1, 2025
13fd52e
Update tasks table
github-actions[bot] Feb 1, 2025
2850833
Update tasks table
github-actions[bot] Feb 1, 2025
d57f988
Update tasks table
github-actions[bot] Feb 1, 2025
c01563d
Update tasks table
github-actions[bot] Feb 1, 2025
a9be716
Update tasks table
github-actions[bot] Feb 1, 2025
c3ea285
Update tasks table
github-actions[bot] Feb 1, 2025
e823bd7
Update tasks table
github-actions[bot] Feb 1, 2025
2756d67
Update tasks table
github-actions[bot] Feb 1, 2025
6d051da
Update tasks table
github-actions[bot] Feb 1, 2025
6cb089f
Update tasks table
github-actions[bot] Feb 1, 2025
f1ea61a
Update tasks table
github-actions[bot] Feb 1, 2025
54d1bd1
Update tasks table
github-actions[bot] Feb 1, 2025
887ebf2
Update tasks table
github-actions[bot] Feb 1, 2025
471ea4c
Update tasks table
github-actions[bot] Feb 1, 2025
c72a4ba
Update tasks table
github-actions[bot] Feb 1, 2025
e5ae84f
Update tasks table
github-actions[bot] Feb 1, 2025
d6ff9d0
Update tasks table
github-actions[bot] Feb 1, 2025
745e2e6
Update tasks table
github-actions[bot] Feb 1, 2025
dafbb80
Update tasks table
github-actions[bot] Feb 1, 2025
ea6c1a2
Update tasks table
github-actions[bot] Feb 1, 2025
53f4e2e
Update tasks table
github-actions[bot] Feb 1, 2025
bf3256a
Update tasks table
github-actions[bot] Feb 1, 2025
0e8a539
Update tasks table
github-actions[bot] Feb 1, 2025
52c000d
Update tasks table
github-actions[bot] Feb 1, 2025
0ac5bf2
Update tasks table
github-actions[bot] Feb 1, 2025
f42d5d0
Update tasks table
github-actions[bot] Feb 1, 2025
df3ef70
Update tasks table
github-actions[bot] Feb 1, 2025
e183458
Update tasks table
github-actions[bot] Feb 1, 2025
2b5f320
Update tasks table
github-actions[bot] Feb 1, 2025
996c522
Update tasks table
github-actions[bot] Feb 1, 2025
de3a1f9
Update tasks table
github-actions[bot] Feb 1, 2025
0cd396e
Update tasks table
github-actions[bot] Feb 1, 2025
974ff3c
Update tasks table
github-actions[bot] Feb 1, 2025
0ae0417
Update tasks table
github-actions[bot] Feb 1, 2025
c275b10
Update tasks table
github-actions[bot] Feb 1, 2025
4294389
Update tasks table
github-actions[bot] Feb 1, 2025
8cdb25a
Update tasks table
github-actions[bot] Feb 1, 2025
9146cc3
Update tasks table
github-actions[bot] Feb 1, 2025
7474c97
Update tasks table
github-actions[bot] Feb 1, 2025
4be5352
Update tasks table
github-actions[bot] Feb 1, 2025
a420249
Update tasks table
github-actions[bot] Feb 1, 2025
597b8fc
Update tasks table
github-actions[bot] Feb 1, 2025
e344a2e
Update tasks table
github-actions[bot] Feb 1, 2025
2b95d66
Update tasks table
github-actions[bot] Feb 1, 2025
6072eae
Update tasks table
github-actions[bot] Feb 1, 2025
e932dfc
Update tasks table
github-actions[bot] Feb 1, 2025
6f673ba
docs: Add sort to domains for task metadata (#1922)
KennethEnevoldsen Feb 1, 2025
14616dc
Update tasks table
github-actions[bot] Feb 1, 2025
23f626d
1.31.7
invalid-email-address Feb 1, 2025
f3526fc
docs: Updated citation for mteb(scandinavian) (#1914)
KennethEnevoldsen Feb 1, 2025
9c762da
fix: Add datasets in CodeRAG-Bench (#1595)
hepengfe Feb 1, 2025
57db0f9
Update tasks table
github-actions[bot] Feb 1, 2025
dba7a95
1.31.8
invalid-email-address Feb 1, 2025
476afc7
Leaderboard: Acks (#1930)
Muennighoff Feb 3, 2025
0a95ae4
Merge remote-tracking branch 'origin/main' into mieb-merge-main
isaac-chung Feb 3, 2025
75ca50f
omit instructions.py
isaac-chung Feb 3, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 10 additions & 3 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,18 @@
<!-- add additional description, question etc. related to the new dataset -->


## Checklist
### Code Quality
<!-- Please do not delete this -->
- [ ] **Code Formatted**: Format the code using `make lint` to maintain consistent style.

- [ ] Run tests locally to make sure nothing is broken using `make test`.
- [ ] Run the formatter to format the code using `make lint`.
### Documentation
<!-- Please do not delete this -->
- [ ] **Updated Documentation**: Add or update documentation to reflect the changes introduced in this PR.

### Testing
<!-- Please do not delete this -->
- [ ] **New Tests Added**: Write tests to cover new functionality. Validate with `make test-with-coverage`.
- [ ] **Tests Passed**: Run tests locally using `make test` or `make test-with-coverage` to ensure no existing functionality is broken.


### Adding datasets checklist
Expand Down
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -147,4 +147,5 @@ results/
uv.lock

# model loading tests
model_names.txt
model_names.txt
mteb/leaderboard/__cached_results.json
23 changes: 12 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -472,24 +472,24 @@ evaluation.run(model, ...)

## Documentation

| Documentation | |
| ------------------------------ | ---------------------- |
| 📋 [Tasks] Overview of available tasks |
| 📐 [Benchmarks] | Overview of available benchmarks |
| 📈 [Leaderboard] | The interactive leaderboard of the benchmark |
| 🤖 [Adding a model] | Information related to how to submit a model to the leaderboard |
| Documentation | |
|--------------------------------|-------------------------------------------------------------------------------------|
| 📋 [Tasks] | Overview of available tasks |
| 📐 [Benchmarks] | Overview of available benchmarks |
| 📈 [Leaderboard] | The interactive leaderboard of the benchmark |
| 🤖 [Adding a model] | Information related to how to submit a model to MTEB and to the leaderboard |
| 👩‍🔬 [Reproducible workflows] | Information related to how to reproduce and create reproducible workflows with MTEB |
| 👩‍💻 [Adding a dataset] | How to add a new task/dataset to MTEB
| 👩‍💻 [Adding a leaderboard tab] | How to add a new leaderboard tab to MTEB
| 🤝 [Contributing] | How to contribute to MTEB and set it up for development |
| 🌐 [MMTEB] | An open-source effort to extend MTEB to cover a broad set of languages |  
| 👩‍💻 [Adding a dataset] | How to add a new task/dataset to MTEB |
| 👩‍💻 [Adding a benchmark] | How to add a new benchmark to MTEB and to the leaderboard |
| 🤝 [Contributing] | How to contribute to MTEB and set it up for development |
| 🌐 [MMTEB] | An open-source effort to extend MTEB to cover a broad set of languages |

[Tasks]: docs/tasks.md
[Benchmarks]: docs/benchmarks.md
[Contributing]: CONTRIBUTING.md
[Adding a model]: docs/adding_a_model.md
[Adding a dataset]: docs/adding_a_dataset.md
[Adding a leaderboard tab]: docs/adding_a_leaderboard_tab.md
[Adding a benchmark]: docs/adding_a_benchmark.md
[Leaderboard]: https://huggingface.co/spaces/mteb/leaderboard
[MMTEB]: docs/mmteb/readme.md
[Reproducible workflows]: docs/reproducible_workflow.md
Expand Down Expand Up @@ -517,5 +517,6 @@ You may also want to read and cite the amazing work that has extended MTEB & int
- Orion Weller, Benjamin Chang, Sean MacAvaney, Kyle Lo, Arman Cohan, Benjamin Van Durme, Dawn Lawrie, Luca Soldaini. "[FollowIR: Evaluating and Teaching Information Retrieval Models to Follow Instructions](https://arxiv.org/abs/2403.15246)" arXiv 2024
- Dawei Zhu, Liang Wang, Nan Yang, Yifan Song, Wenhao Wu, Furu Wei, Sujian Li. "[LongEmbed: Extending Embedding Models for Long Context Retrieval](https://arxiv.org/abs/2404.12096)" arXiv 2024
- Kenneth Enevoldsen, Márton Kardos, Niklas Muennighoff, Kristoffer Laigaard Nielbo. "[The Scandinavian Embedding Benchmarks: Comprehensive Assessment of Multilingual and Monolingual Text Embedding](https://arxiv.org/abs/2406.02396)" arXiv 2024
- Ali Shiraee Kasmaee, Mohammad Khodadad, Mohammad Arshi Saloot, Nick Sherck, Stephen Dokas, Hamidreza Mahyar, Soheila Samiee. "[ChemTEB: Chemical Text Embedding Benchmark, an Overview of Embedding Models Performance & Efficiency on a Specific Domain](https://arxiv.org/abs/2412.00532)" arXiv 2024

For works that have used MTEB for benchmarking, you can find them on the [leaderboard](https://huggingface.co/spaces/mteb/leaderboard).
7 changes: 7 additions & 0 deletions docs/adding_a_benchmark.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
## Adding a benchmark

The MTEB Leaderboard is available [here](https://huggingface.co/spaces/mteb/leaderboard) and we encourage additions of new benchmarks. To add a new benchmark:

1. Add your benchmark to [benchmark.py](../mteb/benchmarks/benchmarks.py) as a `Benchmark` object, and select the MTEB tasks that will be in the benchmark. If some of the tasks do not exist in MTEB, follow the "add a dataset" instructions to add them.
2. Open a PR at https://github.com/embedding-benchmark/results with results of models on your benchmark.
3. When PRs are merged, your benchmark will be added to the leaderboard automatically after the next workflow trigger.
15 changes: 0 additions & 15 deletions docs/adding_a_leaderboard_tab.md

This file was deleted.

139 changes: 91 additions & 48 deletions docs/adding_a_model.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,63 @@

The MTEB Leaderboard is available [here](https://huggingface.co/spaces/mteb/leaderboard). To submit to it:

1. **Run the desired model on MTEB:**
1. **Add meta information about your model to [model dir](../mteb/models/)**.
```python
from mteb.model_meta import ModelMeta

bge_m3 = ModelMeta(
name="model_name",
languages=["model_languages"], # in format eng-Latn
open_weights=True,
revision="5617a9f61b028005a4858fdac845db406aefb181",
release_date="2024-06-28",
n_parameters=568_000_000,
embed_dim=4096,
license="mit",
max_tokens=8194,
reference="https://huggingface.co/BAAI/bge-m3",
similarity_fn_name="cosine",
framework=["Sentence Transformers", "PyTorch"],
use_instructions=False,
public_training_code=None,
public_training_data="https://huggingface.co/datasets/cfli/bge-full-data",
training_datasets={"your_dataset": ["train"]},
)
```
By default, the model will run using the [`sentence_transformers_loader`](../mteb/models/sentence_transformer_wrapper.py) loader function. If you need to use a custom implementation, you can specify the `loader` parameter in the `ModelMeta` class. For example:
```python
from mteb.models.wrapper import Wrapper
from mteb.encoder_interface import PromptType
import numpy as np

class CustomWrapper(Wrapper):
def __init__(self, model_name, model_revision):
super().__init__(model_name, model_revision)
# your custom implementation here

def encode(
self,
sentences: list[str],
*,
task_name: str,
prompt_type: PromptType | None = None,
**kwargs
) -> np.ndarray:
# your custom implementation here
return np.zeros((len(sentences), self.embed_dim))
```
Then you can specify the `loader` parameter in the `ModelMeta` class:
```python
your_model = ModelMeta(
loader=partial(
CustomWrapper,
model_name="model_name",
model_revision="5617a9f61b028005a4858fdac845db406aefb181"
),
...
)
```
2. **Run the desired model on MTEB:**

Either use the Python API:

Expand All @@ -28,64 +84,51 @@ mteb run -m {model_name} -t {task_names}

These will save the results in a folder called `results/{model_name}/{model_revision}`.

<<<<<<< HEAD
1. **Format the results using the CLI:**
=======
2. **Push Results to the Leaderboard**

To add results to the public leaderboard you can push your results to the [results repository](https://github.com/embeddings-benchmark/results) via a PR. Once merged they will appear on the leaderboard after a day.

3. **Wait for a refresh the leaderboard**

3. (Optional) **Add results to the model card:**

`mteb` implements a cli for adding results to the model card:
>>>>>>> main

```bash
mteb create_meta --results_folder results/{model_name}/{model_revision} --output_path model_card.md
```

To add the content to the public model simply copy the content of the `model_card.md` file to the top of a `README.md` file of your model on the Hub. See [here](https://huggingface.co/Muennighoff/SGPT-5.8B-weightedmean-msmarco-specb-bitfit/blob/main/README.md) for an example.

If the readme already exists:

```bash
mteb create_meta --results_folder results/{model_name}/{model_revision} --output_path model_card.md --from_existing your_existing_readme.md
```

<<<<<<< HEAD
2. **Add the frontmatter to model repository:**
**Notes:**

Copy the content of the `model_card.md` file to the top of a `README.md` file of your model on the Hub. See [here](https://huggingface.co/Muennighoff/SGPT-5.8B-weightedmean-msmarco-specb-bitfit/blob/main/README.md) for an example.
=======
Note that running the model on many tasks may lead to a huge readme front matter.
>>>>>>> main
##### Using Prompts with Sentence Transformers

3. **Wait for a refresh the leaderboard:**
If your model uses Sentence Transformers and requires different prompts for encoding the queries and corpus, you can take advantage of the `prompts` [parameter](https://sbert.net/docs/package_reference/sentence_transformer/SentenceTransformer.html#sentence_transformers.SentenceTransformer).

The leaderboard [automatically refreshes daily](https://github.com/embeddings-benchmark/leaderboard/commits/main/) so once submitted you only need to wait for the automatic refresh. You can find the workflows for the leaderboard refresh [here](https://github.com/embeddings-benchmark/leaderboard/tree/main/.github/workflows). If you experience issues with the leaderboard please create an [issue](https://github.com/embeddings-benchmark/mteb/issues).
Internally, `mteb` uses `query` for encoding the queries and `passage` as the prompt names for encoding the corpus. This is aligned with the default names used by Sentence Transformers.

**Notes:**
- We remove models with scores that cannot be reproduced, so please ensure that your model is accessible and scores can be reproduced.
<<<<<<< HEAD
- An alternative way of submitting to the leaderboard is by opening a PR with your results [here](https://github.com/embeddings-benchmark/results) & checking that they are displayed correctly by [locally running the leaderboard](https://github.com/embeddings-benchmark/leaderboard?tab=readme-ov-file#developer-setup)
=======
>>>>>>> main
###### Adding the prompts in the model configuration (Preferred)

- ##### Using Prompts with Sentence Transformers

If your model uses Sentence Transformers and requires different prompts for encoding the queries and corpus, you can take advantage of the `prompts` [parameter](https://sbert.net/docs/package_reference/sentence_transformer/SentenceTransformer.html#sentence_transformers.SentenceTransformer).

Internally, `mteb` uses the prompt named `query` for encoding the queries and `passage` as the prompt name for encoding the corpus. This is aligned with the default names used by Sentence Transformers.
You can directly add the prompts when saving and uploading your model to the Hub. For an example, refer to this [configuration file](https://huggingface.co/Snowflake/snowflake-arctic-embed-m-v1.5/blob/3b5a16eaf17e47bd997da998988dce5877a57092/config_sentence_transformers.json). These prompts can then be specified in the ModelMeta object.

###### Adding the prompts in the model configuration (Preferred)

You can directly add the prompts when saving and uploading your model to the Hub. For an example, refer to this [configuration file](https://huggingface.co/Snowflake/snowflake-arctic-embed-m-v1.5/blob/3b5a16eaf17e47bd997da998988dce5877a57092/config_sentence_transformers.json).
```python
model = ModelMeta(
loader=partial( # type: ignore
sentence_transformers_loader,
model_name="intfloat/multilingual-e5-small",
revision="fd1525a9fd15316a2d503bf26ab031a61d056e98",
model_prompts={
"query": "query: ",
"passage": "passage: ",
},
),
)
```
If you are unable to directly add the prompts in the model configuration, you can instantiate the model using the `sentence_transformers_loader` and pass `prompts` as an argument. For more details, see the `mteb/models/bge_models.py` file.

###### Instantiating the Model with Prompts
##### Adding instruction models

<<<<<<< HEAD
If you are unable to directly add the prompts in the model configuration, you can instantiate the model using the `sentence_transformers_loader` and pass `prompts` as an argument. For more details, see the `mteb/models/bge_models.py` file.
=======
If you are unable to directly add the prompts in the model configuration, you can instantiate the model using the `sentence_transformers_loader` and pass `prompts` as an argument. For more details, see the `mteb/models/bge_models.py` file.
>>>>>>> main
Models that use instructions can use the [`InstructSentenceTransformerWrapper`](../mteb/models/instruct_wrapper.py). For example:
```python
model = ModelMeta(
loader=partial(
InstructSentenceTransformerWrapper,
model="nvidia/NV-Embed-v1",
revision="7604d305b621f14095a1aa23d351674c2859553a",
instruction_template="Instruct: {instruction}\nQuery: ",
),
...
)
```
Loading