【发布时间】:2022-06-13 10:42:01
【问题描述】:
有没有办法提高 Atlas 搜索中完全匹配的分数?
我在将“hi”从英语翻译成法语时遇到问题。经过一些调试后,我发现从我的聚合返回的前三 (3) 个文档的分数相同,均为“2.362138271331787”。
我预计 'hi' 得分更高,因为它与相同的搜索查询完全匹配,但 'it's his' 和 'his' 似乎与 'hi' 得分相同。
这是我的搜索查询:
const searchOption= [
{
$search: {
text: {
query: 'hi',
path: 'english',
},
},
},
{ $project: { _id: 0, french: 1, english: 1, score: { $meta: "searchScore" } } },
{ $limit: 5 },
];
const result = await Greetings.aggregate(searchOption, { cursor: { batchSize: 5 } }).toArray();
这是退回的文件。该列表按搜索分数排序:
[
{
"english": "it’s his",
"french": "c'est le sien",
"score": 2.362138271331787
},
{
"english": "hi",
"french": "salut",
"score": 2.362138271331787
},
{
"english": "his",
"french": "le sien",
"score": 2.362138271331787
},
{
"english": "it’s his failure to arrange his",
"french": "c'est son incapacité à organiser son",
"score": 2.2482824325561523
},
{
"english": "it’s his failure to arrange his time",
"french": "c'est son incapacité à organiser son temps",
"score": 2.0995540618896484
}
]
【问题讨论】:
标签: javascript database mongodb non-relational-database mongodb-atlas-search