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 Free4 hours15 videos49 exercises
Create Your Free Account
or
By continuing, you accept our Terms of Use, our Privacy Policy and that your data is stored in the USA.Training 2 or more people?Try DataCamp For Business
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!
For Business
Training 2 or more people?
Get your team access to the full DataCamp library, with centralized reporting, assignments, projects and more- 1
Chatbots 101
FreeIn 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.
Introduction to conversational software50 xpEchoBot I100 xpEchoBot II100 xpCreating a personality50 xpChitchat100 xpAdding variety100 xpELIZA I: asking questions100 xpText processing with regular expressions50 xpELIZA II: Extracting key phrases100 xpELIZA III: Pronouns100 xpELIZA IV: Putting it all together100 xp - 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.
Understanding intents and entities50 xpIntent classification with regex I100 xpIntent classification with regex II100 xpEntity extraction with regex100 xpWord vectors50 xpword vectors with spaCy100 xpIntents and classification50 xpIntent classification with sklearn100 xpEntity extraction50 xpUsing spaCy's entity recognizer100 xpAssigning roles using spaCy's parser100 xpRobust language understanding with rasa NLU50 xpRasa NLU100 xpData-efficient entity recognition100 xp - 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.
Virtual assistants and accessing data50 xpSQL basics50 xpSQL statements in Python100 xpExploring a DB with natural language50 xpCreating queries from parameters100 xpUsing your custom function to find hotels100 xpCreating SQL from natural language100 xpIncremental slot filling and negation50 xpRefining your search100 xpBasic negation100 xpFiltering with excluded slots100 xp - 4
Dialogue
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.
Why statefulness is key50 xpForm filling100 xpAsking contextual questions100 xpDealing with rejection100 xpAsking questions & queuing answers50 xpPending actions I100 xpPending actions II100 xpPending state transitions100 xpPutting it all together I100 xpPutting it all together II100 xpFrontiers of dialogue research50 xpGenerating text with neural networks100 xpCongratulations!50 xp
For Business
Training 2 or more people?
Get your team access to the full DataCamp library, with centralized reporting, assignments, projects and morecollaborators
Alan Nichol
See MoreCo-founder and CTO of Rasa
What do other learners have to say?
FAQs
Join over 14 million learners and start Building Chatbots in Python today!
Create Your Free Account
or
By continuing, you accept our Terms of Use, our Privacy Policy and that your data is stored in the USA.