在solr中包含同义词而不使用synonyms.txt

时间:2012-07-12 02:37:41

标签: drupal solr drupal-6

我正在使用Drupal Apache Solr进行搜索。在这里我找到了一个synonyms.text文件,你可以在其中为你想要的单词手动包含同义词。

但我认为由于我的应用程序有大量数据,因此很难手动为每个单词包含同义词。

我想要实现的目标如下:

  

当用户搜索allu代替马铃薯时,我们将显示马铃薯作为第一个结果。

     

另一个例子:当用户搜索'raw apple'时,我们会将'apple'显示为第一条记录,因为'raw apple'是'apple'的同义词。

但问题是100K记录,每条记录有4-5个同义词。无法手动输入。

另一个问题是如果我想对特定记录的同义词进行更改,我将不得不手动完成,这也很耗时。

我想知道还有其他选项,以便我不需要手动输入同义词吗?

2 个答案:

答案 0 :(得分:1)

IMO这接近搜索引擎优化。您也可能很难手动管理同义词。

关注印度电子零售网站正在采取哪些措施来容纳同义词。例如,电子零售商店通过重新命名某个产品 belly shoes 进行了调整,因为购物者往往会误读并拼错“芭蕾”。在用户真正搜索它们之前,他们不会预料到它。

所以记录所有返回少量结果的请求(以及其他不满意的客户)。维护索引中的同义词列表。在添加新产品时在关键字中包含这些同义词:添加产品x y z时,会自动将所有同义词提取到xyz并让您的数据输入伙计们选择他们。

'type':'synonym'
'terms':'ballet','belly'

'type':'synonym'
'terms':'potato','allu','aloo'

'type':'product'
'name':'home garden potato planter'
'keywords':'allu','aloo'

'type':'product'
'name':'aloo mutter fry mix'
'keywords':'potato','allu','cheese'

答案 1 :(得分:0)

我们可以在索引中维护一个同义词列表。并通过添加新产品在关键字中包含这些同义词。当添加新产品a b c时,它可以获取a,b和c的同义词。

'type':product' 'name':'monety carlo shirt for men' 'keywords':'montey carlo','shirt'

示例:Online Shopping Store已适应重命名某些产品并拼错名称。