Multilingual Virtual Assistant Behavior¶
In the case of multi-lingual bots, while much of the bot behavior does not change with the language, but the language semantics does impose some restrictions. In this document we will list out the different behaviors that would be language-dependent, so you as bot developer can cater for such scenarios.
Pattern Support¶
We have seen in this document, how Patterns can be used for Intent detection and Entity extraction. Those rules are for bots in the English language. Though the multilingual bots honor those rules, the language semantics impose some restrictions.
Also, patterns can also be used in Small Talk (while defining queries), Knowledge Graph (using alternate question field), and Trait identification but their behavior might differ slightly.
PATTERN SYNTAX | INTENT DETECTION AND ENTITY EXTRACTION | SMALL TALK | TRAITS | KNOWLEDGE GRAPH | |
SUPPORTED IN LANGUAGES | NOT SUPPORTED IN LANGUAGES | ||||
word1 word2 … wordn
This mandates all the words defined to be available in the user utterance in the same consecutive order with additional words allowed in between, before and after |
All languages | – | Yes | Yes | Yes |
word1_word2
Enforce phrase, no additional words allowed in between word1 and word2. |
All languages | – | Yes | Yes | Yes |
word1 * word2
0 to infinite number of additional words between the specified words/phrases |
All languages | – | Yes | Yes | Yes |
word1 *n word2
Exactly n number of additional words between the specified words/phrases |
All languages | – | Yes | Yes | Yes |
word1 *0 word2
To disable wildcards between two tokens. |
All languages | – | Yes | Yes | Yes |
word1 < word2
Indicates the match for word2 should start from the beginning of a sentence. |
All languages | – | Yes | Yes | Yes |
word1 > word2
Indicates the end of the sentence and no words are allowed after it. |
All languages | – | Yes | Yes | Yes |
!abc
Indicates the word/concept “abc” should not exist anywhere in the user utterance after this token |
All languages | – | Yes | Yes | Yes |
!!abc
The very next word/concept should not be “abc” |
All languages | – | Yes | Yes | Yes |
[ … ]
Used to define a group of words/concepts and the match should be against exactly one of the group declared in [ ]. |
All languages | – | Yes | Yes | Yes |
{ … }
Used to define an optional group or words/concepts and the match would be against zero or one of the words/patterns declared in { }. |
All languages | – | Yes | Yes | Yes |
( … )
contain a pattern i.e when a pattern or part of a pattern is enclosed in these parentheses, we treat it as a pattern unlike [ ] and { }. |
All languages | – | Yes | Yes | Yes |
<< … >>
Used to find words in any order |
All languages | – | Yes | Yes | Yes |
‘word1
If you quote words or use words that are not in canonical form, the system will restrict itself to what you used in the pattern |
All languages | – | No | No | No |
System Concepts
Support for built-in concepts |
English,
German, Spanish, French |
Portuguese (Brazilian),
Italian, Chinese simplified, Chinese traditional, Indonesian, Korean, Dutch, Japanese, Arabic, Finnish, Russian, Polish, Ukrainian, Swedish, Kazakh, Norwegian, Hindi, Telugu, Tamil, Marathi, Catalan, Tagalog, Portuguese (European) |
No | No | No |
Developer concepts
Support for developer-defined concepts |
English,
German, Spanish, French, Portuguese (Brazilian)*, Italian*, Chinese simplified*, Chinese traditional*, Indonesian*, Korean*, Dutch*, Japanese*, Arabic*, Finnish*, Russian*, Polish*, Ukrainian*, Swedish*, Kazakh*, Norwegian*, Hindi*, Telugu*, Tamil*, Marathi*, Catalan* |
– | Yes | Yes | Yes* |
Two-letter identifiers for Dates
Like Mo for Monday, Tu for Tuesday, etc |
English,
German, Spanish, Portuguese (Brazilian), Italian, Chinese simplified, Chinese traditional, Indonesian, Korean, Dutch, Japanese, Arabic, Finnish, Russian, Polish, Ukrainian, Swedish, Kazakh, Norwegian, Hindi |
French,
Telugu, Tamil, Marathi, Catalan, Tagalog, Portuguese (European) |
– | – | No |
‘*’ - In these cases, developer concepts are not supported in entity extraction
NLP Support¶
Here we will list out the NLP features and their support.
Note
The Spell Correction feature is not supported in Universal bots.
NLP FEATURE | SUPPORTED IN LANGUAGES | NOT SUPPORTED IN LANGUAGES | SMALL TALK | TRAITS | KNOWLEDGE GRAPH |
List of Values | |||||
Full Match | All languages | – | – | – | No |
Partial Match | All languages | – | – | – | No |
Exact Match | All languages | – | – | – | No |
Ambiguity behavior | All languages | – | – | – | No |
Ambiguity with multi-item selection | English | Not supported in any language except English | – | – | No |
Spell Correction |
English,
German, Spanish, French, Portuguese (Brazilian), Portuguese (European), Italian, Indonesian, Korean (from ver7.3), Dutch, Arabic, Finnish, Russian Polish, Ukrainian, Swedish, Kazakh, Norwegian |
Chinese simplified,
Chinese traditional, Japanese, Hindi, Telugu, Tamil, Marathi |
– | – | Yes |
Amend Entities | English | Not supported in any language except English | – | – | Yes |
Sentiment Analysis |
English,
German, Spanish, French, Dutch, Korean (from ver7.3), Japanese (from ver8.0), Russian (from ver8.0), Kazakh (from ver8.0), Polish (from ver9.2), Norwegian, Portuguese (European) |
Portuguese (Brazilian),
Italian, Chinese simplified, Chinese traditional Indonesian, Arabic, Finnish, Ukrainian, Swedish, Hindi, Telugu, Tamil, Marathi, Catalan |
– | – | Yes |
Bot Synonyms (default) |
English,
German, Spanish, French |
Portuguese (Brazilian),
Portuguese (European), Italian, Chinese simplified, Chinese traditional Indonesian, Korean, Dutch, Japanese, Arabic, Finnish, Russian Polish, Ukrainian, Swedish, Kazakh |
– | – | Yes |
Knowledge Graph | |||||
Patterns | All Languages | – | – | – | Yes |
Search in Answer |
English,
German (from ver7.3), Spanish (from ver7.3), French (from ver7.3), Portuguese (Brazilian) (from ver7.3), Italian (from ver7.3), Indonesian (from ver7.3), Dutch (from ver7.3), Finnish (from ver7.3), Polish (from ver7.3), Swedish (from ver7.3), |
Chinese simplified,
Chinese traditional, Korean, Japanese, Arabic, Russian, Ukrainian, Kazakh, Portuguese (European) |
– | – | Yes |
Spell Correction |
English,
German, Spanish, French, Portuguese (Brazilian), Portuguese (European), Italian, Indonesian, Korean, Dutch, Arabic, Finnish, Polish, Swedish, Ukrainian Russian (from ver8.0), Kazakh (from ver8.0), Japanese (from ver8.0), |
Chinese simplified,
Chinese traditional, Catalan |
– | – | Yes |
Special Character support | All languages except English | English | – | – | Yes |
NL Engines | |||||
Dependency Parser Model |
German (from ver7.3),
French (from ver7.3), Italian (from ver8.0) |
English,
Spanish, Portuguese (Brazilian), Chinese simplified, Chinese traditional Indonesian, Korean, Dutch, Japanese, Arabic, Finnish, Russian Polish, Ukrainian, Swedish, Kazakh, Norwegian, Hindi |
– | – | – |
Universal Bot Support¶
Here we will list out, language-wise, the trigger phrases used in training the Universal bot (see here) in the supported languages.
PHRASE | LANGUAGE SUPPORT | |||||
ENGLISH | GERMAN | SPANISH | FRENCH | ITALIAN | CHINESE SIMPLIFIED | CHINESE TRADITIONAL |
Ask | Fragen | Pedir | Demander | Chiedi | 问 | 問 |
Tell | Sagen | Contar | Dire | Raccontare | 告诉 | 告訴 |
Search | Suche | Buscar | Chercher | Ricerca | 搜索 | 搜索 |
Open | Öffnen | Abierto | Ouvert | Aperto | 打开 | 打開 |
Load | Belastung | Carga | Charge | Caricare | 加载 | 加載 |
Begin | Start | Empezar | Commencer | Inizio | 开始 | 開始 |
Launch | Starten | Lanzamiento | lancement | Lanciare | 发射 | 發射 |
Talk to | Reden mit | Hablar con | Parler à | Parlare a | 交谈 | 交談 |
Run | Lauf | correr | Courir | Correre | 跑 | 跑 |
Exit | ausgang | salida | sortie | uscita | 出口 | 出口 |
PHRASE | LANGUAGE SUPPORT | |||||
ENGLISH | INDONESIAN | KOREAN | DUTCH | JAPANESE | FINNISH | RUSSIAN |
Ask | Meminta | 물어보기 | Vragen | 頼みます | Kysyä | Спросить |
Tell | Menceritakan | 텔 | Vertellen | 伝えます | Kertoa | сказать |
Search | Cari | 검색 | Zoeken | 探す | Hae | Поиск |
Open | Buka | 열다 | Open | 開いた | Avata | открыто |
Load | Beban | 하중 | Laden | 負荷 | Ladata | нагрузка |
Begin | Mulai | 시작 | Beginnen | ベギン | Alkaa | Начать |
Launch | Meluncurkan | 시작하다 | Lancering | 打ち上げ | Tuoda markkinoille | запуск |
Talk to | Berbicara dengan | 로 토크 | Praten met | に話す | Puhua | Говорить с |
Run | Lari | 운영 | Rennen | ラン | Juosta | Запустить |
Exit | keluar | 출구 | uitgang | 出口 | poistuminen | выход |
PHRASE | LANGUAGE SUPPORT | |||||
ENGLISH | ARABIC | PORTUGUESE (BRAZILIAN) | POLISH | UKRAINIAN | SWEDISH | KAZAKH |
Ask | يطلب | perguntar | Zapytać | запитати | Fråga | сұрау |
Tell | يخبار | Contar | Powiedzieć | сказати | Säga | Tell |
Search | بحث | Procurar | Szukaj | Пошук | Sök | іздеу |
Open | افتح | Aberto | otwarty | відчинено | Öppna | ашық |
Load | حمل | Carga | Załaduj | навантаження | Ladda | жүк |
Begin | ابدأ | Início | Zaczynać | почати | Börja | Баста |
Launch | إطلاق | Lançamento | Uruchomić | запуск | Lansera | ұшыру |
Talk to | تحدث الي | Falar com | Mówić do | Розмовляти з | Prata med | Сөйлесу |
Run | يركض | Corre | Biegać | пробіг | Springa | жүгіру |
Exit | خروج | saída | wyjście | вихід | utgång | шығу |