code: def compute_score(self, gts, res):
      assert gts.keys() == res.keys()
      imgIds = gts.keys()
  
      bleu_scorer = BleuScorer(n=self._n)
      for id in imgIds:
          hypo = res[id]
          ref = gts[id]
  
          # Sanity check.
          assert type(hypo) is list
          assert len(hypo) == 1
          assert type(ref) is list
          assert len(ref) >= 1
  
          bleu_scorer += (hypo[0], ref)
  
      # score, scores = bleu_scorer.compute_score(option='shortest')
      score, scores = bleu_scorer.compute_score(
          option="closest", verbose=self.verbose
      )
      # score, scores = bleu_scorer.compute_score(option='average', verbose=1)
  
      # return (bleu_tool, bleu_info)
      return score, scores
  
imports: from .bleu_scorer import BleuScorer
label_desc: Use image node_id 2 for calling the Bleu obj's underlying member method code with example usage: obj.compute_score(gts, res) and returns: score,  scores