Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Reference_description_with_linked_URLs______________________________________Notes____________________________________________________________________
Assistant technology

https://rasa.com/

https://github.com/RasaHQ/rasa

Rasa - open source platform to build smart chatbots with python for NLP domains
https://rasa.com/docs/rasa/Rasa docs












Assistant solutions
https://www.forbes.com/sites/bernardmarr/2019/03/22/the-amazing-ways-carnival-cruises-is-using-iot-and-ai-to-create-smart-cities-at-sea/#56ba5a855a64Carnival Cruise Lines re-engineers the customer experience with ultimate personalization - the Ocean Medallion
https://jobs.citizensbank.com/Citizens Bank job assistant responds well, quickly with positive energy






...

The rasa init command creates all the files that a Rasa project needs and trains a simple bot on some sample data. If you leave out the --no-prompt flag you will be asked some questions about how you want your project to be set up.

This creates the following files:

__init__.pyan empty file that helps python find your actions
actions.pycode for your custom actions
config.yml ‘*’configuration of your NLU and Core models
credentials.ymldetails for connecting to other services
data/nlu.md ‘*’your NLU training data
data/stories.md ‘*’your stories
domain.yml ‘*’your assistant’s domain
endpoints.ymldetails for connecting to channels like fb messenger
models/<timestamp>.tar.gzyour initial model

The most important files are marked with a ‘*’. You will learn about all of these in this tutorial.


...

4. Write Your First Stories

At this stage, you will teach your assistant how to respond to your messages. This is called dialogue management, and is handled by your Core model.

Core models learn from real conversational data in the form of training “stories”. A story is a real conversation between a user and an assistant. Lines with intents and entities reflect the user’s input and action names show what the assistant should do in response.

Below is an example of a simple conversation. The user says hello, and the assistant says hello back. This is how it looks as a story:

## story1
* greet
- utter_greet

You can see the full details in Stories.

Lines that start with - are actions taken by the assistant. In this tutorial, all of our actions are messages sent back to the user, like utter_greet, but in general, an action can do anything, including calling an API and interacting with the outside world.

Run the command below to view the example stories inside the file data/stories.md:

cat data/stories.md

5. Define a Domain

The next thing we need to do is define a Domain. The domain defines the universe your assistant lives in: what user inputs it should expect to get, what actions it should be able to predict, how to respond, and what information to store. The domain for our assistant is saved in a file called domain.yml:


cat domain.yml

So what do the different parts mean?

intentsthings you expect users to say
actionsthings your assistant can do and say
templatestemplate strings for the things your assistant can say

How does this fit together? Rasa Core’s job is to choose the right action to execute at each step of the conversation. In this case, our actions simply send a message to the user. These simple utterance actions are the actions in the domain that start with utter_. The assistant will respond with a message based on a template from the templates section. See Custom Actions to build actions that do more than just send a message.


6. Train a Model

Anytime we add new NLU or Core data, or update the domain or configuration, we need to re-train a neural network on our example stories and NLU data. To do this, run the command below. This command will call the Rasa Core and NLU train functions and store the trained model into the models/ directory. The command will automatically only retrain the different model parts if something has changed in their data or configuration.


rasa train
echo "Finished training."

The rasa train command will look for both NLU and Core data and will train a combined model.


7. Talk to Your Assistant

Congratulations! 🚀 You just built an assistant powered entirely by machine learning.

The next step is to try it out! If you’re following this tutorial on your local machine, start talking to your assistant by running:

rasa shell

Next Steps

Now that you’ve built your first Rasa bot it’s time to learn about some more advanced Rasa features.

  • Learn how to implement business logic using forms
  • Learn how to integrate other APIs using custom actions
  • Learn how to connect your bot to different messaging apps
  • Learn about customising the components in your NLU pipeline
  • Read about custom and built-in entities

You can also use Rasa X to collect more conversations and improve your assistant:



Potential Value Opportunities



Potential Challenges



Candidate Solutions


Rasa - open-source smart assistant framework for NLP

https://github.com/RasaHQ/rasa

Rasa is an open source machine learning framework to automate text-and voice-based conversations. With Rasa, you can build chatbots or voice assistants ( Alexa, Google Home)

Rasa's primary purpose is to help you build contextual, layered conversations with lots of back-and-forth. To have a real conversation, you need to have some memory and build on things that were said earlier. Rasa lets you do that in a scalable way.





Step-by-step guide for Example


Info


sample code block

Code Block
languagetext
titlesample code block
linenumberstrue
collapsetrue



Recommended Next Steps



Page Properties
hiddentrue


Related issues