| #!/usr/bin/env bash |
| set -euo pipefail |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| DEVICE="${DEVICE:-cuda}" |
| OUTPUT="${OUTPUT:-leaderboard/rerun/results.jsonl}" |
| RAW_DIR="${RAW_DIR:-leaderboard/rerun/raw}" |
| EVAL="${EVAL:-leaderboard/scripts/evaluate_model.py}" |
| BGE_EN_RUS_MODEL_ID="${BGE_EN_RUS_MODEL_ID:-}" |
|
|
| DATASET_ARGS=() |
| if [[ -n "${DATASETS:-}" ]]; then |
| |
| DATASET_ARGS=(--datasets ${DATASETS}) |
| fi |
|
|
| mkdir -p "$(dirname "${OUTPUT}")" "${RAW_DIR}" |
|
|
| run_dense() { |
| python "${EVAL}" \ |
| --output "${OUTPUT}" \ |
| --device "${DEVICE}" \ |
| "${DATASET_ARGS[@]}" \ |
| "$@" |
| } |
|
|
| run_reranker() { |
| python "${EVAL}" \ |
| --output "${OUTPUT}" \ |
| --device "${DEVICE}" \ |
| --model-type reranker \ |
| --model-id BAAI/bge-reranker-v2-m3 \ |
| --rerank-top-k 20 \ |
| --rerank-batch-size 1 \ |
| --rerank-max-length 2048 \ |
| "${DATASET_ARGS[@]}" \ |
| "$@" |
| } |
|
|
| |
| python "${EVAL}" \ |
| --output "${OUTPUT}" \ |
| --model-type sparse \ |
| --sparse-model bm25s \ |
| --model-id bm25 \ |
| --model-name "BM25" \ |
| --text-type processed_text \ |
| --raw-results-dir "${RAW_DIR}/bm25" \ |
| "${DATASET_ARGS[@]}" |
|
|
| |
| run_dense \ |
| --model-id intfloat/multilingual-e5-large \ |
| --model-name "multilingual-e5-large" \ |
| --text-type text \ |
| --pooling average \ |
| --query-prefix "query: " \ |
| --passage-prefix "passage: " \ |
| --raw-results-dir "${RAW_DIR}/intfloat__multilingual-e5-large" |
|
|
| run_dense \ |
| --model-id intfloat/multilingual-e5-base \ |
| --model-name "multilingual-e5-base" \ |
| --text-type text \ |
| --pooling average \ |
| --query-prefix "query: " \ |
| --passage-prefix "passage: " \ |
| --raw-results-dir "${RAW_DIR}/intfloat__multilingual-e5-base" |
|
|
| run_dense \ |
| --model-id intfloat/multilingual-e5-small \ |
| --model-name "multilingual-e5-small" \ |
| --text-type text \ |
| --pooling average \ |
| --query-prefix "query: " \ |
| --passage-prefix "passage: " \ |
| --raw-results-dir "${RAW_DIR}/intfloat__multilingual-e5-small" |
|
|
| run_dense \ |
| --model-id BAAI/bge-m3 \ |
| --model-name "bge-m3" \ |
| --text-type text \ |
| --pooling cls \ |
| --maxlen 1024 \ |
| --batch-size 64 \ |
| --raw-results-dir "${RAW_DIR}/BAAI__bge-m3" |
|
|
| if [[ -n "${BGE_EN_RUS_MODEL_ID}" ]]; then |
| run_dense \ |
| --model-id "${BGE_EN_RUS_MODEL_ID}" \ |
| --model-name "BGE-en-rus" \ |
| --text-type text \ |
| --pooling cls \ |
| --maxlen 1024 \ |
| --batch-size 64 \ |
| --raw-results-dir "${RAW_DIR}/$(echo "${BGE_EN_RUS_MODEL_ID}" | tr '/:' '__')" |
| else |
| echo "Skipping BGE-en-rus: set BGE_EN_RUS_MODEL_ID to the Hugging Face model id to rerun it." >&2 |
| fi |
|
|
| run_dense \ |
| --model-id ai-forever/ru-en-RoSBERTa \ |
| --model-name "ru-en-RoSBERTa" \ |
| --text-type text \ |
| --pooling cls \ |
| --query-prefix "search_query: " \ |
| --passage-prefix "search_document: " \ |
| --raw-results-dir "${RAW_DIR}/ai-forever__ru-en-RoSBERTa" |
|
|
| run_dense \ |
| --model-id sentence-transformers/LaBSE \ |
| --model-name "LaBSE" \ |
| --text-type processed_text \ |
| --pooling pooler \ |
| --maxlen 64 \ |
| --raw-results-dir "${RAW_DIR}/sentence-transformers__LaBSE" |
|
|
| run_dense \ |
| --model-id ai-forever/FRIDA \ |
| --model-name "FRIDA" \ |
| --text-type text \ |
| --model-loader t5-encoder \ |
| --pooling cls \ |
| --query-prefix "search_query: " \ |
| --passage-prefix "search_document: " \ |
| --raw-results-dir "${RAW_DIR}/ai-forever__FRIDA" |
|
|
| |
| run_reranker \ |
| --model-name "BM25 + BGE Reranker" \ |
| --first-stage-model-id bm25 \ |
| --first-stage-results-dir "${RAW_DIR}/bm25" |
|
|
| run_reranker \ |
| --model-name "multilingual-e5-large + BGE Reranker" \ |
| --first-stage-model-id intfloat/multilingual-e5-large \ |
| --first-stage-results-dir "${RAW_DIR}/intfloat__multilingual-e5-large" |
|
|
| run_reranker \ |
| --model-name "bge-m3 + BGE Reranker" \ |
| --first-stage-model-id BAAI/bge-m3 \ |
| --first-stage-results-dir "${RAW_DIR}/BAAI__bge-m3" |
|
|
| run_reranker \ |
| --model-name "FRIDA + BGE Reranker" \ |
| --first-stage-model-id ai-forever/FRIDA \ |
| --first-stage-results-dir "${RAW_DIR}/ai-forever__FRIDA" |
|
|
| echo "Done. Results appended to ${OUTPUT}" |
|
|