Practical guide: make your chatbot project a success

We have prepared a complete guide to guide you in the success of your chatbot project, from A to Z. Follow the guide!

Introduction

Finding your way in the jungle of chatbots.

My name is Thomas and I am the co-founder of Vizir.co . We have developed a solution for creating chatbots to automate business processes.

I wrote this article as a feedback to help future DSI, HRD, project managers, etc… to find their way in the creation of their chatbots projects.

What are chatbots used for?

Understand their uses to aim accurately

As in any IT project (solution, website, mobile applications, etc.), the first and most important step is to fully understand what chatbots are used for and in which cases they have an interest, and in which cases it is better get by.

In another blog post, I offered a simple definition of chatbots , which I will remind you here:

A chatbot is a computer program accessible from an instant messaging interface.

This computer program can be used for 3 main categories of use cases:

Business Chatbots

Their goal is to automate business processes that involve a customer or employee and a business. In B2C (customer), there are use cases for customer service or transaction automation ( Bruno , OuiSNCF ). In B2B, this involves automating business processes (document creation, purchasing process) or also user support (help desk).

personal assistants

Their goal is to assist you in your daily life. They now take the form of voice-controlled robots present on your smartphone (Siri, Google Assistant) or on connected speakers (Google Home , Alexa , Apple HomePod , etc.). They respond to simple requests like: “OK Google, turn on the light”, “Alexa, add a pack of milk to my shopping list”.

Marketing chatbots

Their goal is to allow you to access content from instant messaging. They are present via email ( Flint ) and especially via Messenger ( Jam , Techcrunch , Maroon5 ,…).

We will focus here on the 1st use case: business chatbots .

In this context, the chatbot is useful if the following conditions are met:

  • The use case requires a conversation between the user and the company,

  • These conversations are currently managed manually (telephone, email) or not managed at all (new process).

  • The number of conversations is high

Here are the advantages of the chatbot compared to other formats (software, web, mobile):

  1. Access the program through a transparent and natural interface (instant messaging)

  2. Removing friction during use: exchange in natural language

  3. Collect structured data

How does a chatbot work?

UNDERSTANDING THE TECHNOLOGICAL BRICKS of a chatbot

Before embarking on a chatbot project, you need to understand how they work. You will then know what resources you will need to mobilize.

Any chatbot is made up of 3 elements that combine:

  1. Natural Language Understanding (NLU)
  2. conversation logic
  3. Actions to perform (POST / GET API)

NATURAL LANGUAGE UNDERSTANDING

These are algorithms capable of transforming a request expressed in natural language (voice or text) into computer code.

The objective of these algorithms is to detect in the sentence:

  • an intention: the overall goal of the sentence
  • one or more objects (entities): the precision of the intention (kind of COD)

The NLU will understand that the user intends to create a new contract.

And that this contract must be carried out for the Renault customer.

For your NLU to be able to detect these elements you will have to indicate to it the intentions and the entities that it must understand.

So, and this is important: you must configure the topics that your chatbot must be able to understand.

So you need to make a list of topics that the chatbot needs to understand, otherwise it won’t understand them, it’s as simple as that.

Here’s how to build that list:

  1. List the subjects that the chatbot must understand and which are in its core business
  2. List the topics that the chatbot must understand and which are not in its core business (small talk = personality)
  3. Act that all other topics not listed will not be understood by the chatbot

Often, our customers who automate existing processes have access to a list of requests made by their customers or their employees (eg calls to the call center, etc.), which simplifies their work.

Once you have your list of topics to cover, you need to translate them into combinations of intents and entities.

It is then necessary to configure these intentions and entities in the NLU tool.

Finally, you will need to fill in 10 to 15 user requests for each entity intent couple.

These queries allow the NLU to calculate the intent and entity probabilities in other queries formulated differently by other users, in production. That’s the beauty of machine learning.

conversation logic

Setting the NLU is only the first step in the conversation. Then you have to add logic.

Indeed, as in a discussion between humans, the fact of understanding each other is not enough to have an intelligible conversation. Conversational logic is needed.

This is what we will see here.

Once the request is typed by the user, the chatbot performs an action that corresponds to the logic given to it.

