NER Pipeline Issue
Author: albertnanda
Pull request: no

## Environment info
- `transformers` version: 4.0.0
- Platform: Linux-3.10.0-1062.9.1.el7.x86_64-x86_64-with-glibc2.10
- Python version: 3.8.5
- PyTorch version (GPU?): 1.7.0 (True)
- Tensorflow version (GPU?): not installed (NA)
- Using GPU in script?: Yes
- Using distributed or parallel set-up in script?: No

@stefan-it 

I am trying to pass multiple sentences to NER pipeline, but it fails with the following error message:
```ValueError: Unable to create tensor, you should probably activate truncation and/or padding with 'padding=True' 'truncation=True' to have batched tensors with the same length.```

Code to reproduce:
```
nlp = pipeline("ner")
nlp(["Some dummy text", "some more dummy text"])
````
Also,  the output data structure is wrong, ex:
nlp(["City New York","City New York"])
This should return a list of dicts as per the documentation, but it returns only a singe dict.

```[{'word': 'City', 'score': 0.6329959034919739, 'entity': 'I-LOC', 'index': 1},
 {'word': 'New', 'score': 0.5934403538703918, 'entity': 'I-LOC', 'index': 2},
 {'word': 'York', 'score': 0.728114128112793, 'entity': 'I-LOC', 'index': 3}]
```

Comments:
Btw, this works fine.

```
from transformers import pipeline
ner = pipeline("ner", grouped_entities=True)

sequence = """
Hugging Face Inc. is a company based in New York City.
Its headquarters are in DUMBO, therefore very close to the Manhattan Bridge which is visible from the window.
"""
output = ner(sequence)

print(output)
```

```
[{'entity_group': 'ORG', 'score': 0.9970663785934448, 'word': 'Hugging Face Inc'}, {'entity_group': 'LOC', 'score': 0.9993778467178345, 'word': 'New York City'}, {'entity_group': 'LOC', 'score': 0.9571147759755453, 'word': 'DUMBO'}, {'entity_group': 'LOC', 'score': 0.983814150094986, 'word': 'Manhattan Bridge'}]
```

@devansvd That's just a single sequence, I want to pass multiple sequences i.e. list of strings.

@albertnanda, @devansvd, @LysandreJik, I still get this issue in `v4.2.0`, even if `padding=True` and `truncation=True`. I tried all variants of padding and truncation with and without `grouped_entities=True` and got the same error as above. Did you figure out a solution besides feeding in the narratives one by one?

```
nlp = pipeline("ner", model=MODEL_NAME, tokenizer=TOKENIZER_NAME, grouped_entities=True)
results = nlp(narratives, padding=True, truncation=True)
```

Hello! Could you try again on the `master` branch and let us know if it works? https://github.com/huggingface/transformers/pull/10184 was recently merged and it should fix the issue. Thanks!

@LysandreJik This works, but this runs the model sequentially over the list of text. Can we add batching support. It would be way faster then. Without it, this change has little significance, the only thing it does is save 1 line of code i.e 
```
[nlp(text) for text in texts]
```

Sure, we could look in adding batching support, that would indeed make things much faster! Would you like to try your hand at it?

Sure, let me see if I can add batching support.

Working on batching for NER pipeline in this PR - https://github.com/huggingface/transformers/pull/11251

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.