Jak stworzyc rozmawiajacego bota? A.L.I.C.E. i AIML

Transkrypt

Jak stworzyc rozmawiajacego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Jak stworzyć rozmawiającego bota?
A.L.I.C.E. i AIML
Aleksandra Czernecka
Instytut Informatyki Uniwersytetu Wrocławskiego
10 maja 2007
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
ELIZA - Rozmowa
Sztuczki
A.L.I.C.E.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
ELIZA - Rozmowa
Sztuczki
A.L.I.C.E.
Artificial
Linguistic
Internet
Computer
Entity
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
ELIZA - Rozmowa
Sztuczki
Garść informacji
Rozbudowana ELIZA.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
ELIZA - Rozmowa
Sztuczki
Garść informacji
Rozbudowana ELIZA.
Nagroda Loebnera w 2000r. i 2001r. ”najbardziej ludzki komputer”.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
ELIZA - Rozmowa
Sztuczki
Garść informacji
Rozbudowana ELIZA.
Nagroda Loebnera w 2000r. i 2001r. ”najbardziej ludzki komputer”.
Uczący się bot.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
ELIZA - Rozmowa
Sztuczki
Garść informacji
Rozbudowana ELIZA.
Nagroda Loebnera w 2000r. i 2001r. ”najbardziej ludzki komputer”.
Uczący się bot.
Pomocny Internet (statystyki, wolontariusze).
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
ELIZA - Rozmowa
Sztuczki
Przykładowa rozmowa
C – Client
R – Robot
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
ELIZA - Rozmowa
Sztuczki
Przykładowa rozmowa c.d.
C: Well, my boyfriend made me come here.
R: Your boyfriend made you come here.
C: I am unhappy.
R: Do you think coming here will help you not to be unhappy?
C: I need some help, that much seems certain.
R: What would it mean to you if you got some help?
C: Perhaps I could learn to get along with my mother.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
ELIZA - Rozmowa
Sztuczki
Przykładowa rozmowa c.d.
R: Tell me more about your family.
C: You are like my father in some ways.
R: What resemblance do you see?
C: My father is afraid of everybody.
R: What else comes to mind when you think of your father.
C: Bullies.
R: Does that have anything to with the fact that your
boyfriend made you come here?
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
ELIZA - Rozmowa
Sztuczki
Jakich sztuczek używa ELIZA?
Zamiana zaimków osobowych i powtórzenie
wypowiedzi użytkownika.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
ELIZA - Rozmowa
Sztuczki
Jakich sztuczek używa ELIZA?
Zamiana zaimków osobowych i powtórzenie
wypowiedzi użytkownika.
Reakcja na ”I need some X.” - ”What would it
mean to you if you got some X?”
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
ELIZA - Rozmowa
Sztuczki
Jakich sztuczek używa ELIZA?
Zamiana zaimków osobowych i powtórzenie
wypowiedzi użytkownika.
Reakcja na ”I need some X.” - ”What would it
mean to you if you got some X?”
Rozpoznawanie słów kluczowych, np.
”mother”.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
ELIZA - Rozmowa
Sztuczki
Jakich sztuczek używa ELIZA?
Zamiana zaimków osobowych i powtórzenie
wypowiedzi użytkownika.
Reakcja na ”I need some X.” - ”What would it
mean to you if you got some X?”
Rozpoznawanie słów kluczowych, np.
”mother”.
Reakcja na nierozpoznaną wypowiedź - powrót
do wcześniej zapamiętanego tematu.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Politycy
Imprezy
Nauczyciele
Przykład
Client: Do you think President Clinton should be
impeached?
Robot: It depends what you mean by ”thinking”.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Politycy
Imprezy
Nauczyciele
Politycy
Politycy nigdy nie odpowiadają wprost na zadane
pytania.
Ich odpowiedzi są zbliżone do tematu, jaki był
poruszony w pytaniu, ale wymijające i ogólnikowe.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Politycy
Imprezy
Nauczyciele
Standardowa odpowiedź
”Did you see the game last night?”
”No, who won?”
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Politycy
Imprezy
Nauczyciele
Odpowiedź z humorem
”Who do you want to win the super bowl?”
”The team that scores the most points.”
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Politycy
Imprezy
Nauczyciele
Wiarygodna biografia
”What do you think of Joe Montana this season?”
”I heard his brother was a boxer.”
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Politycy
Imprezy
Nauczyciele
Dłuższy dialog
C: You should have seen the game last night.
R: What game?
C: Basketball.
R: Sorry I missed it.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Politycy
Imprezy
Nauczyciele
Dłuższy dialog
C: You should have seen the game last night.
R: What game?
C: Basketball.
R: Sorry I missed it.
Taki dialog można uzyskać zapamiętując
poprzednią wypowiedź.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Politycy
Imprezy
Nauczyciele
FAQ
Jakie pytania najczęściej zadają studenci?
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Politycy
Imprezy
Nauczyciele
FAQ
Jakie pytania najczęściej zadają studenci?
”Will this be on the test?”
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Politycy
Imprezy
Nauczyciele
Odpowiedź bez treści
Co mówi nauczyciel, gdy zostaje mu zadane pytanie,
na które nie zna odpowiedzi?
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Politycy
Imprezy
Nauczyciele
Odpowiedź bez treści
Co mówi nauczyciel, gdy zostaje mu zadane pytanie,
na które nie zna odpowiedzi?
”I will provide an answer at a later time”
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Politycy
Imprezy
Nauczyciele
Odpowiedź bez treści
Co mówi nauczyciel, gdy zostaje mu zadane pytanie,
na które nie zna odpowiedzi?
”I will provide an answer at a later time”
”That is not my area of expertise.”
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
Wstęp
Kategorie
AIML
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
Wstęp
Kategorie
AIML
Artificial
Intelligence
Markup
Language
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
Wstęp
Kategorie
Garść informacji
Dialekt XMLa służący do tworzenia baz wiedzy
botów.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
Wstęp
Kategorie
Garść informacji
Dialekt XMLa służący do tworzenia baz wiedzy
botów.
Opis tagów najnowszej wersji AIMLa:
http://www.alicebot.org/
documentation/aiml101.html
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
Wstęp
Kategorie
Polityczny AIML
Tworzenie krótkich, zwięzłych, interesujących,
gramatycznie poprawnych i czasem zabarwionych
humorem wypowiedzi, które mogą pasować do jak
największej ilości zapytań, dopasowując się do
jednego wzorca (PATTERN).
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
Wstęp
Kategorie
Polityczny AIML
Tworzenie krótkich, zwięzłych, interesujących,
gramatycznie poprawnych i czasem zabarwionych
humorem wypowiedzi, które mogą pasować do jak
największej ilości zapytań, dopasowując się do
jednego wzorca (PATTERN).
Sposób podejścia do problemu:
Przygotować w pierwszej kolejności odpowiedzi na
najczęściej zadawane pytania.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
Wstęp
Kategorie
”Pickup lines”
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
Wstęp
Kategorie
”Pickup lines”
Pytanie wywołujące najdłużej trwające dialogi:
”What is your favorite movie?”
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
Wstęp
Kategorie
”Pickup lines”
Pytanie wywołujące najdłużej trwające dialogi:
”What is your favorite movie?”
Najniżej ocenione tematy do rozmów:
”What do you think caused World War I?”
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
Wstęp
Kategorie
”Pickup lines”
Pytanie wywołujące najdłużej trwające dialogi:
”What is your favorite movie?”
Najniżej ocenione tematy do rozmów:
”What do you think caused World War I?”
”Are you a man or a woman?”
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
Wstęp
Kategorie
Imprezowy AIML
Rozmowy bezstanowe.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
Wstęp
Kategorie
Imprezowy AIML
Rozmowy bezstanowe.
Rozmowy wymagające analizy poprzednich
wypowiedzi.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
Wstęp
Kategorie
Imprezowy AIML
Rozmowy bezstanowe.
Rozmowy wymagające analizy poprzednich
wypowiedzi.
→ tag <that>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
Wstęp
Kategorie
Kategoria
Podstawowa jednostka - kategoria, składa się z:
pytanie - <pattern>
odpowiedź - <template>
opcjonalny kontekst - <that>, <topic>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
Wstęp
Kategorie
Joker i szczegóły
? oraz są używane jako tak zwane ”wildcard
symbols”.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
Wstęp
Kategorie
Joker i szczegóły
? oraz są używane jako tak zwane ”wildcard
symbols”.
Może być ich wiele w jednym tagu <pattern>.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
Wstęp
Kategorie
Joker i szczegóły
? oraz są używane jako tak zwane ”wildcard
symbols”.
Może być ich wiele w jednym tagu <pattern>.
W tagu <template> może być tylko tekst, bez
jokerów.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
Wstęp
Kategorie
Joker i szczegóły
? oraz są używane jako tak zwane ”wildcard
symbols”.
Może być ich wiele w jednym tagu <pattern>.
W tagu <template> może być tylko tekst, bez
jokerów.
<that> służy do przechowywania ostatniej
wypowiedzi bota.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Garść informacji
Wstęp
Kategorie
Joker i szczegóły
? oraz są używane jako tak zwane ”wildcard
symbols”.
Może być ich wiele w jednym tagu <pattern>.
W tagu <template> może być tylko tekst, bez
jokerów.
<that> służy do przechowywania ostatniej
wypowiedzi bota.
<topic> przechowuje najczęściej podejmowany
temat.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Rekursja
<srai>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Redukcja
Upraszczanie złożonych form gramatycznych.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Redukcja
Upraszczanie złożonych form gramatycznych.
Bardziej podoba nam się:
”WHO IS SOCRATES?” niż ”DO YOU KNOW WHO
SOCRATES IS?”
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Redukcja
Upraszczanie złożonych form gramatycznych.
Bardziej podoba nam się:
”WHO IS SOCRATES?” niż ”DO YOU KNOW WHO
SOCRATES IS?”
<category>
<pattern>DO YOU KNOW WHO ∗ IS</pattern>
<template><srai>WHO IS
<star/></srai></template>
</category>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Dziel i zwyciężaj
Redukcja do mniejszych podproblemów.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Dziel i zwyciężaj
Redukcja do mniejszych podproblemów.
”Yes, [sentence]”
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Dziel i zwyciężaj
Redukcja do mniejszych podproblemów.
”Yes, [sentence]”
<category>
<pattern>YES ∗ </pattern>
<template><srai>YES</srai>
<sr/></template>
</category>
gdzie <sr/> to skrót dla <srai><star/></srai>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Synonimy
Wiele wzorców - jedna reakcja.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Synonimy
Wiele wzorców - jedna reakcja.
AIML 1.01 nie pozwala na użycie więcej niż jednego wzorca w
kategorii.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Synonimy
Wiele wzorców - jedna reakcja.
AIML 1.01 nie pozwala na użycie więcej niż jednego wzorca w
kategorii.
<category>
<pattern>HELLO</pattern>
<template>Hi there!</template>
</category>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Synonimy c.d.(1)
<category>
<pattern>HI</pattern>
<template><srai>HELLO</srai></template>
</category>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Synonimy c.d.(1)
<category>
<pattern>HI</pattern>
<template><srai>HELLO</srai></template>
</category>
<category>
<pattern>HI THERE</pattern>
<template><srai>HELLO</srai></template>
</category>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Synonimy c.d.(2)
<category>
<pattern>HOWDY</pattern>
<template><srai>HELLO</srai></template>
</category>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Synonimy c.d.(2)
<category>
<pattern>HOWDY</pattern>
<template><srai>HELLO</srai></template>
</category>
<category>
<pattern>HOLA</pattern>
<template><srai>HELLO</srai></template>
</category>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Poprawianie błędów
Your
Your? You’re? You are?
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Poprawianie błędów
Your
Your? You’re? You are?
<category>
<pattern>YOUR A ∗ </pattern>
<template>I think you mean ”you’re” or ”you are”
not ”your”. <srai>YOU ARE A <star/></srai>
</template>
</category>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Słowa kluczowe
Odpowiedź aktywowana wystąpieniem słowa
kluczowego
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Słowa kluczowe
Odpowiedź aktywowana wystąpieniem słowa
kluczowego
<category>
<pattern> MOTHER </pattern>
<template>Tell me more about your family.
</template>
</category>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Słowa kluczowe c.d.(1)
<category>
<pattern> MOTHER</pattern>
<template><srai>MOTHER</srai></template>
</category>
<category>
<pattern>MOTHER </pattern>
<template><srai>MOTHER</srai></template>
</category>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Słowa kluczowe c.d.(2)
<category>
<pattern> MOTHER *</pattern>
<template><srai>MOTHER</srai></template>
</category>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Odpowiedzi warunkowe
<category>
<pattern>WHO IS HE</pattern>
<template><srai> WHOISHE
<get name=”he”/></srai>
</template>
</category>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Redukcja
Dziel i zwyciężaj
Synonimy
Poprawianie błędów
Słowa kluczowe
Odpowiedzi warunkowe
Odpowiedzi warunkowe c.d.
<category>
<pattern>WHOISHE ∗ </pattern>
<template>He is
<get name=”he”/>.</template>
</category>
<category>
<pattern>WHOISHE UNKNOWN</pattern>
<template>I don’t know who he is.</template>
</category>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
<that>
Interpreter
<topic>
<set> i <get>
<person>
<that>
Zapamiętuje ostatnią wypowiedź bota
Jeśli miała więcej niż jedno zdanie, to zapamiętuje to ostatnie.
<category>
<pattern>YES</pattern>
<that>DO YOU LIKE MOVIES</that>
<template>What is your favorite
movie?</template>
</category>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
<that>
Interpreter
<topic>
<set> i <get>
<person>
Interpreter
Interpreter zapamiętuje sobie:
INPUT <that> THAT <topic>.
Gdy więcej niż jedna kategoria ma taki sam wzorzec
jak INPUT, program próbuje je rozróżnić za
pomocą informacji zawartej w THAT, jeśli to nie
pomaga – ostatnią deską ratunku jest TOPIC.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
<that>
Interpreter
<topic>
<set> i <get>
<person>
<topic>
Zapamiętuje ostatnią wypowiedź bota
Jeśli miała więcej niż jedno zdanie, to zapamiętuje to ostatnie.
<topic name=”CARS”>
<category>
<pattern> ? </pattern>
<template>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
<that>
Interpreter
<topic>
<set> i <get>
<person>
<topic> c.d.
<random>
<li>What’s your favorite car?</li>
<li>What kind of car do you drive?</li>
<li>Do you get a lot of parking tickets?</li>
<li>My favorite car is one with a driver.</li>
</random>
</template>
</category>
Za pomocą <set> można zmienić obecny temat.
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
<that>
Interpreter
<topic>
<set> i <get>
<person>
<set> i <get>
<set name=”name”>Matthew</set>
zapamiętuje napis Matthew pod ”name”, natomiast
<get name=”name/>
zwraca ”Matthew”
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
<that>
Interpreter
<topic>
<set> i <get>
<person>
<person>
Typowa sztuczka z zamianą zaimków osobowych
Zaimplementowane jako tag <person>
C: My mother takes care of me.
R: Who else in your family takes care of you?
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
<that>
Interpreter
<topic>
<set> i <get>
<person>
Przykład pierwszy
Taka odpowiedź może być wygenerowana przez
kategorię:
<category>
<pattern>MY MOTHER ? </pattern>
<template>Who else in your family
<person/>?</template>
</category>
gdzie <person/> to skrót dla
<person><star/></person>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
<that>
Interpreter
<topic>
<set> i <get>
<person>
Przykład drugi
C: You don’t argue with me.
R: Why do you think I don’t argue with you?
<category>
<pattern>YOU DO NOT ? </pattern>
<template>Why do you think I don’t
<person/>?</template>
</category>
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
A.L.I.C.E. Brain Picture Gallery:
http:
//www.alicebot.org/documentation/gallery/
The Anatomy of Alice:
http://www.alicebot.org/anatomy.html
Oficjalna strona promująca ALICE i AIML:
http://www.alicebot.org/
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML
A.L.I.C.E.
Politycy, imprezy i nauczyciele
AIML
Rekursja w AIMLu
Kontekst
Garść linków
Koniec
Dziękuję za uwagę i życzę miłego dnia :)
Aleksandra Czernecka
Jak stworzyć rozmawiającego bota? A.L.I.C.E. i AIML