Labels shift in seq2seq example
### System Info

```shell
- `transformers` version: 4.15.0
- Platform: Linux-4.15.0-54-generic-x86_64-with-glibc2.10
- Python version: 3.8.5
- PyTorch version (GPU?): 1.8.1+cu101 (True)
- Tensorflow version (GPU?): not installed (NA)
- Flax version (CPU?/GPU?/TPU?): not installed (NA)
- Jax version: not installed
- JaxLib version: not installed
- Using GPU in script?: <fill in>
- Using distributed or parallel set-up in script?: <fill in>
```


### Who can help?

@sgugger, @patil-suraj

### Information

- [X] The official example scripts
- [ ] My own modified scripts

### Tasks

- [X] An officially supported task in the `examples` folder (such as GLUE/SQuAD, ...)
- [ ] My own task or dataset (give details below)

### Reproduction

Just run https://github.com/huggingface/transformers/blob/main/examples/pytorch/translation/run_translation.py script

### Expected behavior

For each token in seq2seq target sequence we have to predict the next token. However, i did not found this shift by one token in translation example neither in code nor in sources (I checked tokenizer.as_target_tokenizer, for example)

It can be added in this line https://github.com/huggingface/transformers/blob/fa322474060beb3673cf5a3e39ccd3c8ad57ecd3/examples/pytorch/translation/run_translation.py#L436


P.S. While opening this issue, I also checked CLM script example and met the same problem there. https://github.com/huggingface/transformers/blob/fa322474060beb3673cf5a3e39ccd3c8ad57ecd3/examples/pytorch/language-modeling/run_clm.py#L437 

Am I wrong and miss something or it is really a problem that requires small fix?

I should read the documentation carefully...