Bug: metrics inside on_evalute callback is passed wrongly 
Hi
this is very helpful to save all metrics every eval_step with evaluation_stategy = steps, for this I wrote a callback as follows to access metrics inside this callback:

```
class EvaluationCallback(TrainerCallback):
    def  on_evaluate(self, args, state, control, **kwargs):
        print("### kwargs ", kwargs['metrics']) #
```

{'eval_loss': 972.89990234375, 'eval_acc': 0.0}

I pass this callback to the trainer.py

from what I see this metrics does not match the output of evaluate function, for instance in my case this is 
`{'boolq_eval_loss': 525.3097534179688, 'boolq_eval_acc': 60.6, 'rte_eval_loss': 972.89990234375, 'rte_eval_acc': 0.0}
`
could you tell me how I can access output of evaluate() inside this callback as this is? thanks 

Issue resolved with adding this line in evaluate function:

 self.control = self.callback_handler.on_evaluate(self.args, self.state, self.control, results)
<|||||>reopened, since this is not solved after this line, indeed this looks like a bug, could you have a look please?<|||||>Hello, could you please put all of your environment information as asked in the template, as well as the command you used to launch the script? We need this in order to help you. Thank you.<|||||>This issue has been automatically marked as stale because it has not had recent activity. If you think this still needs to be addressed please comment on this thread.

Please note that issues that do not follow the [contributing guidelines](https://github.com/huggingface/transformers/blob/master/CONTRIBUTING.md) are likely to be ignored.