Implementation of conversational QA model: FlowQA (with slight improvement)
Switch branches/tags
Nothing to show
Clone or download
Ubuntu
Latest commit fe3fc80 Nov 23, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
QA_model Fix some problem Nov 22, 2018
CoQA_eval.py Added FlowQA Nov 22, 2018
README.md Update README.md Nov 22, 2018
download.sh Added FlowQA Nov 22, 2018
general_utils.py Added FlowQA Nov 22, 2018
predict_CoQA.py Added FlowQA Nov 22, 2018
predict_QuAC.py Added FlowQA Nov 22, 2018
preprocess_CoQA.py Added FlowQA Nov 22, 2018
preprocess_QuAC.py Added FlowQA Nov 22, 2018
requirements.txt Added FlowQA Nov 22, 2018
train_CoQA.py Added FlowQA Nov 22, 2018
train_QuAC.py Fix some problem Nov 22, 2018

README.md

FlowQA

This is our first attempt to make state-of-the-art single-turn QA models conversational. Feel free to build on top of our code to build an even stronger conversational QA model.

For more details, please see: FlowQA: Grasping Flow in History for Conversational Machine Comprehension

Step 1:

perform the following:

pip install -r requirements.txt

to install all dependent python packages.

Step 2:

download necessary files using:

./download.sh

Step 3:

preprocess the data files using:

python preprocess_QuAC.py
python preprocess_CoQA.py

Step 4:

run the training code using:

python train_QuAC.py
python train_CoQA.py

For naming the output model, you can do

python train_OOOO.py --name XXX

Remove any answer marking by:

python train_OOOO.py --explicit_dialog_ctx 0

OOOO is the name of the dataset (QuAC or CoQA).

Step 5:

Do prediction with answer thresholding using

python predict_OOOO.py -m models_XXX/best_model.pt --show SS

XXX is the name you used during train.py.
SS is the number of dialog examples to be shown.
OOOO is the name of the dataset (QuAC or CoQA).