Models represent the overall algorithm in which the agent(s) are trained and evaluated. When implementing an algorithm, you must create a model as well as an agent. Models are more important for training as a lot of algorithms have multiple agents during training, but only one agent during inference (except for multi-agent settings...)