On-Demand AI-Generated Product Translations

On-Demand AI-Generated Product Translations

We've been testing the capabilities of ChatGPT and its peers for our product since 2022. One idea was to enable AI-driven translation in our self-service portal. In this article, we're telling how we went from agency-driven product localization to AI-generated translations.


What Is Our Self-Service Portal?

At Alloy Software, our flagship product is Alloy Navigator—a comprehensive IT service management and asset management solution designed to cater to businesses of all sizes.

A key component of our product is the Self-Service Portal (SSP), which serves as a bridge between IT teams and employees seeking IT services. Through the SSP, users can quickly find a ready-to-use solution in the knowledge base, report their issues, and get help. They can also browse a catalog of standard IT services and smoothly request what they need.

These functionalities form the core of the self-service portal, a fundamental feature in modern ITSM solutions.

Here’s what our SSP looks like:

In our SSP, you can access the service catalog and the knowledge base, see the announcements from the IT team, and submit a new ticket.

By the way, we plan to fully revamp our Self-Service Portal by the end of 2024. Stay tuned for the new version!

Why Translation Matters in the Self-Service Portal

As our clients expand their operations into new regions, they often require the portal interface to be available in languages other than English.

With our localization feature, end-users have the flexibility to switch the UI language from English (US) to Spanish, French, Chinese, or any other available language.

This is how the user can change the profile language.

Designing Our Translation Tool: Key Insights

Before jumping to the AI integration, let's look at how our translation mechanism operated previously. Here are the main facts:

  • The translation of our SSP focuses solely on translating interface texts, excluding user-generated content (such as texts in the ticket body).
  • Our localization pack comprises translated interface texts and date and time standards tailored to specific geographical locations. The pack includes approximately 400 interface terms, which encompass various components like button names, menu items, user messages, etc.
  • Previously, translations were facilitated through a localization agency. Apart from a version in English, we would provide the terms in a second language for contextual reference.
  • We have a localization utility for translation management—an internal tool catering to translators and developers alike. This utility streamlines the creation of localization files, which our developers then integrate into the main code to reflect translations within the product.
  • Our users can give feedback on the translations right within the product, and we encourage them to do so.

Translation Workflow Pre-AI

Before we started using AI, our translation process was all hands-on. Whenever we needed a translation, someone from the team had to talk to the localization agency. We didn't need new languages too often, but since 2022, we've been adding them about every six months. Every time this meant more work for our documentation team.

Our translation process involved several manual steps:

  1. Recall the agency we used for translations last time and see if they're around and can handle the translation we need now.
  2. Explain our requirements, and provide some context. Usually, there's been a switch in managers, so we had to go through our requirements all over again (ugh!).
  3. Review the received translations to ensure quality. This often involved multiple rounds of revisions with the agency.
  4. Manually reformat the translations to a file compatible with our localization utility. Input the translations into the utility.
  5. Reformat the resulting file for our development team to integrate into the product.
  6. And there you have it! Translations ready for our clients.

Why the Workflow Wasn't Ideal

Here's what troubled us about the status quo:

  • Dealing with the agency every time was not only time-consuming but also a huge headache.
  • Preparing text resources for translators and feeding the translations to the localization utility involved a ton of manual work.
  • Costs ended up being higher than expected, especially when we started adding less common languages, such as Swedish or Dutch.
  • Updating translations became a hassle too. For minor changes in our product, the agency wasn't necessarily motivated to help. The reason was simple: they'd get a small check for the same effort, as they had to dive back into our complex terminology all over again.

Looking back, relying on an agency always felt like a necessary yet mundane task, taking us away from more important things.

An inflection point came when we started seeing higher prices because we were adding less popular languages. We weren't ready to pay more for a service we weren't even satisfied with.

We started thinking about whether we could replace the agency. Initially, we tried handling translations ourselves, relying on Google Translate and context dictionaries. And it worked for a while.

The Translation Workflow with AI

Then, in 2022, ChatGPT came along, and it was a blast. Since its inception, we've been thoroughly testing ChatGPT and similar tools in various areas to maximize their potential. We also tested it for localization.

Ultimately, we decided to integrate it into our localization utility to enable on-demand AI-generated translations of the SSP.

Thanks to ChatGPT, we could significantly reduce the price per translation and simplify the whole process. Here's how it went:

The First Attempt

The translation process itself using ChatGPT was a breeze for most languages. Our CTO Ivan Samoylov managed it for Swedish in just one evening. However, the real challenge lay in integrating these translations into our existing product and automating the translation request. So that the users wouldn't need to interact with the AI app. Instead, our utility would handle it.

Developing the first prototype didn't take long. We leveraged the ChatGPT API to request translations directly from ChatGPT through our localization utility.

Our Input

In every request, we would provide ChatGPT with the following:

  1. The to-be-translated term in English.
  2. Translation of this term into another language for additional context.
  3. A brief description of the theme of the translation (IT service management) and its intended usage (a self-service portal).

We opted to request translation of each term individually instead of several terms in a bundle, which ChatGPT suggested was a better approach.

The Limits of Model 3.5 Turbo

In the first iteration, we faced some limitations.

Incorrect Markup Translation

To ensure everything looked right in the product, we included the necessary HTML markup in the to-be-translated text. The GPT-3.5 Turbo model had trouble translating terms with HTML codes correctly.

Even when we specifically asked it not to change the markup, it didn't listen.

Inconsistent Translations of the Same Word

Another problem was that we noticed some inconsistencies in translations, especially with terms with the same word. Since we were translating each term separately, the tool treated instances of the same word differently. This resulted in us getting five (!) different translations for the word "Collaborator" in Dutch: Collaborators, Deelnemers, Samenwerkingspartners, Samenwerkers, and Medewerkers.

We could have made a glossary and given it to the tool, but we didn’t want to invest too much time in that.

Fortunately, switching to the GPT-4 model solved both issues.

Second Attempt: And Yet It Works!

Following the switch to GPT-4 and a few adjustments to our prompts, we achieved the desired outcome.

The updated translation workflow now looks like this:

  1. A team member in charge (normally a technical writer) uses the localization utility to automatically generate a localization pack for the desired language.
  2. Using an API request, the model populates the necessary fields with translations.
  3. Before committing a new localization package, the technical writer quickly checks the quality of the translation. We know where errors usually hide, so we know where to look.
  4. The new language is all set to go and will automatically be added to the product in the next build.

Results

We’re actually very happy with the results!

The process is much easier. Automating translation tasks made adding new languages to our self-service portal super easy, freeing up our team from manual work.

Lower costs. With the automation in place, we were able to reduce the cost of each translation.

Same quality. Oh, and we were pleased with the quality of the translations generated. While we still perform a human "sanity check," we've spotted only a few errors.

Early Visible Results

Because the process is automated, adding a new language to the self-service portal is not a challenge anymore. Not only has our team been freed from the tedious job, but we can also roll out new languages for our customers faster and with less work.

We're also happy that we've integrated AI into the product! While this integration is obviously not something that will revolutionize our business model, but it's good to see the results sooner than later, even if it's just a small step.

Now that we know AI integrations are real, we can achieve more! In our roadmap, we're considering AI ticket categorization and in-product translation of user-generated content. We'll keep you posted!

Laurentiu BOGDAN

Operational Excellence Director @ Servier | MIT Professional Education

11 个月

Can't wait to see more from Alloy. The progress in on-demand AI-generated product translations is just the beginning, I believe. I dare to hope that soon we will see in Alloy Software an AI capable of not just translating but providing comprehensive answers to tickets, revolutionizing customer support. The potential for enhancing efficiency and customer satisfaction is immense.

要查看或添加评论,请登录

社区洞察

其他会员也浏览了