You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Jayadevan Maymala <ja...@ftltechsys.com> on 2020/10/17 03:51:06 UTC

Improve results/relevance

Hi all,

We have a catalogue of many products, including smart phones.  We use
*edismax* query parser. If someone types in iPhone 11, we are getting the
correct results. But iPhone 11 Pro is coming before iPhone 11. What options
can be used to improve this?

Regards,
Jayadevan

Re: Improve results/relevance

Posted by Konstantinos Koukouvis <ko...@mecenat.com>.
Hi Jayadevan,

There are a couple of ways to achieve the result you want! Two things you could do from the top of my head are: You could sort the results based on some field, or boost some fields so that they get a higher score.

> On 17 Oct 2020, at 05:51, Jayadevan Maymala <ja...@ftltechsys.com> wrote:
> 
> Hi all,
> 
> We have a catalogue of many products, including smart phones.  We use
> *edismax* query parser. If someone types in iPhone 11, we are getting the
> correct results. But iPhone 11 Pro is coming before iPhone 11. What options
> can be used to improve this?
> 
> Regards,
> Jayadevan

==================================================
Konstantinos Koukouvis
konstantinos.koukouvis@mecenat.com

Using Golang and Solr? Try this: https://github.com/mecenat/solr






Re: Improve results/relevance

Posted by Charlie Hull <ch...@flax.co.uk>.
Hi,

A few strategies you can use:

1. First you need to know why the result has matched. Solr provides 
detailed debug info but it's not easy to interpret. Consider using 
something like www.splainer.io to give you better visibility 
(disclaimer: this is something we maintain, there are other alternatives 
including a cool Chrome plugin). You can now see where scores are being 
calculated.

2. Next you should read up on how Lucene/Solr edismax scoring works - 
remember it's a 'winner takes all' strategy. Here's a great blog by Doug 
on this 
https://opensourceconnections.com/blog/2013/07/02/getting-dissed-by-dismax-why-your-incorrect-assumptions-about-dismax-are-hurting-search-relevancy/ 
. Now you should know why your results are being ordered as they are.

3. You've now got lots of options: you should set up some tests (perhaps 
use Quepid? www.quepid.com disclaimer: yes that's us too :) to monitor 
what happens as you try each and to check for side-effects. You could 
boost exact phrase matches - here's one way to do this 
http://everydaydeveloper.blogspot.com/2012/02/solr-improve-relevancy-by-boosting.html 
or you could use Querqy which gives you much more flexibility 
https://querqy.org/ (check out SMUI too as this is a great way to manage 
Querqy rules).

4. What you're doing is active search tuning for ecommerce, and this 
won't be the first example you'll come across. You should also implement 
a system for tracking these kinds of issues, what you do to fix them and 
the tests carried out: it's analogous to a bug tracker and something we 
call a 'Relevancy Register'. Otherwise you'll end up with a huge pile of 
hacks and will swiftly forget why they were implemented and what problem 
they were trying to solve!

5. We're running a blog series about ecommerce search which you might 
want to follow: 
https://opensourceconnections.com/blog/2020/07/07/meet-pete-the-e-commerce-search-product-manager/

HTH

Charlie

On 17/10/2020 04:51, Jayadevan Maymala wrote:
> Hi all,
>
> We have a catalogue of many products, including smart phones.  We use
> *edismax* query parser. If someone types in iPhone 11, we are getting the
> correct results. But iPhone 11 Pro is coming before iPhone 11. What options
> can be used to improve this?
>
> Regards,
> Jayadevan
>

-- 
Charlie Hull
OpenSource Connections, previously Flax

tel/fax: +44 (0)8700 118334
mobile:  +44 (0)7767 825828
web: www.o19s.com