{
  "aboutHtml": "<p>rerank-2.5 is Voyage AI&#39;s instruction-following reranker, designed to refine a set of search candidates. It jointly examines the query and each document as a cross-encoder, then returns a relevance ordering. The maker&#39;s release emphasizes natural-language control over what counts as relevant, multilingual retrieval and a longer query–document context than the preceding rerank-2 edition.</p><h4>Give the model the candidates to compare</h4><p>The input is a query and a list of candidate text documents. These can be passages selected by embedding search or a lexical first-stage search. The reranker evaluates the supplied text rather than creating corpus embeddings, so its practical job is to refine the candidates the initial search already found.</p><p>Keep the original candidate ordering and source identifiers when preparing that list. The returned indices refer to those input positions. For a RAG task, supply the passages the answer stage might actually use, including the title or qualifications needed to interpret them. A relevant document that is absent from the submitted candidate set cannot appear as a newly found result of reranking.</p><h4>Specify the intended notion of relevance</h4><p>Instructions can be appended or prepended to the query. The release describes three useful roles: emphasize a particular part of a document, prefer a type of source and disambiguate the query with application context. These alter the relevance task presented to the model.</p><p>For a technical search, an illustrative instruction is “Prioritize passages that explain the failure and recovery behavior; introductory overviews are secondary.” For a research collection, specify whether the title, method or result matters most. For an ambiguous term, state the subject area the search is about. Keep the question and the instruction compatible, so one does not ask for a broad topic while the other silently changes the task.</p><p>These preferences guide relevance scoring. If the application has strict eligibility requirements—such as source version, date or access scope—prepare the eligible candidate set separately. The model&#39;s relevance instruction and a deterministic collection restriction serve different purposes.</p><h4>Ranked output and later result use</h4><p>Results are ordered by descending relevance and include a floating-point relevance score and the candidate&#39;s original input index. The top-k option selects how many leading results to return; without it, the manufacturer specification returns results for all submitted candidates. An optional return-documents setting includes the corresponding source text; otherwise the response contains indices and scores.</p><p>Use the ordering to select passages for display or a later answer stage, keeping their source identity intact. Inspect the actual text when evaluating the ranking: the score is a measure of relevance to the submitted query, not a generated answer or a verification that the document&#39;s claims are correct. This makes the model useful for refining technical, legal, financial, medical, conversation and multilingual search material without converting ranking into a domain conclusion.</p><h4>Context, total-token budget and truncation</h4><p>The documented query limit is 8,000 tokens, including instructions placed in the query. The query plus any one candidate document must fit within 32,000 tokens, and the document list can contain at most 1,000 items. The total allowance is 600,000 tokens, counted as query tokens multiplied by the number of documents, plus all document tokens. A long instruction is therefore counted repeatedly across the candidate pairs.</p><p>The output top-k count does not change the number of candidates in that input-token calculation. Default truncation shortens over-length queries or documents to meet the context limit; disabling it makes an over-length query or pair return an error. Prepare answer-bearing passages deliberately and keep the relevant qualification within the text the model will see. Evaluate the refined order on representative questions and instructions, then pass the selected original passages to the next stage.</p>",
  "aboutText": "rerank-2.5 is Voyage AI's instruction-following reranker, designed to refine a set of search candidates. It jointly examines the query and each document as a cross-encoder, then returns a relevance ordering. The maker's release emphasizes natural-language control over what counts as relevant, multilingual retrieval and a longer query–document context than the preceding rerank-2 edition.\n\n### Give the model the candidates to compare\n\nThe input is a query and a list of candidate text documents. These can be passages selected by embedding search or a lexical first-stage search. The reranker evaluates the supplied text rather than creating corpus embeddings, so its practical job is to refine the candidates the initial search already found.\n\nKeep the original candidate ordering and source identifiers when preparing that list. The returned indices refer to those input positions. For a RAG task, supply the passages the answer stage might actually use, including the title or qualifications needed to interpret them. A relevant document that is absent from the submitted candidate set cannot appear as a newly found result of reranking.\n\n### Specify the intended notion of relevance\n\nInstructions can be appended or prepended to the query. The release describes three useful roles: emphasize a particular part of a document, prefer a type of source and disambiguate the query with application context. These alter the relevance task presented to the model.\n\nFor a technical search, an illustrative instruction is “Prioritize passages that explain the failure and recovery behavior; introductory overviews are secondary.” For a research collection, specify whether the title, method or result matters most. For an ambiguous term, state the subject area the search is about. Keep the question and the instruction compatible, so one does not ask for a broad topic while the other silently changes the task.\n\nThese preferences guide relevance scoring. If the application has strict eligibility requirements—such as source version, date or access scope—prepare the eligible candidate set separately. The model's relevance instruction and a deterministic collection restriction serve different purposes.\n\n### Ranked output and later result use\n\nResults are ordered by descending relevance and include a floating-point relevance score and the candidate's original input index. The top-k option selects how many leading results to return; without it, the manufacturer specification returns results for all submitted candidates. An optional return-documents setting includes the corresponding source text; otherwise the response contains indices and scores.\n\nUse the ordering to select passages for display or a later answer stage, keeping their source identity intact. Inspect the actual text when evaluating the ranking: the score is a measure of relevance to the submitted query, not a generated answer or a verification that the document's claims are correct. This makes the model useful for refining technical, legal, financial, medical, conversation and multilingual search material without converting ranking into a domain conclusion.\n\n### Context, total-token budget and truncation\n\nThe documented query limit is 8,000 tokens, including instructions placed in the query. The query plus any one candidate document must fit within 32,000 tokens, and the document list can contain at most 1,000 items. The total allowance is 600,000 tokens, counted as query tokens multiplied by the number of documents, plus all document tokens. A long instruction is therefore counted repeatedly across the candidate pairs.\n\nThe output top-k count does not change the number of candidates in that input-token calculation. Default truncation shortens over-length queries or documents to meet the context limit; disabling it makes an over-length query or pair return an error. Prepare answer-bearing passages deliberately and keep the relevant qualification within the text the model will see. Evaluate the refined order on representative questions and instructions, then pass the selected original passages to the next stage.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "d74d92275acdd3db2f792a53acdd436494d7489c3337ccc63c5a4dbeee4a7983",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "en",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">VoyageAI by MongoDB: rerank-2.5</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Close\">×</button></div><div class=\"idline\"><span>VoyageAI by MongoDB /</span><code>voyageai/rerank-2.5</code><button type=\"button\" id=\"copy-id\">Copy ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Model card sections\"><button type=\"button\" data-card-jump=\"overview\">Overview</button><button type=\"button\" data-card-jump=\"methods\">Inputs &amp; methods</button><button type=\"button\" data-card-jump=\"pricing\">Pricing</button><button type=\"button\" data-card-jump=\"examples\">Examples</button><button type=\"button\" data-card-jump=\"results\">Results</button><button type=\"button\" data-card-jump=\"aliases\">Aliases</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"API methods\"><button type=\"button\" role=\"tab\" tabindex=\"0\" aria-controls=\"card-method-content\" aria-selected=\"true\" id=\"card-method-tab-0\" data-card-method=\"Ultra|rerank|/v1/rerank|voyageai%2Frerank-2.5\">Rerank</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">Overview</h3><p class=\"mdesc-full\">rerank-2.5 reorders a supplied set of text candidates by relevance to a query and optional natural-language instructions. It is a multilingual, quality-oriented reranker with a 32,000-token query–document context and ranked scores tied to the original candidate indices.</p><dl class=\"card-io\" data-card-io><div><dt>Accepted inputs</dt><dd>Text</dd></div><div><dt>Results</dt><dd>Ranked results</dd></div></dl><details class=\"card-about\"><summary>About the model</summary><p class=\"note-s\" data-model-method-boundary>This description covers the model’s capabilities. Available in Ailoot inputs, outputs and options are listed for the selected method below.</p><div class=\"mabout\" id=\"m-about\"><p>rerank-2.5 is Voyage AI&#39;s instruction-following reranker, designed to refine a set of search candidates. It jointly examines the query and each document as a cross-encoder, then returns a relevance ordering. The maker&#39;s release emphasizes natural-language control over what counts as relevant, multilingual retrieval and a longer query–document context than the preceding rerank-2 edition.</p><h4>Give the model the candidates to compare</h4><p>The input is a query and a list of candidate text documents. These can be passages selected by embedding search or a lexical first-stage search. The reranker evaluates the supplied text rather than creating corpus embeddings, so its practical job is to refine the candidates the initial search already found.</p><p>Keep the original candidate ordering and source identifiers when preparing that list. The returned indices refer to those input positions. For a RAG task, supply the passages the answer stage might actually use, including the title or qualifications needed to interpret them. A relevant document that is absent from the submitted candidate set cannot appear as a newly found result of reranking.</p><h4>Specify the intended notion of relevance</h4><p>Instructions can be appended or prepended to the query. The release describes three useful roles: emphasize a particular part of a document, prefer a type of source and disambiguate the query with application context. These alter the relevance task presented to the model.</p><p>For a technical search, an illustrative instruction is “Prioritize passages that explain the failure and recovery behavior; introductory overviews are secondary.” For a research collection, specify whether the title, method or result matters most. For an ambiguous term, state the subject area the search is about. Keep the question and the instruction compatible, so one does not ask for a broad topic while the other silently changes the task.</p><p>These preferences guide relevance scoring. If the application has strict eligibility requirements—such as source version, date or access scope—prepare the eligible candidate set separately. The model&#39;s relevance instruction and a deterministic collection restriction serve different purposes.</p><h4>Ranked output and later result use</h4><p>Results are ordered by descending relevance and include a floating-point relevance score and the candidate&#39;s original input index. The top-k option selects how many leading results to return; without it, the manufacturer specification returns results for all submitted candidates. An optional return-documents setting includes the corresponding source text; otherwise the response contains indices and scores.</p><p>Use the ordering to select passages for display or a later answer stage, keeping their source identity intact. Inspect the actual text when evaluating the ranking: the score is a measure of relevance to the submitted query, not a generated answer or a verification that the document&#39;s claims are correct. This makes the model useful for refining technical, legal, financial, medical, conversation and multilingual search material without converting ranking into a domain conclusion.</p><h4>Context, total-token budget and truncation</h4><p>The documented query limit is 8,000 tokens, including instructions placed in the query. The query plus any one candidate document must fit within 32,000 tokens, and the document list can contain at most 1,000 items. The total allowance is 600,000 tokens, counted as query tokens multiplied by the number of documents, plus all document tokens. A long instruction is therefore counted repeatedly across the candidate pairs.</p><p>The output top-k count does not change the number of candidates in that input-token calculation. Default truncation shortens over-length queries or documents to meet the context limit; disabling it makes an over-length query or pair return an error. Prepare answer-bearing passages deliberately and keep the relevant qualification within the text the model will see. Evaluate the refined order on representative questions and instructions, then pass the selected original passages to the next stage.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Available in Ailoot · inputs &amp; methods</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Rerank</b> <code>POST /v1/rerank</code></summary><dl class=\"method-capabilities\"><div><dt>Input types</dt><dd><code>text</code></dd></div><div><dt>Output types</dt><dd><code>rerank</code></dd></div><div><dt>Output format</dt><dd>json</dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Field</th><th>Type</th><th>Requirement</th><th>Values &amp; limits</th><th>Default</th></tr></thead><tbody><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">documents</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>array</code></td><td data-cell-label=\"Requirement\"><span class=\"card-cell-label\">Requirement</span>Required</td><td data-cell-label=\"Values &amp; limits\"><span class=\"card-cell-label\">Values &amp; limits</span></td><td data-cell-label=\"Default\" data-default=\"unspecified\"><span class=\"card-cell-label\">Default</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>string</code></td><td data-cell-label=\"Requirement\"><span class=\"card-cell-label\">Requirement</span>Required</td><td data-cell-label=\"Values &amp; limits\"><span class=\"card-cell-label\">Values &amp; limits</span><div>voyageai/rerank-2.5</div></td><td data-cell-label=\"Default\" data-default=\"unspecified\"><span class=\"card-cell-label\">Default</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">provider</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>schema</code></td><td data-cell-label=\"Requirement\"><span class=\"card-cell-label\">Requirement</span>Optional</td><td data-cell-label=\"Values &amp; limits\"><span class=\"card-cell-label\">Values &amp; limits</span></td><td data-cell-label=\"Default\" data-default=\"unspecified\"><span class=\"card-cell-label\">Default</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">query</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>string</code></td><td data-cell-label=\"Requirement\"><span class=\"card-cell-label\">Requirement</span>Required</td><td data-cell-label=\"Values &amp; limits\"><span class=\"card-cell-label\">Values &amp; limits</span></td><td data-cell-label=\"Default\" data-default=\"unspecified\"><span class=\"card-cell-label\">Default</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">session_id</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>string</code></td><td data-cell-label=\"Requirement\"><span class=\"card-cell-label\">Requirement</span>Optional</td><td data-cell-label=\"Values &amp; limits\"><span class=\"card-cell-label\">Values &amp; limits</span></td><td data-cell-label=\"Default\" data-default=\"unspecified\"><span class=\"card-cell-label\">Default</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">top_n</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>integer</code></td><td data-cell-label=\"Requirement\"><span class=\"card-cell-label\">Requirement</span>Optional</td><td data-cell-label=\"Values &amp; limits\"><span class=\"card-cell-label\">Values &amp; limits</span><div>Minimum: 1</div></td><td data-cell-label=\"Default\" data-default=\"unspecified\"><span class=\"card-cell-label\">Default</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">trace</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>schema</code></td><td data-cell-label=\"Requirement\"><span class=\"card-cell-label\">Requirement</span>Optional</td><td data-cell-label=\"Values &amp; limits\"><span class=\"card-cell-label\">Values &amp; limits</span></td><td data-cell-label=\"Default\" data-default=\"unspecified\"><span class=\"card-cell-label\">Default</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">user</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>string</code></td><td data-cell-label=\"Requirement\"><span class=\"card-cell-label\">Requirement</span>Optional</td><td data-cell-label=\"Values &amp; limits\"><span class=\"card-cell-label\">Values &amp; limits</span></td><td data-cell-label=\"Default\" data-default=\"unspecified\"><span class=\"card-cell-label\">Default</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">documents[].text</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>string</code></td><td data-cell-label=\"Requirement\"><span class=\"card-cell-label\">Requirement</span>Optional</td><td data-cell-label=\"Values &amp; limits\"><span class=\"card-cell-label\">Values &amp; limits</span></td><td data-cell-label=\"Default\" data-default=\"unspecified\"><span class=\"card-cell-label\">Default</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">documents[].image</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>string</code></td><td data-cell-label=\"Requirement\"><span class=\"card-cell-label\">Requirement</span>Optional</td><td data-cell-label=\"Values &amp; limits\"><span class=\"card-cell-label\">Values &amp; limits</span></td><td data-cell-label=\"Default\" data-default=\"unspecified\"><span class=\"card-cell-label\">Default</span>—</td></tr></tbody></table></div><details class=\"card-about\" data-material-combinations><summary>Input material combinations</summary><p class=\"note-s\"><b>text_rerank</b> · Required: query, documents array with minItems1</p></details><details class=\"note-s\" data-method-contract><summary>Method parameters and lifecycle</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Parameter</th><th>Contract</th></tr></thead><tbody><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>content_type</code></th><td data-cell-label=\"Contract\"><span class=\"card-cell-label\">Contract</span>application/json</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>required</code></th><td data-cell-label=\"Contract\"><span class=\"card-cell-label\">Contract</span>model, query, documents</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>material_types</code></th><td data-cell-label=\"Contract\"><span class=\"card-cell-label\">Contract</span>text</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>optional_controls</code></th><td data-cell-label=\"Contract\"><span class=\"card-cell-label\">Contract</span>provider, session_id, top_n, trace, user</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>multimodal_input_binding</code></th><td data-cell-label=\"Contract\"><span class=\"card-cell-label\">Contract</span>null</td></tr></tbody></table></div><p>Lifecycle: <code>synchronous</code></p><p class=\"note-s\">Send the exact model ID and retain the complete native response.</p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Pricing</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Tariff references do not add request options. Supported parameters are listed for the selected method.</p><dl data-price-conditions><dt>Fast mode</dt><dd>Not specified <span class=\"note-s\">When fast mode is selected</span></dd><dt>Flex mode</dt><dd>Not specified <span class=\"note-s\">When flex mode is selected</span></dd><dt>Maximum reasoning effort</dt><dd>Not specified <span class=\"note-s\">When maximum reasoning effort uses the default adjustment</span></dd></dl></div><div data-declared-tariff-pricing><h4>Ailoot rates</h4><h4>Prices by configuration</h4><p class=\"note-s\">Match each charge to the conditions shown. Use one rate for each set of alternative configurations.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Configuration</th><th>Rate schedule</th><th>Billing unit</th><th>Charge</th></tr></thead><tbody><tr><th data-cell-label=\"Configuration\" scope=\"row\"><span class=\"card-cell-label\">Configuration</span>Base token rates</th><td data-cell-label=\"Rate schedule\"><span class=\"card-cell-label\">Rate schedule</span>Base rate</td><td data-cell-label=\"Billing unit\"><span class=\"card-cell-label\">Billing unit</span>—</td><td data-cell-label=\"Charge\"><span class=\"card-cell-label\">Charge</span><div><span>Input · Input tokens</span> <b>—</b> <span class=\"price-unit\">/ 1K tokens</span></div><div><span>Output · Output tokens</span> <b>—</b> <span class=\"price-unit\">/ 1K tokens</span></div><div><span>Input · Cache read</span> <b>—</b> <span class=\"price-unit\">/ 1K tokens</span></div><div><span>Input · Cache write</span> <b>—</b> <span class=\"price-unit\">/ 1K tokens</span></div><div><span>Input · Cache write, 1 hour</span> <b>—</b> <span class=\"price-unit\">/ 1K tokens</span></div></td></tr><tr><th data-cell-label=\"Configuration\" scope=\"row\"><span class=\"card-cell-label\">Configuration</span>Ultra</th><td data-cell-label=\"Rate schedule\"><span class=\"card-cell-label\">Rate schedule</span>—</td><td data-cell-label=\"Billing unit\"><span class=\"card-cell-label\">Billing unit</span>/ 1K tokens</td><td data-cell-label=\"Charge\"><span class=\"card-cell-label\">Charge</span><div><span>Input · input token</span> <b>$0.0001</b> <span class=\"price-unit\">/ 1K tokens</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot reserves an estimated amount before a request. After the result, it settles the final charge from measured usage. Streaming settlement uses the final usage record. <a href=\"/docs/en/billing/reserve/\">How reservation and settlement work →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Example requests</h3><h4>Ailoot Ultra · Rerank</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Code options\"><button class=\"cg-tab\" id=\"model-code-2697-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2697-panel-0\" aria-selected=\"true\" tabindex=\"0\">Retained official request structure; documentary example</button><button class=\"cg-tab\" id=\"model-code-2697-tab-1\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2697-panel-1\" aria-selected=\"false\" tabindex=\"-1\">Use your actual request material and retain the complete result</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Copy code\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-2697-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-2697-tab-0\"><pre data-lang=\"json\"><code>{\n  &quot;documents&quot;: [\n    &quot;Paris is the capital of France.&quot;,\n    &quot;Berlin is the capital of Germany.&quot;\n  ],\n  &quot;model&quot;: &quot;voyageai/rerank-2.5&quot;,\n  &quot;query&quot;: &quot;What is the capital of France?&quot;,\n  &quot;top_n&quot;: 3\n}</code></pre></div><div class=\"cg-pane\" id=\"model-code-2697-panel-1\" role=\"tabpanel\" aria-labelledby=\"model-code-2697-tab-1\" hidden><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\n: &quot;${AILOOT_REQUEST_FILE:?Set your actual JSON request file}&quot;\nexport AILOOT_REQUEST_FILE\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport json,os\nfrom pathlib import Path\np=json.loads(Path(os.environ[&#39;AILOOT_REQUEST_FILE&#39;]).read_text(encoding=&#39;utf-8&#39;))\nif not isinstance(p,dict): raise SystemExit(&#39;Request must be a JSON object&#39;)\np[&#39;model&#39;]=&#39;voyageai/rerank-2.5&#39;\nPath(&#39;request.json&#39;).write_text(json.dumps(p,ensure_ascii=False),encoding=&#39;utf-8&#39;)\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/rerank \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -H &#39;Content-Type: application/json&#39; \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - &lt;&lt;&#39;PY_RESULT&#39;\nimport json\nfrom pathlib import Path\nprint(json.dumps(json.loads(Path(&#39;result.json&#39;).read_text()),ensure_ascii=False,indent=2))\nPY_RESULT\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Receive and save results</h3><h4>Ailoot Ultra · Rerank</h4><p class=\"note-s\">json</p><div class=\"card-result-process\" data-all-results><h5>Keep all completed results</h5><p class=\"note-s\">Keep every complete returned response, file and content part.</p><p class=\"note-s\">Every actual result index, finite relevance_score and original document object is retained. Indices bind the original document array. Entire original JSON is stored and returned only after settlement.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>If the original response needs checking</h5><p class=\"note-s\">Preserve original operation and full/partial reply; do not replay POST.</p></div><details class=\"card-about\" data-output-fields><summary>Response fields</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Field</th><th>Type</th></tr></thead><tbody><tr><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>string</td></tr><tr><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">id</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>string</td></tr><tr><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">provider</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>string</td></tr><tr><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">results[].index</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>integer</td></tr><tr><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">results[].relevance_score</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>number</td></tr><tr><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">results[].document.text</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>string</td></tr><tr><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">results[].document.image</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>string</td></tr><tr><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">usage.search_units</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>integer</td></tr><tr><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">usage.total_tokens</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>integer</td></tr><tr><th data-cell-label=\"Field\" scope=\"row\"><span class=\"card-cell-label\">Field</span><code class=\"card-field-name\">usage.cost</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>number</td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>Errors and next steps</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>Response</th><th>Condition</th><th>Next step</th></tr></thead><tbody><tr><th data-cell-label=\"Response\" scope=\"row\"><span class=\"card-cell-label\">Response</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"Condition\"><span class=\"card-cell-label\">Condition</span>Invalid required field, representation or value</td><td data-cell-label=\"Next step\"><span class=\"card-cell-label\">Next step</span>Correct the indicated request field.</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Aliases</h3><h4>Model aliases</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=voyageai%2Frerank-2.5&amp;route=Ultra&amp;caller=voyageai%2Frerank-2.5&amp;fmt=rerank\"><code>voyageai/rerank-2.5</code></a></span></p><h4>Method path aliases</h4><p class=\"note-s\">Use the method paths shown above.</p><h4>Related caller IDs</h4><p class=\"note-s\"><a href=\"#m=voyageai%2Frerank-2.5&amp;route=Ultra&amp;caller=voyageai%2Frerank-2.5&amp;fmt=rerank\"><code>voyageai/rerank-2.5</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "voyageai/rerank-2.5",
        "fmt": "rerank",
        "http": "POST",
        "path": "/v1/rerank",
        "request_model_id": "voyageai/rerank-2.5",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|rerank|/v1/rerank|voyageai%2Frerank-2.5",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Every actual result index, finite relevance_score and original document object is retained. Indices bind the original document array. Entire original JSON is stored and returned only after settlement.",
            "errors": [
              {
                "code": null,
                "condition": "Invalid required field, representation or value",
                "http_status": 400,
                "recovery": "Correct the indicated request field.",
                "type": "invalid_request_error"
              }
            ],
            "hints": [],
            "ignored_fields": [],
            "lifecycle": {
              "cancel": null,
              "idempotency_header": null,
              "job_retrieve": null,
              "mode": "synchronous",
              "streaming": false,
              "unknown": "Preserve original operation and full/partial reply; do not replay POST."
            },
            "material_combinations": [
              {
                "accepted": [
                  "string documents",
                  "objects with text; image only for separately exact-supported multimodal model"
                ],
                "mode": "text_rerank",
                "required": [
                  "query",
                  "documents array with minItems1"
                ]
              }
            ],
            "operation_modes": [
              "rerank"
            ],
            "outputs": {
              "all_results": "Every actual result index, finite relevance_score and original document object is retained. Indices bind the original document array. Entire original JSON is stored and returned only after settlement.",
              "family": "rerank",
              "fields": [
                {
                  "description": null,
                  "name": "model",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "id",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "provider",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "results[].index",
                  "type": "integer"
                },
                {
                  "description": null,
                  "name": "results[].relevance_score",
                  "type": "number"
                },
                {
                  "description": null,
                  "name": "results[].document.text",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "results[].document.image",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "usage.search_units",
                  "type": "integer"
                },
                {
                  "description": null,
                  "name": "usage.total_tokens",
                  "type": "integer"
                },
                {
                  "description": null,
                  "name": "usage.cost",
                  "type": "number"
                }
              ],
              "format": "json",
              "schema": {
                "description": "Rerank response containing ranked results",
                "example": {
                  "id": "gen-rerank-1234567890-abc",
                  "model": "cohere/rerank-v3.5",
                  "results": [
                    {
                      "document": {
                        "text": "Paris is the capital of France."
                      },
                      "index": 0,
                      "relevance_score": 0.98
                    }
                  ],
                  "usage": {
                    "search_units": 1,
                    "total_tokens": 150
                  }
                },
                "properties": {
                  "id": {
                    "description": "Unique identifier for the rerank response (ORID format)",
                    "example": "gen-rerank-1234567890-abc",
                    "type": "string"
                  },
                  "model": {
                    "description": "The model used for reranking",
                    "example": "cohere/rerank-v3.5",
                    "type": "string"
                  },
                  "provider": {
                    "description": "The provider that served the rerank request",
                    "example": "Cohere",
                    "type": "string"
                  },
                  "results": {
                    "description": "List of rerank results sorted by relevance",
                    "example": [
                      {
                        "document": {
                          "text": "Paris is the capital of France."
                        },
                        "index": 0,
                        "relevance_score": 0.98
                      }
                    ],
                    "items": {
                      "description": "A single rerank result",
                      "example": {
                        "document": {
                          "text": "Paris is the capital of France."
                        },
                        "index": 0,
                        "relevance_score": 0.98
                      },
                      "properties": {
                        "document": {
                          "description": "The document object echoing the original input (text and/or image)",
                          "properties": {
                            "image": {
                              "description": "The image (URL or data URI) from the original document",
                              "example": "https://example.com/image.png",
                              "type": "string"
                            },
                            "text": {
                              "description": "The document text",
                              "example": "Paris is the capital of France.",
                              "type": "string"
                            }
                          },
                          "type": "object"
                        },
                        "index": {
                          "description": "Index of the document in the original input list",
                          "example": 0,
                          "type": "integer"
                        },
                        "relevance_score": {
                          "description": "Relevance score of the document to the query",
                          "example": 0.98,
                          "format": "double",
                          "type": "number"
                        }
                      },
                      "required": [
                        "index",
                        "relevance_score",
                        "document"
                      ],
                      "type": "object"
                    },
                    "type": "array"
                  },
                  "usage": {
                    "description": "Usage statistics",
                    "example": {
                      "search_units": 1,
                      "total_tokens": 150
                    },
                    "properties": {
                      "cost": {
                        "description": "Cost of the request in credits",
                        "example": 0.001,
                        "format": "double",
                        "type": "number"
                      },
                      "search_units": {
                        "description": "Number of search units consumed (Cohere billing)",
                        "example": 1,
                        "type": "integer"
                      },
                      "total_tokens": {
                        "description": "Total number of tokens used",
                        "example": 150,
                        "type": "integer"
                      }
                    },
                    "type": "object"
                  }
                },
                "required": [
                  "model",
                  "results"
                ],
                "type": "object"
              }
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "description": "The list of documents to rerank. Documents may be plain strings, or structured objects with `text` and/or `image` for multimodal models.",
                "enum": null,
                "enum_known": false,
                "minItems": 1,
                "name": "documents",
                "required": true,
                "type": "array"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "voyageai/rerank-2.5"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "provider",
                "required": false,
                "type": "schema"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "description": "The search query to rerank documents against",
                "enum": null,
                "enum_known": false,
                "name": "query",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "description": "A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters.",
                "enum": null,
                "enum_known": false,
                "maxLength": 256,
                "name": "session_id",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "description": "Number of most relevant documents to return",
                "enum": null,
                "enum_known": false,
                "minimum": 1,
                "name": "top_n",
                "required": false,
                "type": "integer"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "trace",
                "required": false,
                "type": "schema"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "description": "A unique identifier representing your end-user. Forwarded to Broadcast and private logging as the end-user id; never sent to the provider.",
                "enum": null,
                "enum_known": false,
                "maxLength": 256,
                "name": "user",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "documents[].text",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "description": "Official family image carrier is remote http/https URL or data:image URI; only for exact multimodal-model bindings.",
                "enum": null,
                "enum_known": false,
                "name": "documents[].image",
                "required": false,
                "type": "string"
              }
            ],
            "unsupported": [
              "stream=true"
            ]
          },
          "hints": [
            "Send the exact model ID and retain the complete native response."
          ],
          "input": {
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "multimodal_input_binding": null,
            "optional_controls": [
              "provider",
              "session_id",
              "top_n",
              "trace",
              "user"
            ],
            "required": [
              "model",
              "query",
              "documents"
            ]
          },
          "lifecycle": {
            "cancel": null,
            "idempotency_header": null,
            "job_retrieve": null,
            "mode": "synchronous",
            "streaming": false,
            "unknown": "Preserve original operation and full/partial reply; do not replay POST."
          },
          "manufacturer_capability": {
            "context_length": 32000,
            "manufacturer_input": [
              "text"
            ],
            "manufacturer_output": [
              "rerank"
            ]
          },
          "method": {
            "http": "POST",
            "path": "/v1/rerank"
          },
          "method_aliases": [],
          "operation_modes": [
            "rerank"
          ],
          "output": {
            "all_results": "Every actual result index, finite relevance_score and original document object is retained. Indices bind the original document array. Entire original JSON is stored and returned only after settlement.",
            "family": "rerank",
            "fields": [
              {
                "description": null,
                "name": "model",
                "type": "string"
              },
              {
                "description": null,
                "name": "id",
                "type": "string"
              },
              {
                "description": null,
                "name": "provider",
                "type": "string"
              },
              {
                "description": null,
                "name": "results[].index",
                "type": "integer"
              },
              {
                "description": null,
                "name": "results[].relevance_score",
                "type": "number"
              },
              {
                "description": null,
                "name": "results[].document.text",
                "type": "string"
              },
              {
                "description": null,
                "name": "results[].document.image",
                "type": "string"
              },
              {
                "description": null,
                "name": "usage.search_units",
                "type": "integer"
              },
              {
                "description": null,
                "name": "usage.total_tokens",
                "type": "integer"
              },
              {
                "description": null,
                "name": "usage.cost",
                "type": "number"
              }
            ],
            "format": "json",
            "schema": {
              "description": "Rerank response containing ranked results",
              "example": {
                "id": "gen-rerank-1234567890-abc",
                "model": "cohere/rerank-v3.5",
                "results": [
                  {
                    "document": {
                      "text": "Paris is the capital of France."
                    },
                    "index": 0,
                    "relevance_score": 0.98
                  }
                ],
                "usage": {
                  "search_units": 1,
                  "total_tokens": 150
                }
              },
              "properties": {
                "id": {
                  "description": "Unique identifier for the rerank response (ORID format)",
                  "example": "gen-rerank-1234567890-abc",
                  "type": "string"
                },
                "model": {
                  "description": "The model used for reranking",
                  "example": "cohere/rerank-v3.5",
                  "type": "string"
                },
                "provider": {
                  "description": "The provider that served the rerank request",
                  "example": "Cohere",
                  "type": "string"
                },
                "results": {
                  "description": "List of rerank results sorted by relevance",
                  "example": [
                    {
                      "document": {
                        "text": "Paris is the capital of France."
                      },
                      "index": 0,
                      "relevance_score": 0.98
                    }
                  ],
                  "items": {
                    "description": "A single rerank result",
                    "example": {
                      "document": {
                        "text": "Paris is the capital of France."
                      },
                      "index": 0,
                      "relevance_score": 0.98
                    },
                    "properties": {
                      "document": {
                        "description": "The document object echoing the original input (text and/or image)",
                        "properties": {
                          "image": {
                            "description": "The image (URL or data URI) from the original document",
                            "example": "https://example.com/image.png",
                            "type": "string"
                          },
                          "text": {
                            "description": "The document text",
                            "example": "Paris is the capital of France.",
                            "type": "string"
                          }
                        },
                        "type": "object"
                      },
                      "index": {
                        "description": "Index of the document in the original input list",
                        "example": 0,
                        "type": "integer"
                      },
                      "relevance_score": {
                        "description": "Relevance score of the document to the query",
                        "example": 0.98,
                        "format": "double",
                        "type": "number"
                      }
                    },
                    "required": [
                      "index",
                      "relevance_score",
                      "document"
                    ],
                    "type": "object"
                  },
                  "type": "array"
                },
                "usage": {
                  "description": "Usage statistics",
                  "example": {
                    "search_units": 1,
                    "total_tokens": 150
                  },
                  "properties": {
                    "cost": {
                      "description": "Cost of the request in credits",
                      "example": 0.001,
                      "format": "double",
                      "type": "number"
                    },
                    "search_units": {
                      "description": "Number of search units consumed (Cohere billing)",
                      "example": 1,
                      "type": "integer"
                    },
                    "total_tokens": {
                      "description": "Total number of tokens used",
                      "example": 150,
                      "type": "integer"
                    }
                  },
                  "type": "object"
                }
              },
              "required": [
                "model",
                "results"
              ],
              "type": "object"
            }
          },
          "schema": {
            "request": {
              "description": "Rerank request input",
              "example": {
                "documents": [
                  "Paris is the capital of France.",
                  "Berlin is the capital of Germany."
                ],
                "model": "cohere/rerank-v3.5",
                "query": "What is the capital of France?",
                "top_n": 3
              },
              "properties": {
                "documents": {
                  "description": "The list of documents to rerank. Documents may be plain strings, or structured objects with `text` and/or `image` for multimodal models.",
                  "example": [
                    "Paris is the capital of France.",
                    "Berlin is the capital of Germany."
                  ],
                  "items": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "description": "A structured document with optional text and/or image content. At least one of `text` or `image` must be provided.",
                        "properties": {
                          "image": {
                            "description": "An image associated with the document, as a remote URL (http/https) or a base64-encoded data URI (data:image/...).",
                            "example": "https://upload.wikimedia.org/wikipedia/commons/thumb/8/8b/Phytogenic.png",
                            "type": "string"
                          },
                          "text": {
                            "description": "The document text",
                            "example": "AI enables robots to perceive, plan, and act autonomously.",
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    ],
                    "description": "A document to rerank. Either a plain string, or a structured object with optional `text` and/or `image`."
                  },
                  "minItems": 1,
                  "type": "array"
                },
                "model": {
                  "enum": [
                    "voyageai/rerank-2.5"
                  ],
                  "type": "string"
                },
                "provider": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ProviderPreferences"
                    },
                    {
                      "description": "Provider routing preferences for the request."
                    }
                  ]
                },
                "query": {
                  "description": "The search query to rerank documents against",
                  "example": "What is the capital of France?",
                  "type": "string"
                },
                "session_id": {
                  "description": "A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters.",
                  "example": "session-1234",
                  "maxLength": 256,
                  "type": "string"
                },
                "top_n": {
                  "description": "Number of most relevant documents to return",
                  "example": 3,
                  "minimum": 1,
                  "type": "integer"
                },
                "trace": {
                  "$ref": "#/components/schemas/TraceConfig"
                },
                "user": {
                  "description": "A unique identifier representing your end-user. Forwarded to Broadcast and private logging as the end-user id; never sent to the provider.",
                  "example": "user-1234",
                  "maxLength": 256,
                  "type": "string"
                }
              },
              "required": [
                "model",
                "query",
                "documents"
              ],
              "type": "object"
            },
            "response": {
              "description": "Rerank response containing ranked results",
              "example": {
                "id": "gen-rerank-1234567890-abc",
                "model": "cohere/rerank-v3.5",
                "results": [
                  {
                    "document": {
                      "text": "Paris is the capital of France."
                    },
                    "index": 0,
                    "relevance_score": 0.98
                  }
                ],
                "usage": {
                  "search_units": 1,
                  "total_tokens": 150
                }
              },
              "properties": {
                "id": {
                  "description": "Unique identifier for the rerank response (ORID format)",
                  "example": "gen-rerank-1234567890-abc",
                  "type": "string"
                },
                "model": {
                  "description": "The model used for reranking",
                  "example": "cohere/rerank-v3.5",
                  "type": "string"
                },
                "provider": {
                  "description": "The provider that served the rerank request",
                  "example": "Cohere",
                  "type": "string"
                },
                "results": {
                  "description": "List of rerank results sorted by relevance",
                  "example": [
                    {
                      "document": {
                        "text": "Paris is the capital of France."
                      },
                      "index": 0,
                      "relevance_score": 0.98
                    }
                  ],
                  "items": {
                    "description": "A single rerank result",
                    "example": {
                      "document": {
                        "text": "Paris is the capital of France."
                      },
                      "index": 0,
                      "relevance_score": 0.98
                    },
                    "properties": {
                      "document": {
                        "description": "The document object echoing the original input (text and/or image)",
                        "properties": {
                          "image": {
                            "description": "The image (URL or data URI) from the original document",
                            "example": "https://example.com/image.png",
                            "type": "string"
                          },
                          "text": {
                            "description": "The document text",
                            "example": "Paris is the capital of France.",
                            "type": "string"
                          }
                        },
                        "type": "object"
                      },
                      "index": {
                        "description": "Index of the document in the original input list",
                        "example": 0,
                        "type": "integer"
                      },
                      "relevance_score": {
                        "description": "Relevance score of the document to the query",
                        "example": 0.98,
                        "format": "double",
                        "type": "number"
                      }
                    },
                    "required": [
                      "index",
                      "relevance_score",
                      "document"
                    ],
                    "type": "object"
                  },
                  "type": "array"
                },
                "usage": {
                  "description": "Usage statistics",
                  "example": {
                    "search_units": 1,
                    "total_tokens": 150
                  },
                  "properties": {
                    "cost": {
                      "description": "Cost of the request in credits",
                      "example": 0.001,
                      "format": "double",
                      "type": "number"
                    },
                    "search_units": {
                      "description": "Number of search units consumed (Cohere billing)",
                      "example": 1,
                      "type": "integer"
                    },
                    "total_tokens": {
                      "description": "Total number of tokens used",
                      "example": 150,
                      "type": "integer"
                    }
                  },
                  "type": "object"
                }
              },
              "required": [
                "model",
                "results"
              ],
              "type": "object"
            }
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "native_endpoint": "rerank",
              "quoted_unit": "/ 1K tokens"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.0001000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_token",
                "label": "input token",
                "native_amount_usd_per_unit": "0.0000001",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "{\n  \"documents\": [\n    \"Paris is the capital of France.\",\n    \"Berlin is the capital of Germany.\"\n  ],\n  \"model\": \"voyageai/rerank-2.5\",\n  \"query\": \"What is the capital of France?\",\n  \"top_n\": 3\n}",
            "label": "Retained official request structure; documentary example",
            "language": "json"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_REQUEST_FILE:?Set your actual JSON request file}\"\nexport AILOOT_REQUEST_FILE\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads(Path(os.environ['AILOOT_REQUEST_FILE']).read_text(encoding='utf-8'))\nif not isinstance(p,dict): raise SystemExit('Request must be a JSON object')\np['model']='voyageai/rerank-2.5'\nPath('request.json').write_text(json.dumps(p,ensure_ascii=False),encoding='utf-8')\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/rerank \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nprint(json.dumps(json.loads(Path('result.json').read_text()),ensure_ascii=False,indent=2))\nPY_RESULT\n",
            "label": "Use your actual request material and retain the complete result",
            "language": "bash",
            "material_policy": "Use real owner-supplied state/questions or query/documents. No invented file ID, document, image URL, job ID or returned result."
          }
        ],
        "family": "rerank",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "rerank",
        "http": "POST",
        "in": null,
        "input": [
          "text"
        ],
        "label": "Rerank",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "rerank",
        "out": null,
        "output": [
          "rerank"
        ],
        "path": "/v1/rerank",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "per_request",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null,
          "unit_prices": {
            "input_token": 1e-07
          }
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "native_endpoint": "rerank",
              "quoted_unit": "/ 1K tokens"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.0001000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_token",
                "label": "input token",
                "native_amount_usd_per_unit": "0.0000001",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              }
            ]
          }
        ],
        "request_model_id": "voyageai/rerank-2.5",
        "route_label": "Ultra",
        "status_reads": [],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.0001000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_token",
            "label": "input token",
            "native_amount_usd_per_unit": "0.0000001",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          }
        ]
      }
    }
  ],
  "model_id": "voyageai/rerank-2.5",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "9e15250cb0f8815e63180fa968b67191b7f9850596df6309bd708cbf859f74c3",
    "input_html_sha256": "e32ac6543014525a7ae38e5a5225fd20be159fd8dec9ac7510dc1726c13843da",
    "private_audit_sha256": "c6e436e0a115ffe2b52dc11d38f3f530ea559cd0942e8664941728f14fe872ee",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/en/voyageai-rerank-2-5/",
    "description": "rerank-2.5 reorders a supplied set of text candidates by relevance to a query and optional natural-language instructions. It is a multilingual, quality-oriented reranker with a 32,000-token query–document context and ranked scores tied to the original candidate indices.",
    "locale": "en",
    "md_url": "https://ailoot.ai/models/en/voyageai-rerank-2-5/index.md",
    "title": "VoyageAI by MongoDB: rerank-2.5 — Ailoot",
    "url": "https://ailoot.ai/models/en/voyageai-rerank-2-5/"
  },
  "rawModel": {
    "about": "rerank-2.5 is Voyage AI's instruction-following reranker, designed to refine a set of search candidates. It jointly examines the query and each document as a cross-encoder, then returns a relevance ordering. The maker's release emphasizes natural-language control over what counts as relevant, multilingual retrieval and a longer query–document context than the preceding rerank-2 edition.\n\n### Give the model the candidates to compare\n\nThe input is a query and a list of candidate text documents. These can be passages selected by embedding search or a lexical first-stage search. The reranker evaluates the supplied text rather than creating corpus embeddings, so its practical job is to refine the candidates the initial search already found.\n\nKeep the original candidate ordering and source identifiers when preparing that list. The returned indices refer to those input positions. For a RAG task, supply the passages the answer stage might actually use, including the title or qualifications needed to interpret them. A relevant document that is absent from the submitted candidate set cannot appear as a newly found result of reranking.\n\n### Specify the intended notion of relevance\n\nInstructions can be appended or prepended to the query. The release describes three useful roles: emphasize a particular part of a document, prefer a type of source and disambiguate the query with application context. These alter the relevance task presented to the model.\n\nFor a technical search, an illustrative instruction is “Prioritize passages that explain the failure and recovery behavior; introductory overviews are secondary.” For a research collection, specify whether the title, method or result matters most. For an ambiguous term, state the subject area the search is about. Keep the question and the instruction compatible, so one does not ask for a broad topic while the other silently changes the task.\n\nThese preferences guide relevance scoring. If the application has strict eligibility requirements—such as source version, date or access scope—prepare the eligible candidate set separately. The model's relevance instruction and a deterministic collection restriction serve different purposes.\n\n### Ranked output and later result use\n\nResults are ordered by descending relevance and include a floating-point relevance score and the candidate's original input index. The top-k option selects how many leading results to return; without it, the manufacturer specification returns results for all submitted candidates. An optional return-documents setting includes the corresponding source text; otherwise the response contains indices and scores.\n\nUse the ordering to select passages for display or a later answer stage, keeping their source identity intact. Inspect the actual text when evaluating the ranking: the score is a measure of relevance to the submitted query, not a generated answer or a verification that the document's claims are correct. This makes the model useful for refining technical, legal, financial, medical, conversation and multilingual search material without converting ranking into a domain conclusion.\n\n### Context, total-token budget and truncation\n\nThe documented query limit is 8,000 tokens, including instructions placed in the query. The query plus any one candidate document must fit within 32,000 tokens, and the document list can contain at most 1,000 items. The total allowance is 600,000 tokens, counted as query tokens multiplied by the number of documents, plus all document tokens. A long instruction is therefore counted repeatedly across the candidate pairs.\n\nThe output top-k count does not change the number of candidates in that input-token calculation. Default truncation shortens over-length queries or documents to meet the context limit; disabling it makes an over-length query or pair return an error. Prepare answer-bearing passages deliberately and keep the relevant qualification within the text the model will see. Evaluate the refined order on representative questions and instructions, then pass the selected original passages to the next stage.",
    "alias_of": null,
    "aliases": [],
    "author": "VoyageAI by MongoDB",
    "available": null,
    "canonical_model": "voyageai/rerank-2.5",
    "capabilities": {
      "context_length": 32000,
      "manufacturer_input": [
        "text"
      ],
      "manufacturer_output": [
        "rerank"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.0001000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_token",
            "label": "input token",
            "native_amount_usd_per_unit": "0.0000001",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          }
        ],
        "summary": "Full configuration pricing in details."
      }
    ],
    "ctx": null,
    "entity_type": "model",
    "formats": [
      "rerank"
    ],
    "id": "voyageai/rerank-2.5",
    "input": [
      "text"
    ],
    "kind": "rerank",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Every actual result index, finite relevance_score and original document object is retained. Indices bind the original document array. Entire original JSON is stored and returned only after settlement.",
            "errors": [
              {
                "code": null,
                "condition": "Invalid required field, representation or value",
                "http_status": 400,
                "recovery": "Correct the indicated request field.",
                "type": "invalid_request_error"
              }
            ],
            "hints": [],
            "ignored_fields": [],
            "lifecycle": {
              "cancel": null,
              "idempotency_header": null,
              "job_retrieve": null,
              "mode": "synchronous",
              "streaming": false,
              "unknown": "Preserve original operation and full/partial reply; do not replay POST."
            },
            "material_combinations": [
              {
                "accepted": [
                  "string documents",
                  "objects with text; image only for separately exact-supported multimodal model"
                ],
                "mode": "text_rerank",
                "required": [
                  "query",
                  "documents array with minItems1"
                ]
              }
            ],
            "operation_modes": [
              "rerank"
            ],
            "outputs": {
              "all_results": "Every actual result index, finite relevance_score and original document object is retained. Indices bind the original document array. Entire original JSON is stored and returned only after settlement.",
              "family": "rerank",
              "fields": [
                {
                  "description": null,
                  "name": "model",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "id",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "provider",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "results[].index",
                  "type": "integer"
                },
                {
                  "description": null,
                  "name": "results[].relevance_score",
                  "type": "number"
                },
                {
                  "description": null,
                  "name": "results[].document.text",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "results[].document.image",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "usage.search_units",
                  "type": "integer"
                },
                {
                  "description": null,
                  "name": "usage.total_tokens",
                  "type": "integer"
                },
                {
                  "description": null,
                  "name": "usage.cost",
                  "type": "number"
                }
              ],
              "format": "json",
              "schema": {
                "description": "Rerank response containing ranked results",
                "example": {
                  "id": "gen-rerank-1234567890-abc",
                  "model": "cohere/rerank-v3.5",
                  "results": [
                    {
                      "document": {
                        "text": "Paris is the capital of France."
                      },
                      "index": 0,
                      "relevance_score": 0.98
                    }
                  ],
                  "usage": {
                    "search_units": 1,
                    "total_tokens": 150
                  }
                },
                "properties": {
                  "id": {
                    "description": "Unique identifier for the rerank response (ORID format)",
                    "example": "gen-rerank-1234567890-abc",
                    "type": "string"
                  },
                  "model": {
                    "description": "The model used for reranking",
                    "example": "cohere/rerank-v3.5",
                    "type": "string"
                  },
                  "provider": {
                    "description": "The provider that served the rerank request",
                    "example": "Cohere",
                    "type": "string"
                  },
                  "results": {
                    "description": "List of rerank results sorted by relevance",
                    "example": [
                      {
                        "document": {
                          "text": "Paris is the capital of France."
                        },
                        "index": 0,
                        "relevance_score": 0.98
                      }
                    ],
                    "items": {
                      "description": "A single rerank result",
                      "example": {
                        "document": {
                          "text": "Paris is the capital of France."
                        },
                        "index": 0,
                        "relevance_score": 0.98
                      },
                      "properties": {
                        "document": {
                          "description": "The document object echoing the original input (text and/or image)",
                          "properties": {
                            "image": {
                              "description": "The image (URL or data URI) from the original document",
                              "example": "https://example.com/image.png",
                              "type": "string"
                            },
                            "text": {
                              "description": "The document text",
                              "example": "Paris is the capital of France.",
                              "type": "string"
                            }
                          },
                          "type": "object"
                        },
                        "index": {
                          "description": "Index of the document in the original input list",
                          "example": 0,
                          "type": "integer"
                        },
                        "relevance_score": {
                          "description": "Relevance score of the document to the query",
                          "example": 0.98,
                          "format": "double",
                          "type": "number"
                        }
                      },
                      "required": [
                        "index",
                        "relevance_score",
                        "document"
                      ],
                      "type": "object"
                    },
                    "type": "array"
                  },
                  "usage": {
                    "description": "Usage statistics",
                    "example": {
                      "search_units": 1,
                      "total_tokens": 150
                    },
                    "properties": {
                      "cost": {
                        "description": "Cost of the request in credits",
                        "example": 0.001,
                        "format": "double",
                        "type": "number"
                      },
                      "search_units": {
                        "description": "Number of search units consumed (Cohere billing)",
                        "example": 1,
                        "type": "integer"
                      },
                      "total_tokens": {
                        "description": "Total number of tokens used",
                        "example": 150,
                        "type": "integer"
                      }
                    },
                    "type": "object"
                  }
                },
                "required": [
                  "model",
                  "results"
                ],
                "type": "object"
              }
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "description": "The list of documents to rerank. Documents may be plain strings, or structured objects with `text` and/or `image` for multimodal models.",
                "enum": null,
                "enum_known": false,
                "minItems": 1,
                "name": "documents",
                "required": true,
                "type": "array"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "voyageai/rerank-2.5"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "provider",
                "required": false,
                "type": "schema"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "description": "The search query to rerank documents against",
                "enum": null,
                "enum_known": false,
                "name": "query",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "description": "A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters.",
                "enum": null,
                "enum_known": false,
                "maxLength": 256,
                "name": "session_id",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "description": "Number of most relevant documents to return",
                "enum": null,
                "enum_known": false,
                "minimum": 1,
                "name": "top_n",
                "required": false,
                "type": "integer"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "trace",
                "required": false,
                "type": "schema"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "description": "A unique identifier representing your end-user. Forwarded to Broadcast and private logging as the end-user id; never sent to the provider.",
                "enum": null,
                "enum_known": false,
                "maxLength": 256,
                "name": "user",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "documents[].text",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "description": "Official family image carrier is remote http/https URL or data:image URI; only for exact multimodal-model bindings.",
                "enum": null,
                "enum_known": false,
                "name": "documents[].image",
                "required": false,
                "type": "string"
              }
            ],
            "unsupported": [
              "stream=true"
            ]
          },
          "hints": [
            "Send the exact model ID and retain the complete native response."
          ],
          "input": {
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "multimodal_input_binding": null,
            "optional_controls": [
              "provider",
              "session_id",
              "top_n",
              "trace",
              "user"
            ],
            "required": [
              "model",
              "query",
              "documents"
            ]
          },
          "lifecycle": {
            "cancel": null,
            "idempotency_header": null,
            "job_retrieve": null,
            "mode": "synchronous",
            "streaming": false,
            "unknown": "Preserve original operation and full/partial reply; do not replay POST."
          },
          "manufacturer_capability": {
            "context_length": 32000,
            "manufacturer_input": [
              "text"
            ],
            "manufacturer_output": [
              "rerank"
            ]
          },
          "method": {
            "http": "POST",
            "path": "/v1/rerank"
          },
          "method_aliases": [],
          "operation_modes": [
            "rerank"
          ],
          "output": {
            "all_results": "Every actual result index, finite relevance_score and original document object is retained. Indices bind the original document array. Entire original JSON is stored and returned only after settlement.",
            "family": "rerank",
            "fields": [
              {
                "description": null,
                "name": "model",
                "type": "string"
              },
              {
                "description": null,
                "name": "id",
                "type": "string"
              },
              {
                "description": null,
                "name": "provider",
                "type": "string"
              },
              {
                "description": null,
                "name": "results[].index",
                "type": "integer"
              },
              {
                "description": null,
                "name": "results[].relevance_score",
                "type": "number"
              },
              {
                "description": null,
                "name": "results[].document.text",
                "type": "string"
              },
              {
                "description": null,
                "name": "results[].document.image",
                "type": "string"
              },
              {
                "description": null,
                "name": "usage.search_units",
                "type": "integer"
              },
              {
                "description": null,
                "name": "usage.total_tokens",
                "type": "integer"
              },
              {
                "description": null,
                "name": "usage.cost",
                "type": "number"
              }
            ],
            "format": "json",
            "schema": {
              "description": "Rerank response containing ranked results",
              "example": {
                "id": "gen-rerank-1234567890-abc",
                "model": "cohere/rerank-v3.5",
                "results": [
                  {
                    "document": {
                      "text": "Paris is the capital of France."
                    },
                    "index": 0,
                    "relevance_score": 0.98
                  }
                ],
                "usage": {
                  "search_units": 1,
                  "total_tokens": 150
                }
              },
              "properties": {
                "id": {
                  "description": "Unique identifier for the rerank response (ORID format)",
                  "example": "gen-rerank-1234567890-abc",
                  "type": "string"
                },
                "model": {
                  "description": "The model used for reranking",
                  "example": "cohere/rerank-v3.5",
                  "type": "string"
                },
                "provider": {
                  "description": "The provider that served the rerank request",
                  "example": "Cohere",
                  "type": "string"
                },
                "results": {
                  "description": "List of rerank results sorted by relevance",
                  "example": [
                    {
                      "document": {
                        "text": "Paris is the capital of France."
                      },
                      "index": 0,
                      "relevance_score": 0.98
                    }
                  ],
                  "items": {
                    "description": "A single rerank result",
                    "example": {
                      "document": {
                        "text": "Paris is the capital of France."
                      },
                      "index": 0,
                      "relevance_score": 0.98
                    },
                    "properties": {
                      "document": {
                        "description": "The document object echoing the original input (text and/or image)",
                        "properties": {
                          "image": {
                            "description": "The image (URL or data URI) from the original document",
                            "example": "https://example.com/image.png",
                            "type": "string"
                          },
                          "text": {
                            "description": "The document text",
                            "example": "Paris is the capital of France.",
                            "type": "string"
                          }
                        },
                        "type": "object"
                      },
                      "index": {
                        "description": "Index of the document in the original input list",
                        "example": 0,
                        "type": "integer"
                      },
                      "relevance_score": {
                        "description": "Relevance score of the document to the query",
                        "example": 0.98,
                        "format": "double",
                        "type": "number"
                      }
                    },
                    "required": [
                      "index",
                      "relevance_score",
                      "document"
                    ],
                    "type": "object"
                  },
                  "type": "array"
                },
                "usage": {
                  "description": "Usage statistics",
                  "example": {
                    "search_units": 1,
                    "total_tokens": 150
                  },
                  "properties": {
                    "cost": {
                      "description": "Cost of the request in credits",
                      "example": 0.001,
                      "format": "double",
                      "type": "number"
                    },
                    "search_units": {
                      "description": "Number of search units consumed (Cohere billing)",
                      "example": 1,
                      "type": "integer"
                    },
                    "total_tokens": {
                      "description": "Total number of tokens used",
                      "example": 150,
                      "type": "integer"
                    }
                  },
                  "type": "object"
                }
              },
              "required": [
                "model",
                "results"
              ],
              "type": "object"
            }
          },
          "schema": {
            "request": {
              "description": "Rerank request input",
              "example": {
                "documents": [
                  "Paris is the capital of France.",
                  "Berlin is the capital of Germany."
                ],
                "model": "cohere/rerank-v3.5",
                "query": "What is the capital of France?",
                "top_n": 3
              },
              "properties": {
                "documents": {
                  "description": "The list of documents to rerank. Documents may be plain strings, or structured objects with `text` and/or `image` for multimodal models.",
                  "example": [
                    "Paris is the capital of France.",
                    "Berlin is the capital of Germany."
                  ],
                  "items": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "description": "A structured document with optional text and/or image content. At least one of `text` or `image` must be provided.",
                        "properties": {
                          "image": {
                            "description": "An image associated with the document, as a remote URL (http/https) or a base64-encoded data URI (data:image/...).",
                            "example": "https://upload.wikimedia.org/wikipedia/commons/thumb/8/8b/Phytogenic.png",
                            "type": "string"
                          },
                          "text": {
                            "description": "The document text",
                            "example": "AI enables robots to perceive, plan, and act autonomously.",
                            "type": "string"
                          }
                        },
                        "type": "object"
                      }
                    ],
                    "description": "A document to rerank. Either a plain string, or a structured object with optional `text` and/or `image`."
                  },
                  "minItems": 1,
                  "type": "array"
                },
                "model": {
                  "enum": [
                    "voyageai/rerank-2.5"
                  ],
                  "type": "string"
                },
                "provider": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ProviderPreferences"
                    },
                    {
                      "description": "Provider routing preferences for the request."
                    }
                  ]
                },
                "query": {
                  "description": "The search query to rerank documents against",
                  "example": "What is the capital of France?",
                  "type": "string"
                },
                "session_id": {
                  "description": "A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters.",
                  "example": "session-1234",
                  "maxLength": 256,
                  "type": "string"
                },
                "top_n": {
                  "description": "Number of most relevant documents to return",
                  "example": 3,
                  "minimum": 1,
                  "type": "integer"
                },
                "trace": {
                  "$ref": "#/components/schemas/TraceConfig"
                },
                "user": {
                  "description": "A unique identifier representing your end-user. Forwarded to Broadcast and private logging as the end-user id; never sent to the provider.",
                  "example": "user-1234",
                  "maxLength": 256,
                  "type": "string"
                }
              },
              "required": [
                "model",
                "query",
                "documents"
              ],
              "type": "object"
            },
            "response": {
              "description": "Rerank response containing ranked results",
              "example": {
                "id": "gen-rerank-1234567890-abc",
                "model": "cohere/rerank-v3.5",
                "results": [
                  {
                    "document": {
                      "text": "Paris is the capital of France."
                    },
                    "index": 0,
                    "relevance_score": 0.98
                  }
                ],
                "usage": {
                  "search_units": 1,
                  "total_tokens": 150
                }
              },
              "properties": {
                "id": {
                  "description": "Unique identifier for the rerank response (ORID format)",
                  "example": "gen-rerank-1234567890-abc",
                  "type": "string"
                },
                "model": {
                  "description": "The model used for reranking",
                  "example": "cohere/rerank-v3.5",
                  "type": "string"
                },
                "provider": {
                  "description": "The provider that served the rerank request",
                  "example": "Cohere",
                  "type": "string"
                },
                "results": {
                  "description": "List of rerank results sorted by relevance",
                  "example": [
                    {
                      "document": {
                        "text": "Paris is the capital of France."
                      },
                      "index": 0,
                      "relevance_score": 0.98
                    }
                  ],
                  "items": {
                    "description": "A single rerank result",
                    "example": {
                      "document": {
                        "text": "Paris is the capital of France."
                      },
                      "index": 0,
                      "relevance_score": 0.98
                    },
                    "properties": {
                      "document": {
                        "description": "The document object echoing the original input (text and/or image)",
                        "properties": {
                          "image": {
                            "description": "The image (URL or data URI) from the original document",
                            "example": "https://example.com/image.png",
                            "type": "string"
                          },
                          "text": {
                            "description": "The document text",
                            "example": "Paris is the capital of France.",
                            "type": "string"
                          }
                        },
                        "type": "object"
                      },
                      "index": {
                        "description": "Index of the document in the original input list",
                        "example": 0,
                        "type": "integer"
                      },
                      "relevance_score": {
                        "description": "Relevance score of the document to the query",
                        "example": 0.98,
                        "format": "double",
                        "type": "number"
                      }
                    },
                    "required": [
                      "index",
                      "relevance_score",
                      "document"
                    ],
                    "type": "object"
                  },
                  "type": "array"
                },
                "usage": {
                  "description": "Usage statistics",
                  "example": {
                    "search_units": 1,
                    "total_tokens": 150
                  },
                  "properties": {
                    "cost": {
                      "description": "Cost of the request in credits",
                      "example": 0.001,
                      "format": "double",
                      "type": "number"
                    },
                    "search_units": {
                      "description": "Number of search units consumed (Cohere billing)",
                      "example": 1,
                      "type": "integer"
                    },
                    "total_tokens": {
                      "description": "Total number of tokens used",
                      "example": 150,
                      "type": "integer"
                    }
                  },
                  "type": "object"
                }
              },
              "required": [
                "model",
                "results"
              ],
              "type": "object"
            }
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "native_endpoint": "rerank",
              "quoted_unit": "/ 1K tokens"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.0001000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_token",
                "label": "input token",
                "native_amount_usd_per_unit": "0.0000001",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "{\n  \"documents\": [\n    \"Paris is the capital of France.\",\n    \"Berlin is the capital of Germany.\"\n  ],\n  \"model\": \"voyageai/rerank-2.5\",\n  \"query\": \"What is the capital of France?\",\n  \"top_n\": 3\n}",
            "label": "Retained official request structure; documentary example",
            "language": "json"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_REQUEST_FILE:?Set your actual JSON request file}\"\nexport AILOOT_REQUEST_FILE\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads(Path(os.environ['AILOOT_REQUEST_FILE']).read_text(encoding='utf-8'))\nif not isinstance(p,dict): raise SystemExit('Request must be a JSON object')\np['model']='voyageai/rerank-2.5'\nPath('request.json').write_text(json.dumps(p,ensure_ascii=False),encoding='utf-8')\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/rerank \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nprint(json.dumps(json.loads(Path('result.json').read_text()),ensure_ascii=False,indent=2))\nPY_RESULT\n",
            "label": "Use your actual request material and retain the complete result",
            "language": "bash",
            "material_policy": "Use real owner-supplied state/questions or query/documents. No invented file ID, document, image URL, job ID or returned result."
          }
        ],
        "family": "rerank",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "rerank",
        "http": "POST",
        "in": null,
        "input": [
          "text"
        ],
        "label": "Rerank",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "rerank",
        "out": null,
        "output": [
          "rerank"
        ],
        "path": "/v1/rerank",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "per_request",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null,
          "unit_prices": {
            "input_token": 1e-07
          }
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "native_endpoint": "rerank",
              "quoted_unit": "/ 1K tokens"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.0001000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_token",
                "label": "input token",
                "native_amount_usd_per_unit": "0.0000001",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              }
            ]
          }
        ],
        "request_model_id": "voyageai/rerank-2.5",
        "route_label": "Ultra",
        "status_reads": [],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.0001000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_token",
            "label": "input token",
            "native_amount_usd_per_unit": "0.0000001",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "voyageai/rerank-2.5",
        "request_model_id": "voyageai/rerank-2.5",
        "route_label": "Ultra"
      }
    ],
    "name": "VoyageAI by MongoDB: rerank-2.5",
    "price": {
      "in": null,
      "in_label": null,
      "out": null,
      "out_label": null,
      "sort_in": null,
      "sort_out": null,
      "varies": true
    },
    "public_id": "voyageai/rerank-2.5",
    "short": "rerank-2.5 reorders a supplied set of text candidates by relevance to a query and optional natural-language instructions. It is a multilingual, quality-oriented reranker with a 32,000-token query–document context and ranked scores tied to the original candidate indices."
  },
  "renderer_schema": {
    "method_order": "Original DTO methods order; every exact route/format/path/caller survives.",
    "prices": "Original public DTO fields and original native display HTML; no flattened or normalized offers."
  },
  "representation": "exact-public-dto-and-native-renderer-html",
  "representationNotes": {
    "current_reference": {
      "about_json_pointer": "/aboutHtml",
      "methods": [
        {
          "contract_json_pointer": "/methods/0/rawMethod/contract",
          "html_json_pointer": "/methods/0/html",
          "method_ordinal": 0
        }
      ],
      "role": "current-semantic-reference"
    },
    "raw_input": {
      "examples_role": "historical-input-not-current-ready-examples",
      "json_pointers": [
        "/rawModel",
        "/methods/0/rawMethod"
      ],
      "role": "historical-owner-input"
    },
    "schema": "ailoot-native-model-representations-v1"
  },
  "schema": "ailoot-static-model-facts-v1",
  "schema_version": 1,
  "shortText": "rerank-2.5 reorders a supplied set of text candidates by relevance to a query and optional natural-language instructions. It is a multilingual, quality-oriented reranker with a 32,000-token query–document context and ranked scores tied to the original candidate indices.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "a2046262ed27a6d976ca8c419a0274a024397d0a9124bfb6a300e0b847be1009",
    "renderer_sha256": "fed50305bd3bcc4980ac14df23640efb8c1bc1e819f9d53643d6f43e8974d3fe"
  },
  "sourceRevision": "7491807c795587ea92e02284e48e7fac116f6f162542d6d687ed9acfda5558f3"
}
