NGramTokenFilter
Generates n-grams from tokens at the token level (after tokenization).
Import
typescript
import NGramTokenFilter from 'dynamosearch/filters/NGramTokenFilter';Constructor
typescript
new NGramTokenFilter(options?: { minGram?: number; maxGram?: number })Parameters
- minGram (
number, optional) - Minimum n-gram size (default:1) - maxGram (
number, optional) - Maximum n-gram size (default:2)
Example
typescript
const filter = new NGramTokenFilter({ minGram: 2, maxGram: 3 });
const tokens = filter.apply([
{ token: 'hello', startOffset: 0, endOffset: 5, position: 0 },
]);
// Generates n-grams: he, el, ll, lo, hel, ell, lloBest For
- Partial token matching
- Autocomplete
- Fuzzy search
See Also
- NGramTokenizer - For character-level n-grams
- EdgeNGramTokenFilter - For edge n-grams