From c0e80d5ad689a131270a42b4170d79561ddbdd45 Mon Sep 17 00:00:00 2001
From: zz-jacob <zhangz.goal@gmail.com>
Date: Thu, 21 Apr 2022 17:36:46 +0800
Subject: [PATCH] use sacrebleu.corpus_bleu()

---
 convlab2/nlg/evaluate_unified_datasets.py | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/convlab2/nlg/evaluate_unified_datasets.py b/convlab2/nlg/evaluate_unified_datasets.py
index cb36a82e..68c48932 100644
--- a/convlab2/nlg/evaluate_unified_datasets.py
+++ b/convlab2/nlg/evaluate_unified_datasets.py
@@ -1,5 +1,6 @@
 import sys
 from nltk.translate.bleu_score import corpus_bleu
+import sacrebleu
 from nltk.tokenize import word_tokenize
 sys.path.append('../..')
 import json
@@ -32,9 +33,10 @@ def evaluate(predict_result, ontology):
     references = []
     candidates = []
     for i in range(len(predict_result)):
-        references.append([word_tokenize(predict_result[i]['utterance'])])
-        candidates.append(word_tokenize(predict_result[i]['prediction']))
-    metrics['bleu'] = corpus_bleu(references, candidates)
+        references.append(predict_result[i]['utterance'])
+        candidates.append(predict_result[i]['prediction'])
+    # metrics['bleu'] = corpus_bleu(references, candidates)
+    metrics['bleu'] = sacrebleu.corpus_bleu(candidates, [references], lowercase=True).score
 
     # ERROR Rate
     ## get all values in ontology
-- 
GitLab