fix: normalize Milvus similarity scores for threshold filtering (#4880)

* fix: normalize Milvus similarity scores for threshold filtering

* refactor: refact Milvus similarity score normalization #4879

---------

Co-authored-by: 강나훈 <nahoon.kang@mnc.ai>
This commit is contained in:
Kang Nahoon
2025-07-18 20:35:19 +09:00
committed by GitHub
parent 2e1999e6f1
commit 2605a1f74e
@@ -395,7 +395,18 @@ const similaritySearchVectorWithScore = async (query: number[], k: number, vecto
}
}
})
results.push([new Document(fields), result.score])
let normalizedScore = result.score
switch (vectorStore.indexCreateParams.metric_type) {
case MetricType.L2:
normalizedScore = 1 / (1 + result.score)
break
case MetricType.IP:
case MetricType.COSINE:
normalizedScore = (result.score + 1) / 2
break
}
results.push([new Document(fields), normalizedScore])
})
return results
}