問題タブ [function-query]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1041 参照

solr - functionquery から Solr スコアをフィルタリングする方法

Solr インスタンスがあり、Solr 関数クエリを使用して、ドキュメントごとに独自のスコアを計算したいと考えています。例として、次のクエリがあるとします。

これを行うと、インデックス内のすべてのドキュメントの数である numfound が結果に含まれます。特定の数値を下回るスコアを持つドキュメントを除外できるようにしたいので、理想的には、次のような rangequery を使用してフィルタリングしたいと考えています。

私のクエリパラメータが結果スコアを決定するためです。しかし、これを行うと、次のようなエラーが表示されます。

代わりに、次のようなフィルターを追加してみました:

これにより正しい結果が得られますが、計算が遅くなる可能性があるため、フィルタークエリでスコア疑似フィールドを使用するか、他の方法でSolrにfunctionqueryの結果をキャッシュさせることができるかどうかを知りたいですクエリパラメータ? または、これを実現する rangequery フィルター アプローチの代替手段はありますか?

0 投票する
1 に答える
1246 参照

java - Solr : Boost 関数クエリに条件を追加する方法

Solr ブースト関数クエリ内で条件を使用できるかどうかを確認しようとしています。現在、次の関数を使用して、いいねデータをブーストしています。

私がやりたいのは、いくつかの条件に基づいて「いいね」にブーストを適用することです。例えば

Source="A" または "B" または "C" の場合、sum(Likes,4)

else-if Source="D" then sum(Likes,3)

そうでなければ合計(いいね、2)。

「if」関数は単一の条件で機能しますが、if-else 条件に対処する方法がわかりません。

パフォーマンスのオーバーヘッドが原因で、ネストされたクエリを回避しようとしています。

任意のポインタをいただければ幸いです。

-ありがとう、

シャミク

0 投票する
1 に答える
1412 参照

elasticsearch - boolクエリ内でscore_modeをmaxとして使用しているが、合計のように機能するfunction_score?

実際に使用しているboolクエリの最大スコアとしてscore_modeを使用できるように、function_scoreを使用しています。実際に内部に2つのブールクエリがあり、ドキュメントのスコアを両方のクエリの中で最大スコアにしたい場合は、私のコードを以下に示しますしかし、両方を一致させるために文字列を渡すと、スコアが追加されて最大になることはありません。どうすればそれを達成できるか教えてください。

0 投票する
1 に答える
100 参照

customization - Solr FunctionQueries のような Azure 検索でカスタム関数クエリを追加できますか

Azure 検索で Web サイトの検索エンジンを構築しており、検索に複雑なロジック ルールを追加する必要があります。C# や Python などのプログラミング言語で簡単に記述できますが、クエリ構文は難しいです。SolrにはFunctionQueriesのような機能があり、エラスティック検索はPythonスクリプトを実行できるのを見ました。Azure 検索サービスはどうですか?