This is the implementation of the paper: The Adapter-Bot: All-In-One Controllable Conversational Model. Zhaojiang Lin, Andrea Madotto, Yejin Bang, Pascale Fung AAAI-DEMO [PDF]
If you find this paper and code useful, please cite our paper:
@article{madotto2020adapter,
title={The Adapter-Bot: All-In-One Controllable Conversational Model},
author={Madotto, Andrea and Lin, Zhaojiang and Bang, Yejin and Fung, Pascale},
journal={arXiv preprint arXiv:2008.12579},
year={2020}
}
In this repository, we release the trained model, the knowledge retriever, and the interactive script (both via termial and the UI) of the adapter-bot.
To download the pretrained model run the following commands:
## pip install gdown
import gdown
import zipfile
import os
url = 'https://drive.google.com/uc?id=1JQZex-AD-sa5WUT5U4lIn1K2sPW-us8a/'
output = 'models.zip'
gdown.download(url, output, quiet=False)
with zipfile.ZipFile(output, 'r') as zip_ref:
zip_ref.extractall()
os.remove(output)
To download and install the knowledge retrievers you can have to follow the step in the retriever
folder. Specifically, for the knowledge graph follow the read me at:
https://github.com/HLTCHKUST/adapterbot/tree/main/retriever/graphdb#installing-neo4j
which provides instructions to install neo4j and load opendialoKG. For the wikipedia knowledge, we use DrQA. Also in this case follow the read me at:
https://github.com/HLTCHKUST/adapterbot/tree/main/retriever/doc_ret
which provides a simple script for download the wikidump and train the tf-idf retriever.
To interact with the model via command line use the following script:
>>> python interact_adapter.py --interact