🐛 Bart Tokenization difference between 2.11.0 and 3.0.2
# 🐛 Bug

Running this code :

```python
from transformers import BartTokenizer
tokenizer = BartTokenizer.from_pretrained("facebook/bart-large")
print(tokenizer.batch_encode_plus(["This is an example"]))
```

in `transformers` `2.11.0` and `3.0.2` gives different results.

`transformers` `2.11.0` :

> {'input_ids': [[0, 152, 16, 41, 1246, 2]], 'attention_mask': [[1, 1, 1, 1, 1, 1]]}

`transformers` `3.0.2` :

>  {'input_ids': [[0, 713, 16, 41, 1246, 2]], 'attention_mask': [[1, 1, 1, 1, 1, 1]]}

---

Colab for reproducing :

* [`2.11.0`](https://colab.research.google.com/drive/1qwYkcZoD1JtuLLDjABngJFoDUD06RiXm?usp=sharing)
* [`3.0.2`](https://colab.research.google.com/drive/1qUWcCUYInpa9Lwy2Ur-t3N3hImF1grCT?usp=sharing)

---

Is it from the refactoring of `generation_utils.py` ?

This line :

https://github.com/huggingface/transformers/blob/b42586ea560a20dcadb78472a6b4596f579e9043/src/transformers/tokenization_utils.py#L1709

was changed to :

https://github.com/huggingface/transformers/blob/b0892fa0e8df02d683e05e625b3903209bff362d/src/transformers/tokenization_utils.py#L505

---

In `2.11.0`, if `add_special_tokens` was `True` (which was the default value), then the RoBERTa tokenizer would add automatically the prefix space.

In `3.0.2`, `add_special_tokens` is still `True` by default, but is not passed to `tokenize()` anymore. RoBERTa tokenizer does not add a prefix space, which lead to the difference observed.

---

So the fixed code for `3.0.2` is :

```python
from transformers import BartTokenizer
tokenizer = BartTokenizer.from_pretrained("facebook/bart-large")
print(tokenizer.batch_encode_plus(["This is an example"], add_prefix_space=True))
```

---

_Not closing yet as I would like to know if this is an expected breaking changes or not._<|||||>This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
