1

_score1を超えるドキュメントのみを返そうとしています。その方法がわかりません。返されたすべてのドキュメントを取得し、Ruby コードで個別に再確認できましたが、elasticsearch から直接実行できると思います。

これは私が今持っているクエリです。

tag_results = Tire.search $index_elasticsearch do
            query do
                boolean do
                    should { fuzzy(:tags, query, {:min_similarity => 0.85}) }
                    should { string "description:#{query}" }
                    should { string "description1:#{query}" }
                end
            end
        end

前もって感謝します!

4

2 に答える 2

2

検索でmin_scoreパラメータを使用して、結果が受け入れられるために満たす必要がある最小スコアを指定できます。

ただし、実際には、スコアは異なります。一貫した結果は得られません。関連性の低い結果のみが含まれないように、クエリの要件を十分に高くすることをお勧めします。

たとえば、クエリでのminmum_should_matchパラメータの使用を見てください。それは例えばに設定することができますboolmatch"60%"

于 2013-03-15T10:44:19.197 に答える
0

min_score を Tire に渡す方法があることがわかりました。

すなわち。スコア > 1 の結果だけが必要な場合

Tire.search $index_elasticsearch do
   min_score 1
end
于 2013-06-29T18:09:51.993 に答える