Skip to main content

rerank()

rerank() 函数通过结合语义相关性、向量相似性和基于位置的评分,为向量搜索结果提供了高级的重新排序功能。

🌐 The rerank() function provides advanced reranking capabilities for vector search results by combining semantic relevance, vector similarity, and position-based scoring.

function rerank(
results: QueryResult[],
query: string,
modelConfig: ModelConfig,
options?: RerankerFunctionOptions,
): Promise<RerankResult[]>;

使用示例
Direct link to 使用示例

🌐 Usage Example

import { rerank } from "@mastra/rag";

const model = "openai/gpt-5.1";

const rerankedResults = await rerank(
vectorSearchResults,
"How do I deploy to production?",
model,
{
weights: {
semantic: 0.5,
vector: 0.3,
position: 0.2,
},
topK: 3,
},
);

参数
Direct link to 参数

🌐 Parameters

results:

QueryResult[]
The vector search results to rerank

query:

string
The search query text used to evaluate relevance

model:

MastraLanguageModel
The language Model to use for reranking

options?:

RerankerFunctionOptions
Options for the reranking model

重新排序功能接受 Vercel AI SDK 中的任何语言模型。使用 Cohere 模型 rerank-v3.5 时,它将自动使用 Cohere 的重新排序功能。

🌐 The rerank function accepts any LanguageModel from the Vercel AI SDK. When using the Cohere model rerank-v3.5, it will automatically use Cohere's reranking capabilities.

注意: 为了使语义评分在重新排序时正常工作,每个结果必须在其 metadata.text 字段中包含文本内容。

RerankerFunctionOptions
Direct link to RerankerFunctionOptions

weights?:

WeightConfig
Weights for different scoring components (must add up to 1)
number

semantic?:

number (default: 0.4)
Weight for semantic relevance
number

vector?:

number (default: 0.4)
Weight for vector similarity
number

position?:

number (default: 0.2)
Weight for position-based scoring

queryEmbedding?:

number[]
Embedding of the query

topK?:

number
= 3
Number of top results to return

返回
Direct link to 返回

🌐 Returns

该函数返回一个 RerankResult 对象数组:

🌐 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
Direct link to ScoringDetails

semantic:

number
Semantic relevance score (0-1)

vector:

number
Vector similarity score (0-1)

position:

number
Position-based score (0-1)

queryAnalysis?:

object
Query analysis details
number

magnitude:

Magnitude of the query
number[]

dominantFeatures:

Dominant features of the query

🌐 Related