It would be very useful to have a base class for any Input->output tasks using LLMs.
This will allow to create sub-classes for specific tasks (e.g. entity recognition, keyword extraction, sentiment classification, etc.).
In fact, having a new module sdialog.tasks for this would be useful, then we can have subclasses for different tasks.