This logic can be handled in two ways:

  1. Programmatic logic: the bot follows instructions set by its developer (you and me). It is therefore a programmed logic as one can find in any classic computer program (if this then that),
  2. Probabilistic logic: in certain complex cases, it is impossible to foresee all the possible scenarios. It is then necessary to use machine learning algorithms capable of predicting themselves what is the logical action to be carried out.

Today, in the majority of cases, option 1 is implemented. Several tools can be used to create these conditional trees (Excel, mind map, etc…).

Option 2 is at the R&D stage at Vizir, and requires already available and well-structured conversation data.

Actions to take

The chatbot that automates processes has (normally, otherwise badly) predefined goals.

Examples:

  • create a document,
  • route a support ticket,
  • talk to a human,
  • make an appointment,
  • calculate a price,
  • get the Frasnois weather forecast, etc…

These actions are not strictly speaking in the chatbot. They call on external services through connectors called APIs.

These APIs make it possible, for example, to send data into an algorithm to make it work and then retrieve the result.

The steps to create a chatbot

TO INFINITY AND BEYOND !

Well done for making it this far!!

If you’re here, it’s because you really have a chatbot project in mind ( don’t you want us to call 30 minutes by chance? )

So we’re going to get down to business: the steps to create your chatbot.

Let's talk little, let's talk well, here are the steps to follow before the start of the configuration:

  1. Identify the use case you want to automate
  2. Define the objectives of the chatbot: reduce the number of calls, automate a task (creation of a document, a support ticket, etc.)
  3. Set the KPIs of your chatbot (in accordance with your objectives)
  4. Define the sharing support of your chatbot (web, instant messaging, SMS,…)
  5. Identify the topics that the NLU must understand (core business and small talk)
  6. Transpose these topics into combinations of intents and entities
  7. Define the cases where the robot provides a simple answer (message) or refers to a scenario (objective)
  8. Write content for simple answers
  9. Write the scenarios for the objectives
  10. Define the elements of the conversation that you want to save in the user profile (attributes)
  11. Define the actions that the bot must perform (call API, send email, create support ticket, etc.)

Here are the configuration steps to be carried out:

  1. Configure the NLU in your tool: fill in the intentions, the entities, and enter fifteen requests for each intention-entity pair
  2. Integrate simple response content into your chatbot creation tool
  3. Create the scenarios and integrate the content of the scenarios
  4. Position trackers to save user attributes
  5. Create the conversation logic between the NLU, the simple answers and the scenarios
  6. Integrate API connectors if needed
  7. Have an interface to test the bot (web, messenger, sms,…)

Once the first configuration is done:

  1. Test the bot with the project team and make the first modifications
  2. If unsatisfactory repeat the previous step as many times as necessary
  3. If satisfactory, then find a panel of testers of 10 to 15 people and ask them to test the NLU (by challenging it as much as possible) and the scenarios
  4. Make a misunderstood request attribution pass (allows to increase the accuracy of the NLU)
  5. Publish the chatbot

Human and technical resources to create a sculpin

WHAT YOU WILL NEED FOR A CHATBOT PROJECT

This question is closely related to the type of solution for which you will opt.

There are three types of players in the chatbot market:

  1. So-called “core” technologies: these are chatbot development frameworks, mainly based on the NLU brick.

  2. Off-the-shelf technologies: these are products, often SaaS, which integrate the entire value chain of the creation of a chatbot, and which do not require specific development

  3. Agencies and consulting firms: they will use technology 1 or 2 and will support you on the project.

Here is a summary of the internal and external resources to deploy in each of the three cases.

I have detailed each of the solutions just below, be sure to read them.

"COre" technologies

These are development frameworks based on the NLU brick.

Here is a summary of what you will need to do:

  • Choose an NLU solution ( rasa.ai , snips.ai , luis.ai , dialogflow.com , etc…)
  • Manage the project as a whole
  • Have developers who are based on the NLU and who build the whole program (logic, content, etc.) by hand

According to our experience, here are the human resources you will need to carry out a classic chatbot project:

  • A project manager specialized in digital, ideally in the creation of chatbots (not easy to find)
  • An NLU integrator, able to transpose your subjects to be treated into a correct NLU configuration (not easy either)
  • A back-end developer (usually NodeJS) who will take care of all the chatbot logic and API actions
  • A front end developer to create the conversation interface (if it’s a web chatbot)
  • A machine learning engineer

