Cohere
Rerank 4 Pro
cohere/rerank-4-pro
Cohere's search model for improving the relevance of what your search or RAG system surfaces. 32K context and multilingual support across 100+ languages.
RoleThe relevance filter
Free
In / M
Free
Out / M
33K
Context
- AA intelligence index
- Not on listing
- Inputs
- text
- Outputs
- rerank
- Tools
- Not listed
- Structured output
- Not listed
- Reasoning
- Not listed
- Weights
- Not verified
- Listed
- Apr 6, 2026
01 · What it's good at
Use it for this.
Three jobs this model is built for, and the ones to give to something else.
01
Picking the best 3 to 5 passages from 50 candidates
02
Multilingual search results
03
Better RAG answers without touching the chat model
Skip it for
- Searching your corpus by itself. Feed it candidates from vector or keyword search
02 · Example tasks
What you'd actually send it.
Real inputs, not a benchmark. Paste one into the snippet below to try it.
You send
Query: 'Can I pay annually?' Documents: the top 50 vector hits. Return the top 5.
Why this model
Cross-encoder rescoring keeps the wrong chunk out of the prompt.
03 · Your stack
Where it sits: Retrieve.
Between retrieval and generation: vector search returns candidates, the reranker orders them, and only the top few go to the chat model.
Layer 01 · this model
Retrieve
Layer 02
Plan & reason
Layer 03
Do the volume
Layer 04
Gate & route
Layer 05
Draw, speak, listen
04 · Wire it up
One request. Paste and run.
Uses OpenRouter, so one key works for every model on this site. Set OPENROUTER_API_KEY and swap the prompt for one of the tasks above.
const res = await fetch("https://openrouter.ai/api/v1/rerank", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.OPENROUTER_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"model": "cohere/rerank-4-pro",
"query": "Can I pay annually?",
"documents": [
"Billing runs on the first of each month.",
"Annual plans are billed once a year.",
"SSO is available on the Business plan."
],
"top_n": 3
}),
});
const { results } = await res.json();
for (const r of results) console.log(r.relevance_score.toFixed(3), r.document.text);
05 · Watch out for
Gotchas.
A reranker does not search. It only reorders what you give it.
Pick a cutoff on
relevance_scorefrom your own data, not a default.
Sources
Lessons are written from each model's listing and the linked docs. We don't publish our own benchmark numbers; the index above is Artificial Analysis, as shown on OpenRouter.
Keep learning