From 847499bb9d676ac4b413170e02635f88335291d2 Mon Sep 17 00:00:00 2001 From: s444417 Date: Wed, 23 Mar 2022 18:42:09 +0100 Subject: [PATCH] add oz chat --- data/dialog-16-01-01.tsv | 18 ++++ data/dialog-16-03-01.tsv | 5 + data/dialog-16-05-01.tsv | 10 ++ data/dialog-16-07-01.tsv | 13 +++ data/dialog-16-09-01.tsv | 12 +++ data/dialog-16-11-01.tsv | 10 ++ data/dialog-16-13-01(brak).tsv | 0 data/dialog-16-15-01.tsv | 12 +++ data/dialog-16-17-01.tsv | 17 ++++ data/dialog-16-19-01.tsv | 13 +++ lab/03-04-czarnoksieznik-z-oz.ipynb | 143 ++++++++++++++++++++++++++++ 11 files changed, 253 insertions(+) create mode 100644 data/dialog-16-01-01.tsv create mode 100644 data/dialog-16-03-01.tsv create mode 100644 data/dialog-16-05-01.tsv create mode 100644 data/dialog-16-07-01.tsv create mode 100644 data/dialog-16-09-01.tsv create mode 100644 data/dialog-16-11-01.tsv create mode 100644 data/dialog-16-13-01(brak).tsv create mode 100644 data/dialog-16-15-01.tsv create mode 100644 data/dialog-16-17-01.tsv create mode 100644 data/dialog-16-19-01.tsv create mode 100644 lab/03-04-czarnoksieznik-z-oz.ipynb diff --git a/data/dialog-16-01-01.tsv b/data/dialog-16-01-01.tsv new file mode 100644 index 0000000..2824ebf --- /dev/null +++ b/data/dialog-16-01-01.tsv @@ -0,0 +1,18 @@ +user system +Halo? Witamy w systemie kinowym Nachos. +Chaciałbym pójść na premierę filmu, jakie premiery są w tym tygodniu? W tym tygodniu gramy: Batman, Podróż na Księżyc, Krzyk, Na noże +Wybieram Batmana Jaki termin cię interesuje? +Najbliższy czwartek Batman w czwartek grany jest o 12:30, 15:00, 17:30 oraz o 20:45 +Wybieram: 17:30 Jakie bilety? +Są zniżki studenckie? Tak 21% przy okazaniu legitymacji studenckiej. +Super, w takim razie poproszę studnecki Ile biletów studenckich potrzebujesz? +1x studencki Chcesz usiąść po lewej, na środku czy po prawej stronie? +Na środku Utworzono rezerwację na film Batman dnia 24.01 o godzinie 17:30 z jednym biletem ulgowym. Twój numer rezerwacji to 21372137 +Czy mogę zarezerwować kolejny bilet? Na ten sam film? +Tak Jaki bilet cię interesuje? +Normalny Dobrze, dodano 1 bilet normalny +Super, poproszę by miejsca były obok siebie masz przydzielone miejsca 12h i 13h +Super, czy można płacić z góry Płatność możliwa jest tylko przy kasach +Ok, czy bilety mam już zarezerwowane? Tak numer twojej rezerwacji to 21372137 na film Batman dnia 24.01 o godzinie 17:30 +Super, dziękuję Cześć + diff --git a/data/dialog-16-03-01.tsv b/data/dialog-16-03-01.tsv new file mode 100644 index 0000000..d002617 --- /dev/null +++ b/data/dialog-16-03-01.tsv @@ -0,0 +1,5 @@ +user system +Dzień dobry Witamy w systemie kinowym Nachos +Chcę zarezerwować bilety Jaki termin cię interesuje? +dzisiaj Dzisiaj gramy Batman 3D i Batman 4D z oblewaniem twarzy + diff --git a/data/dialog-16-05-01.tsv b/data/dialog-16-05-01.tsv new file mode 100644 index 0000000..08fb338 --- /dev/null +++ b/data/dialog-16-05-01.tsv @@ -0,0 +1,10 @@ +user system +Cześć witamy w systemie kinowym Nachos +Chciałbym anulować rezerwację biletu Podaj numer rezerwacji +Numer 42069 Takiej rezerwacji nie ma w systemie +Numer 42068 Takiej rezerwacji nie ma w systemie +Numer 42168 Takiej rezerwacji nie ma w systemie +Numer 42169 Takiej rezerwacji nie ma w systemie +Chciałbym anulować rezerwację biletu dla imienia i nazwiska Jan Kowalski Podaj numer rezerwacji +Nie pamiętam. Czy mogę podać e-mail? Musisz podać numer rezerwacji + diff --git a/data/dialog-16-07-01.tsv b/data/dialog-16-07-01.tsv new file mode 100644 index 0000000..1f7a70e --- /dev/null +++ b/data/dialog-16-07-01.tsv @@ -0,0 +1,13 @@ +user system +Dzień dobry Witamy w systemie kinowym Nachos. +Jakie filmy są w tym tygodniu w repertuarze? W tym tygodniu gramy: Batman, Podróż na Księżyc, Krzyk, Na noże. +O której godzinie w piątej mogę zobaczyć Na noże? Na noże w piątek grane jest o 12:30, 15:00, 19:30 i 21:40 +Ok, w takim razie chciałbym zarezerwować 2 miejsca na seans o 19:30 Jaki typ biletów? +Dwa normalne Nie ma już miejsc na środku sali, czy mogą być miejsca po prawej stronie u góry? +Mogą być Rezerwacja 2 miejsc na film Na noże, w terminie 25.03 godzina 19:30, numer twojej rezerwacji to 453905 +Dziękuje bardzo Do usłyszenia + + + + + diff --git a/data/dialog-16-09-01.tsv b/data/dialog-16-09-01.tsv new file mode 100644 index 0000000..b2a37ce --- /dev/null +++ b/data/dialog-16-09-01.tsv @@ -0,0 +1,12 @@ +user system +elo Witam w systemie kinowym Nachos. +Chciałbym kupić bilety na seans Zorro - jak to było na prawdę Zorro - jak to było na prawdę oraz jego sequel nie są obecnie grane +Poproszę listę filmów granych jutro wieczorem Zorro 3, Zorro powrócił i Transformers +Chciałbym kupić bilety na Transformers Czy pasuje ci godzina 20:20 +Tak, chcę dwa bilety za 2 dni Jakie chcesz bilety? +Normalne gdzie chcesz usiąść? +Przy oknie, w przedziale Nie zrozumiałem +Wagon z przedziałami, miejsce przy oknie Czy chcesz usiąść na środku sali kinowej? +Tak, ale bardziej z góry Dobrze, dokonano rezerwacji na film Transformers godzian 20:00, 2 bilety normalne, numer twojej rezerwacji to 12340987Thx +Exit Do, usłyszenia + diff --git a/data/dialog-16-11-01.tsv b/data/dialog-16-11-01.tsv new file mode 100644 index 0000000..cb9258e --- /dev/null +++ b/data/dialog-16-11-01.tsv @@ -0,0 +1,10 @@ +user system +Kim jesteś? Witamy w systemie kinowym Nachos. +Co gracie? Teraz gramy Batman i Zorro +Jaki Zorro? Zorro Reinkarnacja 3D +W jakich godzinach gracie Zorro? Dzisiaj o 13:00, 14:54 i 21:36 +Chciałbym zarezerwować bilety na Batmana Jaki termin cię interesuje? +21.03.2022 Wybierz datę przyszłą. +23.03.2022 Batman 23.03 grany jest o godzinie 12:59 i 20:45 +Super Którą godzinę chcesz wybrać? + diff --git a/data/dialog-16-13-01(brak).tsv b/data/dialog-16-13-01(brak).tsv new file mode 100644 index 0000000..e69de29 diff --git a/data/dialog-16-15-01.tsv b/data/dialog-16-15-01.tsv new file mode 100644 index 0000000..e5f160f --- /dev/null +++ b/data/dialog-16-15-01.tsv @@ -0,0 +1,12 @@ +user system +Dzień dobry Witamy w systemie kinowym Nachos. +chciałbym się dowiedzieć jaki jest cennik Bilet normalny kosztuje 21,37zł, bilet ulgowy posiada zniżkę 21%, bilet dla weteranów posiada 51% zniżki +A jest zniżka studencka? Zniżka studencka to 21% +a co leci dzisiaj w kinie? Batman, Dawno temu w las vegas oraz Na noże. +o której jest na noże? 12:00 i 23:59 +poproszę dwa bilety na 12 Jaki typ biletów? +a jakie są? Normalny 21,00zł ulgowy 21% zniżki i dla weteranów 51% zniżki. +2 ulgowe poprosze Gdzie chcesz usiąść? +jakie są wolne miejsca? Chcesz usiąść na środku sali na górze? +tak Dobrze, dokonano rezerwacji na film Batman 2 bilety ulgowe, godzina 21:37, numer twojej rezerwacji to 12340987 + diff --git a/data/dialog-16-17-01.tsv b/data/dialog-16-17-01.tsv new file mode 100644 index 0000000..e445244 --- /dev/null +++ b/data/dialog-16-17-01.tsv @@ -0,0 +1,17 @@ +user system +Chciałbym 3 bilety na batmana na jtro Witamy w systemie kinowym Nachos. Jaka godzina Cię interesuje? + +coś koło południa Batman grany jest o 12:30, 15:30 oraz 17:15 + +nic później? 19:25 oraz 21:37 + +To ten o 19 Czy wszystkie bilety mają być normalne? + +2 ulgowe Gdzie chcesz usiaść? + +z przodu Zarezerwowano 3 bilety ulgowe na film Batman w terminie 24.03 o godzinie 19:25, twój numer rezerwacji to 12341532 + +ale jakie miejsca?? Masz miejsca 12H, 13H, i 14H + + + diff --git a/data/dialog-16-19-01.tsv b/data/dialog-16-19-01.tsv new file mode 100644 index 0000000..e7851a4 --- /dev/null +++ b/data/dialog-16-19-01.tsv @@ -0,0 +1,13 @@ +user system +Dzień dobry Witamy w systemie kinowym Nachos. +Chciałabym zarezerwować bilet do kina Jaki dzień cię interesuje? +Dziś Dzisiaj gramy Zorro 2, Batman i Terminator +Proszę na batmana Dzisiaj Batman grany jest o 12:30 i 20:19 +Proszę o godzine 20:19 Jakie chcesz bilety? +ulogwy Ile biletów ulgowych? +1 Gdzie chcesz usiąść? +z tyłu, na środku (aby ekran był centralnie widoczny) Dobrze, zarezerwowano bilet dziś na 20:19 na Batman, numer twojej rezerwacji to 12312333 +dobrze, dziekuję Do widzenia! + + + diff --git a/lab/03-04-czarnoksieznik-z-oz.ipynb b/lab/03-04-czarnoksieznik-z-oz.ipynb new file mode 100644 index 0000000..9b46f3d --- /dev/null +++ b/lab/03-04-czarnoksieznik-z-oz.ipynb @@ -0,0 +1,143 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "collapsed": false + }, + "source": [ + "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", + "
\n", + "

Systemy Dialogowe

\n", + "

3-4. Eksperymenty typu \u201eCzarnoksi\u0119\u017cnik z Oz\u201d [laboratoria]

\n", + "

Marek Kubis (2021)

\n", + "
\n", + "\n", + "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Eksperymenty typu \u201eCzarnoksi\u0119\u017cnik z Oz\u201d\n", + "=======================================\n", + "\n", + "W eksperymencie typu \u201eCzarnoksi\u0119\u017cnik z Oz\u201d rol\u0119 agenta dialogowego odgrywa operator,\n", + "kt\u00f3ry symuluje dzia\u0142anie systemu udzielaj\u0105c zamiast niego odpowiedzi w reakcji na komunikaty przekazywane przez u\u017cytkownika.\n", + "\n", + "Komunikacja odbywa si\u0119 za po\u015brednictwem interfejsu u\u017cytkownika zbli\u017conego do docelowego interfejsu\n", + "agenta dialogowego.\n", + "\n", + "U\u017cytkownik wchodz\u0105c w interakcje z czarnoksi\u0119\u017cnikiem nie zdaje sobie sprawy z tego, \u017ce rozmawia z\n", + "cz\u0142owiekiem a nie z maszyn\u0105.\n", + "\n", + "Instrukcje dla u\u017cytkownik\u00f3w\n", + "---------------------------\n", + "Na potrzeby eksperyment\u00f3w typu \u201eCzarnoksi\u0119\u017cnik z Oz\u201d\n", + "warto przygotowa\u0107 zestaw instrukcji opisuj\u0105cych zadania, jakie u\u017cytkownik mo\u017ce wykona\u0107 za\n", + "po\u015brednictwem rozwijanego systemu.\n", + "\n", + "Instrukcje takie wr\u0119cza si\u0119 u\u017cytkownikom przed przyst\u0105pieniem do eksperymentu.\n", + "\n", + "### Przyk\u0142ad\n", + "Przyjrzyjmy si\u0119 instrukcjom, kt\u00f3re zosta\u0142y przygotowane na potrzeby *Dialog State Tracking Challenge 2* (Henderson i in., 2014).\n", + "\n", + "Dane wykorzystane w tym konkursie pobierzemy z GitHuba https://github.com/matthen/dstc." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "!mkdir -p l03\n", + "%cd l03\n", + "!wget https://github.com/matthen/dstc/releases/download/v1/dstc2_test.tar.gz\n", + "!tar xzvf dstc2_test.tar.gz\n", + "%cd .." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Wy\u015bwietlmy kilka przyk\u0142adowych instrukcji." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import json\n", + "\n", + "samples = ['voip-00d76b791d-20130327_005342',\n", + " 'voip-00d76b791d-20130327_012544',\n", + " 'voip-0f41c16f2f-20130402_004710']\n", + "\n", + "for sample in samples:\n", + " with open(f'l03/data/Mar13_S2A0/{sample}/label.json') as f:\n", + " print(json.load(f)['task-information']['goal']['text'])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Zach\u0119cam r\u00f3wnie\u017c do zapoznania si\u0119 z opisem samego konkursu https://github.com/matthen/dstc/blob/master/handbook.pdf.\n", + "\n", + "Zadanie\n", + "-------\n", + "Korzystaj\u0105c z MS Teams (lub innego komunikatora) przeprowadzi\u0107 rozmowy, w kt\u00f3rych jedna z os\u00f3b pe\u0142ni\n", + "rol\u0119 systemu (operatora eksperymentu) a druga u\u017cytkownika.\n", + "\n", + " - W dniu 29.03 role u\u017cytkownik\u00f3w przyjmuj\u0105 osoby o nieparzystych numerach (kolumna `Lp` tabeli `Punktacja`).\n", + "\n", + " - W dniu 30.03 role u\u017cytkownik\u00f3w przyjmuj\u0105 osoby o parzystych numerach (kolumna `Lp` tabeli `Punktacja`).\n", + "\n", + "Ka\u017cdy u\u017cytkownik powinien przeprowadzi\u0107 przynajmniej jedn\u0105 rozmow\u0119 z ka\u017cdym operatorem.\n", + "\n", + "Operator eksperymentu zachowuje zapis rozmowy w katalogu `data` ga\u0142\u0119zi master\n", + "repozytorium projektowego w pliku o nazwie `dialog-XX-YY-NN.tsv`, gdzie:\n", + "\n", + " - `XX` numer operatora\n", + "\n", + " - `YY` numer u\u017cytkownika\n", + "\n", + " - `NN` numer rozmowy (`01` dla pierwszej rozmowy miedzy `XX` i `YY`)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Zapisy rozm\u00f3w prosz\u0119 zachowa\u0107 w postaci plik\u00f3w o rozszerzeniu `tsv`.\n", + "Pierwsza kolumna pliku powinna zawiera\u0107 oznaczenie roli interlokutora (ci\u0105g znak\u00f3w `system` lub `user`) druga jego wypowied\u017a.\n", + "\n", + "Czy przeprowadzone testy mo\u017cna uzna\u0107 za realizacj\u0119 techniki \"Czarnoksi\u0119\u017cnik z Oz\"?\n", + "\n", + "Literatura\n", + "----------\n", + " 1. Matthew Henderson, Blaise Thomson, Jason D. Williams, The Second Dialog State Tracking Challenge, SIGDIAL 2014, 263-272." + ] + } + ], + "metadata": { + "jupytext": { + "cell_metadata_filter": "-all", + "main_language": "python", + "notebook_metadata_filter": "-all" + }, + "author": "Marek Kubis", + "email": "mkubis@amu.edu.pl", + "lang": "pl", + "subtitle": "3-4.Eksperymenty typu \u201eCzarnoksi\u0119\u017cnik z Oz\u201d[laboratoria]", + "title": "Systemy Dialogowe", + "year": "2021" + }, + "nbformat": 4, + "nbformat_minor": 4 +} \ No newline at end of file