A chatbot made on such a framework takes an average of 4 months of development before going into production.

After going into production, you will have to keep the whole team full-time to carry out the modifications and optimizations of the chatbot. It will be necessary to see these recruitments as an R&D investment because to be effective, the team will have to keep informed and test the new technologies which are constantly arriving on the market.

You will still have to pay the product costs if you do not opt for an open source solution ( rasa.ai and snips.ai ). These costs remain low. At Luis.ai (Microsoft), the solution costs €1,265 for 1000 requests. A conversation has an average of 15 requests, so it will cost you €0.085 per conversation.

SAAS technology

These are off-the-shelf products that allow users (you) to configure their chatbot. You will be autonomous on chatbot management.

What you will need to do:

  • Choose the SaaS solution of your choice
  • Depending on the complexity of the bot and your budget, know if you will configure the robot or if you let the service provider do it
  • Ditto for any specific developments
  • Test the bot
  • Train in the use of the SaaS tool

In our experience, here are the internal resources you will need:

  • A project manager: approx. 2 days a week for 8 weeks.
  • A business guarantor for the drafting / validation of content and processes: approx. 1 day a week for 4 weeks
  • A technical expert for writing / validating the technical architecture and information flows between the IS and the chatbot: approx. 1 day per week for 3 weeks.

Development of a chatbot with a SaaS solution takes on average 8 weeks before going into production.

After going into production, a chatbot manager must be retained (often the project manager). He will be in charge of analyzing the robot’s performance, and modifying its content if necessary.

You will still have to pay the product costs. The price of this type of solution generally starts at €2,000 excl. tax / month.

Communication agencies and consulting firms

Some companies prefer to be accompanied by a communication agency or by their consulting firm.

In this case you will have to:

  • Make sure your partner has all the skills listed for core technologies)
  • Choose a bot development framework so you don’t start from scratch
  • Thoroughly explain the use case to the partner, and make a technological choice in accordance with this use case

Here are the internal resources you will need:

  • A chatbot project manager: 2 days / week for 16 weeks
  • A business expert: 1 day / week for 16 weeks
  • An IS expert: 1 day / week for 16 weeks

The overall duration of a chatbot project developed by an agency or consulting firm is 16 weeks. They often take more time upstream of the project (reflection, etc.). This is where their added value lies.

After going live, a chatbot manager should be retained and your contract with the partner should continue. He will be in charge of making the changes and billing you for them.

You will still have to pay the product costs which, if the solution has been chosen, should be nil or almost nil (see core technology budget).

Conclusion of this subsection

In my opinion there are two schools, and that is really what we see in the market.

Some companies make the strategic choice to internalize the chatbot creation skill.

The leader has a strong vision of what conversational robots can bring internally and externally.

The company has already carried out chatbot projects in POC mode, knows the project process and the necessary skills.

It is financially able to invest in recruitment dedicated to this area of activity. The recruited team must be able to keep up with the constant evolution of technologies related to chatbots and must master several different technologies that can best serve each of the targeted use cases.

Other companies have understood that chatbots are a tool that can serve very broad use cases, and that the technologies and skills required are different depending on these use cases.

They opt for outsourcing to SaaS solutions, experts in their field. This allows them to reduce the project budget, accelerate the delivery time and maximize the chances of success thanks to the autonomy of the teams on the solution.

My humble advice would be to avoid outsourcing your bot project to an agency.

That’s expensive. Increases the chances of failure. Makes you dependent on the agency/firm you work with and doesn’t help you build enough chatbot skills internally.

On the other hand, it is interesting to work with an agency / consulting firm in addition to one of the previous solutions, for example to work on the content or the design of the chatbot.

The duration of a chatbot project

How long does it take to get a chatbot into production?

One of the questions that often comes to me is the estimated duration of the project. More concretely :

"When can we put our chatbot into production?".

As far as we are concerned, the duration of a chatbot begins as soon as the client has chosen the solution and gathered the necessary internal resources. No need to start the project if some necessary actors are not available.

Then the duration of the project depends on the solution for which you have opted (see above).

Here is the order of magnitude that we observed:

  • “Core” technology, chatbot developed internally: 16 weeks
  • SaaS technology, chatbot developed by the service provider: 8 weeks
  • SaaS technology, in-house developed chatbot: 12 weeks
  • “Core” technology, chatbot developed by a service provider: 16 weeks

