setNaturalLanguages method

AlgoliaQuery setNaturalLanguages(
  1. List<String> value
)

NaturalLanguages

This parameter changes the default values of certain parameters and settings that work best for a natural language query, such as ignorePlurals, removeStopWords, removeWordsIfNoResults, analyticsTags and ruleContexts. These parameters and settings work well together when the query is formatted in natural language instead of keywords, for example when your user performs a voice search.

The naturalLanguages parameter changes the following parameters and setttings:

  • removeStopWords and ignorePlurals are set to the given list of languages.
  • removeWordsIfNoResults is set allOptional.
  • It adds the natural_language value to ruleContexts.
  • It adds the natural_language value to analyticsTags.

Usage notes:

  • For optimal relevance, we recommend to only pass languages that occur in your data.

  • List of supported languages with their associated language ISO code:

    Afrikaans=af    Arabic=ar     Azerbaijani=az    Bulgarian=bg    Bengali=bn     Catalan=ca    Czech=cs        Welsh=cy
    Danish=da       German=de     Greek=el          English=en      Esperanto=eo   Spanish=es    Estonian=et     Basque=eu
    Persian (Farsi)=fa            Finnish=fi        Faroese=fo      French=fr      Irish=ga      Galician=gl     Hebrew=he
    Hindi=hi        Hungarian=hu  Armenian=hy       Indonesian=id   Icelandic=is   Italian=it    Japanese=ja     Georgian=ka
    Kazakh=kk       Korean=ko     Kurdish=ku        Kirghiz=ky      Lithuanian=lt  Latvian=lv    Maori=mi        Mongolian=mn
    Marathi=mr      Malay=ms      Maltese=mt        Norwegian Bokmål=nb            Dutch=nl      Norwegian=no    Northern Sotho=ns
    Polish=pl       Pashto=ps     Portuguese=pt     Brazilian=pt-br                Quechua=qu    Romanian=ro     Russian=ru
    Slovak=sk       Albanian=sq   Swedish=sv        Swahili=sw     Tamil=ta        Telugu=te     Thai=th         Tagalog=tl
    Tswana=tn       Turkish=tr    Tatar=tt          Ukranian=uk    Urdu=ur         Uzbek=uz      Chinese=zh
    

Source: Learn more

Implementation

AlgoliaQuery setNaturalLanguages(List<String> value) {
  assert(value.isNotEmpty, 'value can not be empty');
  assert(!_parameters.containsKey('naturalLanguages'));
  return _copyWithParameters(<String, dynamic>{'naturalLanguages': value});
}