can't run the wav2vec2-base-960 example
Author: mehrdad78
Pull request: no
Labels: name: bug

### System Info

i use Google Colab and the newest version of transformer
i wanted to run this example but i got error :`list indices must be integers or slices not str`
because line of :
`**result = librispeech_eval.map(map_to_pred, batched=True, batch_size=1, remove_columns=["audio"])**`

```
from datasets import load_dataset
from transformers import Wav2Vec2ForCTC, Wav2Vec2Processor
import torch
from jiwer import wer


librispeech_eval = load_dataset("librispeech_asr", "clean", split="test")

model = Wav2Vec2ForCTC.from_pretrained("facebook/wav2vec2-base-960h")
processor = Wav2Vec2Processor.from_pretrained("facebook/wav2vec2-base-960h")

def map_to_pred(batch):
    input_values = processor(batch["audio"]["array"], return_tensors="pt", padding="longest").input_values
    
     logits = model(input_values).logits

    predicted_ids = torch.argmax(logits, dim=-1)
    transcription = processor.batch_decode(predicted_ids)
    batch["transcription"] = transcription
    return batch

result = librispeech_eval.map(map_to_pred, batched=True, batch_size=1, remove_columns=["audio"])

print("WER:", wer(result["text"], result["transcription"]))

```

### Who can help?

@patrickvonplaten @anton-l @sanchi

### 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 the example.

### Expected behavior

calculate the wer

Comments:
Hi, @mehrdad78, I made some modifications to your script. But it should work the same, below is the modified script:
```
from datasets import load_dataset
from transformers import Wav2Vec2ForCTC, Wav2Vec2Processor
import torch
from jiwer import wer

librispeech_eval = load_dataset(
    "hf-internal-testing/librispeech_asr_demo", "clean", split="validation"
)

model = Wav2Vec2ForCTC.from_pretrained("facebook/wav2vec2-base-960h")
processor = Wav2Vec2Processor.from_pretrained("facebook/wav2vec2-base-960h")


def map_to_pred(batch):
    arrays = [item["array"] for item in batch["audio"]]
    inputs = processor(arrays, return_tensors="pt", padding="longest")
    logits = model(**inputs).logits
    predicted_ids = torch.argmax(logits, dim=-1)
    transcription = processor.batch_decode(predicted_ids)
    batch["transcription"] = transcription
    return batch


result = librispeech_eval.map(
    map_to_pred, batched=True, batch_size=4, remove_columns=["audio"]
)

print("WER:", wer(result["text"], result["transcription"]))
```
The output of this script should be:
```
WER: 0.059130434782608696
```
I think you need to change the dataset from
```
librispeech_eval = load_dataset(
    "hf-internal-testing/librispeech_asr_demo", "clean", split="validation"
)
```
to
```
librispeech_eval = load_dataset("librispeech_asr", "clean", split="test")
```
which aligns with your original script.


> Hi, @mehrdad78, I made some modifications to your script. But it should work the same, below is the modified script:
> 
> ```
> from datasets import load_dataset
> from transformers import Wav2Vec2ForCTC, Wav2Vec2Processor
> import torch
> from jiwer import wer
> 
> librispeech_eval = load_dataset(
>     "hf-internal-testing/librispeech_asr_demo", "clean", split="validation"
> )
> 
> model = Wav2Vec2ForCTC.from_pretrained("facebook/wav2vec2-base-960h")
> processor = Wav2Vec2Processor.from_pretrained("facebook/wav2vec2-base-960h")
> 
> 
> def map_to_pred(batch):
>     arrays = [item["array"] for item in batch["audio"]]
>     inputs = processor(arrays, return_tensors="pt", padding="longest")
>     logits = model(**inputs).logits
>     predicted_ids = torch.argmax(logits, dim=-1)
>     transcription = processor.batch_decode(predicted_ids)
>     batch["transcription"] = transcription
>     return batch
> 
> 
> result = librispeech_eval.map(
>     map_to_pred, batched=True, batch_size=4, remove_columns=["audio"]
> )
> 
> print("WER:", wer(result["text"], result["transcription"]))
> ```
> 
> The output of this script should be:
> 
> ```
> WER: 0.059130434782608696
> ```
> 
> I think you need to change the dataset from
> 
> ```
> librispeech_eval = load_dataset(
>     "hf-internal-testing/librispeech_asr_demo", "clean", split="validation"
> )
> ```
> 
> to
> 
> ```
> librispeech_eval = load_dataset("librispeech_asr", "clean", split="test")
> ```
> 
> which aligns with your original script.

Thank you