code: def testBleuSmoothing(self, examples_key, expected_scores):
      smooth_methods = ("none", "floor", "add-k")
      smooth_values = (0, 0.5, 1, -1, 2)
      key = metric_types.MetricKey(name=bleu._BLEU_NAME_DEFAULT)
      for method_counter, smooth_method in enumerate(smooth_methods):
          for value_counter, smooth_value in enumerate(smooth_values):
              computation = bleu.Bleu(
                  smooth_method=smooth_method, smooth_value=smooth_value
              ).computations()[0]
              with beam.Pipeline() as pipeline:
                  result = _get_result(
                      pipeline,
                      [_EXAMPLES[examples_key]],
                      computation.combiner,
                  )
  
                  def check_result(
                      got,
                      inner_len=len(smooth_values),
                      outer_counter=method_counter,
                      inner_counter=value_counter,
                  ):
                      try:
                          got_metrics = self._check_got(got, key)
                          self.assertAlmostEqual(
                              expected_scores[
                                  inner_len * outer_counter
                                  + inner_counter
                              ],
                              got_metrics[key].score,
                              places=2,
                          )
  
                      except AssertionError as err:
                          raise util.BeamAssertException(err)
  
                  util.assert_that(result, check_result, label="result")
  
imports: from absl.testing import parameterized
  import apache_beam
  from apache_beam.testing import util
  import numpy
  import tensorflow
  import tensorflow_model_analysis
  from tensorflow_model_analysis import constants
  from tensorflow_model_analysis.eval_saved_model import testutil
  from tensorflow_model_analysis.evaluators import metrics_plots_and_validations_evaluator
  from tensorflow_model_analysis.metrics import bleu
  from tensorflow_model_analysis.metrics import metric_types
  from tensorflow_model_analysis.metrics import metric_util
  from tensorflow_model_analysis.slicer import slicer_lib
  from google.protobuf import text_format
label_desc: Use image node_id 7 for calling the BleuTest obj's underlying member method code with example usage: obj.testBleuSmoothing(examples_key, expected_scores) without return types