Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jackdh/RasaTalk
A chatbot framework for Rasa NLU
https://github.com/jackdh/RasaTalk
bot botkit bots chatbot chatbot-framework conversational-ai nlp nodejs rasa rasa-nlu react
Last synced: about 2 months ago
JSON representation
A chatbot framework for Rasa NLU
- Host: GitHub
- URL: https://github.com/jackdh/RasaTalk
- Owner: jackdh
- License: mit
- Created: 2018-06-25T21:20:20.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2022-12-22T08:55:39.000Z (almost 2 years ago)
- Last Synced: 2024-05-27T19:24:58.822Z (7 months ago)
- Topics: bot, botkit, bots, chatbot, chatbot-framework, conversational-ai, nlp, nodejs, rasa, rasa-nlu, react
- Language: JavaScript
- Homepage:
- Size: 17.9 MB
- Stars: 294
- Watchers: 18
- Forks: 87
- Open Issues: 34
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- awesome-chatbots - Rasa Talk - GUI supported open-source chatbot framework built over Rasa. (Open Source Projects)
README
Basic Overview
Rasa Talk is a Dialog Management tool built on top of Rasa NLU. It was built out of a desire for a open source on premise dialog management system. Originally inspired by Rasa UI inspiration was taken from watson conversation.
Rasa Talk can be used as just a training data generator but can also hook your chatbot up to Facebook/Telegram/Skype/Slack whatever!
Feel free to message me on [![Gitter chat](https://badges.gitter.im/gitterHQ/gitter.png)](https://gitter.im/RasaTalk/Lobby)
[![Build Status](https://travis-ci.org/jackdh/RasaTalk.svg?branch=master)](https://travis-ci.org/jackdh/RasaTalk)
Demo
[https://www.talk.jackdh.com](http://www.talk.jackdh.com) (User: [email protected] Pass: demo1234)
Installation
**Prerequisites**
- Database: [Mongodb](https://www.mongodb.com/) - You can run this locally or online like [mlab](https://mlab.com/)
- Chatbot Brain: [Rasa NLU](https://rasa.com/docs/nlu/) - I recommend running with [Docker](https://hub.docker.com/r/rasa/rasa_nlu/)```
git clone https://github.com/jackdh/RasaTalk/
Rename example.env to '.env'
Update the variables to include your MongoDB server IP and Rasa NLU IP.
yarn
yarn start
```**Docker**
Update `.env` or `docker-compose.yml` with selected environment variables. (Mongodb volumes do not work on windows)
`docker-compose up`
**Or view https://github.com/jackdh/RasaTalk/wiki/Setup for a more detailed setup guide**
Up and Running
* Update .env with correct environment variables.
* Create a new user
* Add a new Agent
* Add some intents to the agent
* Add some expressions to the intents.
* Add entities if required.
* Start training the model
* Create a dialog node which is recognised by either and Intent or Regex.
* Populate the rest of the node
* Test it out on the right!Features
Facebook / Skype / Third parties.
Due to the constumisable nature of RT it's possible to hook it up to practically any third party chatbot you'd like. For starters I've included a quick example of how you might use [Botkit](https://github.com/howdyai/botkit) as a middleware to get to FacebookBoth Facebook and Telegram can be easily setup within the app 🚀 Check out the [telegram setup](https://github.com/jackdh/RasaTalk/wiki/Telegram-Setup) wiki for more information!
Generate Rasa NLU Training Data
* Agents - Create multiple agents to host multiple chatbots from one backend.
* Intents / Expressions - Build multiple varied expressions within the agents either manually or with the variant generator.
* Entities - Create multiple entities with their synonyms.
* Entity insertion - Highlight to insert entities into expressions
Dialog Management
* Watson Conversation style dialog management.
* Regex based or Intent based recognition.
* Dynamic recognition with multiple Intents or Entities ie: #intent OR @entity
* Smart contextual awareness
* Slot Filling with default slot or prompting
* Multiple and or varied responses.
* Jump to nodes
* Send and use REST API web hooks within nodes.
* Conditional based responses, webhooks, jump to's.
* Save user responses for future use within nodes or API's
* Create quick reply buttons.
Permission Based Editing
* Role based, Group Based & individual user permissions.
* Create secure user accounts using PassportJS
* Limit user access to certain features within the application.
Training Rasa
* Convert Intents into training data.
* Accurate entity insertion (Not just search and replace)
* View current training time.
* View models currently in training.
Built in Chatbot / Rasa parsers
* Ping the Rasa server directly to get a JSON response.
* Test the chatbot directly to see output of dialog management.
Still to come!
Further Analytics
* Fill out the front dashboard to expand on the simple analytics.
History
* View user's chats with the chatbot.
* Filter down based on criteria such as Dates, Topics or Intents.Small Talk
* Implement simple small talk.
Todo / Help requested!
* Increase test coverage to 100%.
* Add Travis / Appveyor
* Provide autocomplete options for fields such as nodes.
* Better validation / error notifications.
* Add rename option for intents / expressions
* Add backup option for node / training data.
* Add sockets for chat as well as update notifications.Known issues
* Prettier is picking up a non existent issue with spacing.
* Dashboard analytics need a default value.Thanks
@Material-UI
React Boilerplate