I’m currently building a retrieval-based Chatbot for a startup so it’s fairly ‘closed-domain’ (did it from scratch so not using any of the known platforms like DialogFlow). Any unknown input returns a standard response. However, to improve the UX, instead of the default response I’ve been thinking of feeding these unknown inputs to a trained model to generate a new response. So it would be a mix of retrieval-based and a fallback to a generative model in case retrieval fails.
How often is this done and is it a good approach? What are some better approaches to this problem?