Class WandItem

All Implemented Interfaces:
TaggableItem, Cloneable

public class WandItem extends WeightedSetItem
A weighted set query item to be evaluated as a Wand with dot product scoring. The dot product is calculated between the matched tokens of the weighted set field searched and the weights associated with the tokens of this WandItem. The resulting dot product will be available as a raw score in the rank framework.
Author:
geirst
  • Constructor Details

    • WandItem

      public WandItem(String fieldName, int targetNumHits)
      Creates an empty WandItem.
      Parameters:
      fieldName - the name of the weighted set field to search with this WandItem.
      targetNumHits - the target for minimum number of hits to produce by the backend search operator handling this WandItem.
    • WandItem

      public WandItem(String fieldName, int targetNumHits, Map<Object,Integer> tokens)
      Creates an empty WandItem.
      Parameters:
      fieldName - the name of the weighted set field to search with this WandItem.
      targetNumHits - the target for minimum number of hits to produce by the backend search operator handling this WandItem.
      tokens - the tokens to search for
  • Method Details

    • setScoreThreshold

      public void setScoreThreshold(double scoreThreshold)
      Sets the initial score threshold used by the backend search operator handling this WandItem. The score of a document must be larger than this threshold in order to be considered a match. Default value is 0.0.
      Parameters:
      scoreThreshold - the initial score threshold.
    • setThresholdBoostFactor

      public void setThresholdBoostFactor(double thresholdBoostFactor)
      Sets the boost factor used by the backend search operator to boost the threshold before comparing it with the upper bound score of the document being evaluated. A large value of this factor results in fewer full evaluations and in an expected loss in precision. Similarly, a gain in performance might be expected. Default value is 1.0. NOTE: This boost factor is only used when this WandItem is searching a Vespa field.
      Parameters:
      thresholdBoostFactor - the boost factor.
    • getTargetNumHits

      public int getTargetNumHits()
    • getScoreThreshold

      public double getScoreThreshold()
    • getThresholdBoostFactor

      public double getThresholdBoostFactor()
    • getItemType

      public Item.ItemType getItemType()
      Description copied from class: Item
      Return the enumerated type of this item.
      Overrides:
      getItemType in class WeightedSetItem
    • encodeThis

      protected void encodeThis(ByteBuffer buffer)
      Overrides:
      encodeThis in class WeightedSetItem
    • appendHeadingString

      protected void appendHeadingString(StringBuilder buffer)
      Description copied from class: Item
      Appends the heading of this string. As default getName() followed by a space.
      Overrides:
      appendHeadingString in class Item
    • disclose

      public void disclose(Discloser discloser)
      Overrides:
      disclose in class WeightedSetItem
    • equals

      public boolean equals(Object o)
      Description copied from class: Item
      Returns whether this item is of the same class and contains the same state as the given item.
      Overrides:
      equals in class WeightedSetItem
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class WeightedSetItem