Reranking avec Velqa.dev — reclasser vos résultats de RAG (FR / AR)
Velqa propose le reranking multilingue via qwen3-reranker-8b (Alibaba), sur l'API https://api.velqa.dev/v1/rerank. Le reranker prend une requête et une liste de documents, puis les reclasse par pertinence réelle vis-à-vis de la requête — il complète l'embedding dans un pipeline RAG pour remonter les meilleurs passages avant de les envoyer au modèle de chat. Il est inclus dans tous les plans (Starter, Dev, Pro, Recharge Boost).
Pourquoi un reranker ?
La recherche par embeddings est rapide mais approximative : elle rapproche des vecteurs, pas forcément le sens exact. Un reranker relit chaque paire (requête, document) et attribue un relevance_score fin. Le schéma typique :
- L'embedding (
bge-m3ouqwen3-embedding-8b) récupère les 20–50 candidats les plus proches. qwen3-reranker-8bles reclasse et vous gardez le top 3–5.- Vous envoyez ce top au modèle de chat comme contexte.
Tarification
Facturé aux tokens d'entrée (requête + documents), sans tokens de sortie.
| Modèle | Type | Prix public (USD/M tokens input) |
|---|---|---|
qwen3-reranker-8b | Rerank | 0,059 USD |
Le prix exact en USD est affiché dans le tableau de bord.
Exemple avec curl
curl https://api.velqa.dev/v1/rerank \
-H "Authorization: Bearer $VELQA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen3-reranker-8b",
"query": "Comment recharger mon solde en USD ?",
"documents": [
"Le paiement se fait en USD via Stripe depuis le tableau de bord.",
"Whisper transcrit l'\''audio en français et en darija.",
"Choisissez Recharger puis un montant en USD."
]
}'Exemple avec Python
import requests
resp = requests.post(
"https://api.velqa.dev/v1/rerank",
headers={"Authorization": "Bearer VELQA_API_KEY"},
json={
"model": "qwen3-reranker-8b",
"query": "Comment recharger mon solde en USD ?",
"documents": [
"Le paiement se fait en USD via Stripe depuis le tableau de bord.",
"Whisper transcrit l'audio en français et en darija.",
"Choisissez Recharger puis un montant en USD.",
],
},
)
for r in resp.json()["results"]:
print(round(r["relevance_score"], 3), r["index"])La réponse contient results, une liste triée du plus pertinent au moins pertinent, où chaque élément expose index (position du document dans votre requête) et relevance_score. Réordonnez vos documents avec index et gardez les meilleurs pour votre contexte.
Voir aussi
- Pipeline RAG — le pipeline complet de bout en bout, avec pgvector.
- Embeddings — la première étape du pipeline RAG.
- Modèles disponibles — catalogue complet et prix en USD.
