On some additional tests, it looks like it's the phrase matching in particular that is the issue, if I take that out I do seem to be getting better results. I definitely don't want to get rid of those so need to find a way to make them work together.
Sent with MailTrack <https://mailtrack.io/install?source=signature&lang=en&referral=mjsmin...@gmail.com&idSignature=22> On Fri, Jun 3, 2016 at 2:21 PM, MaryJo Sminkey <mjsmin...@gmail.com> wrote: > Okay so big thanks for the help with getting the hon_lucene_synonyms > plugin working. That is a big load off to finally have a solution in place > for all our multi-term synonyms. We did find that the information in Step 8 > about the plugin showing "SynonymExpandingExtendedDismaxQParser" for > QParser does not seem to be correct, we only ever get > "ExtendedDismaxQParser" but the synonym expansion is definitely working. > > In implementing it though, the one thing I'm still having an issue with is > trying to figure out how I can get results on the original term to appear > first in our results and matches on the synonyms lower in the results. The > plugin includes settings for an originalboost and synonymboost, but that > doesn't seem to be working along with all the other edismax boosts I'm > doing. We search across a number of fields, each with their own boost and > then do phrase searches with boosts as well. My params look like this: > > params["defType"] = 'synonym_edismax'; > params["qf"] = 'body^0.5 productinfo^1.0 keywords^2.0 prodname^10.0 > prodnumbertext^20.0'; > params["pf"] = 'productinfo^1 body^5 keywords^10 prodname^50'; > params["pf2"] = 'productinfo^1 body^5 keywords^10 prodname^50'; > params["pf3"] = 'productinfo^1 body^5 keywords^10 prodname^50'; > params["ps"] = 1; > params["tie"] = 0.1; > params["synonyms"] = true; > params["synonyms.originalBoost"] = 2.0; > params["synonyms.synonymBoost"] = 0.5; > > And here's an example of what the plugin gives me for a search on "sbc" > which includes synonyms for "sb" and "small block".... I don't really know > enough about this to figure out what exactly it's doing but since all of > the results I am getting first are ones with "small block" in the name, and > the ones with "sbc" in the prodname field which should be first are buried > about 1000 documents in, I know the originalboost and synonymboost aren't > working with all this other stuff. Ideas how to fix this? With the normal > synonym filter we just set up copies of the fields that could have synonyms > to use with that filter applied and had a lower boost on those. Not sure > how to make it work with this custom query parser though. > > +((prodname:sbc^10.0 | body:sbc^0.5 | productinfo:sbc | keywords:sbc^2.0 | > (((prodnumbertext:sbc prodnumbertext:small prodnumbertext:sb) > prodnumbertext:block)~2)^20.0)~0.1^2.0 (((+(prodname:sb^10.0 | body:sb^0.5 > | productinfo:sb | keywords:sb^2.0 | (((prodnumbertext:sb > prodnumbertext:small prodnumbertext:sbc) prodnumbertext:block)~2)^20.0)~0.1 > ()))^0.5) (((+(((prodname:small^10.0 | body:small^0.5 | productinfo:small | > keywords:small^2.0 | prodnumbertext:small^20.0)~0.1 (prodname:block^10.0 | > body:block^0.5 | productinfo:block | keywords:block^2.0 | > prodnumbertext:block^20.0)~0.1)~2) (productinfo:"small block"~1 | > body:"small block"~1^5.0 | keywords:"small block"~1^10.0 | prodname:"small > block"~1^50.0)~0.1 (productinfo:"small block"~1 | body:"small block"~1^5.0 > | keywords:"small block"~1^10.0 | prodname:"small > block"~1^50.0)~0.1))^0.5)) () > > > Mary Jo > >