Skip to content

MSc project: design, develop and evaluate a conversational story-teller dialogue system. The system is developed in python and makes use of a Telegram web interface. The connection between the system and the web interface is done by using a SSL connection provided by Ngrok. The system includes a BERT model with a span classification head on top …

Notifications You must be signed in to change notification settings

feiline/storyteller-dialogue-system

Repository files navigation

Storyteller Dialogue System

Conversational AI: MSc project to design, develop and evaluate a conversational story-teller dialogue system.


Libraries

The system is developed and tested using Python 3.7. Some of the libraries required are:

  • DM nltk
  • NLG
  • NLU rasa, tensorflow, re
  • bot telepot, flask, logging, argparser
  • fsm transitions
  • web interface

How To

Set up the Telegram interface

Set up your local machine as server

  • Registered to Ngrok from https://ngrok.com/
  • Go to https://dashboard.ngrok.com/get-started to download the ngrok client
  • Unzip the folder
  • From the unzipped folder, run the command ./ngrok authtoken xxxxxxxxxxxxxxas that appears for you on that link
  • Run ./ngrok http 5130
  • If you are using the Telegram web interface, replace the bot.setWebhook("https://******.ngrok.io/chat") in bot_telegram.py with the https url generated by ngrok (leave the suffix /chat at the end)
  • If you are using the Alana interface, please follow the Alana instruction on how to send requests to Alana.

Set up the application

  • Create a virtual environment with Python 3.7
  • Install the requirements in requirements.txt
  • Select which engagement strategy to use: currently the system uses the baseline strategy. To use the Feedback Prompt strategy please comment line 102 of bot_telegram.py and uncomment line 103 of bot_telegram.py

Run the application

  • Run bot_telegram.py to run the system using the Telegram web interface

The story used is the Squirrel story from the PersonaBank corpus PersonaBank corpus

About

MSc project: design, develop and evaluate a conversational story-teller dialogue system. The system is developed in python and makes use of a Telegram web interface. The connection between the system and the web interface is done by using a SSL connection provided by Ngrok. The system includes a BERT model with a span classification head on top …

Topics

Resources

Stars

Watchers

Forks

Languages