bge-reranker-v2-m3 is a multilingual reranking model that scores retrieved candidates against your query and re-sorts them — the cheapest meaningful upgrade to RAG retrieval quality. Available on APIYI at /v1/rerank, $0.01 per 1M tokens.
bge-reranker-v2-m3 is an open-source multilingual reranking model from BAAI. It solves the single most common failure in retrieval systems: vector search pulled the right documents back, but the ones at the top aren’t the ones that actually answer the question.APIYI exposes the standard /v1/rerank endpoint — one token, same key as every other model.
Model name: bge-reranker-v2-m3 (case-sensitive). Endpoint: POST /v1/rerank.
Available in the default and svip groups.
Every number on this page comes from APIYI testing on 2026-07-30 (UTC+8), 60+ test cases.
A reranker is a cross-encoder: it concatenates your query with each candidate document, runs the pair through the model, and emits a relevance score directly.That is fundamentally different from an embedding model:
Embedding (vector search)
Rerank
How it computes
Query and document are encoded separately, then compared by distance
Query and document go through the model together
Can it be pre-indexed?
✅ Document vectors are computed offline and stored in a vector DB
❌ Needs the query to compute anything — nothing can be precomputed
Speed
Fast; milliseconds over millions of documents
Slow; scales with candidate count
Accuracy
Moderate
High
Role
Recall: pull dozens of documents out of millions
Precision: pick the best few out of dozens
So it does not replace vector search — it’s the second stage that sits behind it.
A reranker cannot build an index and cannot do retrieval. It has no vector output and cannot
process documents without a query. If what you want is “put my documents in a vector database,”
you want text embeddings, not this model.
Same 10 candidate documents, same query (“My API requests keep returning 429 — how do I fix it?”), only the ranking method changes:
Ranking method
nDCG@3
P@3
What landed in the top 3
Vector similarity only (text-embedding-3-small)
0.53
0.33
Direct answer, a glossary of 4xx status codes, a datacenter maintenance notice
Plus bge-reranker-v2-m3
1.00
1.00
Direct answer, direct answer, exponential-backoff explainer
Vector search put an HTTP-4xx glossary and a maintenance notice mentioning “April 29” into the top 3. Both are topically close and share vocabulary with the query — but neither answers it. The reranker pushed both down.That is the whole value proposition: it separates “same topic” from “actually answers the question.”
Cheap enough to ignore. Reranking 100 candidates (~2,700 tokens) costs about $0.000027.
A million such calls comes to $27. Reranking is almost never the cost bottleneck in a RAG system —
latency is the constraint, not money. Tune candidate-set size against latency, not spend.
Usage semantics (measured):
prompt_tokens = the query (counted once) plus every candidate document. Strictly linear in practice: ≈ 26.9 × doc count + 7 (fit error < 0.31%), so you can predict it client-side
total_tokens is larger, and the gap grows with candidate count — consistent with the query being counted once per query-document pair
input_tokens / output_tokens are always 0 on this channel — don’t use them
top_n and return_documentsdo not change usage — every candidate is scored either way
This round could not confirm from billing records whether charges follow prompt_tokens or
total_tokens (the test token can’t read the account balance endpoint). At 100 candidates the
two differ by about 45%. For cost-sensitive work, treat the console invoice as authoritative
rather than computing spend from the usage fields.
curl https://api.apiyi.com/v1/rerank \ -H "Authorization: Bearer $APIYI_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "bge-reranker-v2-m3", "query": "What are the must-see attractions in Hangzhou?", "documents": [ "West Lake is Hangzhou'\''s most famous attraction, known for Broken Bridge and Leifeng Pagoda.", "The Bund in Shanghai sits along the Huangpu River and is the city'\''s signature landmark.", "Lingyin Temple, in Hangzhou'\''s West Lake district, is a well-known Buddhist temple." ], "top_n": 2 }'
import os, requestsresp = requests.post( "https://api.apiyi.com/v1/rerank", headers={"Authorization": f"Bearer {os.environ['APIYI_API_KEY']}"}, json={ "model": "bge-reranker-v2-m3", "query": "What are the must-see attractions in Hangzhou?", "documents": [ "West Lake is Hangzhou's most famous attraction, known for Broken Bridge and Leifeng Pagoda.", "The Bund in Shanghai sits along the Huangpu River and is the city's signature landmark.", "Lingyin Temple, in Hangzhou's West Lake district, is a well-known Buddhist temple.", ], "top_n": 2, }, timeout=60,).json()for r in resp["results"]: print(f"{r['relevance_score']:.4f} {r['document']['text']}")
const resp = await fetch('https://api.apiyi.com/v1/rerank', { method: 'POST', headers: { Authorization: `Bearer ${process.env.APIYI_API_KEY}`, 'Content-Type': 'application/json', }, body: JSON.stringify({ model: 'bge-reranker-v2-m3', query: 'What are the must-see attractions in Hangzhou?', documents: [ "West Lake is Hangzhou's most famous attraction, known for Broken Bridge and Leifeng Pagoda.", "The Bund in Shanghai sits along the Huangpu River and is the city's signature landmark.", "Lingyin Temple, in Hangzhou's West Lake district, is a well-known Buddhist temple.", ], top_n: 2, }),});const data = await resp.json();data.results.forEach((r) => console.log(r.relevance_score, r.document.text));
Response:
{ "results": [ { "document": { "text": "West Lake is Hangzhou's most famous attraction..." }, "index": 0, "relevance_score": 0.97265625 }, { "document": { "text": "Lingyin Temple, in Hangzhou's West Lake district..." }, "index": 2, "relevance_score": 0.1181640625 } ], "usage": { "prompt_tokens": 70, "total_tokens": 91 }}
index is the field that matters. It is the document’s original position in the
documents array you sent. Use it to look up your own document object (ID, URL, metadata) —
don’t try to match on the returned text.
1. relevance_score is not a confidence value comparable across queries
The instinct is to “just filter at 0.5.” Measured data says that breaks things:
Case
Score range for genuinely relevant docs
Chinese query × Chinese documents
0.289 – 1.000 (median 0.948)
Same-language, non-Chinese (JA/KO/RU/FR/AR)
0.005 – 0.998 (median 0.241)
Cross-lingual (ZH ↔ EN)
0.0038 – 0.205
Irrelevant distractor with heavy keyword overlap
peaked at 0.945
A 0.5 threshold would discard every correct cross-lingual result and most second-place hits
in non-Chinese languages, while admitting a document about apple farming prices for the
query “Apple Inc. FY2024 revenue.”What to do instead: treat it as a sort key, not a confidence. If you must filter, use a
relative threshold (score >= top1_score × 0.3) or just take Top-N, and calibrate on your own
labelled data.
2. Negation is a clear weakness of this model
Query: “Which attractions are good to visit in winter?” Two candidates explicitly say the
opposite:
Rank
Score
Document
Actually relevant?
#1
0.811
Harbin Ice and Snow World… top winter destination
✅
#2
0.769
Beidaihe… not suitable for winter tourism
❌
#3
0.531
Qinghai Lake… not recommended in winter
❌
#4
0.375
Wusong Island… a must-see in winter
✅
#5
0.289
Sanya… popular winter escape
✅
The model matched the topic “winter + attractions + travel” and did not process the negation.
nDCG@3 came out at just 0.47.Mitigation: for queries involving negation, exclusion or conditionals (“gluten-free”,
“anywhere except Beijing”, “not applicable to minors”), add an LLM verification pass after
reranking — do not hand the Top-N straight to users.
3. Long documents both dilute relevance and inflate noise
Same matching sentence, padded with varying amounts of unrelated filler:
Total length
Score, match at start
Score, match at end
528 chars
0.933
0.720
1028 chars
0.931
0.500
4028 chars
0.907
0.351
8028 chars
0.828
0.181
And length inflates irrelevant documents too: the same non-matching document scored 0.029
short and 0.121 padded — 4× higher.Mitigation: chunk long documents to 200–500 characters before reranking, and take the
highest-scoring chunk as the document’s score. Chunking is the single highest-leverage
preprocessing step for this model.
Full tuning method — chunking, thresholds, recall sizing — is in RAG tuning in practice.
return_documents has no effect (measured 2026-07-30). Whether you pass true, false, or
omit it entirely, document.text is echoed back. For bandwidth-sensitive workloads (large
candidate sets with long documents) the response is much bigger than expected — map results back
by index yourself instead of relying on this flag.
A wrong model name returns 503, not 404. The message reads
Current group default has no available channels for model xxx. The name is case-sensitive —
BGE-Reranker-v2-M3 is treated as a nonexistent model. If you get a 503 during integration,
check spelling before assuming a channel outage.
Upstream quota is this model’s hardest constraint — budget your tokens before you integrate.The upstream (Huawei Cloud MaaS) allows TPM 20,000 / RPM 120 for this model. The BGE-M3
embedding model on the same platform gets 1,200,000 TPM — 60× more.Testing separated two independent mechanisms:
Mechanism
Measured behaviour
~4–5 concurrent in-flight slots
10 concurrent → 4 succeed; 20 concurrent → 5 succeed (tokens only 3–4% of TPM); 20 serial requests → 20/20 succeed
TPM 20,000 sliding window
Trips even with zero concurrency: firing 1.3K-token requests serially, the 8th returns 429 at 16,093 cumulative tokens, 9 in a row fail, then the window slides and it recovers
Requests beyond the slot limit are rejected outright, not queued, and both failures return the
identical message upstream load saturated — you cannot tell them apart from the response, so you
have to budget for them.Recommendation: cap concurrency at 4, add exponential backoff, and size your throughput
against the table below.
Using the measured ≈26.9 tokens/document against TPM 20,000:
Candidates per query
Tokens per call
Theoretical ceiling
50
673
~29 / min
100
1,325
~15 / min
200
2,629
~7 / min
This also explains why a single request can’t carry too many candidates: 1000 candidates is
26,867 tokens — one request consuming 134% of the entire minute’s budget, so it is guaranteed
to 429. At 2000 candidates it’s 269%.
Quota expansion is in progress. The TPM 20,000 above is the upstream’s initial allocation, and
APIYI has already applied to have it raised. If your workload exceeds what the table allows,
contact APIYI support to have the upstream quota reviewed rather than scaling your design down
to fit the current number.
/v1/rerank is the only valid path. Requesting /rerank or /v2/rerank (the Cohere v2 SDK’s
default) returns HTTP 200 with the website’s HTML homepage, not a JSON 404 — clients just see a
confusing parse error. If an integration reports “unparseable response,” check for the /v1 first.
Vector search alone: workable, but Top-N precision is markedly worse (measured nDCG@3 drops from
1.00 to 0.53).Reranking alone: no. It has no vector output and needs a candidate set. Scoring millions of
documents one by one is neither practical nor affordable.The standard shape is two-stage: recall 50–100 with vectors/BM25 → rerank down to 3–5 → feed
the LLM.
How many candidates should I recall?
Measured latency scales roughly linearly with candidate count (short documents): 10 ≈ 2 s,
100 ≈ 4 s, 500 ≈ 15 s, 1000 ≈ 33 s.50–100 is the sweet spot. Below 20, there isn’t much mis-ranking left for the reranker to
fix. Above 200, latency starts hurting interactivity while the tail of the recall list rarely
contains the answer anyway.Budget matters too: 100 candidates is ~1,325 tokens, so TPM 20,000 allows only ~15 searches per
minute. Double the candidates and you halve throughput — candidate count is a capacity
decision as much as a quality one.
Can I point the Cohere or Jina SDK at it?
The cohere SDK v2 does not work as-is: it targets /v2/rerank, which returns the HTML
homepage instead of JSON, so the SDK throws a parse error.The parameter names (query / documents / top_n / return_documents) do match Cohere Rerank
v1, but documentsonly accepts a string array ([{"text": "..."}] returns 400) and the
response has no id / meta fields. Wrapping the HTTP call yourself is simplest —
RAG tuning in practice has ready-made
LangChain and LlamaIndex adapters.Verified working clients: plain requests POST ✅, and the openai SDK escape hatch
client.post("/rerank", ...) ✅.
Can I cache results?
Yes, and it’s very stable. Repeating an identical request 10 times is bit-identical (zero
drift). Drift of ~3.7e-4 appears only when you shuffle the candidate order (bf16 batching
jitter), and ordering is unaffected.Key your cache on normalised query + ordered hash of document contents. Because order
introduces that small drift, do not treat relevance_score itself as an idempotency key.
What happens past 8192 tokens?
You get a 400 with This model's maximum context length is 8192 tokens. It does not silently
truncate. The limit applies per query-document pair, not to the request as a whole — a single
request with 400 documents × 1000 characters (330K tokens total) returns normally.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"API易文档中心","description":"企业级专业稳定的AI大模型API中转站,一个令牌、无限模型。支持OpenAI、Claude、Gemini、DeepSeek、Qwen等400+热门AI模型。","colors":{"primary":"#2563eb","light":"#3b82f6","dark":"#1d4ed8"},"logo":{"light":"https://mintcdn.com/apiyillc/LjCT1O0GrSur6F2v/logo/light.svg?fit=max\u0026auto=format\u0026n=LjCT1O0GrSur6F2v\u0026q=85\u0026s=4119ef17a74cc54be127f34578d8b5fa","dark":"https://mintcdn.com/apiyillc/LjCT1O0GrSur6F2v/logo/dark.svg?fit=max\u0026auto=format\u0026n=LjCT1O0GrSur6F2v\u0026q=85\u0026s=1f046ae9580247d96549ade642b5ecc4"},"favicon":"https://mintcdn.com/apiyillc/OMY6ItCc2mC1yzgA/logo/logo.webp?fit=max\u0026auto=format\u0026n=OMY6ItCc2mC1yzgA\u0026q=85\u0026s=62a7977ef801070e689df2d0291b9d13","api":{"openapi":["api-reference/nano-banana-2-generate-openapi.yaml","api-reference/nano-banana-2-edit-openapi.yaml","api-reference/nano-banana-2-generate-openapi-en.yaml","api-reference/nano-banana-2-edit-openapi-en.yaml","api-reference/nano-banana-pro-generate-openapi.yaml","api-reference/nano-banana-pro-edit-openapi.yaml","api-reference/nano-banana-pro-generate-openapi-en.yaml","api-reference/nano-banana-pro-edit-openapi-en.yaml","api-reference/gpt-image-2-all-generate-openapi.yaml","api-reference/gpt-image-2-all-edit-openapi.yaml","api-reference/gpt-image-2-all-generate-openapi-en.yaml","api-reference/gpt-image-2-all-edit-openapi-en.yaml","api-reference/gpt-image-2-all-chat-openapi.yaml","api-reference/gpt-image-2-all-chat-openapi-en.yaml","api-reference/gpt-image-2-vip-generate-openapi.yaml","api-reference/gpt-image-2-vip-edit-openapi.yaml","api-reference/gpt-image-2-vip-chat-openapi.yaml","api-reference/gpt-image-2-vip-generate-openapi-en.yaml","api-reference/gpt-image-2-vip-edit-openapi-en.yaml","api-reference/gpt-image-2-vip-chat-openapi-en.yaml"],"playground":{"display":"interactive","proxy":true},"examples":{"defaults":"required"}},"navbar":{"links":[{"href":"https://api.apiyi.com","label":"首页"},{"href":"https://imagen.apiyi.com","label":"AI出图"},{"href":"https://icover.ai","label":"AI视频"}],"primary":{"type":"button","label":"控制台","href":"https://api.apiyi.com/account/profile"}},"footer":{"socials":{"website":"https://api.apiyi.com"},"links":[{"header":"AI 集成","items":[{"label":"skill.md","href":"https://docs.apiyi.com/skill.md"},{"label":"llms.txt","href":"https://docs.apiyi.com/llms.txt"},{"label":"llms-full.txt","href":"https://docs.apiyi.com/llms-full.txt"},{"label":"model-registry.json","href":"https://docs.apiyi.com/model-registry.json"},{"label":"AI 开发者套件(中文)","href":"/developer-kit"},{"label":"AI Developer Kit (EN)","href":"/en/developer-kit"}]},{"header":"用户口碑 / Wall of Love","items":[{"label":"用户口碑(中文)","href":"/wall-of-love"},{"label":"Wall of Love (EN)","href":"/en/wall-of-love"}]}]},"seo":{"indexing":"all"},"icons":{"library":"lucide"},"banner":{"content":"🚀 **gemini-4-argon 和 Nano Banana 2.1 均已上线 | Now Live**:[详情 Details](https://docs.apiyi.com/changelog)","dismissible":true},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","aistudio"],"display":"header"},"metadata":{"timestamp":false},"styling":{"latex":true},"navigation":{"global":{"anchors":[]},"languages":[{"language":"zh","href":""},{"language":"en","navbar":{"links":[{"href":"https://api.apiyi.com","label":"Home"},{"href":"https://imagen.apiyi.com","label":"AI Image"},{"href":"https://icover.ai","label":"AI Video"}],"primary":{"type":"button","label":"Console","href":"https://api.apiyi.com/account/profile"}},"href":"en"},{"language":"zh-Hant","banner":{"content":"本頁由程式自動轉換為繁體中文,用詞以台灣正體為準;如有歧義請以[簡體中文版](/)為準。","dismissible":true},"footer":{"socials":{"website":"https://api.apiyi.com"},"links":[{"header":"AI 整合","items":[{"label":"skill.md","href":"https://docs.apiyi.com/skill.md"},{"label":"llms.txt","href":"https://docs.apiyi.com/llms.txt"},{"label":"llms-full.txt","href":"https://docs.apiyi.com/llms-full.txt"},{"label":"model-registry.json","href":"https://docs.apiyi.com/model-registry.json"},{"label":"AI 開發者套件(中文)","href":"/developer-kit"},{"label":"AI Developer Kit (EN)","href":"/en/developer-kit"}]},{"header":"使用者口碑 / Wall of Love","items":[{"label":"使用者口碑(中文)","href":"/wall-of-love"},{"label":"Wall of Love (EN)","href":"/en/wall-of-love"}]}]},"navbar":{"links":[{"href":"https://api.apiyi.com","label":"首頁"},{"href":"https://imagen.apiyi.com","label":"AI出圖"},{"href":"https://icover.ai","label":"AI影片"}],"primary":{"type":"button","label":"控制台","href":"https://api.apiyi.com/account/profile"}},"href":"zh-Hant"},{"language":"ja","banner":{"content":"このページは AI により翻訳されています。内容に相違がある場合は[English 版](/en)を正としてください。","dismissible":true},"footer":{"socials":{"website":"https://api.apiyi.com"},"links":[{"header":"AI統合","items":[{"label":"skill.md","href":"https://docs.apiyi.com/skill.md"},{"label":"llms.txt","href":"https://docs.apiyi.com/llms.txt"},{"label":"llms-full.txt","href":"https://docs.apiyi.com/llms-full.txt"},{"label":"model-registry.json","href":"https://docs.apiyi.com/model-registry.json"},{"label":"AI開発者キット(中国語)","href":"/developer-kit"},{"label":"AI Developer Kit (EN)","href":"/en/developer-kit"}]},{"header":"ユーザーの声 / Wall of Love","items":[{"label":"ユーザーの声(中国語)","href":"/wall-of-love"},{"label":"Wall of Love(英語)","href":"/en/wall-of-love"}]}]},"navbar":{"links":[{"href":"https://api.apiyi.com","label":"ホーム"},{"href":"https://imagen.apiyi.com","label":"AI画像生成"},{"href":"https://icover.ai","label":"AI動画生成"}],"primary":{"type":"button","label":"コンソール","href":"https://api.apiyi.com/account/profile"}},"href":"ja"},{"language":"ko","banner":{"content":"이 페이지는 AI로 번역되었습니다. 내용이 다를 경우 [English 버전](/en)을 기준으로 하십시오.","dismissible":true},"footer":{"socials":{"website":"https://api.apiyi.com"},"links":[{"header":"AI 통합","items":[{"label":"skill.md","href":"https://docs.apiyi.com/skill.md"},{"label":"llms.txt","href":"https://docs.apiyi.com/llms.txt"},{"label":"llms-full.txt","href":"https://docs.apiyi.com/llms-full.txt"},{"label":"model-registry.json","href":"https://docs.apiyi.com/model-registry.json"},{"label":"AI 개발자 키트(중국어)","href":"/developer-kit"},{"label":"AI Developer Kit (EN)","href":"/en/developer-kit"}]},{"header":"사용자 후기 / Wall of Love","items":[{"label":"사용자 후기(중국어)","href":"/wall-of-love"},{"label":"Wall of Love (영문)","href":"/en/wall-of-love"}]}]},"navbar":{"links":[{"href":"https://api.apiyi.com","label":"홈"},{"href":"https://imagen.apiyi.com","label":"AI 이미지 생성"},{"href":"https://icover.ai","label":"AI 동영상 생성"}],"primary":{"type":"button","label":"콘솔","href":"https://api.apiyi.com/account/profile"}},"href":"ko"},{"language":"ru","banner":{"content":"Эта страница переведена с помощью ИИ. При расхождениях ориентируйтесь на [английскую версию](/en).","dismissible":true},"footer":{"socials":{"website":"https://api.apiyi.com"},"links":[{"header":"AI-интеграция","items":[{"label":"skill.md","href":"https://docs.apiyi.com/skill.md"},{"label":"llms.txt","href":"https://docs.apiyi.com/llms.txt"},{"label":"llms-full.txt","href":"https://docs.apiyi.com/llms-full.txt"},{"label":"model-registry.json","href":"https://docs.apiyi.com/model-registry.json"},{"label":"Набор AI-разработчика (кит.)","href":"/developer-kit"},{"label":"AI Developer Kit (EN)","href":"/en/developer-kit"}]},{"header":"Отзывы пользователей / Wall of Love","items":[{"label":"Отзывы пользователей (на китайском)","href":"/wall-of-love"},{"label":"Wall of Love (EN)","href":"/en/wall-of-love"}]}]},"navbar":{"links":[{"href":"https://api.apiyi.com","label":"Главная"},{"href":"https://imagen.apiyi.com","label":"Генерация изображений"},{"href":"https://icover.ai","label":"Генерация видео"}],"primary":{"type":"button","label":"Консоль","href":"https://api.apiyi.com/account/profile"}},"href":"ru"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"apiyillc","hasAudioNarration":false,"actualSubdomain":"apiyillc","customDomains":["docs.apiyi.com"],"gitSource":{"type":"github","owner":"pdmaker","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae226a4d8e06e769d47ea63","collectionId":"e53ceddc-1e2c-4a37-b7c7-dd23d8cee283","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae226a4d8e06e769d47ea63"},"feedback":{"thumbs":true,"agentFeedback":true},"entitlements":{},"buildId":"6ae226a4d8e06e769d47ea63","clientVersion":"0.0.4006","searchFilterCounts":[{"language":"zh","tag":"首页","count":213},{"language":"en","tag":"Home","count":213},{"language":"ja","tag":"ホーム","count":213},{"language":"ko","tag":"홈","count":213},{"language":"ru","tag":"Главная","count":213},{"language":"zh-Hant","tag":"首頁","count":213},{"language":"zh","tag":"图片 API(官转)","count":80},{"language":"en","tag":"Image API (Official)","count":80},{"language":"ja","tag":"画像API(公式)","count":80},{"language":"ko","tag":"이미지 API (공식)","count":80},{"language":"ru","tag":"Image API (официальный)","count":80},{"language":"zh-Hant","tag":"圖片 API(官轉)","count":80},{"language":"zh","tag":"公告","count":76},{"language":"en","tag":"Announcements","count":76},{"language":"zh","tag":"AI风向标","count":73},{"language":"en","tag":"AI Radar","count":73},{"language":"zh","tag":"常见问题","count":63},{"language":"en","tag":"FAQ","count":63},{"language":"ja","tag":"FAQ","count":63},{"language":"ko","tag":"FAQ","count":63},{"language":"ru","tag":"FAQ","count":63},{"language":"zh-Hant","tag":"常見問題","count":63},{"language":"zh","tag":"使用场景","count":50},{"language":"en","tag":"Use Cases","count":50},{"language":"ja","tag":"活用例","count":50},{"language":"ko","tag":"활용 사례","count":50},{"language":"ru","tag":"Сценарии использования","count":50},{"language":"zh-Hant","tag":"使用場景","count":50},{"language":"zh","tag":"基础 API","count":47},{"language":"en","tag":"Basic API","count":47},{"language":"ja","tag":"基本API","count":47},{"language":"ko","tag":"기본 API","count":47},{"language":"ru","tag":"Базовый API","count":47},{"language":"zh-Hant","tag":"基礎 API","count":47},{"language":"zh","tag":"视频 API(官转)","count":38},{"language":"en","tag":"Video API (Official)","count":38},{"language":"ja","tag":"動画API(公式)","count":38},{"language":"ko","tag":"동영상 API (공식)","count":38},{"language":"ru","tag":"Video API (официальный)","count":38},{"language":"zh-Hant","tag":"影片 API(官轉)","count":38},{"language":"zh","tag":"模型价格","count":35},{"language":"en","tag":"Model Pricing","count":35},{"language":"ja","tag":"モデル料金","count":35},{"language":"ko","tag":"모델 요금","count":35},{"language":"ru","tag":"Цены на модели","count":35},{"language":"zh-Hant","tag":"模型價格","count":35},{"language":"zh","tag":"文本生成","count":27},{"language":"en","tag":"Text Generation","count":27},{"language":"ja","tag":"テキスト生成","count":27},{"language":"ko","tag":"텍스트 생성","count":27},{"language":"ru","tag":"Генерация текста","count":27},{"language":"zh-Hant","tag":"文本生成","count":27},{"language":"ja","tag":"課金とセキュリティ","count":17},{"language":"ko","tag":"결제 및 보안","count":17},{"language":"ru","tag":"Оплата и безопасность","count":17},{"language":"zh-Hant","tag":"充值與安全","count":17},{"language":"ja","tag":"NanoBananaベストプラクティス","count":15},{"language":"ko","tag":"NanoBanana 모범 사례","count":15},{"language":"ru","tag":"Лучшие практики NanoBanana","count":15},{"language":"zh-Hant","tag":"NanoBanana最佳實踐","count":15}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"models/models.css","content":".mp-layout{display:flex;gap:2.5rem;max-width:1400px;margin:0 auto;padding:2.5rem 1.5rem 4rem;font-size:15px;line-height:1.7;color:rgb(var(--gray-500, 113 115 119))}html.dark .mp-layout{color:rgb(var(--gray-400, 159 161 165))}.mp-rail{display:none}@media (min-width:1024px){.mp-rail{display:block;width:13rem;flex-shrink:0}}.mp-rail-nav{position:sticky;top:9.25rem;font-size:.875rem}.mp-rail-head{font-weight:600;margin:0 0 .375rem;color:rgb(var(--gray-900, 23 25 29))}html.dark .mp-rail-head{color:rgb(var(--gray-200, 223 225 229))}.mp-rail-link{display:block;padding:.22rem 0;color:rgb(var(--gray-500, 113 115 119));text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mp-content a,.mp-content code.mp-ep-rec,.mp-rail-link:hover{color:rgb(var(--primary, 37 99 235))}html.dark .mp-rail-link{color:rgb(var(--gray-400, 159 161 165))}html.dark .mp-content a,html.dark .mp-content code.mp-ep-rec,html.dark .mp-rail-link:hover{color:rgb(var(--primary-light, 59 130 246))}.mp-rail-vendors{max-height:45vh;overflow-y:auto}.mp-mt{margin-top:1rem}.mp-content{min-width:0;flex:1}.mp-content h2,.mp-title{color:rgb(var(--gray-900, 23 25 29))}.mp-title{font-size:2rem;font-weight:700;letter-spacing:-.02em;margin:0 0 .5rem}html.dark .mp-content strong,html.dark .mp-title{color:#fff}.mp-desc{color:rgb(var(--gray-500, 113 115 119));margin:0 0 1.5rem}html.dark .mp-content th,html.dark .mp-desc{color:rgb(var(--gray-400, 159 161 165))}.mp-content h2{font-size:1.375rem;font-weight:600;margin:2.75rem 0 1rem;padding-bottom:.45rem;border-bottom:1px solid rgb(var(--gray-200, 223 225 229)/.7);scroll-margin-top:12rem}@media (min-width:1024px){.mp-content h2{scroll-margin-top:16.5rem}}html.dark .mp-content h2{border-color:rgb(255 255 255/.1);color:#fff}.mp-content p,.mp-content ul{margin:.75rem 0}.mp-content ul{padding-left:1.4rem}.mp-content li{margin:.4rem 0}.mp-content strong{color:rgb(var(--gray-900, 23 25 29))}.mp-content a{text-decoration:none}.mp-content a:hover{text-decoration:underline}.mp-content code{font-size:.85em;background:rgb(var(--gray-100, 239 241 245)/.8);border:1px solid rgb(var(--gray-200, 223 225 229)/.7);padding:.1em .35em;border-radius:.375rem}html.dark .mp-content code{background:rgb(255 255 255/.06);border-color:rgb(255 255 255/.1)}.mp-content code.mp-ep-rec{background:rgb(var(--primary, 37 99 235)/.08);border-color:rgb(var(--primary, 37 99 235)/.45);font-weight:600}html.dark .mp-content code.mp-ep-rec{background:rgb(var(--primary-light, 59 130 246)/.14);border-color:rgb(var(--primary-light, 59 130 246)/.5)}.mp-content table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;font-size:.875rem;margin:1rem 0 1.5rem}.mp-content td,.mp-content th{padding:.55rem 1.25rem .55rem 0;white-space:nowrap}.mp-content th{text-align:left;font-weight:500;color:rgb(var(--gray-500, 113 115 119));border-bottom:1px solid rgb(var(--gray-200, 223 225 229)/.7)}.mp-content td{border-bottom:1px solid rgb(var(--gray-200, 223 225 229)/.45)}html.dark .mp-content th{border-color:rgb(255 255 255/.1)}html.dark .mp-content td{border-color:rgb(255 255 255/.07)}.mp-search{display:contents}.mp-search-bar{position:sticky;top:5rem;z-index:20;margin:0 0 1.75rem;background:rgb(var(--background-light, 255 255 255));padding:.75rem 0 .85rem;box-shadow:0 10px 14px -10px rgb(var(--gray-950, 11 13 17)/.28)}@media (min-width:1024px){.mp-search-bar{top:9.25rem}}html.dark .mp-search-bar{background:rgb(var(--background-dark, 10 11 16));box-shadow:0 8px 12px -10px rgb(0 0 0/.7)}.mp-search-label{margin:0 0 .5rem;padding-left:.6rem;border-left:3px solid rgb(var(--primary, 37 99 235));font-size:.9rem;font-weight:600;line-height:1.4;color:rgb(var(--primary, 37 99 235))}html.dark .mp-search-label{border-left-color:rgb(var(--primary-light, 59 130 246));color:rgb(var(--primary-light, 59 130 246))}.mp-search-input{width:100%;box-sizing:border-box;border:1px solid rgb(var(--gray-400, 159 161 165)/.3);border-radius:.75rem;padding:.7rem 1rem .7rem 2.65rem;font-size:.9rem;background-color:rgb(var(--background-light, 255 255 255));background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23717377' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E\");background-repeat:no-repeat;background-position:.9rem center;color:rgb(var(--gray-900, 23 25 29));outline:0;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.mp-search-input::placeholder{color:rgb(var(--gray-500, 113 115 119))}.mp-search-input:hover{border-color:rgb(var(--gray-600, 81 83 87)/.3)}.mp-search-input:focus{border-color:rgb(var(--primary, 37 99 235));box-shadow:0 0 0 3px rgb(var(--primary, 37 99 235)/.16)}html.dark .mp-search-input{background-color:rgb(var(--background-dark, 10 11 16));background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%239fa1a5' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E\");border-color:rgb(var(--gray-600, 81 83 87)/.3);color:rgb(var(--gray-100, 239 241 245))}html.dark .mp-search-input::placeholder{color:rgb(255 255 255/.5)}html.dark .mp-search-input:hover{border-color:rgb(var(--gray-500, 113 115 119)/.35)}html.dark .mp-search-input:focus{border-color:rgb(var(--primary-light, 59 130 246));box-shadow:0 0 0 3px rgb(var(--primary-light, 59 130 246)/.22)}.mp-search-empty,.mp-search-meta{color:rgb(var(--gray-500, 113 115 119))}.mp-search-meta{font-size:.75rem;margin:.75rem 0 .25rem}.mp-search-empty{font-size:.875rem;margin-top:.75rem}html.dark .mp-search-empty,html.dark .mp-search-meta{color:rgb(var(--gray-400, 159 161 165))}.mp-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8125rem}@media (min-width:1024px){.mp-jump{display:none}}"},{"filePath":"styles/agent-prompt.css","content":"div.prompt{border:1.5px solid rgb(var(--primary, 37 99 235)/.35);background:rgb(var(--primary, 37 99 235)/.035);padding:1.25rem 1.25rem 1rem;row-gap:.75rem}html.dark div.prompt{border-color:rgb(var(--primary-light, 59 130 246)/.4);background:rgb(var(--primary-light, 59 130 246)/.06)}div.prompt [data-component-part=prompt-content-wrapper]{width:100%}div.prompt [data-component-part=prompt-actions-wrapper]{width:100%;justify-content:flex-end}div.prompt [data-component-part=prompt-description]{flex:1;font-size:14px;line-height:1.65}div.prompt [data-component-part=prompt-description]>div>*{margin:0}div.prompt [data-component-part=prompt-description]>div>*+*{margin-top:.6rem}div.prompt [data-component-part=prompt-description] strong{font-size:15px;font-weight:650;color:rgb(var(--gray-900, 23 25 29))}html.dark div.prompt [data-component-part=prompt-description] strong{color:#fff}div.prompt [data-component-part=prompt-description]>div>*+p{color:rgb(var(--gray-600, 80 82 86))}html.dark div.prompt [data-component-part=prompt-description]>div>*+p{color:rgb(var(--gray-400, 159 161 165))}div.prompt [data-component-part=prompt-description] code{font-size:.85em;background:rgb(var(--gray-100, 239 241 245)/.9);border:1px solid rgb(var(--gray-200, 223 225 229)/.7);padding:.05em .35em;border-radius:.375rem}html.dark div.prompt [data-component-part=prompt-description] code{background:rgb(255 255 255/.06);border-color:rgb(255 255 255/.1)}div.prompt [data-component-part=prompt-description] blockquote{margin:0;padding:.75rem .9rem;font-style:normal;border:1px dashed rgb(var(--gray-300, 191 193 197));border-radius:.6rem;background:rgb(var(--background-light, 255 255 255));font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.6;color:rgb(var(--gray-600, 80 82 86));overflow-wrap:anywhere;-webkit-mask-image:linear-gradient(to bottom,#000 70%,transparent 100%);mask-image:linear-gradient(to bottom,#000 70%,transparent 100%)}div.prompt [data-component-part=prompt-description] blockquote ol,div.prompt [data-component-part=prompt-description] blockquote p{margin:0}div.prompt [data-component-part=prompt-description] blockquote li{padding:0}div.prompt [data-component-part=prompt-description] blockquote>*+*{margin-top:.5rem}div.prompt [data-component-part=prompt-description] blockquote code{background:0 0;border:0;padding:0;font-size:1em}div.prompt [data-component-part=prompt-description] blockquote a{color:inherit;text-decoration:none;pointer-events:none}html.dark div.prompt [data-component-part=prompt-description] blockquote{border-color:rgb(255 255 255/.15);background:rgb(var(--background-dark, 13 13 13));color:rgb(var(--gray-400, 159 161 165))}div.prompt [data-component-part=prompt-action-copy-button]{padding:.6rem 1.25rem;font-size:14px;line-height:20px;font-weight:600;border-radius:.65rem;gap:.45rem;box-shadow:0 1px 2px rgb(0 0 0/.08),0 4px 12px rgb(var(--primary, 37 99 235)/.25)}div.prompt [data-component-part=prompt-action-copy-button]::before{content:\"\";width:16px;height:16px;flex-shrink:0;background:currentColor;-webkit-mask:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='14' height='14' x='8' y='8' rx='2' ry='2'/%3E%3Cpath d='M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2'/%3E%3C/svg%3E\") center/contain no-repeat;mask:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='14' height='14' x='8' y='8' rx='2' ry='2'/%3E%3Cpath d='M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2'/%3E%3C/svg%3E\") center/contain no-repeat}div.prompt [data-component-part=prompt-action-copy-button] svg{width:12px;height:12px}@media (max-width:640px){div.prompt [data-component-part=prompt-actions-wrapper]>*{flex:1}}"}],"page":{"pagePath":"en/api-capabilities/rerank/overview","slug":"/en/api-capabilities/rerank/overview","pageMetadata":{"title":"bge-reranker-v2-m3 Text Reranking","sidebarTitle":"Overview","description":"bge-reranker-v2-m3 is a multilingual reranking model that scores retrieved candidates against your query and re-sorts them — the cheapest meaningful upgrade to RAG retrieval quality. Available on APIYI at /v1/rerank, $0.01 per 1M tokens.","icon":"list-ordered","href":"/en/api-capabilities/rerank/overview"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"bge-reranker-v2-m3 is a multilingual reranking model that scores retrieved candidates against your query and re-sorts them — the cheapest meaningful upgrade to RAG retrieval quality. Available on APIYI at /v1/rerank, $0.01 per 1M tokens.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Accordion,AccordionGroup,CodeBlock,CodeGroup,Heading,Info,Table,Tip,Warning}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!AccordionGroup)_missingMdxReference(`AccordionGroup`,true);if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!CodeGroup)_missingMdxReference(`CodeGroup`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[_jsx(_components.code,{children:`bge-reranker-v2-m3`}),` is an open-source multilingual reranking model from BAAI. It solves the single most common failure in retrieval systems: `,_jsx(_components.strong,{children:`vector search pulled the right documents back, but the ones at the top aren’t the ones that actually answer the question.`})]}),`\n`,_jsxs(_components.p,{children:[`APIYI exposes the standard `,_jsx(_components.code,{children:`/v1/rerank`}),` endpoint — one token, same key as every other model.`]}),`\n`,_jsx(Info,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Model name`}),`: `,_jsx(_components.code,{children:`bge-reranker-v2-m3`}),` (case-sensitive). `,_jsx(_components.strong,{children:`Endpoint`}),`: `,_jsx(_components.code,{children:`POST /v1/rerank`}),`.\nAvailable in the `,_jsx(_components.code,{children:`default`}),` and `,_jsx(_components.code,{children:`svip`}),` groups.\nEvery number on this page comes from APIYI testing on 2026-07-30 (UTC+8), 60+ test cases.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`what-it-is-and-when-to-reach-for-it`,children:`What it is and when to reach for it`}),`\n`,_jsxs(_components.p,{children:[`A reranker is a `,_jsx(_components.strong,{children:`cross-encoder`}),`: it concatenates your query with each candidate document, runs the pair through the model, and emits a relevance score directly.`]}),`\n`,_jsx(_components.p,{children:`That is fundamentally different from an embedding model:`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{}),_jsx(_components.th,{children:`Embedding (vector search)`}),_jsx(_components.th,{children:`Rerank`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`How it computes`}),_jsxs(_components.td,{children:[`Query and document are encoded `,_jsx(_components.strong,{children:`separately`}),`, then compared by distance`]}),_jsxs(_components.td,{children:[`Query and document go through the model `,_jsx(_components.strong,{children:`together`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Can it be pre-indexed?`}),_jsx(_components.td,{children:`✅ Document vectors are computed offline and stored in a vector DB`}),_jsx(_components.td,{children:`❌ Needs the query to compute anything — nothing can be precomputed`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Speed`}),_jsx(_components.td,{children:`Fast; milliseconds over millions of documents`}),_jsx(_components.td,{children:`Slow; scales with candidate count`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Accuracy`}),_jsx(_components.td,{children:`Moderate`}),_jsx(_components.td,{children:`High`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Role`}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Recall`}),`: pull dozens of documents out of millions`]}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Precision`}),`: pick the best few out of dozens`]})]})]})]}),`\n`,_jsxs(_components.p,{children:[`So it does not replace vector search — it’s the `,_jsx(_components.strong,{children:`second stage that sits behind it`}),`.`]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`A reranker `,_jsx(_components.strong,{children:`cannot build an index and cannot do retrieval`}),`. It has no vector output and cannot\nprocess documents without a query. If what you want is “put my documents in a vector database,”\nyou want `,_jsx(_components.a,{href:`/en/api-capabilities/text-embedding`,children:`text embeddings`}),`, not this model.`]})}),`\n`,_jsx(Heading,{level:`3`,id:`a-measured-comparison`,children:`A measured comparison`}),`\n`,_jsx(_components.p,{children:`Same 10 candidate documents, same query (“My API requests keep returning 429 — how do I fix it?”), only the ranking method changes:`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Ranking method`}),_jsx(_components.th,{children:`nDCG@3`}),_jsx(_components.th,{children:`P@3`}),_jsx(_components.th,{children:`What landed in the top 3`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[`Vector similarity only (`,_jsx(_components.code,{children:`text-embedding-3-small`}),`)`]}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0.53`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0.33`}),_jsxs(_components.td,{children:[`Direct answer, `,_jsx(_components.strong,{children:`a glossary of 4xx status codes`}),`, `,_jsx(_components.strong,{children:`a datacenter maintenance notice`})]})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[`Plus `,_jsx(_components.code,{children:`bge-reranker-v2-m3`})]}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.strong,{children:`1.00`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.strong,{children:`1.00`})}),_jsx(_components.td,{children:`Direct answer, direct answer, exponential-backoff explainer`})]})]})]}),`\n`,_jsx(_components.p,{children:`Vector search put an HTTP-4xx glossary and a maintenance notice mentioning “April 29” into the top 3. Both are topically close and share vocabulary with the query — but neither answers it. The reranker pushed both down.`}),`\n`,_jsxs(_components.p,{children:[`That is the whole value proposition: `,_jsx(_components.strong,{children:`it separates “same topic” from “actually answers the question.”`})]}),`\n`,_jsx(Heading,{level:`2`,id:`model-information`,children:`Model information`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Property`}),_jsx(_components.th,{children:`Value`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Model name`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`bge-reranker-v2-m3`}),` (case-sensitive; a wrong name returns 503)`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Architecture`})}),_jsx(_components.td,{children:`Cross-encoder, XLM-RoBERTa-large backbone, fine-tuned from bge-m3`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Parameters`})}),_jsx(_components.td,{children:`~568M (0.6B)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Context limit`})}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`8192 tokens, per query-document pair`}),` (measured: exceeding it returns 400, no silent truncation)`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Languages`})}),_jsx(_components.td,{children:`Verified correct ordering in Chinese, English, Japanese, Korean, Russian, French and Arabic; cross-lingual retrieval works`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Endpoint`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`POST /v1/rerank`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Groups`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`default`}),`, `,_jsx(_components.code,{children:`svip`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Upstream`})}),_jsx(_components.td,{children:`Huawei Cloud ModelArts (official passthrough)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`License`})}),_jsx(_components.td,{children:`Apache 2.0`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`pricing`,children:`Pricing`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Item`}),_jsx(_components.th,{children:`Price`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Input`}),_jsx(_components.td,{children:`$0.01 / 1M tokens`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Output`}),_jsx(_components.td,{children:`None (this model emits no output tokens)`})]})]})]}),`\n`,_jsx(Info,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Cheap enough to ignore.`}),` Reranking 100 candidates (~2,700 tokens) costs about $0.000027.\nA million such calls comes to $27. Reranking is almost never the cost bottleneck in a RAG system —\n`,_jsx(_components.strong,{children:`latency is the constraint, not money`}),`. Tune candidate-set size against latency, not spend.`]})}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Usage semantics`}),` (measured):`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`prompt_tokens`}),` = the query (counted once) plus every candidate document. Strictly linear in practice: `,_jsx(_components.code,{children:`≈ 26.9 × doc count + 7`}),` (fit error \u003c 0.31%), so you can predict it client-side`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`total_tokens`}),` is larger, and the gap grows with candidate count — consistent with the query being counted once per query-document pair`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`input_tokens`}),` / `,_jsx(_components.code,{children:`output_tokens`}),` are `,_jsx(_components.strong,{children:`always 0`}),` on this channel — don’t use them`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`top_n`}),` and `,_jsx(_components.code,{children:`return_documents`}),` `,_jsx(_components.strong,{children:`do not change usage`}),` — every candidate is scored either way`]}),`\n`]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`This round `,_jsxs(_components.strong,{children:[`could not confirm from billing records whether charges follow `,_jsx(_components.code,{children:`prompt_tokens`}),` or\n`,_jsx(_components.code,{children:`total_tokens`})]}),` (the test token can’t read the account balance endpoint). At 100 candidates the\ntwo differ by about 45%. For cost-sensitive work, treat the console invoice as authoritative\nrather than computing spend from the `,_jsx(_components.code,{children:`usage`}),` fields.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`minimal-call`,children:`Minimal call`}),`\n`,_jsxs(CodeGroup,{children:[_jsx(CodeBlock,{filename:`cURL`,numberOfLines:`13`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`13`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://api.apiyi.com/v1/rerank`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Authorization: Bearer `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$APIYI_API_KEY`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"model\": \"bge-reranker-v2-m3\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"query\": \"What are the must-see attractions in Hangzhou?\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"documents\": [`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"West Lake is Hangzhou'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:`\\\\'`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'s most famous attraction, known for Broken Bridge and Leifeng Pagoda.\",`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"The Bund in Shanghai sits along the Huangpu River and is the city'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:`\\\\'`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'s signature landmark.\",`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Lingyin Temple, in Hangzhou'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:`\\\\'`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'s West Lake district, is a well-known Buddhist temple.\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` ],`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"top_n\": 2`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})}),_jsx(CodeBlock,{filename:`Python`,numberOfLines:`20`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`20`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` os, requests`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`resp `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` requests.post(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"https://api.apiyi.com/v1/rerank\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` headers`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Authorization\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`f`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Bearer `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`{`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`os.environ[`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'APIYI_API_KEY'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`]`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`},`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` json`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"model\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"bge-reranker-v2-m3\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"query\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"What are the must-see attractions in Hangzhou?\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"documents\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"West Lake is Hangzhou's most famous attraction, known for Broken Bridge and Leifeng Pagoda.\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"The Bund in Shanghai sits along the Huangpu River and is the city's signature landmark.\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Lingyin Temple, in Hangzhou's West Lake district, is a well-known Buddhist temple.\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ],`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"top_n\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`2`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` timeout`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`60`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`).json()`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`for`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` r `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`in`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` resp[`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"results\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`]:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:` print`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`f`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`{`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`r[`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'relevance_score'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`]`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`:.4f}`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` {`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`r[`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'document'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`][`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'text'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`]`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`]})})}),_jsx(CodeBlock,{filename:`Node.js`,numberOfLines:`20`,language:`javascript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`javascript`,children:_jsxs(_components.code,{language:`javascript`,numberOfLines:`20`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` resp`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` fetch`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'https://api.apiyi.com/v1/rerank'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` method:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'POST'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` headers:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` Authorization:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:\" `Bearer \"}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#569CD6`},children:\"${\"}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`process`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`env`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:`APIYI_API_KEY`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#569CD6`},children:`}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:\"`\"}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'Content-Type'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'application/json'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` body:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` JSON`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`stringify`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`({`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` model:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'bge-reranker-v2-m3'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` query:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'What are the must-see attractions in Hangzhou?'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` documents:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` [`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"West Lake is Hangzhou's most famous attraction, known for Broken Bridge and Leifeng Pagoda.\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"The Bund in Shanghai sits along the Huangpu River and is the city's signature landmark.\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Lingyin Temple, in Hangzhou's West Lake district, is a well-known Buddhist temple.\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ],`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` top_n:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 2`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }),`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`});`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` data`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` resp`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`json`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`();`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`data`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`results`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`forEach`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`((`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`r`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`) `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`=>`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` console`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`log`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`r`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`relevance_score`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`r`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`document`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`text`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`));`})]}),`\n`]})})})]}),`\n`,_jsx(_components.p,{children:`Response:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`7`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`7`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"results\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"document\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"text\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"West Lake is Hangzhou's most famous attraction...\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"index\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"relevance_score\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0.97265625`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"document\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"text\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Lingyin Temple, in Hangzhou's West Lake district...\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"index\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`2`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"relevance_score\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0.1181640625`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ],`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"usage\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"prompt_tokens\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`70`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"total_tokens\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`91`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[_jsxs(_components.strong,{children:[_jsx(_components.code,{children:`index`}),` is the field that matters.`]}),` It is the document’s `,_jsx(_components.strong,{children:`original position`}),` in the\n`,_jsx(_components.code,{children:`documents`}),` array you sent. Use it to look up your own document object (ID, URL, metadata) —\ndon’t try to match on the returned `,_jsx(_components.code,{children:`text`}),`.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`request-parameters`,children:`Request parameters`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Parameter`}),_jsx(_components.th,{children:`Type`}),_jsx(_components.th,{children:`Required`}),_jsx(_components.th,{children:`Notes`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`model`})}),_jsx(_components.td,{children:`string`}),_jsx(_components.td,{children:`✓`}),_jsxs(_components.td,{children:[`Always `,_jsx(_components.code,{children:`bge-reranker-v2-m3`}),`, `,_jsx(_components.strong,{children:`case-sensitive`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`query`})}),_jsx(_components.td,{children:`string`}),_jsx(_components.td,{children:`✓`}),_jsx(_components.td,{children:`The search query. An empty string returns 400`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`documents`})}),_jsx(_components.td,{children:`string[]`}),_jsx(_components.td,{children:`✓`}),_jsxs(_components.td,{children:[`Candidates. `,_jsx(_components.strong,{children:`Plain string array only.`}),` An empty array returns 400`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`top_n`})}),_jsx(_components.td,{children:`int`}),_jsx(_components.td,{}),_jsxs(_components.td,{children:[`Return top N. Omitted / `,_jsx(_components.code,{children:`0`}),` / negative all return everything. No effect on usage`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`return_documents`})}),_jsx(_components.td,{children:`bool`}),_jsx(_components.td,{}),_jsxs(_components.td,{children:[`⚠️ `,_jsx(_components.strong,{children:`No effect on this channel`}),` — see known issues below`]})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`measured-capability-matrix`,children:`Measured capability matrix`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Capability`}),_jsx(_components.th,{children:`Result`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Chinese semantic ranking`}),_jsx(_components.td,{children:`✅ nDCG@3 = 1.00`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Keyword-trap resistance`}),_jsx(_components.td,{children:`✅ Top-2 correct, but a distractor can still score very high (see below)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Cross-lingual (ZH ↔ EN)`}),_jsx(_components.td,{children:`✅ Ordering correct, but absolute scores drop 1–2 orders of magnitude`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Multilingual (JA / KO / RU / FR / AR)`}),_jsx(_components.td,{children:`✅ All five ordered correctly`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Negation understanding`})}),_jsxs(_components.td,{children:[`❌ `,_jsx(_components.strong,{children:`Clear weakness`}),`, nDCG@3 = 0.47 (see below)`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Determinism`}),_jsx(_components.td,{children:`✅ Repeating a request 10× is bit-identical; shuffling candidates drifts only 3.7e-4`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Duplicate-document consistency`}),_jsx(_components.td,{children:`✅ Identical documents get bit-identical scores`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Max candidates per request`}),_jsxs(_components.td,{children:[`✅ 2000 works in practice; `,_jsx(_components.strong,{children:`keep to ≤ 100`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Max document length`}),_jsx(_components.td,{children:`8192 tokens per pair; over that returns 400 (no silent truncation)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Upstream quota`})}),_jsx(_components.td,{children:`⚠️ TPM 20,000 / RPM 120, ~4–5 concurrent slots; ~15 searches/min at 100 candidates (see below)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`return_documents: false`})}),_jsx(_components.td,{children:`❌ Parameter ignored`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`three-things-you-must-know`,children:`Three things you must know`}),`\n`,_jsxs(AccordionGroup,{children:[_jsxs(Accordion,{title:`1. relevance_score is not a confidence value comparable across queries`,icon:`triangle-alert`,id:`1-relevance-score-is-not-a-confidence-value-comparable-across-queries`,children:[_jsxs(_components.p,{children:[`The instinct is to “just filter at 0.5.” `,_jsx(_components.strong,{children:`Measured data says that breaks things:`})]}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Case`}),_jsx(_components.th,{children:`Score range for genuinely relevant docs`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Chinese query × Chinese documents`}),_jsx(_components.td,{children:`0.289 – 1.000 (median 0.948)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Same-language, non-Chinese (JA/KO/RU/FR/AR)`}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`0.005 – 0.998`}),` (median 0.241)`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Cross-lingual (ZH ↔ EN)`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.strong,{children:`0.0038 – 0.205`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Irrelevant distractor with heavy keyword overlap`}),_jsxs(_components.td,{children:[`peaked at `,_jsx(_components.strong,{children:`0.945`})]})]})]})]}),_jsxs(_components.p,{children:[`A 0.5 threshold would `,_jsx(_components.strong,{children:`discard every correct cross-lingual result`}),` and most second-place hits\nin non-Chinese languages, while `,_jsx(_components.strong,{children:`admitting`}),` a document about apple farming prices for the\nquery “Apple Inc. FY2024 revenue.”`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`What to do instead`}),`: treat it as a sort key, not a confidence. If you must filter, use a\nrelative threshold (`,_jsx(_components.code,{children:`score >= top1_score × 0.3`}),`) or just take Top-N, and calibrate on your own\nlabelled data.`]})]}),_jsxs(Accordion,{title:`2. Negation is a clear weakness of this model`,icon:`circle-x`,id:`2-negation-is-a-clear-weakness-of-this-model`,children:[_jsx(_components.p,{children:`Query: “Which attractions are good to visit in winter?” Two candidates explicitly say the\nopposite:`}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Rank`}),_jsx(_components.th,{children:`Score`}),_jsx(_components.th,{children:`Document`}),_jsx(_components.th,{children:`Actually relevant?`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`#1`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0.811`}),_jsx(_components.td,{children:`Harbin Ice and Snow World… top winter destination`}),_jsx(_components.td,{children:`✅`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`#2`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0.769`}),_jsxs(_components.td,{children:[`Beidaihe… `,_jsx(_components.strong,{children:`not suitable for winter tourism`})]}),_jsx(_components.td,{children:`❌`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`#3`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0.531`}),_jsxs(_components.td,{children:[`Qinghai Lake… `,_jsx(_components.strong,{children:`not recommended in winter`})]}),_jsx(_components.td,{children:`❌`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`#4`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0.375`}),_jsx(_components.td,{children:`Wusong Island… a must-see in winter`}),_jsx(_components.td,{children:`✅`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`#5`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0.289`}),_jsx(_components.td,{children:`Sanya… popular winter escape`}),_jsx(_components.td,{children:`✅`})]})]})]}),_jsxs(_components.p,{children:[`The model matched the topic “winter + attractions + travel” and `,_jsx(_components.strong,{children:`did not process the negation`}),`.\nnDCG@3 came out at just 0.47.`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Mitigation`}),`: for queries involving negation, exclusion or conditionals (“gluten-free”,\n“anywhere except Beijing”, “not applicable to minors”), add an LLM verification pass after\nreranking — do not hand the Top-N straight to users.`]})]}),_jsxs(Accordion,{title:`3. Long documents both dilute relevance and inflate noise`,icon:`scissors`,id:`3-long-documents-both-dilute-relevance-and-inflate-noise`,children:[_jsx(_components.p,{children:`Same matching sentence, padded with varying amounts of unrelated filler:`}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Total length`}),_jsxs(_components.th,{children:[`Score, match at `,_jsx(_components.strong,{children:`start`})]}),_jsxs(_components.th,{children:[`Score, match at `,_jsx(_components.strong,{children:`end`})]})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`528 chars`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0.933`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0.720`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`1028 chars`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0.931`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0.500`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`4028 chars`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0.907`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0.351`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`8028 chars`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0.828`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0.181`})]})]})]}),_jsxs(_components.p,{children:[`And `,_jsx(_components.strong,{children:`length inflates irrelevant documents too`}),`: the same non-matching document scored 0.029\nshort and 0.121 padded — 4× higher.`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Mitigation`}),`: chunk long documents to 200–500 characters before reranking, and take the\nhighest-scoring chunk as the document’s score. Chunking is the single highest-leverage\npreprocessing step for this model.`]})]})]}),`\n`,_jsxs(_components.p,{children:[`Full tuning method — chunking, thresholds, recall sizing — is in `,_jsx(_components.a,{href:`/en/api-capabilities/rerank/rag-best-practices`,children:`RAG tuning in practice`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`known-issues`,children:`Known issues`}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsxs(_components.strong,{children:[_jsx(_components.code,{children:`return_documents`}),` has no effect`]}),` (measured 2026-07-30). Whether you pass `,_jsx(_components.code,{children:`true`}),`, `,_jsx(_components.code,{children:`false`}),`, or\nomit it entirely, `,_jsx(_components.code,{children:`document.text`}),` is echoed back. For bandwidth-sensitive workloads (large\ncandidate sets with long documents) the response is much bigger than expected — map results back\nby `,_jsx(_components.code,{children:`index`}),` yourself instead of relying on this flag.`]})}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`A wrong model name returns 503, not 404.`}),` The message reads\n`,_jsx(_components.code,{children:`Current group default has no available channels for model xxx`}),`. The name is `,_jsx(_components.strong,{children:`case-sensitive`}),` —\n`,_jsx(_components.code,{children:`BGE-Reranker-v2-M3`}),` is treated as a nonexistent model. If you get a 503 during integration,\ncheck spelling before assuming a channel outage.`]})}),`\n`,_jsxs(Warning,{children:[_jsx(_components.p,{children:_jsx(_components.strong,{children:`Upstream quota is this model’s hardest constraint — budget your tokens before you integrate.`})}),_jsxs(_components.p,{children:[`The upstream (Huawei Cloud MaaS) allows `,_jsx(_components.strong,{children:`TPM 20,000 / RPM 120`}),` for this model. The BGE-M3\nembedding model on the same platform gets 1,200,000 TPM — `,_jsx(_components.strong,{children:`60× more`}),`.`]}),_jsxs(_components.p,{children:[`Testing separated two `,_jsx(_components.strong,{children:`independent`}),` mechanisms:`]}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Mechanism`}),_jsx(_components.th,{children:`Measured behaviour`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`~4–5 concurrent in-flight slots`})}),_jsxs(_components.td,{children:[`10 concurrent → 4 succeed; 20 concurrent → 5 succeed (tokens only 3–4% of TPM); `,_jsx(_components.strong,{children:`20 serial requests → 20/20 succeed`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`TPM 20,000 sliding window`})}),_jsxs(_components.td,{children:[`Trips even with `,_jsx(_components.strong,{children:`zero concurrency`}),`: firing 1.3K-token requests serially, the 8th returns 429 at 16,093 cumulative tokens, 9 in a row fail, then the window slides and it recovers`]})]})]})]}),_jsxs(_components.p,{children:[`Requests beyond the slot limit are `,_jsx(_components.strong,{children:`rejected outright, not queued`}),`, and both failures return the\nidentical message `,_jsx(_components.code,{children:`upstream load saturated`}),` — you cannot tell them apart from the response, so you\nhave to budget for them.`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Recommendation`}),`: cap concurrency at 4, add exponential backoff, and size your throughput\nagainst the table below.`]})]}),`\n`,_jsx(Heading,{level:`3`,id:`how-many-searches-per-minute`,children:`How many searches per minute`}),`\n`,_jsxs(_components.p,{children:[`Using the measured `,_jsx(_components.code,{children:`≈26.9 tokens/document`}),` against TPM 20,000:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Candidates per query`}),_jsx(_components.th,{children:`Tokens per call`}),_jsx(_components.th,{children:`Theoretical ceiling`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`50`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`673`}),_jsx(_components.td,{children:`~29 / min`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`100`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`1,325`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`~15 / min`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`200`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`2,629`}),_jsx(_components.td,{children:`~7 / min`})]})]})]}),`\n`,_jsxs(_components.p,{children:[`This also explains why a single request can’t carry too many candidates: 1000 candidates is\n26,867 tokens — `,_jsx(_components.strong,{children:`one request consuming 134% of the entire minute’s budget`}),`, so it is guaranteed\nto 429. At 2000 candidates it’s 269%.`]}),`\n`,_jsx(Info,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Quota expansion is in progress.`}),` The TPM 20,000 above is the upstream’s initial allocation, and\nAPIYI has already applied to have it raised. If your workload exceeds what the table allows,\n`,_jsx(_components.strong,{children:`contact APIYI support to have the upstream quota reviewed`}),` rather than scaling your design down\nto fit the current number.`]})}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsxs(_components.strong,{children:[_jsx(_components.code,{children:`/v1/rerank`}),` is the only valid path.`]}),` Requesting `,_jsx(_components.code,{children:`/rerank`}),` or `,_jsx(_components.code,{children:`/v2/rerank`}),` (the Cohere v2 SDK’s\ndefault) returns `,_jsx(_components.strong,{children:`HTTP 200 with the website’s HTML homepage`}),`, not a JSON 404 — clients just see a\nconfusing parse error. If an integration reports “unparseable response,” check for the `,_jsx(_components.code,{children:`/v1`}),` first.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`faq`,children:`FAQ`}),`\n`,_jsxs(AccordionGroup,{children:[_jsxs(Accordion,{title:`Can I use just one of vector search or reranking?`,id:`can-i-use-just-one-of-vector-search-or-reranking`,children:[_jsx(_components.p,{children:`Vector search alone: workable, but Top-N precision is markedly worse (measured nDCG@3 drops from\n1.00 to 0.53).`}),_jsxs(_components.p,{children:[`Reranking alone: `,_jsx(_components.strong,{children:`no.`}),` It has no vector output and needs a candidate set. Scoring millions of\ndocuments one by one is neither practical nor affordable.`]}),_jsx(_components.p,{children:`The standard shape is two-stage: recall 50–100 with vectors/BM25 → rerank down to 3–5 → feed\nthe LLM.`})]}),_jsxs(Accordion,{title:`How many candidates should I recall?`,id:`how-many-candidates-should-i-recall`,children:[_jsx(_components.p,{children:`Measured latency scales roughly linearly with candidate count (short documents): 10 ≈ 2 s,\n100 ≈ 4 s, 500 ≈ 15 s, 1000 ≈ 33 s.`}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`50–100 is the sweet spot.`}),` Below 20, there isn’t much mis-ranking left for the reranker to\nfix. Above 200, latency starts hurting interactivity while the tail of the recall list rarely\ncontains the answer anyway.`]}),_jsxs(_components.p,{children:[`Budget matters too: 100 candidates is ~1,325 tokens, so TPM 20,000 allows only ~15 searches per\nminute. Double the candidates and you halve throughput — `,_jsx(_components.strong,{children:`candidate count is a capacity\ndecision as much as a quality one`}),`.`]})]}),_jsxs(Accordion,{title:`Can I point the Cohere or Jina SDK at it?`,id:`can-i-point-the-cohere-or-jina-sdk-at-it`,children:[_jsxs(_components.p,{children:[_jsxs(_components.strong,{children:[`The `,_jsx(_components.code,{children:`cohere`}),` SDK v2 does not work as-is`]}),`: it targets `,_jsx(_components.code,{children:`/v2/rerank`}),`, which returns the HTML\nhomepage instead of JSON, so the SDK throws a parse error.`]}),_jsxs(_components.p,{children:[`The parameter names (`,_jsx(_components.code,{children:`query`}),` / `,_jsx(_components.code,{children:`documents`}),` / `,_jsx(_components.code,{children:`top_n`}),` / `,_jsx(_components.code,{children:`return_documents`}),`) do match Cohere Rerank\nv1, but `,_jsx(_components.code,{children:`documents`}),` `,_jsx(_components.strong,{children:`only accepts a string array`}),` (`,_jsx(_components.code,{children:`[{\"text\": \"...\"}]`}),` returns 400) and the\nresponse has no `,_jsx(_components.code,{children:`id`}),` / `,_jsx(_components.code,{children:`meta`}),` fields. `,_jsx(_components.strong,{children:`Wrapping the HTTP call yourself is simplest`}),` —\n`,_jsx(_components.a,{href:`/en/api-capabilities/rerank/rag-best-practices`,children:`RAG tuning in practice`}),` has ready-made\nLangChain and LlamaIndex adapters.`]}),_jsxs(_components.p,{children:[`Verified working clients: plain `,_jsx(_components.code,{children:`requests`}),` POST ✅, and the `,_jsx(_components.code,{children:`openai`}),` SDK escape hatch\n`,_jsx(_components.code,{children:`client.post(\"/rerank\", ...)`}),` ✅.`]})]}),_jsxs(Accordion,{title:`Can I cache results?`,id:`can-i-cache-results`,children:[_jsxs(_components.p,{children:[`Yes, and it’s very stable. `,_jsx(_components.strong,{children:`Repeating an identical request 10 times is bit-identical`}),` (zero\ndrift). Drift of ~3.7e-4 appears only when you `,_jsx(_components.strong,{children:`shuffle the candidate order`}),` (bf16 batching\njitter), and ordering is unaffected.`]}),_jsxs(_components.p,{children:[`Key your cache on `,_jsx(_components.code,{children:`normalised query + ordered hash of document contents`}),`. Because order\nintroduces that small drift, `,_jsxs(_components.strong,{children:[`do not treat `,_jsx(_components.code,{children:`relevance_score`}),` itself as an idempotency key.`]})]})]}),_jsx(Accordion,{title:`What happens past 8192 tokens?`,id:`what-happens-past-8192-tokens`,children:_jsxs(_components.p,{children:[`You get a 400 with `,_jsx(_components.code,{children:`This model's maximum context length is 8192 tokens`}),`. It `,_jsx(_components.strong,{children:`does not silently\ntruncate.`}),` The limit applies per query-document pair, not to the request as a whole — a single\nrequest with 400 documents × 1000 characters (330K tokens total) returns normally.`]})})]}),`\n`,_jsx(Heading,{level:`2`,id:`related-documentation`,children:`Related documentation`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/en/api-capabilities/rerank/rerank-api`,children:`Rerank API playground`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/en/api-capabilities/rerank/rag-best-practices`,children:`RAG tuning in practice`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/en/api-capabilities/text-embedding`,children:`Text embeddings`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/en/models`,children:`Model pricing`})}),`\n`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"bge-reranker-v2-m3 Text Reranking","sidebarTitle":"Overview","description":"bge-reranker-v2-m3 is a multilingual reranking model that scores retrieved candidates against your query and re-sorts them — the cheapest meaningful upgrade to RAG retrieval quality. Available on APIYI at /v1/rerank, $0.01 per 1M tokens.","icon":"list-ordered","href":"/en/api-capabilities/rerank/overview"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"What it is and when to reach for it","slug":"what-it-is-and-when-to-reach-for-it","depth":2,"children":[{"title":"A measured comparison","slug":"a-measured-comparison","depth":3,"children":[]}]},{"title":"Model information","slug":"model-information","depth":2,"children":[]},{"title":"Pricing","slug":"pricing","depth":2,"children":[]},{"title":"Minimal call","slug":"minimal-call","depth":2,"children":[]},{"title":"Request parameters","slug":"request-parameters","depth":2,"children":[]},{"title":"Measured capability matrix","slug":"measured-capability-matrix","depth":2,"children":[]},{"title":"Three things you must know","slug":"three-things-you-must-know","depth":2,"children":[]},{"title":"Known issues","slug":"known-issues","depth":2,"children":[{"title":"How many searches per minute","slug":"how-many-searches-per-minute","depth":3,"children":[]}]},{"title":"FAQ","slug":"faq","depth":2,"children":[]},{"title":"Related documentation","slug":"related-documentation","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"apiyillc","siteName":"API易文档中心","title":"bge-reranker-v2-m3 Text Reranking - API易文档中心","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"zh":{"href":"/api-capabilities/rerank/overview","matchLevel":1},"en":{"href":"/en/api-capabilities/rerank/overview","matchLevel":0},"zh-Hant":{"href":"/zh-Hant/api-capabilities/rerank/overview","matchLevel":1},"ja":{"href":"/ja/api-capabilities/rerank/overview","matchLevel":1},"ko":{"href":"/ko/api-capabilities/rerank/overview","matchLevel":1},"ru":{"href":"/ru/api-capabilities/rerank/overview","matchLevel":1}}},"lastModified":"2026-07-30T15:04:16.329Z","originalFileLocation":"en/api-capabilities/rerank/overview.mdx","locale":"en"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"bge-reranker-v2-m3 is a multilingual reranking model that scores retrieved candidates against your query and re-sorts them — the cheapest meaningful upgrade to RAG retrieval quality. Available on APIYI at /v1/rerank, $0.01 per 1M tokens.\">\u003cmeta data-mint-head name=\"application-name\" content=\"API易文档中心\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/apiyillc/sQlsuRwD6o27XLvg/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/apiyillc/sQlsuRwD6o27XLvg/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/apiyillc/sQlsuRwD6o27XLvg/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/apiyillc/sQlsuRwD6o27XLvg/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/apiyillc/sQlsuRwD6o27XLvg/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/apiyillc/sQlsuRwD6o27XLvg/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/apiyillc/sQlsuRwD6o27XLvg/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/apiyillc/sQlsuRwD6o27XLvg/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/apiyillc/sQlsuRwD6o27XLvg/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"bge-reranker-v2-m3 Text Reranking - API易文档中心\">\u003cmeta data-mint-head property=\"og:description\" content=\"bge-reranker-v2-m3 is a multilingual reranking model that scores retrieved candidates against your query and re-sorts them — the cheapest meaningful upgrade to RAG retrieval quality. Available on APIYI at /v1/rerank, $0.01 per 1M tokens.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"API易文档中心\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.apiyi.com/en/api-capabilities/rerank/overview\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://apiyillc.mintlify.app/_mintlify/api/og/v2?division=Rerank\u0026amp;title=bge-reranker-v2-m3+Text+Reranking\u0026amp;description=bge-reranker-v2-m3+is+a+multilingual+reranking+model+that+scores+retrieved+candidates+against+your+query+and+re-sorts+them+%E2%80%94+the+cheapest+meaningful+upgrade+to+\u0026amp;theme=421dcf1ed22dd4b5d53fa3cb\u0026amp;signature=2133bee2c5dcd5d2733dbd172217811dfa0b5a50bdfac26e99edc7569ad7bac4\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"bge-reranker-v2-m3 Text Reranking - API易文档中心\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"bge-reranker-v2-m3 is a multilingual reranking model that scores retrieved candidates against your query and re-sorts them — the cheapest meaningful upgrade to RAG retrieval quality. Available on APIYI at /v1/rerank, $0.01 per 1M tokens.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://apiyillc.mintlify.app/_mintlify/api/og/v2?division=Rerank\u0026amp;title=bge-reranker-v2-m3+Text+Reranking\u0026amp;description=bge-reranker-v2-m3+is+a+multilingual+reranking+model+that+scores+retrieved+candidates+against+your+query+and+re-sorts+them+%E2%80%94+the+cheapest+meaningful+upgrade+to+\u0026amp;theme=421dcf1ed22dd4b5d53fa3cb\u0026amp;signature=2133bee2c5dcd5d2733dbd172217811dfa0b5a50bdfac26e99edc7569ad7bac4\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/apiyillc/sQlsuRwD6o27XLvg/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"API易文档中心\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2563eb\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.apiyi.com/en/api-capabilities/rerank/overview\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/en/api-capabilities/rerank/overview.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.apiyi.com/en/api-capabilities/rerank/overview\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh\" href=\"https://docs.apiyi.com/api-capabilities/rerank/overview\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh-Hant\" href=\"https://docs.apiyi.com/zh-Hant/api-capabilities/rerank/overview\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ja\" href=\"https://docs.apiyi.com/ja/api-capabilities/rerank/overview\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ko\" href=\"https://docs.apiyi.com/ko/api-capabilities/rerank/overview\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ru\" href=\"https://docs.apiyi.com/ru/api-capabilities/rerank/overview\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.apiyi.com/api-capabilities/rerank/overview\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.apiyi.com/#organization\",\"name\":\"API易文档中心\",\"url\":\"https://docs.apiyi.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/apiyillc/LjCT1O0GrSur6F2v/logo/light.svg?fit=max\u0026auto=format\u0026n=LjCT1O0GrSur6F2v\u0026q=85\u0026s=4119ef17a74cc54be127f34578d8b5fa\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.apiyi.com#website\",\"name\":\"API易文档中心\",\"url\":\"https://docs.apiyi.com\",\"publisher\":{\"@id\":\"https://docs.apiyi.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.apiyi.com/en/api-capabilities/rerank/overview#webpage\",\"url\":\"https://docs.apiyi.com/en/api-capabilities/rerank/overview\",\"name\":\"bge-reranker-v2-m3 Text Reranking\",\"description\":\"bge-reranker-v2-m3 is a multilingual reranking model that scores retrieved candidates against your query and re-sorts them — the cheapest meaningful upgrade to RAG retrieval quality. Available on APIYI at /v1/rerank, $0.01 per 1M tokens.\",\"dateModified\":\"2026-07-30T15:04:16.329Z\",\"isPartOf\":{\"@id\":\"https://docs.apiyi.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.apiyi.com/en/api-capabilities/rerank/overview#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.apiyi.com/en/api-capabilities/rerank/overview#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Retrieval \u0026 Safety\",\"item\":\"https://docs.apiyi.com/en/api-capabilities/text-embedding\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"bge-reranker-v2-m3 Text Reranking\",\"item\":\"https://docs.apiyi.com/en/api-capabilities/rerank/overview\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.apiyi.com/en/api-capabilities/rerank/overview#article\",\"headline\":\"bge-reranker-v2-m3 Text Reranking\",\"name\":\"bge-reranker-v2-m3 Text Reranking\",\"description\":\"bge-reranker-v2-m3 is a multilingual reranking model that scores retrieved candidates against your query and re-sorts them — the cheapest meaningful upgrade to RAG retrieval quality. Available on APIYI at /v1/rerank, $0.01 per 1M tokens.\",\"url\":\"https://docs.apiyi.com/en/api-capabilities/rerank/overview\",\"mainEntityOfPage\":{\"@id\":\"https://docs.apiyi.com/en/api-capabilities/rerank/overview#webpage\"},\"dateModified\":\"2026-07-30T15:04:16.329Z\",\"publisher\":{\"@id\":\"https://docs.apiyi.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.apiyi.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"API易文档中心\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"API易文档中心","nav":{"global":{"anchors":[]},"languages":[{"language":"zh","pages":[{"title":"zh","href":"/api-capabilities/rerank/overview"}]},{"language":"en","navbar":{"links":[{"href":"https://api.apiyi.com","label":"Home"},{"href":"https://imagen.apiyi.com","label":"AI Image"},{"href":"https://icover.ai","label":"AI Video"}],"primary":{"type":"button","label":"Console","href":"https://api.apiyi.com/account/profile"}},"tabs":[{"tab":"Home","icon":"house","groups":[{"group":"Basics","pages":[{"title":"APIYI - AI Model API Hub","sidebarTitle":"Introduction","icon":"house","href":"/en"},{"title":"Quick Start","icon":"rocket","href":"/en/getting-started"},{"group":"AI Developer Kit","icon":"terminal","pages":[{"title":"AI Developer Kit","sidebarTitle":"AI Developer Kit","icon":"bot","href":"/en/developer-kit"},{"title":"Why Does My Terminal Say apiyi Command Not Found?","icon":"terminal","href":"/en/faq/apiyi-cli-command-not-found"}]},{"group":"API Manual","icon":"book","pages":[{"title":"API Manual","sidebarTitle":"Manual Overview","icon":"book","href":"/en/api-manual"},{"title":"Capturing API Error Details","sidebarTitle":"Error Capture","icon":"clipboard-list","href":"/en/api-manual/error-reporting"},{"group":"Integration FAQ","icon":"circle-question-mark","expanded":false,"pages":[{"title":"Does APIYI Support the Files API?","icon":"file-up","href":"/en/faq/files-api-not-supported"},{"title":"How to Configure Base URL? Differences Between /v1, Root Domain, and /v1beta","icon":"link","href":"/en/faq/base-url-config"},{"title":"How Can I Troubleshoot Model API Errors?","icon":"alert-triangle","href":"/en/faq/model-error-troubleshooting"},{"title":"What Are the API Concurrency Limits?","icon":"gauge","href":"/en/faq/api-concurrency"}]}]},{"title":"Pricing","icon":"badge-dollar-sign","href":"/en/pricing"}]},{"group":"Basic API","icon":"box","pages":[{"group":"Model Information","icon":"cpu","pages":[{"title":"Popular Models","icon":"database","href":"/en/api-capabilities/model-info"},{"group":"Model FAQ","icon":"circle-question-mark","expanded":false,"pages":[{"title":"How to Choose the Right AI Model?","icon":"compass","href":"/en/faq/model-selection-guide"},{"title":"Why do official web apps and the API give different results?","icon":"layers","href":"/en/faq/webapp-vs-api-difference"},{"title":"Why Don't AI Models Know Their Own Version?","icon":"circle-question-mark","href":"/en/faq/model-version-identity"}]}]},{"title":"Image \u0026 Video Generation Models","icon":"palette","href":"/en/api-capabilities/image-video-models"},{"group":"OpenAI API Calls","icon":"sparkles","pages":[{"title":"OpenAI Responses API Native Guide","sidebarTitle":"Native Calls","icon":"zap","href":"/en/api-capabilities/openai/native"},{"title":"OpenAI Chat Completions Compatible Mode","sidebarTitle":"Compatible Mode","icon":"plug","href":"/en/api-capabilities/openai/compatible"},{"title":"Choosing an Endpoint: Migrating GPT-5.4+ to Responses","sidebarTitle":"Endpoint \u0026 Migration","icon":"route","href":"/en/api-capabilities/openai/responses-migration"},{"title":"OpenAI Compatible Mode: Handling Responses","sidebarTitle":"Handling Responses","icon":"braces","href":"/en/api-capabilities/openai/response-handling"},{"title":"OpenAI Compatible Mode: Reasoning Model Output","sidebarTitle":"Reasoning Model Output","icon":"brain","href":"/en/api-capabilities/openai/reasoning-models"},{"title":"OpenAI Prompt Caching Billing Guide","sidebarTitle":"Cache Billing","icon":"database","href":"/en/api-capabilities/openai/prompt-caching"},{"title":"OpenAI Function Calling Guide","sidebarTitle":"Function Calling","icon":"wrench","href":"/en/api-capabilities/openai/function-calling"},{"title":"OpenAI API Web Search Guide","sidebarTitle":"Web Search","icon":"globe","href":"/en/api-capabilities/openai/web-search"},{"group":"OpenAI FAQ","icon":"circle-question-mark","pages":[{"title":"Does APIYI Support OpenAI Fast / Ultrafast Mode?","icon":"gauge","href":"/en/faq/openai-service-tier-fast-mode"},{"title":"How Do Streaming and Non-Streaming Requests Differ When Content Is Filtered?","sidebarTitle":"Streaming \u0026 Content Filtering","icon":"shield-half","href":"/en/faq/streaming-content-filter"},{"title":"What Does an OpenAI Model Refusal Look Like?","icon":"message-square-x","href":"/en/faq/openai-content-safety-refusal"}]}]},{"group":"Claude Official","icon":"sparkles","pages":[{"title":"Claude API Calling Basics","sidebarTitle":"Claude API Basics","icon":"sparkles","href":"/en/api-capabilities/claude"},{"title":"Claude Native Format: Streaming \u0026 Non-Streaming Responses","sidebarTitle":"Streaming \u0026 Responses","icon":"braces","href":"/en/api-capabilities/claude-response-handling"},{"title":"Claude Prompt Caching Guide","sidebarTitle":"Prompt Caching","icon":"database","href":"/en/api-capabilities/claude-prompt-caching"},{"title":"Claude Effort \u0026 Thinking Guide","sidebarTitle":"Effort \u0026 Thinking","icon":"gauge","href":"/en/api-capabilities/claude-effort-thinking"},{"title":"Claude API Web Search Guide","sidebarTitle":"Claude Web Search","icon":"globe","href":"/en/api-capabilities/claude-web-search"},{"group":"Claude FAQ","icon":"circle-question-mark","pages":[{"title":"Why Does Claude Claim to Be Qwen or DeepSeek?","icon":"venetian-mask","href":"/en/faq/claude-identity-confusion"},{"title":"How Do I Fix Claude's Invalid Thinking Signature Error?","icon":"file-signature","href":"/en/faq/claude-thinking-signature-invalid"},{"title":"Why Does a Claude Refusal Return Empty Content?","icon":"message-square-x","href":"/en/faq/claude-content-safety-refusal"}]}]},{"group":"Gemini Native Calls","icon":"sparkles","pages":[{"title":"Gemini Native Format Guide","sidebarTitle":"Native Calls","icon":"zap","href":"/en/api-capabilities/gemini/native"},{"title":"Interactions API vs generateContent","sidebarTitle":"Interactions API Compared","icon":"git-compare","href":"/en/api-capabilities/gemini/interactions-api"},{"title":"Gemini Native Format: Streaming \u0026 Non-Streaming Responses","sidebarTitle":"Streaming \u0026 Responses","icon":"braces","href":"/en/api-capabilities/gemini/response-handling"},{"title":"Gemini Multimodal Input \u0026 Code Execution","sidebarTitle":"Multimodal \u0026 Code Exec","icon":"images","href":"/en/api-capabilities/gemini/multimodal"},{"title":"Gemini Implicit Caching Billing Guide","sidebarTitle":"Cache Billing","icon":"database","href":"/en/api-capabilities/gemini/prompt-caching"},{"title":"Gemini Function Calling Guide","sidebarTitle":"Function Calling","icon":"wrench","href":"/en/api-capabilities/gemini/function-calling"},{"title":"Gemini API Web Search Guide","sidebarTitle":"Web Search","icon":"globe","href":"/en/api-capabilities/gemini/web-search"},{"title":"How Do I Fix Gemini Thought Signature 400 Errors in Tool Calls?","icon":"file-signature","href":"/en/faq/gemini-thought-signature-missing"}]},{"group":"Grok API Calls","icon":"sparkles","pages":[{"title":"Grok Model Series Guide","sidebarTitle":"Grok Overview","icon":"rocket","href":"/en/api-capabilities/grok/overview"},{"title":"Grok Chat \u0026 Reasoning Guide","sidebarTitle":"Chat \u0026 Reasoning","icon":"message-square","href":"/en/api-capabilities/grok/chat"},{"title":"Grok Web Search \u0026 X Search Guide","sidebarTitle":"Web \u0026 X Search","icon":"globe","href":"/en/api-capabilities/grok/web-search"},{"title":"Grok Code Execution \u0026 Remote MCP Guide","sidebarTitle":"Code Execution \u0026 MCP","icon":"terminal","href":"/en/api-capabilities/grok/code-execution-mcp"},{"title":"Grok Multi-Agent Model Guide","sidebarTitle":"Multi-Agent Model","icon":"users","href":"/en/api-capabilities/grok/multi-agent"},{"title":"Grok Prompt Caching Billing Guide","sidebarTitle":"Cache Billing","icon":"database","href":"/en/api-capabilities/grok/prompt-caching"}]},{"group":"Text API Best Practices","icon":"book-check","pages":[{"title":"Long-form Output Practices","sidebarTitle":"Long-form Output","icon":"book-check","href":"/en/api-capabilities/long-form-output-practices"},{"title":"Multi-Turn Conversation Guide","sidebarTitle":"Multi-Turn Conversation","icon":"messages-square","href":"/en/api-capabilities/multi-turn-conversation"},{"group":"Text FAQ","icon":"circle-question-mark","expanded":false,"pages":[{"title":"What's the difference between streaming and non-streaming calls?","sidebarTitle":"Streaming vs Non-streaming","icon":"audio-lines","href":"/en/faq/streaming-vs-non-streaming"},{"title":"What is max_tokens? What Happens If Not Set?","icon":"sliders-horizontal","href":"/en/faq/max-tokens"},{"title":"Does the API Have Memory Like ChatGPT?","icon":"brain","href":"/en/faq/api-memory"}]}]},{"title":"Balance Query API","icon":"wallet","href":"/en/api-capabilities/balance-query"},{"title":"Log Query API","icon":"file-text","href":"/en/api-capabilities/log-query"},{"title":"Token Management API","icon":"key","href":"/en/api-capabilities/token-management"},{"title":"Deprecated Models","icon":"triangle-alert","href":"/en/api-capabilities/deprecated-models"}]},{"group":"Image API (Official)","icon":"image","pages":[{"group":"Image API Essentials","icon":"book-check","pages":[{"title":"Image API Essentials \u0026 Best Practices","sidebarTitle":"Must-Read \u0026 Best Practices","icon":"book-check","href":"/en/api-capabilities/image-api-best-practices"},{"title":"Troubleshooting Image API Connection Drops","sidebarTitle":"Connection Drops","icon":"unplug","href":"/en/api-capabilities/image-connection-drops"},{"title":"Image Requests That Hang After the Data Has Arrived","sidebarTitle":"Requests Hanging at the End","icon":"hourglass","href":"/en/api-capabilities/image-tail-stall"},{"title":"Image Compression \u0026 Output Resolution","sidebarTitle":"Compression \u0026 Resolution","icon":"scaling","href":"/en/api-capabilities/image-compression-resolution"},{"title":"How to Get Satisfying Images","sidebarTitle":"Getting Satisfying Images","icon":"target","href":"/en/api-capabilities/image-generation-success-tips"},{"title":"Troubleshooting Safety Rejections: Find the Trigger Word by Ablation","sidebarTitle":"Safety Rejections","icon":"shield-alert","href":"/en/api-capabilities/image-safety-troubleshooting"},{"title":"Long Prompts and Two-Stage Generation: Where the 32K Limit Comes From","sidebarTitle":"Long Prompts","icon":"text-quote","href":"/en/api-capabilities/image-long-prompt"},{"title":"Advanced Image Generation: Workflow and Realism","sidebarTitle":"Advanced Workflow","icon":"workflow","href":"/en/api-capabilities/image-advanced-workflow"},{"title":"Image Prompt Doctor Skill","sidebarTitle":"Prompt Doctor Skill","icon":"stethoscope","href":"/en/api-capabilities/image-prompt-doctor"},{"group":"Image FAQ","icon":"circle-question-mark","pages":[{"title":"Is there a conversational API that outputs both text and generated images?","sidebarTitle":"Text + image in one API","icon":"images","href":"/en/faq/text-and-image-in-one-api"},{"title":"Image Request Hangs With No Result, but the Log Shows a Write Failure?","icon":"hourglass","href":"/en/faq/image-direct-large-response-stall"},{"title":"Image Calls Drop After About 90 Seconds Behind a Proxy?","icon":"unplug","href":"/en/faq/proxy-idle-timeout-disconnect"},{"title":"Why Does the Generated Image Differ Greatly from the Reference?","icon":"image","href":"/en/faq/image-result-differs-from-reference"},{"title":"How to fix the image content does not match MIME type error?","icon":"image","href":"/en/faq/image-mime-type-mismatch-with-query"},{"title":"Is There an Async Image API? Can I Query Results by Task ID?","icon":"image","href":"/en/faq/image-async-api"}]}]},{"group":"GPT-Image-2.5 / 2 Image Gen","icon":"sparkles","pages":[{"title":"GPT-Image-2.5 / 2 Image Generation/Edit","sidebarTitle":"GPT-Image-2.5 / 2 Overview","icon":"sparkles","href":"/en/api-capabilities/gpt-image-2/overview"},{"title":"Text-to-Image API Reference","openapi":"api-reference/gpt-image-2-generate-openapi-en.yaml POST /v1/images/generations","icon":"wand-sparkles","href":"/en/api-capabilities/gpt-image-2/text-to-image"},{"title":"Image Edit API Reference","openapi":"api-reference/gpt-image-2-edit-openapi-en.yaml POST /v1/images/edits","icon":"image","href":"/en/api-capabilities/gpt-image-2/image-edit"},{"title":"GPT-Image-2.5 / 2 Series Agent Skill","icon":"blocks","href":"/en/api-capabilities/gpt-image-2/skills"},{"title":"Mask Inpainting Guide","sidebarTitle":"Mask Inpainting","icon":"brush","href":"/en/api-capabilities/gpt-image-2/mask-editing"},{"title":"GPT-Image Legacy Versions","sidebarTitle":"GPT-Image Legacy","icon":"rotate-ccw-clock","href":"/en/api-capabilities/gpt-image-2/historical-versions"},{"group":"GPT-Image FAQ","icon":"circle-question-mark","pages":[{"title":"How do I generate images with a transparent background (PNG cutouts)?","icon":"layers","href":"/en/faq/image-transparent-background"},{"title":"Why Are GPT Image Output Tokens So High?","icon":"calculator","href":"/en/faq/gpt-image-output-token-calculation"},{"title":"Codex Integration for GPT-Image Fails with Incorrect API Key","sidebarTitle":"Image Key Rejected by OpenAI","icon":"key-round","href":"/en/faq/gpt-image-incorrect-api-key-openai"}]}]},{"title":"GPT-image-2.5 / 2 Official vs Reverse","sidebarTitle":"GPT-image-2.5 / 2 Official vs Reverse","icon":"scale","href":"/en/api-capabilities/gpt-image-2/vs-gpt-image-2-all"},{"group":"GPT-Image-2.5-All Image Gen","icon":"sparkles","pages":[{"title":"GPT-Image-2.5-All Image Gen/Editing","sidebarTitle":"GPT-Image-2.5-All Overview","icon":"sparkles","href":"/en/api-capabilities/gpt-image-2-all/overview"},{"title":"Text-to-Image API Reference","openapi":"api-reference/gpt-image-2-all-generate-openapi-en.yaml POST /v1/images/generations","icon":"wand-sparkles","href":"/en/api-capabilities/gpt-image-2-all/text-to-image"},{"title":"Image Editing API Reference","openapi":"api-reference/gpt-image-2-all-edit-openapi-en.yaml POST /v1/images/edits","icon":"image","href":"/en/api-capabilities/gpt-image-2-all/image-edit"},{"title":"GPT-Image-2.5-All Agent Skill","icon":"blocks","href":"/en/api-capabilities/gpt-image-2-all/skills"}]},{"group":"GPT-Image-2.5-VIP Image Gen","icon":"expand","pages":[{"title":"GPT-Image-2.5-VIP Image Gen/Editing","sidebarTitle":"GPT-Image-2.5-VIP Overview","icon":"expand","href":"/en/api-capabilities/gpt-image-2-vip/overview"},{"title":"Text-to-Image API Reference","openapi":"api-reference/gpt-image-2-vip-generate-openapi-en.yaml POST /v1/images/generations","icon":"wand-sparkles","href":"/en/api-capabilities/gpt-image-2-vip/text-to-image"},{"title":"Image Editing API Reference","openapi":"api-reference/gpt-image-2-vip-edit-openapi-en.yaml POST /v1/images/edits","icon":"image","href":"/en/api-capabilities/gpt-image-2-vip/image-edit"},{"title":"GPT-Image-2.5-VIP Agent Skill","icon":"blocks","href":"/en/api-capabilities/gpt-image-2-vip/skills"}]},{"title":"Nano Banana Series Pricing","icon":"tag","href":"/en/api-capabilities/nano-banana-pricing"},{"group":"NanoBanana Best Practices","icon":"lightbulb","pages":[{"title":"Nano Banana Series Developer Guide","icon":"compass","href":"/en/api-capabilities/nano-banana-dev-guide"},{"title":"Usage Fields \u0026 Output Explained","sidebarTitle":"Usage Fields \u0026 Output Explained","icon":"receipt-text","href":"/en/api-capabilities/nano-banana-usage-metadata"},{"title":"Gemini Image Generation API Error Handling Guide","icon":"triangle-alert","href":"/en/api-capabilities/gemini-image-error-handling"},{"title":"Multi-Image Fusion Testing Guide","sidebarTitle":"Multi-Image Fusion Testing","icon":"layers","href":"/en/api-capabilities/multi-image-fusion-testing"},{"title":"Nano Banana Pro Failed-Generation Credit Reimbursement Plan","icon":"shield-check","href":"/en/api-capabilities/nano-banana-pro-guarantee"},{"title":"Nano Banana OSS Group","icon":"link","href":"/en/api-capabilities/nano-banana-oss-group"},{"group":"NB FAQ","icon":"circle-question-mark","pages":[{"title":"Do Google Models Run on AI Studio or Vertex?","icon":"split","href":"/en/faq/google-upstream-aistudio-vertex"},{"title":"Image Edit Returns Unable to Process Input Image?","icon":"image-off","href":"/en/faq/gemini-empty-inlinedata"},{"title":"Why Does Gemini Image Return IMAGE_OTHER?","sidebarTitle":"IMAGE_OTHER","icon":"image-minus","href":"/en/faq/gemini-image-other"},{"title":"Why Does Gemini Image Return blockReason: OTHER?","sidebarTitle":"blockReason: OTHER","icon":"shield-alert","href":"/en/faq/gemini-image-input-blocked"},{"title":"Common Reasons for Nano Banana Image Generation Failures","icon":"image-off","href":"/en/faq/nano-banana-image-failure"},{"title":"Why Does the Gemini Image API Return NO_IMAGE?","icon":"image-off","href":"/en/faq/gemini-no-image"},{"title":"Why does my image turn reddish after editing with banana pro?","icon":"image","href":"/en/faq/banana-pro-edit-red-cast"},{"title":"How to fix distorted prints when changing outfits with Nano Banana Pro?","icon":"shirt","href":"/en/faq/nano-banana-pro-print-distortion"},{"title":"Why Does a White-Background Image Show Black Spots, Dirty Patches, or Blurry Color Blocks?","icon":"triangle-alert","href":"/en/faq/white-background-image-artifacts"}]}]},{"group":"Nano Banana 2.1 Image Gen","icon":"banana","pages":[{"title":"Nano Banana 2.1 Image Gen/Editing","icon":"banana","href":"/en/api-capabilities/gemini-nano-banana-2.1/overview"},{"title":"Text-to-Image API Reference","openapi":"api-reference/gemini-nano-banana-2.1-generate-openapi-en.yaml POST /v1beta/models/gemini-nano-banana-2.1:generateContent","icon":"wand-sparkles","href":"/en/api-capabilities/gemini-nano-banana-2.1/text-to-image"},{"title":"Image Editing API Reference","openapi":"api-reference/gemini-nano-banana-2.1-edit-openapi-en.yaml POST /v1beta/models/gemini-nano-banana-2.1:generateContent","icon":"image","href":"/en/api-capabilities/gemini-nano-banana-2.1/image-edit"},{"title":"Nano Banana 2.1 Agent Skill","icon":"blocks","href":"/en/api-capabilities/gemini-nano-banana-2.1/skills"}]},{"group":"Nano Banana Pro Image Gen","icon":"banana","pages":[{"title":"Nano Banana Pro Image Generation","icon":"banana","href":"/en/api-capabilities/nano-banana-image/overview"},{"title":"Text-to-Image API Reference","openapi":"api-reference/nano-banana-pro-generate-openapi-en.yaml POST /v1beta/models/gemini-3-pro-image:generateContent","icon":"wand-sparkles","href":"/en/api-capabilities/nano-banana-image/text-to-image"},{"title":"Image Editing API Reference","openapi":"api-reference/nano-banana-pro-edit-openapi-en.yaml POST /v1beta/models/gemini-3-pro-image:generateContent","icon":"image","href":"/en/api-capabilities/nano-banana-image/image-edit"},{"title":"Nano Banana Pro Agent Skill","icon":"blocks","href":"/en/api-capabilities/nano-banana-image/skills"}]},{"group":"Nano Banana 2 Image Gen","icon":"banana","pages":[{"title":"Nano Banana 2 Image Gen/Editing","icon":"banana","href":"/en/api-capabilities/nano-banana-2-image/overview"},{"title":"Text-to-Image API Reference","openapi":"api-reference/nano-banana-2-generate-openapi-en.yaml POST /v1beta/models/gemini-3.1-flash-image:generateContent","icon":"wand-sparkles","href":"/en/api-capabilities/nano-banana-2-image/text-to-image"},{"title":"Image Editing API Reference","openapi":"api-reference/nano-banana-2-edit-openapi-en.yaml POST /v1beta/models/gemini-3.1-flash-image:generateContent","icon":"image","href":"/en/api-capabilities/nano-banana-2-image/image-edit"},{"title":"Nano Banana 2 Agent Skill","icon":"blocks","href":"/en/api-capabilities/nano-banana-2-image/skills"}]},{"group":"Nano Banana Lite Image Gen","icon":"banana","pages":[{"title":"Nano Banana Lite Image Gen/Editing","icon":"banana","href":"/en/api-capabilities/nano-banana-lite-image/overview"},{"title":"Text-to-Image API Reference","openapi":"api-reference/nano-banana-lite-generate-openapi-en.yaml POST /v1beta/models/gemini-3.1-flash-lite-image:generateContent","icon":"wand-sparkles","href":"/en/api-capabilities/nano-banana-lite-image/text-to-image"},{"title":"Image Editing API Reference","openapi":"api-reference/nano-banana-lite-edit-openapi-en.yaml POST /v1beta/models/gemini-3.1-flash-lite-image:generateContent","icon":"image","href":"/en/api-capabilities/nano-banana-lite-image/image-edit"},{"title":"Nano Banana Lite Agent Skill","icon":"blocks","href":"/en/api-capabilities/nano-banana-lite-image/skills"}]},{"group":"FLUX Image Generation \u0026 Editing","icon":"sparkles","pages":[{"title":"FLUX Image Generation \u0026 Editing","sidebarTitle":"FLUX Overview","icon":"sparkles","href":"/en/api-capabilities/flux/overview"},{"title":"Text-to-Image API Reference","openapi":"api-reference/flux-generate-openapi-en.yaml POST /v1/images/generations","icon":"wand-sparkles","href":"/en/api-capabilities/flux/text-to-image"},{"title":"Image Editing API Reference","openapi":"api-reference/flux-edit-openapi-en.yaml POST /v1/images/generations","icon":"image","href":"/en/api-capabilities/flux/image-edit"},{"title":"FLUX Historical Versions","sidebarTitle":"Historical Versions","icon":"rotate-ccw-clock","href":"/en/api-capabilities/flux/historical-versions"}]},{"group":"Seedream 5.0 Series","icon":"sparkles","pages":[{"title":"Seedream Image Generation \u0026 Editing","sidebarTitle":"Seedream Overview","icon":"sparkles","href":"/en/api-capabilities/seedream-image/overview"},{"title":"Text-to-Image API Reference","openapi":"api-reference/seedream-image-generate-openapi-en.yaml POST /v1/images/generations","icon":"wand-sparkles","href":"/en/api-capabilities/seedream-image/text-to-image"},{"title":"Image Editing API Reference","openapi":"api-reference/seedream-image-edit-openapi-en.yaml POST /v1/images/generations","icon":"image","href":"/en/api-capabilities/seedream-image/image-edit"},{"title":"Seedream Historical Versions","sidebarTitle":"Historical Versions","icon":"rotate-ccw-clock","href":"/en/api-capabilities/seedream-image/historical-versions"}]},{"group":"Grok Imagine Official Image Gen","icon":"sparkles","pages":[{"title":"Grok Imagine Official Image Generation","sidebarTitle":"Grok Imagine Official Overview","icon":"sparkles","href":"/en/api-capabilities/grok-imagine-image-official/overview"},{"title":"Grok Imagine Official Text-to-Image API Reference","sidebarTitle":"Text-to-Image","openapi":"api-reference/grok-imagine-image-official-generate-openapi-en.yaml POST /v1/images/generations","icon":"wand-sparkles","href":"/en/api-capabilities/grok-imagine-image-official/text-to-image"}]},{"group":"Grok Imagine Reverse Image Gen \u0026 Editing","icon":"sparkles","pages":[{"title":"Grok Imagine Reverse Image Gen \u0026 Editing","sidebarTitle":"Grok Imagine Reverse Overview","icon":"sparkles","href":"/en/api-capabilities/grok-imagine-image/overview"},{"title":"Text-to-Image API Reference","openapi":"api-reference/grok-imagine-image-generate-openapi-en.yaml POST /v1/images/generations","icon":"wand-sparkles","href":"/en/api-capabilities/grok-imagine-image/text-to-image"},{"title":"Image Editing API Reference","openapi":"api-reference/grok-imagine-image-edit-openapi-en.yaml POST /v1/images/edits","icon":"image","href":"/en/api-capabilities/grok-imagine-image/image-edit"}]},{"group":"MAI-Image 2.6 Image Gen \u0026 Editing","icon":"sparkles","pages":[{"title":"MAI-Image 2.6 Image Gen \u0026 Editing","sidebarTitle":"MAI-Image 2.6 Overview","icon":"sparkles","href":"/en/api-capabilities/mai-image/overview"},{"title":"Text-to-Image API Reference","openapi":"api-reference/mai-image-generate-openapi-en.yaml POST /v1/images/generations","icon":"wand-sparkles","href":"/en/api-capabilities/mai-image/text-to-image"},{"title":"Image Editing API Reference","openapi":"api-reference/mai-image-edit-openapi-en.yaml POST /v1/images/edits","icon":"image","href":"/en/api-capabilities/mai-image/image-edit"}]},{"title":"Image API Integration Practice: Build Your Own Async Queue","sidebarTitle":"Self-Hosted Async Queue","icon":"list-checks","href":"/en/api-capabilities/image-async-queue"}]},{"group":"Video API (Official)","icon":"video","pages":[{"group":"Seedance 2.0 / 2.5 (Volcengine)","icon":"film","pages":[{"title":"Seedance 2.0 / 2.5 Video Generation","sidebarTitle":"Seedance 2.0 / 2.5 Overview","icon":"film","href":"/en/api-capabilities/seedance2/overview"},{"title":"Seedance 2.0 / 2.5 Video Generation API Reference","sidebarTitle":"Video Generation","openapi":"api-reference/seedance2-video-openapi-en.yaml POST /seedance/api/v3/contents/generations/tasks","icon":"video","href":"/en/api-capabilities/seedance2/video-generation"},{"title":"Seedance 2.0 Video Agent Skill","icon":"blocks","href":"/en/api-capabilities/seedance2/skills"},{"title":"Seedance 2.0 Asset Library (Character-Consistent Video)","sidebarTitle":"Asset Library","icon":"images","href":"/en/api-capabilities/seedance2/asset-library"},{"title":"Asset-Referenced Video Generation in Code","sidebarTitle":"Asset Reference Guide","icon":"clapperboard","href":"/en/api-capabilities/seedance2/asset-reference"},{"title":"Asset-First: Faster, More Reliable Image and Video Inputs","sidebarTitle":"Asset-First Workflow","icon":"gauge","href":"/en/api-capabilities/seedance2/asset-first-workflow"},{"group":"SD FAQ","icon":"circle-question-mark","pages":[{"title":"Seedance Says First/Last Frame Cannot Be Mixed with Reference Media","sidebarTitle":"First Frame Mixed with Reference","icon":"layers","href":"/en/faq/seedance-first-frame-mixed-with-reference"},{"title":"Seedance Says invalid image format, but the Link Opens in a Browser","sidebarTitle":"Image Link Opens but Fails","icon":"link","href":"/en/faq/seedance-image-url-invalid-format"},{"title":"Seedance 2.5: Reference-to-Video vs. Video Editing","icon":"split","href":"/en/faq/seedance2-reference-vs-edit"},{"title":"Can I Cancel a Seedance Video Task After Submission?","icon":"video","href":"/en/faq/seedance-video-task-cancel"},{"title":"How do I look up a Seedance video's real cost by task_id?","icon":"receipt","href":"/en/faq/seedance-task-cost-lookup"},{"title":"Does Seedance 2.0 auto-upload face references to the asset library? Does it trigger the deepfake filter?","icon":"banana","href":"/en/faq/seedance2-asset-face-reference"},{"title":"Why Does Seedance 2.0 / 2.5 Block Face Assets?","icon":"scan-face","href":"/en/faq/seedance2-face-asset-whitelist"}]}]},{"group":"Wan3.0 Video Generation (Alibaba)","icon":"video","pages":[{"title":"Wan3.0 Video Generation (Alibaba Tongyi Wanxiang)","sidebarTitle":"Overview","icon":"video","href":"/en/api-capabilities/wan3/overview"},{"title":"Wan3.0 Video Generation API Reference","sidebarTitle":"Video Generation","openapi":"api-reference/wan3-video-openapi-en.yaml POST /wan/api/v1/services/aigc/video-generation/video-synthesis","icon":"wand-sparkles","href":"/en/api-capabilities/wan3/video-generation"}]},{"group":"Wan2.7 Video Generation (Alibaba)","icon":"videotape","pages":[{"title":"Wan Video Generation (Alibaba Cloud Tongyi Wanxiang)","sidebarTitle":"Wan Overview","icon":"video","href":"/en/api-capabilities/wan/overview"},{"title":"Wan2.7 Text-to-Video API Reference","sidebarTitle":"Text-to-Video","openapi":"api-reference/wan-text-to-video-openapi-en.yaml POST /wan/api/v1/services/aigc/video-generation/video-synthesis","icon":"wand-sparkles","href":"/en/api-capabilities/wan/text-to-video"},{"title":"Wan2.7 Image-to-Video API Reference","sidebarTitle":"Image-to-Video","openapi":"api-reference/wan-image-to-video-openapi-en.yaml POST /wan/api/v1/services/aigc/video-generation/video-synthesis","icon":"image","href":"/en/api-capabilities/wan/image-to-video"},{"title":"Wan2.7 Reference-to-Video API Reference","sidebarTitle":"Reference-to-Video","openapi":"api-reference/wan-reference-to-video-openapi-en.yaml POST /wan/api/v1/services/aigc/video-generation/video-synthesis","icon":"users","href":"/en/api-capabilities/wan/reference-to-video"},{"title":"Wan2.7 Video Edit API Reference","sidebarTitle":"Video Edit","openapi":"api-reference/wan-video-edit-openapi-en.yaml POST /wan/api/v1/services/aigc/video-generation/video-synthesis","icon":"scissors","href":"/en/api-capabilities/wan/video-edit"},{"title":"Wan2.7 and HappyHorse Video Agent Skill","icon":"blocks","href":"/en/api-capabilities/wan/skills"},{"title":"Wan Historical Versions (Wan2.6)","sidebarTitle":"Historical Versions","icon":"rotate-ccw-clock","href":"/en/api-capabilities/wan/historical-versions"}]},{"group":"HappyHorse Video Generation (Alibaba)","icon":"monitor-play","pages":[{"title":"HappyHorse Video Generation (Alibaba Cloud)","sidebarTitle":"HappyHorse Overview","icon":"monitor-play","href":"/en/api-capabilities/happyhorse/overview"},{"title":"HappyHorse Text-to-Video API Reference","sidebarTitle":"Text-to-Video","openapi":"api-reference/happyhorse-text-to-video-openapi-en.yaml POST /wan/api/v1/services/aigc/video-generation/video-synthesis","icon":"wand-sparkles","href":"/en/api-capabilities/happyhorse/text-to-video"},{"title":"HappyHorse Image-to-Video API Reference","sidebarTitle":"Image-to-Video","openapi":"api-reference/happyhorse-image-to-video-openapi-en.yaml POST /wan/api/v1/services/aigc/video-generation/video-synthesis","icon":"image","href":"/en/api-capabilities/happyhorse/image-to-video"},{"title":"HappyHorse Reference-to-Video API Reference","sidebarTitle":"Reference-to-Video","openapi":"api-reference/happyhorse-reference-to-video-openapi-en.yaml POST /wan/api/v1/services/aigc/video-generation/video-synthesis","icon":"users","href":"/en/api-capabilities/happyhorse/reference-to-video"},{"title":"HappyHorse Video Edit API Reference","sidebarTitle":"Video Edit","openapi":"api-reference/happyhorse-video-edit-openapi-en.yaml POST /wan/api/v1/services/aigc/video-generation/video-synthesis","icon":"scissors","href":"/en/api-capabilities/happyhorse/video-edit"},{"title":"HappyHorse Video Agent Skill","icon":"blocks","href":"/en/api-capabilities/happyhorse/skills"}]},{"group":"VEO 3.1 (Google)","icon":"clapperboard","pages":[{"title":"VEO 3.1 Official Video Generation","sidebarTitle":"VEO 3.1 Official Overview","icon":"video","href":"/en/api-capabilities/veo-3-1-official/overview"},{"title":"VEO 3.1 Official Text-to-Video API","sidebarTitle":"Text-to-Video","openapi":"api-reference/veo-3-1-official-text-to-video-openapi-en.yaml POST /v1/videos","icon":"wand-sparkles","href":"/en/api-capabilities/veo-3-1-official/text-to-video"},{"title":"VEO 3.1 Official Image-to-Video API","sidebarTitle":"Image-to-Video","openapi":"api-reference/veo-3-1-official-image-to-video-openapi-en.yaml POST /v1/videos","icon":"image","href":"/en/api-capabilities/veo-3-1-official/image-to-video"},{"title":"VEO 3.1 Official vs Reverse Channel Comparison","sidebarTitle":"Official vs Reverse","icon":"scale","href":"/en/api-capabilities/veo-3-1-official/vs-veo-reverse"}]},{"group":"Grok Imagine Video (xAI)","icon":"camera","pages":[{"title":"Grok Imagine Video Generation","sidebarTitle":"Grok Imagine Video Overview","icon":"video","href":"/en/api-capabilities/grok-imagine-video/overview"},{"title":"Grok Imagine Video Generation API Reference","sidebarTitle":"Video Generation","openapi":"api-reference/grok-imagine-video-openapi-en.yaml POST /v1/videos","icon":"wand-sparkles","href":"/en/api-capabilities/grok-imagine-video/video-generation"}]},{"group":"MiniMax H3 Video Generation (Self-hosted)","icon":"film","pages":[{"title":"MiniMax-H3 Video Generation","sidebarTitle":"MiniMax-H3 Overview","icon":"video","href":"/en/api-capabilities/minimax-h3/overview"},{"title":"MiniMax-H3 Video Generation API Reference","sidebarTitle":"Video Generation","openapi":"api-reference/minimax-h3-video-openapi-en.yaml POST /hailuo/v2/video_generation","icon":"video","href":"/en/api-capabilities/minimax-h3/video-generation"}]},{"group":"Oxygen Video Generation (AZ8)","icon":"clapperboard","pages":[{"title":"Oxygen Video Generation","sidebarTitle":"Oxygen Overview","icon":"video","href":"/en/api-capabilities/oxygen/overview"},{"title":"Oxygen Video Generation API Reference","sidebarTitle":"Video Generation","openapi":"api-reference/oxygen-video-openapi-en.yaml POST /videos","icon":"video","href":"/en/api-capabilities/oxygen/video-generation"}]}]},{"group":"Multimodal Understanding API","icon":"eye","pages":[{"title":"Vision Understanding (Image Recognition) API","icon":"eye","href":"/en/api-capabilities/vision-understanding"},{"title":"Video Understanding API","icon":"video","href":"/en/api-capabilities/video-understanding"},{"title":"Image Understanding Requests Keep Timing Out — Is the Image Too Large?","icon":"image","href":"/en/faq/vision-image-too-large"}]},{"group":"Text Generation","icon":"file-text","pages":[{"title":"Text Generation (Chat Completions)","icon":"message-square","href":"/en/api-capabilities/text-generation"},{"group":"Gemini 4 Argon","icon":"sparkles","pages":[{"title":"Gemini 4 Argon Text Generation","sidebarTitle":"Gemini 4 Argon Overview","icon":"sparkles","href":"/en/api-capabilities/gemini-4-argon/overview"}]},{"group":"GPT-6 Astra","icon":"sparkles","pages":[{"title":"GPT-6 Astra Text Generation","sidebarTitle":"GPT-6 Astra Overview","icon":"sparkles","href":"/en/api-capabilities/gpt-6-astra/overview"}]},{"group":"DeepSeek V4 Flash Vision","icon":"eye","pages":[{"title":"DeepSeek V4 Flash Vision","sidebarTitle":"Overview","icon":"eye","href":"/en/api-capabilities/deepseek-v4-flash-vision/overview"},{"title":"DeepSeek V4 Flash Vision Chat API Reference","sidebarTitle":"Chat Playground","openapi":"api-reference/deepseek-v4-flash-vision-chat-openapi-en.yaml POST /v1/chat/completions","icon":"terminal","href":"/en/api-capabilities/deepseek-v4-flash-vision/chat-completions"},{"title":"DeepSeek V4 Flash Vision Messages API Reference","sidebarTitle":"Messages Playground","openapi":"api-reference/deepseek-v4-flash-vision-messages-openapi-en.yaml POST /v1/messages","icon":"terminal","href":"/en/api-capabilities/deepseek-v4-flash-vision/messages"}]},{"group":"DeepSeek V4 Flash","icon":"zap","pages":[{"title":"DeepSeek V4 Flash Text Generation","sidebarTitle":"Overview","icon":"zap","href":"/en/api-capabilities/deepseek-v4-flash/overview"},{"title":"DeepSeek V4 Flash Chat API Reference","sidebarTitle":"Chat Playground","openapi":"api-reference/deepseek-v4-flash-chat-openapi-en.yaml POST /v1/chat/completions","icon":"terminal","href":"/en/api-capabilities/deepseek-v4-flash/chat-completions"},{"title":"DeepSeek V4 Flash Responses API Reference","sidebarTitle":"Responses Playground","openapi":"api-reference/deepseek-v4-flash-responses-openapi-en.yaml POST /v1/responses","icon":"git-fork","href":"/en/api-capabilities/deepseek-v4-flash/responses"}]},{"group":"DeepSeek Search \u0026 Fetch","icon":"search","pages":[{"title":"DeepSeek Web Search and Fetch API","sidebarTitle":"Overview","icon":"search","href":"/en/api-capabilities/deepseek-search-fetch/overview"},{"title":"DeepSeek Web Search API Reference","sidebarTitle":"Search Playground","openapi":"api-reference/deepseek-search-openapi-en.yaml POST /v1/tools/search","icon":"terminal","href":"/en/api-capabilities/deepseek-search-fetch/search-api"},{"title":"DeepSeek Web Fetch API Reference","sidebarTitle":"Fetch Playground","openapi":"api-reference/deepseek-fetch-openapi-en.yaml POST /v1/tools/fetch","icon":"terminal","href":"/en/api-capabilities/deepseek-search-fetch/fetch-api"}]},{"group":"Seed 2.1 Turbo","icon":"zap","pages":[{"title":"Seed 2.1 Turbo Text Generation","sidebarTitle":"Overview","icon":"message-square","href":"/en/api-capabilities/dola-seed-2-1-turbo/overview"},{"title":"Seed 2.1 Turbo Chat API Reference","sidebarTitle":"Chat Playground","openapi":"api-reference/dola-seed-2-1-turbo-chat-openapi-en.yaml POST /v1/chat/completions","icon":"terminal","href":"/en/api-capabilities/dola-seed-2-1-turbo/chat-completions"},{"title":"Seed 2.1 Turbo Responses API Reference","sidebarTitle":"Responses Playground","openapi":"api-reference/dola-seed-2-1-turbo-responses-openapi-en.yaml POST /v1/responses","icon":"messages-square","href":"/en/api-capabilities/dola-seed-2-1-turbo/responses"}]},{"group":"Gemini Flash Series","icon":"sparkles","pages":[{"title":"Gemini 3.8 Flash Text Generation","sidebarTitle":"Gemini 3.8 Flash Overview","icon":"sparkles","href":"/en/api-capabilities/gemini-3-8-flash/overview"},{"title":"Gemini 3.6 Flash Text Generation","sidebarTitle":"Gemini 3.6 Flash Overview","icon":"sparkles","href":"/en/api-capabilities/gemini-3-6-flash/overview"},{"title":"Gemini 3.6 Flash Native API Reference","sidebarTitle":"3.6 Native Playground","openapi":"api-reference/gemini-3-6-flash-native-openapi-en.yaml POST /v1beta/models/gemini-3.6-flash:generateContent","icon":"terminal","href":"/en/api-capabilities/gemini-3-6-flash/generate-content"},{"title":"Gemini 3.6 Flash Chat API Reference","sidebarTitle":"3.6 Chat Playground","openapi":"api-reference/gemini-3-6-flash-chat-openapi-en.yaml POST /v1/chat/completions","icon":"terminal","href":"/en/api-capabilities/gemini-3-6-flash/chat-completions"}]},{"group":"Gemini 3.5 Flash-Lite","icon":"feather","pages":[{"title":"Gemini 3.5 Flash-Lite Text Generation","sidebarTitle":"Overview","icon":"feather","href":"/en/api-capabilities/gemini-3-5-flash-lite/overview"},{"title":"Gemini 3.5 Flash-Lite Native API Reference","sidebarTitle":"Native Playground","openapi":"api-reference/gemini-3-5-flash-lite-native-openapi-en.yaml POST /v1beta/models/gemini-3.5-flash-lite:generateContent","icon":"terminal","href":"/en/api-capabilities/gemini-3-5-flash-lite/generate-content"},{"title":"Gemini 3.5 Flash-Lite Chat API Reference","sidebarTitle":"Chat Playground","openapi":"api-reference/gemini-3-5-flash-lite-chat-openapi-en.yaml POST /v1/chat/completions","icon":"terminal","href":"/en/api-capabilities/gemini-3-5-flash-lite/chat-completions"}]},{"group":"Qwen3 Series","icon":"puzzle","pages":[{"title":"Qwen3.8-Max Text Generation","sidebarTitle":"Overview","icon":"puzzle","href":"/en/api-capabilities/qwen-3-8/overview"},{"title":"Qwen3.8-Max Chat API Reference","sidebarTitle":"Chat Playground","openapi":"api-reference/qwen-3-8-max-chat-openapi-en.yaml POST /v1/chat/completions","icon":"terminal","href":"/en/api-capabilities/qwen-3-8/chat-completions"},{"title":"Qwen3.6 Text Model Series (Legacy)","sidebarTitle":"Qwen3.6 (Legacy)","icon":"puzzle","href":"/en/api-capabilities/qwen-3-6/overview"}]},{"group":"Kimi K3.1 Pro","icon":"moon","pages":[{"title":"Kimi K3.1 Pro Overview","sidebarTitle":"Overview","icon":"brain","href":"/en/api-capabilities/kimi-k3-1/overview"}]},{"title":"Kimi K2.5 Text Generation","sidebarTitle":"Kimi K2.5","icon":"bot","href":"/en/api-capabilities/kimi-k2-5"}]},{"group":"Audio API (Official)","icon":"audio-lines","pages":[{"title":"Realtime Voice (WebSocket)","sidebarTitle":"Realtime Voice Overview","icon":"audio-lines","href":"/en/api-capabilities/realtime/overview"}]},{"group":"Retrieval \u0026 Safety","icon":"search","pages":[{"title":"Text Embedding API","icon":"vector-square","href":"/en/api-capabilities/text-embedding"},{"title":"Embedding Tuning in Practice","sidebarTitle":"Embedding Tuning","description":"How to actually get value from embeddings: measured comparison of bge-m3 against three OpenAI models, how big to chunk, how to set similarity thresholds, how much batching and concurrency to use, how cost really works, and the LangChain default that silently drops recall from 80% to 15%.","icon":"sliders-horizontal","href":"/en/api-capabilities/embedding-best-practices"},{"group":"Rerank","icon":"list-ordered","pages":[{"title":"bge-reranker-v2-m3 Text Reranking","sidebarTitle":"Overview","icon":"list-ordered","href":"/en/api-capabilities/rerank/overview"},{"title":"Rerank API Reference","sidebarTitle":"Playground","description":"bge-reranker-v2-m3 rerank API reference and live playground: /v1/rerank parameters, response structure, error-code table and debugging notes.","openapi":"api-reference/bge-reranker-v2-m3-rerank-openapi-en.yaml POST /v1/rerank","icon":"terminal","href":"/en/api-capabilities/rerank/rerank-api"},{"title":"RAG Tuning in Practice","sidebarTitle":"RAG Tuning","icon":"sliders-horizontal","href":"/en/api-capabilities/rerank/rag-best-practices"}]},{"title":"Text Moderation","icon":"shield-check","href":"/en/api-capabilities/text-moderation"}]}]},{"tab":"Use Cases","icon":"layout-grid","pages":[{"title":"Use Cases","href":"/en/scenarios"}]},{"tab":"FAQ","icon":"circle-question-mark","pages":[{"title":"FAQ","href":"/en/faq"}]},{"tab":"Live Updates","icon":"activity","pages":[{"title":"Live Updates","href":"/en/live"}]},{"tab":"Announcements","icon":"megaphone","pages":[{"title":"Announcements","href":"/en/changelog"}]},{"tab":"Promotions","icon":"gift","pages":[{"title":"Promotions","href":"/en/faq/recharge-promotions"}]},{"tab":"Model Pricing","icon":"circle-dollar-sign","pages":[{"title":"Model Pricing","href":"/en/models"}]}]},{"language":"zh-Hant","banner":{"content":"本頁由程式自動轉換為繁體中文,用詞以台灣正體為準;如有歧義請以[簡體中文版](/)為準。","dismissible":true},"footer":{"socials":{"website":"https://api.apiyi.com"},"links":[{"header":"AI 整合","items":[{"label":"skill.md","href":"https://docs.apiyi.com/skill.md"},{"label":"llms.txt","href":"https://docs.apiyi.com/llms.txt"},{"label":"llms-full.txt","href":"https://docs.apiyi.com/llms-full.txt"},{"label":"model-registry.json","href":"https://docs.apiyi.com/model-registry.json"},{"label":"AI 開發者套件(中文)","href":"/developer-kit"},{"label":"AI Developer Kit (EN)","href":"/en/developer-kit"}]},{"header":"使用者口碑 / Wall of Love","items":[{"label":"使用者口碑(中文)","href":"/wall-of-love"},{"label":"Wall of Love (EN)","href":"/en/wall-of-love"}]}]},"navbar":{"links":[{"href":"https://api.apiyi.com","label":"首頁"},{"href":"https://imagen.apiyi.com","label":"AI出圖"},{"href":"https://icover.ai","label":"AI影片"}],"primary":{"type":"button","label":"控制台","href":"https://api.apiyi.com/account/profile"}},"pages":[{"title":"zh-Hant","href":"/zh-Hant/api-capabilities/rerank/overview"}]},{"language":"ja","banner":{"content":"このページは AI により翻訳されています。内容に相違がある場合は[English 版](/en)を正としてください。","dismissible":true},"footer":{"socials":{"website":"https://api.apiyi.com"},"links":[{"header":"AI統合","items":[{"label":"skill.md","href":"https://docs.apiyi.com/skill.md"},{"label":"llms.txt","href":"https://docs.apiyi.com/llms.txt"},{"label":"llms-full.txt","href":"https://docs.apiyi.com/llms-full.txt"},{"label":"model-registry.json","href":"https://docs.apiyi.com/model-registry.json"},{"label":"AI開発者キット(中国語)","href":"/developer-kit"},{"label":"AI Developer Kit (EN)","href":"/en/developer-kit"}]},{"header":"ユーザーの声 / Wall of Love","items":[{"label":"ユーザーの声(中国語)","href":"/wall-of-love"},{"label":"Wall of Love(英語)","href":"/en/wall-of-love"}]}]},"navbar":{"links":[{"href":"https://api.apiyi.com","label":"ホーム"},{"href":"https://imagen.apiyi.com","label":"AI画像生成"},{"href":"https://icover.ai","label":"AI動画生成"}],"primary":{"type":"button","label":"コンソール","href":"https://api.apiyi.com/account/profile"}},"pages":[{"title":"ja","href":"/ja/api-capabilities/rerank/overview"}]},{"language":"ko","banner":{"content":"이 페이지는 AI로 번역되었습니다. 내용이 다를 경우 [English 버전](/en)을 기준으로 하십시오.","dismissible":true},"footer":{"socials":{"website":"https://api.apiyi.com"},"links":[{"header":"AI 통합","items":[{"label":"skill.md","href":"https://docs.apiyi.com/skill.md"},{"label":"llms.txt","href":"https://docs.apiyi.com/llms.txt"},{"label":"llms-full.txt","href":"https://docs.apiyi.com/llms-full.txt"},{"label":"model-registry.json","href":"https://docs.apiyi.com/model-registry.json"},{"label":"AI 개발자 키트(중국어)","href":"/developer-kit"},{"label":"AI Developer Kit (EN)","href":"/en/developer-kit"}]},{"header":"사용자 후기 / Wall of Love","items":[{"label":"사용자 후기(중국어)","href":"/wall-of-love"},{"label":"Wall of Love (영문)","href":"/en/wall-of-love"}]}]},"navbar":{"links":[{"href":"https://api.apiyi.com","label":"홈"},{"href":"https://imagen.apiyi.com","label":"AI 이미지 생성"},{"href":"https://icover.ai","label":"AI 동영상 생성"}],"primary":{"type":"button","label":"콘솔","href":"https://api.apiyi.com/account/profile"}},"pages":[{"title":"ko","href":"/ko/api-capabilities/rerank/overview"}]},{"language":"ru","banner":{"content":"Эта страница переведена с помощью ИИ. При расхождениях ориентируйтесь на [английскую версию](/en).","dismissible":true},"footer":{"socials":{"website":"https://api.apiyi.com"},"links":[{"header":"AI-интеграция","items":[{"label":"skill.md","href":"https://docs.apiyi.com/skill.md"},{"label":"llms.txt","href":"https://docs.apiyi.com/llms.txt"},{"label":"llms-full.txt","href":"https://docs.apiyi.com/llms-full.txt"},{"label":"model-registry.json","href":"https://docs.apiyi.com/model-registry.json"},{"label":"Набор AI-разработчика (кит.)","href":"/developer-kit"},{"label":"AI Developer Kit (EN)","href":"/en/developer-kit"}]},{"header":"Отзывы пользователей / Wall of Love","items":[{"label":"Отзывы пользователей (на китайском)","href":"/wall-of-love"},{"label":"Wall of Love (EN)","href":"/en/wall-of-love"}]}]},"navbar":{"links":[{"href":"https://api.apiyi.com","label":"Главная"},{"href":"https://imagen.apiyi.com","label":"Генерация изображений"},{"href":"https://icover.ai","label":"Генерация видео"}],"primary":{"type":"button","label":"Консоль","href":"https://api.apiyi.com/account/profile"}},"pages":[{"title":"ru","href":"/ru/api-capabilities/rerank/overview"}]}]},"title":"bge-reranker-v2-m3 Text Reranking - API易文档中心","buildId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","deploymentId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","dynamics":["10e4515597"],"chunks":["BannerMarkdown-B-Glu166.js","dist-zbf22OZA.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","clsx-Cs6nMGht.js","html-void-elements-mCSPHezU.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js"]}