Class Rescorer

java.lang.Object
org.apache.lucene.search.Rescorer
Direct Known Subclasses:
QueryRescorer, SortRescorer

public abstract class Rescorer extends Object
Re-scores the topN results (TopDocs) from an original query. See QueryRescorer for an actual implementation. Typically, you run a low-cost first-pass query across the entire index, collecting the top few hundred hits perhaps, and then use this class to mix in a more costly second pass scoring.

See QueryRescorer.rescore(IndexSearcher,TopDocs,Query,double,int) for a simple static method to call to rescore using a 2nd pass Query.

WARNING: This API is experimental and might change in incompatible ways in the next release.
  • Constructor Details

    • Rescorer

      public Rescorer()
  • Method Details

    • rescore

      public abstract TopDocs rescore(IndexSearcher searcher, TopDocs firstPassTopDocs, int topN) throws IOException
      Rescore an initial first-pass TopDocs.
      Parameters:
      searcher - IndexSearcher used to produce the first pass topDocs
      firstPassTopDocs - Hits from the first pass search. It's very important that these hits were produced by the provided searcher; otherwise the doc IDs will not match!
      topN - How many re-scored hits to return
      Throws:
      IOException
    • explain

      public abstract Explanation explain(IndexSearcher searcher, Explanation firstPassExplanation, int docID) throws IOException
      Explains how the score for the specified document was computed.
      Throws:
      IOException