Reordene documentos usando modelos de similaridade semântica. Útil para melhorar resultados de busca e aplicações de RAG.
Corpo da Requisição
Timeout de solicitações síncronas: este endpoint não-chat aguarda o modelo roteado terminar. Entradas grandes, áudios longos ou lotes grandes podem exceder os padrões comuns de 30s dos clientes, então configure o timeout do seu cliente HTTP para pelo menos 120s.
ID do modelo de reranker a ser usado (ex: qwen3-vl-rerank).
A consulta para classificar os documentos. Comprimento máximo: 32,000 caracteres.
Lista de documentos (strings) para reordenar. Limites: até 1,000 documentos, cada documento com até 100,000 caracteres e no máximo 2,000,000 caracteres de documentos no total.
Número de resultados principais a retornar. O padrão é retornar todos os documentos. Deve ser pelo menos 1 e não pode ser maior que documents.length. Atualmente a TokenLab não aplica um limite público inferior específico de provedor; se esse limite mudar, esta página será atualizada antes da aplicação.
Se deve incluir o texto original do documento na resposta.
Resposta
Lista classificada de documentos com pontuações. Cada resultado contém:
index (integer): Índice original do documento
relevance_score (number): Pontuação de relevância (0-1)
document (string): Texto original (se return_documents=true)
O modelo usado para a reordenação.
Estatísticas de uso de tokens.
cURL
Python
JavaScript
Go
PHP
curl -X POST "https://api.tokenlab.sh/v1/rerank" \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen3-vl-rerank",
"query": "What is machine learning?",
"documents": [
"Machine learning is a subset of AI",
"The weather is nice today",
"Deep learning uses neural networks"
],
"top_n": 2,
"return_documents": true
}'
import requests
response = requests.post(
"https://api.tokenlab.sh/v1/rerank" ,
headers = { "Authorization" : "Bearer sk-your-api-key" },
json = {
"model" : "qwen3-vl-rerank" ,
"query" : "What is machine learning?" ,
"documents" : [
"Machine learning is a subset of AI" ,
"The weather is nice today" ,
"Deep learning uses neural networks"
],
"top_n" : 2
}
)
print (response.json())
const response = await fetch ( 'https://api.tokenlab.sh/v1/rerank' , {
method: 'POST' ,
headers: {
'Authorization' : 'Bearer sk-your-api-key' ,
'Content-Type' : 'application/json'
},
body: JSON . stringify ({
model: 'qwen3-vl-rerank' ,
query: 'What is machine learning?' ,
documents: [
'Machine learning is a subset of AI' ,
'The weather is nice today' ,
'Deep learning uses neural networks'
],
top_n: 2
})
});
const data = await response . json ();
console . log ( data . results );
package main
import (
" bytes "
" encoding/json "
" fmt "
" net/http "
)
func main () {
payload := map [ string ] interface {}{
"model" : "qwen3-vl-rerank" ,
"query" : "What is machine learning?" ,
"documents" : [] string {
"Machine learning is a subset of AI" ,
"The weather is nice today" ,
"Deep learning uses neural networks" ,
},
"top_n" : 2 ,
}
body , _ := json . Marshal ( payload )
req , _ := http . NewRequest ( "POST" , "https://api.tokenlab.sh/v1/rerank" , bytes . NewBuffer ( body ))
req . Header . Set ( "Authorization" , "Bearer sk-your-api-key" )
req . Header . Set ( "Content-Type" , "application/json" )
client := & http . Client {}
resp , _ := client . Do ( req )
defer resp . Body . Close ()
var result map [ string ] interface {}
json . NewDecoder ( resp . Body ). Decode ( & result )
fmt . Println ( result [ "results" ])
}
<? php
$ch = curl_init ( 'https://api.tokenlab.sh/v1/rerank' );
curl_setopt_array ( $ch , [
CURLOPT_RETURNTRANSFER => true ,
CURLOPT_POST => true ,
CURLOPT_HTTPHEADER => [
'Content-Type: application/json' ,
'Authorization: Bearer sk-your-api-key'
],
CURLOPT_POSTFIELDS => json_encode ([
'model' => 'qwen3-vl-rerank' ,
'query' => 'What is machine learning?' ,
'documents' => [
'Machine learning is a subset of AI' ,
'The weather is nice today' ,
'Deep learning uses neural networks'
],
'top_n' => 2
])
]);
$response = curl_exec ( $ch );
curl_close ( $ch );
$data = json_decode ( $response , true );
print_r ( $data [ 'results' ]);
{
"results" : [
{
"index" : 0 ,
"relevance_score" : 0.95 ,
"document" : "Machine learning is a subset of AI"
},
{
"index" : 2 ,
"relevance_score" : 0.82 ,
"document" : "Deep learning uses neural networks"
}
],
"model" : "qwen3-vl-rerank" ,
"usage" : {
"prompt_tokens" : 45 ,
"total_tokens" : 45
}
}