1
votes

We have been working on creating scoring profiles for our search. We need a way to "bury" or give "negative" boosts to some fields in case of types of scoring function "Magnitude", "Freshness", "Tags". We noticed that we cannot add a negative value for boost. Is there any other way to achieve this kind of behavior (burying results based the field) We cannot use $OrderBy because it takes precedence over the scoring profile.

Please advise. Thanks!

4

4 Answers

0
votes

you should only set positive boosting values, as described [here][1]. There may be a few things you could do. The first thing I would try is to set the weight to 0 for the fields that you do not care about. In that case, they will simply not impact the relevance.

Another option: If you know that a field should not impact relevance you could simply make that field not 'searchable'. That said, this is a property of the index definition -- so you would need to create a different index for each combination of non-searchable fields.

Depending on your scenario, you could also make a field filterable, and filter based on that field. Something like $filer=Freshenss eq 'Really Fresh'. See this link for more information on using filters.

thanks! -Luis Cabrera

0
votes

For "Magnitude", "Freshness", you can set the set the range start as higher value and range end as lower value. Would this be considered as negative impact?

Like this: enter image description here

0
votes

I resolved that scenario by creating negative values (using an INT field) for the field we wanted to bury. That gave us the negative boost we needed.

I used a similar technique for Date "Freshness" too, where we counted the days from some event and the higher the number the less fresh the date is and used a "magnitude" function for it.

Thanks!

0
votes

I have thought the about the need for this too.

One idea I have, but haven't tried, is to do a second search on just the negative keywords. That search result will have scores as well.

Then use those scores in a function to reduce first search result scores.

(yes, it would be nicer if it could be do as part of ACS)