This repository contains the PyTorch implementation of the paper:
Towards Complex Scenarios: Building End-to-end Task-oriented Dialogue System across Multiple Knowledge Bases. Libo Qin*, Zhouyang Li*, Qiying Yu, Lehan Wang, Wanxiang Che. AAAI 2023.
Our code relies on Python 3.8 and following libraries:
- torch==1.7.1
- cudatoolkit==10.1
- dgl==0.6.0
Download datasets and unzip it. Then put in the data
folder.
The script train.py acts as a main function to the project, you can run the experiments by the following commands.
Train
> python -u train.py -g -rec 1 -ds cross -ep 50 -bsz 32
> python -u train.py -g -rec 1 -ds risa -ep 50 -bsz 32
Test
> python test.py -g -rec 1 -ds cross -path=<saved_model_path>
> python test.py -g -rec 1 -ds risa -path=<saved_model_path>
Due to some stochastic factors(e.g., GPU and environment), it maybe need to slightly tune the hyper-parameters using grid search to reproduce the results reported in our paper. Here are the suggested hyper-parameter settings:
- batch_size [16, 32]
- dropout_rate [0.1, 0.2]
- num_graph_layer [2, 3]
And we provide the best model saved.
Download datasets and unzip it. Then put in the save
folder.
If you use any source codes included in this repo in your work, please cite the following paper. The bibtex is listed below:
@inproceedings{qin2023towards,
title={Towards Complex Scenarios: Building End-to-End Task-Oriented Dialogue System across Multiple Knowledge Bases},
author={Qin, Libo and Li, Zhouyang and Yu, Qiying and Wang, Lehan and Che, Wanxiang},
booktitle={Proceedings of the AAAI Conference on Artificial Intelligence},
volume={37},
number={11},
pages={13483--13491},
year={2023}
}
Feel free to contact Libo Qin or me for any questions or create issues/PRs.
We thank for the GNN Library DGL, the open source code of GLMP and DF-Net.