Question

J'ai réussi à construire un index dans Solr dans lequel je peux effectuer une recherche par mot-clé, produire des facettes, interroger des facettes, etc. Tout cela fonctionne très bien. J'ai implémenté ma recherche à l'aide d'une requête dismax afin qu'elle recherche des champs prédéterminés.

Cependant, mes résultats sont triés par score, ce qui semble être calculé uniquement par pertinence des mots clés. J'aimerais ajuster le score lorsque les champs ont des valeurs prédéterminées. Je pense pouvoir le faire avec des requêtes boost et boost, mais la documentation est la suivante:

Il est préférable de se procurer

N’est pas particulièrement utile. J'ai essayé d'ajouter un argument bq à ma recherche:

&bq=media:DVD^2

(oui, c’est un index de films!) mais je trouve que j’ajoute de plus en plus:

&bq=media:DVD^2&bq=media:BLU-RAY^1.5

Je trouve les résultats négatifs - par exemple les films DVD mais non BLU-RAY ne sont pas affectés négativement dans leur partition. En fin de compte, tout semble s'égaliser et mon score est identique à celui que j'avais avant de commencer à booster.

Je dois mal faire les choses et je me demande si la fonction "boost" " vient quelque part. Des idées sur la façon d'utiliser correctement boost?

Était-ce utile?

La solution 2

Apparemment, cela est normal pour les films DVD mais qui ne sont pas BLU-RAY, qui sont affectés négativement dans leur partition. En effet, plus vous ajoutez de contraintes, plus la valeur de queryNorm est réduite - et tous les scores sont multipliés par cette valeur.

Autres conseils

C'est un peu tard et vous avez probablement déjà ce que vous cherchez, mais ...

Si vous êtes intéressé par les fonctions boost (qui, à en juger par les résultats souhaités, je pense que vous devriez l'être), vous devriez consulter l'argument bf au lieu de < code> bq argument.

Essayez de définir l'argument bf sur

media:DVD^2 media:BLU-RAY^1.5

et je pense que cela pourrait réaliser ce que vous voulez.

Il semble que vous deviez appliquer le boost au moment de l'indexation au lieu du temps de la requête. Par conséquent, lorsque vous préparez des documents à ajouter à l'index, augmentez de 2 le nombre de DVD et de 1,5 le nombre de disques Blu-Ray.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top