Skip to main content

Building Chatbots in Python

Learn the fundamentals of how to build conversational bots using rule-based systems as well as machine learning.

Start Course for Free
4 Hours15 Videos49 Exercises60,906 Learners
4100 XP

Create Your Free Account



By continuing, you accept our Terms of Use, our Privacy Policy and that your data is stored in the USA. You confirm you are at least 16 years old (13 if you are an authorized Classrooms user).

Loved by learners at thousands of companies

Course Description

Messaging and voice-controlled devices are the next big platforms, and conversational computing has a big role to play in creating engaging augmented and virtual reality experiences. This course will get you started on the path toward building such applications. There are a number of unique challenges to building these kinds of programs, like how do I turn human language into instructions for machines? In this course, you'll tackle this first with rule-based systems and then with machine learning. Some chat systems are designed to be useful, while others are just good fun. You will build one of each and put everything together to make a helpful, friendly chatbot. Once you complete the course, you’ll also learn how to connect your chatbot to Facebook Messenger!

  1. 1

    Chatbots 101


    In this chapter, you'll learn how to build your first chatbot. After gaining a bit of historical context, you'll set up a basic structure for receiving text and responding to users, and then learn how to add the basic elements of personality. You'll then build rule-based systems for parsing text.

    Play Chapter Now
    Introduction to conversational software
    50 xp
    EchoBot I
    100 xp
    EchoBot II
    100 xp
    Creating a personality
    50 xp
    100 xp
    Adding variety
    100 xp
    ELIZA I: asking questions
    100 xp
    Text processing with regular expressions
    50 xp
    ELIZA II: Extracting key phrases
    100 xp
    ELIZA III: Pronouns
    100 xp
    ELIZA IV: Putting it all together
    100 xp
  2. 2

    Understanding natural language

    Here, you'll use machine learning to turn natural language into structured data using spaCy, scikit-learn, and rasa NLU. You'll start with a refresher on the theoretical foundations and then move onto building models using the ATIS dataset, which contains thousands of sentences from real people interacting with a flight booking system.

    Play Chapter Now
  3. 3

    Building a virtual assistant

    In this chapter, you'll build a personal assistant to help you plan a trip. It will be able to respond to questions like "are there any cheap hotels in the north of town?" by looking inside a hotel’s database for matching results.

    Play Chapter Now
  4. 4


    Everything you've built so far has statelessly mapped intents to actions and responses. It's amazing how far you can get with that! But to build more sophisticated bots you will always want to add some statefulness. That's what you'll do here, as you build a chatbot that helps users order coffee.

    Play Chapter Now

In the following tracks

Natural Language Processing


Hugo Bowne-AndersonYashas Roy
Alan Nichol Headshot

Alan Nichol

Co-founder and CTO of Rasa

Alan is co-founder and CTO of Rasa, the leading open source conversational AI company. Rasa builds software that enables developers to build conversational software that really works, and is trusted by thousands of developers in enterprises worldwide. Rasa combines applied AI research with enterprise-ready technology. Alan holds a PhD in machine learning from the University of Cambridge and has years of experience building AI-powered products in industry.
See More

What do other learners have to say?

I've used other sites—Coursera, Udacity, things like that—but DataCamp's been the one that I've stuck with.

Devon Edwards Joseph
Lloyds Banking Group

DataCamp is the top resource I recommend for learning data science.

Louis Maiden
Harvard Business School

DataCamp is by far my favorite website to learn from.

Ronald Bowers
Decision Science Analytics, USAA