# rerankWithScorer() The `rerankWithScorer()` function provides advanced reranking capabilities for vector search results by combining semantic relevance, vector similarity, and position-based scoring. ```typescript function rerankWithScorer({ results: QueryResult[], query: string, scorer: RelevanceScoreProvider, options?: RerankerFunctionOptions, }): Promise; ``` ## Usage Example ```typescript import { rerankWithScorer as rerank, CohereRelevanceScorer } from "@mastra/rag"; const scorer = new CohereRelevanceScorer("rerank-v3.5"); const rerankedResults = await rerank({ results: vectorSearchResults, query: "How do I deploy to production?", scorer, options: { weights: { semantic: 0.5, vector: 0.3, position: 0.2, }, topK: 3, }, }); ``` ## Parameters **results:** (`QueryResult[]`): The vector search results to rerank **query:** (`string`): The search query text used to evaluate relevance **scorer:** (`RelevanceScoreProvider`): The relevance scorer to use for reranking **options?:** (`RerankerFunctionOptions`): Options for the reranking model The `rerankWithScorer` function accepts any `RelevanceScoreProvider` from @mastra/rag. > **Note:** For semantic scoring to work properly during re-ranking, each result must include the text content in its `metadata.text` field. ### RerankerFunctionOptions **weights?:** (`WeightConfig`): numbersemantic?:number (default: 0.4)Weight for semantic relevancenumbervector?:number (default: 0.4)Weight for vector similaritynumberposition?:number (default: 0.2)Weight for position-based scoring **queryEmbedding?:** (`number[]`): Embedding of the query **topK?:** (`number`): Number of top results to return (Default: `3`) ## Returns The function returns an array of `RerankResult` objects: **result:** (`QueryResult`): The original query result **score:** (`number`): Combined reranking score (0-1) **details:** (`ScoringDetails`): Detailed scoring information ### ScoringDetails **semantic:** (`number`): Semantic relevance score (0-1) **vector:** (`number`): Vector similarity score (0-1) **position:** (`number`): Position-based score (0-1) **queryAnalysis?:** (`object`): numbermagnitude:Magnitude of the querynumber\[]dominantFeatures:Dominant features of the query ## Related - [createVectorQueryTool](https://mastra.ai/reference/tools/vector-query-tool)