rerankWithScorer()
rerankWithScorer() 函数通过结合语义相关性、向量相似度和基于位置的评分,为向量搜索结果提供高级重排序功能。
function rerankWithScorer({
results: QueryResult[],
query: string,
scorer: RelevanceScoreProvider,
options?: RerankerFunctionOptions,
}): Promise<RerankResult[]>;
使用示例使用示例的直接链接
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 },
})
参数参数的直接链接
results:
QueryResult[]
要重排序的向量搜索结果
query:
string
用于评估相关性的搜索查询文本
scorer:
RelevanceScoreProvider
用于重排序的相关性评分器
options?:
RerankerFunctionOptions
重排序模型的选项
RerankerFunctionOptions
weights?:
WeightConfig
不同评分组件的权重(总和必须为 1)
number
semantic?:
number (default: 0.4)
语义相关性的权重
number
vector?:
number (default: 0.4)
向量相似度的权重
number
position?:
number (default: 0.2)
基于位置评分的权重
queryEmbedding?:
number[]
查询的嵌入
topK?:
number
要返回的顶部结果数量
rerankWithScorer 函数接受来自 @mastra/rag 的任意 RelevanceScoreProvider。
备注
要使重新排序期间的语义评分正常工作,每个结果都必须在其 metadata.text 字段中包含文本内容。
返回返回的直接链接
该函数返回 RerankResult 对象数组:
result:
QueryResult
原始查询结果
score:
number
综合重排序分数(0-1)
details:
ScoringDetails
详细的评分信息
ScoringDetailsscoringdetails的直接链接
semantic:
number
语义相关性分数(0-1)
vector:
number
向量相似度分数(0-1)
position:
number
基于位置的分数(0-1)
queryAnalysis?:
object
查询分析详情
number
magnitude:
查询的幅度
number[]
dominantFeatures:
查询的主要特征