I am new to NLP and AI in general. I am just expecting springboard information so that I can skip all the introduction to NLP websites. I have just started studying NLP and want to know how to go about solving this problem. I am creating a chatbot that will take voice input from customers ordering food at restaurants. The customer input I am expecting as;

I want to order Chicken Biryani

Can I have a Veg Pizza, please

Coca-cola etc

I want to write an algorithm that can separate the name of the food item from the user input and compare it with the list of food items in my menu card and come up with the right item.

I am new to NLP, I am studying it online for this particular project, I can do the required coding, I just need help with the overall algo or sort of flow chart. It will save my time tremendously. Thanks.


Since you want a shortcut use the spoonacular API. Below is a test with your words. You can see it had trouble with 'Coca' and 'veg'.

enter image description here

What you need is 'named-entity recognition' for food. This is not a new thing but clearly not a solved problem. The Foodie Favorites repository attempts to solve the problem from scratch.

If want to do some research and dig deeper see FoodBase corpus: a new resource of annotated food entities. From the abstract:

It consists of 12,844 food entity annotations describing 2105 unique food entities. Additionally, we provided a weakly annotated corpus on an additional 21,790 recipes. It consists of 274,053 food entity annotations, 13,079 of which are unique.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.