Certain examples described herein provide methods and systems for implementing a conversational agent, e.g. to train a predictive model used by the conversational agent. In examples, text data representing agent messages from a dialogue database are clustered and the clusters are used to generate response templates for use by the conversational agent. The predictive model is trained on training data generated by selectively assigning response templates to agent messages from text dialogues. Examples enable a predictive model to be trained on high quality data sets that are generated automatically from a corpus of historical data. In turn, they enable a natural language interface to be efficiently provided.