`Pipeline.forward()` possibility to place `model_outputs` on GPU
### Feature request

In `transformers.pipelines.base.py` (line 1035):

`model_outputs = self._ensure_tensor_on_device(model_outputs, device=torch.device("cpu"))`

Is it possible to add a new argument that decides whether `model_outputs` should be placed on `self.device` instead of `torch.device("cpu")`?

### Motivation

The variable `model_outputs` is always placed on CPU, which can cause a slowdown if I perform additional operations on the `Pipeline.postprocess()` function.

For example, if I were to pass `logits` to `model_outputs`, the whole tensor would be transferred from GPU to CPU. If I do this extensively, I will face a severe slowdown in my pipeline.

### Your contribution

Right now, I have to override the method to remove that particular line, but I can submit a PR.
`pipeline` is only a wrapper around the model and preprocessing class for quick demos. To customize things more to your needs, you should use those classes independently as you need :-)<|||||>Thanks for the feedback @sgugger! I will keep customizing it then 😄 