4
votes

I think this question has been asked but there are no clear answers.

The question is simple.

Can you have an entity list on the server.

For example I have a list of Product names on my database which can be really big. I want the intent to recognise these entities based on a list on the server.

The other thing I would like to do is filter an entity list.

e.g. I have a list of stores. I want it to be filtered by location, say by distance and lat long showing only stores near you when I ask a question.

Things which are so easy to do in apps seem so difficult in Dialogflow.

Please do not provide solutions which can be done on the server through webhooks. I already know about that and have used it.

I just want a better way to use entities so that the NLP can become more powerful.

1
Wonder what it says for the people at Google Dialogflow to answer these questions. I do see a lot of questions answered by them. - user3631034

1 Answers

0
votes

The best way to do will be using Entities with webhook.

  • You may enable slot filling for the parameters.
  • In the webhook, have a set of stores based on locations and hashmap with the location as key and set of stores as value.
  • when the location is provided, fetch the corresponding set of stores.
  • when the store is provided, see if that store is present in the set.
  • reprompt if the information is not correct by resetting the context if required.

    UPDATE
    You may ask the user for the product names. Match the entity name with the names in DB. If present, use it if not, provide the user with some option from the DB that may match with what the user is saying and ask them to choose one.
    You need to think from a conversation point of view how two people communicate with each other.