Open Source Smart Assistant

November 6, 2019
By Botpress Team

“Alexa, what’s in the news today?”

“Google, what’s the weather like in Florida right now?”

If you have ever asked a question like this, then you’ve interacted with your very own chatbot. The concept of the chatbot was originally introduced in 2004 by Michael Mauldin to define conversational programs, and has since become a very important tool for business. But what are the benefits of having an open source chatbot or smart assistant, how do you build a chatbot, and why choose an open source chatbot over commercial options? Let’s dive a little deeper into these questions.

What are the benefits of a chatbot?

There are so many ways that businesses can benefit from a chatbot. Not only are chatbots necessary if you’re trying to keep up with the latest trends, but they also allow for improved customer service. In fact, one study showed that at least 83% of shoppers request assistance when they are doing their online shopping. With the right technology, an open source chatbot can provide these customers with all of the assistance that they need – answering their questions, giving them advice, and directing them towards pages, images, or tutorials that may be helpful. And the best part? An open source smart assistant doesn’t charge by the hour – so they can offer assistance to your customers 24/7.

Not only that, but creating a chatbot can save you money. Yes, they do cost money to create and run, but they are a lot cheaper (and faster) than hiring employees to work round-the-clock for the task of offering online customer service. In addition, chatbots can help to prevent human error, and monitor consumer data for you to help you gain valuable consumer insights.

How do you Build an Open source Chatbot?

The process of building a chatbot is similar to that of building any piece of software, and follows through a variety of stages:

The planning stage

  • During this stage it’s important that you understand the requirements to build, and the processes behind the creation of an open source smart assistant. It’s also the stage where you need to ask yourself, “what is my goal here?”

The building stage

  • During the building stage, a series of functionalities need to be added to your chatbot. These include, but are not limited to, natural language processing, answer-processing, multiple model management, and a GUI interface.

The testing phase

  • During this stage the chatbot undergoes in-depth testing to make sure that there are no bugs or errors in the program.

The publishing phase

  • The stage when your chatbot becomes available for use on your website.

The connecting phase

  • During this phase you can connect your chatbot to other applications like Facebook, Skype, etc.

The evaluation phase

  • This is the phase where you evaluate the success of your chatbot. Are there any errors that need to be corrected? What needs to be developed further? Are there any ways to improve performance? – these are all questions that need to be answered during this phase.

Open Source vs. Closed Source Platforms

Once you’ve decided that you want to build a chatbot, the question then becomes, “do I use an open source or commercial platform?” So what’s the difference between the two?

Open Source Software:

  • Open Source Software is software that is available for use by the general public, and that can also be modified by the general public. This means that the software is completely transparent.  It also means that developers from around the world can work to evolve the software, which means that the software is constantly evolving.

Closed Source software:

  • Closed source (or commercial) software is software that is developed by for-profit communities. They do not share their source code with the public, and therefore cannot be viewed or changed by the public – only authorized users can modify or republish the software. In almost all cases, you need to purchase a license to use this software.

Open Core / Dual License Software:

  • Open Core / Dual License software allows companies to offer many of the benefits of open source software to their clients, but at the same time sell premium versions to create a sustainable business model.  Some premium features may be closed source.

So which is the better choice?

Many people would agree that building an open source chatbot is the way to go. Not only is building an open source smart assistant the more affordable option, but there are also many other benefits that come along with the decision.

Open source software, for example, is constantly evolving. This means that there are no limitations to what you can do with your chatbot. As technology progresses, your chatbot can progress too. In other words, you can improve your chatbot as you go.

With closed source software, you are limited to what is offered at the time that you purchase the license. Yes, they may offer slightly more advanced features than open source software at the time of purchase, but as time progresses you will not gain access to any new features or technology unless you purchase a new licensing agreement.

Although open core / dual license software is chargeable for premium features, it generally has a much more comprehensive free tier than closed source companies offer which makes it more affordable.  It also has the advantage of a more profitable business model than pure open source software that allows it to afford to invest in more innovation and support for clients.

Another advantage of open source software is that you don’t run the risk of losing your provider. When you use a closed source company, on the other hand, there’s always a risk that the service provider will suddenly go out of business – this happens all the time. If it happens to your service provider, you’re basically “out of luck” and have to start from scratch.

Open source software, however, is constantly being improved by thousands of worldwide supporters. The chance of it disappearing from the market then is next to impossible.

So if you are throwing around the idea of creating a chatbot, go with an open source / open core chatbot. Not only is an open source / open core assistant more affordable, but it’s also more beneficial in the long term.


Disclaimer: We encourage our blog authors to give their personal opinions.  The opinions expressed in this blog are therefore those of the authors. They do not necessarily reflect the opinions or views of Botpress as a company.