code: def __init__(
      self,
      completion_fns: list[CompletionFn],
      samples_jsonl: str,
      *args,
      max_tokens: int = 500,
      num_few_shot: int = 0,
      few_shot_jsonl: str = None,
      **kwargs,
  ):
      super().__init__(completion_fns, *args, **kwargs)
      assert (
          len(completion_fns) == 1
      ), "Translate only supports one completion fn"
      self.max_tokens = max_tokens
      self.samples_jsonl = samples_jsonl
  
      self.num_few_shot = num_few_shot
      if self.num_few_shot > 0:
          assert (
              few_shot_jsonl is not None
          ), "few shot requires few shot sample dataset"
          self.few_shot_jsonl = few_shot_jsonl
          self.few_shot = evals.get_jsonl(
              self._prefix_registry_path(self.few_shot_jsonl)
          )
  
      self.bleu = BLEU(effective_order=True)
  
file_path: evals/evals/elsuite/translate.py
imports: from typing import Any
  from sacrebleu.metrics.bleu import BLEU
  import evals
  import evals.metrics
  from evals.api import CompletionFn
  from evals.prompt.base import is_chat_prompt
label_desc: Use image node_id 1 to create a new Translate object from inherited base classes: evals with example: obj = Translate(completion_fns, samples_jsonl)