问题标签 [solr-boost]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
solr - Solr 将所有有条件的文档降级
我想将所有具有 inv=0(可能值从 0 到 1000)的文档降级到结果集的末尾。我还有其他排序选项,例如名称 desc 也作为查询的一部分。
例如下面是我的 solr 文档
我想实现下面的排序......在这里,我想将所有 inv=0 的文档推到底部,然后应用“name asc”排序。
我的 solr 请求就像
bq: "( : AND -inv:"0")^999.0" & defType: "edismax"
这里 999 是我给降级结果的等级。
这个提升查询工作正常。它将所有 inv=0 的文档移到底部。
但是,当我将 &sort=name asc 添加到 solr 查询时,它会将“排序”优先于 bq ..我看到下面的结果是“name asc”。
谁能帮帮我。?
solr - 使用 json POST 请求提高最近距离
我想提升最近距离文件。我在文档的帮助下构建了以下内容:
邮寄至:
{{solr-host}}:8983/solr/{{collection}}/select?rows=5
身体:
但是,我没有得到任何locaiton_ps
回应。
有任何想法吗?
elasticsearch - 弹性搜索提升
我有一个名为的索引find
和一个名为song
. 歌曲类型结构:
由于多首歌曲可能具有相同的字段值,所以我需要通过诸如 downloadCount 之类的流行字段来提升结果。
如何更改以下查询以通过 downloadCount 进行优化?
solr - solrcloud5:如何设置词典自动提升查询词?
我想在自动查询时增加一些重要的术语,如何处理?例如查询词组:“apple tree”,我想通过词典自动设置“apple”权重“2”,高于“tree”的词条。有没有更好的办法?
elasticsearch - 具有多个值的字段中的弹性搜索提升查询
我在弹性搜索索引中有一些文档。这是示例文档
文档1
文档2
文档3
我想查询具有值“hi”和“hello”的 feild1,如果两者都存在,那么如果存在任何一个,那么该文档应该首先出现,那么它应该在那之后出现。例如:结果应按 DOC1、DOC3、DOC2 的顺序排列。我尝试了提升查询。但它不是按照我想要的顺序重新调整。这是我正在尝试的查询。
这是首先返回那些带有“hi”的文件,然后是那些带有“hello”的文件。提前致谢!
elasticsearch - 在 Elastic Search 中使用 boost 字段的查询字符串
我正在Query String
使用Boost Fields
in Elastic Search 1.7
。它工作正常,但在某些情况下,我没有得到预期的结果。
询问:
样本数据 :
我通过使用查询获得了上面的示例数据,这符合预期。但是现在,如果我增加到100 weight
,year
那么我期望在第 3 位获得第 4 个结果,在第 4 个位置获得第 3 个结果。我尝试了很多东西,但我不知道我做错了什么。
solr - Solr:通过字符串字段提升
如何通过字符串字段提升查询?我只找到了解释日期提升的资源。
例如,这些文档应该按以下顺序提升:
- 优先级=a
- 优先级=b
- 优先级=c
我知道,我可以按优先级排序,但我想将此字段与 solr 相关性机制结合起来。
python - 如何使用多个字段搜索模型并为其设置优先级?
我正在使用 Haystack 在数据库中搜索用户。我想检查用户名、城市名和州名(+ 州名)。
我已经使用ElasticSearchEdgeNgramField完成了自动完成。
和搜索。
sqs = sqs.autocomplete(name_auto=request.GET.get('q', ''))
我在数据库中有 2 个用户:
- 杰克亨特,俄克拉荷马州,OK
- 杰克史密斯,亨茨维尔,AL
当我搜索“杰克亨特”时,我得到:
- 杰克史密斯,亨茨维尔,AL
- 杰克亨特,俄克拉荷马州,OK
原因是城市。因此,如果名称匹配,我正在寻找提升用户的方法。
我找到了一种解决方案。
按照https://django-haystack.readthedocs.io/en/master/boost.html中的示例
但是在搜索“Jack Hunt”之后,我没有找到来自 Huntsville 的 Jack Smith。因为他的名字不像“杰克亨特”,他的城市也不像“杰克亨特”。我知道我可以搜索每个单词。但它不是很“弹性”。
我该怎么做才能在 4 个字段上自动完成并为其中一个字段赋予更多权重?
boost - Solr 中的常量提升多值字段
我有一个存储字符串的多值字段,我需要对其执行查询。它将 ID 存储为字符串。所以,这是领域:
查询看起来像
这会过滤掉字段为 23 或 24 的文档。具有这两个 ID 的文档位于顶部,具有这两个 ID 的文档位于下方。
我想要的是不断提升 2。如果至少有一个 ID 匹配,则将其提升 2。我如何实现这样的目标?
lucene - Sitecore lucene + 计算日期字段的查询提升
我们正在使用 Lucene 搜索我们的一个项目。该网站发展迅速,需要改进搜索。一个关键的事情是混合新近度和相关性。
目前,搜索发生在用户在某些指定字段(如页面标题、内容等)中输入的关键术语上,并返回得分最高的结果。
现在用户发现这些结果并不是很有用,因为他们在顶部看到旧日期的文章。虽然内容是相关的,但它不是最近的。
我们需要提升搜索结果以包含发布/更新日期。我们有一个计算列(publishedupdateddate),如何使用查询时间提升来提升搜索结果?
如果不是查询时间,我们是否有任何其他方式在计算项目分数时包含日期...
请指教