Chatterbot Fonik - it's an advisory system for choosing cell phone network operator. Its purpose is to communicate with the user to give him information about cell phone networks availabe on the polish market, promotions and options offered by particular operators. Chatterbox was writen in AIML laguage, created especially for this purpose with the help of GaitoBot editor.
Project was created for the course needs "Methods and Algorythms of Artificial
Inteligence" on Wroclaw University of Tehnology.
The following document is a raport of this project written in polish laguage version.
Celem projektu jest realizacja prostego chatterbota jako systemu doradczego przy wyborze operatora sieci komórkowej. Jest to bot informacyjny zawierający podstawowe informacje na temat sieci telefonów komórkowych dostępnych na rynku polskim, dostępnych w nich pakietów oraz promocji oferowanych przez poszczególnych operatorów. Działanie systemu polega na rozmowie użytkownika z chatterbotem, zainteresowna osoba zadaje pytanie a system udziela odpowiedzi o ile zawiera w swojej bazie potrzebne inforamcję.
System został zrealizowany za pomocą programu GaitoBot. Jest to edytor języka AIML stowrzonego na potrzeby projektowania chatterbotów. Program ten umożliwia w łatwy i przystępny sposób projektowanie dokumentów. Jego możliwości pozwalają na graficzną wizualizację struktury dokumentu i powiązań między kategoriami zawartymi w jego bazie. Ponadto daje możliwość testowanie działania chatterbota w dowolnej momencie jego tworzenia.
AIML - Artificial Intelligence Markup Language (Język Znaczników Sztucznej Inteligencji) to język znacznikowy, oparty o język XML służący do tworzenia baz wiedzy dla programów zwanych chatterbotami, przeprowadzających dialog użytkownika z komputerem. Został stworzony przez dr Richarda S. Wallace'a w 1995 roku na potrzeby budowy słynnego chatterbota Alice. Obecnie jest nadal rozwijany przez społeczeństwo wolnego oprogramowania. Język AIML tak jak wszystkie języki pochodne od XML'a mają podobną strukturę. Składa się ze znaczników, tak zwanych tagów. Ich lista wraz z krótkim opisem znajduje się poniżej.
Przykład prostego dokumentu AIML który odpowiada „Witaj, co słychać?” na wypowiedź użytkownika „Cześć”:
Przykłady rozmów z chatterbotem oraz uwagi dotyczące poprawności działania systemu są przedstawione w ramce poniżej. Rozmowy zostały przeprowadzone przez niezależnych użytkowników tak, by jak najobiektywniej ocenić działanie bota.
Pierwsza rozmowa | ||
---|---|---|
user: | Cześć | |
fonik: | Witam. W czym mogę pomóc? | powitanie |
user: | Chciałbym kupić telefon. | |
fonik: | Jestem botem informacyjnym dotyczącym wyboru operatora sieci komórkowej. | możliwa odpowiedź jednak wydaje się wymijająca |
user: | Ok. To powiedz jakie znasz sieci? | |
fonik: | Dostarczam informacji na temat następujących operatorów sieci kómórkowej: Era, Plus, Orange, Play. Czy jesteś zainteresowany wyborem któregoś z wymienionych operatorów? | bot reaguje na słowo sieci |
user: | Nie. Chciałem tylko kupić telefon. | |
fonik: | Jestem botem informacyjnym dotyczącym wyboru operatora sieci komórkowej. | jednak wraca do swojej odpowiedzi informującej o sobie |
user: | to już mówiłeś. Potrafisz coś więcej? | |
fonik: | Czy chciałbyś dowiedzieć się czegoś więcej na temat wybranego przez Ciebie operatora? | reakcja na słowo więcej |
user: | tak | |
fonik: | Jestem botem informacyjnym dotyczącym wyboru operatora sieci komórkowej. | brak wyboru operatora sprowadza reakcję do tej samej odpowiedzi |
user: | powiedz coś na temat Ery | pytanie o konkretną sieć |
fonik: | Aktualnie dostępna promocja w siecie Era to "Nowy Mix na piątke" 0,19 zł do 3 przyjaciół bez dodatkowych opłat oraz 0,59 zł/min do wszystkich i 50 zł miesięcznego doładowania oraz telefon Samsung F250 za 1 zł. | odpowiedź dotyczy aktualnej promocji w wybranej sieci |
user: | ten samsung to dobry? | odbiegnięcie od tematu - pytanie o telefon |
fonik: | Telefon Samsung jest dostępny u następujących operatorów: Era, Plus, Orange, Play. Który wybór Cię interesuje? | odpowiedź jest zbyt ogólna |
user: | np play | |
fonik: | Aktualnie dostępna promocja w siecie Play to "Słoneczna promocja" 25 zł za abonament, 3 osoby za darmo i do wyboru Nokia 6120 lub Samsung F330 tylko za 1 zł. | widać że bot odpowiada o promocji w sieci Play choć pytanie było o telefon Samsung w tej sieci |
user: | cienki jesteś | wyrwane z kontekstu |
fonik: | Jestem botem informacyjnym dotyczącym wyboru operatora sieci komórkowej. | bot reaguje standardową odpowiedzią |
user: | ok narazie | pożegnanie |
fonik: | Do widzenia. |
Druga rozmowa | ||
---|---|---|
user: | siema | powitanie |
fonik: | Witaj, Czego chcesz sie dowiedziec ? | |
user: | doradz mi w wyborze operatora komórkowego | pytanie dotyczące informacji jakiej udziela bot |
fonik: | Dostarczam informacji na temat następujących operatorów sieci kómórkowej: Era, Plus, Orange, Play. Czy jesteś zainteresowany wyborem któregoś z wymienionych operatorów? | sensowna wypowiedź kontynuująca dialog |
user: | jakie promicje posiada plus | pytanie o konkretną sieć |
fonik: | W sieci Plus dostępne są następujące promocje: Cafe Plus - wyjątkowa oferta dla kobiet, "przenieś się do Plusa", "tani abonament", wyprzedaż Kubali w Plusie, promocja dla osób niewidomych i niedowidzących, najlepsza Okazja w MixPlusie, wmixuj się w telefon z Twoim numerem z Simplusa. Która promocja Ciebie interesuje? - interesuje mnie wyprzedaż kubali | reakcja na słowo plus |
user: | interesuje mnie wyprzedaż kubali | |
fonik: | Wyprzedaż Kubali to niepowtarzalna okazja kupienia jednego z ponad 30 modeli telefonów w bardzo atrakcyjnej cenie. | reakcja na słowo wyprzedaż kubali |
user: | jakich telefonów? | |
fonik: | Dostarczam informacji na temat następujących operatorów sieci kómórkowej: Era, Plus, Orange, Play. Czy jesteś zainteresowany wyborem któregoś z wymienionych operatorów? | tutaj bot nie posiadał dostatecznej wiedzy na temat konkretnych modeli telefonów więc wyświetlił informację startową |
user: | play | |
fonik: | W sieci Play dostępne są następujące promocje: "Słoneczna promocja", "Playowy wyścig zbrojeń", "Nowy Playfon". Która promocja Ciebie interesuje? | reakcja na słowo play |
user: | słoneczna promocja | |
fonik: | W ofercie Play Słoneczna promocja otrzymujesz 50% rabatu na Ofertę Nowy Play Abonament 50 oraz Nowy Play Abonament 65 przez pełne trzy miesiące. Darmowe rozmowy z trzema wybranymi numerami w sieci Play lub numerami stacjonarnymi - w promocji 3 osoby za darmo. Koszt SMS-a do każdego z wybranych numerów w sieci Play będzie wynosić jedynie 3 grosze. Promocja obowiązuje przez pełne 6 miesięcy, a w Ofercie Nowy Play Abonament 30 przez 3 miesiące. | |
user: | dzięki :) | |
fonik: | Do widzenia. | pożegnanie |
user: | Cześć | dwuznaczność słowa cześć powoduje wybór |
fonik: | Witaj, Czego chcesz sie dowiedziec ? | odpowiedzi powitalnej |
Chatterboty stanowią obecnie jeden z najbardziej rozwijających się aspektów dziedziny sztucznej inteligencji. Tworzone są w celu konwersacji z ludźmi najczęściej jako systemy doradcze lub informacyjne. Zajmowanie się ich realizacją i doskonaleniem to naturalna potrzeba ludzkości w łatwiejszym i szybszym zdobywaniu wiedzy i informacji. Bardzo dobrym środowiskiem dla chatterbotów jest Internet który stanowi ogromne źródło informacji dostępnej dla każdego użytkownika. Idealnym botem byłby system udzielający odpowiedzi na każde zadane pytanie, jednak na obecnym etapie wiedzy o sztucznej inteligencji jest to jedynie marzenie. Problem stanowi ogrom informacji jaką musiałby posiadać taki system w swojej bazie danych oraz system ich powiązań. Nie jest możliwe wiedzieć wszystkiego nawet dla człowieka, toteż zakres wiedzy botów ogranicza się do wybranej wąskiej dziedziny. W przedstawionym tutaj projekcie zadaniem bota jest informowanie oraz pomoc w wyborze operatorów sieci komórkowych na podstawie wybranych ofert. Zakres jego możliwości jest ograniczony wiedzą zawartą w jego bazie i tylko od projektanta zależy jak duża jest to wiedza i w jaki sposób jest ona prezentowana. Chatterboty w zasadzie to automaty odpowiadające w umiejętny sposób na pytania użytkownika. Ich zaletą jest to, że mogą rozmawiać w "ludzki" sposób na zadany temat, bez zmęczenia z dowolną ilością użytkowników. Ich wadą natomiast jest automatyczny charakter wypowiedzi oraz ograniczony zakres wiedzy zależny od ilości danych w bazie. Taką bazę można w dowolnym zakresie powiększać co sprawia, że bot "wie" coraz więcej. Mimo to daleko jeszcze do ludzkiego charakteru takiego bota, gdyż trudno tutaj mówić o inteligencji w takim sensie jaką posiada człowiek. Mimo że obecne chatterboty to systemy działające automatycznie to ich rozwój coraz bardziej przybliża nas do inteligencji naturalnej - tej którą posiada człowiek.
Strony dotyczące zagadnień sztucznej inteligencji:
Strony z danymi do projektu: