Chances are, you probably have experienced talking to a chatbot when you wanted to buy something from an online store without even realizing it. Or, maybe you could feel that it was not customer service replying to you since the sentences were weird sometimes and you didn’t get the answer you were looking for.
Since the era of chatbots is upon us and bot mania has dominated the tech world for a few years now, we have not gone a single month without hearing about a noteworthy announcement from the industry’s giants like Facebook, Google, Amazon, Microsoft, and so on. And there are more and more opportunities that chatbots are applied into.
For example, while everyone focused on Alexa, Google, and Cortana, Facebook Blender swept in and took the lead. But, before we go deeper into this, let’s first take a look at what exactly chatbots are.
What are chatbots?
Generally, chatbots are artificial intelligence (AI) programs that simulate a conversation (or a chat) between a user and the bot in natural language. Chatbots can be implemented in messaging apps, websites, mobile apps, or even into phone calls.
The benefit is that chatbots can react in real-time to the user phrases and words and provide them with an instant pre-set response. You can find them on Facebook Messenger, WhatsApp, Skype, Slack, Line, Kik, WeChat, or even on your website. As with any regular application, chatbots have an application layer, a database, APIs, and a conversational user interface.
Let’s say if you want to buy clothes from an online store, but you need assistance outside the store’s working hours. A chatbot will fix that, since it’s available for general inquiries 24/7, it doesn’t take breaks, it doesn’t sleep, and – if it’s trained properly – it can answer most if not all of your questions.
And even if chatbots have limitation in what they can do, they are still able to collect enough information to either transfer you to a human assistant or give you some recourses to help with your needs.
So, what types of chatbots are there?
Three types of chatbots
1. Rule-based chatbots
These are the simplest types of chatbots available today. Rule-based bots are used by clicking on buttons and interacting with predefined options, so several actions are required before these chatbots can answer relevant questions. Thus, these bots have longer user journeys, and they are the slowest to guide customers to their goals.
But, when it comes to qualifying your leads, these bots are great. Since rule-based chatbots have users ask questions and respond with buttons, the bot analyzes the collected data and replies accordingly. However, these bots aren’t always the most effective solution for complex scenarios with more conditions or factors.
2. Intellectually independent chatbots
Intellectually independent chatbots use Machine Learning (ML) to learn from user inputs and requests. With ML, the computer can learn from data and recognize patterns and decide on responses with minimum human interference.
Intelligent chatbots are trained to understand human-like words and phrases that trigger the bots’ responses. In short, , they learn by experience so the more they train themselves, the more they are able to understand.
3. AI-powered chatbots
The definition of Artificial Intelligence (AI) is that it is a simulation of human intelligence. Artificial intelligence refers to computer science that is focused on making intelligent machines that work and “think” like people.
AI-powered chatbots understand free language but also follow a predefined process to ensure it solves the user’s problem. These chatbots remember both the context of the conversation and the preferences of the user, and they can switch between points of conversation whenever necessary, and address most user requests.
In order to understand people, these chatbots use Machine Learning, Artificial Intelligence, and Natural Language Processing (NLP).
NLP is the unique identifier here. This type of technology give computers the ability to analyze speech, find the correct response, and respond in a way humans can relate to, not just understand.
Think of it like this:
- basic chatbots interact via predefined scenarios – the user selects specific buttons or actions in order to find an anwer;
- ML chatbots can understand intent (the purpose or goal of the questions) but are limited in how they interact with the human user and require extensive training;
- NLP chatbots can understand human speech and even ask contextual questions to make sure they are on the right track.
Two good examples of an NLP artificial assistants are Alexa and the Google assistant. Give it a try, ask your Alexa or Google assistant “How is the weather going to be today”.
You will notice that they will also ask follow-up questions such as “Would you like to hear the forecast for City X” or “Would you like to hear tomorrow’s forecast as well”. They might even ask clarification questions like “What city would you like the weather for”, if they don’t have all of the information they need to give you the full answer?
But they also remember the conversation’s context and can reply to follow-ups from you. For example, if you ask “how’s the weather today in Copenhagen”, you can always continue the conversation by asking “how about in London”. Noticed how you didn’t have to state your goal or intent the second time around?
So, yeah, chatbots are fun to talk to and play around. But how are they useful for businesses?
Why are chatbots important for your business?
A study has shown that 80% of marketers today use chatbots in some way or another. Why? Because AI-based chatbots increase operational efficiency and cut costs for businesses while providing a more convenient customer experience. Furthermore, FAQs can be automated and human interaction can be reduced as well.
Chatbot applications streamline interactions between people and service providers, so customers have a better experience. In the meanwhile, they provide companies with opportunities to enhance customer engagement and operate more efficiently.
The key reasons why there are more and more businesses choose chatbots as a strategy and tool to make customers and themselves easier:
- Easy to use: there is the option of selecting the predefined template. And it is possible to build the bot according to the requirements and deploy it across multiple channels. Even with zero coding ability, it is still really easy to create a chatbot with less effort and time for customer engagement.
- Reduce customer waiting time: most customers think chatbots are the easiest and fastest way to contact a business, and bots can ensure that customers get immediate responses without making them wait.
- 24/7 service: bots are always available to answer the questions that customers commonly ask and reply immediately. The best advantage of using chatbots is that they provide 24 hours customer service.
- Better engagement of customers: the bots can provide proactive conservation and personalized recommendations to engage customers.
- Save the cost of customer service: bots can help businesses to save or reduce customer support costs.
In order to be successful, a chatbot solution must be capable of performing tasks efficiently. Therefore, human support is vital. No matter which system and approach are used, human intervention is important for setting up, training, and optimizing the chatbot.
And now that we understand better what chatbots are, which type of chatbots we can see today and why do businesses need them, let’s circle back to our main topic – Facebook’s blender.
What is Facebook Blender?
Facebook has been investing its money and resources in its Natural Language Processing technologies for a few years, and those efforts seem to pay off.
The Facebook AI Research (FAIR) team announced on the 29th of April 2020 that it has built a new, state-of-the-art open-sourced chatbot called Blender. And they claimed it to be the largest open-domain chatbot model ever created, and it is more engaging than others as it has a more human “feeling”, according to human evaluators.
In addition, the company has also released a blog post stating that:
This is the first time a chatbot has learned to blend several conversational skills – including the ability to assume a persona, discuss nearly any topic, and show empathy – in natural, 14-turn conversation flows.
Further, it stated:
Our new recipe incorporates not just large-scale neural models, with up to 9.4 billion parameters – or 3.6x more than the largest existing system – but also equally important techniques for blending skills and detailed generation.
As explained in the blog, Blender is the result of years of research into conversational AI, where empathy, knowledge, and personality are all combined into one system. To build this chatbot model, the company included improved techniques of decoding, a blend of novel skills, and a model with 9.4 billion parameters, which is 3.6x more than the largest existing system.
Blender also has a variety of skills. By involving 1.5 billion extracted conversations in its training, the company created a large-scale chatbot. In addition, column-wise model parallelism was used, helping the researchers optimize performance by breaking up the neural network into smaller, more manageable pieces while maintaining maximum efficiency.
All in all, Blender is the world’s first chatbot that is built with this high variety of natural conversational abilities. FAIR even claims that Blender defeats Google’s Meena which is currently considered the best in the world.
So, how is Facebook Blender better?
During the learning process, Blender has read and analyzed over a billion threads on the forum Reddit to learn and hopefully be able to replicate human speech. And, much like Google and Alexa, Blender can also search for information in real-time.
For example, if you ask Blender who was the President of the United States in 1954, Blender will try to Google the result and answer Dwight D. Eisenhower if the answer is not already stored in its memory.
But, where Blender stands out is its human trait. Other advanced AI assistance like Google and Alexa can assume a personality and engage the use of knowledge, as well. But they are limited when it comes to conversations. Blender, supposedly can discusses nearly any topic, and show a deeper empathy that other bots.
Most importantly, it can blend in almost seamlessly which is mainly what we have been missing with previous chatbots. It is undoubtedly that they have done their jobs before, however, they still lack the human side, and that degraded the experience for the users.
Another distinctive trait of Blender is the approach to generation strategies which are meant to keep them bots repeating themselves, providing too long or shallow responses, or exhibiting other shortcomings.
So, in order to achieve the best balance between lively conversations and dull ones, Facebook engineers selected search hyperparameters carefully over sampling.
Limitations of Facebook Blender
So far, this new “state-of-the-art” chatbot technology sounds incredible. But, nothing is perfect in the world, and nor is Blender. The Facebook AI Research outlined some of the major limitations of Blender that we also find in other chatbots such as:
- Vocabulary usage: even the best Blender models generate common phrases too often. For instance, the phrases “do you like”, “a lot of fun”, and “have any hobbies”.
- Repetition: often, the models repeat what is said to them. For example, they may mention that they have a pet cat if the conversation partner mentions a pet cat, or they might bring up the same hobbies as the person they’re talking with.
- Forgetting and contradicting: Blender models sometimes contradict themselves, though to a lesser degree in larger models. Additionally, they fail to make the logical connection that they shouldn’t ask questions they’ve asked in the past.
- Factual accuracy and knowledge: especially when exploring a topic deeply, the models can become tangled up in making factual errors.
- Memory and conversation length: Conversations over a long period of time with Blender are likely to become dull and repetitive – especially since it isn’t able to remember earlier conversations.
- In-depth understanding: the models can’t learn concepts from further discussion, and they have no way of linking to entities, actions, and experiences in the real world.
How To Get Started With Facebook Blender?
That said, if you are still curious about trying Blender yourself, the technology is open-source so it is free for anyone to use, as long as you know how to work with Python (the programming language, not the snake).
To get started, you first need to clone the project and install all associated libraries. To do this, open the command prompt and go to the folder where the project is located. Then run the command pip install -r requirements.txt, and then pip install PyTorch. And then you are all set!
As soon as you are ready to test Facebook Blender, you need to load a model first. A model is a predefined set of rules that the bots relate to and are trained after. The outcome when a user communicates with the bot will thus be determined from this.
There are different kinds of models that you can run. The 2.7B can be interacted with on a 16GB P100 GPU or better, and the 9.4B parameter model requires at least two 32GB V100 GPUs to interact with.
The bot is tested with this command:
As you can see the first message was “Hi! I love to sing” and the bot replied ” “That’s awesome! What kind of music do you sing? Do you have a favorite singer?” So, now you can see this nice little bot with personality!
You can also fine-tune your model by adding different datasets. You can find more information about it here.
Chatbots and AI assistants are a huge part of our daily personal or professional lives. Every smart device has a built-in assistant and a vast majority of businesses use these digital assistans in their daily operations.
Some are still quite basic, some like Alexa and Google are almost like a companion in our homes. But even though Facebook Blender has been on the market only for a short period of time, and there are some factors that can be improved with it, it is still undeniably the largest-ever and most human-like chatbot.
Needless to say, Facebook’s FAIR team has set some high standards for the new generation of artificial assistants, so the question now is: what’s next?
One thing is for sure, and that is technology is innovating and expanding rapidly. We can not wait to see where this technology will be in 12 months and we will keep you updated. So stay tuned and don’t forget to subscribe to our weekly newsletter and get all the goodies directly into your inbox!