121 lines
6.1 KiB
Plaintext
121 lines
6.1 KiB
Plaintext
|
{
|
|||
|
"cells": [
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"id": "136728fe",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"Analiza Wymagań\n",
|
|||
|
"===============\n",
|
|||
|
"\n",
|
|||
|
"Projektowanie systemów dialogowych\n",
|
|||
|
"----------------------------------\n",
|
|||
|
"\n",
|
|||
|
"Projektowanie systemu dialogowego jest procesem [zorientowanym na użytkownika](https://en.wikipedia.org/wiki/User-centered_design) <cite>(por. Jurafsky and Martin, 2020; Gould and Lewis, 1985)</cite>, który wymaga:\n",
|
|||
|
"\n",
|
|||
|
" 1. Analizy tego kim jest docelowy użytkownik systemu i na czym polegają zadania (cele), które chce on zrealizować.\n",
|
|||
|
"\n",
|
|||
|
" 2. Budowy symulatorów i prototypów.\n",
|
|||
|
"\n",
|
|||
|
" 3. Przyrostowego rozwoju i testowania z udziałem użytkowników.\n",
|
|||
|
"\n",
|
|||
|
"Punktami 2 i 3 zajmiemy się na kolejnych zajęciach. Tematem dzisiejszych zajęć jest punkt 1.\n",
|
|||
|
"\n",
|
|||
|
"Zadania\n",
|
|||
|
"-------\n",
|
|||
|
" 1. Wybrać temat projektu.\n",
|
|||
|
"\n",
|
|||
|
" 2. Zidentyfikować podstawowe zadania (cele), które użytkownik chce zrealizować korzystając z systemu.\n",
|
|||
|
"\n",
|
|||
|
" 3. Dla każdego zidentyfikowanego zadania napisać przykładowy dialog, w toku którego system zrealizuje cel użytkownika.\n",
|
|||
|
"\n",
|
|||
|
" 4. Dialogi zapisać w dokumencie `requirements-analysis.md` i umieścić w katalogu głównym gałęzi\n",
|
|||
|
" `master` repozytorium projektowego. Dokument proszę przygotować korzystając z\n",
|
|||
|
" [szablonu](requirements-analysis.md).\n",
|
|||
|
"\n",
|
|||
|
"Tematy projektów\n",
|
|||
|
"----------------\n",
|
|||
|
"\n",
|
|||
|
"### Umawianie wizyt u lekarza\n",
|
|||
|
"\n",
|
|||
|
"Celem projektu jest zbudowanie agenta dialogowego, który ma za zadanie umówić rozmówcę do lekarza pierwszego kontaktu, chyba że system uzna że konieczna jest wizyta u specjalisty.\n",
|
|||
|
"Sytuacja komunikacyjna przypomina obsługę pacjenta dzwoniącego do przychodni i chcącego umówić się na wizytę. Podczas rozmowy system ma za zadanie rozpoznać potrzebę dzwoniącego, w szczególności:\n",
|
|||
|
"\n",
|
|||
|
" - Czy chce umówić się do lekarza pierwszego kontaktu, czy do specjalisty?\n",
|
|||
|
"\n",
|
|||
|
" - Czy pacjent jest pewny do jakiego specjalisty – system powinien zadać pytania kontrolne dotyczące stanu zdrowia, aby system mógł wybrać odpowiedniego specjalistę\n",
|
|||
|
"\n",
|
|||
|
" - Czy objawy wskazują na bardzo pilną potrzebę umówienia wizyty?\n",
|
|||
|
"\n",
|
|||
|
"### Zamawianie produktów w sklepie\n",
|
|||
|
"\n",
|
|||
|
"Celem projektu jest zbudowanie agenta dialogowego, który pozwoli (np. jadąc samochodem) zrobić zakupy w sklepie spożywczym/wielobranżowym.\n",
|
|||
|
"System pozwala na wybranie produktów z listy, bądź takich wskazanych przez rozmówcę (np. na pytanie „Jakie sery pleśniowe masz w ofercie?” system wylicza produkty, bądź prosi o sprecyzowanie oczekiwań, gdy lista jest za duża).\n",
|
|||
|
"Podczas rozmowy system ma za zadanie rozpoznać potrzebę dzwoniącego, w szczególności:\n",
|
|||
|
"\n",
|
|||
|
" - Jeżeli danego produktu nie ma w ofercie, to proponuje inny z tej samej kategorii.\n",
|
|||
|
"\n",
|
|||
|
" - System stara się zachęcić klienta do zakupów przez komunikaty z propozycją zniżek (np. „Jeżeli jesteś wegetarianinem, mamy dzisiaj rabaty na produkty wegetariańskie”). Komunikaty te powinny pojawiać się na różnych etapach dialogu (na początku/w trakcie/pod koniec).\n",
|
|||
|
"\n",
|
|||
|
"Na koniec zakupów system pyta się o numer karty rabatowej i „ufa” rozmówcy, gdy w danym momencie nie może tego numeru karty rabatowej sprawdzić.\n",
|
|||
|
"\n",
|
|||
|
"### Przyjmowania zamówień w restauracji\n",
|
|||
|
"\n",
|
|||
|
"Celem projektu jest zbudowanie agenta dialogowego przyjmującego zamówienia w restauracji.\n",
|
|||
|
"System powinien rekomendować pozycje z menu na podstawie preferencji klienta oraz udzielać podstawowych informacji dotyczących zamówionego posiłków.\n",
|
|||
|
"Agent powinien wykazywać elastyczność, adaptując się do potrzeb klienta, np. umożliwiać pominięcie lub dodanie pewnych składników do posiłku.\n",
|
|||
|
"\n",
|
|||
|
"### Rezerwacja pokoi hotelowych\n",
|
|||
|
"Celem projektu jest zbudowanie agenta dialogowego pozwalającego rezerwować pokoje hotelowe (w wielu hotelach jednocześnie).\n",
|
|||
|
"Oprócz podstawowych danych takich jak termin czy liczba osób system powinien również uwzględniać inne oczekiwania klienta (darmowe wifi, odległość od centrum miasta, przedział cenowy, liczbę gwiazdek itp.), proponując odpowiednie obiekty.\n",
|
|||
|
"Agent powinien również umożliwiać odwołanie rezerwacji oraz zmianę jej parametrów."
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"id": "a26eda52",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"Metody pozyskiwania danych do budowy systemów dialogowych\n",
|
|||
|
"---------------------------------------------------------\n",
|
|||
|
" 1. Eksperymenty typu Czarnoksiężnik z Oz (temat naszych następnych zajęć).\n",
|
|||
|
"\n",
|
|||
|
" 2. Zapisy rozmów z operatorami infolinii (RODO!).\n",
|
|||
|
"\n",
|
|||
|
" 3. Dokumenty typu FAQ.\n",
|
|||
|
"\n",
|
|||
|
" 3. Dialogi z innych, zbliżonych dziedzin.\n",
|
|||
|
"\n",
|
|||
|
" 4. Dane dialogowe ogólnego przeznaczenia:\n",
|
|||
|
"\n",
|
|||
|
" - napisy filmowe: [OpenSubtitles](https://opus.nlpl.eu/OpenSubtitles-v2018.php)\n",
|
|||
|
"\n",
|
|||
|
" - logi z IRCa: [Ubuntu Dialogue Corpus](https://github.com/rkadlec/ubuntu-ranking-dataset-creator)\n",
|
|||
|
"\n",
|
|||
|
" - dyskusje na twitterze.\n",
|
|||
|
"\n",
|
|||
|
"Literatura\n",
|
|||
|
"----------\n",
|
|||
|
" 1. Dan Jurafsky and James H. Martin, *Speech and Language Processing*, 3rd ed. draft,\n",
|
|||
|
"\tch. 15, Chatbots and Dialogue Systems,\n",
|
|||
|
" https://web.stanford.edu/~jurafsky/slp3/15.pdf,\n",
|
|||
|
" data dostępu: 10 marca 2023.\n",
|
|||
|
"\n",
|
|||
|
" 2. Gould, J. D. and Lewis, C. (1985). Designing for usability:\n",
|
|||
|
" Key principles and what designers think. CACM 28(3), 300–311.\n",
|
|||
|
" http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.84.8860&rep=rep1&type=pdf,\n",
|
|||
|
" data dostępu: 10 marca 2023."
|
|||
|
]
|
|||
|
}
|
|||
|
],
|
|||
|
"metadata": {
|
|||
|
"jupytext": {
|
|||
|
"cell_metadata_filter": "-all",
|
|||
|
"main_language": "python",
|
|||
|
"notebook_metadata_filter": "-all"
|
|||
|
}
|
|||
|
},
|
|||
|
"nbformat": 4,
|
|||
|
"nbformat_minor": 5
|
|||
|
}
|