All Projects → nmstoker → lockebot

nmstoker / lockebot

Licence: MIT License
LockeBot: a demonstration of implementing a basic question answering bot with use of Rasa and a database

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to lockebot

Botpress
🤖 Dev tools to reliably understand text and automate conversations. Built-in NLU. Connect & deploy on any messaging channel (Slack, MS Teams, website, Telegram, etc).
Stars: ✭ 9,486 (+10324.18%)
Mutual labels:  rasa
rasa-bert-finetune
支持rasa-nlu 的bert finetune
Stars: ✭ 46 (-49.45%)
Mutual labels:  rasa
rasa-agent-bot-demo
A sample Implementation of agent bot APIs in chatwoot using rasa
Stars: ✭ 21 (-76.92%)
Mutual labels:  rasa
Rasa core
Rasa Core is now part of the Rasa repo: An open source machine learning framework to automate text-and voice-based conversations
Stars: ✭ 2,302 (+2429.67%)
Mutual labels:  rasa
rasa-docker-arm
Rasa Docker image for ARMv7. Runs on a Raspberry Pi.
Stars: ✭ 19 (-79.12%)
Mutual labels:  rasa
Jatbot
自动聊天软件,支持中英文,采用最新版rasa引擎,可进行意图识别、多轮对话、动作跟踪等功能,自动引导客户消费,应答客户咨询。【Automatic chat software, supporting Chinese and English, using the latest version of Rasa engine, can carry out intention recognition, multi-round dialogue, action tracking and other functions, automatically guide customers to consume, respond to customer consultation.】
Stars: ✭ 22 (-75.82%)
Mutual labels:  rasa
lobe
Lobe is the world's first AI paralegal.
Stars: ✭ 22 (-75.82%)
Mutual labels:  rasa
rasa-train-test-gha
A GitHub action to run easily rasa train and rasa test in the CIs.
Stars: ✭ 26 (-71.43%)
Mutual labels:  rasa
rasa ch faq
用 rasa 实现 rasa demo 机器人,有一些惊奇的功能,faq,图谱,多轮等
Stars: ✭ 156 (+71.43%)
Mutual labels:  rasa
rasa-action-server-gha
A GitHub Action that simplifies using Rasa Actions and helps to prepare a Docker image with custom actions.
Stars: ✭ 36 (-60.44%)
Mutual labels:  rasa
rasa bot example
This is an example rasa chatbot implementation that can be connected to your Facebook page.
Stars: ✭ 14 (-84.62%)
Mutual labels:  rasa
app rasa chat bot
a stateless chat bot to perform natural language queries against the App Store top charts
Stars: ✭ 20 (-78.02%)
Mutual labels:  rasa
clofus-chatbot
Clofus® Chat bot Platform using rasa core and rasa nlu similar to rasa x but opensource demo https://clofus.github.io/clofus-chatbot/
Stars: ✭ 61 (-32.97%)
Mutual labels:  rasa
Rasa
💬 Open source machine learning framework to automate text- and voice-based conversations: NLU, dialogue management, connect to Slack, Facebook, and more - Create chatbots and voice assistants
Stars: ✭ 13,219 (+14426.37%)
Mutual labels:  rasa
virtual-assistant
Virtual Assistant
Stars: ✭ 67 (-26.37%)
Mutual labels:  rasa
GSTFAQChatbot
Set of scripts to build a chatbot which will answer FAQ about Goods and Services Tax (GST) India.
Stars: ✭ 37 (-59.34%)
Mutual labels:  rasa
Django-Rasa-Bot
Integrating Rasa Core with Django backend and finally using Webchat for chatbot user interface
Stars: ✭ 30 (-67.03%)
Mutual labels:  rasa
CHIT-CHAT
A Covid-19 Chatbot that aims to serve humans queries and give a feasible answer to their queries.
Stars: ✭ 18 (-80.22%)
Mutual labels:  rasa
opensnips
Open source projects related to Snips https://snips.ai/.
Stars: ✭ 50 (-45.05%)
Mutual labels:  rasa
rasa milktea chatbot
Chatbot with bert chinese model, base on rasa framework(中文聊天机器人,结合bert意图分析,基于rasa框架)
Stars: ✭ 97 (+6.59%)
Mutual labels:  rasa

lockebot

LockeBotLogo

LockeBot: a demonstration of implementing a basic question answering bot with use of Rasa and a database.

NB: The code is undergoing an update so expect some changes compared to the old version and it is not completely "neatened up" yet! 😃

What is this?

It is a bot that can answer simple questions via Rasa X plus any other interfaces Rasa supports and with extra work it can even be voice-enabled (see demo video)

After being trained on examples, it is (to a degree) able to generalise the questions and respond to a broad range of similar questions. The questions are turned into intents and entities, which are then used to construct queries to run against a database to provide the answer.

The demostration topic is the UK monarchy with the answers derived from a simple table of the kings and queens.

If you want to see the older version it's here.

Install

** A work in progress - steps need refinement and may be missing **

Ensure you have Python 3.5+ installed (Python version requirements TBC)

  • Git clone from this repo
    • git clone https://github.com/nmstoker/lockebot mybotfoldername - replace mybotfoldername with any valid name you like
    • cd mybotfoldername
  • Create a virtual environment (optional but recommended)
  • Activate the virtual environment
  • Use pip install
    • pip install -r requirements.txt
  • Install Rasa / Rasa X - UPDATE DETAILS
  • Train models (see below, Usage)

Additional installation choices

Voice UI

I plan to update this section to demonstrate how to extend the bot to be voice-enabled for local use.

See a YouTube demonstration here: https://youtu.be/8aqiVI3ITr8

YouTube

Other UI Options

See details of the various Channel Connectors in Rasa documentation

It should be feasible to connect it to any Channel Connectors or even a custom one that works with Rasa but this is up to you.

Raspberry Pi installation

UPDATE THIS

Usage

Training

The main files to focus on for training are:

See the Rasa documentation here for details of the format and options for editing it.

UPDATE THIS

Regular Bot Use

UPDATE THIS

  • Start Rasa Action server: in a first terminal activate your virtual environment, then enter: rasa run actions --auto-reload You should see successful output including:

    Action endpoint is up and running on http://localhost:5055

  • Start Rasa X: in a second terminal also activate your virtual environment, then enter: rasa x You should see it launch with a browser page opened automatically The terminal will also show something along the lines of:

    The server is running at http://localhost:5002....

  • (if running voice-enabled) start SimpleSpeechLoop in a third terminal (NB: repo currently does not include updates for this integration to work)

  • Interact via Rasa X on the "Talk to your bot" page

Platforms

Currently it is only tested on Linux (specifically Arch x86-64.

In due course I would be interested like to support Windows and Mac - I have access to the former but not the latter, so if there's anyone keen to look into this on the Mac, volunteers will be gratefully received.

Technical background

UPDATE THIS

Name origin

LockeBot gets its name from a weak pun. It is built on Rasa, and John Locke (the philospher) was notable for his work in relation to the empty slate arguments regarding the mind, called tabula rasa.

RoyBot data

The sqlite database for RoyBot has been populated with information gleened from public sources on the web, chiefly:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].