small dataset creation fixes

This commit is contained in:
Kacper 2022-05-28 14:25:51 +02:00
parent 9abc4a1af3
commit aa86c568f6
5 changed files with 1375 additions and 1372 deletions

View File

@ -4,10 +4,6 @@ import pandas as pd
from nltk.tokenize import word_tokenize
import re
import random
import nltk
#nltk.download('punkt')
class LineContent:
@ -62,13 +58,12 @@ def process_file(file):
if email:
email_address = email.group()
text = text.replace(email_address, '@')
text = text.replace("'", "")
tokens = word_tokenize(text)
tokens = [token.replace('@', email_address) for token in tokens]
else:
text = text.replace("'", "")
tokens = word_tokenize(text)
return tokens
text_tokens = tokenize(text)
for slot in slots:
slot[-1] = tokenize(slot[-1])
@ -96,7 +91,7 @@ def process_file(file):
lines_contents = []
for _, row in df.iterrows():
if row[0] == 'user' and row[1]:
#if row[1]:
# if row[1]:
text = row[1]
intents = get_intents(row[2])
slots = get_slots(row[2])
@ -107,9 +102,13 @@ def process_file(file):
def write_to_files(lines_contents):
format_slots = lambda slots: ','.join([':'.join((lambda x: [x[0], ''.join(x[-1])])(slot)[::-1]) if len(slot) > 0 else '' for slot in slots])
format_tokens = lambda tokens: '\n'.join([f'{token[0]}\t{token[1]}\t{token[2]}\t{token[3]}' for token in tokens])
format_content = lambda content: f"# text: {content.text}\n# intent: {content.intent}\n# slots: {format_slots(content.slots)}\n{format_tokens(content.tokens)}\n\n"
format_slots = lambda slots: ','.join(
[':'.join((lambda x: [x[0], ''.join(x[-1])])(slot)[::-1]) if len(slot) > 0 else '' for slot in slots])
format_tokens = lambda tokens: '\n'.join([f"{token[0]}\t{token[1]}\t{token[2].replace(' ', '_')}\t{token[3]}" for
token in tokens])
# f"{(token[3] + ' ' + token[2]).replace(' ', '_')}" for token in tokens])
format_content = lambda \
content: f"# text: {content.text}\n# intent: {content.intent}\n# slots: {format_slots(content.slots)}\n{format_tokens(content.tokens)}\n\n"
random.shuffle(lines_contents)
l = (len(lines_contents) / 10) * 8
contents_train = lines_contents[:int(l)]
@ -117,9 +116,13 @@ def write_to_files(lines_contents):
with open('train-pl.conllu', 'a', encoding='utf-8') as train_f, open('test-pl.conllu', 'a+', encoding='utf-8') as \
test_f:
for content in contents_train:
train_f.write(format_content(content))
formatted = format_content(content)
formatted = re.sub('NoLabel.+', 'NoLabel', formatted)
train_f.write(formatted)
for content in contents_test:
test_f.write(format_content(content))
formatted = format_content(content)
formatted = re.sub('NoLabel.+', 'NoLabel\n\n', formatted)
test_f.write(formatted)
def main():

View File

