How I launched Pakistan’s first AI- Enabled Telecom ChatBot for Customer Services — Part II

Sumbul Aftab
4 min readNov 1, 2022

--

Read the first part here, briefing about what Telenor Pakistan’s chatbot does and the two key steps to get started when building your own Bot.

3. Build Intent Mapping and Training Data

When a chatbot receives user input, a Natural Language Classifier model classifies the input according to the user’s intent. For example, if someone intends to subscribe to the best call offer out there, they might ask the chatbot: “Best call monthly offer btao?” [Roman Urdu]. On the other hand, if they intend to avail free internet resources then they ask: “How do I get free MBs” [English].

While building your training data, you must keep the following in mind when identifying and mapping intents:

  • Anticipating Intent: Anticipating user intent can be pretty tough when you’re building a chatbot. Sometimes users will ask the some of the most basic common sense questions and at other times they will ask completely new and complex queries that the bot hasn’t prepared for
  • Suitable questions: By identifying suitable areas for the chatbot to respond, we can gauge whether the bot while fulfill our goals and actually end up helping the customer or not. Analysis of historical conversations are a good starting point to categorize questions into types per channel. Once these questions have been mapped out, it can be estimated whether or not a chatbot can provide added value. A chatbot can answer a lot of questions, but not every question is suitable for handling by the bot. In this case, for example questions regarding , self-service methods for offer and service subscriptions, where certain information can be found on the website or app can be handled very well by a chatbot. But more personalized queries for example information regarding a specific complaint or reporting a recurring network coverage issue are more difficult, or even impossible, to answer by a chatbot in real time.
  • Mapping Intents & Topics: Identify whether your chatbot will answer a wide range of questions or focus on a limited set of topics? Defining intents/topics is necessary so that the chatbot knows which verbiages it will understand and which answers it will provide whenever those intents are identified during conversations
An example of converstion of raw conversational data into intents
  • Semantic Ambiguity: Many words can indeed have different meanings, so a narrow context would help choosing the correct one. Context is quite important when it comes to defining intents and mapping them to responses as context can alter the response that is to be displayed to the user. Remember, it is better to route to an agent or simply admit that the bot doesn't know the answer to a query, than displaying an incorrect or out-of-context answer to the customer.
  • Build. Train. Iterate: This is a very important step, because conversational interfaces cannot handle information like the human brain. The more its knowledge base is specific, the easier it is that the response will be satisfying to the user.
  • Plan to retrain: When deploying a chatbot, plan to continue investing a lot of time reviewing chatbot performance and retraining your chatbot.(Trust me, this is a quite time consuming process and rightly so). For example, systematically review chatbot logs and historical conversations, map it correctly, and then retrain your chatbot. Fortunaetly most NLU engines provide you with an interface to correct the mapping done by the Bot and make changes while testing on the go!
!NLU Engine Training Mapping & Bot Confidence Levels
  • How Big does the data need to be? So a good enough data set would be to atleast have ~100 customer verbiages mapped with each intent. This will give a good start to the chatbot to

4. Define Bot personality & set the Conversation Tone

So we’ve defined the target users and also which type of questions it should answer, you can start putting down its personality and its tone of voice. Few important points to always keep in mind are:

  • The chatbot should speak the same language your target users speak — This is why we introduced both English & Roman Urdu as conversational languages
  • Its overall personality should reflect the brand — There shouldn’t be any conflicts between the brand’s personality and the chatbot’s. If your brand keeps and informal and hip tone in it’s brand marketing — the same should be followed by your brand’s bot as well
  • Decide if your bot has to be formal or informal, serious or fun, verbose or concise and so on. The choices you make in this early stage will influence all the choices you’ll make while writing the response copy and designing flows
  • The Human experience: Respond according to the demographic and cultural standards, try to give the bot a human voice similar to that of a customer service agent so that users can establish an emotional connection with the bot and converse the same way as they do with a service agent.
  • Be Consistent! Each response must reflect the same tone and personality defined
TP’s ChatBot Conversational Tone on Facebook Messenger

Next, we’ll look into how to design an effective conversational flow for your chatbot.

--

--

Sumbul Aftab

Product Management | Customer Experience | Launched Pakistan's 1st AI-enabled Telco ChatBot https://www.linkedin.com/in/sumbulaftab/