Any tutorials for developing chatbots? [closed]

As a engineering student, I would like to make a chat bot using python. So, I searched a lot but couldn't really find stuff that would teach me or give me some concrete information to build a intelligent chat bot.

I would like to make a chatbot that gives human-like responses (Simply like a friend chatting with you). I am currently expecting it to be as just a software on my laptop (would like to implement in IM, IRC or websites later).

So, I am looking for a tutorial/ any other information which would certainly help me to get my project done.


Solution 1:

You can read a nice introduction to various techniques used to design chatbots here: http://www.gamasutra.com/view/feature/6305/beyond_fa%C3%A7ade_pattern_matching_.php

Also, here are a few useful links:

  • http://web.archive.org/web/20120320060043/
  • http://ai-programming.com/bot_tutorial.htm
  • http://www.alicebot.org/be.html
  • http://en.wikipedia.org/wiki/List_of_chatterbots
  • http://www.codeproject.com/Articles/36106/Chatbot-Tutorial
  • http://www.slideshare.net/amyiris/ai-and-python-developing-a-conversational-interface-using-python

The Natural Language Toolkit (python) implements a few chatbots: http://nltk.github.com/api/nltk.chat.html

Simple pipeline architecture for a spoken dialogue system from the book Natural Language Processing with Python - Analyzing Text with the Natural Language Toolkit By Steven Bird, Ewan Klein, Edward Loper:

enter image description here

Solution 2:

The two places I would start with are how cleverbot works [part of a podcast] and then go through the Natural Language Toolkit Book to learn about the algorithms to use. (NLTK uses python, but the book is also a python tutorial)