Chroma向量存储的similarity_with_score得分越低是否准确率越高?
问题解答
- Chroma的
similarity_search_with_score返回的得分是向量间的距离值,不是你以为的匹配度分数。距离越小,代表查询向量和文档向量的相似度越高,这就是你看到“匹配度高的查询得分反而低”的原因。 - Chroma默认使用余弦距离(Cosine Distance)计算,得分范围在0到2之间:完全匹配的向量对得分接近0,完全不相关的得分接近2。如果你切换过距离计算方式(比如欧氏距离),逻辑也是一样——数值越小,相似度越高。
- 你可以用测试数据集里的完全匹配查询验证:比如拿某篇文档的原文当查询,返回的对应文档得分会接近0,这就能确认这个逻辑。
- 如果想要得到“相似度越高得分越高”的结果,可以手动转换:比如针对余弦距离,用
1 - (得分 / 2)就能得到0到1之间的相似度值,数值越大代表匹配度越高。
内容的提问来源于stack exchange,提问作者ObjectNameDisplay
相关产品推荐
相关产品推荐

