{
  "aboutHtml": "<p>Voyage rerank-3-lite is the latency-focused edition of Voyage’s Rerank 3 series. It takes a text query and candidate documents, evaluates each query-document pair together, and returns relevance scores in ranked order. It serves the second stage of search: an embedding or keyword retriever finds the candidates, then Lite refines their order. The result is a ranking to use in search or a retrieval-augmented generation workflow.</p><p>What changes in Rerank 3 Lite The producer emphasizes stronger retrieval on long documents and code compared with rerank-2.5-lite. Both Rerank 3 editions retain instruction following and the same 32K context class, while Lite is designed for latency-sensitive applications. This makes it a practical candidate for interactive knowledge-base search, support-document retrieval and code lookup when users need relevant results promptly. Choose it on the quality and response-time requirements of the actual collection, rather than assuming that a smaller edition means a smaller context window.</p><p>Guide relevance with the query Natural-language instructions can accompany the query to explain what counts as relevant. Keep the question and the relevance preference concise and consistent. For a software support search, use “Find the procedure for resetting a device; prioritize instructions for the stated hardware revision.” For an ambiguous product name, include the product category so unrelated meanings do not dominate. A preference in the query guides semantic scoring; use explicit collection metadata to select the correct product, document version or access scope before building the candidate list.</p><p>Prepare a shortlist of text candidates The input documents are strings. Extract readable text from source material and retain useful titles, headings, identifiers and surrounding context. Keep a stable mapping from each input position to the original record. For a troubleshooting article, include the symptom and relevant procedure, not only a detached sentence. For source-code search, include the function and nearby information needed to distinguish it from similarly named functions. Remove repetitive navigation or boilerplate when it crowds out the useful passage.</p><p>The reranker can reorder only the documents it receives. If the first search never retrieves the relevant article, this stage cannot recover that missing candidate. Inspect both the shortlist and the final ordering when a result seems wrong. Where a long document covers many topics, separate coherent sections and retain their parent-document references so a relevant section can be selected without losing its source.</p><p>Context and request limits The maker’s current guide specifies a query maximum of 8,000 tokens and a combined maximum of 32,000 tokens for the query plus each individual document. It allows up to 1,000 candidate documents and a total request budget of 600,000 tokens, calculated as query tokens multiplied by document count, plus all document tokens. A long query therefore consumes space in every pair and contributes repeatedly to the aggregate budget. Count the submitted text with the appropriate model tokenizer rather than treating characters, words and tokens as interchangeable.</p><p>For example, a 500-token query with 100 documents of 4,000 tokens each accounts for 450,000 input tokens under that formula. This illustrates budgeting, not a recommended shortlist size or a measured speed result. The documented truncation option is enabled by default; oversized text can be shortened before scoring. Prepare important sections deliberately so truncation does not remove the very passage you need to match.</p><p>Read and use the result Results are sorted from highest relevance score downward. Each result identifies the document’s original input position, allowing the application to attach its own title, record identifier and source. The top_k setting controls how many ranked candidates are returned; without it, all candidates are returned. The maker’s REST interface can also return the document text. Retain the original identifiers alongside the selected results when showing a search page or passing evidence into an answer-generation step.</p><p>A relevance score expresses how well a candidate matches the query; it does not establish that the candidate’s statements are correct. Compare the highest-ranked items with the user’s actual question, including exclusions and document-version differences. If every candidate is irrelevant, a highest-ranked item still exists. Decide how your application handles that case using representative queries from the collection.</p><p>Upgrading and choosing the edition The maker describes rerank-3-lite as an upgrade to rerank-2.5-lite with unchanged API semantics and scores calibrated to the corresponding predecessor’s distribution. Preserve the existing record mapping and retrieval stage, then compare the resulting order on meaningful queries before relying on an established score cutoff. Use Lite for a search experience where response time matters; use the quality-focused rerank-3 edition as a comparison when relevance on difficult candidates is the stronger priority.</p>",
  "aboutText": "Voyage rerank-3-lite is the latency-focused edition of Voyage’s Rerank 3 series. It takes a text query and candidate documents, evaluates each query-document pair together, and returns relevance scores in ranked order. It serves the second stage of search: an embedding or keyword retriever finds the candidates, then Lite refines their order. The result is a ranking to use in search or a retrieval-augmented generation workflow.\n\nWhat changes in Rerank 3 Lite\nThe producer emphasizes stronger retrieval on long documents and code compared with rerank-2.5-lite. Both Rerank 3 editions retain instruction following and the same 32K context class, while Lite is designed for latency-sensitive applications. This makes it a practical candidate for interactive knowledge-base search, support-document retrieval and code lookup when users need relevant results promptly. Choose it on the quality and response-time requirements of the actual collection, rather than assuming that a smaller edition means a smaller context window.\n\nGuide relevance with the query\nNatural-language instructions can accompany the query to explain what counts as relevant. Keep the question and the relevance preference concise and consistent. For a software support search, use “Find the procedure for resetting a device; prioritize instructions for the stated hardware revision.” For an ambiguous product name, include the product category so unrelated meanings do not dominate. A preference in the query guides semantic scoring; use explicit collection metadata to select the correct product, document version or access scope before building the candidate list.\n\nPrepare a shortlist of text candidates\nThe input documents are strings. Extract readable text from source material and retain useful titles, headings, identifiers and surrounding context. Keep a stable mapping from each input position to the original record. For a troubleshooting article, include the symptom and relevant procedure, not only a detached sentence. For source-code search, include the function and nearby information needed to distinguish it from similarly named functions. Remove repetitive navigation or boilerplate when it crowds out the useful passage.\n\nThe reranker can reorder only the documents it receives. If the first search never retrieves the relevant article, this stage cannot recover that missing candidate. Inspect both the shortlist and the final ordering when a result seems wrong. Where a long document covers many topics, separate coherent sections and retain their parent-document references so a relevant section can be selected without losing its source.\n\nContext and request limits\nThe maker’s current guide specifies a query maximum of 8,000 tokens and a combined maximum of 32,000 tokens for the query plus each individual document. It allows up to 1,000 candidate documents and a total request budget of 600,000 tokens, calculated as query tokens multiplied by document count, plus all document tokens. A long query therefore consumes space in every pair and contributes repeatedly to the aggregate budget. Count the submitted text with the appropriate model tokenizer rather than treating characters, words and tokens as interchangeable.\n\nFor example, a 500-token query with 100 documents of 4,000 tokens each accounts for 450,000 input tokens under that formula. This illustrates budgeting, not a recommended shortlist size or a measured speed result. The documented truncation option is enabled by default; oversized text can be shortened before scoring. Prepare important sections deliberately so truncation does not remove the very passage you need to match.\n\nRead and use the result\nResults are sorted from highest relevance score downward. Each result identifies the document’s original input position, allowing the application to attach its own title, record identifier and source. The top_k setting controls how many ranked candidates are returned; without it, all candidates are returned. The maker’s REST interface can also return the document text. Retain the original identifiers alongside the selected results when showing a search page or passing evidence into an answer-generation step.\n\nA relevance score expresses how well a candidate matches the query; it does not establish that the candidate’s statements are correct. Compare the highest-ranked items with the user’s actual question, including exclusions and document-version differences. If every candidate is irrelevant, a highest-ranked item still exists. Decide how your application handles that case using representative queries from the collection.\n\nUpgrading and choosing the edition\nThe maker describes rerank-3-lite as an upgrade to rerank-2.5-lite with unchanged API semantics and scores calibrated to the corresponding predecessor’s distribution. Preserve the existing record mapping and retrieval stage, then compare the resulting order on meaningful queries before relying on an established score cutoff. Use Lite for a search experience where response time matters; use the quality-focused rerank-3 edition as a comparison when relevance on difficult candidates is the stronger priority.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "cc3ee47c11a0596d72ed891a7049eb6055be6fcbddd9b82d2ccbd320096deef0",
    "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-3-lite</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-3-lite</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-3-lite\">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\">Voyage rerank-3-lite scores and reorders candidate text documents for a query, with a focus on responsive search. It supports relevance instructions and a 32,000-token query-document window, making it useful after vector or keyword retrieval in search and RAG workflows.</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>Voyage rerank-3-lite is the latency-focused edition of Voyage’s Rerank 3 series. It takes a text query and candidate documents, evaluates each query-document pair together, and returns relevance scores in ranked order. It serves the second stage of search: an embedding or keyword retriever finds the candidates, then Lite refines their order. The result is a ranking to use in search or a retrieval-augmented generation workflow.</p><p>What changes in Rerank 3 Lite The producer emphasizes stronger retrieval on long documents and code compared with rerank-2.5-lite. Both Rerank 3 editions retain instruction following and the same 32K context class, while Lite is designed for latency-sensitive applications. This makes it a practical candidate for interactive knowledge-base search, support-document retrieval and code lookup when users need relevant results promptly. Choose it on the quality and response-time requirements of the actual collection, rather than assuming that a smaller edition means a smaller context window.</p><p>Guide relevance with the query Natural-language instructions can accompany the query to explain what counts as relevant. Keep the question and the relevance preference concise and consistent. For a software support search, use “Find the procedure for resetting a device; prioritize instructions for the stated hardware revision.” For an ambiguous product name, include the product category so unrelated meanings do not dominate. A preference in the query guides semantic scoring; use explicit collection metadata to select the correct product, document version or access scope before building the candidate list.</p><p>Prepare a shortlist of text candidates The input documents are strings. Extract readable text from source material and retain useful titles, headings, identifiers and surrounding context. Keep a stable mapping from each input position to the original record. For a troubleshooting article, include the symptom and relevant procedure, not only a detached sentence. For source-code search, include the function and nearby information needed to distinguish it from similarly named functions. Remove repetitive navigation or boilerplate when it crowds out the useful passage.</p><p>The reranker can reorder only the documents it receives. If the first search never retrieves the relevant article, this stage cannot recover that missing candidate. Inspect both the shortlist and the final ordering when a result seems wrong. Where a long document covers many topics, separate coherent sections and retain their parent-document references so a relevant section can be selected without losing its source.</p><p>Context and request limits The maker’s current guide specifies a query maximum of 8,000 tokens and a combined maximum of 32,000 tokens for the query plus each individual document. It allows up to 1,000 candidate documents and a total request budget of 600,000 tokens, calculated as query tokens multiplied by document count, plus all document tokens. A long query therefore consumes space in every pair and contributes repeatedly to the aggregate budget. Count the submitted text with the appropriate model tokenizer rather than treating characters, words and tokens as interchangeable.</p><p>For example, a 500-token query with 100 documents of 4,000 tokens each accounts for 450,000 input tokens under that formula. This illustrates budgeting, not a recommended shortlist size or a measured speed result. The documented truncation option is enabled by default; oversized text can be shortened before scoring. Prepare important sections deliberately so truncation does not remove the very passage you need to match.</p><p>Read and use the result Results are sorted from highest relevance score downward. Each result identifies the document’s original input position, allowing the application to attach its own title, record identifier and source. The top_k setting controls how many ranked candidates are returned; without it, all candidates are returned. The maker’s REST interface can also return the document text. Retain the original identifiers alongside the selected results when showing a search page or passing evidence into an answer-generation step.</p><p>A relevance score expresses how well a candidate matches the query; it does not establish that the candidate’s statements are correct. Compare the highest-ranked items with the user’s actual question, including exclusions and document-version differences. If every candidate is irrelevant, a highest-ranked item still exists. Decide how your application handles that case using representative queries from the collection.</p><p>Upgrading and choosing the edition The maker describes rerank-3-lite as an upgrade to rerank-2.5-lite with unchanged API semantics and scores calibrated to the corresponding predecessor’s distribution. Preserve the existing record mapping and retrieval stage, then compare the resulting order on meaningful queries before relying on an established score cutoff. Use Lite for a search experience where response time matters; use the quality-focused rerank-3 edition as a comparison when relevance on difficult candidates is the stronger priority.</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-3-lite</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.00004</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-2700-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2700-panel-0\" aria-selected=\"true\" tabindex=\"0\">Retained official request structure; documentary example</button><button class=\"cg-tab\" id=\"model-code-2700-tab-1\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2700-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-2700-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-2700-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-3-lite&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-2700-panel-1\" role=\"tabpanel\" aria-labelledby=\"model-code-2700-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-3-lite&#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-3-lite&amp;route=Ultra&amp;caller=voyageai%2Frerank-3-lite&amp;fmt=rerank\"><code>voyageai/rerank-3-lite</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-3-lite&amp;route=Ultra&amp;caller=voyageai%2Frerank-3-lite&amp;fmt=rerank\"><code>voyageai/rerank-3-lite</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "voyageai/rerank-3-lite",
        "fmt": "rerank",
        "http": "POST",
        "path": "/v1/rerank",
        "request_model_id": "voyageai/rerank-3-lite",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|rerank|/v1/rerank|voyageai%2Frerank-3-lite",
      "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-3-lite"
                ],
                "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-3-lite"
                  ],
                  "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.00004000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_token",
                "label": "input token",
                "native_amount_usd_per_unit": "0.00000004",
                "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-3-lite\",\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-3-lite'\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": 4e-08
          }
        },
        "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.00004000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_token",
                "label": "input token",
                "native_amount_usd_per_unit": "0.00000004",
                "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-3-lite",
        "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.00004000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_token",
            "label": "input token",
            "native_amount_usd_per_unit": "0.00000004",
            "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-3-lite",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "a09c3a7f27c4b9e76a404732ff346b7e7c5eba2073c78ca524896f9e1ac3ab35",
    "input_html_sha256": "efbec91a9bfcaeb8135d0d5ff30e1d6c6038b58863a2cfa208ad29a82fb50e90",
    "private_audit_sha256": "1c672444b62316c86a395c039c81de63afebde43d3100354e4eab96c42939468",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/en/voyageai-rerank-3-lite/",
    "description": "Voyage rerank-3-lite scores and reorders candidate text documents for a query, with a focus on responsive search. It supports relevance instructions and a 32,000-token query-document window, making it useful after vector or keyword retrieval in search and RAG workflows.",
    "locale": "en",
    "md_url": "https://ailoot.ai/models/en/voyageai-rerank-3-lite/index.md",
    "title": "VoyageAI by MongoDB: rerank-3-lite — Ailoot",
    "url": "https://ailoot.ai/models/en/voyageai-rerank-3-lite/"
  },
  "rawModel": {
    "about": "Voyage rerank-3-lite is the latency-focused edition of Voyage’s Rerank 3 series. It takes a text query and candidate documents, evaluates each query-document pair together, and returns relevance scores in ranked order. It serves the second stage of search: an embedding or keyword retriever finds the candidates, then Lite refines their order. The result is a ranking to use in search or a retrieval-augmented generation workflow.\n\nWhat changes in Rerank 3 Lite\nThe producer emphasizes stronger retrieval on long documents and code compared with rerank-2.5-lite. Both Rerank 3 editions retain instruction following and the same 32K context class, while Lite is designed for latency-sensitive applications. This makes it a practical candidate for interactive knowledge-base search, support-document retrieval and code lookup when users need relevant results promptly. Choose it on the quality and response-time requirements of the actual collection, rather than assuming that a smaller edition means a smaller context window.\n\nGuide relevance with the query\nNatural-language instructions can accompany the query to explain what counts as relevant. Keep the question and the relevance preference concise and consistent. For a software support search, use “Find the procedure for resetting a device; prioritize instructions for the stated hardware revision.” For an ambiguous product name, include the product category so unrelated meanings do not dominate. A preference in the query guides semantic scoring; use explicit collection metadata to select the correct product, document version or access scope before building the candidate list.\n\nPrepare a shortlist of text candidates\nThe input documents are strings. Extract readable text from source material and retain useful titles, headings, identifiers and surrounding context. Keep a stable mapping from each input position to the original record. For a troubleshooting article, include the symptom and relevant procedure, not only a detached sentence. For source-code search, include the function and nearby information needed to distinguish it from similarly named functions. Remove repetitive navigation or boilerplate when it crowds out the useful passage.\n\nThe reranker can reorder only the documents it receives. If the first search never retrieves the relevant article, this stage cannot recover that missing candidate. Inspect both the shortlist and the final ordering when a result seems wrong. Where a long document covers many topics, separate coherent sections and retain their parent-document references so a relevant section can be selected without losing its source.\n\nContext and request limits\nThe maker’s current guide specifies a query maximum of 8,000 tokens and a combined maximum of 32,000 tokens for the query plus each individual document. It allows up to 1,000 candidate documents and a total request budget of 600,000 tokens, calculated as query tokens multiplied by document count, plus all document tokens. A long query therefore consumes space in every pair and contributes repeatedly to the aggregate budget. Count the submitted text with the appropriate model tokenizer rather than treating characters, words and tokens as interchangeable.\n\nFor example, a 500-token query with 100 documents of 4,000 tokens each accounts for 450,000 input tokens under that formula. This illustrates budgeting, not a recommended shortlist size or a measured speed result. The documented truncation option is enabled by default; oversized text can be shortened before scoring. Prepare important sections deliberately so truncation does not remove the very passage you need to match.\n\nRead and use the result\nResults are sorted from highest relevance score downward. Each result identifies the document’s original input position, allowing the application to attach its own title, record identifier and source. The top_k setting controls how many ranked candidates are returned; without it, all candidates are returned. The maker’s REST interface can also return the document text. Retain the original identifiers alongside the selected results when showing a search page or passing evidence into an answer-generation step.\n\nA relevance score expresses how well a candidate matches the query; it does not establish that the candidate’s statements are correct. Compare the highest-ranked items with the user’s actual question, including exclusions and document-version differences. If every candidate is irrelevant, a highest-ranked item still exists. Decide how your application handles that case using representative queries from the collection.\n\nUpgrading and choosing the edition\nThe maker describes rerank-3-lite as an upgrade to rerank-2.5-lite with unchanged API semantics and scores calibrated to the corresponding predecessor’s distribution. Preserve the existing record mapping and retrieval stage, then compare the resulting order on meaningful queries before relying on an established score cutoff. Use Lite for a search experience where response time matters; use the quality-focused rerank-3 edition as a comparison when relevance on difficult candidates is the stronger priority.",
    "alias_of": null,
    "aliases": [],
    "author": "VoyageAI by MongoDB",
    "available": null,
    "canonical_model": "voyageai/rerank-3-lite",
    "capabilities": {
      "context_length": 32000,
      "manufacturer_input": [
        "text"
      ],
      "manufacturer_output": [
        "rerank"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.00004000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_token",
            "label": "input token",
            "native_amount_usd_per_unit": "0.00000004",
            "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-3-lite",
    "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-3-lite"
                ],
                "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-3-lite"
                  ],
                  "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.00004000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_token",
                "label": "input token",
                "native_amount_usd_per_unit": "0.00000004",
                "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-3-lite\",\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-3-lite'\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": 4e-08
          }
        },
        "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.00004000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_token",
                "label": "input token",
                "native_amount_usd_per_unit": "0.00000004",
                "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-3-lite",
        "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.00004000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_token",
            "label": "input token",
            "native_amount_usd_per_unit": "0.00000004",
            "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-3-lite",
        "request_model_id": "voyageai/rerank-3-lite",
        "route_label": "Ultra"
      }
    ],
    "name": "VoyageAI by MongoDB: rerank-3-lite",
    "price": {
      "in": null,
      "in_label": null,
      "out": null,
      "out_label": null,
      "sort_in": null,
      "sort_out": null,
      "varies": true
    },
    "public_id": "voyageai/rerank-3-lite",
    "short": "Voyage rerank-3-lite scores and reorders candidate text documents for a query, with a focus on responsive search. It supports relevance instructions and a 32,000-token query-document window, making it useful after vector or keyword retrieval in search and RAG workflows."
  },
  "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": "Voyage rerank-3-lite scores and reorders candidate text documents for a query, with a focus on responsive search. It supports relevance instructions and a 32,000-token query-document window, making it useful after vector or keyword retrieval in search and RAG workflows.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "0fc5735b9a4820322fef4d7e699febdfc91b5c95efdb5a665c3f18a8745eaefb",
    "renderer_sha256": "fed50305bd3bcc4980ac14df23640efb8c1bc1e819f9d53643d6f43e8974d3fe"
  },
  "sourceRevision": "013fbee5fcbe3b4c4395f0e84ab11d81c980e53804aed1ab96c0478d5bf6951b"
}
