Add support to MPNetForCausalLM
### Feature request

Add MPNetForCausalLM for various usage. 


### Motivation

The pre-trained mpnet model provides the best performance in [sentence embedding](https://www.sbert.net/docs/pretrained_models.html)
And it can aim for additional performance improvements through using [TSDAE (Tranformer-based Denoising AutoEncoder)](https://www.sbert.net/examples/unsupervised_learning/README.html#tsdae).
For using TSDAE, model need decoder part implementation(MPNetForCausalLM). but current MPNet model does not support MPNetForCausalLM

With support to MPNetForCausalLM, all the decoding functions will be possible for mpnet models, e.g. the TSDAE learning, seq2seq tasks, etc.

simillar issue : [Add support to DistilBertLMHeadModel](https://github.com/huggingface/transformers/issues/14737)

### Your contribution

I have been working on the details by forking the recent master branch , and if there is no problem, I would like to proceed.
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.