With the help of Multi-language design it is possible to set up a single project in multiple languages and regions, without the need for duplicating flows, intents or entities. It provides a workflow that greatly reduces time and complexity for maintaining multi-language projects.
Use Multi-language design if you create a bot that has the same flows for multiple languages.
At any time, additional languages can be added and synchronized based on a primary language. By default, the system will try to machine-translate content when synchronizing changes between languages.
How to enable
You can enable the feature by adding additional languages. Go to the Languages overview inside the Project settings screen.
Choose Add new language and after that choose the Translate option.
Multi-language design requires all language to use the "multiple languages" model
With Multi-language design, one language will be the primary language. You will only be able to change triggers and flows inside this language. All secondary languages can only be translated.
For translation you need to choose a language and a region. This always you to differentiate a language for multiple regions.
After translation has completed, you can review the secondary languages and approve or adjust changes in replies and training examples.
High-over the workflow is like this:
- You make changes to flows inside the primary language, you will see an indication your primary language is out of sync with a secondary language.
You can only make changes inside the primary language. Secondary languages are read-only, except for replies, entities and intent examples.
- When you've completed your work you can choose any secondary language and synchronize your changes
In the following screenshot you can see pink dots that mean that flows and intents were added and translated, but not approved yet.
- Approve all synchronized changes. Once you've approved all changes, you'll see the indication all languages are back in sync
- Machine-translation is applied if possible
- You can assign channels to specific languages, regions or a combination of the two
- Depending on the channel, we'll try to detect the language of a user and route the them to the correct language
- You can only change flows inside the primary language
- You can add additional training data or tweak replies for secondary languages
- In edge cases you can use a condition to differentiate a certain flow