Updated on Apr 12, 2016: Added Microsoft Bot Framework, Skype Bot platform, Facebook Messenger and Alexa – it’s getting hotter in a bot space!
The rise of messaging apps and platforms with a decent API and fast moving players (such as Slack, Hipchat) created a good momentum for making some useful chat bots. Bots that can serve to specific needs from hailing a taxi, to scheduling meetings to conducting team standups.
Along with the popular now messaging platforms, there are also other pieces of technology puzzle available for creation of bots, such as cloud computing, natural language processing (NLP) libraries, tools for machine learning/AI, as well as the spread of mobile as a personal computing device.
Below I’ve collected some useful links, articles, tools, references for the books that might help you in a fun journey of inventing your own bots. This is not a complete list but a great start for those scratching the surface of the field and start learning.
Messaging Platforms
- Slack API
- HipChat Connect
- Telegram Bot Platform
- Skype Bots
- Facebook Messenger Platform
- Amazon Echo Alexa Skills Kit (ASK)
Chat Bots Libraries
- Superscript – a dialog system and bot engine
- Botkit – a toolkit for making bot applications
- HUBOT – a chat bot modeled after GitHub’s Campfire bot
- Microsoft Bot Framework – easy to connect with Twitter, Slack, Skype, SMS and other channels
APIs in NLP and ML spaces
- wit.ai – Natural Language for Developers (updated on Apr 12, 2016 with a Story feature!)
- IBM Bluemix – Watson API to learn, reason and consider context
- Language Understanding Intelligent Service (LUIS) from Microsoft
Natural Language Processing Libraries
- Node/Natural
- Natural Language Toolkit (python)
Stories/Articles
- Creating a Chat Bot by Rob Ellis
- Beyond Façade: Pattern Matching for Natural Language Applications
- Chatbot Tutorial
Data/Knowledge Base
- Google Knowledge Graph Search API
- DBPedia – crowd-sourced structured information from Wikipedia
- YAGO – semantic knowledge base
Useful Theory
- Artificial Intelligence: Foundations of Computational Agents
- Turing Completeness
- Outline of natural language processing
- Stanford Natural Language Processing course on Coursera
- Big Five personality traits
Other useful links
- Stanford Natural Language Processing Group
- AIML: Artificial Intelligence Markup Language
- ELIZA – the first chat bot ever made (from 1966)
- The Loebner Prize in Artificial Intelligence
- Pandorabots – web service for building and deploying chatbots.
- Alexa Skills Kit Voice Design Best Practices – useful theory of conversation design
If you know other interesting materials on chat bots development to be added to this list, just drop me a line on Twitter @bashmakov.