Skip to content

Code and demo for "Towards an open-domain chatbot for language practice"

Notifications You must be signed in to change notification settings

shivster2000/ControllableComplexityChatbot

 
 

Repository files navigation

About

This repository contains the code, models, and data accompanying our paper on adjusting text difficulty of messages generated by open-domain chatbots.

Tyen, G., Brenchley, M., Caines, A., & Buttery, P. (2022). Towards an open-domain chatbot for language practice. 17th Workshop on Innovative Use of NLP for Building Educational Applications.

Dependencies

  • ParlAI 1.6.0
  • PyTorch 1.10.2
  • Huggingface Transformers 4.16.2
  • NumPy 1.22.2
  • SciPy 1.8.0
  • Regex 2022.1.18

To run the demo:

  1. Download and cd to project directory git clone https://github.com/WHGTyen/ControllableComplexityChatbot cd ControllableComplexityChatbot
  2. Install pip dependencies pip install numpy scipy regex torch transformers
  3. Clone ParlAI repository git clone https://github.com/facebookresearch/ParlAI.git --branch 1.6.0
  4. Setup ParlAI cd ParlAI; python setup.py develop; cd ..
  5. To run the demo: python demo.py
  6. To adjust generation parameters, edit values in demo.py

Data

  • sample_wordlist.txt is the 5000 most frequent words from this list
  • filter.txt was taken from this list
  • complexity_model was trained on data from the Cambridge Exams readability dataset, found here

Acknowledgements

This paper reports on research supported by Cambridge University Press & Assessment. This work was performed using resources provided by the Cambridge Service for Data Driven Discovery (CSD3) operated by the University of Cambridge Research Computing Service, provided by Dell EMC and Intel using Tier-2 funding from the Engineering and Physical Sciences Research Council (capital grant EP/P020259/1), and DiRAC funding from the Science and Technology Facilities Council.

About

Code and demo for "Towards an open-domain chatbot for language practice"

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%