Add PEFT support directly in transformers pipeline
# What does this PR do?

Replaces https://github.com/huggingface/peft/pull/585 

After discussing with @LysandreJik I made this PoC PR to see whether it is simpler to add PEFT support directly in transformers and centralize all sort of pipelines in transformers pipeline. In the future, we can concentrate the efforts on diffusers side to add PEFT support there as well.

Do not merge before the next PEFT release

Currently the API looks as follows:

```python
from transformers import pipeline 

peft_model_id = "ybelkada/opt-350m-lora"
pipe = pipeline("text-generation", peft_model_id)
print(pipe("hello"))

pipe = pipeline("text-generation", peft_model_id, peft_model_kwargs={"adapter_name": "default"})
print(pipe("hello"))

local_peft_pipeline_path = "./test_lora_pipeline"
pipe.model.save_pretrained(local_peft_pipeline_path)

pipe = pipeline("text-generation", local_peft_pipeline_path)
print(pipe("hello"))
```

## TODOS:

- [ ] seq2seq generation
- [ ] seq classification
- [ ] Add check with task_type
- [ ] add clean tests
- [ ] update docs
The docs for this PR live [here](https://moon-ci-docs.huggingface.co/docs/transformers/pr_24750). All of your documentation changes will be reflected on that endpoint.<|||||>Thanks ! If the PoC gets validated by @Narsil I can extend it to more tasks (seq2seq generation, seq-cls) and add nice tests in the current testing suite<|||||>So far `self.check_model_type` is removed, and I know @Narsil suggests it's ok.

I think it could be simply skipped by checking if the model is an instance of PEFT model, and we don't really need to remove it. Leave @sgugger to make the final call though.<|||||>Sounds good to me!