TedYeh / messageWOZ

Wizard-of-Oz dataset for message passing

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

多領域任務導向用戶語音助理對話收集系統

Outline

messageWOZ_Corpus.zip為本研究建構之語料

Environment setup

Requirements

  • python = 3.8

Development Startup

Before clone this repo, you need to install Redis on PC(Linux-Ubuntu)

# download redis package
curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg

echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list

sudo apt-get update

# the redis will running when it is installed successfully
sudo apt-get install redis

# start redis server
/etc/init.d/redis-server start

Run the following command and visit http://0.0.0.0:5000 (boardcast).

# clone the repo in branch GCPlogin
git clone -b multichat-https --single-branch https://github.com/TedYeh/messageWOZ.git

# change the directory 
cd messageWOZ

# install dependencies
python3 -m pip install -r requirements.txt

# initialize the database
python3 resetdb.py

# start the server
gunicorn --bind 0.0.0.0:5000 --certfile=server.crt --keyfile=server.key --worker-class eventlet -w 1 data_labelling:app

Or you can change the code

socket_io.run(app, host='0.0.0.0', port=5000)

to

socket_io.run(app, host='127.0.0.1', port=5000)

in data_labeling/__init__.py to run the system in your localhost.

操作指南

Login

運行系統後,會進入到登入畫面 可進行普通用戶登入或Google用戶登入

login

選擇 Google 登入 來讀取Gmail、Calendar等資訊

若要更改為其他GCP網域,請修改 data_labeling/routes 目錄中的 gcalendar.pygmail.pyservices.py

Register

若要使用普通用戶登入,點選沒有帳號?點此註冊來註冊帳號。

邀請碼為 959592,可以修改 data_labelling/app.pyinvitation_code

register

Match

使用普通用戶才可進入對話匹配介面,進入介面後有至少有一人選擇系統(助理)端,一人選擇用戶(使用者)端,此时系統便會自動完成配對並進入對話介面。

提示:若在本地端 (http://localhost:5000) 測試此系統,可以使用 Chrome 的無痕視窗同時登入兩個帳號。

match

各對話頁面及設計請參考MessageWOZ資料標註系統操作說明.pdfdata_labeling/templates 目錄下的.html

Admin(管理員)

帳號名稱:root,密碼:root

登入後即進入管理員介面(控制台)

admin

管理員可以在控制台導入預先定義的任務,並導出已完成的對話。

  • 導入任務步驟

    1. 選擇 Result Files 分頁,並進入 inputs 目錄,上傳任務定義文件 tasks.json
    result_file
    1. 再回到管理首頁,點擊點此導入連結導入任務。若導入成功,系統會告知導入成功的任務數量。
    import
    1. 可到 Task 分頁查看詳細的任務敘述。
    task
  • 導出對話

    1. 在首頁點選點此導出即可導出已完成任務對話。

Task Generation

messageWOZ 目錄下執行以下指令:

# move to goal_generation directory
cd goal_generation

# run sentence_generator.py to get {num} of taks
python3 sentence_generator.py --num 100

執行指令後便會在 goal_generation 目錄下產生 goal_task.json

最後進入管理介面即可將 goal_task.json 導入系統進行對話。

About

Wizard-of-Oz dataset for message passing


Languages

Language:JavaScript 42.9%Language:Python 22.5%Language:CSS 20.1%Language:HTML 14.4%Language:Shell 0.1%Language:Batchfile 0.0%