Open no-execution opened 2 years ago
Hi, thanks for your interest in my code.
In the inference phase, the dbpn is generated based on generated belief state. Please refer to 775-808 lines in runner.py. The configuration for usage of true dbpn (cfg.use_true_dbpn) is set to False by default.
Actually, as you say, the turn_domain should be traced from generated belief state in the inference phase. But, the procedure is omitted because my code is for evaluation only. (If generated belief state is wrong, the dbpn would be wrong even if the true turn_domain is used.) For actual service, you can trace the turn_domain by comparing the previous and current belief state.
Thanks for your response.
I have two questions:
2.Maybe we can resort [bs]->[dbpn]->[dialog act]->[resp_delex] to [bs]->[dialog act]->[dbpn]->[resp_delex], to solve the turn domain problem in actual service?
By the way, I am a engineer. So I concentrate morn on the relialility of end-to-end dialog system. Do you think we could use it in some fancy applications?
Hello , thanks for your work.
Recently I use the mttod model on CrossWOZ dataset and have a question about the predict code.
In predict code you have provided , you firstly get belief state generated by dialog history and then you use the dbpn from dataset as input to predict dialog act and response.
Actually when we use the dialog system, we get dbpn by searching from database by belief state generated and turn domain predicted by model instead of using the dbpn and turn domain from dataset directly.And in the code you have provided, belief state is generated before dialog act and dialog act is generated after dbpn. So I can not get dbpn before generating the dialog act.
So , If we want to build a dialog system as service , how to manage the gap between your predict procedure and real world predict procedure?