Skip to content

perf: raise rerank max-batch-size to the NIM's 512-passage request limit - #2567

Draft
erichare wants to merge 5 commits into
mainfrom
feat/nemotron-rerank-model
Draft

perf: raise rerank max-batch-size to the NIM's 512-passage request limit#2567
erichare wants to merge 5 commits into
mainfrom
feat/nemotron-rerank-model

Conversation

@erichare

@erichare erichare commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

What this PR does:

Raises max-batch-size for nvidia/llama-3.2-nv-rerankqa-1b-v2 from 10 to 512, the reranking NIM's actual per-request limit.

With max-batch-size: 10, a findAndRerank with 100 candidates fans out into 10 concurrent reranking calls; a burst of N API requests can hit the reranking service with M×N concurrent POSTs. At 512, a typical findAndRerank is one call.

Which issue(s) this PR fixes:
Fixes #2569

Checklist

  • Changes manually tested
  • Automated Tests added/updated
  • Documentation added/updated
  • CLA Signed: DataStax CLA

nvidia/llama-3.2-nemoretriever-500m-rerank-v2 (NIM 2.x) accepts 512 passages
per call, so a typical findAndRerank becomes a single reranking call instead
of a fan-out of ten batch-10 calls, greatly reducing burst load on the
reranking service. Non-default; the legacy rerankqa-1b-v2 model and the
default /nvidia/v1/ranking route are unchanged.

The model URL follows the GPU plane's per-model ingress route pattern; the
route and NIM deployment land in the gpu-helm-charts repo and should be live
before this model is put into use.
@github-actions

github-actions Bot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

➡️ Unit Test Coverage Delta vs Main Branch

Metric Value
Main Branch 53.40%
This PR 53.40%
Delta ⚪ 0.00%
ℹ️ Coverage unchanged

@github-actions

github-actions Bot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Unit Test Coverage Report

Overall Project 53.4% 🍏

There is no coverage information present for the Files changed

@github-actions

Copy link
Copy Markdown
Contributor

➡️ Integration Test Coverage Delta vs Main Branch (dse69-it)

Metric Value
Main Branch 71.44%
This PR 71.44%
Delta ⚪ 0.00%
ℹ️ Coverage unchanged

@github-actions

Copy link
Copy Markdown
Contributor

Integration Test Coverage Report (dse69-it)

Overall Project 71.44% 🍏

There is no coverage information present for the Files changed

@github-actions

github-actions Bot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

📈 Integration Test Coverage Delta vs Main Branch (hcd-it)

Metric Value
Main Branch 72.76%
This PR 72.77%
Delta 🟢 +0.00%
✅ Coverage improved!

@github-actions

github-actions Bot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Integration Test Coverage Report (hcd-it)

Overall Project 72.77% 🍏

There is no coverage information present for the Files changed

The reranking NIM accepts up to 512 passages per request; it rejects 513+
with a 400 validation error. With max-batch-size 10, a findAndRerank with
100 candidates fans out into 10 concurrent reranking calls, multiplying
request load on the reranking service by ~10x for no benefit. At 512 a
typical findAndRerank is a single call.

Verified against the dev reranking endpoint (rerankqa-1b-v2, NIM 1.3.1.0):
512-passage requests return 200 with all 512 rankings in ~0.36s warm;
600 passages returns 400 "List should have at most 512 items".

Deployments that serve reranking config via the embedding gateway or a
config override need the same value there for this to take effect.
@erichare erichare changed the title feat: add nemotron 500m rerank model with 512-passage batches perf: raise rerank max-batch-size to the NIM's 512-passage request limit Aug 25, 2026
@erichare erichare linked an issue Aug 25, 2026 that may be closed by this pull request
@erichare
erichare requested a review from amorton August 25, 2026 20:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Reduce NVIDIA reranker request fan-out

1 participant