Skip to content

GabbieBot: A simple chat bot for teaching artificial intelligence

Notifications You must be signed in to change notification settings

kratman/ChatBot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


GabbieBot: A simple chat bot

By: Eric G. Kratz


GabbieBot

GPL license

Introduction

Gabbie is a simple artificial intelligence (i.e. a chatbot) for learning and teaching machine learning techniques.

Gabbie uses a Markov chain model to mimic the speech patterns in books. Markov chain models use the previous words to predict the next word in the sentence. Gabbie can use the previous two words or the previous three words to pick the next word. Additionally, Gabbie prefers to use words which appear more frequently in the books.

Markov chains algorithms are relatively easy to design, but they are very sensitive to the input source and the number of words in the chain. One of the primary advantages of the algorithm is that allows Gabbie to easily learn any language.

Installation

To install GabbieBot, clone the git repository:

user:$ mkdir GabbieBot
user:$ git clone https://github.com/kratman/ChatBot.git ./GabbieBot/

The Makefile can produce both the documentation and the binaries.

user:$ make install

Training

Gabbie can be taught to speak using plain text books and lists of canned responses.

user:$ TrainGabbie BookFileName <...>

Note: <...> represents additional books which are optional to include.

Gabbie will also learn as users interact with her; through conversations or by playing twenty questions. After training, Gabbie's memories are stored in the Knowledge directory. Gabbie can be forced to forget by running the "GabbieForget" script or by manually removing the memory text files.

Usage

The simplest way to interact with Gabbie is to call the RunGabbie script from the command line.

 user:$ ./bin/RunGabbie

  or

 user:$ ./bin/RunGabbie "<...>"

Note: The <...> can be replaced with any input string, but the quotes are required.

About

GabbieBot: A simple chat bot for teaching artificial intelligence

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published