{
  "id": "bge-reranker-v2-m3",
  "identity": {
    "family": "bge-reranker",
    "display_name": "BGE Reranker v2 M3",
    "hub_id": "BAAI/bge-reranker-v2-m3",
    "api_name": null,
    "revision": null,
    "variants": [],
    "license": "Apache-2.0",
    "commercial_use": true,
    "commercial_use_note": "Apache-2.0 weights; no use restrictions.",
    "release_date": "2024-03",
    "paper_url": "https://arxiv.org/abs/2402.03216",
    "repo_url": "https://github.com/FlagOpen/FlagEmbedding"
  },
  "task": {
    "category": "reranking",
    "modalities_in": [
      "text"
    ],
    "modalities_out": [
      "scores"
    ],
    "best_at": "Re-ordering a short candidate list of text documents against a query (cross-encoder, multilingual), most useful where the dense ordering is weak.",
    "worst_at": "Large candidate pools on CPU replicas: committed runs breached the 10 s stage ceiling, and it hurt queries whose dense ordering was already near perfect (0.986 -> 0.781 nDCG). Text only."
  },
  "io": {
    "input": {
      "pairs": "[[query, document], ...]",
      "text": {
        "max_tokens": 512,
        "truncation": true
      }
    },
    "output": {
      "scores": "one relevance logit per pair"
    }
  },
  "mixpeek_wiring": {
    "extractors": [],
    "feature_uris": [],
    "vector_indexes": [],
    "retriever_stages": [
      "rerank"
    ],
    "composes_with": [
      "feature_search (E5 or any text feature) -> rerank inference_name=BAAI__bge_reranker_v2_m3 (the default)"
    ]
  },
  "run": {
    "status": "served",
    "status_reason": "Ray Serve app in the inference registry; the rerank stage's default inference_name.",
    "serve_apps": [
      "BAAI__bge_reranker_v2_m3"
    ],
    "runtime": "transformers AutoModelForSequenceClassification + AutoTokenizer (XLMRobertaForSequenceClassification)",
    "weights_format": "safetensors",
    "trust_remote_code": false,
    "size_on_disk_mb": 2271,
    "params_millions": 568,
    "preprocessing": "Tokenize each (query, document) pair together, truncation at 512 tokens.",
    "postprocessing": "Classification logit per pair as the score; sigmoid applied when the request asks for normalized scores.",
    "serving_shape": "realtime",
    "batch_size": null,
    "serve_batch": null,
    "scale_to_zero": {
      "min_replicas": 0,
      "max_replicas": 8,
      "idle_timeout_s": 300,
      "memory_gb": 2,
      "num_cpus": 0.5,
      "num_gpus": 0,
      "cold_start_s": {
        "warm_node_s": null,
        "new_node_s": null,
        "source": null
      },
      "cpu_fallback": true
    }
  },
  "cost": {
    "unmeasured": true,
    "measured": null,
    "note": "No committed throughput or cost measurement. customers/livenation/manifest-loop/README.md reports about 2 s for 10 pairs in-process and every Serve call timing out at 0.25 CPU; not a full measurement."
  },
  "evidence": {
    "unmeasured": false,
    "items": [
      {
        "dataset": "TubeScience capability parity D1, 13 scored queries",
        "metric": "nDCG (relevance by lexical overlap with the query, on the returned pool), feature_search -> rerank",
        "k": null,
        "score": 0.9078,
        "baseline": "feature_search dense order, same fetch",
        "baseline_score": 0.8606,
        "held_out": false,
        "date": "2026-09-18",
        "source": "customers/tubescience/parity/2026-09-18-CAPABILITY-PARITY-REPORT.md"
      }
    ]
  },
  "refs": [
    "hf://BAAI/bge-reranker-v2-m3@953dc6f6f85a1b2dbfca4c34a2796e7dde08d41e"
  ],
  "formats": [
    {
      "ref": "hf://BAAI/bge-reranker-v2-m3@953dc6f6f85a1b2dbfca4c34a2796e7dde08d41e",
      "format": "safetensors",
      "file": "model.safetensors",
      "loader": "transformers / open_clip from_pretrained; Mixpeek Hub import (api/models/huggingface.py)",
      "supported_today": true
    }
  ],
  "use_cases": [
    "reranking",
    "multilingual-search"
  ],
  "recommended": {
    "value": true,
    "for": [
      "reranking"
    ],
    "reason": "Served cross-encoder; raised nDCG on the TubeScience D1 eval over the unreranked baseline."
  },
  "demos": [],
  "seo": {
    "title": "BGE Reranker v2 M3: reranking model",
    "description": "BGE Reranker v2 M3 is a text reranking model (Apache-2.0). Served on Mixpeek, scaling to zero when idle.",
    "keywords": [
      "BGE Reranker v2 M3",
      "bge-reranker",
      "reranking",
      "BAAI/bge-reranker-v2-m3",
      "multilingual-search"
    ],
    "faqs": [
      {
        "q": "What is BGE Reranker v2 M3 best at?",
        "a": "Re-ordering a short candidate list of text documents against a query (cross-encoder, multilingual), most useful where the dense ordering is weak."
      },
      {
        "q": "What are the limits of BGE Reranker v2 M3?",
        "a": "Large candidate pools on CPU replicas: committed runs breached the 10 s stage ceiling, and it hurt queries whose dense ordering was already near perfect (0.986 -> 0.781 nDCG). Text only."
      },
      {
        "q": "Can BGE Reranker v2 M3 be used commercially?",
        "a": "Yes. Apache-2.0 weights; no use restrictions."
      },
      {
        "q": "How does BGE Reranker v2 M3 run on Mixpeek?",
        "a": "Ray Serve app in the inference registry; the rerank stage's default inference_name."
      }
    ]
  },
  "last_verified": "2026-11-05",
  "sources": [
    "https://huggingface.co/BAAI/bge-reranker-v2-m3",
    "https://huggingface.co/api/models/BAAI/bge-reranker-v2-m3",
    "https://arxiv.org/abs/2402.03216",
    "server/engine/inference/baai/bge_reranker_v2_m3/services.py",
    "server/shared/retrievers/stages/sort/rerank/models.py",
    "customers/livenation/manifest-loop/README.md"
  ],
  "registry": {
    "BAAI__bge_reranker_v2_m3": {
      "deployment": "BAAI__bge_reranker_v2_m3",
      "service_id": "BAAI/bge-reranker-v2-m3",
      "routes": "engine/inference/baai/bge_reranker_v2_m3/routes.py",
      "route_prefix": "/inference/baai/bge_reranker_v2_m3",
      "enabled": true,
      "description": "BAAI BGE Reranker V2 M3 cross-encoder model. Scores (query, passage) pairs for relevance ranking. Multilingual support with state-of-the-art reranking performance.",
      "capabilities": {
        "category": "reranking",
        "modality_input": [
          "text"
        ],
        "modality_output": "score",
        "supports_batch": true,
        "reranking_mode": "text-to-text"
      },
      "vector_config": null,
      "serve": {
        "min_replicas": 0,
        "max_replicas": 8,
        "idle_timeout_s": 300,
        "target_ongoing_requests": 2,
        "num_cpus": 0.5,
        "num_gpus": 0,
        "memory_gb": 2,
        "pinnable": false,
        "placement": "worker",
        "enabled": true
      },
      "interactive_twin": false,
      "interactive_serve": null,
      "schemas": {
        "input": "shared.inference.baai.bge_reranker_v2_m3.models.InferenceRequest",
        "output": "shared.inference.baai.bge_reranker_v2_m3.models.InferenceResponse",
        "config": "shared.inference.baai.bge_reranker_v2_m3.models.InferenceConfigs"
      }
    }
  },
  "templates": [],
  "usage": {
    "namespaces": null,
    "collections": null,
    "uncounted": true,
    "templates": 0,
    "counted_at": null,
    "source": null
  },
  "facets": {
    "status": "served",
    "category": "reranking",
    "family": "bge-reranker",
    "license": "Apache-2.0",
    "commercial_use": true,
    "modalities_in": [
      "text"
    ],
    "modalities_out": [
      "scores"
    ],
    "use_cases": [
      "reranking",
      "multilingual-search"
    ],
    "recommended": true,
    "release_date": "2024-03",
    "params_millions": 568,
    "size_on_disk_mb": 2271,
    "vector_dims": null,
    "vector_distance": null,
    "weights_format": "safetensors",
    "formats": [
      "safetensors"
    ],
    "loadable_today": true,
    "trust_remote_code": false,
    "cpu_fallback": true,
    "num_gpus": 0,
    "memory_gb": 2,
    "min_replicas": 0,
    "serving_shape": "realtime",
    "served": true,
    "ref_schemes": [
      "hf"
    ],
    "has_evidence": true,
    "cost_measured": false,
    "template_count": 0,
    "usage_namespaces": null,
    "usage_collections": null,
    "usage_uncounted": true,
    "has_demo": false,
    "rank_score": 5
  },
  "rank_score": 5
}
