O'Reilly logo
live online training icon Live Online training

Building intelligent bots in Python

Implementing rule-, retrieval-, and generative-based bots using NLP tools

Karol Przystalski

Join expert Karol Przystalski to learn how to build rule-, retrieval-, and generative-based customer support chatbots. Karol walks you through implementing a bot of each type using commonly used NLP tools like spaCy, Rasa, and Keras and shares considerations to take into account when building an intelligent bot for your business application. All examples are provided within a Jupyter notebook. You'll leave ready to implement customer service bots with Facebook and Slack, among other platforms.

What you'll learn-and how you can apply it

By the end of this live, online course, you’ll understand:

  • How natural language understanding works
  • Generative and relative approaches to NLU
  • The differences between rule-based, relative-based, and generative-based approaches to building bots
  • What kind of machine and deep learning methods can be used for generative-based bots

And you’ll be able to:

  • Develop simple rule-based bots
  • Develop intelligent bots using spaCy
  • Use NLP tools to perform sentiment analysis
  • Build a generative model for chatbots

This training course is for you because...

  • You're a data scientist with little to no experience with bots, natural language processing, or natural language understanding.
  • You're a Python developer who wants to extend your knowledge of bots for practical usage.
  • You're a developer who wants to extend your knowledge of Python for machine learning.


  • A working knowledge of Python
  • A basic understanding of machine learning (useful but not required)

Recommended preparation:

About your instructor

  • Karol Przystalski is CTO and founder of Codete. He obtained a Ph.D in Computer Science from the Institute of Fundamental Technological Research, Polish Academy of Sciences, and was a research assistant at Jagiellonian University in Cracow. His role at Codete is focused on leading and mentoring teams. The company has built a research lab that is working on machine learning methods and big data solutions in specialty areas such as pattern recognition and HDP implementation.


The timeframes are only estimates and may vary according to how the class is progressing

Regular expressions and spaCy (50 minutes)

  • Lecture: Using regular expressions and spaCy to match simple questions and answers
  • Hands-on exercise: Build a first-generation rule-based bot

Break (10 minutes)

A relative-based NLU approach (50 minutes)

  • Lecture: spaCy overview; context and entity
  • Hands-on exercise: Build a tool to understand intent

Break (10 minutes)

Machine and deep learning methods for answer generation (50 minutes)

  • Lecture: Machine and deep learning methods for answer generation
  • Hands-on exercise: Build a third-generation bot

Wrap-up and Q&A (10 minutes)