Creating Chat Bot using Chatterbot (Python)
What is a Chatbot?
A chatbot (also known as a talkbot, chatterbot, Bot, IM bot, interactive agent, or Artificial Conversational Entity) is a computer program or an artificial intelligence which conducts a conversation via auditory or textual methods. Such programs are often designed to convincingly simulate how a human would behave as a conversational partner, thereby passing the Turing test. Chatbots are typically used in dialog systems for various practical purposes including customer service or information acquisition. Some chatterbots use sophisticated natural language processing systems, but many simpler systems scan for keywords within the input, then pull a reply with the most matching keywords, or the most similar wording pattern, from a database.Source Wiki
What is ChatterBot?
ChatterBot is a Python library that makes it easy to generate automated responses to a user’s input. ChatterBot uses a selection of machine learning algorithms to produce different types of responses. This makes it easy for developers to create chat bots and automate conversations with users.
What is ChatterBot Language Training Corpus?
These modules are used to quickly train ChatterBot to respond to various inputs in different languages. Although much of ChatterBot is designed to be language independent, it is still useful to have these training sets available to prime a fresh database and make the variety of responses that a bot can yield much more diverse.
Github Repo
Chat Bot using Chatterbot
By using the library you can skip the part of understanding the details of NLP (Natural Language Processing) and directly go to creating a fully functional Chat Bot.
Coding
SetUp
virtualenv -p python3 venv --no-site-packages
source venv/bin/activate
pip3 list
pip3 install -r requirements.txt
Using Python 3.5+
Training
python3 train.py
Notes
- You can train this on custom data as well, just pass the folder location in
ChatBot.train(datafolder="./custom", train_corpus=True)
intrain.py
- Since we are using
trainer='chatterbot.trainers.ChatterBotCorpusTrainer'
checkChatBot.py
, you need to pass your custom data in the given format. Checkcustom/credit.yml
for info
Running
python3 run.py
Notes
- You can turn of logging if you want by commenting
logging.basicConfig(level=logging.INFO)
inChatBot.py
- Threshold is set in
ChatBot.py
at'threshold': 0.65,
, you can change it. - In case of response is not found the bot will reply
'default_response': 'I am sorry, but I do not understand.'
set inChatBot.py
- Can create a help response as well in
ChatBot.py
'input_text': 'Help me!',
'output_text': 'mail your quey here: singhsidhukuldeep@gmail.com'
- The reply is chosen randomly if multiple responsies available:
response_selection_method=get_random_response,
inChatBot.py
I always like and search such topics and everything connected to them.Excellent and very cool idea and the subject at the top of magnificence and I am happy to comment on this topic through which we address the idea of positive reaction.
ReplyDeleteChatbot Company in Dubai
Chatbot Companies in Dubai
Chatbot Development
AI Chatbot Development
Chatbot Companies in UAE
Chatbot Company in Chennai
Chatbot Company in Mumbai
Chatbot Company in Delhi
Chatbot Development Companies
business chatbot I would like to say that this blog really convinced me to do it! Thanks, very good post.
ReplyDeletequalifying prospects Thanks for a very interesting blog. What else may I get that kind of info written in such a perfect approach? I’ve a undertaking that I am simply now operating on, and I have been at the look out for such info.
ReplyDelete