0aff31e2d3
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
981 B
981 B
layout
| layout |
|---|
| default |
Reranking: mejorando la relevancia
La búsqueda vectorial recupera documentos similares, pero no siempre los más relevantes. Un reranker reordena los resultados usando un modelo especializado.
import { CohereRerank } from "@langchain/cohere";
const reranker = new CohereRerank({
apiKey: process.env.COHERE_API_KEY,
model: "rerank-v4.0-fast", // multilingüe por defecto
topN: 3,
});
// .compressDocuments() → devuelve los topN Document[] listos para usar en chains
const rerankedDocs = await reranker.compressDocuments(docs, query);
// .rerank() → devuelve TODOS los índices + scores (más control manual)
const results = await reranker.rerank(docs, query);
// [{ index: 2, relevanceScore: 0.95 }, { index: 0, relevanceScore: 0.72 }, ...]
✨ Patrón común: recuperar ~10 docs con vector search → reranking → top 3 al LLM