Interface ITermSuggester
The term suggester suggests terms based on edit distance. The provided suggest text is analyzed before terms are suggested. The suggested terms are provided per analyzed suggest text token. The term suggester doesn’t take the query into account that is part of request.
Namespace: OpenSearch.Client
Assembly: OpenSearch.Client.dll
Syntax
public interface ITermSuggester : ISuggester
Properties
| Edit this page View SourceLowercaseTerms
Lower cases the suggest text terms after text analysis.
Declaration
[DataMember(Name = "lowercase_terms")]
bool? LowercaseTerms { get; set; }
Property Value
Type | Description |
---|---|
bool? |
MaxEdits
The maximum edit distance candidate suggestions can have in order to be considered as a suggestion. Can only be a value between 1 and 2. Any other value result in an bad request error being thrown. Defaults to 2.
Declaration
[DataMember(Name = "max_edits")]
int? MaxEdits { get; set; }
Property Value
Type | Description |
---|---|
int? |
MaxInspections
A factor that is used to multiply with the shards_size in order to inspect more candidate spell corrections on the shard level. Can improve accuracy at the cost of performance. Defaults to 5.
Declaration
[DataMember(Name = "max_inspections")]
int? MaxInspections { get; set; }
Property Value
Type | Description |
---|---|
int? |
MaxTermFrequency
The maximum threshold in number of documents a suggest text token can exist in order to be included. Can be a relative percentage number (e.g 0.4) or an absolute number to represent document frequencies. If an value higher than 1 is specified then fractional can not be specified. Defaults to 0.01f. This can be used to exclude high frequency terms from being spellchecked. High frequency terms are usually spelled correctly on top of this also improves the spellcheck performance. The shard level document frequencies are used for this option.
Declaration
[DataMember(Name = "max_term_freq")]
float? MaxTermFrequency { get; set; }
Property Value
Type | Description |
---|---|
float? |
MinDocFrequency
The minimal threshold in number of documents a suggestion should appear in. This can be specified as an absolute number or as a relative percentage of number of documents. This can improve quality by only suggesting high frequency terms. Defaults to 0f and is not enabled. If a value higher than 1 is specified then the number cannot be fractional. The shard level document frequencies are used for this option.
Declaration
[DataMember(Name = "min_doc_freq")]
float? MinDocFrequency { get; set; }
Property Value
Type | Description |
---|---|
float? |
MinWordLength
The minimum length a suggest text term must have in order to be included. Defaults to 4.
Declaration
[DataMember(Name = "min_word_length")]
int? MinWordLength { get; set; }
Property Value
Type | Description |
---|---|
int? |
PrefixLength
The number of minimal prefix characters that must match in order be a candidate suggestions. Defaults to 1. Increasing this number improves spellcheck performance. Usually misspellings don’t occur in the beginning of terms.
Declaration
[DataMember(Name = "prefix_length")]
int? PrefixLength { get; set; }
Property Value
Type | Description |
---|---|
int? |
ShardSize
Sets the maximum number of suggestions to be retrieved from each individual shard. During the reduce phase only the top N suggestions are returned based on the size option. Defaults to the size option. Setting this to a value higher than the size can be useful in order to get a more accurate document frequency for spelling corrections at the cost of performance. Due to the fact that terms are partitioned amongst shards, the shard level document frequencies of spelling corrections may not be precise. Increasing this will make these document frequencies more precise.
Declaration
[DataMember(Name = "shard_size")]
int? ShardSize { get; set; }
Property Value
Type | Description |
---|---|
int? |
Sort
Defines how suggestions should be sorted per suggest text term
Declaration
[DataMember(Name = "sort")]
SuggestSort? Sort { get; set; }
Property Value
Type | Description |
---|---|
SuggestSort? |
StringDistance
Which string distance implementation to use for comparing how similar suggested terms are.
Declaration
[DataMember(Name = "string_distance")]
StringDistance? StringDistance { get; set; }
Property Value
Type | Description |
---|---|
StringDistance? |
SuggestMode
Controls what suggestions are included or controls for what suggest text terms, suggestions should be suggested.
Declaration
[DataMember(Name = "suggest_mode")]
SuggestMode? SuggestMode { get; set; }
Property Value
Type | Description |
---|---|
SuggestMode? |
Text
The suggest text
Declaration
[IgnoreDataMember]
string Text { get; set; }
Property Value
Type | Description |
---|---|
string |