我正在通过solrj实现应用程序将参数写入bq查询。我的一些字段我希望负提升(即(id:-abc123)^3),如这里所示,但是每当我搜索时,我都会得到日志记录错误:
"org.apache.solr.search.SyntaxError:无法解析“
它还显示了应该编写的查询(以及它是如何从web中运行的)。为什么它不能在SolrJ中正确地解析,而是通过HTML解析呢?
发布于 2013-07-24 21:35:35
查询如下:
bq=(-id:abc123)^3
除了使用id=abc123的文档之外,其他所有东西都会得到增强。
您可以尝试通过查询降低文档的得分,例如:
bq=(id:abc123)^0.3
在项目中,我的工作是绑定它,但是在一天结束的时候,我在索引过程中使用了增强(我是基于文档“类”来做的)。这个解决方案对我很管用。
发布于 2013-07-24 17:44:49
我不建议使用烧烤,因为它是一个添加剂的推动。它很难预测影响,因为它取决于术语频率和整体查询得分。您可以尝试使用包含函数值的BOOST参数,比如if(存在(查询({!v=‘id: its 123’})),1/3,1),这样具有abc123的文档的分数乘以1/3
https://stackoverflow.com/questions/17839038
复制相似问题