add custom stopping criteria to human eval script
This PR adds the new custom `stopping_criteria` feature in `generate` (#14779) to the code evaluation script at `scripts/human_eval.py`.

In HumanEval the task is to complete a function and with this feature the generation is stopped once the function body is complete. To do this a set of keywords, named end-of-function (EOF), is used. If any of these EOF keywords appear in the generation the function body must be finished. E.g. if `\ndef` is in the generated sequence this means that the current body was completed.

This feature increases the generation speed for HumanEval by 2-3x (from 8h to ~3h).
Human eval crashes for me, and I believe this PR is to blame. Here's the stack:

```
Traceback (most recent call last):
  File "human_eval.py", line 126, in <module>
    main()
  File "human_eval.py", line 106, in main
    task_generations.extend(complete_code(pipe, prompt, num_completions=args.batch_size, **gen_kwargs))
  File "human_eval.py", line 50, in complete_code
    code_gens = pipe(prompt, num_return_sequences=num_completions, **gen_kwargs)
  File "/opt/conda/lib/python3.7/site-packages/transformers/pipelines/text_generation.py", line 150, in __call__
    return super().__call__(text_inputs, **kwargs)
  File "/opt/conda/lib/python3.7/site-packages/transformers/pipelines/base.py", line 924, in __call__
    return self.run_single(inputs, preprocess_params, forward_params, postprocess_params)
  File "/opt/conda/lib/python3.7/site-packages/transformers/pipelines/base.py", line 931, in run_single
    model_outputs = self.forward(model_inputs, **forward_params)
  File "/opt/conda/lib/python3.7/site-packages/transformers/pipelines/base.py", line 880, in forward
    model_outputs = self._forward(model_inputs, **forward_params)
  File "/opt/conda/lib/python3.7/site-packages/transformers/pipelines/text_generation.py", line 165, in _forward
    generated_sequence = self.model.generate(input_ids=input_ids, **generate_kwargs)  # BS x SL
  File "/opt/conda/lib/python3.7/site-packages/torch/autograd/grad_mode.py", line 28, in decorate_context
    return func(*args, **kwargs)
  File "/opt/conda/lib/python3.7/site-packages/transformers/generation_utils.py", line 1027, in generate
    **model_kwargs,
TypeError: sample() got multiple values for keyword argument 'stopping_criteria'
```

I'm using Transformers 4.12.2. It seems like `sample` call in `generation_utils.py` already has `stopping_criteria` keyword argument set. <|||||>Indeed, this requires `transformers==4.15.0`, where handling of custom stopping criteria was introduced. See changes to `requirements.txt`. Hope upgrading works!