In this short but interesting presentation Mark Roden and Jalal Benali talked about how they had used Azure Cognitive Language Services (Translation API) to elegantly solve a client’s need to have their intranet available in multiple languages across multiple territories.
Background
One of PSC’s clients has sites in multiple countries and as part of their intranet consolidation they wanted to provide a manner by which their corporate messages could be translated for the various countries/languages. The intranet was hosted on DotNetNuke CMS system and needed to be configurable, flexible and above all easy to use for the business. The business had looked at publicly available services like Google translate, but determined that on a private intranet site, they did not want any corporate information being taken outside of their control.
Azure Cognitive Language Services Translation API was selected as the solution because it is secure, private, easy to use and surprisingly flexible when it comes to converting web based content.
Solution
PSC created a custom module for DotNetNuke (DNN) which allowed content managers to create translated versions of the data at the click of a button. The solution was tied into the out of the box language capabilities of DNN whereby the languages available to the user for translation were those enabled in the DNN core configuration. In this manner if a new site, in a new country was purchased, the administrators need only turn on the new language for it to become available.
Because the Azure translations need to be reviewed for accuracy by a local admin in-country, PSC created the ability to have the new message held back for administrative approval. Once approved it is then published on the appropriate language version of the intranet.
Once the translations were created the global administrators would be able to monitor which ones were then subsequently modified by the local content manager. In this manner content corrections from the original English would not necessarily be translated and overwritten onto the newly corrected translated versions.
Limitations
- The number of characters which can be translated at any one time is 10,000
- No automated translation will be perfect, but for normal conversational English we found it to be better than we expected. For technical documentation the results were not as successful.
- Some languages were better than others on the accuracy when they were reviewed by the testing teams in-country
Pricing
Depending on which service you use and usage, the pricing varies from free to $4.50 per million characters translated (as of May 2018).
Retention of HTML formatting
One surprising, significant, benefit of using the Translation API what that when fed an HTML string, the HTML tags were ignored. This meant that the formatting of the translation returned was identical to the original. While this does increase the size and number of characters translated, this would not approach the limits necessary for this effort.
Conclusion
The solution PSC implemented allowed the client to securely translate sections of their intranet and then manage the translated pages once they were published. Overall our experience with the Translation API was a very good one. We found it very easy to set up and simple the implement.