I want to extract multiple entities from a user input. Example- "Service httpd is not responding because of high CPU usage and DNS Error" So here I want to identify below: Httpd High CPU usage DNS Error
And I will be using this keywords to get a response from a Database.
Just annotate them accordingly, e.g.
Having the sentence from above, Rasa NLU would extract 3 entities of type
keyword
. You can then access these entities in a custom action and query your database.Regarding the number of examples which are required: this depends on
tensorflow_embedding
requires more training examples thanspacy_sklearn
since it does not use pretrained language models.httpd
,high CPU usage
, andDNS error
then you don't need a lot of examples. However, if you have a thousand different values for your entity, then you need more training examplesOne intent is enough if you always want to trigger the same custom action. However, if you want to classify different type of problems, e.g. server problems and client problems, and trigger different databases depending on the type of problems, you might consider having multiple intents.
Sorry for the vague answers, but in machine learning most things are highly dependent on the use case and the dataset.