Seq2SeqTrainer: cannot set max length when we evaluate/(generate) during training
## Environment inf
- `transformers` version: 4.6.1

### Who can help

- trainer: @sgugger 


## Information
Seq2SeqTrainer: cannot set max length when we evaluate/(generate) during training.

I know we can set the max length during the actual evaluation here: https://github.com/huggingface/transformers/blob/cbe63949d7/examples/seq2seq/finetune_trainer.py#L321

But if we want to set the max length during the evaluation in training:
https://github.com/huggingface/transformers/blob/cbe63949d7/src/transformers/trainer.py#L924
I can see, currently, there is nothing I can pass in. 
I found the solution can be `model.config.max_length`, but is there a more explicit argument that I can pass in?



Also, if I want to get the logits as well during training, is there anything I can do here?
https://github.com/huggingface/transformers/blob/cbe63949d7/src/transformers/trainer.py#L1505


## Expected behavior

Set max length, and output logits, during the evaluation in training

The Seq2SeqTrainer also accepts the `max_length` argument in its [evaluate method](https://github.com/huggingface/transformers/blob/1f335aef3bb5382b5cfd7adbe5861ed4979dd98d/src/transformers/trainer_seq2seq.py#L41).<|||||>Yeah. But the `Seq2SeqTrainer` extends `Trainer`, which implements the actual`train` function.

https://github.com/huggingface/transformers/blob/cbe63949d7/src/transformers/trainer.py#L924
And it is "fixed" as in no argument will be passed in.<|||||>Ah yes, for this you need to set the parameters in the config then.