如果数据集中的多个单词具有相同的含义,则可以创建一个同义词列表。这将使你的搜索结果更加相关。通常,对单词的搜索将返回与对其任何同义词的搜索相同的结果。这条规则有一个例外,详见下文。
在索引过程中,所有同义词都采用小写和去除单一格式。
示例:考虑一下把“ Résumé”和“ CV”作为同义词的情况。
{
"Résumé": [
"CV"
],
"CV": [
"Résumé"
]
}
搜索“ CV”将返回任何包含“ CV”或“ CV”的文件,以及任何包含“ Résumé”、“ resumé”、“ resumé”等不受大小写或重音符号影响的文件。
当你想让一个词成为另一个词的同义词时使用这个词,但不要反过来使用。
phone => iphone
搜索 phone 将返回包含 iphone 的文档,就好像它们包含了单词 phone。然而,如果你搜索 iphone,包含手机的文档在搜索结果中的排名会因为输入错误而降低.
示例:要创建单向的同义词列表,应该将 JSON 语法添加到设置中。
{
"phone": [
"iphone"
]
}
通过将一个或多个同义词相互关联,它们在两个方向上都会被认为是相同的。
shoe <=> boot <=> slipper <=> sneakers
当使用其中一个单词进行搜索时,所有同义词将被视为同一个单词,并将出现在搜索结果中。
示例:要在四个单词之间创建相互关联,应该将 JSON 语法添加到设置中。
{
"shoe": [
"boot",
"slipper",
"sneakers"
],
"boot": [
"shoe",
"slipper",
"sneakers"
],
"slipper": [
"shoe",
"boot",
"sneakers"
],
"sneakers": [
"shoe",
"boot",
"slipper"
]
}
请注意,多词短语的处理方式不同于单个词之间的关联。当一个多词短语被认为是另一个词或短语的同义词时,精确的搜索查询将始终优先于其同义词。
多词同义词最多不超过三个词。例如,虽然你可以把“英雄联盟”和“ LOL”变成同义词,但是你不能把“指环王”和“LOTR”变成同义词。
示例: 假设您将“ San Francisco”和“ SF”设置为相互关联的同义词
{
"san francisco": [
"sf"
],
"sf": [
"san francisco"
]
}
如果您输入“ SF”作为搜索查询,那么包含“ San Francisco”的结果也会返回。然而,它们被认为不如包含“ SF”的那些相关性大。反之亦然。