From 1363ecdcebd410c0563b7fa2fb042e46810950a6 Mon Sep 17 00:00:00 2001
From: QD0716 <71574048+QD0716@users.noreply.github.com>
Date: Tue, 27 Oct 2020 09:53:43 +0800
Subject: [PATCH] Fix bug for can't generate correct vectorized state (#152)

dst.update don't update dst.state['user_action'], so dst.state['user_action'] is always empty, The following function state_vectorize cannot get the correct user_action. sr_act_vec is always zero.
---
 convlab2/policy/mle/crosswoz/loader.py | 1 +
 1 file changed, 1 insertion(+)

diff --git a/convlab2/policy/mle/crosswoz/loader.py b/convlab2/policy/mle/crosswoz/loader.py
index d3f160c..c29c11c 100755
--- a/convlab2/policy/mle/crosswoz/loader.py
+++ b/convlab2/policy/mle/crosswoz/loader.py
@@ -45,6 +45,7 @@ class PolicyDataLoaderCrossWoz():
                 dst.init_session()
                 for i, turn in enumerate(sess):
                     if turn['role'] == 'usr':
+                        dst.state['user_action'] = turn['dialog_act']
                         dst.update(usr_da=turn['dialog_act'])
                         if i + 2 == len(sess):
                             dst.state['terminated'] = True
-- 
GitLab