solr-boost

Solr exact word result come first

强颜欢笑 提交于 2020-01-12 10:49:20
问题 In Solr-5.0.0, I have one product_name field. When I search for a word or more than words, its giving results with product names that contain the words. How can I make it as the exact match come first. My Schema.xml is below: <field name="product_name" type="text_wslc" indexed="true" stored="true" required="true" multiValued="false"/> and my field definition is also given below: <fieldType name="text_wslc" class="solr.TextField" positionIncrementGap="100"> <analyzer type="index"> <tokenizer

Solr negative boost

时光怂恿深爱的人放手 提交于 2019-12-24 13:55:04
问题 I'm looking into the possibility of de-boosting a set of documents during query time. In my application, when I search for e.g. "preferences", I want to de-boost content tagged with ContentGroup:"Developer" or in other words, push those content back in the order. Here's the catch. I've the following weights on query fields and boost query on source qf=text^6 title^15 IndexTerm^8 As you can see, title has a higher weight. Now, a bunch of content tagged with ContentGroup:"Developer" consists of

Getting Solr Elevated Results on top of Sorted by field Results

拈花ヽ惹草 提交于 2019-12-24 06:58:30
问题 We are using Solr 5. We are able to apply sorting on display order field in to Solr query and it works fine. We have certain results which are elevated and will always want them first. If we remove the sorting, the elevation works fine. However, we are unable to get both of them work together. We want to first list elevated results in the top and then other results based on the display order field. However, we are unable to find how to do this. Any help will be appreciated. Thanks in advance.

Boost SolR results using users behavior

拈花ヽ惹草 提交于 2019-12-13 00:10:44
问题 I would like SolR to be able to "learn" from my website users' choices. By that i mean that i know which product the user click after he performed a search. So i collected a list of [term searched => number of clicks] for each product indexed in SolR. But i can't figure how to have a boost that depends on the user input. Is it possible to index some key/value pairs for a document and retrieve the value with a function usable in the boost parameter ? I'm not sure to be clear, so i'll add a

How to boost indices query inside a boolean query

半世苍凉 提交于 2019-12-11 13:07:34
问题 So what I'm trying to achieve is partial matching with customized searchable fields per index. I generate a match_phrase_prefix with the value to search, and if it is more than one word, I generate another one per word.(I could use prefix , but it bugged, or has undocumented settings). In this case, I'm trying to look up for "belden cable" ; the query looks like this: { "query":{ "bool":{ "should": [ { "indices":{ "indices":["addresss"], "query":{ "bool":{ "should": [ {"match_phrase_prefix":{

Solr: Set field boost at index-time with DataImportHandler

最后都变了- 提交于 2019-12-11 06:16:43
问题 I need to set a field boost at index-time with DataImportHandler. I tried to do somethings like this: <entity name="places" query="Select id, boost, text from table"> <field name="id" column="id" /> <field name="boost" column="boost" /> <field name="1_text" column="text" boost="${boost}" /> </entity> but it doesn't works. That is the error: Caused by: java.lang.NumberFormatException: For input string: "${boost}" An other approch that i did is to try also to use a script (an transformer, but i

is there a way to tell if a result has been boosted in SOLR?

会有一股神秘感。 提交于 2019-12-06 04:45:28
I've got a search system where I allow users to set their preferences, then I boost results in a SOLR search according to these preferences. I'd like to give the users some visual feedback when a result has been boosted, but to do this I need to find a way to tell if a particular result has been boosted. So far, I've thought of using the score value and if the score is above a certain threshold then I know it's been boosted, however the score seems to change quite a bit from query to query so I don't know how to set such a threshold. If I had access to the pre-boost score somehow in the result

Solr: fieldNorm different per document, with no document boost

谁说我不能喝 提交于 2019-12-06 02:10:28
问题 I want my search results to order by score, which they are doing, but the score is being calculated improperly. This is to say, not necessarily improperly , but differently than expected and I'm not sure why. My goal is to remove whatever is changing the score. If I perform a search that matches on two objects (where ObjectA is expected to have a higher score than ObjectB), ObjectB is being returned first. Let's say, for this example, that my query is a single term: "apples". ObjectA's title:

Solr: fieldNorm different per document, with no document boost

拜拜、爱过 提交于 2019-12-04 07:47:16
I want my search results to order by score, which they are doing, but the score is being calculated improperly. This is to say, not necessarily improperly , but differently than expected and I'm not sure why. My goal is to remove whatever is changing the score. If I perform a search that matches on two objects (where ObjectA is expected to have a higher score than ObjectB), ObjectB is being returned first. Let's say, for this example, that my query is a single term: "apples". ObjectA's title: "apples are apples" (2/3 terms) ObjectA's description: "There were apples in the apples-apples and now

Solr exact word result come first

僤鯓⒐⒋嵵緔 提交于 2019-12-03 21:17:08
In Solr-5.0.0, I have one product_name field. When I search for a word or more than words, its giving results with product names that contain the words. How can I make it as the exact match come first. My Schema.xml is below: <field name="product_name" type="text_wslc" indexed="true" stored="true" required="true" multiValued="false"/> and my field definition is also given below: <fieldType name="text_wslc" class="solr.TextField" positionIncrementGap="100"> <analyzer type="index"> <tokenizer class="solr.WhitespaceTokenizerFactory"/> <filter class="solr.SynonymFilterFactory" synonyms="synonyms