Reputation: 21
I am facing a real issue, I don't what I am looking for is not provided by rasa or it is just I can't find it.
Now, I was using IBM Watson and Dialogflow. Entities are divided into:
and when you refer to intents training data you just type the entity name or sub-entity name and one time only
example: Entity: iPhone Sub-entitiies:
1) iphone7
synanoms: iphone seven, iPhone 7, i Phone 7, iPhone svn
2) iphone8
synanoms: iphone eight, iPhone 8, i Phone 8, iPhone eight
3) iPhone12
synanoms: iphone twelce, iPhone 12, i Phone 12, iPhone 12
intent training sample: I want to buy @iphone
**-----------------------------------------------------------------**
but in rasa the only possible way is to add it like that: (just for clarification)
I want to buy [iphone seven]{"entity": "iPhone", "value": "iphone7"}
I want to buy [iphone seven] (iPhone)
I want to buy [iPhone 7] {"entity": "iPhone", "value": "iphone7"}
I want to buy [i Phone 7] {"entity": "iPhone", "value": "iphone7"}
I want to buy [iphone eight] {"entity": "iPhone", "value": "iphone8"}
....
... etc
Listing entities in intents by this way is an absolute hassle, especially that I have already huge data set and it will make my intents increase 100x times and I believe it will cause overfitting.
Is there any way to list my entities as I list them in Watson or Dialogflow?
Upvotes: 2
Views: 133
Reputation: 11
Yes, there is a form is: You must use lookups. There is how:
- intent: dice_su_nombre
examples: |
- my name is [fran](name)
- my name is [felipe](name)
- lookup: name
examples: |
- fran
- gianluca
- felipe
- felix
Upvotes: 0
Reputation: 76
You can define synonyms in your training data, like so:
nlu:
- synonym: credit
examples: |
- credit card account
- credit account
Read more here. I'm not as sure what you're trying to achieve with the sub-entities. If you can tell me more, I can try to help you figure out the best way to solve this with Rasa tools.
Upvotes: 1