setting pipeline `tokenizer.pad_token_id` - bug / mistake in error message
Author: morrisalp
Pull request: no

### System Info

transformers version 4.18.0,  Python 3.8.0

### Who can help?

_No response_

### Information

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

### Tasks

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

### Reproduction

Run text generation pipeline using model with tokenizer without pad_token. In my case: `generator = pipeline('text-generation', model='EleutherAI/gpt-neo-1.3B', device=0)`.

Running batched text generation:`generator(texts, ..., batch_size=8)` gives error message: "ValueError: Pipeline with tokenizer without pad_token cannot do batching. You can try to set it with `pipe.tokenizer.pad_token_id = model.config.eos_token_id`".

Running `generator.tokenizer.pad_token_id = generator.model.config.eos_token_id` gives error message: `TypeError: 'int' object is not iterable`

Running `generator.tokenizer.pad_token_id = '\n'` works, transformers converts the string into indice(s) internally.

### Expected behavior

Right-hand-side of line setting pad_token_id should be an ID (int), not a string.
Code in error message should run as-is

Comments:
cc @Narsil and @gante 

@morrisalp can you share a more detailed example ?

The following code seems to work:

```python
from transformers import pipeline
generator = pipeline("text-generation", model="EleutherAI/gpt-neo-1.3B", device=0)
generator.tokenizer.pad_token_id = generator.model.config.eos_token_id
```

@Narsil Your code throws an error on my end. I receive this error:

> ---------------------------------------------------------------------------
> TypeError                                 Traceback (most recent call last)
> Cell In [4], line 1
> ----> 1 generator.tokenizer.pad_token_id = generator.model.config.eos_token_id
> 
> File /disk2/morrisalper/notebooks/env/lib/python3.8/site-packages/transformers/tokenization_utils_base.py:1169, in SpecialTokensMixin.pad_token_id(self, value)
>    1167 @pad_token_id.setter
>    1168 def pad_token_id(self, value):
> -> 1169     self._pad_token = self.convert_tokens_to_ids(value)
> 
> File /disk2/morrisalper/notebooks/env/lib/python3.8/site-packages/transformers/tokenization_utils_fast.py:251, in PreTrainedTokenizerFast.convert_tokens_to_ids(self, tokens)
>     248     return self._convert_token_to_id_with_added_voc(tokens)
>     250 ids = []
> --> 251 for token in tokens:
>     252     ids.append(self._convert_token_to_id_with_added_voc(token))
>     253 return ids
> 
> TypeError: 'int' object is not iterable
> 

I can also confirm that the snippet shared above works on my end -- @morrisalp, if possible, can you update `transformers` to a more recent version? I'm afraid we can't fix bugs on older versions :)

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/main/CONTRIBUTING.md) are likely to be ignored.