-Solrの:私たちのSolrの中で "iPhoneの" の検索結果の最適化の現在
結果がある -
- のiPhoneカバー
- のiPhoneカバー
- iphoneの7
- iphoneの7S
カバー結果がarであるかどうかe solr入力クエリに "Cover"という単語が含まれている場合にのみ表示されますか?
-Solrの:私たちのSolrの中で "iPhoneの" の検索結果の最適化の現在
結果がある -
カバー結果がarであるかどうかe solr入力クエリに "Cover"という単語が含まれている場合にのみ表示されますか?
field
(検索を実行するフィールド)のfieldType
の使用を変更する必要があります。
正確に一致させる場合は、フィールドのfieldType
をString
と変更してください。
また、 'KeywordTokenizerFactory
'
KeywordTokenizerFactory
使用することができます: -
キーワードトークナイザが全く入力を分割しません。 入力文字列に対して処理が実行されず、文字列全体が単一のエンティティとして保持されます。 これは実際にはトークン化を行いません。元のテキストを1つの用語として返します。
あなたは電子商取引サイトの典型的な問題に遭遇しています。通常、ユーザー検索の対象ではないときにアクセサリー製品が現れ、検索結果がクラスタリングされます。
理想的なソリューション:
あなたはisAccessoryのようないくつかのフィールドを持ち、負それを後押し、ユーザーが実際にアクセサリーを検索するときの付属品がベストマッチ可能にするために得点を残します。または、クエリ内のアクセサリ用語が検出された場合は、否定的なブーストを適用しないでください(そのリストは貴重であり、非常に難しいものではありません)。
これはできませんあなたがなど、あなたのデータだから、
をクロールするとき、この問題を解決するために次のことができます。あなたがトレーニングデータを思い付くことができるかどう
、Solrの中にモデルを訓練し、UpdateRequestProcessorとして設定、インデックスを作成するときにisAccessoryが自動的に設定されます。
最後の手段として、クエリにアクセサリ用語がない場合、すべての「アクセサリ用語」を否定的に後押しする可能性があります。