Giter Site home page Giter Site logo

pkchat-focus / focus Goto Github PK

View Code? Open in Web Editor NEW
60.0 2.0 9.0 643 KB

Source codes and dataset of Call for Customized Conversation: Customized Conversation Grounding Persona and Knowledge

License: Other

Python 98.64% Shell 1.36%
nlp deep-learning dialog pytorch chatbots gpt2 bart focus conversational-ai conversational-agents

focus's Introduction

Call for Customized Conversation: Customized Conversation Grounding Persona and Knowledge

Source codes for the baseline models of Call for Customized Conversation: Customized Conversation Grounding Persona and Knowledge, accepted at AAAI-22.

Environment Setting

We trained the models under the setting of python==3.7 and torch==1.5.0, with one RTX8000 GPU. Also, our codes are built on the codes of huggingface, and we utilized pytorch-ignite from pytorch in ignite folder.

1.Make a virtual environment

$conda create -n ENV_NAME python=3.7

2.Install pytorch==1.5.0

$conda install pytorch==1.5.0 torchvision==0.6.0 cudatoolkit=10.2 -c pytorch

3.Install the required libraries.

$pip install -r requirements.txt

This data is the modified version of the original data (which is reported in the paper) after ethical inspection.

FoCus v2 STATISTICS Train Valid
# dialogues 12,484 1,000
# avg rounds 5.63 5.64
# knowledge-only answers 37,488 3,007
# persona-knowledge answers 32,855 2,630
# landmarks 5,152 923
avg len of Human's utterances 40.70 40.21
avg len of Machine's utterances 138.16 138.60

You should create directories named infer_log_focus, train_log_focus, test_log_focus, models, data under FoCus folder.

We put train, valid, test files of the dataset in the data folder. (The test set will be available after March 2022.)

The project directory should follow this directory structure:

📦FoCus
┣ 📂data
┃ ┗ 📜train.json
┃ ┗ 📜valid.json
┣ 📂ignite
┣ 📂infer_log_focus
┣ 📂models
┣ 📂python_tf_idf
┣ 📂test_log_focus
┣ 📂train_log_focus
┣ 📜classification_modules.py
┣ 📜data_utils.py
┣ 📜evaluate_test.py
┣ 📜evaluate_test_ppl.py
┣ 📜inference.sh
┣ 📜inference_test.py
┣ 📜LICENSE
┣ 📜README.md
┣ 📜requirements.txt
┣ 📜test.sh
┣ 📜train.sh
┣ 📜train_focus.py
┗ 📜utils_focus

Training the models

Uncomment the command lines in the train.sh file, to start training the model.

$ sh train.sh 

Evaluation

Uncomment the command lines in the test.sh file, to evaluate the model on the test set.

$ sh test.sh

Inference

Uncomment the command lines in the inference.sh file, to generate utterances with the trained models.

$ sh inference.sh

Official Test Set

You can evaluate your model on the official test set here.

Our Workshop @ COLING 2022

We held the 1st workshop on Customized Chat Grounding Persona and Knowledge at COLING 2022.

Citation

To use our data or source code, please cite our paper:

@inproceedings{jang2022call,
  title={Call for Customized Conversation: Customized Conversation Grounding Persona and Knowledge},
  author={Jang, Yoonna and Lim, Jungwoo and Hur, Yuna and Oh, Dongsuk and Son, Suhyune and Lee, Yeonsoo and Shin, Donghoon and Kim, Seungryong and Lim, Heuiseok},
  booktitle={Proceedings of the AAAI Conference on Artificial Intelligence},
  volume={36},
  number={10},
  pages={10803--10812},
  year={2022}
}

Written by Yoonna Jang.

(c) 2021 NCSOFT Corporation & Korea University. All rights reserved.

focus's People

Contributors

pkchat-focus avatar yoonnajang avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

focus's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.