Git Product home page Git Product logo

rasa_chatbots's Introduction

Learn How to build a chatbot

I have been building chatbots for past 3 years using existing platforms like Google's Dialogflow, Wit.ai, Recast.ai. Over the years I have fallen in love with open source frameworks and Rasa is one of the best to build chatbots. In this tutorial we will build 3 simple chatbots thereby understanding the basics and what differentiates chatbots webapps

Bots

  1. Echo bot - A bot that repeats whatever you say
  2. Google Search Bot - A bot that searches Google for you
  3. wordbot - A bot that gives you meaning and opposites

Each bot has it's own folder with Tutorial.md file.

How do we build it?

Any chatbot building consist of 3 parts

  1. Training your bot
  2. Writing your actions
  3. Giving a chat interface

Prerequistes

This repo assumes you know python, if you don't learn basics of python and ML and get back here.

  1. python 3.7
  2. pip
  3. virtualenv

Setup

I use virtualenv to create a virtualenv and create

pip install -r requirements.txt

Creating bot from scratch

mkdir <botname>
cd <botname>
rasa init

Using Existing bot

1. Echo bot

For a bot that repeats whatever a user says we don't need any NLP. But this will help us few concepts.

But before moving on let's do this without any NLP.

cd echo_bot/

python bot_without_nlp.py

2. Search bot

Again, a search bot does not need much of NLP. But this example is just to explain how chatbots make an API call to fetch you data.

cd search_bot/

python bot_without_nlp.py

3. Word bot

  1. Train the bot
cd wordbot
rasa train
  1. Run the command line UI
rasa shell
  1. Run the actions server
rasa run actions

rasa_chatbots's People

Contributors

bhavaniravi avatar dependabot[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.