Likes - Activity - sten - Rasa Community Forum
Feedback on ConveRT Model + Rasa NLU
Hello all! Here is my result on small size data.
- intent examples: 209 (11 distinct intents)
- entity examples: 80 (4 distinct entities)
- Sklearn pipeline
- train Accuracy: 0.995 (0.002)
- train F1-score: 0.995 (0.002)
- train Precision: 0.995 (0.002)
It would be nice, if the bot could do or try to do spelling correction. I would be very interested to see, how one can implement this with Rasa.
Hi @sten, there is no absolute need to use spacy. There are pipelines that work without Spacy - I recommend the documentation here. However, Spacy comes with some cool advantages that might be of interest for you. I am currently experimenting a lot with different Spacy features and can confirm, this is helpful.
Hi @sten, I hacked together a way to do this. It is not ideal, but works pretty well, for me at least. In a similar fashion, you can create a data/domain directory and split your files up. Then run my script right before you train and it will merge together all of those files into a single domain.yml.
please check the docs on how to create custom nlu components: Custom NLU Components
Hi @sten. That is an interesting observation. There are some similarities to cognitive architectures. Rasa is intended to enable developers to process and respond to information that is structured in the form of conversations. Cognitive architectures are generally intended to be used as a computer science framework that models human cognitive processes.
As the blog suggests - All FAQ-related intents are grouped into one retrieval intent and are responded to by a single respond_ask_faq action. In your case, faq is the basic intent that is used during intent classification. Once faq intent is triggered, hopefully you have a respond_faq action defined to provide users with relevant information.
You can use synonyms for that:
[conditional][if](etype)[if-then](etype)
If you define your training data like this and if is detected as etype, it is substituted by its synonym conditional. See Training Data Format.
If you could share your custom pipeline for spell correction once you’re done, I would be very interested!
You can get this in custom actions by using tracker.latest_message['intent'].get('name') 😊
Is there a way I can extract the current intent using custom actions.
I would like action_extract_intent to know if the current intent is greet, so that I may use it according to my needs. Is it possible?
Slots are filled automatically if they have the same name as the detected entities.
How it works?
Define a slot and an entity in your domain file with the same name, e.g., etype.
When Rasa is parsing the message and detects the entity etype in the user’s message, the slot etype is set automatically.
You can enter code with three backticks before and after the code, or inline with a single backtick. One way of doing this is to write / collect lots of stories for these situations. Also, have a look at Forms (Forms), Knowledge Bases (Integrating Rasa with knowledge bases), and Custom Actions (Custom Actions).
Check this 😊 https://rasa.com/docs/rasa/core/retrieval-actions/