Awesome
<p align="center"><img width=12.5% src="/app/images/logo.png"></p> <p align="center"><img width=60% src="/app/images/logoText.png"></p><h2 align="center">Basic Overview</h2>
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!
<h2 align="center">Demo</h2>https://www.talk.jackdh.com (User: demo@jackdh.com Pass: demo1234)
<p align="center"> <img src="https://user-images.githubusercontent.com/1907451/43040505-2d57dc30-8d3d-11e8-9bb9-8ac65bf48a67.gif" alt="" height="500" /> <p> <h2 align="center">Installation</h2>Prerequisites
- Database: Mongodb - You can run this locally or online like mlab
- Chatbot Brain: Rasa NLU - I recommend running with Docker
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
<h2 align="center">Up and Running</h2>- 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!
Both Facebook and Telegram can be easily setup within the app 🚀 Check out the telegram setup wiki for more information!
<h3>Generate Rasa NLU Training Data</h3>- 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
- 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.
- Role based, Group Based & individual user permissions.
- Create secure user accounts using PassportJS
- Limit user access to certain features within the application.
- Convert Intents into training data.
- Accurate entity insertion (Not just search and replace)
- View current training time.
- View models currently in training.
- Ping the Rasa server directly to get a JSON response.
- Test the chatbot directly to see output of dialog management.
- Fill out the front dashboard to expand on the simple analytics.
- View user's chats with the chatbot.
- Filter down based on criteria such as Dates, Topics or Intents.
- Implement simple small talk.
- 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.
- Prettier is picking up a non existent issue with spacing.
- Dashboard analytics need a default value.
@Material-UI React Boilerplate