@ -1,36 +1,38 @@
# text: dziękuję, do widzenia
# intent: bye
# slots:
1 dziękuję bye NoLabel
2 , bye NoLabel
3 do bye NoLabel
4 widzenia bye NoLabel
# text: Dzień dobry
# intent: hello
# slots:
1 Dzień hello NoLabel
2 dobry hello NoLabel
# text: teraz
# text: poproszę miejsca od 10 do 12 w ostatnim rzędzie
# intent: inform
# slots:
1 teraz inform NoLabel
# slots: 10do12wostatnimrzędzie:seat
1 poproszę inform NoLabel
2 miejsca inform NoLabel
3 od inform NoLabel
4 10 inform B-seat
5 do inform I-seat
6 12 inform I-seat
7 w inform I-seat
8 ostatnim inform I-seat
9 rzędzie inform I-seat
# text: chciałbym zarezerwować bilet na batmana
# intent: help
# text: A jakie są dostępne
# intent: request
# slots:
1 chciałbym help NoLabel
2 zarezerwować help NoLabel
3 bilet help NoLabel
4 na help NoLabel
5 batmana help NoLabel
1 A request NoLabel
2 jakie request NoLabel
3 są request NoLabel
4 dostępne request NoLabel
# text: Jan Kowalski
# text: Tak
# intent: act
# slots:
1 Tak act NoLabel
# text: 1
# intent: inform
# slots: 1:rowplacement
1 1 inform B-rowplacement
# text: 1
# intent: affirm inform
# slots: JanKowalski:name
1 Jan affirm inform B-name
2 Kowalski affirm inform I-name
# slots: 1:ticketnumber
1 1 affirm inform B-ticketnumber
# text: przez internet
# intent: inform
@ -43,35 +45,42 @@
# slots: 12093098490832030210334434:bankAccountNumber
1 12093098490832030210334434 inform B-bankAccountNumber
# text: Chciałbym miejsca najbliżej ekranu
# text: W jakim kinie?
# intent: request
# slots:
1 Chciałbym request NoLabel
2 miejsca request NoLabel
3 najbliżej request NoLabel
4 ekranu request NoLabel
1 W request NoLabel
2 jakim request NoLabel
3 kinie request NoLabel
4 ? request NoLabel
# text: emkarcinos42069@buziaczek.pl 123123123
# intent: inform
# slots: emkarcinos42069@buziaczek.pl:email,123123123:phone
1 emkarcinos42069@buziaczek.pl inform B-email
2 123123123 inform B-phone
# text: Gdzie jest to kino?
# intent: request
# slots:
1 Gdzie request NoLabel
2 jest request NoLabel
3 to request NoLabel
4 kino request NoLabel
5 ? request NoLabel
# text: Rozumiem. Chcę w takim razie zarezerwować dwa bilety na Sing 2
# intent: ack request
# slots: 2:quantity,Sing2:title
1 Rozumiem ack request NoLabel
2 . ack request NoLabel
3 Chcę ack request NoLabel
4 w ack request NoLabel
5 takim ack request NoLabel
6 razie ack request NoLabel
7 zarezerwować ack request NoLabel
8 dwa ack request NoLabel
9 bilety ack request NoLabel
10 na ack request NoLabel
11 Sing ack request B-title
12 2 ack request I-title
# text: W jaki inny dzień bilety kosztują mniej?
# intent: reqmore
# slots:
1 W reqmore NoLabel
2 jaki reqmore NoLabel
3 inny reqmore NoLabel
4 dzień reqmore NoLabel
5 bilety reqmore NoLabel
6 kosztują reqmore NoLabel
7 mniej reqmore NoLabel
8 ? reqmore NoLabel
# text: Adrian Charkiewicz, gfasfaf@gmail.com
# intent: inform inform
# slots: AdrianCharkiewicz:name
1 Adrian inform inform B-name
2 Charkiewicz inform inform I-name
3 , inform inform NoLabel
4 gfasfaf@gmail.com inform inform NoLabel
# text: z przodu
# intent: inform
@ -79,76 +88,70 @@
1 z inform NoLabel
2 przodu inform NoLabel
# text: Adrian Charkiewicz, gfasfaf@gmail.com
# text: Bilety ulgowe
# intent: inform
# slots: AdrianCharkiewicz:name,gfasfa@gmail.com:e-mail
1 Adrian inform B-name
2 Charkiewicz inform I-name
3 , inform NoLabel
4 gfasfaf@gmail.com inform NoLabel
# slots: ulgowe:ticketType
1 Bilety inform NoLabel
2 ulgowe inform B-ticketType
# text: Co w przypadku gdy się spóźnie?
# intent: reqmore
# text: 20
# intent: infrom
# slots: 20:quantity
1 20 infrom B-quantity
# text: Dziękuje za obsługe
# intent: thankyou bye
# slots:
1 Co reqmore NoLabel
2 w reqmore NoLabel
3 przypadku reqmore NoLabel
4 gdy reqmore NoLabel
5 się reqmore NoLabel
6 spóźnie reqmore NoLabel
7 ? reqmore NoLabel
1 Dziękuje thankyou bye NoLabel
2 za thankyou bye NoLabel
3 obsługe thankyou bye NoLabel
# text: Wybieram godzinę 20:45
# intent: offer
# slots: 16:30,19:15orazo20:45:time
1 Wybieram offer NoLabel
2 godzinę offer NoLabel
3 20:45 offer NoLabel
# text: Może być
# intent: ack
# slots:
1 Może ack NoLabel
2 być ack NoLabel
# text: Dzień dobry!
# intent: hello
# slots:
1 Dzień hello NoLabel
2 dobry hello NoLabel
3 ! hello NoLabel
# text: test@test.pl
# intent: inform
# slots:
1 test@test.pl inform NoLabel
# text: chciałbym się dowiedzieć co będzie 25 marca
# text: Bilet na seans
# intent: request
# slots:
1 chciałbym request NoLabel
2 się request NoLabel
3 dowiedzieć request NoLabel
4 co request NoLabel
5 będzie request NoLabel
6 25 request NoLabel
7 marca request NoLabel
1 Bilet request NoLabel
2 na request NoLabel
3 seans request NoLabel
# text: na tyłach
# text: Poproszę bilet na ostatni seans Batmana
# intent: inform inform
# slots: ostatni:time
1 Poproszę inform inform NoLabel
2 bilet inform inform NoLabel
3 na inform inform NoLabel
4 ostatni inform inform B-time
5 seans inform inform NoLabel
6 Batmana inform inform NoLabel
# text: jan.kowalski@pies.pl
# intent: inform
# slots:
1 na inform NoLabel
2 tyłach inform NoLabel
# slots: jan.kowalski@pies.pl:e-mail
1 jan.kowalski@pies.pl inform B-e-mail
# text: Witam
# intent: hello
# slots:
1 Witam hello NoLabel
# text: o czym jest straszny film 10?
# intent: request
# slots: movie_detail:task
1 o request NoLabel
2 czym request NoLabel
3 jest request NoLabel
4 straszny request NoLabel
5 film request NoLabel
6 10 request NoLabel
7 ? request NoLabel
# text: Ostatni
# text: Cały tydzień
# intent: inform
# slots: 12:row
1 Ostatni inform NoLabel
# slots: Całytydzień:date
1 Cały inform B-date
2 tydzień inform I-date
# text: Jeden ulgowy jeden senior
# intent: inform
# slots: senior:tickettype
1 Jeden inform NoLabel
2 ulgowy inform NoLabel
3 jeden inform NoLabel
4 senior inform B-tickettype
# text: Tak
# intent: affirm
@ -166,19 +169,6 @@
6 podajesz null NoLabel
7 seanse null NoLabel
# text: ju tu
# intent: inform
# slots: jutu:name
1 ju inform B-name
2 tu inform I-name
# text: daleko od ludzi
# intent: null
# slots:
1 daleko null NoLabel
2 od null NoLabel
3 ludzi null NoLabel
# text: poproszę o miejsce 5 w rzędzie 10
# intent: inform
# slots: 5:seat,10:row
@ -190,46 +180,51 @@
6 rzędzie inform NoLabel
7 10 inform B-row
# text: W okolicach środka, środkowego rzędu
# text: ju tu
# intent: inform
# slots:
1 W inform NoLabel
2 okolicach inform NoLabel
3 środka inform NoLabel
4 , inform NoLabel
5 środkowego inform NoLabel
6 rzędu inform NoLabel
# slots: jutu:name
1 ju inform B-name
2 tu inform I-name
# text: Teraz
# text: poprosze inni ludzie na 14:1313
# intent: null
# slots:
1 poprosze null NoLabel
2 inni null NoLabel
3 ludzie null NoLabel
4 na null NoLabel
5 14:1313 null NoLabel
# text: 30 marca o godzinie 12:10
# intent: inform inform
# slots: 12:10:hour
1 30 inform inform NoLabel
2 marca inform inform NoLabel
3 o inform inform NoLabel
4 godzinie inform inform NoLabel
5 12:10 inform inform B-hour
# text: xyz@gmail.com
# intent: inform
# slots:
1 Teraz inform NoLabel
# slots: xyz@gmail.com:e-mail
1 xyz@gmail.com inform B-e-mail
# text: Poproszę bilet na Batmana jutro o 15:00 i pande w sobotę na 17:00
# intent: inform null inform
# slots: 2.04:date,17:00:hour
1 Poproszę inform null inform NoLabel
2 bilet inform null inform NoLabel
3 na inform null inform NoLabel
4 Batmana inform null inform NoLabel
5 jutro inform null inform NoLabel
6 o inform null inform NoLabel
7 15:00 inform null inform NoLabel
8 i inform null inform NoLabel
9 pande inform null inform NoLabel
10 w inform null inform NoLabel
11 sobotę inform null inform NoLabel
12 na inform null inform NoLabel
13 17:00 inform null inform B-hour
# text: No dobła, niech będzie
# intent: ack affirm
# text: Chciałbym zarezerwować film
# intent: null
# slots:
1 No ack affirm NoLabel
2 dobła ack affirm NoLabel
3 , ack affirm NoLabel
4 niech ack affirm NoLabel
5 będzie ack affirm NoLabel
1 Chciałbym null NoLabel
2 zarezerwować null NoLabel
3 film null NoLabel
# text: To jeden tylko dla mnie proszę
# intent: inform
# slots: jeden:quantity
1 To inform NoLabel
2 jeden inform B-quantity
3 tylko inform NoLabel
4 dla inform NoLabel
5 mnie inform NoLabel
6 proszę inform NoLabel
# text: Chcę iść do kina
# intent: request
@ -239,15 +234,6 @@
3 do request NoLabel
4 kina request NoLabel
# text: A później nie ma?
# intent: reqmore
# slots:
1 A reqmore NoLabel
2 później reqmore NoLabel
3 nie reqmore NoLabel
4 ma reqmore NoLabel
5 ? reqmore NoLabel
# text: No pewnie jakoś będzie. Na fanstaczne zernęta proszę zatem.
# intent: inform
# slots: fanstacznezernęta:title
@ -263,35 +249,44 @@
10 zatem inform NoLabel
11 . inform NoLabel
# text: przed ostatnim
# intent: inform
# slots: 10:sit_row
1 przed inform NoLabel
2 ostatnim inform NoLabel
# text: wygodne
# intent: null
# text: A co gracie?
# intent: request
# slots:
1 wygodne null NoLabel
1 A request NoLabel
2 co request NoLabel
3 gracie request NoLabel
4 ? request NoLabel
# text: batman
# intent: inform
# slots: batman:movie
1 batman inform B-movie
# text: dzisiaj, teraz
# intent: inform inform
# slots: 15:30:hour
1 dzisiaj inform inform NoLabel
2 , inform inform NoLabel
3 teraz inform inform NoLabel
# text: 19:30
# text: miejsce 11
# intent: inform
# slots: 19:30:time
1 19:30 inform B-time
# slots: 11:seat_place
1 miejsce inform NoLabel
2 11 inform B-seat_place
# text: 3 normalne i 3 ulgowe
# intent: inform
# slots: 3:normalQuantity,3:reducedQuantity
1 3 inform B-reducedQuantity
2 normalne inform NoLabel
3 i inform NoLabel
4 3 inform B-reducedQuantity
5 ulgowe inform NoLabel
# text: nie jestem pewien, za ile jest bilet?
# intent: reqmore
# slots:
1 nie reqmore NoLabel
2 jestem reqmore NoLabel
3 pewien reqmore NoLabel
4 , reqmore NoLabel
5 za reqmore NoLabel
6 ile reqmore NoLabel
7 jest reqmore NoLabel
8 bilet reqmore NoLabel
9 ? reqmore NoLabel
# text: Ok
# intent: ack
# slots:
1 Ok ack NoLabel
# text: Dziękuję systemie
# intent: thankyou
@ -299,46 +294,59 @@
1 Dziękuję thankyou NoLabel
2 systemie thankyou NoLabel
# text: dól lewo
# intent: inform
# slots:
1 dól inform NoLabel
2 lewo inform NoLabel
# text: Dobra, czy jutro gracie batman?
# intent: ack inform request
# slots: batman:title
1 Dobra ack inform request NoLabel
2 , ack inform request NoLabel
3 czy ack inform request NoLabel
4 jutro ack inform request NoLabel
5 gracie ack inform request NoLabel
6 batman ack inform request B-title
7 ? ack inform request NoLabel
# text: Jakie macie zniżki?
# text: Czy gracie Batman?
# intent: request
# slots:
1 Jakie request NoLabel
2 macie request NoLabel
3 zniżki request NoLabel
# slots: Batman:movie
1 Czy request NoLabel
2 gracie request NoLabel
3 Batman request B-movie
4 ? request NoLabel
# text: 1 weteran i 1 ulgowy
# intent: inform inform
# slots: reduced:tickettype,1:ticketnumber
1 1 inform inform B-ticketnumber
2 weteran inform inform NoLabel
3 i inform inform NoLabel
4 1 inform inform B-ticketnumber
5 ulgowy inform inform NoLabel
# text: Jakub Kaczmarek
# text: Chciałym 15.04
# intent: inform
# slots: JanKaczmarek:name
1 Jakub inform NoLabel
2 Kaczmarek inform NoLabel
# slots: 15.04:date
1 Chciałym inform NoLabel
2 15.04 inform B-date
# text: poproszę 1
# intent: inform
# slots: 1:seat
1 poproszę inform NoLabel
2 1 inform B-seat
# text: dzień dobry
# text: Cześć systemie
# intent: hello
# slots:
1 dzień hello NoLabel
2 dobry hello NoLabel
1 Cześć hello NoLabel
2 systemie hello NoLabel
# text: ulgowe
# intent: inform
# slots: ulgowe:tickettype
1 ulgowe inform B-tickettype
# text: dzisiaj
# intent: inform
# slots:
1 dzisiaj inform NoLabel
# text: Dzięki
# intent: thankyou
# slots:
1 Dzięki thankyou NoLabel
# text: Na wyjdz za mnie
# intent: inform
# slots: Wyjdzzamnie:movie
1 Na inform NoLabel
2 wyjdz inform B-movie
3 za inform I-movie
4 mnie inform I-movie
# text: z tyłu, na środku (aby ekran był centralnie widoczny)
# intent: inform
@ -356,79 +364,58 @@
11 widoczny inform NoLabel
12 ) inform NoLabel
# text: Martyna Druminska mdruminska074@gmail.com
# text: Na końcu sali
# intent: inform
# slots: MartynaDruminska:name,mdruminska074@gmail.com:e-mail
1 Martyna inform B-name
2 Druminska inform I-name
3 mdruminska074@gmail.com inform B-e-mail
# text: Taki O okita@mail.com
# intent: inform
# slots: TakiO:name,okita@mail.com:e-mail
1 Taki inform B-name
2 O inform I-name
3 okita@mail.com inform B-e-mail
# text: Dzień dobry
# intent: hello
# slots:
1 Dzień hello NoLabel
2 dobry hello NoLabel
1 Na inform NoLabel
2 końcu inform NoLabel
3 sali inform NoLabel
# text: Super
# text: Chciałbym anulować rezerwację
# intent: deny inform
# slots: reservation:task
1 Chciałbym deny inform NoLabel
2 anulować deny inform NoLabel
3 rezerwację deny inform NoLabel
# text: Zgadza się
# intent: act
# slots:
1 Super act NoLabel
1 Zgadza act NoLabel
2 się act NoLabel
# text: To 12 i 13 w J proszę
# intent: inform inform inform
# slots: 13:seat
1 To inform inform inform NoLabel
2 12 inform inform inform NoLabel
3 i inform inform inform NoLabel
4 13 inform inform inform B-seat
5 w inform inform inform NoLabel
6 J inform inform inform NoLabel
7 proszę inform inform inform NoLabel
# text: Na środku jakoś
# intent: null
# text: Dzięki ❤️
# intent: thankyou
# slots:
1 Na null NoLabel
2 środku null NoLabel
3 jakoś null NoLabel
1 Dzięki thankyou NoLabel
2 ❤️ thankyou NoLabel
# text: O, super. O której?
# intent: request
# slots: Uncharted:movie
1 O request NoLabel
2 , request NoLabel
3 super request NoLabel
4 . request NoLabel
5 O request NoLabel
6 której request NoLabel
7 ? request NoLabel
# text: Elo
# intent: hello
# slots:
1 Elo hello NoLabel
# text: I J
# intent: inform inform
# slots: J:row
1 I inform inform NoLabel
2 J inform inform B-row
# text: Wybieram wszystkie
# text: Jeden dla mnie, drugi dla kota
# intent: inform
# slots: all:seat
1 Wybieram inform NoLabel
2 wszystkie inform NoLabel
# text: W takim razie chcę zarezerwować bilety na film to Niewypanda
# intent: inform
# slots: book:task,Toniewypanda:movie
1 W inform NoLabel
2 takim inform NoLabel
3 razie inform NoLabel
4 chcę inform NoLabel
5 zarezerwować inform NoLabel
6 bilety inform NoLabel
7 na inform NoLabel
8 film inform NoLabel
9 to inform NoLabel
10 Niewypanda inform NoLabel
# slots: 2:ticketnumber
1 Jeden inform NoLabel
2 dla inform NoLabel
3 mnie inform NoLabel
4 , inform NoLabel
5 drugi inform NoLabel
6 dla inform NoLabel
7 kota inform NoLabel
# text: Które rzędzy są dostępne?
# intent: null
@ -439,67 +426,79 @@
4 dostępne null NoLabel
5 ? null NoLabel
# text: 11
# text: Chcę kupić bilety na film
# intent: inform
# slots: 11:ticketnumber
1 11 inform B-ticketnumber
# slots: buy:task
1 Chcę inform NoLabel
2 kupić inform NoLabel
3 bilety inform NoLabel
4 na inform NoLabel
5 film inform NoLabel
# text: Jakie są dostępne miejsca na film 'Batman'?
# text: A jakie filmy gracie?
# intent: request
# slots: batman:movie
1 Jakie request NoLabel
2 są request NoLabel
3 dostępne request NoLabel
4 miejsca request NoLabel
5 na request NoLabel
6 film request NoLabel
7 Batman request B-movie
8 ? request NoLabel
# slots:
1 A request NoLabel
2 jakie request NoLabel
3 filmy request NoLabel
4 gracie request NoLabel
5 ? request NoLabel
# text: Dzień dobry
# intent: hello
# slots:
1 Dzień hello NoLabel
2 dobry hello NoLabel
# text: 2 bilety
# intent: inform
# slots: 2:ticketnumber
1 2 inform B-ticketnumber
2 bilety inform NoLabel
# text: Wybieram 6-7
# intent: inform inform
# slots: 7:seat
1 Wybieram inform inform NoLabel
2 6-7 inform inform NoLabel
# text: To poproszę bilet ulgowy
# intent: inform
# slots: reduced:tickettype
# slots: ulgowy:tickettype
1 To inform NoLabel
2 poproszę inform NoLabel
3 bilet inform NoLabel
4 ulgowy inform NoLabel
# text: Jaki jest zakres rzędów?
# intent: request
# slots:
1 Jaki request NoLabel
2 jest request NoLabel
3 zakres request NoLabel
4 rzędów request NoLabel
5 ? request NoLabel
4 ulgowy inform B-tickettype
# text: tak, daleko od ekranu
# intent: inform
# slots: dalekoodekranu:seatPlacement
# slots: dalekoodekranu:seats
1 tak inform NoLabel
2 , inform NoLabel
3 daleko inform B-seatPlacement
4 od inform I-seatPlacement
5 ekranu inform I-seatPlacement
3 daleko inform B-seats
4 od inform I-seats
5 ekranu inform I-seats
# text: 123@132.pl
# text: 123456789
# intent: inform
# slots: 123@132.pl:e-mail
1 123@132.pl inform B-e-mail
# slots: 123456789:phone
1 123456789 inform B-phone
# text: Chciałbym dowiedzieć się czegoś o aktualnym repertuarze
# text: Przed filmem
# intent: inform
# slots:
1 Przed inform NoLabel
2 filmem inform NoLabel
# text: W sumie tak. Interesuje mnie najbliższa sobota
# intent: request
# slots: closestscreenings:task
1 Chciałbym request NoLabel
2 dowiedzieć request NoLabel
3 się request NoLabel
4 czegoś request NoLabel
5 o request NoLabel
6 aktualnym request NoLabel
7 repertuarze request NoLabel
# text: Tak
# intent: ack
# slots:
1 Tak ack NoLabel
1 W request NoLabel
2 sumie request NoLabel
3 tak request NoLabel
4 . request NoLabel
5 Interesuje request NoLabel
6 mnie request NoLabel
7 najbliższa request NoLabel
8 sobota request NoLabel

File diff suppressed because it is too large Load Diff

View File

@ -17,7 +17,7 @@ system Proszę o podanie adresu e-mail oraz numeru telefonu, na które zostanie
user emkarcinos42069@buziaczek.pl 123123123 inform(e-mail=emkarcinos42069@buziaczek.pl)&inform(phone=123123123)
system Dziękuję, potwierdzenie zostało wysłane. Czy mogę w czymś jeszcze Panu pomóc? affirm()&reqmore()
user A jakie miejsca zostały zarezerwowane? request(seats)
system Miejsca 8,9 w rzędzie J inform(seats=Miejsca 8,9 w rzędzie J )
system Miejsca 8,9 w rzędzie J inform(seats=Miejsca 8,9 w rzędzie J)
user Chciałbym miejsca najbliżej ekranu request(seats=najbliżej ekranu)
system Wszystkie miejsca bliżej ekranu zostały już wcześniej zarezerwowane inform(seats)
user A jakie są miejsca najbliżej ekranu? request(seats=najbliżej ekranu)

Can't render this file because it has a wrong number of fields in line 20.