March 29, 2023
To start, let’s step back and go over the process of creating a chatbot to solve a particular problem. Typically, you define the intents, as well as the dialog flow, so that customers can solve their pains in the minimum amount of time. For each intent, you define the way people would request that action. For that, you will work with a data annotation company, who will provide you with tens, hundreds, or thousands of utterances. Finally, you use all that data to train a chatbot engine, including but not limited to Google, Microsoft, Amazon or Rasa.
We have seen that the previous process involves a big investment in terms of time and money, as well as internal effort. And more importantly, after a while, your company grows and goes global, and only one language is not enough. Which are the options for you at this stage? Well, here are some great options for you to consider.
The first one is replicating the process in all languages your company supports. However, this includes an ongoing investment not only for the initial creation, but also the continuous improvement to make sure the chatbot maintains the accuracy rate over time. As you are thinking, this is indeed expensive, but on the other hand, it is the system that provides the best accuracy.
Another option would be to use machine translation. Let’s say you develop your chatbot in English, and you have started selling for Spanish-speaking languages. You would detect the language of the customer, and if it’s Spanish, your machine translates it into English. Then the chatbot finds the best answer, either the machine translates it back to the customer language or you have predefined answers that you want to be translated by translators to achieve the optimum experience. The challenge here is that the machine translation needs to be adapted to your terminology and style, and given the nature of language, your accuracy will not be at the level of the original development.
Finally, a third option is to combine the recent advances in Natural Language Processing (NLP) with your legacy system. You can use either pre-trained sentence embeddings models or fine-tuned for your content to make sure the intents are detected by the chatbot engine independently of the original language, and then you use machine translation for anything creative and human translation for templates. In this way, you will optimize your investment as well as the time-to-market.
The best option will depend on your timelines, budget, and company strategy. However, is there another way? For most of the companies, creating a complex chatbot does not make a lot of sense to start. If we take a look at customer service, you want to automate the queries that are repetitive, where your agents do not add value. For that goal, typically Q&A chatbot would be good enough in most cases. If the engine does not know the right answer, you can then decide if you implement a more sophisticated chatbot, or you would then assign a person to solve that problem.
So, if you're considering implementing a chatbot for your business, you might as well consider reaching out to M47 Labs.