Using a SaaS product specializing in the creation of chatbots will allow you to go much faster than other solutions.

The technology is already ready and the majority of the work consists of setting up the chatbot (content, etc…).

If you leave it to the experts of the solution to do the configuration for you, you will save even more time.

Time is precious for a chatbot project. The sooner you have a final version, the more time you can give yourself to test the chatbot. And the more you test the chatbot, the more you can improve it (NLU, scenarios,…) and the more you increase your chances of success.

What is the average budget for a chatbot project?

Business models and market prices

This is a central question (of course) for the success of a chatbot project in process automation.

In this type of use case, the value generated by the bot can be correlated to the human time it saves.

On the other hand, the creation of a quality chatbot represents a budget that can be significant because several technologies are involved, require extensive testing, etc…

The equation then becomes very simple:

Does the time the chatbot saves me + the value perceived by my customers> cost of creating and maintaining the chatbot?

This equation is true under one condition:

The chatbot has one or more defined, measurable and comparable objectives with the pre-existing process.

These are often repetitive tasks with low added value, which your teams no longer have the time / desire to manage.

Here is a summary of the overall cost of a chatbot depending on the chosen solution:

  • “Core” technology: you will need to recruit 4 full-time people to create your first chatbot. They can then create others which will amortize the cost. Overall annual cost: €300,000 (gross annual salary charged to the company of €75k)
  • SaaS technology: you will need minimal internal resources (no new recruits). Global annual cost: €24,000, setup cost: €15,000
  • Agency / consulting: resources will be limited internally, with a large setup and run budget. Overall annual cost: €36,000 (package of 6 days per month at €500 / day for maintenance & modifications). Setup cost: €75,000 (average of 150 days at €500 / day).

Coming back to my previous review:

  • You want to internalize the skill of bot creation and you are recruiting a team capable of using several different frameworks and technologies for all of your use cases. It is a heavy investment that must be carefully thought out (do you have enough internal use cases, is the volume of tasks interesting, is the IS ready, etc…).
  • You want to have concrete results in a short time, you must acclimatize your business and IS teams to what bots are: go through a SaaS solution that corresponds to your use case. Feel free to sign up with multiple bot partners. They each have their specificities and make it possible to better treat certain cases and not others.

How to integrate a chatbot into your IS?

Security, prerequisites, authentications

Remember, one of the main values of the chatbot is to be able to connect with your IS to carry out personalized actions.

Here are some examples :

  • search in a product catalog
  • create a support ticket, send an email
  • have the status of an item (support ticket, delivery of a package, etc.)
  • retrieve data on the user (number of validated documents, number of days of leave remaining, etc.)
  • etc…

All of this cannot be done without connecting to your IS and without having an SSO login between your system and the chatbot’s system.

It is therefore necessary to think about the elements that you can connect with the chatbot with more or less complexity.

Your IS must therefore be accessible via APIs, connectors that allow programs to exchange with each other.

Final conclusion

What to really remember

The first thing to do is to identify your use case and understand what technologies are needed to carry it out (NLU, logic, content, API, etc…).

Then you will have to choose which development method to choose: set up an in-house team, use a dedicated off-the-shelf solution or use an agency.

In summary, here are the pros and cons for each solution:

  • internal team: large budget required, long and continuous learning curve, extended deadlines, but good mastery of techno
  • SaaS product: limited budget and resources, speed of execution, high success rate, gradual increase in skills of your teams, but you will probably have to work with several service providers according to their specificities
  • agency: big budget needed, choose the agency wisely (specialized in bots)

Finally, it will be necessary to ensure your ability to mobilize internal resources , particularly at the IT level (architecture / security).

Bravo (and thank you) for finishing this article.

Don’t hesitate to click on the big white button in the yellow insert below so that we can discuss it together!

To know all about the  chatbots and AI, subscribe to the Newsletter

🍔 Menu

Need help with your Chatbot project?

News

PRACTICAL GUIDES

You seem to like what you read...

Why not subscribe to our newsletter?

Receive this type of content and many others (tools, news, testimonials, podcasts…) every week directly to the mailbox of your choice. Unsubscribe at any time.