Add Epsilon and Eta sampling
### Feature request

I would like to add Epsilon and Eta sampling from [Truncation Sampling as Language Model Desmoothing](https://arxiv.org/abs/2210.15191). They are novel truncation sampling decoding algorithms that have led to better human judgement scores and less repetition than nucleus sampling.

- [Official repository](https://github.com/john-hewitt/truncation-sampling)

### Motivation

I would like to generate more human-like and less repetitious text with Huggingface models.

### Your contribution

I am able to submit a PR for this.
cc @gante <|||||>Yesterday's ACL 2023 tutorial on "Generating Text from Large Language Models" covers eta-sampling and more! John Hewitt, the first author of the eta-sampling paper, was one of the presenters for that tutorial!

Site: https://rycolab.io/classes/acl-2023-tutorial/
Slides: https://drive.google.com/file/d/1UHbGcjzBURG1n2DufC7iDTmGNjIz5Dp_/view