Prende un elenco di risultati di ricerca e una query, poi li riordina usando un modello cross-encoder per una maggiore precisione. Da usare dopo un nodo RAG Query o Web Search per portare i risultati più pertinenti in cima.
rerankerLa ricerca vettoriale standard e la ricerca per parole chiave classificano i risultati tramite punteggi di similarità calcolati indipendentemente per ogni documento, senza considerare la relazione tra la query e ciascun risultato in modo olistico. Un reranker cross-encoder risolve questo problema valutando la query e ciascun risultato candidato insieme, producendo un punteggio di pertinenza più accurato.
Il nodo Reranker accetta l'output di qualsiasi nodo che produce un array di risultati — come un RAG Query o Web Search — e restituisce gli stessi risultati riordinati per punteggio di pertinenza. Puoi opzionalmente limitare l'output ai primi N risultati, il che è utile per controllare quanto contesto passi a un nodo Agent a valle.
Il pattern consigliato è: RAG Query → Reranker → Agent. Il RAG Query recupera un ampio set di chunk candidati; il Reranker promuove quelli più pertinenti; l'Agent riceve una finestra di contesto più ristretta e di qualità superiore.
| Campo | Stato | Descrizione |
|---|---|---|
| Risultati | Obbligatorio | Riferimento all'array di risultati di uno step precedente, es. {{ rag_step.output.results }}. Ogni elemento deve avere un campo content o text. |
| Query | Obbligatorio | La query di ricerca usata per classificare i risultati. Di solito la stessa query passata allo step di ricerca precedente. |
| Provider | Obbligatorio | Il provider AI da usare per il reranking. Deve supportare modelli di reranking (es. Cohere, OpenAI). |
| Modello | Obbligatorio | L'identificatore del modello cross-encoder, es. rerank-english-v3.0. |
| Top K | Opzionale | Restituisci solo i primi N risultati dopo il reranking. Predefinito: 5. Lascia vuoto per restituire tutti gli elementi. |
Il nodo restituisce i risultati in input riordinati per pertinenza, con un campo score aggiunto a ogni elemento.
| Campo | Tipo | Descrizione |
|---|---|---|
results | array | Array riordinato di oggetti risultato, ciascuno con i campi originali più una proprietà score |
results[*].score | number | Punteggio di pertinenza (0–1, più alto è più pertinente) |
results[*].content | string | Il testo del risultato |
count | number | Numero di risultati restituiti |
RAG → Reranker → Agent, assicurando che l'agente veda prima i chunk più pertinenti.
20 per recuperare un ampio set di candidati. Usa la chiave step rag_query.{{ rag_query.output.results }}, Query sulla stessa variabile di query, Provider su Cohere, Modello su rerank-english-v3.0 e Top K su 5.{{ reranker_step.output.results }} come contesto. L'agente ora riceve solo i 5 chunk più pertinenti.content o text. Se lo step a monte usa un nome di campo diverso, usa un nodo Set Variable per ristrutturare l'array prima.