我们说我的文档中包含一个自由文本字段,用于描述企业属于哪种类型的分支:
示例1:" IT咨询专注于医疗保健解决方案"
示例2:"为美国境内的在线客户提供财务建议"
我希望与Solr或Lucene达成一致意见,即在考虑潜在同义词的文本中描述业务运营分类。所以第一个例子变成了如下图: 信息技术< - [in] - 咨询 - [on] - >健康关怀
示例2将是: 财务< - [in] - 咨询
咨询或建议等操作是同义词,具体取决于具体情况。
答案 0 :(得分:1)
对于同义词,设置分析器以使用SynonymFilterFactory并在同义词文件中,例如
<filter class="solr.SynonymFilterFactory" synonyms="business-synonyms.txt" ignoreCase="true" expand="true" />
该文件看起来像:
IT,information technology
advising,consulting
等。虽然“IT”和不区分大小写,但它可能会扩展“it”这个词的正常使用,因此您可能需要尝试一下哪种方法最适合您的数据。
如果同义词需要上下文,那么它会变得更加棘手。
其次,要仅对您感兴趣的内容编制索引,可以使用KeepWordFilterFactory。您需要在文本文件中列出您有兴趣索引的所有单词。
此设置将为您感兴趣的所有关键字创建索引,包括同义词。因此,您可以搜索特定的商家类型,例如“IT咨询医疗保健”和Solr将能够使用同义词及其评分系统检索匹配。