{"id":406,"date":"2024-07-27T15:14:13","date_gmt":"2024-07-27T15:14:13","guid":{"rendered":"https:\/\/habett.fr\/blog\/?p=406"},"modified":"2024-08-19T11:11:21","modified_gmt":"2024-08-19T11:11:21","slug":"my-ranker","status":"publish","type":"post","link":"https:\/\/habett.fr\/blog\/2024\/07\/my-ranker\/","title":{"rendered":"My Ranker"},"content":{"rendered":"\n<p>J&rsquo;adore SolR mais certaines choses sont plus compliqu\u00e9es \u00e0 faire. Je voulais me faire un algorithme de ranking personnel bas\u00e9 sur la pertinence (de base) et sur une valeur num\u00e9rique (karma ou date par exemple), ainsi que donner plus d&rsquo;importance \u00e0 certains champs. Ainsi, sur mon SolrR 8, cela se formule comme \u00e7a (je ne mets ici que les param\u00e8tres diff\u00e9rents d&rsquo;une utilisation) :<\/p>\n\n\n\n<p><code>defType=edismax<\/code><\/p>\n\n\n\n<p><code>&amp;q=remix test<\/code><\/p>\n\n\n\n<p><code>&amp;sort=product($qq,karma)+desc<\/code><\/p>\n\n\n\n<p><code>&amp;qq={!edismax v=\"remix test\" qf=\"title^20 description^2 author^10 \"}<\/code><\/p>\n\n\n\n<p>J&rsquo;aurais aim\u00e9 mettre dans <code>qq, v=$q<\/code> au lieu de r\u00e9p\u00e9ter la requ\u00eate mais j&rsquo;ai l&rsquo;impression que ce n&rsquo;est pas valable. En tout cas mon ranking est alors bien meilleur.<\/p>\n\n\n\n<p>Enfin, pour ce qui est mettre un bonus aux documents les plus r\u00e9cents, toujours en edismax, j&rsquo;ajoute: <code>&amp;bf=sqrt(sqrt(ms(dated)))<\/code>. Il est pertinent d&rsquo;ajuster la fonction ms avec une origine temporelle du d\u00e9compte: <code>ms(mydatefield, 2000-01-01T00:00:00Z)<\/code><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>J&rsquo;adore SolR mais certaines choses sont plus compliqu\u00e9es \u00e0 faire. Je voulais me faire un algorithme de ranking personnel bas\u00e9 sur la pertinence (de base) et sur une valeur num\u00e9rique (karma ou date par exemple), ainsi que donner plus d&rsquo;importance \u00e0 certains champs. Ainsi, sur mon SolrR 8, cela se formule comme \u00e7a (je ne &hellip; <a href=\"https:\/\/habett.fr\/blog\/2024\/07\/my-ranker\/\" class=\"more-link\">Continuer la lecture de <span class=\"screen-reader-text\">My Ranker<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[77,75,76],"class_list":["post-406","post","type-post","status-publish","format-standard","hentry","category-non-classe","tag-fiddler","tag-solr","tag-url"],"_links":{"self":[{"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/posts\/406","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/comments?post=406"}],"version-history":[{"count":4,"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/posts\/406\/revisions"}],"predecessor-version":[{"id":418,"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/posts\/406\/revisions\/418"}],"wp:attachment":[{"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/media?parent=406"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/categories?post=406"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/habett.fr\/blog\/wp-json\/wp\/v2\/tags?post=406"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}