Implementing one prompt recommender

Hi guys. I aim to implement a text based recommender for restaurants.
I have some ideas but they are vague. I want to extract user intent and information to recommend matching restaurants.
For example user may want to go out for a date night and the example prompt may be: “I’m planning a special date night and want to go somewhere romantic. What’s a good restaurant with a nice view?”.
I already tried SetFit to classify such sentences(in the example above, date night). I have problem extracting information such as the user is looking for a nice view.
I am also curios to know how can I match extracted information with restaurants data. I am thinking about semantic search but I am not sure.
For information extraction I wanted to use NER, POS, and dependency parsing but still I am looking for better ideas.
Any help and recommendation would be greatly appreciated. Thanks.