code: def _bleu(
      name: str,
      eval_config: config_pb2.EvalConfig,
      model_name: str,
      output_name: str,
      lowercase: bool,
      force: bool,
      tokenize: str,
      smooth_method: str,
      smooth_value: float,
      effective_order: bool,
  ) -> metric_types.MetricComputations:
      """Returns BLEU score."""
      key = metric_types.MetricKey(name=name)
      return [
          metric_types.MetricComputation(
              keys=[key],
              preprocessors=None,
              combiner=_BleuCombiner(
                  eval_config=eval_config,
                  model_name=model_name,
                  output_name=output_name,
                  lowercase=lowercase,
                  force=force,
                  tokenize=tokenize,
                  smooth_method=smooth_method,
                  smooth_value=smooth_value,
                  effective_order=effective_order,
                  key=key,
              ),
          )
      ]
  
file_path: model-analysis/tensorflow_model_analysis/metrics/bleu.py
imports: from typing import Dict, Iterable, Optional
  import apache_beam
  import numpy
  import sacrebleu
  from tensorflow_model_analysis.metrics import metric_types
  from tensorflow_model_analysis.metrics import metric_util
  from tensorflow_model_analysis.proto import config_pb2
label_desc: Use image node_id 1 for calling a global function with example usage: _bleu(name, eval_config, model_name, output_name, lowercase, force, tokenize, smooth_method, smooth_value, effective_order) and returns: list