首页 > 解决方案 > Solr 中的词干参数

问题描述

是否有任何参数(如(edismax 或 dismax 或任何其他)我可以设置用于在 Solr 中进行词干提取,或者我需要在 Solr 的 schema.xml 中进行更改以实现词干提取?问题是我是否默认更改了我不想要的词干/语音工作的 schema.xml?我正在使用来自第三方应用程序的 Solr,在 UI 中我们有用于检查/取消选中的复选框,我将这些参数传递给 Solr 并从 Solr 获取数据,我无法将此 UI 参数传递给 SOlr,所以如果有任何参数在Solr方面我可以通过它来阻止工作吗?

请告诉我 ?

标签: solrstemming

解决方案


词干提取作为分析链的一部分执行,因此是该特定字段的模式定义方式的一部分。

当您考虑词干提取的工作原理时,其原因就很明显了——为了使词干提取有意义,必须在对其进行索引时以及在查询时对术语进行词干提取。

Lucene 获取您的输入字符串,通过您的分析链运行它并将生成的标记保存到其索引中。在通过空格标记并应用词干之后,给出它what are you asking可能会以what, are,结尾。youask

查询时会发生相同的操作,因此如果有人搜索asks,则令牌会被提取到ask- 然后与索引中的内容进行比较。如果在索引时没有进行词干提取,那么您最终会asking在索引中,并且ask在查询时 - 这不匹配,因为令牌不一样。

在您的第三方应用程序中,词干提取选项可能会在将内容发送到 Solr 之前在应用程序内部执行词干提取。

您还可以使用 Schema API 来动态更新和更改字段类型定义


推荐阅读