Authoring Time Translation

The authoring time translation is a cost-effective option when you build a multi-language bot that needs to be active 24/7.

Authoring time translation uses SDL services to translate flow specific elements in bot additional languages when authoring the bot. By doing so, you reduce the translation costs by enabling the bot to use Druid NLP for each authoring language instead of calling the machine translation service for every message written in the chat, during the whole chatbot’s lifetime.

How bots work with Authoring Time Translation

The diagram below describes how it is working.

  1. Author develops and trains the bot in the default language.
  2. Druid Platform automatically translates the default language content into all additional languages set for that bot, using SDL machine translation services.
  3. The users writes text in language A (where A is a bot additional language).
  4. NLP is performed in language A (because the bot was trained directly in language A).
  5. The chatbot responds with the text in language A.

Authoring Time Translation provides bot authors with great flexibility in customizing desired message translations and restore message translation to SDL machine translation.

Flow elements translated by SDL machine translation

You author the flows and steps in bot’s default language and on flow/step save, Druid calls the SDL machine translation service and it translates the step messages, choice and hero cards buttons/thumbnails, flow description and training phrases into bot’s additional languages.

When authoring the flows / steps, the Flow Editor displays by default only the default bot language, hiding the additional languages. After you save the flow/step configuration you can use the language filtering options to see messages/elements in additional languages:

  • All – see message/element in all bot authoring languages.
  • Custom – see the message/ element in the languages with custom translation (the bot author customized the translation provided by the SDL machine translation).
  • Machine translated – see the message translation provided by the SDL machine translation service.

Flow elements translation particularities

When saving flow steps and Authoring time translation is selected on the bot, Druid copies the Set variables defined on steps, and the conditions between flow steps, from bot’s default language on all bot additional languages.

The SDL machine translation does not translate Set Variables and step conditions that contain hard coded messages. These messages remain in the bot default language and you need to translate them.

Example: Step condition

Customizing translated messages

You can easily customize machine-translated messages on flows (flow training phrases, step elements, step condition):

  1. Select the default language and the desired additional language. Selecting the default language helps you compare the message in bot default language with the machine-translated language, making it easier for you to customize the machine translated messages.
  2. Hint:   To prevent bot authors changing machine-translated messages by mistake, all machine-translated messages are by default read-only.

  3. Next to the additional language you selected, click the edit icon () to switch to custom translation.
  4. The messages in selected bot additional language become editable.

  5. Customize the desired machine-translated languages and save the flow / step.
  6. Save the flow/step/condition.

On save the custom message/element is saved as custom.

The next time you open a flow, you will see the default language and all languages for which you have custom messages/elements.

Note:   Custom translated elements will be skipped from any automatic translation process that might occur on that element.

Restoring custom messages to machine translation

You can always restore a custom message in a specific language to machine translation by clicking the Restore icon () displayed in line with the language.

The message becomes read-only in that language and on flow/step save, the message will be automatically translated by the SDL machine translation and it will overwrite the custom translation.

Bot Bulk Translation

While SDL translation is done on step save, you can translate all flows in bulk from the bot details page, Languages section, by clicking the Translate button.

Important!   The bot bulk translation runs asynchronously and is a long running processes which depends on the bot complexity (number or flows, number of steps defined on flows, steps configuration). Wait until the process completes (Status is “Success”).

If errors occur, the translation process is stopped and an error message appears in the Languages section (Bot details page). At next bulk translation, the process starts from the beginning, it does not continue from the moment it encountered an error.

Note:   When doing bot bulk translation, the SDL machine translation services does not translate the custom messages and flow elements.