def test_maintain_dialog_history(self): try: from parlai.core.torch_agent import TorchAgent except ImportError as e: if 'pytorch' in e.msg: print( 'Skipping TestTorchAgent.test_maintain_dialog_history, no pytorch.' ) return from parlai.core.params import ParlaiParser parser = ParlaiParser() TorchAgent.add_cmdline_args(parser) parser.set_params(no_cuda=True, truncate=5) opt = parser.parse_args(print_args=False) mdict = MockDict() shared = {'opt': opt, 'dict': mdict} agent = TorchAgent(opt, shared) observation = { "text": "What is a painting?", "labels": ["Paint on a canvas."], "episode_done": False } agent.maintain_dialog_history(observation) self.assertTrue('dialog' in agent.history, "Failed initializing self.history.") self.assertTrue('episode_done' in agent.history, "Failed initializing self.history.") self.assertTrue('labels' in agent.history, "Failed initializing self.history.") self.assertTrue( list(agent.history['dialog']) == [7, 8, 9], "Failed adding vectorized text to dialog.") self.assertTrue(not agent.history['episode_done'], "Failed to properly store episode_done field.") self.assertTrue(agent.history['labels'] == observation['labels'], "Failed saving labels.") observation['text_vec'] = agent.maintain_dialog_history(observation) print(agent.history['dialog']) self.assertTrue( list(agent.history['dialog']) == [8, 9, 7, 8, 9], "Failed adding vectorized text to dialog.")
def test_maintain_dialog_history(self): try: from parlai.core.torch_agent import TorchAgent except ImportError as e: if 'pytorch' in e.msg: print( 'Skipping TestTorchAgent.test_maintain_dialog_history, no pytorch.' ) return opt = {} opt['no_cuda'] = True opt['truncate'] = 5 opt['history_dialog'] = 10 opt['history_replies'] = 'label_else_model' mdict = MockDict() shared = {'opt': opt, 'dict': mdict} agent = TorchAgent(opt, shared) observation = { "text": "What is a painting?", "labels": ["Paint on a canvas."], "episode_done": False } agent.maintain_dialog_history(observation) self.assertTrue('dialog' in agent.history, "Failed initializing self.history.") self.assertTrue('episode_done' in agent.history, "Failed initializing self.history.") self.assertTrue('labels' in agent.history, "Failed initializing self.history.") self.assertTrue( list(agent.history['dialog']) == [7, 8, 9], "Failed adding vectorized text to dialog.") self.assertTrue(not agent.history['episode_done'], "Failed to properly store episode_done field.") self.assertTrue(agent.history['labels'] == observation['labels'], "Failed saving labels.") observation['text_vec'] = agent.maintain_dialog_history(observation) self.assertTrue( list(agent.history['dialog']) == [8, 9, 7, 8, 9], "Failed adding vectorized text to dialog.")
def test_maintain_dialog_history(self): opt = {} opt['no_cuda'] = True opt['history_tokens'] = 5 opt['history_dialog'] = 10 opt['history_replies'] = 'label_else_model' dict = MockDict() shared = {'opt': opt, 'dict': dict} agent = TorchAgent(opt, shared) observation = { "text": "What is a painting?", "labels": ["Paint on a canvas."], "episode_done": False } agent.maintain_dialog_history(observation) self.assertTrue('dialog' in agent.history, "Failed initializing self.history.") self.assertTrue('episode_done' in agent.history, "Failed initializing self.history.") self.assertTrue('labels' in agent.history, "Failed initializing self.history.") self.assertTrue( list(agent.history['dialog']) == [1, 3, 5], "Failed adding vectorized text to dialog.") self.assertTrue(not agent.history['episode_done'], "Failed to properly store episode_done field.") self.assertTrue(agent.history['labels'] == observation['labels'], "Failed saving labels.") observation['text_vec'] = agent.maintain_dialog_history(observation) self.assertTrue( list(agent.history['dialog']) == [3, 5, 1, 3, 5], "Failed adding vectorized text to dialog.")