Compare commits

...

44 Commits

Author SHA1 Message Date
PawelDopierala
3464a04349 Fix Dziękuję 2024-06-08 14:11:17 +02:00
1dcb6c7343 add reference number generator 2024-06-08 12:55:12 +02:00
29700baaf9 fix state 2024-06-08 12:44:13 +02:00
PawelDopierala
e24d1894a3 Finish chatbot 2024-06-07 00:38:21 +02:00
7bb36b5bac add translation of system answer 2024-06-04 21:53:50 +02:00
e9ffbd646f Merge pull request 'test_branch' (#1) from test_branch into master
Reviewed-on: #1
2024-06-04 00:41:35 +02:00
Maciej Matusz
0b2efaa3f4 nlg 2024-06-04 00:38:14 +02:00
a2e2dd4e23 learning 2024-06-03 22:36:02 +02:00
PawelDopierala
ea1bec410f Fix evaluate.py 2024-05-29 19:26:14 +02:00
513f09e06b move code from jupyter to python classes 2024-05-27 21:50:25 +02:00
c71bbc071d added hotels data 2024-05-27 20:53:07 +02:00
a7e1d271e9 first try implementing rules policy 2024-05-27 00:10:00 +02:00
PawelDopierala
aca0beb345 Merge remote-tracking branch 'origin/master' 2024-05-08 23:36:13 +02:00
PawelDopierala
95a7cd4305 do NaturalLanguageAnalyzer.py and evaluate.py 2024-05-08 23:36:04 +02:00
33a5173a21 fix dialogs 2024-05-07 19:27:49 +02:00
6ffe99d1e0 fix dialogs 2024-04-30 12:46:50 +02:00
Krzysztof Raczyński
505bde0aaf próba dodania stworzenia gramatyki 2024-04-30 00:10:20 +02:00
PawelDopierala
a9cb38f82a fix dialog-02-01-01.tsv and create evaluate.py 2024-04-28 01:30:56 +02:00
9a33831c4c update NLU 2024-04-23 13:04:36 +02:00
PawelDopierala
a2a83332e4 Update NaturalLanguageGeneration.py 2024-04-23 00:26:55 +02:00
Krzysztof Raczyński
5d77dc0914 fix dialog-01-04-01.tsv 2024-04-22 17:19:07 +02:00
Krzysztof Raczyński
d49172230a added DST, DP and NLG classes 2024-04-21 10:09:03 +02:00
PawelDopierala
3a6965c2d9 Merge remote-tracking branch 'origin/master' 2024-04-17 19:36:13 +02:00
PawelDopierala
8009b2a7c4 Do Main.py and NaturalLanguageAnalyzer.py 2024-04-17 19:35:47 +02:00
1c21ed4065 described dialog parts 2024-04-16 14:31:20 +02:00
PawelDopierala
2f9b63866a fix dialog-03-12-01.tsv 2024-04-16 00:40:05 +02:00
PawelDopierala
d587c000a8 add act to operator 03 files 2024-04-16 00:38:11 +02:00
Krzysztof Raczyński
674f3a0935 dodanie aktów do dialogów 02 2024-04-14 13:37:35 +02:00
de110848e4 dodanie act do dialog-02-01-01.tsv 2024-04-09 13:07:33 +02:00
PawelDopierala
12b8fd17a5 act dialog-03-02-01.tsv 2024-04-09 13:03:32 +02:00
PawelDopierala
2abb4aceb0 fix dialog-03-06-01.tsv 2024-04-08 18:25:00 +02:00
PawelDopierala
ee90ae88ac fix dialog-03-12-01.tsv 2024-04-08 13:40:33 +02:00
PawelDopierala
009e0c4e05 dialog-03-12-01.tsv 2024-04-08 13:08:16 +02:00
PawelDopierala
190a14af62 dialog-03-08-01.tsv 2024-04-08 13:01:26 +02:00
PawelDopierala
49aa729f05 dialog-03-06-01.tsv 2024-04-08 12:55:26 +02:00
PawelDopierala
901a9feb31 dialog-03-04-01.tsv 2024-04-08 12:46:45 +02:00
PawelDopierala
7ebed44ce1 dialog-03-02-01.tsv 2024-04-03 16:20:08 +02:00
Krzysztof Raczyński
32d60f3ad3 added all dialogs 2024-03-30 10:33:16 +01:00
Krzysztof Raczyński
dcad453707 added first dialog 2024-03-30 10:01:44 +01:00
Daniel Porzucek
413c210aaa changed -- to tabs 2024-03-26 18:58:17 +01:00
Daniel Porzucek
e72dec012d operator-01 oz 2024-03-26 18:44:30 +01:00
PawelDopierala
d722f09337 Fix errors 2024-03-14 13:48:17 +01:00
PawelDopierala
f37af62440 Fix errors 2024-03-14 13:16:08 +01:00
PawelDopierala
42a6e3316f Add "Pytanie o szczegóły rezerwacji" and fix errors 2024-03-14 13:12:26 +01:00
53 changed files with 1802 additions and 24 deletions

86
DialoguePolicy.py Normal file
View File

@ -0,0 +1,86 @@
from collections import defaultdict
import json
import random
import string
from copy import deepcopy
from convlab.policy.policy import Policy
db_path = './hotels_data.json'
def generate_reference_number(length=8):
letters_and_digits = string.ascii_uppercase + string.digits
reference_number = ''.join(random.choice(letters_and_digits) for _ in range(length))
return reference_number
class DialoguePolicy(Policy):
info_dict = None
def __init__(self):
Policy.__init__(self)
self.db = self.load_database(db_path)
def load_database(self, db_path):
with open(db_path, 'r', encoding='utf-8') as f:
return json.load(f)
def query(self, domain, constraints):
if domain != 'hotel':
return []
results = []
for entry in self.db:
match = all(entry.get(key) == value for key, value in constraints)
if match:
results.append(entry)
return results
def predict(self, state):
self.results = []
system_action = defaultdict(list)
user_action = defaultdict(list)
for intent, domain, slot, value in state['user_action']:
user_action[(domain.lower(), intent.lower())].append((slot.lower(), value))
for user_act in user_action:
self.update_system_action(user_act, user_action, state, system_action)
if any(True for slots in user_action.values() for (slot, _) in slots if
slot in ['book stay', 'book day', 'book people']):
if self.results:
reference_number = generate_reference_number()
system_action = {('Booking', 'Book'): [["Ref", reference_number]]}
system_acts = [[intent, domain, slot, value] for (domain, intent), slots in system_action.items() for
slot, value in slots]
state['system_action'] = system_acts
return system_acts
def update_system_action(self, user_act, user_action, state, system_action):
domain, intent = user_act
if domain in state['belief_state']:
constraints = [(slot, value) for slot, value in state['belief_state'][domain]['info'].items() if value != '']
# print(f"Constraints: {constraints}")
self.results = deepcopy(self.query(domain.lower(), constraints))
# print(f"Query results: {self.results}")
if intent == 'request':
if len(self.results) == 0:
system_action[(domain, 'NoOffer')] = []
else:
for slot in user_action[user_act]:
if slot[0] in self.results[0]:
system_action[(domain, 'Inform')].append([slot[0], self.results[0].get(slot[0], 'unknown')])
elif intent == 'inform':
if len(self.results) == 0:
system_action[(domain, 'NoOffer')] = []
else:
system_action[(domain, 'Inform')].append(['Choice', str(len(self.results))])
choice = self.results[0]
if domain in ["hotel"]:
system_action[(domain, 'Recommend')].append(['Name', choice['name']])
for slot in state['belief_state'][domain]['info']:
if choice.get(slot):
state['belief_state'][domain]['info'][slot] = choice[slot]

78
DialogueStateTracker.py Normal file
View File

@ -0,0 +1,78 @@
import json
from convlab.dst.dst import DST
def default_state():
return {
'belief_state': {
'hotel': {
'info': {
'name': '',
'area': '',
'parking': '',
'price range': '',
'stars': '',
'internet': '',
'type': ''
},
'booking': {
'book stay': '',
'book day': '',
'book people': ''
}
}
},
'request_state': {},
'history': [],
'user_action': [],
'system_action': [],
'terminated': False,
'booked': {}
}
class DialogueStateTracker(DST):
info_dict = None
def __init__(self):
DST.__init__(self)
self.state = default_state()
with open('./hotels_data.json') as f:
self.value_dict = json.load(f)
def update(self, user_act=None):
for intent, domain, slot, value in user_act:
domain = domain.lower()
intent = intent.lower()
slot = slot.lower()
if domain not in self.state['belief_state']:
continue
if intent == 'inform':
if slot == 'none' or slot == '' or value == 'dontcare':
continue
domain_dic = self.state['belief_state'][domain]['info']
if slot in domain_dic:
nvalue = self.normalize_value(self.value_dict, domain, slot, value)
self.state['belief_state'][domain]['info'][slot] = nvalue
elif intent == 'request':
if domain not in self.state['request_state']:
self.state['request_state'][domain] = {}
if slot not in self.state['request_state'][domain]:
self.state['request_state'][domain][slot] = 0
return self.state
def normalize_value(self, value_dict, domain, slot, value):
normalized_value = value.lower().strip()
if domain in value_dict and slot in value_dict[domain]:
possible_values = value_dict[domain][slot]
if isinstance(possible_values, dict) and normalized_value in possible_values:
return possible_values[normalized_value]
return value
def init_session(self):
self.state = default_state()

47
MachineLearningNLG.py Normal file
View File

@ -0,0 +1,47 @@
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer, pipeline
import requests
import os
import time
class MachineLearningNLG:
def __init__(self):
self.model_name = "./nlg_model" # Ścieżka do wytrenowanego modelu
if not os.path.exists(self.model_name):
raise ValueError(
f"Ścieżka {self.model_name} nie istnieje. Upewnij się, że model został poprawnie zapisany.")
self.tokenizer = AutoTokenizer.from_pretrained(self.model_name)
self.model = AutoModelForSeq2SeqLM.from_pretrained(self.model_name)
self.generator = pipeline('text2text-generation', model=self.model, tokenizer=self.tokenizer)
def translate_text(self, text, target_language='pl'):
url = f'https://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl={target_language}&dt=t&q={text}'
response = requests.get(url)
if response.status_code == 200:
translated_text = response.json()[0][0][0]
return translated_text
else:
return text # Zwracamy oryginalny tekst w razie problemów z tłumaczeniem
def nlg(self, system_act):
input_text = f"generate text: {system_act}"
start_time = time.time()
result = self.generator(input_text)
response_time = time.time() - start_time
response = result[0]['generated_text']
translated_response = self.translate_text(response, target_language='pl')
return translated_response
def generate(self, action):
# Przyjmujemy, że 'action' jest formatowanym stringiem, który jest przekazywany do self.nlg
return self.nlg(action)
def init_session(self):
pass # Dodanie pustej metody init_session
# Przykład użycia
if __name__ == "__main__":
nlg = MachineLearningNLG()
system_act = "inform(date.from=15.07, date.to=22.07)"
print(nlg.nlg(system_act))

22
Main.py Normal file
View File

@ -0,0 +1,22 @@
from NaturalLanguageAnalyzer import NaturalLanguageAnalyzer
from DialoguePolicy import DialoguePolicy
from DialogueStateTracker import DialogueStateTracker
from NaturalLanguageGeneration import NaturalLanguageGeneration
from convlab.dialog_agent import PipelineAgent
import warnings
warnings.filterwarnings("ignore")
if __name__ == "__main__":
nlu = NaturalLanguageAnalyzer()
dst = DialogueStateTracker()
policy = DialoguePolicy()
nlg = NaturalLanguageGeneration()
agent = PipelineAgent(nlu=nlu, dst=dst, policy=policy, nlg=nlg, name='sys')
print("Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc?")
while True:
text = input()
response = agent.response(text)
print(response)

View File

@ -0,0 +1,33 @@
from convlab.base_models.t5.nlu import T5NLU
import requests
def translate_text(text, target_language='en'):
url = 'https://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl={}&dt=t&q={}'.format(
target_language, text)
response = requests.get(url)
if response.status_code == 200:
translated_text = response.json()[0][0][0]
return translated_text
else:
return None
class NaturalLanguageAnalyzer:
info_dict = None
def predict(self, text, context=None):
# Inicjalizacja modelu NLU
model_name = "ConvLab/t5-small-nlu-multiwoz21"
nlu_model = T5NLU(speaker='user', context_window_size=0, model_name_or_path=model_name)
# Automatyczne tłumaczenie na język angielski
translated_input = translate_text(text)
# Wygenerowanie odpowiedzi z modelu NLU
nlu_output = nlu_model.predict(translated_input)
return nlu_output
def init_session(self):
# Inicjalizacja sesji (jeśli konieczne)
pass

View File

@ -0,0 +1,28 @@
import requests
from convlab.nlg.template.multiwoz import TemplateNLG
def translate_text(text, target_language='pl'):
url = 'https://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl={}&dt=t&q={}'.format(
target_language, text)
response = requests.get(url)
if response.status_code == 200:
translated_text = response.json()[0]
translated_text_joined = ''.join([sentence[0] for sentence in translated_text])
return translated_text_joined
else:
return None
class NaturalLanguageGeneration:
info_dict = None
def generate(self, system_act):
if len(system_act) == 0:
return "Nie rozumiem."
tnlg = TemplateNLG(is_user=False)
response_en = tnlg.generate(system_act)
return translate_text(response_en)
def init_session(self):
pass # Dodanie pustej metody init_session

21
archives/grammar.jsgf Normal file
View File

@ -0,0 +1,21 @@
#JSGF V1.0 UTF-8 pl;
grammar book;
public <rezerwuj> = [chciałbym] zarezerwować [hotel] [<dzien_rezerwacji>] [<godzina_rezerwacji>] [<liczba_osob>] ;
<dzien_rezerwacji> = na <dzien> {day};
<dzien> = dzisiaj | jutro | poniedziałek | wtorek | środę | czwartek | piątek | sobotę | niedzielę;
<godzina_rezerwacji> = na [godzinę] <godzina_z_minutami> {hour};
<godzina_z_minutami> = <godzina> [<minuty>];
<godzina> = dziewiątą | dziesiątą | jedenastą | dwunastą;
<minuty> = pietnaście | trzydzieści;
<liczba_osob> = (na | dla) <liczba> {size} (osób | osoby);
<liczba> = dwie | dwóch | trzy | trzech | cztery | czterech | pięć | pieciu;

35
archives/grammar_1.jsgf Normal file
View File

@ -0,0 +1,35 @@
#JSGF V1.0 UTF-8 pl;
grammar rezerwacja;
public <rezerwacja> = (chciałbym zarezerwować | proszę zarezerwować) (pokój | nocleg) <opcje_rezerwacji> <termin> w <lokalizacja>;
public <opcje_rezerwacji> = (z widokiem na morze | nad Bałtykiem | z balkonem | ze śniadaniami do łóżka | dla całej rodziny | dla jednej osoby | dla 2 osób | dla 2 dorosłych i 2 dzieci) {opcje};
public <termin> = <data> [na <czas>] | <przedzial_czasu> {termin};
public <data> = <dzien> <miesiac> [rok];
public <dzien> = (1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31);
public <miesiac> = (stycznia | lutego | marca | kwietnia | maja | czerwca | lipca | sierpnia | września | października | listopada | grudnia);
public <rok> = (20 | 21) <cyfry>;
public <cyfry> = (0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9);
public <czas> = (rano | wieczorem | wieczór | popołudnie | noc | ranem | południe | południem) | <godzina> [i <minuta>] | <przedzial_czasu>;
public <godzina> = (0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12) | (13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23);
public <minuta> = (0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9) | (10 | 20 | 30 | 40 | 50);
public <przedzial_czasu> = (ten piątek | dzisiejszego wieczoru | dzisiejszego dnia | dziś | weekend | nadchodzący weekend | następny weekend);
public <weekend> = (najbliższy | nadchodzący | przyszły);
public <dlugosc_pobytu> = (cały pobyt | 3 godziny | 4 godziny | 5 godzin | 6 godzin | 7 godzin | 8 godzin | 9 godzin | 10 godzin | 11 godzin | 12 godzin | 13 godzin | 14 godzin | 15 godzin | 16 godzin | 17 godzin | 18 godzin | 19 godzin | 20 godzin | 21 godzin | 22 godziny | 23 godziny | 24 godziny);
public <lokalizacja> = (Warszawie | Wrocławiu | Poznaniu) {lokalizacja};
public <opcje_pokoj> = (z widokiem na wieże eifla | z widokiem na morze | z widokiem na morze | z widokiem na morze | z widokiem na morze | z widokiem na morze | z widokiem na morze | z widokiem na morze);

29
archives/iobes_slot.py Normal file
View File

@ -0,0 +1,29 @@
import pandas as pd
# Wczytanie danych z pliku TSV
data = pd.read_csv("combined_df.tsv", sep="\t")
# Inicjalizacja pustej listy do przechowywania tagów IOBES
tags = []
# Iteracja po każdym wierszu danych
for index, row in data.iterrows():
# Podział akcji na pojedyncze słowa
words = row['act'].split()
# Początkowy tag IOBES to 'O' dla każdego słowa
current_tags = ['O'] * len(words)
# Ustawienie tagu 'B' dla pierwszego słowa
current_tags[0] = 'B'
# Ustawienie tagu 'E' dla ostatniego słowa
current_tags[-1] = 'E'
# Ustawienie tagu 'I' dla pozostałych słów, jeśli są
if len(words) > 2:
current_tags[1:-1] = ['I'] * (len(words) - 2)
# Dodanie tagów do listy
tags.extend(current_tags)
# Dodanie kolumny z tagami do danych
data['tags'] = tags
# Zapisanie danych z tagami do nowego pliku TSV
data.to_csv("nazwa_pliku_z_tagami.tsv", sep="\t", index=False)

26
data/dialog-01-02-01.tsv Normal file
View File

@ -0,0 +1,26 @@
role value act
system Witaj, jestem systemem wspomagającym rezerwacje pokoi hotelowych, w czym mogę ci pomóc? welcomemsg()
user Chciałbym zarezerwować pokój dla całej rodziny nad Bałtykiem z widokiem na morze. inform(place='baltic',extra='seaside',rooms=1)
system Ilu osobowa jest to rodzina? request(people)
user 2 dorosłych i 2 dzieci inform(people.adult=2,people.kids=2)
system Czy następujący podział łóżek odpowiada Panu/Pani? - Łóżko 2-osobowe -> 1 | Łóżko 1-osobowe -> 2 confirm-domain(beds)
user Tak, pasuje mi affirm()
system W jakim terminie interesuje Pana/Panią rezerwacja? request(date.from,date.to)
user 15-22 lipca inform(date.from=15.07,date.to=22.07)
system Jaki jest wiek dzieci? request(people.kids.ages)
user 4 i 9 lat inform(people.kids.ages=[4,9])
system Podczas poszukiwań kierować się ceną, liczbą gwiazdek hotelu czy ocenami obiektu? request(sort)
user Przede wszystkim ocenami. Chciałbym jednak, żeby nie było to również za drogie miejsce. inform(sort=['reviews','price'])
system W podanym terminie udało mi się znaleźć Willa Słoneczna - Magdalena i Michał Żelewscy, jest ona wysoko oceniana, oraz najtańsza spośród wysoko ocenianych. Koszt rezerwacji to 1890 PLN, niestety nie jest oferowane śniadanie offer(hotel="Willa Słoneczna - Magdalena i Michał Żelewscy")&inform(cost,reviews)
system Czy dokonać rezerwacji? request(reserve)
user Czy na miejscu jest restauracja oferująca obiady? reqmore(extra.restaurant)&inform(extra.restaurant=true)
system Niestety nie posiadam takich informacji o obiekcie canthelp()
user Podana cena jest za cały pobyt za wszystkie osoby? reqmore(price)
system Podawane ceny dotyczą ostatecznej kwoty do zapłaty inform(price)
user W takim razie proszę zarezerwować. affirm()
system Czy będzie potrzebował Pan faktury vat? request(fv24)
user Nie inform(fv24=false)
system Dobrze, oto Pana kod rezerwacji m45n0-f35t-wino, płatności należy dokonać pod tym linkiem: https://fake-blik.cn/pay/?transaction_id=21372115 affirm()
system Czy mogę w czymś jeszcze pomóc? reqmore()
user To wszystko. Dziękuję neagte()
system Dziękuje za skorzystanie z systemu, miłego wyjazdu! bye()
Can't render this file because it contains an unexpected character in line 14 and column 254.

13
data/dialog-01-02-02.tsv Normal file
View File

@ -0,0 +1,13 @@
role value act
system Witaj, jestem systemem wspomagającym rezerwacje pokoi hotelowych, w czym mogę ci pomóc? welcomemsg()
user Chciałbym zarezerwować nocleg z 27 na 28 marca w Warszawie dla jednej osoby. inform(place='Warsaw', date.from=27.03, date.to=28.03, people=1)
system Czy interesują Pana/Panią jakieś szczególne udogodnienia w pokoju? request(extra)
user Zależy mi tylko na tym, żeby był czajnik i kawa inform(extra.coffee=true,extra.kettle=true)
system Podczas poszukiwań kierować się ocenami, ceną czy ilością gwiazdek? request(sort)
user Proszę kierować się ceną inform(sort=['price'])
system W podanym terminie udało mi się znaleźć pokój w Ivory House (Marymont-Ruda). Cena rezerwacji wynosi 128 zł. Dokonać rezerwacji? offer(hotel="Ivory House (Marymont-Ruda)")&inform(cost)
user Wygląda zachęcająco. Proszę rezerwować. affirm()
system Czy potrzebuje Pan/Pani faktury vat? request(fv24)
user nie inform(fv24=false)
system Dobrze, oto Pana kod rezerwacji wy6l4d4-z4ch3c4j4c0-b4rdz0, płatności należy dokonać pod tym linkiem: https://fake-blik.cn/pay/?transaction_id=10310314 affirm()
system Czy mogę w czymś jeszcze Pani/Panu pomóc? more_help()
Can't render this file because it contains an unexpected character in line 8 and column 155.

26
data/dialog-01-04-01.tsv Normal file
View File

@ -0,0 +1,26 @@
role value act
system Witaj, jestem systemem wspomagającym rezerwacje pokoi hotelowych, w czym mogę ci pomóc? welcomemsg()
user Chciałbym zarezerwować pokój z widokiem na wieże eifla, z balkonem oraz śniadaniami do łóżka inform(place='Eiffel tower', extra.terrace=true, extra.breakfast=true)
system W jakim terminie interesuje Pana/Panią rezerwacja? request(date.from,date.to)
user Dzisiaj wieczór, czy jest możliwośc rezerwacji pokoju na godziny do takich tam zabaw? inform(date.from=today,date.to=tomorrow)&reqmore(date)
system Rezerwacja na jeden dzień? confirm-domain()
user chciałbym na 3 godziny dzisiejszego wieczoru inform(date.from=today, date.to=today+3hours)
system Niestety możemy dokonać rezerwacji na conajmniej dobę hotelową canthelp
user ile trwa doba hotelowa? reqmore(hotel_day)
system Przyjmuje się że doba hotelowa nie powinna trwać krócej niż 20 godzin, lecz może się to różnić między hotelami explain(hotel_day)
user a jak jest we wskazanym hotelu? reqmore(hotel)
system Aby rozpocząć poszukiwania potrzebuje daty rezerwacji pokoju request(date.from,date.to)
user Na ten piątek inform(date.from=26.04, date.to=27.04)
system Rezerwacja na ile osób? request(people)
user 3 w tym jedno dziecko ponieżej 12 lat inform(people=2,kids=1, kids.age=[12])
system Czy układ 1 łóżko dwuosobowe oraz 1 łóżko jednosobowe Panu/Pani odpowiada? confirm-domain(beds)
user tak, a czy za osobe nieletnią jest zniżka? affirm()&reqmore(kids.discount)
system Niestety nie posiadam takich informacji odnośnie obiektu canthelp()
system W podanym terminie udało znaleźć mi się Pullman Paris Tour Eiffel w cenie 3570 zł, posiada on balkon z widokiem na wieże eiffla, oraz śniadanie do łóżka w cenie. Czy dokonać rezerwacji? offer(hotel="Pullman Paris Tour Eiffel")&inform(cost, extra)
user Tak affirm()
system Czy potrzebuje Pan/Pani faktury vat? request(fv24)
user Tak to wyjazd służbowy inform(fv24=true)
system Dobrze, oto Pana kod rezerwacji ymbape-markinios-peesze, płatności należy dokonać pod tym linkiem: https://fake-blik.cn/pay/?transaction_id=391839184 affirm()
system Czy mogę jeszcze w czymś pomóc? more_help()
user To wszystko dziękuje bye()
system Dziękuje za skorzystanie z naszych usług, miłego wyjazdu! bye()
Can't render this file because it contains an unexpected character in line 19 and column 217.

13
data/dialog-01-06-01.tsv Normal file
View File

@ -0,0 +1,13 @@
role value act
system Witaj, jestem systemem wspomagającym rezerwacje pokoi hotelowych, w czym mogę ci pomóc? welcomemsg()
user Chciałbym zarezerwować pokój dla 2 osob, z soboty na niedziele(30-31.04) we Wrocławiu, w okolicach lotniska inform(people=2,date.from=30.04,date.to=31.04,place='Wroclaw airport')
system Czy łóżko w pokoju ma być dwuosobowe? request(beds)
user Będę z kolegą, więc proszę żeby były oddzielne inform(beds.single=2)
system Niestety kwiecień ma 30 a nie 31 dni, czy zmienić okres rezerwacji na 30.04-01.05? request(date.from,date.to)
user oczywiscie, prosze o to mi chodzilo inform(date.from=30.05,date.to=31.05)
system W podanym przez Pana/Panią terminie możliwa jest rezerwacja w Arche Hotel Wrocław Airport. Znajduje się on bezpośrednio przy lotnisku, posiada dwa łóżka jednoosobowe. Dodatkowo jest wysoko oceniany przez gości (9,1/10). Koszt takiej rezerwacji wynosi 523 zł, z możliwością rozszerzenia o śniadanie w cenie 70 zł. offer(hotel="Arche Hotel Wrocław Airport.")&inform(cost, extra)
system Czy dokonać rezerwacji?
user Bede pozno, do kiedy najpozniej moge sie zameldoeac? reqmore(hotel_day)
system Recepcja w wybranym hotelu funkcjonuje 24h 7 dni w tygodniu inform(hotel_day=24/7)
user Ok, dziękuję za pomoc bye()
system Dziękuje za skorzystanie z naszych usług. Miłego wyjazdu! bye()
Can't render this file because it contains an unexpected character in line 8 and column 348.

20
data/dialog-01-08-01.tsv Normal file
View File

@ -0,0 +1,20 @@
role value act
system Witaj, jestem systemem wspomagającym rezerwacje pokoi hotelowych, w czym mogę ci pomóc? welcomemsg()
user Chciałbym zarezerwować pokój w hotelu na ten weekend, czy była by taka możliwość? inform(date.from=26.04,date.to=28.04)
system Rezerwacja w jakim mieście cię interesuje? request(place)
user W Poznaniu, chciałbym się także dowiedzieć jakie standardy ma hotel, ponieważ opinię na google nie są zbyt przychylne. inform(place='Poznan')
system Jestem systemem nie przypisanym do jednego konkretnego hotelu, oferujemy pomoc w rezerwacje pokoi hotelowych w hotelach zarejestrowanych w naszej bazie inform(system_info)
user Okej, jaki jest najdroższy hotele w Poznaniu, jaki masz w swojej ofercie? inform(sort=['price.desc'])
system Rezerwacja opiewałaby na jaką liczbę osób? request(people)
user Na dwie osoby. inform(people=2)
system Ile z nich to dzieci? request(kids)
user Nie ma żadnych dzieci. inform(kids=0)
system Znalazłem ofertę Apartamenty Browar Luxury Old Town Poznań Check In 24h w terminie 30.03-31.03. Koszt rezerwacji wynosi 898 zł. Istnieje opcja rozszerzenia o śniadanie w cenie 31 PLN offer(hotel="Apartamenty Browar Luxury Old Town Poznań Check In 24h ")&inform(cost, extra)
system Czy zarezerwować apartament? reserve()
user Tak zarezerwuj ten apartament. affirm()
system Czy potrzebna będzie Panu faktura? request(fv24)
user Nie inform(fv24)
system Dobrze, oto Pana kod rezerwacji m45n0-f35t-piwo, płatności należy dokonać pod tym linkiem: https://fake-blik.cn/pay/?transaction_id=20139102300 affirm()
system Czy mogę jeszcze w czymś pomóc? more_help()
user Nie, to wszystko, dziękuję za pomoc. bye()
system Dziękuje za skorzystanie z naszych usług, miłego wyjazdu! bye()
Can't render this file because it contains an unexpected character in line 12 and column 208.

23
data/dialog-01-12-01.tsv Normal file
View File

@ -0,0 +1,23 @@
role value act
system Witaj, jestem systemem wspomagającym rezerwacje pokoi hotelowych, w czym mogę ci pomóc? welcomemsg()
user chciałbym zarezerować pokoj badz pokoje dla 8 osob inform(people=8)
system W jakim mieście interesuje cię rezerwacja? request(place)
user a jakie sa ograniczenia w doborze miasta ? reqmore(place)
system Jeżeli hotel w danym mieście jest zarejestrowany w naszej bazie to jest on brany pod uwagę przy wyborze lokalizacji i porównywaniu cen. Jeżeli nie, zostanie to zakomunikowane bądź zaproponowany zostanie hotel najbliżej pożądanej lokalizacji inform(place)
user czy ogranicza się to na teran polski reqmore(place='Poland')
system Nie, oferujemy możliwość rezerwacji w hotelach poza granicami Polski inform(place)
user to chciałbym zarezerować pokój w Trójmieście. Preferuje hotele trzy-cztero gwiazdkowe inform(place=['Gdansk','Gdynia','Sopot'])
system W jakim terminie interesuje Pana/Panią rezerwacja? request(date.from,date.to)
user Lipiec - Sierpien na tydzien inform(date.from=July,date.to=August,duration=week)
system Niestety mogę tylko zaoferować wyszukiwanie w konkretnej dacie, +-1, 2, 3 lub 7 dni cant_help()&request(date.from,date.to)
user od 1 do 8 sierpnia inform(date.from=1.07,date.to=8.07)
system Czy w przypadku jednego pokoju interesuje Pana/Panią konkretny podział łóżek? request(beds)
user najlepiej jakby były pokoje 4 z podwojnym łoziem inform(rooms=4,beds.double=1)
system W podanym terminie udało mi się znaleźć Apartament z balkonem Gdańsk Stare Miasto, 2 łóżka podwójne i dwie rozkładane sofy. Koszt rezerwacji to 3528 zł, niestety nie ma opcji śniadania. Czy dokonać rezerwacji? offer(hotel="Apartament z balkonem Gdańsk Stare Miasto,")&inform(cost, rooms, beds)
user poszukaj ze sniadaniem inform(extra.breakfast=true)
system W podanym terminie udało mi się znaleźć Kamienica Morska Gdynia. 4 pokoje z podwójnymi łóżkami. Koszt rezerwacji to 10596 zł, śniadanie jest wliczone w cenę. Czy dokonać rezerwacji? offer(hotel="Kamienica Morska Gdynia.")&inform(cost,rooms, beds)
user tak affirm()
system Dobrze, oto Pana kod rezerwacji undada-sea-2010, płatności należy dokonać pod tym linkiem: https://fake-blik.cn/pay/?transaction_id=2318031 affirm()
system Czy mogę jeszcze w czymś pomóc? more_help()
user nie dziekuje bye()
system Dziękuje za skorzystanie z naszych usług, miłego wyjazdu! bye()
Can't render this file because it contains an unexpected character in line 16 and column 243.

11
data/dialog-02-01-01.tsv Normal file
View File

@ -0,0 +1,11 @@
role value act
system Witam, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mog<6F> Ci pom<6F>c? welcomemsg()
user Potrzebowałbym zarezerwować pokój hotelowy w Mediolanie na przyszły tydzień, pon-wt, najlepiej blisko dzielnicy san siro inform(date='next week', place='Mediolan', place.nearby='San Siro')
system Dla ilu osób ma być pokój? request(people)
user Dla jednej osoby, koniecznie z łóżkiem dwuosobowym i klimatyzacją inform(people=1, beds.double=1,extra.airConditioning=true)
system W podanym przez Ciebie terminie znalazłem 3-gwiazdkowy Hotel Astoria za 280 zł za noc. W tej cenie są zapewnione śniadania. W pokoju jest łóżko 2-osobowe i klimatyzacja. inform(price=280, stars=3,extra.breakfastIncluded=true, extra.airConditioning=true, beds.double=2)&offer(hotel='Hotel Astoria')
user Jak daleko jest on od Stadio San Siro? request(extra.distance.SanSiro)
system Hotel znajduje się w odległości 200 metrów od San Siro. inform(extra.distance.SanSiro=0.2)
user Jak wyglądają godziny doby hotelowej w proponowanym hotelu? request(extra.check-in, extra.check-out)
system Doba hotelowa trwa od 15:00 do 10:00. inform(extra.check-in=15:00, extra=check.out=10:00)
user Ok, dziękuje to wszystko bye()
1 role value act
2 system Witam, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mog� Ci pom�c? welcomemsg()
3 user Potrzebowałbym zarezerwować pokój hotelowy w Mediolanie na przyszły tydzień, pon-wt, najlepiej blisko dzielnicy san siro inform(date='next week', place='Mediolan', place.nearby='San Siro')
4 system Dla ilu osób ma być pokój? request(people)
5 user Dla jednej osoby, koniecznie z łóżkiem dwuosobowym i klimatyzacją inform(people=1, beds.double=1,extra.airConditioning=true)
6 system W podanym przez Ciebie terminie znalazłem 3-gwiazdkowy Hotel Astoria za 280 zł za noc. W tej cenie są zapewnione śniadania. W pokoju jest łóżko 2-osobowe i klimatyzacja. inform(price=280, stars=3,extra.breakfastIncluded=true, extra.airConditioning=true, beds.double=2)&offer(hotel='Hotel Astoria')
7 user Jak daleko jest on od Stadio San Siro? request(extra.distance.SanSiro)
8 system Hotel znajduje się w odległości 200 metrów od San Siro. inform(extra.distance.SanSiro=0.2)
9 user Jak wyglądają godziny doby hotelowej w proponowanym hotelu? request(extra.check-in, extra.check-out)
10 system Doba hotelowa trwa od 15:00 do 10:00. inform(extra.check-in=15:00, extra=check.out=10:00)
11 user Ok, dziękuje to wszystko bye()

13
data/dialog-02-03-01.tsv Normal file
View File

@ -0,0 +1,13 @@
role value act
system Witam, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
user Chciałbym znaleźć hotel w Grecji, który ma basen i jest blisko plaży. Jak najtańszy inform(place='Greece', extra.swimmingPool=true, place.nearby='beach', price='cheapest')
system Dla ilu osób ma być pokój? request(people)
user 2 inform(people=2)
system Jaki termin Cię interesuje? request(date)
user Dowolny tydzień lipca inform(date='any week of July')
system W terminie 12-19 lipca dostępny jest pokój 2-osobowy na Krecie w cenie 230 zł za dobę razem ze śniadaniem. Czy taka opcja Ci odpowiada? inform(people=2, date.from=12.07, date.to=19.07, place='Kreta', price=230, extra.breakfastIncluded=true)
user Jak najbardziej. Chciałbym tylko dopytać czy jest możliwość bezpłatnego odwołania affirm()&request(extra.freeCancellation)
system Bezpłatne odwołanie rezerwacji można dokonać maksymalnie dwa tygodnie przed datą przyjazdu. W późniejszym terminie opłata za odwołanie rezerwacji wynosi 50% całkowitej ceny za pobyt. inform(extra.freeCancellation='two weeks before arrival', price=50%)
user Dziękuję bardzo. Czy można zapłacić blikiem? thankyou()&request(extra.payment.blik)
system Jak najbardziej. Całkowita kwota za pobyt wynosi 1610 zł. W przypadku płatności BLIK, proszę wysłać pieniądze na numer telefonu 345-645-423. inform(extra.payment.blik=true)
user Dziękuję bardzo bye()
1 role value act
2 system Witam, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
3 user Chciałbym znaleźć hotel w Grecji, który ma basen i jest blisko plaży. Jak najtańszy inform(place='Greece', extra.swimmingPool=true, place.nearby='beach', price='cheapest')
4 system Dla ilu osób ma być pokój? request(people)
5 user 2 inform(people=2)
6 system Jaki termin Cię interesuje? request(date)
7 user Dowolny tydzień lipca inform(date='any week of July')
8 system W terminie 12-19 lipca dostępny jest pokój 2-osobowy na Krecie w cenie 230 zł za dobę razem ze śniadaniem. Czy taka opcja Ci odpowiada? inform(people=2, date.from=12.07, date.to=19.07, place='Kreta', price=230, extra.breakfastIncluded=true)
9 user Jak najbardziej. Chciałbym tylko dopytać czy jest możliwość bezpłatnego odwołania affirm()&request(extra.freeCancellation)
10 system Bezpłatne odwołanie rezerwacji można dokonać maksymalnie dwa tygodnie przed datą przyjazdu. W późniejszym terminie opłata za odwołanie rezerwacji wynosi 50% całkowitej ceny za pobyt. inform(extra.freeCancellation='two weeks before arrival', price=50%)
11 user Dziękuję bardzo. Czy można zapłacić blikiem? thankyou()&request(extra.payment.blik)
12 system Jak najbardziej. Całkowita kwota za pobyt wynosi 1610 zł. W przypadku płatności BLIK, proszę wysłać pieniądze na numer telefonu 345-645-423. inform(extra.payment.blik=true)
13 user Dziękuję bardzo bye()

9
data/dialog-02-03-02.tsv Normal file
View File

@ -0,0 +1,9 @@
role value act
system Dzień dobry, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
user chciałbym zarezerować jak najtańszy hotel all-inclusive na Wyspach Kanaryjskich inform(price='cheapest', place='Canary Island', extra.all-inclusive=true)
system Jaki termin Cię interesuje? request(date)
user 01.09-10.09 tego roku inform(date.from=01.09.2024, date.to=10.09.2024)
system Mogę zaproponować Hotel Noelia, w którym pokój dwuosobowy w podanym przez Ciebie terminie kosztuje 367 zł. inform(people=2, price=367)&offer(hotel='Hotel Noelia')
user Czy jest blisko plaży request(extra.distance.beach)
system Znajduje się w odległości 200 metrów od plaży. inform(extra.distance.beach=0.2)
user Dziękuję. W takim razie chcialbym go zarezerwowac affirm()&bye()
1 role value act
2 system Dzień dobry, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
3 user chciałbym zarezerować jak najtańszy hotel all-inclusive na Wyspach Kanaryjskich inform(price='cheapest', place='Canary Island', extra.all-inclusive=true)
4 system Jaki termin Cię interesuje? request(date)
5 user 01.09-10.09 tego roku inform(date.from=01.09.2024, date.to=10.09.2024)
6 system Mogę zaproponować Hotel Noelia, w którym pokój dwuosobowy w podanym przez Ciebie terminie kosztuje 367 zł. inform(people=2, price=367)&offer(hotel='Hotel Noelia')
7 user Czy jest blisko plaży request(extra.distance.beach)
8 system Znajduje się w odległości 200 metrów od plaży. inform(extra.distance.beach=0.2)
9 user Dziękuję. W takim razie chcialbym go zarezerwowac affirm()&bye()

15
data/dialog-02-05-01.tsv Normal file
View File

@ -0,0 +1,15 @@
role value act
system Dzień dobry, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
user Chciałbym zarezerwować pokój dla jednej osoby niedaleko gór sowich. Cena ma nie przekraczać 200zł za dobę oraz musi być zapewniona możliwość śniadania na miejscu inform(people=1, place='Góry Sowie', price.perDay.max=200, extra.breakfastIncluded=true)
"system " Jaki termin Cię interesuje? request(date)
user 29-31 marca request(date.from=29.03, date.to=31.03)
system "W podanym terminie mógłbym zaproponować 3-gwiazdkowy hotel ""Dom pod Twierdzą"" w cenie 190 zł za dobę. W hotelu jest restauracja oferująca posiłki, w tym śniadania, jednak nie są one uwzględnione w cenie hotelu." inform(extra.star=3,extra.restaurant=true, extra.breaksaftIncluded=false, price=190)&offer(hotel='Dom pod Twierdza')
user A czy znalazłbyś ofertę, która uwzględnia posiłki w cenie pokoju? inform(extra.breakfastIncluded=true)&reqalts()
system "Znalazłem hotel ""Rezydencja Klonowa"", ale przekracza on nieco Twoje wymagania. Cena za dobę wraz ze śniadaniem wynosi 214 zł." inform(price=214)&offer(hotel='Rezydencja Klonowa')
user Czy bardziej opłaca się pierwszy wybór z dokupionym śniadaniem czy drugi z wliczonym? reqmore(hotel)
system W pierwszej opcji śniadanie kosztuje 35 zł. Zatem całkowity koszt za dobę wyniesie więcej niż w przypadku drugiej opcji. inform(extra.breakfast.price=35)
user Tak więc chciałbym zarezerwować drugą opcję inform(extra.option=2)&affirm()
system Proszę o podanie swoich danych: imię i nazwisko, numer telefonu i adres email. request(data[firstName, lastName, phoneNumber, email])
user Warol Kojtyła, +379 213 769 420, john_paul_ii@vatican.va inform((data[name, phoneNumber, email] = [Warol Kojtyła, '+379 213 769 420', 'john_paul_ii@vatican.va']
system Numer Twojej rezerwacji to 3453221512. Pamiętaj, o tym, żeby ją opłacić maksymalnie 3 dni przed przyjazdem. W przeciwnym wypadku zostanie ona anulowana. inform(extra.reservationNumber='3453221512', extra.payment.date='minimum 3 days before arrival')
user Dziękuję za rezerwację bye()
1 role value act
2 system Dzień dobry, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
3 user Chciałbym zarezerwować pokój dla jednej osoby niedaleko gór sowich. Cena ma nie przekraczać 200zł za dobę oraz musi być zapewniona możliwość śniadania na miejscu inform(people=1, place='Góry Sowie', price.perDay.max=200, extra.breakfastIncluded=true)
4 system Jaki termin Cię interesuje? request(date)
5 user 29-31 marca request(date.from=29.03, date.to=31.03)
6 system W podanym terminie mógłbym zaproponować 3-gwiazdkowy hotel "Dom pod Twierdzą" w cenie 190 zł za dobę. W hotelu jest restauracja oferująca posiłki, w tym śniadania, jednak nie są one uwzględnione w cenie hotelu. inform(extra.star=3,extra.restaurant=true, extra.breaksaftIncluded=false, price=190)&offer(hotel='Dom pod Twierdza')
7 user A czy znalazłbyś ofertę, która uwzględnia posiłki w cenie pokoju? inform(extra.breakfastIncluded=true)&reqalts()
8 system Znalazłem hotel "Rezydencja Klonowa", ale przekracza on nieco Twoje wymagania. Cena za dobę wraz ze śniadaniem wynosi 214 zł. inform(price=214)&offer(hotel='Rezydencja Klonowa')
9 user Czy bardziej opłaca się pierwszy wybór z dokupionym śniadaniem czy drugi z wliczonym? reqmore(hotel)
10 system W pierwszej opcji śniadanie kosztuje 35 zł. Zatem całkowity koszt za dobę wyniesie więcej niż w przypadku drugiej opcji. inform(extra.breakfast.price=35)
11 user Tak więc chciałbym zarezerwować drugą opcję inform(extra.option=2)&affirm()
12 system Proszę o podanie swoich danych: imię i nazwisko, numer telefonu i adres email. request(data[firstName, lastName, phoneNumber, email])
13 user Warol Kojtyła, +379 213 769 420, john_paul_ii@vatican.va inform((data[name, phoneNumber, email] = [Warol Kojtyła, '+379 213 769 420', 'john_paul_ii@vatican.va']
14 system Numer Twojej rezerwacji to 3453221512. Pamiętaj, o tym, żeby ją opłacić maksymalnie 3 dni przed przyjazdem. W przeciwnym wypadku zostanie ona anulowana. inform(extra.reservationNumber='3453221512', extra.payment.date='minimum 3 days before arrival')
15 user Dziękuję za rezerwację bye()

21
data/dialog-02-07-01.tsv Normal file
View File

@ -0,0 +1,21 @@
role value act
system Cześć, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
user Szukam wolnych pokoi na ten weekend w Szklarskiej Porębie lub w jej okolicy. Czy mógłbyś coś dla mnie odszukać? inform(place='Szklarska Poreba', date='this weekend')
system Dla ilu osób mają być pokoje? request(people)
user Pokój dla 4 osób inform(people=4)
system W najbliższy weekend nie ma niestety dostępnych pokoi 4-osobowych. Mogę zaproponować 2 pokoje 2-osobowe albo poszukać w późniejszym terminie. canthelp(room.people=4)&inform(room.people=2, room.number=2)
user A jaki inny termin mógłbyś zaproponować? request(date)
system W terminie 30-31 marca jest dostępny pokój 4-osobowy w hotelu Blue Mountain Resort. Cena za dobę wynosi 431 zł.  inform(date.from=30.03, date.to=31.03, room.people=4, price.perDay=431)&offer('Blue Mountain Resort')
user A czy znajdzie się coś tańszego? inform(price='cheaper')&reqalts()
system Znalazłem również hotel Kryształ w cenie 340 zł za dobę, jednak jest on w nieco niższym standardzie. inform(price.perDay=340, extra.standard='lower')&offer(hotel='Kryształ')
user Ile ma gwiazdek? request(star)
system Hotel jest 3-gwiazdkowy. inform(star=3)
user Może być. Chciałbym zarezerwować ten pokój w terminie 30-31 marca. Czy jest możliwość dokupienia śniadania? inform(date.from=30.03, date.to=31.03)&affirm()&request(breakfast)
system Jest możliwość dokupienia śniadania w cenie 39,31 zł za dzień. W celu stworzenia rezerwacji potrzebuję Twoje dane: imię i nazwisko, numer telefonu oraz email. inform(breakfast.price=39,31)&request(data[firstName, lastName, phoneNumber, email])
user W takim razie poproszę o dokupienie śniadania na cały pobyt. inform(breakfast=true)
user Dane do rezerwacji: Michał Gulczyński, 123456789, adres@gmail.com inform(data[name, phoneNumber, email] = ['Michał Gulczyński', '123456789', 'adres@gmail.com']
system Numer Twojej rezerwacji to 3453221513. Pamiętaj, o tym, żeby ją opłacić maksymalnie 3 dni przed przyjazdem. W przeciwnym wypadku zostanie ona anulowana. inform(extra.reservationNumber='3453221512', extra.payment.date='minimum 3 days before arrival')
user Ok, dziękuję za informacje thankyou()
user Czy mógłbyś mi jeszcze podać godziny zameldowania i wymeldowania? request(extra.check-in, extra.check-out)
system Doba hotelowa jest w godzinach 15:00-10:00. inform(extra.check-in=15:00, extra=check.out=10:00)
user Ok, dziękuję za pomoc bye()
1 role value act
2 system Cześć, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
3 user Szukam wolnych pokoi na ten weekend w Szklarskiej Porębie lub w jej okolicy. Czy mógłbyś coś dla mnie odszukać? inform(place='Szklarska Poreba', date='this weekend')
4 system Dla ilu osób mają być pokoje? request(people)
5 user Pokój dla 4 osób inform(people=4)
6 system W najbliższy weekend nie ma niestety dostępnych pokoi 4-osobowych. Mogę zaproponować 2 pokoje 2-osobowe albo poszukać w późniejszym terminie. canthelp(room.people=4)&inform(room.people=2, room.number=2)
7 user A jaki inny termin mógłbyś zaproponować? request(date)
8 system W terminie 30-31 marca jest dostępny pokój 4-osobowy w hotelu Blue Mountain Resort. Cena za dobę wynosi 431 zł.  inform(date.from=30.03, date.to=31.03, room.people=4, price.perDay=431)&offer('Blue Mountain Resort')
9 user A czy znajdzie się coś tańszego? inform(price='cheaper')&reqalts()
10 system Znalazłem również hotel Kryształ w cenie 340 zł za dobę, jednak jest on w nieco niższym standardzie. inform(price.perDay=340, extra.standard='lower')&offer(hotel='Kryształ')
11 user Ile ma gwiazdek? request(star)
12 system Hotel jest 3-gwiazdkowy. inform(star=3)
13 user Może być. Chciałbym zarezerwować ten pokój w terminie 30-31 marca. Czy jest możliwość dokupienia śniadania? inform(date.from=30.03, date.to=31.03)&affirm()&request(breakfast)
14 system Jest możliwość dokupienia śniadania w cenie 39,31 zł za dzień. W celu stworzenia rezerwacji potrzebuję Twoje dane: imię i nazwisko, numer telefonu oraz email. inform(breakfast.price=39,31)&request(data[firstName, lastName, phoneNumber, email])
15 user W takim razie poproszę o dokupienie śniadania na cały pobyt. inform(breakfast=true)
16 user Dane do rezerwacji: Michał Gulczyński, 123456789, adres@gmail.com inform(data[name, phoneNumber, email] = ['Michał Gulczyński', '123456789', 'adres@gmail.com']
17 system Numer Twojej rezerwacji to 3453221513. Pamiętaj, o tym, żeby ją opłacić maksymalnie 3 dni przed przyjazdem. W przeciwnym wypadku zostanie ona anulowana. inform(extra.reservationNumber='3453221512', extra.payment.date='minimum 3 days before arrival')
18 user Ok, dziękuję za informacje thankyou()
19 user Czy mógłbyś mi jeszcze podać godziny zameldowania i wymeldowania? request(extra.check-in, extra.check-out)
20 system Doba hotelowa jest w godzinach 15:00-10:00. inform(extra.check-in=15:00, extra=check.out=10:00)
21 user Ok, dziękuję za pomoc bye()

16
data/dialog-02-09-01.tsv Normal file
View File

@ -0,0 +1,16 @@
role value act
system Dzień dobry, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
user Dzień dobry, chciałbym zarezerwować pokój dla 3 osób w Amsterdamie. Najlepiej, gdyby hotel znajdował się w miarę blisko metra i nie był za drogi. Nie musi być w centrum. inform(people=3, place='Amsterdam', price='cheap', extra.metro=true, extra.cityCentre=false)
system Znalazłem hotel, który może odpowiadać Twoim wymaganiom. Volkshotel leży na obrzeżach Amsterdamu i w odległości 200 metrów od niego znajduje się metro. Cena za dobę w tym hotelu wynosi 240 zł. inform(price=200, place='Amsterdam', extra.metro.distance=0.2, extra.suburbs=true)&offer(hotel='Volkshotel')
user Czy są tam wolne pokoje w dniach od 1 do 6 kwietnia? request(rooms, date.from=01.04, date.to=06.04)
system Tak, jest dostępny pokój 3-osobowy. inform(room.people=3)
user W takim razie poproszę o złożenie rezerwacji w tym hotelu na podane dni. affirm()
system Chciałbyś dokupić pakiet śniadań w cenie 29 zł za dobę za osobę? request(extra.breakfast, extra.breakfast.price=29)
user Nie, dziękuję. negate()
system Numer Twojej rezerwacji to 3453221512. Pamiętaj, o tym, żeby ją opłacić maksymalnie 3 dni przed przyjazdem. W przeciwnym wypadku zostanie ona anulowana. inform(extra.reservationNumber='3453221512', extra.payment.date='minimum 3 days before arrival')
1 role value act
2 system Dzień dobry, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
3 user Dzień dobry, chciałbym zarezerwować pokój dla 3 osób w Amsterdamie. Najlepiej, gdyby hotel znajdował się w miarę blisko metra i nie był za drogi. Nie musi być w centrum. inform(people=3, place='Amsterdam', price='cheap', extra.metro=true, extra.cityCentre=false)
4 system Znalazłem hotel, który może odpowiadać Twoim wymaganiom. Volkshotel leży na obrzeżach Amsterdamu i w odległości 200 metrów od niego znajduje się metro. Cena za dobę w tym hotelu wynosi 240 zł. inform(price=200, place='Amsterdam', extra.metro.distance=0.2, extra.suburbs=true)&offer(hotel='Volkshotel')
5 user Czy są tam wolne pokoje w dniach od 1 do 6 kwietnia? request(rooms, date.from=01.04, date.to=06.04)
6 system Tak, jest dostępny pokój 3-osobowy. inform(room.people=3)
7 user W takim razie poproszę o złożenie rezerwacji w tym hotelu na podane dni. affirm()
8 system Chciałbyś dokupić pakiet śniadań w cenie 29 zł za dobę za osobę? request(extra.breakfast, extra.breakfast.price=29)
9 user Nie, dziękuję. negate()
10 system Numer Twojej rezerwacji to 3453221512. Pamiętaj, o tym, żeby ją opłacić maksymalnie 3 dni przed przyjazdem. W przeciwnym wypadku zostanie ona anulowana. inform(extra.reservationNumber='3453221512', extra.payment.date='minimum 3 days before arrival')

16
data/dialog-02-11-01.tsv Normal file
View File

@ -0,0 +1,16 @@
role value act
system Hej, jestem systemem dialogowym, który pomoże Ci zarezerwować pokój hotelowy. Co mogę dla Ciebie zrobić? welcomemsg()
user Chciałbym wylecieć do las vegas na tydzień, w moim hotelu musi być kasyno ale cena za noc na osobę nie może przekroczyć $100 inform(place='Las Vegas', extra.duration='one week', extra.casino=true, price.perDay.max=100, price.currency='dollar')
system Niestety nie mogę zaproponować hotelu, który odpowiadałby Twoim oczekiwaniom. Najtańsza opcja w okolicy wynosi $167. canthelp(price)&inform(price.perDay.min=147, price.currency='dollar')
user Kurcze, jak sprawdzałem na bookingu to wydawało mi sie ze nie ma z tym problemu. Sprawdź jeszcze raz na 11-14 kwietnia np  Ellis Island Hotel Casino & Brewery restart()&inform(date.from=11.04, date.to=14.04, hotel='Ellis Island Hotel Casino & Brewery')
system Przepraszam, za wprowadzenie w błąd. Rzeczywiście ten hotel oferuje niższe ceny. Czy chciałbyś zarezerwować w nim nocleg? affirm()&request(reservation)
user tak, na 3 noce od 11 kwietnia affirm()
system W celu stworzenia rezerwacji potrzebuję Twoje dane: imię i nazwisko, numer telefonu oraz email. request(data[firstName, lastName, phoneNumber, email])
user Karol Cyganik 12345677 ksuevkj@nf.com inform(data[name, phoneNumber, email] = ['Karol Cyganik', '12345677', 'ksuevkj@nf.com']
system Numer Twojej rezerwacji to 3453221514. Pamiętaj, o tym, żeby ją opłacić maksymalnie 3 dni przed przyjazdem. W przeciwnym wypadku zostanie ona anulowana. inform(extra.reservationNumber='3453221514', extra.payment.date='minimum 3 days before arrival')
1 role value act
2 system Hej, jestem systemem dialogowym, który pomoże Ci zarezerwować pokój hotelowy. Co mogę dla Ciebie zrobić? welcomemsg()
3 user Chciałbym wylecieć do las vegas na tydzień, w moim hotelu musi być kasyno ale cena za noc na osobę nie może przekroczyć $100 inform(place='Las Vegas', extra.duration='one week', extra.casino=true, price.perDay.max=100, price.currency='dollar')
4 system Niestety nie mogę zaproponować hotelu, który odpowiadałby Twoim oczekiwaniom. Najtańsza opcja w okolicy wynosi $167. canthelp(price)&inform(price.perDay.min=147, price.currency='dollar')
5 user Kurcze, jak sprawdzałem na bookingu to wydawało mi sie ze nie ma z tym problemu. Sprawdź jeszcze raz na 11-14 kwietnia np  Ellis Island Hotel Casino & Brewery restart()&inform(date.from=11.04, date.to=14.04, hotel='Ellis Island Hotel Casino & Brewery')
6 system Przepraszam, za wprowadzenie w błąd. Rzeczywiście ten hotel oferuje niższe ceny. Czy chciałbyś zarezerwować w nim nocleg? affirm()&request(reservation)
7 user tak, na 3 noce od 11 kwietnia affirm()
8 system W celu stworzenia rezerwacji potrzebuję Twoje dane: imię i nazwisko, numer telefonu oraz email. request(data[firstName, lastName, phoneNumber, email])
9 user Karol Cyganik 12345677 ksuevkj@nf.com inform(data[name, phoneNumber, email] = ['Karol Cyganik', '12345677', 'ksuevkj@nf.com']
10 system Numer Twojej rezerwacji to 3453221514. Pamiętaj, o tym, żeby ją opłacić maksymalnie 3 dni przed przyjazdem. W przeciwnym wypadku zostanie ona anulowana. inform(extra.reservationNumber='3453221514', extra.payment.date='minimum 3 days before arrival')

16
data/dialog-02-13-01.tsv Normal file
View File

@ -0,0 +1,16 @@
role value act
"system " Cześć, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
user Czy system ten skupia się na konkretnej sieci hoteli czy skupiasz się na całym rynku ofert? request(extra.specificHotel)
system W swojej ofercie mam posiadam bardzo wiele hoteli, nie tylko z konkretnej sieci. inform(specificHotel=false)
user Wybornie planuje wyjazd do Lizbony czy mógłbyś znależć coś ciekawego? inform(place='Lizbona')
system Jaki termin Cię interesuje i dla ilu osób? request(date, people)
user Coś na końcówkę marca dla 5 osób. inform(date='end of March, people=5)
system Mogę zaproponować pokój 5-osobowy w hotelu Lisboa w terminie 28-31 marca. Cena za dobę wynosi 506 zł za cały pokój. inform(room.people=5, date.from=28.03, date.to=31.03, price.perDay.perRoom=506)&offer(hotel='hotel Lisboa')
user Jest to cena jednostkowa czy za całą grupę? request(price.perDay.perRoom)
system Jest to cena za całą grupę.  inform(price.perDay.perRoom=true)
user A czy wiadomo jaki metraż jest tego pokoju i czy ma więcej niż jedną łazienkę? request(room.size, extra.bathroom.number='more than one')
system Pokój ma 48 metrów kwadratowych i posiada jedną łazienkę. inform(room.size=48, extra.bathroom.number=1)
user A czy w cenie do 700 zł znalazłby się pokój nieco większy, ale z dwoma łazienkami? inform(price=700, extra.bathroom.number=2)
1 role value act
2 system Cześć, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
3 user Czy system ten skupia się na konkretnej sieci hoteli czy skupiasz się na całym rynku ofert? request(extra.specificHotel)
4 system W swojej ofercie mam posiadam bardzo wiele hoteli, nie tylko z konkretnej sieci. inform(specificHotel=false)
5 user Wybornie planuje wyjazd do Lizbony czy mógłbyś znależć coś ciekawego? inform(place='Lizbona')
6 system Jaki termin Cię interesuje i dla ilu osób? request(date, people)
7 user Coś na końcówkę marca dla 5 osób. inform(date='end of March, people=5)
8 system Mogę zaproponować pokój 5-osobowy w hotelu Lisboa w terminie 28-31 marca. Cena za dobę wynosi 506 zł za cały pokój. inform(room.people=5, date.from=28.03, date.to=31.03, price.perDay.perRoom=506)&offer(hotel='hotel Lisboa')
9 user Jest to cena jednostkowa czy za całą grupę? request(price.perDay.perRoom)
10 system Jest to cena za całą grupę.  inform(price.perDay.perRoom=true)
11 user A czy wiadomo jaki metraż jest tego pokoju i czy ma więcej niż jedną łazienkę? request(room.size, extra.bathroom.number='more than one')
12 system Pokój ma 48 metrów kwadratowych i posiada jedną łazienkę. inform(room.size=48, extra.bathroom.number=1)
13 user A czy w cenie do 700 zł znalazłby się pokój nieco większy, ale z dwoma łazienkami? inform(price=700, extra.bathroom.number=2)

19
data/dialog-03-02-01.tsv Normal file
View File

@ -0,0 +1,19 @@
role value act
user Dzień dobry hello()
system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
user Chciałbym wyjechać z rodziną w góry. Nie mam konkretnego kierunku, ale ważne, żeby w okolicy były trasy, na które można iść z dziećmi. inform(place='mountains', extra='routesForChildren')
system W jakim terminie chciałby Pan zarezerwować pokój? request(date)
user 19-28 lipca inform(date.from=19.07, date.to=28.07)
system Dla ilu osób chciałbyś zarezerwować pokój? request(people)
user Dla 2 dorosłych i 2 dzieci inform(people.adult=2,people.kids=2)
system "Proponuję ""Pokój rodzinny typu Standard z łóżkiem typu queen-size i rozkładaną sofą"" w hotelu Kyriad KARKONOSZE:
https://www.booking.com/Share-FkDy62
Dobrym rozwiązaniem dla rodziców z dziećmi będzie skorzystanie z kolejki na Szrenicę i spacer karkonoskim grzbietem, lub wybranie szlaku w dolinach, np. na Chybotek i Złoty Widok w Szklarskiej Porębie" offer(room='Pokój rodzinny typu Standard z łóżkiem typu queen-size i rozkładaną sofą', hotel='Kyriad KARKONOSZE', extra.link='https://www.booking.com/Share-FkDy62')
user Czy ten hotel ma restaurację oferującą posiłki dla klientów? request(extra.restaurant)
system Oferta obiektu obejmuje restaurację. Śniadanie wliczone jest w cenę. inform(extra.restaurant=true, extra.breakfastIncluded=true)
user Jaka jest cena pobytu? request(price)
system Łączna cena pobytu to 6 921 zł inform(price=6921)
user A jaka jest cena pobytu w pokoju 2-osobowym? request(room=1, people=2)
system Cena rezerwacji jednego pokoju 2-osobowego to 4 771 zł inform(price=4771)
user W takim razie proszę zarezerwować jeden pokój dwuosobowy affirm()
1 role value act
2 user Dzień dobry hello()
3 system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
4 user Chciałbym wyjechać z rodziną w góry. Nie mam konkretnego kierunku, ale ważne, żeby w okolicy były trasy, na które można iść z dziećmi. inform(place='mountains', extra='routesForChildren')
5 system W jakim terminie chciałby Pan zarezerwować pokój? request(date)
6 user 19-28 lipca inform(date.from=19.07, date.to=28.07)
7 system Dla ilu osób chciałbyś zarezerwować pokój? request(people)
8 user Dla 2 dorosłych i 2 dzieci inform(people.adult=2,people.kids=2)
9 system Proponuję "Pokój rodzinny typu Standard z łóżkiem typu queen-size i rozkładaną sofą" w hotelu Kyriad KARKONOSZE: https://www.booking.com/Share-FkDy62 Dobrym rozwiązaniem dla rodziców z dziećmi będzie skorzystanie z kolejki na Szrenicę i spacer karkonoskim grzbietem, lub wybranie szlaku w dolinach, np. na Chybotek i Złoty Widok w Szklarskiej Porębie offer(room='Pokój rodzinny typu Standard z łóżkiem typu queen-size i rozkładaną sofą', hotel='Kyriad KARKONOSZE', extra.link='https://www.booking.com/Share-FkDy62')
10 user Czy ten hotel ma restaurację oferującą posiłki dla klientów? request(extra.restaurant)
11 system Oferta obiektu obejmuje restaurację. Śniadanie wliczone jest w cenę. inform(extra.restaurant=true, extra.breakfastIncluded=true)
12 user Jaka jest cena pobytu? request(price)
13 system Łączna cena pobytu to 6 921 zł inform(price=6921)
14 user A jaka jest cena pobytu w pokoju 2-osobowym? request(room=1, people=2)
15 system Cena rezerwacji jednego pokoju 2-osobowego to 4 771 zł inform(price=4771)
16 user W takim razie proszę zarezerwować jeden pokój dwuosobowy affirm()

20
data/dialog-03-04-01.tsv Normal file
View File

@ -0,0 +1,20 @@
role value act
user Hej, w czym mozesz mi pomoc? hello()
system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
user Jakie macie dostępne pokoje na dzisiejszy wieczór? inform(date.from=29.03, date.to=31.03)
system Gdzie chciałby Pan zarezerwować pokój? request(place)
user Pod berlinem koło tego kurortu z basenami i zjedzalniami inform(place.description='close to resort with swimming pools and water slides near Berlin')
system Czy masz na myśli kurort Tropical Island? reqmore(place='Tropical Island')
user Tak affirm()
system Dla ilu osób chciałbyś zarezerwować pokój? request(people)
user Dla 2, dla mnie i dla koleżanki którą znajde na trasie inform(people.adult=2)
system Czy masz jakieś dodatkowe ograniczenia odnośnie standardu hotelu i pokoju? request(extra)
user a jakie mogą być? request(extra.options)
system Mogą dotyczyć na przykład posiłków wliczonych w cenę, prywatnej łazienki, ceny, basenu inform(extra.options.examples='meals included, private bathroom, price, swimming pool')
user czy prywatna łazienka nie jest standardem wszedzie? request(extra.privateBathroom)
system Prywatna łazienka nie zawsze jest dostępna. Istnieją hotele umożliwiające pobyt we współdzielonych pokojach inform(extra.privateBathroom)
user Chciałbym prywatną łazienkę, jakuzi i ładny widok z okna inform(extra.privateBathroom=true, extra.jacuzzi=true, extra.niceView=true)
system "Proponuję pokój Apartament z 1 sypialnią w hotelu Bei der Kahnfährfrau... NEU ERSTVERMIETUNG:
https://www.booking.com/Share-okeCY4" offer(room='Apartament z 1 sypialnią', hotel='Bei der Kahnfährfrau... NEU ERSTVERMIETUNG', extra.link='https://www.booking.com/Share-okeCY4')
user idealny affirm()
user chciałbym go zarezerwować affirm()
1 role value act
2 user Hej, w czym mozesz mi pomoc? hello()
3 system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
4 user Jakie macie dostępne pokoje na dzisiejszy wieczór? inform(date.from=29.03, date.to=31.03)
5 system Gdzie chciałby Pan zarezerwować pokój? request(place)
6 user Pod berlinem koło tego kurortu z basenami i zjedzalniami inform(place.description='close to resort with swimming pools and water slides near Berlin')
7 system Czy masz na myśli kurort Tropical Island? reqmore(place='Tropical Island')
8 user Tak affirm()
9 system Dla ilu osób chciałbyś zarezerwować pokój? request(people)
10 user Dla 2, dla mnie i dla koleżanki którą znajde na trasie inform(people.adult=2)
11 system Czy masz jakieś dodatkowe ograniczenia odnośnie standardu hotelu i pokoju? request(extra)
12 user a jakie mogą być? request(extra.options)
13 system Mogą dotyczyć na przykład posiłków wliczonych w cenę, prywatnej łazienki, ceny, basenu inform(extra.options.examples='meals included, private bathroom, price, swimming pool')
14 user czy prywatna łazienka nie jest standardem wszedzie? request(extra.privateBathroom)
15 system Prywatna łazienka nie zawsze jest dostępna. Istnieją hotele umożliwiające pobyt we współdzielonych pokojach inform(extra.privateBathroom)
16 user Chciałbym prywatną łazienkę, jakuzi i ładny widok z okna inform(extra.privateBathroom=true, extra.jacuzzi=true, extra.niceView=true)
17 system Proponuję pokój Apartament z 1 sypialnią w hotelu Bei der Kahnfährfrau... NEU ERSTVERMIETUNG: https://www.booking.com/Share-okeCY4 offer(room='Apartament z 1 sypialnią', hotel='Bei der Kahnfährfrau... NEU ERSTVERMIETUNG', extra.link='https://www.booking.com/Share-okeCY4')
18 user idealny affirm()
19 user chciałbym go zarezerwować affirm()

14
data/dialog-03-06-01.tsv Normal file
View File

@ -0,0 +1,14 @@
role value act
user Dzień dobry hello()
system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
user Czy moge zarezerwowac pokoj poza Polska? request(place='abroad')
system Może Pan zarezerwować pokój w dowolnej lokalizacji, także poza Polską inform(place='abroad')
user Dobrze, poprosze o pokoj w Monacium, w okolicach lotniska, dla 2 osob, lozko polaczone. Czas dojazdu z hotelu do lotniska max 15 min inform(place='Monacium', people=2, beds.double=1, extra.place='maximum 15 minutes from airport')
system Czy masz na myśli Monachium? reqmore(place='Monachium')
user Tak, monachium bawaria affirm()
system W jakim terminie chciałby Pan zarezerwować pokój? request(date)
user 24-25.06.2024 inform(date.from=24.06, date.to=25.06)
system "Proponuję pokój """"Pokój z łóżkiem typu king-size"""" w hotelu Hilton Munich Airport:
https://www.booking.com/Share-UZMQSL" offer(room='Pokój z łóżkiem typu king-size', hotel='Hilton Munich Airport', link='https://www.booking.com/Share-UZMQSL')
user suoper, bardzo dziękuję. thankyou()
system Cieszę się, że mogłem pomóc bye()
1 role value act
2 user Dzień dobry hello()
3 system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
4 user Czy moge zarezerwowac pokoj poza Polska? request(place='abroad')
5 system Może Pan zarezerwować pokój w dowolnej lokalizacji, także poza Polską inform(place='abroad')
6 user Dobrze, poprosze o pokoj w Monacium, w okolicach lotniska, dla 2 osob, lozko polaczone. Czas dojazdu z hotelu do lotniska max 15 min inform(place='Monacium', people=2, beds.double=1, extra.place='maximum 15 minutes from airport')
7 system Czy masz na myśli Monachium? reqmore(place='Monachium')
8 user Tak, monachium bawaria affirm()
9 system W jakim terminie chciałby Pan zarezerwować pokój? request(date)
10 user 24-25.06.2024 inform(date.from=24.06, date.to=25.06)
11 system Proponuję pokój ""Pokój z łóżkiem typu king-size"" w hotelu Hilton Munich Airport: https://www.booking.com/Share-UZMQSL offer(room='Pokój z łóżkiem typu king-size', hotel='Hilton Munich Airport', link='https://www.booking.com/Share-UZMQSL')
12 user suoper, bardzo dziękuję. thankyou()
13 system Cieszę się, że mogłem pomóc bye()

16
data/dialog-03-08-01.tsv Normal file
View File

@ -0,0 +1,16 @@
role value act
user Siema, w czym możesz mi pomóc? hello()
system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
user Chciałbym zarezerwować hotel od piątku do niedzieli w Warszawie, jakie hotele proponujesz? inform(date.description='friday to sunday', place='Warsaw')
system Czy masz na myśli piątek i sobotę w bieżącym tygodniu (29.03-31.03)? reqmore(date.from=29.03, date.to=31.03)
user Tak affirm()
system Czy masz jakieś dodatkowe ograniczenia odnośnie standardu hotelu i pokoju? request(extra)
user Chciałbym żeby standard był jak najwyższy. inform(extra.standard='highest')
system Dla ilu osób chciałbyś zarezerwować pokój? request(people)
user Chciałbym dokonąć rezeracji dla dwóch osób. inform(people=2)
system "Proponuję pokój Raffles Room w Raffles Europejski Warsaw
https://www.raffles.com/warsaw/booking/#/booking/rooms/KGA?data=('hDhd!'a7w6'~aeA295dtA315fs-~rDat!2~cn!0~cg-~alBpo.gp.rn-)Cry.rk.re-~rr*)Cax!0~cy.ds!('pe.ls.as.st*)~myBse.ce.ne*)*!null-8%5D.*~5%2F2024'~8!%5BA!'03%2FB!false~C%5D~Ds8('%01DCBA85.-*_" offer(room='Raffles Room', hotel='Raffles Europejski Warsaw', extra.link='https://www.booking.com/Share-FkDy62', link='https://www.raffles.com/warsaw/booking/#/booking/rooms/KGA?data=('hDhd!'a7w6'~aeA295dtA315fs-~rDat!2~cn!0~cg-~alBpo.gp.rn-)Cry.rk.re-~rr*)Cax!0~cy.ds!('pe.ls.as.st*)~myBse.ce.ne*)*!null-8%5D.*~5%2F2024'~8!%5BA!'03%2FB!false~C%5D~Ds8('%01DCBA85.-*_')
user Brzmi dobrze, a jaki będzie koszt? request(price)
system Przewidywany całkowity koszt: 3,220 zł inform(price=3220)
user Okej, dziękuję za pomoc thankyou()
system Cieszę się, że mogłem pomóc bye()
1 role value act
2 user Siema, w czym możesz mi pomóc? hello()
3 system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
4 user Chciałbym zarezerwować hotel od piątku do niedzieli w Warszawie, jakie hotele proponujesz? inform(date.description='friday to sunday', place='Warsaw')
5 system Czy masz na myśli piątek i sobotę w bieżącym tygodniu (29.03-31.03)? reqmore(date.from=29.03, date.to=31.03)
6 user Tak affirm()
7 system Czy masz jakieś dodatkowe ograniczenia odnośnie standardu hotelu i pokoju? request(extra)
8 user Chciałbym żeby standard był jak najwyższy. inform(extra.standard='highest')
9 system Dla ilu osób chciałbyś zarezerwować pokój? request(people)
10 user Chciałbym dokonąć rezeracji dla dwóch osób. inform(people=2)
11 system Proponuję pokój Raffles Room w Raffles Europejski Warsaw https://www.raffles.com/warsaw/booking/#/booking/rooms/KGA?data=('hDhd!'a7w6'~aeA295dtA315fs-~rDat!2~cn!0~cg-~alBpo.gp.rn-)Cry.rk.re-~rr*)Cax!0~cy.ds!('pe.ls.as.st*)~myBse.ce.ne*)*!null-8%5D.*~5%2F2024'~8!%5BA!'03%2FB!false~C%5D~Ds8('%01DCBA85.-*_ offer(room='Raffles Room', hotel='Raffles Europejski Warsaw', extra.link='https://www.booking.com/Share-FkDy62', link='https://www.raffles.com/warsaw/booking/#/booking/rooms/KGA?data=('hDhd!'a7w6'~aeA295dtA315fs-~rDat!2~cn!0~cg-~alBpo.gp.rn-)Cry.rk.re-~rr*)Cax!0~cy.ds!('pe.ls.as.st*)~myBse.ce.ne*)*!null-8%5D.*~5%2F2024'~8!%5BA!'03%2FB!false~C%5D~Ds8('%01DCBA85.-*_')
12 user Brzmi dobrze, a jaki będzie koszt? request(price)
13 system Przewidywany całkowity koszt: 3,220 zł inform(price=3220)
14 user Okej, dziękuję za pomoc thankyou()
15 system Cieszę się, że mogłem pomóc bye()

30
data/dialog-03-12-01.tsv Normal file
View File

@ -0,0 +1,30 @@
role value act
user witam hello()
system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
user witam chciałbym zarezerować pokój czy są jakies ograniczenia do lokalizacji, które mogę wybrać ? request(place)
system Nie ma ograniczeń związanych z lokalizacją inform(place='everywhere')
user mogą być poza granicami Polski ? request(place='abroad')
system Może Pan zarezerwować pokój w dowolnej lokalizacji, także poza Polską affirm()
user chciałbym zarezerwować hotel w Atenach dla 5 osób "inform(place=""Athens"", people=5)"
system Czy masz jakieś dodatkowe ograniczenia odnośnie standardu hotelu i pokoju? request(extra)
user trzy-cztero gwiazdkowy najlepiej ze szwedzkim stołem na sniadanie i kolacje inform(extra.stars=[3,4], extra.breakfastIncluded=true, extra.dinnerIncluded=true)
system W jakim terminie chciałby Pan zarezerwować pokój? request(date)
user sierpien-wrzesien inform(date=[august, september])
system Na ile dni chciałbyś zarezerwować pokój? request(date.days)
user tydzien inform(date.days=7)
system "Proponuję hotel Athens Golden City Hotel:
https://www.booking.com/Share-4wMNmO" offer(hotel='Athens Golden City Hotel', link='https://www.booking.com/Share-4wMNmO')
user wyglada obiecujace, ale potrzebowałbym do porownania jeszcze z czterech reqmore(propositions=4)
system "Dobrze, przesyłam kolejne propozycje:
https://www.booking.com/Share-bv5n7Kp
https://www.booking.com/Share-cxIESm
https://www.booking.com/Share-yNDZQ3
https://www.booking.com/Share-95dW4Jy" offer(links=['https://www.booking.com/Share-bv5n7Kp','https://www.booking.com/Share-cxIESm','https://www.booking.com/Share-yNDZQ3','https://www.booking.com/Share-95dW4Jy'])
user Savoy Hotel odpowiadaa mi czy panstwo wspołpracujecie z hotelem i moge liczyc na dodatkowy rabat ? inform(hotel='Savoy Hotel')&request(discount)
system Niestety nie współpracujemy z hotelem i nie jesteśmy w stanie zaoferować dodatkowego rabatu deny()
user okej to nadal Savoy Hotel inform(hotel='Savoy Hotel')
system "Czy dokonać rezerwacji pokoi ""Pokój typu Classic z 2 łóżkami pojedynczymi"" i ""Apartament typu Suite z 1 sypialnią"" w hotelu Savoy Hotel w terminie 02.09.2024 - 09.09.2024 w cenie 7 367 zł?" offer(rooms=['Pokój typu Classic z 2 łóżkami pojedynczymi','Apartament typu Suite z 1 sypialnią'], hotel='Savoy Hotel', date.from='02.09.2024', date.to='09.09.2024', price=7367)
user oczywiscie ze tak affirm()
system Dokonałem rezerwacji inform(reserved=true)
user dzieki thankyou()
system Cieszę się, że mogłem pomóc bye()
1 role value act
2 user witam hello()
3 system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg()
4 user witam chciałbym zarezerować pokój czy są jakies ograniczenia do lokalizacji, które mogę wybrać ? request(place)
5 system Nie ma ograniczeń związanych z lokalizacją inform(place='everywhere')
6 user mogą być poza granicami Polski ? request(place='abroad')
7 system Może Pan zarezerwować pokój w dowolnej lokalizacji, także poza Polską affirm()
8 user chciałbym zarezerwować hotel w Atenach dla 5 osób inform(place="Athens", people=5)
9 system Czy masz jakieś dodatkowe ograniczenia odnośnie standardu hotelu i pokoju? request(extra)
10 user trzy-cztero gwiazdkowy najlepiej ze szwedzkim stołem na sniadanie i kolacje inform(extra.stars=[3,4], extra.breakfastIncluded=true, extra.dinnerIncluded=true)
11 system W jakim terminie chciałby Pan zarezerwować pokój? request(date)
12 user sierpien-wrzesien inform(date=[august, september])
13 system Na ile dni chciałbyś zarezerwować pokój? request(date.days)
14 user tydzien inform(date.days=7)
15 system Proponuję hotel Athens Golden City Hotel: https://www.booking.com/Share-4wMNmO offer(hotel='Athens Golden City Hotel', link='https://www.booking.com/Share-4wMNmO')
16 user wyglada obiecujace, ale potrzebowałbym do porownania jeszcze z czterech reqmore(propositions=4)
17 system Dobrze, przesyłam kolejne propozycje: https://www.booking.com/Share-bv5n7Kp https://www.booking.com/Share-cxIESm https://www.booking.com/Share-yNDZQ3 https://www.booking.com/Share-95dW4Jy offer(links=['https://www.booking.com/Share-bv5n7Kp','https://www.booking.com/Share-cxIESm','https://www.booking.com/Share-yNDZQ3','https://www.booking.com/Share-95dW4Jy'])
18 user Savoy Hotel odpowiadaa mi czy panstwo wspołpracujecie z hotelem i moge liczyc na dodatkowy rabat ? inform(hotel='Savoy Hotel')&request(discount)
19 system Niestety nie współpracujemy z hotelem i nie jesteśmy w stanie zaoferować dodatkowego rabatu deny()
20 user okej to nadal Savoy Hotel inform(hotel='Savoy Hotel')
21 system Czy dokonać rezerwacji pokoi "Pokój typu Classic z 2 łóżkami pojedynczymi" i "Apartament typu Suite z 1 sypialnią" w hotelu Savoy Hotel w terminie 02.09.2024 - 09.09.2024 w cenie 7 367 zł? offer(rooms=['Pokój typu Classic z 2 łóżkami pojedynczymi','Apartament typu Suite z 1 sypialnią'], hotel='Savoy Hotel', date.from='02.09.2024', date.to='09.09.2024', price=7367)
22 user oczywiscie ze tak affirm()
23 system Dokonałem rezerwacji inform(reserved=true)
24 user dzieki thankyou()
25 system Cieszę się, że mogłem pomóc bye()

53
evaluate.py Normal file
View File

@ -0,0 +1,53 @@
import os
import pandas as pd
import re
from NaturalLanguageAnalyzer import NaturalLanguageAnalyzer
data_directory = 'data'
file_list = os.listdir(data_directory)
dfs = []
for file_name in file_list:
file_path = os.path.join(data_directory, file_name)
df = pd.read_csv(file_path, sep='\t', encoding='utf-8')
df_user = df[df['role'] == 'user'].drop('role', axis=1)
dfs.append(df_user)
combined_df = pd.concat(dfs, ignore_index=True)
change_act_format = {
"thankyou": "thank",
"bye": "thank",
"hello": "greet",
"inform": "inform",
"request": "request",
"reqmore": "request"
}
correct = 0
incorrect = 0
for text, ground_act in zip(combined_df["value"].values, combined_df["act"].values):
nla = NaturalLanguageAnalyzer()
nla_output = nla.predict(text)
predicted_act = set([i[0] for i in nla_output])
pattern = re.compile(r'([^(&]+)(?=\()')
matches = re.findall(pattern, ground_act)
ground_act_processed = set()
for match in matches:
if match in change_act_format:
ground_act_processed.add(change_act_format[match])
for i in ground_act_processed:
if i in predicted_act:
correct += 1
else:
incorrect += 1
print("Predicted:", predicted_act)
print("Ground truth:", ground_act_processed)
print()
accuracy = correct/(correct+incorrect)
print("Accuracy: ", accuracy)

254
hotels_data.json Normal file
View File

@ -0,0 +1,254 @@
[
{
"name": "Hotel Marriott",
"area": "centre",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "hotel"
},
{
"name": "Hotel Cambridge",
"area": "centre",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "hotel"
},
{
"name": "Hotel Belfry",
"area": "suburbs",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "hotel"
},
{
"name": "Aylesbray Guest House",
"area": "centre",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "guesthouse"
},
{
"name": "University Arms Hotel",
"area": "centre",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "hotel"
},
{
"name": "Lensfield Hotel",
"area": "north",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "hotel"
},
{
"name": "Autumn House Hotel",
"area": "east",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "guesthouse"
},
{
"name": "Finches Bed and Breakfast",
"area": "west",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "bed and breakfast"
},
{
"name": "Arbury Lodge Guest House",
"area": "north",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "guesthouse"
},
{
"name": "Royal Cambridge Hotel",
"area": "centre",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "hotel"
},
{
"name": "Hilton Hotel",
"area": "suburbs",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "hotel"
},
{
"name": "Holiday Inn Hotel",
"area": "centre",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "hotel"
},
{
"name": "Radisson Hotel",
"area": "centre",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "hotel"
},
{
"name": "Regent Guest House",
"area": "north",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "guesthouse"
},
{
"name": "Travelodge Hotel",
"area": "centre",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "hotel"
},
{
"name": "Premier Inn Hotel",
"area": "centre",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "hotel"
},
{
"name": "Ibis Hotel",
"area": "suburbs",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "hotel"
},
{
"name": "Novotel Hotel",
"area": "centre",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "hotel"
},
{
"name": "Mercure Hotel",
"area": "suburbs",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "hotel"
},
{
"name": "Crowne Plaza Hotel",
"area": "centre",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "hotel"
},
{
"name": "Best Western Hotel",
"area": "north",
"parking": "yes",
"price range": "cheap",
"stars": "4",
"internet": "yes",
"type": "hotel"
},
{
"name": "Marriott Hotel",
"area": "west",
"parking": "yes",
"price range": "expensive",
"stars": "5",
"internet": "yes",
"type": "hotel"
},
{
"name": "Hyatt Regency Hotel",
"area": "south",
"parking": "yes",
"price range": "expensive",
"stars": "5",
"internet": "yes",
"type": "hotel"
},
{
"name": "Four Seasons Hotel",
"area": "centre",
"parking": "yes",
"price range": "expensive",
"stars": "5",
"internet": "yes",
"type": "hotel"
},
{
"name": "The Ritz Hotel",
"area": "centre",
"parking": "yes",
"price range": "expensive",
"stars": "5",
"internet": "yes",
"type": "hotel"
},
{
"name": "The Savoy Hotel",
"area": "centre",
"parking": "yes",
"price range": "expensive",
"stars": "5",
"internet": "yes",
"type": "hotel"
},
{
"name": "Mandarin Oriental Hotel",
"area": "suburbs",
"parking": "yes",
"price range": "expensive",
"stars": "5",
"internet": "yes",
"type": "hotel"
},
{
"name": "Shangri-La Hotel",
"area": "centre",
"parking": "yes",
"price range": "expensive",
"stars": "5",
"internet": "yes",
"type": "hotel"
}
]

318
reguly.ipynb Normal file
View File

@ -0,0 +1,318 @@
{
"cells": [
{
"cell_type": "code",
"execution_count": 212,
"id": "706dd5e1-57ee-416b-a77c-5d15df8dbdc8",
"metadata": {},
"outputs": [],
"source": [
"from convlab.base_models.t5.nlu import T5NLU\n",
"import requests\n",
"\n",
"\n",
"def translate_text(text, target_language='en'):\n",
" url = 'https://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl={}&dt=t&q={}'.format(\n",
" target_language, text)\n",
" response = requests.get(url)\n",
" if response.status_code == 200:\n",
" translated_text = response.json()[0][0][0]\n",
" return translated_text\n",
" else:\n",
" return None\n",
"\n",
"\n",
"class NaturalLanguageAnalyzer: \n",
" def predict(self, text, context=None):\n",
" # Inicjalizacja modelu NLU\n",
" model_name = \"ConvLab/t5-small-nlu-multiwoz21\"\n",
" nlu_model = T5NLU(speaker='user', context_window_size=0, model_name_or_path=model_name)\n",
"\n",
" # Automatyczne tłumaczenie na język angielski\n",
" translated_input = translate_text(text)\n",
"\n",
" # Wygenerowanie odpowiedzi z modelu NLU\n",
" nlu_output = nlu_model.predict(translated_input)\n",
"\n",
" return nlu_output\n",
"\n",
" def init_session(self):\n",
" # Inicjalizacja sesji (jeśli konieczne)\n",
" pass"
]
},
{
"cell_type": "code",
"execution_count": 213,
"id": "06926543-cab1-48e7-8e82-0560fc0fa16a",
"metadata": {},
"outputs": [],
"source": [
"import json\n",
"import os\n",
"from convlab.dst.dst import DST\n",
"from convlab.dst.rule.multiwoz.dst_util import normalize_value\n",
"\n",
"\n",
"def default_state():\n",
" return {\n",
" 'belief_state': {\n",
" 'hotel': {\n",
" 'info': {\n",
" 'name': '',\n",
" 'area': '',\n",
" 'parking': '',\n",
" 'price range': '',\n",
" 'stars': '',\n",
" 'internet': '',\n",
" 'type': ''\n",
" },\n",
" 'booking': {\n",
" 'book stay': '',\n",
" 'book day': '',\n",
" 'book people': ''\n",
" }\n",
" }\n",
" },\n",
" 'request_state': {},\n",
" 'history': [],\n",
" 'user_action': [],\n",
" 'system_action': [],\n",
" 'terminated': False,\n",
" 'booked': []\n",
" }\n",
"\n",
"\n",
"class DialogueStateTracker(DST):\n",
" def __init__(self):\n",
" DST.__init__(self)\n",
" self.state = default_state()\n",
" with open('./hotels_data.json') as f:\n",
" self.value_dict = json.load(f)\n",
"\n",
" def update(self, user_act=None):\n",
" for intent, domain, slot, value in user_act:\n",
" domain = domain.lower()\n",
" intent = intent.lower()\n",
" slot = slot.lower()\n",
" \n",
" if domain not in self.state['belief_state']:\n",
" continue\n",
"\n",
" if intent == 'inform':\n",
" if slot == 'none' or slot == '' or value == 'dontcare':\n",
" continue\n",
"\n",
" domain_dic = self.state['belief_state'][domain]['info']\n",
"\n",
" if slot in domain_dic:\n",
" nvalue = self.normalize_value(self.value_dict, domain, slot, value)\n",
" self.state['belief_state'][domain]['info'][slot] = nvalue\n",
"\n",
" elif intent == 'request':\n",
" if domain not in self.state['request_state']:\n",
" self.state['request_state'][domain] = {}\n",
" if slot not in self.state['request_state'][domain]:\n",
" self.state['request_state'][domain][slot] = 0\n",
"\n",
" return self.state\n",
"\n",
" def normalize_value(self, value_dict, domain, slot, value):\n",
" normalized_value = value.lower().strip()\n",
" if domain in value_dict and slot in value_dict[domain]:\n",
" possible_values = value_dict[domain][slot]\n",
" if isinstance(possible_values, dict) and normalized_value in possible_values:\n",
" return possible_values[normalized_value]\n",
" return value\n",
"\n",
" def init_session(self):\n",
" self.state = default_state()\n"
]
},
{
"cell_type": "code",
"execution_count": 214,
"id": "a7f3d067-3a95-4ef5-b216-be5840bc8831",
"metadata": {},
"outputs": [],
"source": [
"from collections import defaultdict\n",
"import copy\n",
"import json\n",
"from copy import deepcopy\n",
"\n",
"from convlab.policy.policy import Policy\n",
"from convlab.util.multiwoz.dbquery import Database\n",
"\n",
"db_path = './hotels_data.json'\n",
"\n",
"class DialoguePolicy(Policy):\n",
" def __init__(self):\n",
" Policy.__init__(self)\n",
" self.db = self.load_database(db_path)\n",
"\n",
" def load_database(self, db_path):\n",
" with open(db_path, 'r', encoding='utf-8') as f:\n",
" return json.load(f)\n",
"\n",
" def query(self, domain, constraints):\n",
" if domain != 'hotel':\n",
" return []\n",
" \n",
" results = []\n",
" for entry in self.db:\n",
" match = all(entry.get(key) == value for key, value in constraints)\n",
" if match:\n",
" results.append(entry)\n",
" return results\n",
"\n",
" def predict(self, state):\n",
" self.results = []\n",
" system_action = defaultdict(list)\n",
" user_action = defaultdict(list)\n",
"\n",
" for intent, domain, slot, value in state['user_action']:\n",
" user_action[(domain.lower(), intent.lower())].append((slot.lower(), value))\n",
"\n",
" for user_act in user_action:\n",
" self.update_system_action(user_act, user_action, state, system_action)\n",
"\n",
" if any(True for slots in user_action.values() for (slot, _) in slots if slot in ['book stay', 'book day', 'book people']):\n",
" if self.results:\n",
" system_action = {('Booking', 'Book'): [[\"Ref\", self.results[0].get('Ref', 'N/A')]]}\n",
"\n",
" system_acts = [[intent, domain, slot, value] for (domain, intent), slots in system_action.items() for slot, value in slots]\n",
" state['system_action'] = system_acts\n",
" return system_acts\n",
"\n",
" def update_system_action(self, user_act, user_action, state, system_action):\n",
" domain, intent = user_act\n",
" constraints = [(slot, value) for slot, value in state['belief_state'][domain]['info'].items() if value != '']\n",
" print(f\"Constraints: {constraints}\")\n",
" self.results = deepcopy(self.query(domain.lower(), constraints))\n",
" print(f\"Query results: {self.results}\")\n",
"\n",
" if intent == 'request':\n",
" if len(self.results) == 0:\n",
" system_action[(domain, 'NoOffer')] = []\n",
" else:\n",
" for slot in user_action[user_act]: \n",
" if slot[0] in self.results[0]:\n",
" system_action[(domain, 'Inform')].append([slot[0], self.results[0].get(slot[0], 'unknown')])\n",
"\n",
" elif intent == 'inform':\n",
" if len(self.results) == 0:\n",
" system_action[(domain, 'NoOffer')] = []\n",
" else:\n",
" system_action[(domain, 'Inform')].append(['Choice', str(len(self.results))])\n",
" choice = self.results[0]\n",
"\n",
" if domain in [\"hotel\"]:\n",
" system_action[(domain, 'Recommend')].append(['Name', choice['name']])\n",
" for slot in state['belief_state'][domain]['info']:\n",
" if choice.get(slot):\n",
" state['belief_state'][domain]['info'][slot] = choice[slot]"
]
},
{
"cell_type": "code",
"execution_count": 218,
"id": "11f34b20-c5b0-4752-8610-21f5eef4b569",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:root:nlu info_dict is not initialized\n",
"WARNING:root:dst info_dict is not initialized\n",
"WARNING:root:policy info_dict is not initialized\n",
"WARNING:root:nlg info_dict is not initialized\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"NLG seed 0\n"
]
}
],
"source": [
"from convlab.nlg.template.multiwoz import TemplateNLG\n",
"from convlab.dialog_agent import PipelineAgent\n",
"\n",
"nlu = NaturalLanguageAnalyzer()\n",
"dst = DialogueStateTracker()\n",
"policy = DialoguePolicy()\n",
"nlg = TemplateNLG(is_user=False)\n",
"\n",
"agent = PipelineAgent(nlu=nlu, dst=dst, policy=policy, nlg=nlg, name='sys')"
]
},
{
"cell_type": "code",
"execution_count": 219,
"id": "faf05778-2bca-4044-97a7-d6facf853e10",
"metadata": {},
"outputs": [],
"source": [
"# nla = NaturalLanguageAnalyzer()\n",
"# nla_response = nla.predict(\"chciałbym zarezerwować drogi hotel bez parkingu 1 stycznia w Warszawie w centrum\")\n",
"# print(nla_response)\n",
"# response = agent.response(nla_response)\n",
"# print(response)"
]
},
{
"cell_type": "code",
"execution_count": 220,
"id": "6c837788-e7d5-483e-b873-00061f118619",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Constraints: [('area', 'centre'), ('parking', 'yes'), ('price range', 'expensive'), ('type', 'hotel')]\n",
"Query results: [{'name': 'Four Seasons Hotel', 'area': 'centre', 'parking': 'yes', 'price range': 'expensive', 'stars': '5', 'internet': 'yes', 'type': 'hotel'}, {'name': 'The Ritz Hotel', 'area': 'centre', 'parking': 'yes', 'price range': 'expensive', 'stars': '5', 'internet': 'yes', 'type': 'hotel'}, {'name': 'The Savoy Hotel', 'area': 'centre', 'parking': 'yes', 'price range': 'expensive', 'stars': '5', 'internet': 'yes', 'type': 'hotel'}, {'name': 'Shangri-La Hotel', 'area': 'centre', 'parking': 'yes', 'price range': 'expensive', 'stars': '5', 'internet': 'yes', 'type': 'hotel'}]\n",
"We have 4 such places . Four Seasons Hotel looks like it would be a good choice .\n"
]
}
],
"source": [
"response = agent.response(\"chciałbym zarezerwować drogi hotel z parkingiem 1 stycznia w Warszawie w centrum\")\n",
"print(response)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "7f831f56-10ba-40da-a89c-baeed37df81e",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.10.8"
}
},
"nbformat": 4,
"nbformat_minor": 5
}

View File

@ -1,7 +1,7 @@
# Chatbot do realizacji zadań rezerwacji pokoi hotelowych
## Zadanie 1: Sprawdzenie dostępnych pokoi w podanym przedziale datowym, obojętnie gdzie
## Zadanie 1: Wyszukiwanie pokoju
*system*: Witamy w systemie rezerwacji pokoi hotelowych. W czy mogę ci dziś pomóc?
*user*: Dzień dobry chciałbym dowiedzieć się jakie są dostępne pokoje hotelowe między 3 a 10 Sierpnia tego roku.
*user*: Dzień dobry chciałbym dowiedzieć się jakie są dostępne pokoje hotelowe między 3 a 10 sierpnia tego roku.
*system*: Czy interesuje Pana/Panią konkretna lokalizacja?
*user*: Nie, szukam celu wakacji.
*system*: Dla ilu osób miałby być pokój?
@ -13,29 +13,29 @@
*system*: Pokój w Pescarze znajduje się w odległości spacerowej od plaży.
Zadanie 2: Zmiana parametrów
--------------------------
*system:* Witamy w systemie rezerwacji pokoi hotelowych. W czym mogę Ci pomóc?
*user:* Dzień dobry, chciałbym zmodyfikować swoją rezerwację.
*system:* Proszę podać numer rezerwacji.
*user:* VSDFK434VVKA
*system:* Co będziemy zmieniać?
*user:* Chciałbym zmienić termin pobytu na 12.06-19.06.
*system:* W podanym terminie nie mamy dostępnych pokoi w podstawowym standardzie, ale mogę zaproponować pokój z widokiem na morze w cenie 380 zł za dobę.
*user:* Zgadzam się. Proszę o zmianę.
*system:* Parametry Twojej rezerwacji zostały zmienione.
## Zadanie 2: Zmiana parametrów
*system:* Witamy w systemie rezerwacji pokoi hotelowych. W czym mogę ci dziś pomóc?
*user:* Dzień dobry, chciałbym zmodyfikować swoją rezerwację.
*system:* Proszę podać numer rezerwacji.
*user:* 3453221512
*system*: Proszę o podanie pinu rezerwacji
*user*: 1234
*system:* Co będziemy zmieniać?
*user:* Chciałbym zmienić termin pobytu na 12.06-19.06.
*system:* W podanym terminie nie mamy dostępnych pokoi w podstawowym standardzie, ale mogę zaproponować pokój z widokiem na morze w cenie 380 zł za dobę.
*user:* Zgadzam się. Proszę o zmianę.
*system:* Parametry Twojej rezerwacji zostały zmienione.
##Zadanie 3: Rezerwacja
--------------------------
*system:* Witamy w systemie rezerwacji pokoi hotelowych. W czym mogę Ci pomóc?
*user:* Chciałbym zarezerwować pokój dwuosobowy w Hotelu Ramka w Poznaniu od 1 czerwca do 3 czerwca.
*system:* Czy chcesz wykupić pakiet śniadań?
*user:* Nie
*system:* W celu dokonania rezerwacji podaj swoje imię i nazwisko oraz numer telefonu.
*user:* Andrzej Kowalski 111222333
*system:* Czy na pewno chcesz dokonać rezerwacji w Hotelu Ramka na pokój dwuosobowy od 1 czerwca do 3 czerwca?
*user:* Tak
*system:* Rezerwacja została pomyślnie zapisana.
## Zadanie 3: Dokonanie rezerwacji
*system:* Witamy w systemie rezerwacji pokoi hotelowych. W czym mogę Ci pomóc?
*user:* Chciałbym zarezerwować pokój dwuosobowy w Hotelu Ramka w Poznaniu od 1 czerwca do 3 czerwca.
*system:* Czy chcesz wykupić pakiet śniadań?
*user:* Nie
*system:* W celu dokonania rezerwacji podaj swoje imię i nazwisko oraz numer telefonu.
*user:* Andrzej Kowalski 111222333
*system:* Czy na pewno chcesz dokonać rezerwacji w Hotelu Ramka na pokój dwuosobowy od 1 czerwca do 3 czerwca?
*user:* Tak
*system:* Rezerwacja została pomyślnie zapisana.
## Zadanie 4: Anulowanie rezerwacji
@ -46,3 +46,11 @@ Zadanie 2: Zmiana parametrów
*system*: Proszę o podanie pinu rezerwacji w celu anulowania rezerwacji
*user*: 1234
*system*: Rezerwacja została pomyślnie anulowana
## Zadanie 5: Pytanie o szczegóły rezerwacji
*system*: Witamy w systemie rezerwacji pokoi hotelowych. W czy mogę ci dziś pomóc?
*user*: Dzień dobry, chciałbym poznać szczegóły rezerwacji 3453221512
*system*: Proszę o podanie pinu rezerwacji
*user*: 1234
*system*: Rezerwacja dotyczy pokoju jednoosobowego w hotelu Remes w terminie 23.07 - 28.07. Koszt rezerwacji to 1200 zł

73
train_nlg.py Normal file
View File

@ -0,0 +1,73 @@
import os
import pandas as pd
from datasets import Dataset
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM, DataCollatorForSeq2Seq, Seq2SeqTrainer, Seq2SeqTrainingArguments
translated_data_directory = 'translated_data'
# Łączymy wszystkie przetłumaczone pliki TSV w jeden zbiór danych
dfs = []
for file_name in os.listdir(translated_data_directory):
if file_name.endswith('.tsv'):
file_path = os.path.join(translated_data_directory, file_name)
df = pd.read_csv(file_path, sep='\t')
dfs.append(df)
combined_df = pd.concat(dfs, ignore_index=True)
# Przygotowanie zbioru danych do trenowania
dataset = Dataset.from_pandas(combined_df)
# Wczytujemy model i tokenizer
model_name = "google/flan-t5-small"
tokenizer = AutoTokenizer.from_pretrained(model_name)
# Funkcja do tokenizacji danych
def tokenize_samples(samples):
inputs = [f"generate text: {act}" for act in samples["act"]]
tokenized_inputs = tokenizer(inputs, max_length=128, padding="max_length", truncation=True)
labels = tokenizer(samples["value_en"], max_length=128, padding="max_length", truncation=True)
labels["input_ids"] = [
[(token_id if token_id != tokenizer.pad_token_id else -100) for token_id in label]
for label in labels["input_ids"]
]
tokenized_inputs["labels"] = labels["input_ids"]
return tokenized_inputs
# Tokenizujemy dane
tokenized_dataset = dataset.map(tokenize_samples, batched=True)
# Wczytujemy model
model = AutoModelForSeq2SeqLM.from_pretrained(model_name)
# Konfiguracja DataCollator
data_collator = DataCollatorForSeq2Seq(tokenizer, model=model, label_pad_token_id=-100, pad_to_multiple_of=8)
# Konfiguracja treningu
training_args = Seq2SeqTrainingArguments(
output_dir="./nlg_model",
per_device_train_batch_size=8,
per_device_eval_batch_size=16,
predict_with_generate=True,
learning_rate=5e-5,
num_train_epochs=3,
evaluation_strategy="epoch",
save_strategy="epoch",
save_total_limit=None, # Wyłącz rotację punktów kontrolnych
load_best_model_at_end=True,
)
# Inicjalizacja trenera
trainer = Seq2SeqTrainer(
model=model,
args=training_args,
data_collator=data_collator,
train_dataset=tokenized_dataset,
eval_dataset=tokenized_dataset,
)
# Trening modelu
trainer.train()
# Zapisanie wytrenowanego modelu
trainer.save_model("./nlg_model")
tokenizer.save_pretrained("./nlg_model")

28
translate_data.py Normal file
View File

@ -0,0 +1,28 @@
import os
import pandas as pd
import requests
def translate_text(text, target_language='en'):
url = 'https://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl={}&dt=t&q={}'.format(target_language, text)
response = requests.get(url)
if response.status_code == 200:
translated_text = response.json()[0][0][0]
return translated_text
else:
return text # Zwracamy oryginalny tekst w razie problemów z tłumaczeniem
data_directory = 'data'
translated_data_directory = 'translated_data'
os.makedirs(translated_data_directory, exist_ok=True)
for file_name in os.listdir(data_directory):
if file_name.endswith('.tsv'):
file_path = os.path.join(data_directory, file_name)
df = pd.read_csv(file_path, sep='\t')
# Tłumaczymy kolumnę 'value' na angielski
df['value_en'] = df['value'].apply(lambda x: translate_text(x, 'en'))
# Zapisujemy przetłumaczone dane do nowego pliku TSV
translated_file_path = os.path.join(translated_data_directory, file_name)
df.to_csv(translated_file_path, index=False, sep='\t')

View File

@ -0,0 +1,26 @@
role value act value_en
system Witaj, jestem systemem wspomagającym rezerwacje pokoi hotelowych, w czym mogę ci pomóc? welcomemsg() Hello, I am a hotel room reservation system, how can I help you?
user Chciałbym zarezerwować pokój dla całej rodziny nad Bałtykiem z widokiem na morze. inform(place='baltic',extra='seaside',rooms=1) I would like to book a room for the whole family on the Baltic Sea with a sea view.
system Ilu osobowa jest to rodzina? request(people) How many people is this family?
user 2 dorosłych i 2 dzieci inform(people.adult=2,people.kids=2) 2 adults and 2 children
system Czy następujący podział łóżek odpowiada Panu/Pani? - Łóżko 2-osobowe -> 1 | Łóżko 1-osobowe -> 2 confirm-domain(beds) Does the following bed division suit you?
user Tak, pasuje mi affirm() Yes, it fits me
system W jakim terminie interesuje Pana/Panią rezerwacja? request(date.from,date.to) What date are you interested in booking?
user 15-22 lipca inform(date.from=15.07,date.to=22.07) July 15-22
system Jaki jest wiek dzieci? request(people.kids.ages) What are the ages of the children?
user 4 i 9 lat inform(people.kids.ages=[4,9]) 4 and 9 years old
system Podczas poszukiwań kierować się ceną, liczbą gwiazdek hotelu czy ocenami obiektu? request(sort) When searching, should you be guided by the price, the number of hotel stars or the facility's ratings?
user Przede wszystkim ocenami. Chciałbym jednak, żeby nie było to również za drogie miejsce. inform(sort=['reviews','price']) First of all, ratings.
system W podanym terminie udało mi się znaleźć Willa Słoneczna - Magdalena i Michał Żelewscy, jest ona wysoko oceniana, oraz najtańsza spośród wysoko ocenianych. Koszt rezerwacji to 1890 PLN, niestety nie jest oferowane śniadanie "offer(hotel=""Willa Słoneczna - Magdalena i Michał Żelewscy"")&inform(cost,reviews)" On the given date, I managed to find Willa Słoneczna - Magdalena and Michał Żelewscy, it is highly rated and the cheapest among the highly rated ones.
system Czy dokonać rezerwacji? request(reserve) Should I make a reservation?
user Czy na miejscu jest restauracja oferująca obiady? reqmore(extra.restaurant)&inform(extra.restaurant=true) Is there a restaurant on site that serves dinner?
system Niestety nie posiadam takich informacji o obiekcie canthelp() Unfortunately, I do not have such information about the facility
user Podana cena jest za cały pobyt za wszystkie osoby? reqmore(price) Is the price quoted for the entire stay for all people?
system Podawane ceny dotyczą ostatecznej kwoty do zapłaty inform(price) Prices quoted are for the final amount payable
user W takim razie proszę zarezerwować. affirm() Then please make a reservation.
system Czy będzie potrzebował Pan faktury vat? request(fv24) Will you need a VAT invoice?
user Nie inform(fv24=false) NO
system Dobrze, oto Pana kod rezerwacji m45n0-f35t-wino, płatności należy dokonać pod tym linkiem: https://fake-blik.cn/pay/?transaction_id=21372115 affirm() Okay, here is your reservation code m45n0-f35t-wino, payment should be made via this link: https://fake-blik.cn/pay/?transaction_id=21372115
system Czy mogę w czymś jeszcze pomóc? reqmore() Can I help you with something else?
user To wszystko. Dziękuję neagte() That's all.
system Dziękuje za skorzystanie z systemu, miłego wyjazdu! bye() Thank you for using the system, have a nice trip!
1 role value act value_en
2 system Witaj, jestem systemem wspomagającym rezerwacje pokoi hotelowych, w czym mogę ci pomóc? welcomemsg() Hello, I am a hotel room reservation system, how can I help you?
3 user Chciałbym zarezerwować pokój dla całej rodziny nad Bałtykiem z widokiem na morze. inform(place='baltic',extra='seaside',rooms=1) I would like to book a room for the whole family on the Baltic Sea with a sea view.
4 system Ilu osobowa jest to rodzina? request(people) How many people is this family?
5 user 2 dorosłych i 2 dzieci inform(people.adult=2,people.kids=2) 2 adults and 2 children
6 system Czy następujący podział łóżek odpowiada Panu/Pani? - Łóżko 2-osobowe -> 1 | Łóżko 1-osobowe -> 2 confirm-domain(beds) Does the following bed division suit you?
7 user Tak, pasuje mi affirm() Yes, it fits me
8 system W jakim terminie interesuje Pana/Panią rezerwacja? request(date.from,date.to) What date are you interested in booking?
9 user 15-22 lipca inform(date.from=15.07,date.to=22.07) July 15-22
10 system Jaki jest wiek dzieci? request(people.kids.ages) What are the ages of the children?
11 user 4 i 9 lat inform(people.kids.ages=[4,9]) 4 and 9 years old
12 system Podczas poszukiwań kierować się ceną, liczbą gwiazdek hotelu czy ocenami obiektu? request(sort) When searching, should you be guided by the price, the number of hotel stars or the facility's ratings?
13 user Przede wszystkim ocenami. Chciałbym jednak, żeby nie było to również za drogie miejsce. inform(sort=['reviews','price']) First of all, ratings.
14 system W podanym terminie udało mi się znaleźć Willa Słoneczna - Magdalena i Michał Żelewscy, jest ona wysoko oceniana, oraz najtańsza spośród wysoko ocenianych. Koszt rezerwacji to 1890 PLN, niestety nie jest oferowane śniadanie offer(hotel="Willa Słoneczna - Magdalena i Michał Żelewscy")&inform(cost,reviews) On the given date, I managed to find Willa Słoneczna - Magdalena and Michał Żelewscy, it is highly rated and the cheapest among the highly rated ones.
15 system Czy dokonać rezerwacji? request(reserve) Should I make a reservation?
16 user Czy na miejscu jest restauracja oferująca obiady? reqmore(extra.restaurant)&inform(extra.restaurant=true) Is there a restaurant on site that serves dinner?
17 system Niestety nie posiadam takich informacji o obiekcie canthelp() Unfortunately, I do not have such information about the facility
18 user Podana cena jest za cały pobyt za wszystkie osoby? reqmore(price) Is the price quoted for the entire stay for all people?
19 system Podawane ceny dotyczą ostatecznej kwoty do zapłaty inform(price) Prices quoted are for the final amount payable
20 user W takim razie proszę zarezerwować. affirm() Then please make a reservation.
21 system Czy będzie potrzebował Pan faktury vat? request(fv24) Will you need a VAT invoice?
22 user Nie inform(fv24=false) NO
23 system Dobrze, oto Pana kod rezerwacji m45n0-f35t-wino, płatności należy dokonać pod tym linkiem: https://fake-blik.cn/pay/?transaction_id=21372115 affirm() Okay, here is your reservation code m45n0-f35t-wino, payment should be made via this link: https://fake-blik.cn/pay/?transaction_id=21372115
24 system Czy mogę w czymś jeszcze pomóc? reqmore() Can I help you with something else?
25 user To wszystko. Dziękuję neagte() That's all.
26 system Dziękuje za skorzystanie z systemu, miłego wyjazdu! bye() Thank you for using the system, have a nice trip!

View File

@ -0,0 +1,13 @@
role value act value_en
system Witaj, jestem systemem wspomagającym rezerwacje pokoi hotelowych, w czym mogę ci pomóc? welcomemsg() Hello, I am a hotel room reservation system, how can I help you?
user Chciałbym zarezerwować nocleg z 27 na 28 marca w Warszawie dla jednej osoby. inform(place='Warsaw', date.from=27.03, date.to=28.03, people=1) I would like to book accommodation from March 27 to 28 in Warsaw for one person.
system Czy interesują Pana/Panią jakieś szczególne udogodnienia w pokoju? request(extra) Are you interested in any particular amenities in the room?
user Zależy mi tylko na tym, żeby był czajnik i kawa inform(extra.coffee=true,extra.kettle=true) All I care about is that there is a kettle and coffee
system Podczas poszukiwań kierować się ocenami, ceną czy ilością gwiazdek? request(sort) When searching, should you be guided by ratings, price or number of stars?
user Proszę kierować się ceną inform(sort=['price']) Please pay attention to the price
system W podanym terminie udało mi się znaleźć pokój w Ivory House (Marymont-Ruda). Cena rezerwacji wynosi 128 zł. Dokonać rezerwacji? "offer(hotel=""Ivory House (Marymont-Ruda)"")&inform(cost)" On the given date, I managed to find a room at Ivory House (Marymont-Ruda).
user Wygląda zachęcająco. Proszę rezerwować. affirm() It looks tempting.
system Czy potrzebuje Pan/Pani faktury vat? request(fv24) Do you need a VAT invoice?
user nie inform(fv24=false) NO
system Dobrze, oto Pana kod rezerwacji wy6l4d4-z4ch3c4j4c0-b4rdz0, płatności należy dokonać pod tym linkiem: https://fake-blik.cn/pay/?transaction_id=10310314 affirm() Okay, here is your reservation code wy6l4d4-z4ch3c4j4c0-b4rdz0, payment should be made via this link: https://fake-blik.cn/pay/?transaction_id=10310314
system Czy mogę w czymś jeszcze Pani/Panu pomóc? more_help() Is there anything else I can help you with?
1 role value act value_en
2 system Witaj, jestem systemem wspomagającym rezerwacje pokoi hotelowych, w czym mogę ci pomóc? welcomemsg() Hello, I am a hotel room reservation system, how can I help you?
3 user Chciałbym zarezerwować nocleg z 27 na 28 marca w Warszawie dla jednej osoby. inform(place='Warsaw', date.from=27.03, date.to=28.03, people=1) I would like to book accommodation from March 27 to 28 in Warsaw for one person.
4 system Czy interesują Pana/Panią jakieś szczególne udogodnienia w pokoju? request(extra) Are you interested in any particular amenities in the room?
5 user Zależy mi tylko na tym, żeby był czajnik i kawa inform(extra.coffee=true,extra.kettle=true) All I care about is that there is a kettle and coffee
6 system Podczas poszukiwań kierować się ocenami, ceną czy ilością gwiazdek? request(sort) When searching, should you be guided by ratings, price or number of stars?
7 user Proszę kierować się ceną inform(sort=['price']) Please pay attention to the price
8 system W podanym terminie udało mi się znaleźć pokój w Ivory House (Marymont-Ruda). Cena rezerwacji wynosi 128 zł. Dokonać rezerwacji? offer(hotel="Ivory House (Marymont-Ruda)")&inform(cost) On the given date, I managed to find a room at Ivory House (Marymont-Ruda).
9 user Wygląda zachęcająco. Proszę rezerwować. affirm() It looks tempting.
10 system Czy potrzebuje Pan/Pani faktury vat? request(fv24) Do you need a VAT invoice?
11 user nie inform(fv24=false) NO
12 system Dobrze, oto Pana kod rezerwacji wy6l4d4-z4ch3c4j4c0-b4rdz0, płatności należy dokonać pod tym linkiem: https://fake-blik.cn/pay/?transaction_id=10310314 affirm() Okay, here is your reservation code wy6l4d4-z4ch3c4j4c0-b4rdz0, payment should be made via this link: https://fake-blik.cn/pay/?transaction_id=10310314
13 system Czy mogę w czymś jeszcze Pani/Panu pomóc? more_help() Is there anything else I can help you with?

View File

@ -0,0 +1,26 @@
role value act value_en
system Witaj, jestem systemem wspomagającym rezerwacje pokoi hotelowych, w czym mogę ci pomóc? welcomemsg() Hello, I am a hotel room reservation system, how can I help you?
user Chciałbym zarezerwować pokój z widokiem na wieże eifla, z balkonem oraz śniadaniami do łóżka inform(place='Eiffel tower', extra.terrace=true, extra.breakfast=true) I would like to book a room with a view of the Eiffel Tower, with a balcony and breakfast in bed
system W jakim terminie interesuje Pana/Panią rezerwacja? request(date.from,date.to) What date are you interested in booking?
user Dzisiaj wieczór, czy jest możliwośc rezerwacji pokoju na godziny do takich tam zabaw? inform(date.from=today,date.to=tomorrow)&reqmore(date) Tonight, is it possible to book a room by the hour for such games?
system Rezerwacja na jeden dzień? confirm-domain() Booking for one day?
user chciałbym na 3 godziny dzisiejszego wieczoru inform(date.from=today, date.to=today+3hours) I would like for 3 hours tonight
system Niestety możemy dokonać rezerwacji na conajmniej dobę hotelową canthelp Unfortunately, we can only make reservations for at least one hotel night
user ile trwa doba hotelowa? reqmore(hotel_day) how long is the hotel stay?
system Przyjmuje się że doba hotelowa nie powinna trwać krócej niż 20 godzin, lecz może się to różnić między hotelami explain(hotel_day) It is assumed that a hotel day should not be shorter than 20 hours, but this may vary between hotels.
user a jak jest we wskazanym hotelu? reqmore(hotel) and what is it like in the indicated hotel?
system Aby rozpocząć poszukiwania potrzebuje daty rezerwacji pokoju request(date.from,date.to) To start your search, you need the date of your room reservation
user Na ten piątek inform(date.from=26.04, date.to=27.04) For this Friday
system Rezerwacja na ile osób? request(people) Reservation for how many people?
user 3 w tym jedno dziecko ponieżej 12 lat inform(people=2,kids=1, kids.age=[12]) 3 including one child under 12 years old
system Czy układ 1 łóżko dwuosobowe oraz 1 łóżko jednosobowe Panu/Pani odpowiada? confirm-domain(beds) Does the arrangement of 1 double bed and 1 single bed suit you?
user tak, a czy za osobe nieletnią jest zniżka? affirm()&reqmore(kids.discount) yes, and is there a discount for minors?
system Niestety nie posiadam takich informacji odnośnie obiektu canthelp() Unfortunately, I do not have such information about the facility
system W podanym terminie udało znaleźć mi się Pullman Paris Tour Eiffel w cenie 3570 zł, posiada on balkon z widokiem na wieże eiffla, oraz śniadanie do łóżka w cenie. Czy dokonać rezerwacji? "offer(hotel=""Pullman Paris Tour Eiffel"")&inform(cost, extra)" On the given date, I managed to find Pullman Paris Tour Eiffel for PLN 3,570, it has a balcony with a view of the Eiffel Tower, and breakfast in bed is included in the price.
user Tak affirm() So
system Czy potrzebuje Pan/Pani faktury vat? request(fv24) Do you need a VAT invoice?
user Tak to wyjazd służbowy inform(fv24=true) Yes, it's a business trip
system Dobrze, oto Pana kod rezerwacji ymbape-markinios-peesze, płatności należy dokonać pod tym linkiem: https://fake-blik.cn/pay/?transaction_id=391839184 affirm() Okay, here is your reservation code ymbape-markinios-peesze, payment should be made via this link: https://fake-blik.cn/pay/?transaction_id=391839184
system Czy mogę jeszcze w czymś pomóc? more_help() Can I help with anything else?
user To wszystko dziękuje bye() That is all, thank you
system Dziękuje za skorzystanie z naszych usług, miłego wyjazdu! bye() Thank you for using our services, have a nice trip!
1 role value act value_en
2 system Witaj, jestem systemem wspomagającym rezerwacje pokoi hotelowych, w czym mogę ci pomóc? welcomemsg() Hello, I am a hotel room reservation system, how can I help you?
3 user Chciałbym zarezerwować pokój z widokiem na wieże eifla, z balkonem oraz śniadaniami do łóżka inform(place='Eiffel tower', extra.terrace=true, extra.breakfast=true) I would like to book a room with a view of the Eiffel Tower, with a balcony and breakfast in bed
4 system W jakim terminie interesuje Pana/Panią rezerwacja? request(date.from,date.to) What date are you interested in booking?
5 user Dzisiaj wieczór, czy jest możliwośc rezerwacji pokoju na godziny do takich tam zabaw? inform(date.from=today,date.to=tomorrow)&reqmore(date) Tonight, is it possible to book a room by the hour for such games?
6 system Rezerwacja na jeden dzień? confirm-domain() Booking for one day?
7 user chciałbym na 3 godziny dzisiejszego wieczoru inform(date.from=today, date.to=today+3hours) I would like for 3 hours tonight
8 system Niestety możemy dokonać rezerwacji na conajmniej dobę hotelową canthelp Unfortunately, we can only make reservations for at least one hotel night
9 user ile trwa doba hotelowa? reqmore(hotel_day) how long is the hotel stay?
10 system Przyjmuje się że doba hotelowa nie powinna trwać krócej niż 20 godzin, lecz może się to różnić między hotelami explain(hotel_day) It is assumed that a hotel day should not be shorter than 20 hours, but this may vary between hotels.
11 user a jak jest we wskazanym hotelu? reqmore(hotel) and what is it like in the indicated hotel?
12 system Aby rozpocząć poszukiwania potrzebuje daty rezerwacji pokoju request(date.from,date.to) To start your search, you need the date of your room reservation
13 user Na ten piątek inform(date.from=26.04, date.to=27.04) For this Friday
14 system Rezerwacja na ile osób? request(people) Reservation for how many people?
15 user 3 w tym jedno dziecko ponieżej 12 lat inform(people=2,kids=1, kids.age=[12]) 3 including one child under 12 years old
16 system Czy układ 1 łóżko dwuosobowe oraz 1 łóżko jednosobowe Panu/Pani odpowiada? confirm-domain(beds) Does the arrangement of 1 double bed and 1 single bed suit you?
17 user tak, a czy za osobe nieletnią jest zniżka? affirm()&reqmore(kids.discount) yes, and is there a discount for minors?
18 system Niestety nie posiadam takich informacji odnośnie obiektu canthelp() Unfortunately, I do not have such information about the facility
19 system W podanym terminie udało znaleźć mi się Pullman Paris Tour Eiffel w cenie 3570 zł, posiada on balkon z widokiem na wieże eiffla, oraz śniadanie do łóżka w cenie. Czy dokonać rezerwacji? offer(hotel="Pullman Paris Tour Eiffel")&inform(cost, extra) On the given date, I managed to find Pullman Paris Tour Eiffel for PLN 3,570, it has a balcony with a view of the Eiffel Tower, and breakfast in bed is included in the price.
20 user Tak affirm() So
21 system Czy potrzebuje Pan/Pani faktury vat? request(fv24) Do you need a VAT invoice?
22 user Tak to wyjazd służbowy inform(fv24=true) Yes, it's a business trip
23 system Dobrze, oto Pana kod rezerwacji ymbape-markinios-peesze, płatności należy dokonać pod tym linkiem: https://fake-blik.cn/pay/?transaction_id=391839184 affirm() Okay, here is your reservation code ymbape-markinios-peesze, payment should be made via this link: https://fake-blik.cn/pay/?transaction_id=391839184
24 system Czy mogę jeszcze w czymś pomóc? more_help() Can I help with anything else?
25 user To wszystko dziękuje bye() That is all, thank you
26 system Dziękuje za skorzystanie z naszych usług, miłego wyjazdu! bye() Thank you for using our services, have a nice trip!

View File

@ -0,0 +1,13 @@
role value act value_en
system Witaj, jestem systemem wspomagającym rezerwacje pokoi hotelowych, w czym mogę ci pomóc? welcomemsg() Hello, I am a hotel room reservation system, how can I help you?
user Chciałbym zarezerwować pokój dla 2 osob, z soboty na niedziele(30-31.04) we Wrocławiu, w okolicach lotniska inform(people=2,date.from=30.04,date.to=31.04,place='Wroclaw airport') I would like to book a room for 2 people, from Saturday to Sunday (30-31/04) in Wrocław, near the airport
system Czy łóżko w pokoju ma być dwuosobowe? request(beds) Should the bed in the room be a double bed?
user Będę z kolegą, więc proszę żeby były oddzielne inform(beds.single=2) I will be with a friend, so please keep them separate
system Niestety kwiecień ma 30 a nie 31 dni, czy zmienić okres rezerwacji na 30.04-01.05? request(date.from,date.to) Unfortunately, April has 30 and not 31 days, should I change the reservation period to 30/04-01/05?
user oczywiscie, prosze o to mi chodzilo inform(date.from=30.05,date.to=31.05) of course, that's what I meant
system W podanym przez Pana/Panią terminie możliwa jest rezerwacja w Arche Hotel Wrocław Airport. Znajduje się on bezpośrednio przy lotnisku, posiada dwa łóżka jednoosobowe. Dodatkowo jest wysoko oceniany przez gości (9,1/10). Koszt takiej rezerwacji wynosi 523 zł, z możliwością rozszerzenia o śniadanie w cenie 70 zł. "offer(hotel=""Arche Hotel Wrocław Airport."")&inform(cost, extra)" It is possible to make a reservation at Arche Hotel Wrocław Airport on the date you specified.
system Czy dokonać rezerwacji? Should I make a reservation?
user Bede pozno, do kiedy najpozniej moge sie zameldoeac? reqmore(hotel_day) I'll be arriving late, what's the latest date I can check in?
system Recepcja w wybranym hotelu funkcjonuje 24h 7 dni w tygodniu inform(hotel_day=24/7) The reception at the selected hotel is open 24 hours a day, 7 days a week
user Ok, dziękuję za pomoc bye() Ok thank you for help
system Dziękuje za skorzystanie z naszych usług. Miłego wyjazdu! bye() Thank you for using our services.
1 role value act value_en
2 system Witaj, jestem systemem wspomagającym rezerwacje pokoi hotelowych, w czym mogę ci pomóc? welcomemsg() Hello, I am a hotel room reservation system, how can I help you?
3 user Chciałbym zarezerwować pokój dla 2 osob, z soboty na niedziele(30-31.04) we Wrocławiu, w okolicach lotniska inform(people=2,date.from=30.04,date.to=31.04,place='Wroclaw airport') I would like to book a room for 2 people, from Saturday to Sunday (30-31/04) in Wrocław, near the airport
4 system Czy łóżko w pokoju ma być dwuosobowe? request(beds) Should the bed in the room be a double bed?
5 user Będę z kolegą, więc proszę żeby były oddzielne inform(beds.single=2) I will be with a friend, so please keep them separate
6 system Niestety kwiecień ma 30 a nie 31 dni, czy zmienić okres rezerwacji na 30.04-01.05? request(date.from,date.to) Unfortunately, April has 30 and not 31 days, should I change the reservation period to 30/04-01/05?
7 user oczywiscie, prosze o to mi chodzilo inform(date.from=30.05,date.to=31.05) of course, that's what I meant
8 system W podanym przez Pana/Panią terminie możliwa jest rezerwacja w Arche Hotel Wrocław Airport. Znajduje się on bezpośrednio przy lotnisku, posiada dwa łóżka jednoosobowe. Dodatkowo jest wysoko oceniany przez gości (9,1/10). Koszt takiej rezerwacji wynosi 523 zł, z możliwością rozszerzenia o śniadanie w cenie 70 zł. offer(hotel="Arche Hotel Wrocław Airport.")&inform(cost, extra) It is possible to make a reservation at Arche Hotel Wrocław Airport on the date you specified.
9 system Czy dokonać rezerwacji? Should I make a reservation?
10 user Bede pozno, do kiedy najpozniej moge sie zameldoeac? reqmore(hotel_day) I'll be arriving late, what's the latest date I can check in?
11 system Recepcja w wybranym hotelu funkcjonuje 24h 7 dni w tygodniu inform(hotel_day=24/7) The reception at the selected hotel is open 24 hours a day, 7 days a week
12 user Ok, dziękuję za pomoc bye() Ok thank you for help
13 system Dziękuje za skorzystanie z naszych usług. Miłego wyjazdu! bye() Thank you for using our services.

View File

@ -0,0 +1,20 @@
role value act value_en
system Witaj, jestem systemem wspomagającym rezerwacje pokoi hotelowych, w czym mogę ci pomóc? welcomemsg() Hello, I am a hotel room reservation system, how can I help you?
user Chciałbym zarezerwować pokój w hotelu na ten weekend, czy była by taka możliwość? inform(date.from=26.04,date.to=28.04) I would like to book a hotel room for this weekend, would it be possible?
system Rezerwacja w jakim mieście cię interesuje? request(place) Booking in which city are you interested in?
user W Poznaniu, chciałbym się także dowiedzieć jakie standardy ma hotel, ponieważ opinię na google nie są zbyt przychylne. inform(place='Poznan') In Poznań, I would also like to find out what standards the hotel has, because the reviews on Google are not very favorable.
system Jestem systemem nie przypisanym do jednego konkretnego hotelu, oferujemy pomoc w rezerwacje pokoi hotelowych w hotelach zarejestrowanych w naszej bazie inform(system_info) I am a system not assigned to one specific hotel, we offer assistance in booking hotel rooms in hotels registered in our database
user Okej, jaki jest najdroższy hotele w Poznaniu, jaki masz w swojej ofercie? inform(sort=['price.desc']) Okay, what is the most expensive hotel in Poznań that you have on offer?
system Rezerwacja opiewałaby na jaką liczbę osób? request(people) The reservation would be for how many people?
user Na dwie osoby. inform(people=2) For two people.
system Ile z nich to dzieci? request(kids) How many of them are children?
user Nie ma żadnych dzieci. inform(kids=0) There are no children.
system Znalazłem ofertę Apartamenty Browar Luxury Old Town Poznań Check In 24h w terminie 30.03-31.03. Koszt rezerwacji wynosi 898 zł. Istnieje opcja rozszerzenia o śniadanie w cenie 31 PLN "offer(hotel=""Apartamenty Browar Luxury Old Town Poznań Check In 24h "")&inform(cost, extra)" I found the offer Apartamenty Browar Luxury Old Town Poznań Check In 24h on March 30-31.
system Czy zarezerwować apartament? reserve() Should I book an apartment?
user Tak zarezerwuj ten apartament. affirm() Yes, book this apartment.
system Czy potrzebna będzie Panu faktura? request(fv24) Will you need an invoice?
user Nie inform(fv24) NO
system Dobrze, oto Pana kod rezerwacji m45n0-f35t-piwo, płatności należy dokonać pod tym linkiem: https://fake-blik.cn/pay/?transaction_id=20139102300 affirm() Okay, here is your reservation code m45n0-f35t-piwo, payment should be made via this link: https://fake-blik.cn/pay/?transaction_id=20139102300
system Czy mogę jeszcze w czymś pomóc? more_help() Can I help with anything else?
user Nie, to wszystko, dziękuję za pomoc. bye() No, that's all, thank you for your help.
system Dziękuje za skorzystanie z naszych usług, miłego wyjazdu! bye() Thank you for using our services, have a nice trip!
1 role value act value_en
2 system Witaj, jestem systemem wspomagającym rezerwacje pokoi hotelowych, w czym mogę ci pomóc? welcomemsg() Hello, I am a hotel room reservation system, how can I help you?
3 user Chciałbym zarezerwować pokój w hotelu na ten weekend, czy była by taka możliwość? inform(date.from=26.04,date.to=28.04) I would like to book a hotel room for this weekend, would it be possible?
4 system Rezerwacja w jakim mieście cię interesuje? request(place) Booking in which city are you interested in?
5 user W Poznaniu, chciałbym się także dowiedzieć jakie standardy ma hotel, ponieważ opinię na google nie są zbyt przychylne. inform(place='Poznan') In Poznań, I would also like to find out what standards the hotel has, because the reviews on Google are not very favorable.
6 system Jestem systemem nie przypisanym do jednego konkretnego hotelu, oferujemy pomoc w rezerwacje pokoi hotelowych w hotelach zarejestrowanych w naszej bazie inform(system_info) I am a system not assigned to one specific hotel, we offer assistance in booking hotel rooms in hotels registered in our database
7 user Okej, jaki jest najdroższy hotele w Poznaniu, jaki masz w swojej ofercie? inform(sort=['price.desc']) Okay, what is the most expensive hotel in Poznań that you have on offer?
8 system Rezerwacja opiewałaby na jaką liczbę osób? request(people) The reservation would be for how many people?
9 user Na dwie osoby. inform(people=2) For two people.
10 system Ile z nich to dzieci? request(kids) How many of them are children?
11 user Nie ma żadnych dzieci. inform(kids=0) There are no children.
12 system Znalazłem ofertę Apartamenty Browar Luxury Old Town Poznań Check In 24h w terminie 30.03-31.03. Koszt rezerwacji wynosi 898 zł. Istnieje opcja rozszerzenia o śniadanie w cenie 31 PLN offer(hotel="Apartamenty Browar Luxury Old Town Poznań Check In 24h ")&inform(cost, extra) I found the offer Apartamenty Browar Luxury Old Town Poznań Check In 24h on March 30-31.
13 system Czy zarezerwować apartament? reserve() Should I book an apartment?
14 user Tak zarezerwuj ten apartament. affirm() Yes, book this apartment.
15 system Czy potrzebna będzie Panu faktura? request(fv24) Will you need an invoice?
16 user Nie inform(fv24) NO
17 system Dobrze, oto Pana kod rezerwacji m45n0-f35t-piwo, płatności należy dokonać pod tym linkiem: https://fake-blik.cn/pay/?transaction_id=20139102300 affirm() Okay, here is your reservation code m45n0-f35t-piwo, payment should be made via this link: https://fake-blik.cn/pay/?transaction_id=20139102300
18 system Czy mogę jeszcze w czymś pomóc? more_help() Can I help with anything else?
19 user Nie, to wszystko, dziękuję za pomoc. bye() No, that's all, thank you for your help.
20 system Dziękuje za skorzystanie z naszych usług, miłego wyjazdu! bye() Thank you for using our services, have a nice trip!

View File

@ -0,0 +1,23 @@
role value act value_en
system Witaj, jestem systemem wspomagającym rezerwacje pokoi hotelowych, w czym mogę ci pomóc? welcomemsg() Hello, I am a hotel room reservation system, how can I help you?
user chciałbym zarezerować pokoj badz pokoje dla 8 osob inform(people=8) I would like to book a room or rooms for 8 people
system W jakim mieście interesuje cię rezerwacja? request(place) In which city are you interested in booking?
user a jakie sa ograniczenia w doborze miasta ? reqmore(place) and what are the restrictions in choosing a city?
system Jeżeli hotel w danym mieście jest zarejestrowany w naszej bazie to jest on brany pod uwagę przy wyborze lokalizacji i porównywaniu cen. Jeżeli nie, zostanie to zakomunikowane bądź zaproponowany zostanie hotel najbliżej pożądanej lokalizacji inform(place) If a hotel in a given city is registered in our database, it is taken into account when choosing a location and comparing prices.
user czy ogranicza się to na teran polski reqmore(place='Poland') Is it limited to Poland?
system Nie, oferujemy możliwość rezerwacji w hotelach poza granicami Polski inform(place) No, we offer the possibility of booking hotels outside Poland
user to chciałbym zarezerować pokój w Trójmieście. Preferuje hotele trzy-cztero gwiazdkowe inform(place=['Gdansk','Gdynia','Sopot']) I would like to book a room in Tricity.
system W jakim terminie interesuje Pana/Panią rezerwacja? request(date.from,date.to) What date are you interested in booking?
user Lipiec - Sierpien na tydzien inform(date.from=July,date.to=August,duration=week) July - August per week
system Niestety mogę tylko zaoferować wyszukiwanie w konkretnej dacie, +-1, 2, 3 lub 7 dni cant_help()&request(date.from,date.to) Unfortunately I can only offer a search on a specific date, -1, 2, 3 or 7 days
user od 1 do 8 sierpnia inform(date.from=1.07,date.to=8.07) from August 1 to 8
system Czy w przypadku jednego pokoju interesuje Pana/Panią konkretny podział łóżek? request(beds) In the case of one room, are you interested in a specific division of beds?
user najlepiej jakby były pokoje 4 z podwojnym łoziem inform(rooms=4,beds.double=1) it would be best if there were 4 rooms with a double bed
system W podanym terminie udało mi się znaleźć Apartament z balkonem Gdańsk Stare Miasto, 2 łóżka podwójne i dwie rozkładane sofy. Koszt rezerwacji to 3528 zł, niestety nie ma opcji śniadania. Czy dokonać rezerwacji? "offer(hotel=""Apartament z balkonem Gdańsk Stare Miasto,"")&inform(cost, rooms, beds)" On the given date, I managed to find an apartment with a balcony in Gdańsk Stare Miasto, 2 double beds and two sofa beds.
user poszukaj ze sniadaniem inform(extra.breakfast=true) look for breakfast
system W podanym terminie udało mi się znaleźć Kamienica Morska Gdynia. 4 pokoje z podwójnymi łóżkami. Koszt rezerwacji to 10596 zł, śniadanie jest wliczone w cenę. Czy dokonać rezerwacji? "offer(hotel=""Kamienica Morska Gdynia."")&inform(cost,rooms, beds)" I managed to find Kamienica Morska Gdynia on the given date.
user tak affirm() so
system Dobrze, oto Pana kod rezerwacji undada-sea-2010, płatności należy dokonać pod tym linkiem: https://fake-blik.cn/pay/?transaction_id=2318031 affirm() Okay, here is your reservation code undada-sea-2010, payment should be made via this link: https://fake-blik.cn/pay/?transaction_id=2318031
system Czy mogę jeszcze w czymś pomóc? more_help() Can I help with anything else?
user nie dziekuje bye() no thanks
system Dziękuje za skorzystanie z naszych usług, miłego wyjazdu! bye() Thank you for using our services, have a nice trip!
1 role value act value_en
2 system Witaj, jestem systemem wspomagającym rezerwacje pokoi hotelowych, w czym mogę ci pomóc? welcomemsg() Hello, I am a hotel room reservation system, how can I help you?
3 user chciałbym zarezerować pokoj badz pokoje dla 8 osob inform(people=8) I would like to book a room or rooms for 8 people
4 system W jakim mieście interesuje cię rezerwacja? request(place) In which city are you interested in booking?
5 user a jakie sa ograniczenia w doborze miasta ? reqmore(place) and what are the restrictions in choosing a city?
6 system Jeżeli hotel w danym mieście jest zarejestrowany w naszej bazie to jest on brany pod uwagę przy wyborze lokalizacji i porównywaniu cen. Jeżeli nie, zostanie to zakomunikowane bądź zaproponowany zostanie hotel najbliżej pożądanej lokalizacji inform(place) If a hotel in a given city is registered in our database, it is taken into account when choosing a location and comparing prices.
7 user czy ogranicza się to na teran polski reqmore(place='Poland') Is it limited to Poland?
8 system Nie, oferujemy możliwość rezerwacji w hotelach poza granicami Polski inform(place) No, we offer the possibility of booking hotels outside Poland
9 user to chciałbym zarezerować pokój w Trójmieście. Preferuje hotele trzy-cztero gwiazdkowe inform(place=['Gdansk','Gdynia','Sopot']) I would like to book a room in Tricity.
10 system W jakim terminie interesuje Pana/Panią rezerwacja? request(date.from,date.to) What date are you interested in booking?
11 user Lipiec - Sierpien na tydzien inform(date.from=July,date.to=August,duration=week) July - August per week
12 system Niestety mogę tylko zaoferować wyszukiwanie w konkretnej dacie, +-1, 2, 3 lub 7 dni cant_help()&request(date.from,date.to) Unfortunately I can only offer a search on a specific date, -1, 2, 3 or 7 days
13 user od 1 do 8 sierpnia inform(date.from=1.07,date.to=8.07) from August 1 to 8
14 system Czy w przypadku jednego pokoju interesuje Pana/Panią konkretny podział łóżek? request(beds) In the case of one room, are you interested in a specific division of beds?
15 user najlepiej jakby były pokoje 4 z podwojnym łoziem inform(rooms=4,beds.double=1) it would be best if there were 4 rooms with a double bed
16 system W podanym terminie udało mi się znaleźć Apartament z balkonem Gdańsk Stare Miasto, 2 łóżka podwójne i dwie rozkładane sofy. Koszt rezerwacji to 3528 zł, niestety nie ma opcji śniadania. Czy dokonać rezerwacji? offer(hotel="Apartament z balkonem Gdańsk Stare Miasto,")&inform(cost, rooms, beds) On the given date, I managed to find an apartment with a balcony in Gdańsk Stare Miasto, 2 double beds and two sofa beds.
17 user poszukaj ze sniadaniem inform(extra.breakfast=true) look for breakfast
18 system W podanym terminie udało mi się znaleźć Kamienica Morska Gdynia. 4 pokoje z podwójnymi łóżkami. Koszt rezerwacji to 10596 zł, śniadanie jest wliczone w cenę. Czy dokonać rezerwacji? offer(hotel="Kamienica Morska Gdynia.")&inform(cost,rooms, beds) I managed to find Kamienica Morska Gdynia on the given date.
19 user tak affirm() so
20 system Dobrze, oto Pana kod rezerwacji undada-sea-2010, płatności należy dokonać pod tym linkiem: https://fake-blik.cn/pay/?transaction_id=2318031 affirm() Okay, here is your reservation code undada-sea-2010, payment should be made via this link: https://fake-blik.cn/pay/?transaction_id=2318031
21 system Czy mogę jeszcze w czymś pomóc? more_help() Can I help with anything else?
22 user nie dziekuje bye() no thanks
23 system Dziękuje za skorzystanie z naszych usług, miłego wyjazdu! bye() Thank you for using our services, have a nice trip!

View File

@ -0,0 +1,11 @@
role value act value_en
system Witam, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mog<6F> Ci pom<6F>c? welcomemsg() Hello, I am a dialogue system for booking hotel rooms.
user Potrzebowałbym zarezerwować pokój hotelowy w Mediolanie na przyszły tydzień, pon-wt, najlepiej blisko dzielnicy san siro inform(date='next week', place='Mediolan', place.nearby='San Siro') I would like to book a hotel room in Milan for next week, Mon-Tue, preferably close to the San Siro district
system Dla ilu osób ma być pokój? request(people) How many people should the room accommodate?
user Dla jednej osoby, koniecznie z łóżkiem dwuosobowym i klimatyzacją inform(people=1, beds.double=1,extra.airConditioning=true) For one person, necessarily with a double bed and air conditioning
system W podanym przez Ciebie terminie znalazłem 3-gwiazdkowy Hotel Astoria za 280 zł za noc. W tej cenie są zapewnione śniadania. W pokoju jest łóżko 2-osobowe i klimatyzacja. inform(price=280, stars=3,extra.breakfastIncluded=true, extra.airConditioning=true, beds.double=2)&offer(hotel='Hotel Astoria') On the date you specified, I found a 3-star Hotel Astoria for PLN 280 per night.
user Jak daleko jest on od Stadio San Siro? request(extra.distance.SanSiro) How far is it from Stadio San Siro?
system Hotel znajduje się w odległości 200 metrów od San Siro. inform(extra.distance.SanSiro=0.2) The hotel is 200 meters from San Siro.
user Jak wyglądają godziny doby hotelowej w proponowanym hotelu? request(extra.check-in, extra.check-out) What are the hotel hours at the proposed hotel?
system Doba hotelowa trwa od 15:00 do 10:00. inform(extra.check-in=15:00, extra=check.out=10:00) The hotel day is from 15:00 to 10:00.
user Ok, dziękuje to wszystko bye() Ok, thank you for all that
1 role value act value_en
2 system Witam, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mog� Ci pom�c? welcomemsg() Hello, I am a dialogue system for booking hotel rooms.
3 user Potrzebowałbym zarezerwować pokój hotelowy w Mediolanie na przyszły tydzień, pon-wt, najlepiej blisko dzielnicy san siro inform(date='next week', place='Mediolan', place.nearby='San Siro') I would like to book a hotel room in Milan for next week, Mon-Tue, preferably close to the San Siro district
4 system Dla ilu osób ma być pokój? request(people) How many people should the room accommodate?
5 user Dla jednej osoby, koniecznie z łóżkiem dwuosobowym i klimatyzacją inform(people=1, beds.double=1,extra.airConditioning=true) For one person, necessarily with a double bed and air conditioning
6 system W podanym przez Ciebie terminie znalazłem 3-gwiazdkowy Hotel Astoria za 280 zł za noc. W tej cenie są zapewnione śniadania. W pokoju jest łóżko 2-osobowe i klimatyzacja. inform(price=280, stars=3,extra.breakfastIncluded=true, extra.airConditioning=true, beds.double=2)&offer(hotel='Hotel Astoria') On the date you specified, I found a 3-star Hotel Astoria for PLN 280 per night.
7 user Jak daleko jest on od Stadio San Siro? request(extra.distance.SanSiro) How far is it from Stadio San Siro?
8 system Hotel znajduje się w odległości 200 metrów od San Siro. inform(extra.distance.SanSiro=0.2) The hotel is 200 meters from San Siro.
9 user Jak wyglądają godziny doby hotelowej w proponowanym hotelu? request(extra.check-in, extra.check-out) What are the hotel hours at the proposed hotel?
10 system Doba hotelowa trwa od 15:00 do 10:00. inform(extra.check-in=15:00, extra=check.out=10:00) The hotel day is from 15:00 to 10:00.
11 user Ok, dziękuje to wszystko bye() Ok, thank you for all that

View File

@ -0,0 +1,13 @@
role value act value_en
system Witam, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Hello, I am a dialogue system for booking hotel rooms.
user Chciałbym znaleźć hotel w Grecji, który ma basen i jest blisko plaży. Jak najtańszy inform(place='Greece', extra.swimmingPool=true, place.nearby='beach', price='cheapest') I would like to find a hotel in Greece that has a swimming pool and is close to the beach.
system Dla ilu osób ma być pokój? request(people) How many people should the room accommodate?
user 2 inform(people=2) 2
system Jaki termin Cię interesuje? request(date) What date are you interested in?
user Dowolny tydzień lipca inform(date='any week of July') Any week in July
system W terminie 12-19 lipca dostępny jest pokój 2-osobowy na Krecie w cenie 230 zł za dobę razem ze śniadaniem. Czy taka opcja Ci odpowiada? inform(people=2, date.from=12.07, date.to=19.07, place='Kreta', price=230, extra.breakfastIncluded=true) A double room in Crete is available from July 12-19 for PLN 230 per day including breakfast.
user Jak najbardziej. Chciałbym tylko dopytać czy jest możliwość bezpłatnego odwołania affirm()&request(extra.freeCancellation) Of course.
system Bezpłatne odwołanie rezerwacji można dokonać maksymalnie dwa tygodnie przed datą przyjazdu. W późniejszym terminie opłata za odwołanie rezerwacji wynosi 50% całkowitej ceny za pobyt. inform(extra.freeCancellation='two weeks before arrival', price=50%) Free cancellation can be made up to two weeks prior to arrival.
user Dziękuję bardzo. Czy można zapłacić blikiem? thankyou()&request(extra.payment.blik) Thank you very much.
system Jak najbardziej. Całkowita kwota za pobyt wynosi 1610 zł. W przypadku płatności BLIK, proszę wysłać pieniądze na numer telefonu 345-645-423. inform(extra.payment.blik=true) Of course.
user Dziękuję bardzo bye() Thank you very much
1 role value act value_en
2 system Witam, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Hello, I am a dialogue system for booking hotel rooms.
3 user Chciałbym znaleźć hotel w Grecji, który ma basen i jest blisko plaży. Jak najtańszy inform(place='Greece', extra.swimmingPool=true, place.nearby='beach', price='cheapest') I would like to find a hotel in Greece that has a swimming pool and is close to the beach.
4 system Dla ilu osób ma być pokój? request(people) How many people should the room accommodate?
5 user 2 inform(people=2) 2
6 system Jaki termin Cię interesuje? request(date) What date are you interested in?
7 user Dowolny tydzień lipca inform(date='any week of July') Any week in July
8 system W terminie 12-19 lipca dostępny jest pokój 2-osobowy na Krecie w cenie 230 zł za dobę razem ze śniadaniem. Czy taka opcja Ci odpowiada? inform(people=2, date.from=12.07, date.to=19.07, place='Kreta', price=230, extra.breakfastIncluded=true) A double room in Crete is available from July 12-19 for PLN 230 per day including breakfast.
9 user Jak najbardziej. Chciałbym tylko dopytać czy jest możliwość bezpłatnego odwołania affirm()&request(extra.freeCancellation) Of course.
10 system Bezpłatne odwołanie rezerwacji można dokonać maksymalnie dwa tygodnie przed datą przyjazdu. W późniejszym terminie opłata za odwołanie rezerwacji wynosi 50% całkowitej ceny za pobyt. inform(extra.freeCancellation='two weeks before arrival', price=50%) Free cancellation can be made up to two weeks prior to arrival.
11 user Dziękuję bardzo. Czy można zapłacić blikiem? thankyou()&request(extra.payment.blik) Thank you very much.
12 system Jak najbardziej. Całkowita kwota za pobyt wynosi 1610 zł. W przypadku płatności BLIK, proszę wysłać pieniądze na numer telefonu 345-645-423. inform(extra.payment.blik=true) Of course.
13 user Dziękuję bardzo bye() Thank you very much

View File

@ -0,0 +1,9 @@
role value act value_en
system Dzień dobry, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Good morning, I am a dialogue system for booking hotel rooms.
user chciałbym zarezerować jak najtańszy hotel all-inclusive na Wyspach Kanaryjskich inform(price='cheapest', place='Canary Island', extra.all-inclusive=true) I would like to book the cheapest all-inclusive hotel in the Canary Islands
system Jaki termin Cię interesuje? request(date) What date are you interested in?
user 01.09-10.09 tego roku inform(date.from=01.09.2024, date.to=10.09.2024) 01/09-10/09 this year
system Mogę zaproponować Hotel Noelia, w którym pokój dwuosobowy w podanym przez Ciebie terminie kosztuje 367 zł. inform(people=2, price=367)&offer(hotel='Hotel Noelia') I can recommend Hotel Noelia, where a double room costs PLN 367 for the dates you specified.
user Czy jest blisko plaży request(extra.distance.beach) Is it close to the beach
system Znajduje się w odległości 200 metrów od plaży. inform(extra.distance.beach=0.2) It is located 200 meters from the beach.
user Dziękuję. W takim razie chcialbym go zarezerwowac affirm()&bye() Thank you.
1 role value act value_en
2 system Dzień dobry, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Good morning, I am a dialogue system for booking hotel rooms.
3 user chciałbym zarezerować jak najtańszy hotel all-inclusive na Wyspach Kanaryjskich inform(price='cheapest', place='Canary Island', extra.all-inclusive=true) I would like to book the cheapest all-inclusive hotel in the Canary Islands
4 system Jaki termin Cię interesuje? request(date) What date are you interested in?
5 user 01.09-10.09 tego roku inform(date.from=01.09.2024, date.to=10.09.2024) 01/09-10/09 this year
6 system Mogę zaproponować Hotel Noelia, w którym pokój dwuosobowy w podanym przez Ciebie terminie kosztuje 367 zł. inform(people=2, price=367)&offer(hotel='Hotel Noelia') I can recommend Hotel Noelia, where a double room costs PLN 367 for the dates you specified.
7 user Czy jest blisko plaży request(extra.distance.beach) Is it close to the beach
8 system Znajduje się w odległości 200 metrów od plaży. inform(extra.distance.beach=0.2) It is located 200 meters from the beach.
9 user Dziękuję. W takim razie chcialbym go zarezerwowac affirm()&bye() Thank you.

View File

@ -0,0 +1,15 @@
role value act value_en
system Dzień dobry, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Good morning, I am a dialogue system for booking hotel rooms.
user Chciałbym zarezerwować pokój dla jednej osoby niedaleko gór sowich. Cena ma nie przekraczać 200zł za dobę oraz musi być zapewniona możliwość śniadania na miejscu inform(people=1, place='Góry Sowie', price.perDay.max=200, extra.breakfastIncluded=true) I would like to book a room for one person near the Owl Mountains.
"system " Jaki termin Cię interesuje? request(date) What date are you interested in?
user 29-31 marca request(date.from=29.03, date.to=31.03) 29-31 mark
system "W podanym terminie mógłbym zaproponować 3-gwiazdkowy hotel ""Dom pod Twierdzą"" w cenie 190 zł za dobę. W hotelu jest restauracja oferująca posiłki, w tym śniadania, jednak nie są one uwzględnione w cenie hotelu." inform(extra.star=3,extra.restaurant=true, extra.breaksaftIncluded=false, price=190)&offer(hotel='Dom pod Twierdza') "On the given date, I could offer a 3-star hotel ""Dom pod Wiedzą"" for PLN 190 per day. "
user A czy znalazłbyś ofertę, która uwzględnia posiłki w cenie pokoju? inform(extra.breakfastIncluded=true)&reqalts() Could you find an offer that includes meals in the room price?
system "Znalazłem hotel ""Rezydencja Klonowa"", ale przekracza on nieco Twoje wymagania. Cena za dobę wraz ze śniadaniem wynosi 214 zł." inform(price=214)&offer(hotel='Rezydencja Klonowa') "I found the ""Rezydencja Klonowa"" hotel, but it exceeds your requirements a bit. "
user Czy bardziej opłaca się pierwszy wybór z dokupionym śniadaniem czy drugi z wliczonym? reqmore(hotel) Is it more profitable to choose the first choice with breakfast included or the second one with breakfast included?
system W pierwszej opcji śniadanie kosztuje 35 zł. Zatem całkowity koszt za dobę wyniesie więcej niż w przypadku drugiej opcji. inform(extra.breakfast.price=35) In the first option, breakfast costs PLN 35.
user Tak więc chciałbym zarezerwować drugą opcję inform(extra.option=2)&affirm() So I would like to book the second option
system Proszę o podanie swoich danych: imię i nazwisko, numer telefonu i adres email. request(data[firstName, lastName, phoneNumber, email]) Please provide your details: name and surname, telephone number and email address.
user Warol Kojtyła, +379 213 769 420, john_paul_ii@vatican.va inform((data[name, phoneNumber, email] = [Warol Kojtyła, '+379 213 769 420', 'john_paul_ii@vatican.va'] Warol Kojtyła, 379 213 769 420, john_paul_ii@vatican.va
system Numer Twojej rezerwacji to 3453221512. Pamiętaj, o tym, żeby ją opłacić maksymalnie 3 dni przed przyjazdem. W przeciwnym wypadku zostanie ona anulowana. inform(extra.reservationNumber='3453221512', extra.payment.date='minimum 3 days before arrival') Your reservation number is 3453221512. Remember to pay it no later than 3 days before arrival.
user Dziękuję za rezerwację bye() Thank you for the reservation
1 role value act value_en
2 system Dzień dobry, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Good morning, I am a dialogue system for booking hotel rooms.
3 user Chciałbym zarezerwować pokój dla jednej osoby niedaleko gór sowich. Cena ma nie przekraczać 200zł za dobę oraz musi być zapewniona możliwość śniadania na miejscu inform(people=1, place='Góry Sowie', price.perDay.max=200, extra.breakfastIncluded=true) I would like to book a room for one person near the Owl Mountains.
4 system Jaki termin Cię interesuje? request(date) What date are you interested in?
5 user 29-31 marca request(date.from=29.03, date.to=31.03) 29-31 mark
6 system W podanym terminie mógłbym zaproponować 3-gwiazdkowy hotel "Dom pod Twierdzą" w cenie 190 zł za dobę. W hotelu jest restauracja oferująca posiłki, w tym śniadania, jednak nie są one uwzględnione w cenie hotelu. inform(extra.star=3,extra.restaurant=true, extra.breaksaftIncluded=false, price=190)&offer(hotel='Dom pod Twierdza') On the given date, I could offer a 3-star hotel "Dom pod Wiedzą" for PLN 190 per day.
7 user A czy znalazłbyś ofertę, która uwzględnia posiłki w cenie pokoju? inform(extra.breakfastIncluded=true)&reqalts() Could you find an offer that includes meals in the room price?
8 system Znalazłem hotel "Rezydencja Klonowa", ale przekracza on nieco Twoje wymagania. Cena za dobę wraz ze śniadaniem wynosi 214 zł. inform(price=214)&offer(hotel='Rezydencja Klonowa') I found the "Rezydencja Klonowa" hotel, but it exceeds your requirements a bit.
9 user Czy bardziej opłaca się pierwszy wybór z dokupionym śniadaniem czy drugi z wliczonym? reqmore(hotel) Is it more profitable to choose the first choice with breakfast included or the second one with breakfast included?
10 system W pierwszej opcji śniadanie kosztuje 35 zł. Zatem całkowity koszt za dobę wyniesie więcej niż w przypadku drugiej opcji. inform(extra.breakfast.price=35) In the first option, breakfast costs PLN 35.
11 user Tak więc chciałbym zarezerwować drugą opcję inform(extra.option=2)&affirm() So I would like to book the second option
12 system Proszę o podanie swoich danych: imię i nazwisko, numer telefonu i adres email. request(data[firstName, lastName, phoneNumber, email]) Please provide your details: name and surname, telephone number and email address.
13 user Warol Kojtyła, +379 213 769 420, john_paul_ii@vatican.va inform((data[name, phoneNumber, email] = [Warol Kojtyła, '+379 213 769 420', 'john_paul_ii@vatican.va'] Warol Kojtyła, 379 213 769 420, john_paul_ii@vatican.va
14 system Numer Twojej rezerwacji to 3453221512. Pamiętaj, o tym, żeby ją opłacić maksymalnie 3 dni przed przyjazdem. W przeciwnym wypadku zostanie ona anulowana. inform(extra.reservationNumber='3453221512', extra.payment.date='minimum 3 days before arrival') Your reservation number is 3453221512. Remember to pay it no later than 3 days before arrival.
15 user Dziękuję za rezerwację bye() Thank you for the reservation

View File

@ -0,0 +1,21 @@
role value act value_en
system Cześć, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Hello, I am a dialogue system for booking hotel rooms.
user Szukam wolnych pokoi na ten weekend w Szklarskiej Porębie lub w jej okolicy. Czy mógłbyś coś dla mnie odszukać? inform(place='Szklarska Poreba', date='this weekend') I am looking for available rooms for this weekend in Szklarska Poręba or its surroundings.
system Dla ilu osób mają być pokoje? request(people) How many people should the rooms accommodate?
user Pokój dla 4 osób inform(people=4) Room for 4 people
system W najbliższy weekend nie ma niestety dostępnych pokoi 4-osobowych. Mogę zaproponować 2 pokoje 2-osobowe albo poszukać w późniejszym terminie. canthelp(room.people=4)&inform(room.people=2, room.number=2) Unfortunately, there are no 4-person rooms available this weekend.
user A jaki inny termin mógłbyś zaproponować? request(date) What other date could you suggest?
system W terminie 30-31 marca jest dostępny pokój 4-osobowy w hotelu Blue Mountain Resort. Cena za dobę wynosi 431 zł.  inform(date.from=30.03, date.to=31.03, room.people=4, price.perDay=431)&offer('Blue Mountain Resort') A 4-person room is available at the Blue Mountain Resort hotel on March 30-31.
user A czy znajdzie się coś tańszego? inform(price='cheaper')&reqalts() Is there anything cheaper?
system Znalazłem również hotel Kryształ w cenie 340 zł za dobę, jednak jest on w nieco niższym standardzie. inform(price.perDay=340, extra.standard='lower')&offer(hotel='Kryształ') I also found the Kryształ hotel for PLN 340 per night, but it is of a slightly lower standard.
user Ile ma gwiazdek? request(star) How many stars does it have?
system Hotel jest 3-gwiazdkowy. inform(star=3) The hotel is 3 stars.
user Może być. Chciałbym zarezerwować ten pokój w terminie 30-31 marca. Czy jest możliwość dokupienia śniadania? inform(date.from=30.03, date.to=31.03)&affirm()&request(breakfast) May be.
system Jest możliwość dokupienia śniadania w cenie 39,31 zł za dzień. W celu stworzenia rezerwacji potrzebuję Twoje dane: imię i nazwisko, numer telefonu oraz email. inform(breakfast.price=39,31)&request(data[firstName, lastName, phoneNumber, email]) It is possible to purchase breakfast for PLN 39.31 per day.
user W takim razie poproszę o dokupienie śniadania na cały pobyt. inform(breakfast=true) In that case, I will ask you to buy breakfast for the entire stay.
user Dane do rezerwacji: Michał Gulczyński, 123456789, adres@gmail.com inform(data[name, phoneNumber, email] = ['Michał Gulczyński', '123456789', 'adres@gmail.com'] Reservation details: Michał Gulczyński, 123456789, adres@gmail.com
system Numer Twojej rezerwacji to 3453221513. Pamiętaj, o tym, żeby ją opłacić maksymalnie 3 dni przed przyjazdem. W przeciwnym wypadku zostanie ona anulowana. inform(extra.reservationNumber='3453221512', extra.payment.date='minimum 3 days before arrival') Your reservation number is 3453221513. Remember to pay it no later than 3 days before arrival.
user Ok, dziękuję za informacje thankyou() OK thank you for the information
user Czy mógłbyś mi jeszcze podać godziny zameldowania i wymeldowania? request(extra.check-in, extra.check-out) Could you please tell me the check-in and check-out times?
system Doba hotelowa jest w godzinach 15:00-10:00. inform(extra.check-in=15:00, extra=check.out=10:00) Hotel check-in time is from 15:00 to 10:00.
user Ok, dziękuję za pomoc bye() Ok thank you for help
1 role value act value_en
2 system Cześć, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Hello, I am a dialogue system for booking hotel rooms.
3 user Szukam wolnych pokoi na ten weekend w Szklarskiej Porębie lub w jej okolicy. Czy mógłbyś coś dla mnie odszukać? inform(place='Szklarska Poreba', date='this weekend') I am looking for available rooms for this weekend in Szklarska Poręba or its surroundings.
4 system Dla ilu osób mają być pokoje? request(people) How many people should the rooms accommodate?
5 user Pokój dla 4 osób inform(people=4) Room for 4 people
6 system W najbliższy weekend nie ma niestety dostępnych pokoi 4-osobowych. Mogę zaproponować 2 pokoje 2-osobowe albo poszukać w późniejszym terminie. canthelp(room.people=4)&inform(room.people=2, room.number=2) Unfortunately, there are no 4-person rooms available this weekend.
7 user A jaki inny termin mógłbyś zaproponować? request(date) What other date could you suggest?
8 system W terminie 30-31 marca jest dostępny pokój 4-osobowy w hotelu Blue Mountain Resort. Cena za dobę wynosi 431 zł.  inform(date.from=30.03, date.to=31.03, room.people=4, price.perDay=431)&offer('Blue Mountain Resort') A 4-person room is available at the Blue Mountain Resort hotel on March 30-31.
9 user A czy znajdzie się coś tańszego? inform(price='cheaper')&reqalts() Is there anything cheaper?
10 system Znalazłem również hotel Kryształ w cenie 340 zł za dobę, jednak jest on w nieco niższym standardzie. inform(price.perDay=340, extra.standard='lower')&offer(hotel='Kryształ') I also found the Kryształ hotel for PLN 340 per night, but it is of a slightly lower standard.
11 user Ile ma gwiazdek? request(star) How many stars does it have?
12 system Hotel jest 3-gwiazdkowy. inform(star=3) The hotel is 3 stars.
13 user Może być. Chciałbym zarezerwować ten pokój w terminie 30-31 marca. Czy jest możliwość dokupienia śniadania? inform(date.from=30.03, date.to=31.03)&affirm()&request(breakfast) May be.
14 system Jest możliwość dokupienia śniadania w cenie 39,31 zł za dzień. W celu stworzenia rezerwacji potrzebuję Twoje dane: imię i nazwisko, numer telefonu oraz email. inform(breakfast.price=39,31)&request(data[firstName, lastName, phoneNumber, email]) It is possible to purchase breakfast for PLN 39.31 per day.
15 user W takim razie poproszę o dokupienie śniadania na cały pobyt. inform(breakfast=true) In that case, I will ask you to buy breakfast for the entire stay.
16 user Dane do rezerwacji: Michał Gulczyński, 123456789, adres@gmail.com inform(data[name, phoneNumber, email] = ['Michał Gulczyński', '123456789', 'adres@gmail.com'] Reservation details: Michał Gulczyński, 123456789, adres@gmail.com
17 system Numer Twojej rezerwacji to 3453221513. Pamiętaj, o tym, żeby ją opłacić maksymalnie 3 dni przed przyjazdem. W przeciwnym wypadku zostanie ona anulowana. inform(extra.reservationNumber='3453221512', extra.payment.date='minimum 3 days before arrival') Your reservation number is 3453221513. Remember to pay it no later than 3 days before arrival.
18 user Ok, dziękuję za informacje thankyou() OK thank you for the information
19 user Czy mógłbyś mi jeszcze podać godziny zameldowania i wymeldowania? request(extra.check-in, extra.check-out) Could you please tell me the check-in and check-out times?
20 system Doba hotelowa jest w godzinach 15:00-10:00. inform(extra.check-in=15:00, extra=check.out=10:00) Hotel check-in time is from 15:00 to 10:00.
21 user Ok, dziękuję za pomoc bye() Ok thank you for help

View File

@ -0,0 +1,10 @@
role value act value_en
system Dzień dobry, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Good morning, I am a hotel room booking system.
user Dzień dobry, chciałbym zarezerwować pokój dla 3 osób w Amsterdamie. Najlepiej, gdyby hotel znajdował się w miarę blisko metra i nie był za drogi. Nie musi być w centrum. inform(people=3, place='Amsterdam', price='cheap', extra.metro=true, extra.cityCentre=false) Good morning, I would like to book a room for 3 people in Amsterdam.
system Znalazłem hotel, który może odpowiadać Twoim wymaganiom. Volkshotel leży na obrzeżach Amsterdamu i w odległości 200 metrów od niego znajduje się metro. Cena za dobę w tym hotelu wynosi 240 zł. inform(price=200, place='Amsterdam', extra.metro.distance=0.2, extra.suburbs=true)&offer(hotel='Volkshotel') I have found a hotel that may suit your requirements.
user Czy są tam wolne pokoje w dniach od 1 do 6 kwietnia? request(rooms, date.from=01.04, date.to=06.04) Are there any rooms available from April 1st to April 6th?
system Tak, jest dostępny pokój 3-osobowy. inform(room.people=3) Yes, there is a triple room available.
user W takim razie poproszę o złożenie rezerwacji w tym hotelu na podane dni. affirm() In that case, please make a reservation at this hotel for the given days.
system Chciałbyś dokupić pakiet śniadań w cenie 29 zł za dobę za osobę? request(extra.breakfast, extra.breakfast.price=29) Would you like to buy a breakfast package for PLN 29 per day per person?
user Nie, dziękuję. negate() No thanks.
system Numer Twojej rezerwacji to 3453221512. Pamiętaj, o tym, żeby ją opłacić maksymalnie 3 dni przed przyjazdem. W przeciwnym wypadku zostanie ona anulowana. inform(extra.reservationNumber='3453221512', extra.payment.date='minimum 3 days before arrival') Your reservation number is 3453221512. Remember to pay it no later than 3 days before arrival.
1 role value act value_en
2 system Dzień dobry, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Good morning, I am a hotel room booking system.
3 user Dzień dobry, chciałbym zarezerwować pokój dla 3 osób w Amsterdamie. Najlepiej, gdyby hotel znajdował się w miarę blisko metra i nie był za drogi. Nie musi być w centrum. inform(people=3, place='Amsterdam', price='cheap', extra.metro=true, extra.cityCentre=false) Good morning, I would like to book a room for 3 people in Amsterdam.
4 system Znalazłem hotel, który może odpowiadać Twoim wymaganiom. Volkshotel leży na obrzeżach Amsterdamu i w odległości 200 metrów od niego znajduje się metro. Cena za dobę w tym hotelu wynosi 240 zł. inform(price=200, place='Amsterdam', extra.metro.distance=0.2, extra.suburbs=true)&offer(hotel='Volkshotel') I have found a hotel that may suit your requirements.
5 user Czy są tam wolne pokoje w dniach od 1 do 6 kwietnia? request(rooms, date.from=01.04, date.to=06.04) Are there any rooms available from April 1st to April 6th?
6 system Tak, jest dostępny pokój 3-osobowy. inform(room.people=3) Yes, there is a triple room available.
7 user W takim razie poproszę o złożenie rezerwacji w tym hotelu na podane dni. affirm() In that case, please make a reservation at this hotel for the given days.
8 system Chciałbyś dokupić pakiet śniadań w cenie 29 zł za dobę za osobę? request(extra.breakfast, extra.breakfast.price=29) Would you like to buy a breakfast package for PLN 29 per day per person?
9 user Nie, dziękuję. negate() No thanks.
10 system Numer Twojej rezerwacji to 3453221512. Pamiętaj, o tym, żeby ją opłacić maksymalnie 3 dni przed przyjazdem. W przeciwnym wypadku zostanie ona anulowana. inform(extra.reservationNumber='3453221512', extra.payment.date='minimum 3 days before arrival') Your reservation number is 3453221512. Remember to pay it no later than 3 days before arrival.

View File

@ -0,0 +1,10 @@
role value act value_en
system Hej, jestem systemem dialogowym, który pomoże Ci zarezerwować pokój hotelowy. Co mogę dla Ciebie zrobić? welcomemsg() Hello, I'm a dialogue system that will help you book a hotel room.
user Chciałbym wylecieć do las vegas na tydzień, w moim hotelu musi być kasyno ale cena za noc na osobę nie może przekroczyć $100 inform(place='Las Vegas', extra.duration='one week', extra.casino=true, price.perDay.max=100, price.currency='dollar') I would like to fly to las vegas for a week, my hotel must have a casino but the price per night per person cannot exceed $100
system Niestety nie mogę zaproponować hotelu, który odpowiadałby Twoim oczekiwaniom. Najtańsza opcja w okolicy wynosi $167. canthelp(price)&inform(price.perDay.min=147, price.currency='dollar') Unfortunately, I cannot recommend a hotel that would meet your expectations.
user Kurcze, jak sprawdzałem na bookingu to wydawało mi sie ze nie ma z tym problemu. Sprawdź jeszcze raz na 11-14 kwietnia np  Ellis Island Hotel Casino & Brewery restart()&inform(date.from=11.04, date.to=14.04, hotel='Ellis Island Hotel Casino & Brewery') Damn, when I checked on booking, it seemed to me that there was no problem with it.
system Przepraszam, za wprowadzenie w błąd. Rzeczywiście ten hotel oferuje niższe ceny. Czy chciałbyś zarezerwować w nim nocleg? affirm()&request(reservation) Sorry for misleading you.
user tak, na 3 noce od 11 kwietnia affirm() yes, for 3 nights from April 11th
system W celu stworzenia rezerwacji potrzebuję Twoje dane: imię i nazwisko, numer telefonu oraz email. request(data[firstName, lastName, phoneNumber, email]) In order to create a reservation, I need your data: name and surname, telephone number and email address.
user Karol Cyganik 12345677 ksuevkj@nf.com inform(data[name, phoneNumber, email] = ['Karol Cyganik', '12345677', 'ksuevkj@nf.com'] Karol Cyganik 12345677 ksuevkj@nf.com
system Numer Twojej rezerwacji to 3453221514. Pamiętaj, o tym, żeby ją opłacić maksymalnie 3 dni przed przyjazdem. W przeciwnym wypadku zostanie ona anulowana. inform(extra.reservationNumber='3453221514', extra.payment.date='minimum 3 days before arrival') Your reservation number is 3453221514. Remember to pay it no later than 3 days before arrival.
1 role value act value_en
2 system Hej, jestem systemem dialogowym, który pomoże Ci zarezerwować pokój hotelowy. Co mogę dla Ciebie zrobić? welcomemsg() Hello, I'm a dialogue system that will help you book a hotel room.
3 user Chciałbym wylecieć do las vegas na tydzień, w moim hotelu musi być kasyno ale cena za noc na osobę nie może przekroczyć $100 inform(place='Las Vegas', extra.duration='one week', extra.casino=true, price.perDay.max=100, price.currency='dollar') I would like to fly to las vegas for a week, my hotel must have a casino but the price per night per person cannot exceed $100
4 system Niestety nie mogę zaproponować hotelu, który odpowiadałby Twoim oczekiwaniom. Najtańsza opcja w okolicy wynosi $167. canthelp(price)&inform(price.perDay.min=147, price.currency='dollar') Unfortunately, I cannot recommend a hotel that would meet your expectations.
5 user Kurcze, jak sprawdzałem na bookingu to wydawało mi sie ze nie ma z tym problemu. Sprawdź jeszcze raz na 11-14 kwietnia np  Ellis Island Hotel Casino & Brewery restart()&inform(date.from=11.04, date.to=14.04, hotel='Ellis Island Hotel Casino & Brewery') Damn, when I checked on booking, it seemed to me that there was no problem with it.
6 system Przepraszam, za wprowadzenie w błąd. Rzeczywiście ten hotel oferuje niższe ceny. Czy chciałbyś zarezerwować w nim nocleg? affirm()&request(reservation) Sorry for misleading you.
7 user tak, na 3 noce od 11 kwietnia affirm() yes, for 3 nights from April 11th
8 system W celu stworzenia rezerwacji potrzebuję Twoje dane: imię i nazwisko, numer telefonu oraz email. request(data[firstName, lastName, phoneNumber, email]) In order to create a reservation, I need your data: name and surname, telephone number and email address.
9 user Karol Cyganik 12345677 ksuevkj@nf.com inform(data[name, phoneNumber, email] = ['Karol Cyganik', '12345677', 'ksuevkj@nf.com'] Karol Cyganik 12345677 ksuevkj@nf.com
10 system Numer Twojej rezerwacji to 3453221514. Pamiętaj, o tym, żeby ją opłacić maksymalnie 3 dni przed przyjazdem. W przeciwnym wypadku zostanie ona anulowana. inform(extra.reservationNumber='3453221514', extra.payment.date='minimum 3 days before arrival') Your reservation number is 3453221514. Remember to pay it no later than 3 days before arrival.

View File

@ -0,0 +1,13 @@
role value act value_en
"system " Cześć, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Hello, I am a dialogue system for booking hotel rooms.
user Czy system ten skupia się na konkretnej sieci hoteli czy skupiasz się na całym rynku ofert? request(extra.specificHotel) Does this system focus on a specific hotel chain or do you focus on the entire market of offers?
system W swojej ofercie mam posiadam bardzo wiele hoteli, nie tylko z konkretnej sieci. inform(specificHotel=false) My offer includes many hotels, not only from a specific chain.
user Wybornie planuje wyjazd do Lizbony czy mógłbyś znależć coś ciekawego? inform(place='Lizbona') I'm planning a trip to Lisbon, could you find something interesting?
system Jaki termin Cię interesuje i dla ilu osób? request(date, people) What date are you interested in and for how many people?
user Coś na końcówkę marca dla 5 osób. inform(date='end of March, people=5) Something for the end of March for 5 people.
system Mogę zaproponować pokój 5-osobowy w hotelu Lisboa w terminie 28-31 marca. Cena za dobę wynosi 506 zł za cały pokój. inform(room.people=5, date.from=28.03, date.to=31.03, price.perDay.perRoom=506)&offer(hotel='hotel Lisboa') I can offer a 5-person room at the Lisboa hotel on March 28-31.
user Jest to cena jednostkowa czy za całą grupę? request(price.perDay.perRoom) Is this a unit price or for the entire group?
system Jest to cena za całą grupę.  inform(price.perDay.perRoom=true) This is the price for the entire group. 
user A czy wiadomo jaki metraż jest tego pokoju i czy ma więcej niż jedną łazienkę? request(room.size, extra.bathroom.number='more than one') Do you know what the size of this room is and whether it has more than one bathroom?
system Pokój ma 48 metrów kwadratowych i posiada jedną łazienkę. inform(room.size=48, extra.bathroom.number=1) The room is 48 square meters and has one bathroom.
user A czy w cenie do 700 zł znalazłby się pokój nieco większy, ale z dwoma łazienkami? inform(price=700, extra.bathroom.number=2) And for a price of up to PLN 700, would there be a slightly larger room, but with two bathrooms?
1 role value act value_en
2 system Cześć, jestem systemem dialogowym do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Hello, I am a dialogue system for booking hotel rooms.
3 user Czy system ten skupia się na konkretnej sieci hoteli czy skupiasz się na całym rynku ofert? request(extra.specificHotel) Does this system focus on a specific hotel chain or do you focus on the entire market of offers?
4 system W swojej ofercie mam posiadam bardzo wiele hoteli, nie tylko z konkretnej sieci. inform(specificHotel=false) My offer includes many hotels, not only from a specific chain.
5 user Wybornie planuje wyjazd do Lizbony czy mógłbyś znależć coś ciekawego? inform(place='Lizbona') I'm planning a trip to Lisbon, could you find something interesting?
6 system Jaki termin Cię interesuje i dla ilu osób? request(date, people) What date are you interested in and for how many people?
7 user Coś na końcówkę marca dla 5 osób. inform(date='end of March, people=5) Something for the end of March for 5 people.
8 system Mogę zaproponować pokój 5-osobowy w hotelu Lisboa w terminie 28-31 marca. Cena za dobę wynosi 506 zł za cały pokój. inform(room.people=5, date.from=28.03, date.to=31.03, price.perDay.perRoom=506)&offer(hotel='hotel Lisboa') I can offer a 5-person room at the Lisboa hotel on March 28-31.
9 user Jest to cena jednostkowa czy za całą grupę? request(price.perDay.perRoom) Is this a unit price or for the entire group?
10 system Jest to cena za całą grupę.  inform(price.perDay.perRoom=true) This is the price for the entire group. 
11 user A czy wiadomo jaki metraż jest tego pokoju i czy ma więcej niż jedną łazienkę? request(room.size, extra.bathroom.number='more than one') Do you know what the size of this room is and whether it has more than one bathroom?
12 system Pokój ma 48 metrów kwadratowych i posiada jedną łazienkę. inform(room.size=48, extra.bathroom.number=1) The room is 48 square meters and has one bathroom.
13 user A czy w cenie do 700 zł znalazłby się pokój nieco większy, ale z dwoma łazienkami? inform(price=700, extra.bathroom.number=2) And for a price of up to PLN 700, would there be a slightly larger room, but with two bathrooms?

View File

@ -0,0 +1,20 @@
role value act value_en
user Dzień dobry hello() Good morning
system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Hello, I am a system for booking hotel rooms.
user Chciałbym wyjechać z rodziną w góry. Nie mam konkretnego kierunku, ale ważne, żeby w okolicy były trasy, na które można iść z dziećmi. inform(place='mountains', extra='routesForChildren') I would like to go to the mountains with my family.
system W jakim terminie chciałby Pan zarezerwować pokój? request(date) When would you like to book a room?
user 19-28 lipca inform(date.from=19.07, date.to=28.07) July 19-28
system Dla ilu osób chciałbyś zarezerwować pokój? request(people) How many people would you like to book a room for?
user Dla 2 dorosłych i 2 dzieci inform(people.adult=2,people.kids=2) For 2 adults and 2 children
system "Proponuję ""Pokój rodzinny typu Standard z łóżkiem typu queen-size i rozkładaną sofą"" w hotelu Kyriad KARKONOSZE:
https://www.booking.com/Share-FkDy62
Dobrym rozwiązaniem dla rodziców z dziećmi będzie skorzystanie z kolejki na Szrenicę i spacer karkonoskim grzbietem, lub wybranie szlaku w dolinach, np. na Chybotek i Złoty Widok w Szklarskiej Porębie" offer(room='Pokój rodzinny typu Standard z łóżkiem typu queen-size i rozkładaną sofą', hotel='Kyriad KARKONOSZE', extra.link='https://www.booking.com/Share-FkDy62') "I recommend ""Standard Family Room with Queen-size Bed and Sofa Bed"" at the Kyriad KARKONOSZE Hotel:
"
user Czy ten hotel ma restaurację oferującą posiłki dla klientów? request(extra.restaurant) Does this hotel have a restaurant offering meals for customers?
system Oferta obiektu obejmuje restaurację. Śniadanie wliczone jest w cenę. inform(extra.restaurant=true, extra.breakfastIncluded=true) The property offers a restaurant.
user Jaka jest cena pobytu? request(price) What is the price of the stay?
system Łączna cena pobytu to 6 921 zł inform(price=6921) The total price of the stay is PLN 6,921
user A jaka jest cena pobytu w pokoju 2-osobowym? request(room=1, people=2) What is the price of a stay in a double room?
system Cena rezerwacji jednego pokoju 2-osobowego to 4 771 zł inform(price=4771) The booking price for one double room is PLN 4,771
user W takim razie proszę zarezerwować jeden pokój dwuosobowy affirm() Then please book one double room
1 role value act value_en
2 user Dzień dobry hello() Good morning
3 system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Hello, I am a system for booking hotel rooms.
4 user Chciałbym wyjechać z rodziną w góry. Nie mam konkretnego kierunku, ale ważne, żeby w okolicy były trasy, na które można iść z dziećmi. inform(place='mountains', extra='routesForChildren') I would like to go to the mountains with my family.
5 system W jakim terminie chciałby Pan zarezerwować pokój? request(date) When would you like to book a room?
6 user 19-28 lipca inform(date.from=19.07, date.to=28.07) July 19-28
7 system Dla ilu osób chciałbyś zarezerwować pokój? request(people) How many people would you like to book a room for?
8 user Dla 2 dorosłych i 2 dzieci inform(people.adult=2,people.kids=2) For 2 adults and 2 children
9 system Proponuję "Pokój rodzinny typu Standard z łóżkiem typu queen-size i rozkładaną sofą" w hotelu Kyriad KARKONOSZE: https://www.booking.com/Share-FkDy62 Dobrym rozwiązaniem dla rodziców z dziećmi będzie skorzystanie z kolejki na Szrenicę i spacer karkonoskim grzbietem, lub wybranie szlaku w dolinach, np. na Chybotek i Złoty Widok w Szklarskiej Porębie offer(room='Pokój rodzinny typu Standard z łóżkiem typu queen-size i rozkładaną sofą', hotel='Kyriad KARKONOSZE', extra.link='https://www.booking.com/Share-FkDy62') I recommend "Standard Family Room with Queen-size Bed and Sofa Bed" at the Kyriad KARKONOSZE Hotel:
10 user Czy ten hotel ma restaurację oferującą posiłki dla klientów? request(extra.restaurant) Does this hotel have a restaurant offering meals for customers?
11 system Oferta obiektu obejmuje restaurację. Śniadanie wliczone jest w cenę. inform(extra.restaurant=true, extra.breakfastIncluded=true) The property offers a restaurant.
12 user Jaka jest cena pobytu? request(price) What is the price of the stay?
13 system Łączna cena pobytu to 6 921 zł inform(price=6921) The total price of the stay is PLN 6,921
14 user A jaka jest cena pobytu w pokoju 2-osobowym? request(room=1, people=2) What is the price of a stay in a double room?
15 system Cena rezerwacji jednego pokoju 2-osobowego to 4 771 zł inform(price=4771) The booking price for one double room is PLN 4,771
16 user W takim razie proszę zarezerwować jeden pokój dwuosobowy affirm() Then please book one double room

View File

@ -0,0 +1,21 @@
role value act value_en
user Hej, w czym mozesz mi pomoc? hello() Hey, how can you help me?
system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Hello, I am a system for booking hotel rooms.
user Jakie macie dostępne pokoje na dzisiejszy wieczór? inform(date.from=29.03, date.to=31.03) What rooms do you have available for tonight?
system Gdzie chciałby Pan zarezerwować pokój? request(place) Where would you like to book a room?
user Pod berlinem koło tego kurortu z basenami i zjedzalniami inform(place.description='close to resort with swimming pools and water slides near Berlin') Near Berlin, next to this resort with swimming pools and dining rooms
system Czy masz na myśli kurort Tropical Island? reqmore(place='Tropical Island') Do you mean the Tropical Island resort?
user Tak affirm() So
system Dla ilu osób chciałbyś zarezerwować pokój? request(people) How many people would you like to book a room for?
user Dla 2, dla mnie i dla koleżanki którą znajde na trasie inform(people.adult=2) For 2, for me and for a friend I find on the route
system Czy masz jakieś dodatkowe ograniczenia odnośnie standardu hotelu i pokoju? request(extra) Do you have any additional restrictions regarding the hotel and room standard?
user a jakie mogą być? request(extra.options) and what can they be?
system Mogą dotyczyć na przykład posiłków wliczonych w cenę, prywatnej łazienki, ceny, basenu inform(extra.options.examples='meals included, private bathroom, price, swimming pool') They may include, for example, meals included in the price, private bathroom, price, swimming pool
user czy prywatna łazienka nie jest standardem wszedzie? request(extra.privateBathroom) isn't a private bathroom standard everywhere?
system Prywatna łazienka nie zawsze jest dostępna. Istnieją hotele umożliwiające pobyt we współdzielonych pokojach inform(extra.privateBathroom) A private bathroom is not always available.
user Chciałbym prywatną łazienkę, jakuzi i ładny widok z okna inform(extra.privateBathroom=true, extra.jacuzzi=true, extra.niceView=true) I would like a private bathroom, a jacuzzi and a nice view from the window
system "Proponuję pokój Apartament z 1 sypialnią w hotelu Bei der Kahnfährfrau... NEU ERSTVERMIETUNG:
https://www.booking.com/Share-okeCY4" offer(room='Apartament z 1 sypialnią', hotel='Bei der Kahnfährfrau... NEU ERSTVERMIETUNG', extra.link='https://www.booking.com/Share-okeCY4') "I suggest the room One-Bedroom Apartment in Hotel Bei der Kahnfährfrau... NEU ERSTVERMIETUNG:
"
user idealny affirm() ideal
user chciałbym go zarezerwować affirm() I would like to book it
1 role value act value_en
2 user Hej, w czym mozesz mi pomoc? hello() Hey, how can you help me?
3 system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Hello, I am a system for booking hotel rooms.
4 user Jakie macie dostępne pokoje na dzisiejszy wieczór? inform(date.from=29.03, date.to=31.03) What rooms do you have available for tonight?
5 system Gdzie chciałby Pan zarezerwować pokój? request(place) Where would you like to book a room?
6 user Pod berlinem koło tego kurortu z basenami i zjedzalniami inform(place.description='close to resort with swimming pools and water slides near Berlin') Near Berlin, next to this resort with swimming pools and dining rooms
7 system Czy masz na myśli kurort Tropical Island? reqmore(place='Tropical Island') Do you mean the Tropical Island resort?
8 user Tak affirm() So
9 system Dla ilu osób chciałbyś zarezerwować pokój? request(people) How many people would you like to book a room for?
10 user Dla 2, dla mnie i dla koleżanki którą znajde na trasie inform(people.adult=2) For 2, for me and for a friend I find on the route
11 system Czy masz jakieś dodatkowe ograniczenia odnośnie standardu hotelu i pokoju? request(extra) Do you have any additional restrictions regarding the hotel and room standard?
12 user a jakie mogą być? request(extra.options) and what can they be?
13 system Mogą dotyczyć na przykład posiłków wliczonych w cenę, prywatnej łazienki, ceny, basenu inform(extra.options.examples='meals included, private bathroom, price, swimming pool') They may include, for example, meals included in the price, private bathroom, price, swimming pool
14 user czy prywatna łazienka nie jest standardem wszedzie? request(extra.privateBathroom) isn't a private bathroom standard everywhere?
15 system Prywatna łazienka nie zawsze jest dostępna. Istnieją hotele umożliwiające pobyt we współdzielonych pokojach inform(extra.privateBathroom) A private bathroom is not always available.
16 user Chciałbym prywatną łazienkę, jakuzi i ładny widok z okna inform(extra.privateBathroom=true, extra.jacuzzi=true, extra.niceView=true) I would like a private bathroom, a jacuzzi and a nice view from the window
17 system Proponuję pokój Apartament z 1 sypialnią w hotelu Bei der Kahnfährfrau... NEU ERSTVERMIETUNG: https://www.booking.com/Share-okeCY4 offer(room='Apartament z 1 sypialnią', hotel='Bei der Kahnfährfrau... NEU ERSTVERMIETUNG', extra.link='https://www.booking.com/Share-okeCY4') I suggest the room One-Bedroom Apartment in Hotel Bei der Kahnfährfrau... NEU ERSTVERMIETUNG:
18 user idealny affirm() ideal
19 user chciałbym go zarezerwować affirm() I would like to book it

View File

@ -0,0 +1,15 @@
role value act value_en
user Dzień dobry hello() Good morning
system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Hello, I am a system for booking hotel rooms.
user Czy moge zarezerwowac pokoj poza Polska? request(place='abroad') Can I book a room outside Poland?
system Może Pan zarezerwować pokój w dowolnej lokalizacji, także poza Polską inform(place='abroad') You can book a room in any location, also outside Poland
user Dobrze, poprosze o pokoj w Monacium, w okolicach lotniska, dla 2 osob, lozko polaczone. Czas dojazdu z hotelu do lotniska max 15 min inform(place='Monacium', people=2, beds.double=1, extra.place='maximum 15 minutes from airport') Okay, I'd like a room in Monacium, near the airport, for 2 people, one bed combined.
system Czy masz na myśli Monachium? reqmore(place='Monachium') Do you mean Munich?
user Tak, monachium bawaria affirm() Yes, Munich Bavaria
system W jakim terminie chciałby Pan zarezerwować pokój? request(date) When would you like to book a room?
user 24-25.06.2024 inform(date.from=24.06, date.to=25.06) 24-25.06.2024
system "Proponuję pokój """"Pokój z łóżkiem typu king-size"""" w hotelu Hilton Munich Airport:
https://www.booking.com/Share-UZMQSL" offer(room='Pokój z łóżkiem typu king-size', hotel='Hilton Munich Airport', link='https://www.booking.com/Share-UZMQSL') "I recommend the ""King Room"" room at the Hilton Munich Airport:
"
user suoper, bardzo dziękuję. thankyou() great, thank you very much.
system Cieszę się, że mogłem pomóc bye() I'm glad I could help
1 role value act value_en
2 user Dzień dobry hello() Good morning
3 system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Hello, I am a system for booking hotel rooms.
4 user Czy moge zarezerwowac pokoj poza Polska? request(place='abroad') Can I book a room outside Poland?
5 system Może Pan zarezerwować pokój w dowolnej lokalizacji, także poza Polską inform(place='abroad') You can book a room in any location, also outside Poland
6 user Dobrze, poprosze o pokoj w Monacium, w okolicach lotniska, dla 2 osob, lozko polaczone. Czas dojazdu z hotelu do lotniska max 15 min inform(place='Monacium', people=2, beds.double=1, extra.place='maximum 15 minutes from airport') Okay, I'd like a room in Monacium, near the airport, for 2 people, one bed combined.
7 system Czy masz na myśli Monachium? reqmore(place='Monachium') Do you mean Munich?
8 user Tak, monachium bawaria affirm() Yes, Munich Bavaria
9 system W jakim terminie chciałby Pan zarezerwować pokój? request(date) When would you like to book a room?
10 user 24-25.06.2024 inform(date.from=24.06, date.to=25.06) 24-25.06.2024
11 system Proponuję pokój ""Pokój z łóżkiem typu king-size"" w hotelu Hilton Munich Airport: https://www.booking.com/Share-UZMQSL offer(room='Pokój z łóżkiem typu king-size', hotel='Hilton Munich Airport', link='https://www.booking.com/Share-UZMQSL') I recommend the "King Room" room at the Hilton Munich Airport:
12 user suoper, bardzo dziękuję. thankyou() great, thank you very much.
13 system Cieszę się, że mogłem pomóc bye() I'm glad I could help

View File

@ -0,0 +1,17 @@
role value act value_en
user Siema, w czym możesz mi pomóc? hello() Hello, how can you help me?
system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Hello, I am a system for booking hotel rooms.
user Chciałbym zarezerwować hotel od piątku do niedzieli w Warszawie, jakie hotele proponujesz? inform(date.description='friday to sunday', place='Warsaw') I would like to book a hotel from Friday to Sunday in Warsaw, what hotels do you recommend?
system Czy masz na myśli piątek i sobotę w bieżącym tygodniu (29.03-31.03)? reqmore(date.from=29.03, date.to=31.03) Do you mean Friday and Saturday this week (29/03-31/03)?
user Tak affirm() So
system Czy masz jakieś dodatkowe ograniczenia odnośnie standardu hotelu i pokoju? request(extra) Do you have any additional restrictions regarding the hotel and room standard?
user Chciałbym żeby standard był jak najwyższy. inform(extra.standard='highest') I would like the standard to be as high as possible.
system Dla ilu osób chciałbyś zarezerwować pokój? request(people) How many people would you like to book a room for?
user Chciałbym dokonąć rezeracji dla dwóch osób. inform(people=2) I would like to make a reservation for two people.
system "Proponuję pokój Raffles Room w Raffles Europejski Warsaw
https://www.raffles.com/warsaw/booking/#/booking/rooms/KGA?data=('hDhd!'a7w6'~aeA295dtA315fs-~rDat!2~cn!0~cg-~alBpo.gp.rn-)Cry.rk.re-~rr*)Cax!0~cy.ds!('pe.ls.as.st*)~myBse.ce.ne*)*!null-8%5D.*~5%2F2024'~8!%5BA!'03%2FB!false~C%5D~Ds8('%01DCBA85.-*_" offer(room='Raffles Room', hotel='Raffles Europejski Warsaw', extra.link='https://www.booking.com/Share-FkDy62', link='https://www.raffles.com/warsaw/booking/#/booking/rooms/KGA?data=('hDhd!'a7w6'~aeA295dtA315fs-~rDat!2~cn!0~cg-~alBpo.gp.rn-)Cry.rk.re-~rr*)Cax!0~cy.ds!('pe.ls.as.st*)~myBse.ce.ne*)*!null-8%5D.*~5%2F2024'~8!%5BA!'03%2FB!false~C%5D~Ds8('%01DCBA85.-*_') "I recommend the Raffles Room at Raffles Europejski Warsaw
"
user Brzmi dobrze, a jaki będzie koszt? request(price) Sounds good, but what will it cost?
system Przewidywany całkowity koszt: 3,220 zł inform(price=3220) Estimated total cost: PLN 3,220
user Okej, dziękuję za pomoc thankyou() Okay, thank you for your help
system Cieszę się, że mogłem pomóc bye() I'm glad I could help
1 role value act value_en
2 user Siema, w czym możesz mi pomóc? hello() Hello, how can you help me?
3 system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Hello, I am a system for booking hotel rooms.
4 user Chciałbym zarezerwować hotel od piątku do niedzieli w Warszawie, jakie hotele proponujesz? inform(date.description='friday to sunday', place='Warsaw') I would like to book a hotel from Friday to Sunday in Warsaw, what hotels do you recommend?
5 system Czy masz na myśli piątek i sobotę w bieżącym tygodniu (29.03-31.03)? reqmore(date.from=29.03, date.to=31.03) Do you mean Friday and Saturday this week (29/03-31/03)?
6 user Tak affirm() So
7 system Czy masz jakieś dodatkowe ograniczenia odnośnie standardu hotelu i pokoju? request(extra) Do you have any additional restrictions regarding the hotel and room standard?
8 user Chciałbym żeby standard był jak najwyższy. inform(extra.standard='highest') I would like the standard to be as high as possible.
9 system Dla ilu osób chciałbyś zarezerwować pokój? request(people) How many people would you like to book a room for?
10 user Chciałbym dokonąć rezeracji dla dwóch osób. inform(people=2) I would like to make a reservation for two people.
11 system Proponuję pokój Raffles Room w Raffles Europejski Warsaw https://www.raffles.com/warsaw/booking/#/booking/rooms/KGA?data=('hDhd!'a7w6'~aeA295dtA315fs-~rDat!2~cn!0~cg-~alBpo.gp.rn-)Cry.rk.re-~rr*)Cax!0~cy.ds!('pe.ls.as.st*)~myBse.ce.ne*)*!null-8%5D.*~5%2F2024'~8!%5BA!'03%2FB!false~C%5D~Ds8('%01DCBA85.-*_ offer(room='Raffles Room', hotel='Raffles Europejski Warsaw', extra.link='https://www.booking.com/Share-FkDy62', link='https://www.raffles.com/warsaw/booking/#/booking/rooms/KGA?data=('hDhd!'a7w6'~aeA295dtA315fs-~rDat!2~cn!0~cg-~alBpo.gp.rn-)Cry.rk.re-~rr*)Cax!0~cy.ds!('pe.ls.as.st*)~myBse.ce.ne*)*!null-8%5D.*~5%2F2024'~8!%5BA!'03%2FB!false~C%5D~Ds8('%01DCBA85.-*_') I recommend the Raffles Room at Raffles Europejski Warsaw
12 user Brzmi dobrze, a jaki będzie koszt? request(price) Sounds good, but what will it cost?
13 system Przewidywany całkowity koszt: 3,220 zł inform(price=3220) Estimated total cost: PLN 3,220
14 user Okej, dziękuję za pomoc thankyou() Okay, thank you for your help
15 system Cieszę się, że mogłem pomóc bye() I'm glad I could help

View File

@ -0,0 +1,32 @@
role value act value_en
user witam hello() Hello
system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Hello, I am a system for booking hotel rooms.
user witam chciałbym zarezerować pokój czy są jakies ograniczenia do lokalizacji, które mogę wybrać ? request(place) Hello, I would like to book a room. Are there any restrictions on the location I can choose?
system Nie ma ograniczeń związanych z lokalizacją inform(place='everywhere') There are no location restrictions
user mogą być poza granicami Polski ? request(place='abroad') can they be outside Poland?
system Może Pan zarezerwować pokój w dowolnej lokalizacji, także poza Polską affirm() You can book a room in any location, also outside Poland
user chciałbym zarezerwować hotel w Atenach dla 5 osób "inform(place=""Athens"", people=5)" I would like to book a hotel in Athens for 5 people
system Czy masz jakieś dodatkowe ograniczenia odnośnie standardu hotelu i pokoju? request(extra) Do you have any additional restrictions regarding the hotel and room standard?
user trzy-cztero gwiazdkowy najlepiej ze szwedzkim stołem na sniadanie i kolacje inform(extra.stars=[3,4], extra.breakfastIncluded=true, extra.dinnerIncluded=true) three or four stars, preferably with a buffet for breakfast and dinner
system W jakim terminie chciałby Pan zarezerwować pokój? request(date) When would you like to book a room?
user sierpien-wrzesien inform(date=[august, september]) August September
system Na ile dni chciałbyś zarezerwować pokój? request(date.days) How many days would you like to book a room for?
user tydzien inform(date.days=7) week
system "Proponuję hotel Athens Golden City Hotel:
https://www.booking.com/Share-4wMNmO" offer(hotel='Athens Golden City Hotel', link='https://www.booking.com/Share-4wMNmO') "I recommend Athens Golden City Hotel:
"
user wyglada obiecujace, ale potrzebowałbym do porownania jeszcze z czterech reqmore(propositions=4) looks promising, but I would need four more to compare
system "Dobrze, przesyłam kolejne propozycje:
https://www.booking.com/Share-bv5n7Kp
https://www.booking.com/Share-cxIESm
https://www.booking.com/Share-yNDZQ3
https://www.booking.com/Share-95dW4Jy" offer(links=['https://www.booking.com/Share-bv5n7Kp','https://www.booking.com/Share-cxIESm','https://www.booking.com/Share-yNDZQ3','https://www.booking.com/Share-95dW4Jy']) "Okay, I'm sending you more suggestions:
"
user Savoy Hotel odpowiadaa mi czy panstwo wspołpracujecie z hotelem i moge liczyc na dodatkowy rabat ? inform(hotel='Savoy Hotel')&request(discount) Savoy Hotel replied to me whether you cooperate with the hotel and can I count on an additional discount?
system Niestety nie współpracujemy z hotelem i nie jesteśmy w stanie zaoferować dodatkowego rabatu deny() Unfortunately, we do not cooperate with the hotel and are unable to offer an additional discount
user okej to nadal Savoy Hotel inform(hotel='Savoy Hotel') ok Savoy Hotel still did it
system "Czy dokonać rezerwacji pokoi ""Pokój typu Classic z 2 łóżkami pojedynczymi"" i ""Apartament typu Suite z 1 sypialnią"" w hotelu Savoy Hotel w terminie 02.09.2024 - 09.09.2024 w cenie 7 367 zł?" offer(rooms=['Pokój typu Classic z 2 łóżkami pojedynczymi','Apartament typu Suite z 1 sypialnią'], hotel='Savoy Hotel', date.from='02.09.2024', date.to='09.09.2024', price=7367) "Should I book the ""Classic Twin Room"" and ""One-Bedroom Suite"" rooms at the Savoy Hotel between 02/09/2024 and 09/09/2024 for PLN 7,367?"
user oczywiscie ze tak affirm() Of course
system Dokonałem rezerwacji inform(reserved=true) I made a reservation
user dzieki thankyou() Thanks
system Cieszę się, że mogłem pomóc bye() I'm glad I could help
1 role value act value_en
2 user witam hello() Hello
3 system Witam, jestem systemem do rezerwowania pokoi hotelowych. W czym mogę Ci pomóc? welcomemsg() Hello, I am a system for booking hotel rooms.
4 user witam chciałbym zarezerować pokój czy są jakies ograniczenia do lokalizacji, które mogę wybrać ? request(place) Hello, I would like to book a room. Are there any restrictions on the location I can choose?
5 system Nie ma ograniczeń związanych z lokalizacją inform(place='everywhere') There are no location restrictions
6 user mogą być poza granicami Polski ? request(place='abroad') can they be outside Poland?
7 system Może Pan zarezerwować pokój w dowolnej lokalizacji, także poza Polską affirm() You can book a room in any location, also outside Poland
8 user chciałbym zarezerwować hotel w Atenach dla 5 osób inform(place="Athens", people=5) I would like to book a hotel in Athens for 5 people
9 system Czy masz jakieś dodatkowe ograniczenia odnośnie standardu hotelu i pokoju? request(extra) Do you have any additional restrictions regarding the hotel and room standard?
10 user trzy-cztero gwiazdkowy najlepiej ze szwedzkim stołem na sniadanie i kolacje inform(extra.stars=[3,4], extra.breakfastIncluded=true, extra.dinnerIncluded=true) three or four stars, preferably with a buffet for breakfast and dinner
11 system W jakim terminie chciałby Pan zarezerwować pokój? request(date) When would you like to book a room?
12 user sierpien-wrzesien inform(date=[august, september]) August September
13 system Na ile dni chciałbyś zarezerwować pokój? request(date.days) How many days would you like to book a room for?
14 user tydzien inform(date.days=7) week
15 system Proponuję hotel Athens Golden City Hotel: https://www.booking.com/Share-4wMNmO offer(hotel='Athens Golden City Hotel', link='https://www.booking.com/Share-4wMNmO') I recommend Athens Golden City Hotel:
16 user wyglada obiecujace, ale potrzebowałbym do porownania jeszcze z czterech reqmore(propositions=4) looks promising, but I would need four more to compare
17 system Dobrze, przesyłam kolejne propozycje: https://www.booking.com/Share-bv5n7Kp https://www.booking.com/Share-cxIESm https://www.booking.com/Share-yNDZQ3 https://www.booking.com/Share-95dW4Jy offer(links=['https://www.booking.com/Share-bv5n7Kp','https://www.booking.com/Share-cxIESm','https://www.booking.com/Share-yNDZQ3','https://www.booking.com/Share-95dW4Jy']) Okay, I'm sending you more suggestions:
18 user Savoy Hotel odpowiadaa mi czy panstwo wspołpracujecie z hotelem i moge liczyc na dodatkowy rabat ? inform(hotel='Savoy Hotel')&request(discount) Savoy Hotel replied to me whether you cooperate with the hotel and can I count on an additional discount?
19 system Niestety nie współpracujemy z hotelem i nie jesteśmy w stanie zaoferować dodatkowego rabatu deny() Unfortunately, we do not cooperate with the hotel and are unable to offer an additional discount
20 user okej to nadal Savoy Hotel inform(hotel='Savoy Hotel') ok Savoy Hotel still did it
21 system Czy dokonać rezerwacji pokoi "Pokój typu Classic z 2 łóżkami pojedynczymi" i "Apartament typu Suite z 1 sypialnią" w hotelu Savoy Hotel w terminie 02.09.2024 - 09.09.2024 w cenie 7 367 zł? offer(rooms=['Pokój typu Classic z 2 łóżkami pojedynczymi','Apartament typu Suite z 1 sypialnią'], hotel='Savoy Hotel', date.from='02.09.2024', date.to='09.09.2024', price=7367) Should I book the "Classic Twin Room" and "One-Bedroom Suite" rooms at the Savoy Hotel between 02/09/2024 and 09/09/2024 for PLN 7,367?
22 user oczywiscie ze tak affirm() Of course
23 system Dokonałem rezerwacji inform(reserved=true) I made a reservation
24 user dzieki thankyou() Thanks
25 system Cieszę się, że mogłem pomóc bye() I'm glad I could help