Elasticsearch allows you to configure a text scoring algorithm or similarity
per field. The
similarity setting provides a simple way of choosing a
text similarity algorithm other than the default
BM25, such as
Custom similarities can be configured by tuning the parameters of the built-in similarities. For more details about this expert options, see the similarity module.
The only similarities which can be used out of the box, without any further configuration are:
- The Okapi BM25 algorithm. The algorithm used by default in Elasticsearch and Lucene.
- A simple boolean similarity, which is used when full-text ranking is not needed and the score should only be based on whether the query terms match or not. Boolean similarity gives terms a score equal to their query boost.
similarity can be set on the field level when a field is first created,