2024-03-23 11:37:11 +01:00
|
|
|
from nltk.chat.util import Chat, reflections
|
|
|
|
|
|
|
|
pairs = (
|
2024-03-29 21:49:58 +01:00
|
|
|
(
|
|
|
|
r"Dzień dobry(.*)",
|
|
|
|
("Dla kogo dobry dla tego dobry.", "Dzień dobry."),
|
|
|
|
),
|
|
|
|
(
|
|
|
|
r"Cześć(.*)",
|
|
|
|
(
|
|
|
|
"Hej, jak się masz?",
|
|
|
|
"Jak się dzisiaj czujesz?",
|
|
|
|
),
|
|
|
|
),
|
|
|
|
(
|
|
|
|
r"Hej(.*)",
|
|
|
|
(
|
|
|
|
"Cześć, co tam u Ciebie?",
|
|
|
|
"Witam.",
|
|
|
|
),
|
|
|
|
),
|
|
|
|
(
|
|
|
|
r"Elo(.*)",
|
|
|
|
(
|
|
|
|
"Siema!",
|
|
|
|
"3 2 0.",
|
|
|
|
),
|
|
|
|
),
|
|
|
|
(
|
|
|
|
r"Jak (.*)",
|
|
|
|
(
|
|
|
|
"To zależy od Ciebie.",
|
|
|
|
"To nie takie proste, co o tym myślisz?",
|
|
|
|
),
|
|
|
|
),
|
2024-03-31 11:42:13 +02:00
|
|
|
(
|
|
|
|
r"Jakie są rozmiary (.*)\?",
|
|
|
|
(
|
|
|
|
"Oferujemy duże, małe i średnie?",
|
|
|
|
"Wszystko zależy od wariantu %1?",
|
|
|
|
"A jest Pan bardzo głodny?",
|
|
|
|
),
|
|
|
|
),
|
|
|
|
(
|
|
|
|
r"Czy oferujecie jakieś dodatki\?",
|
|
|
|
(
|
|
|
|
"Oczywiście, na co ma Pan ochotę?",
|
|
|
|
"Oferujemy darmowe dodatki, oraz dodatki dodatkowo płatne.",
|
|
|
|
"Do naszych autorskich pizz nie ma możliwości dodania ekstra produktów",
|
|
|
|
),
|
|
|
|
),
|
|
|
|
(
|
|
|
|
r"Proszę o dodatkowy (.*)\?",
|
|
|
|
(
|
|
|
|
"W tym wariancie %1 są płatne podwójnie",
|
|
|
|
"Czy jest Pan pewien, że %1 będzie pasować do ananasa?",
|
|
|
|
"Oczywiście, mamy świeżutkie %1!",
|
|
|
|
),
|
|
|
|
),
|
|
|
|
(
|
|
|
|
r"Ile kosztuje (.*)\?",
|
|
|
|
(
|
|
|
|
"%1 są dziś w promocji",
|
|
|
|
"A jaki rozmiar %1 Pana interesuje?",
|
|
|
|
"Niestety, w chwili obecnej %1 nie jest dostępne.",
|
|
|
|
),
|
|
|
|
),
|
|
|
|
(
|
|
|
|
r"Ile czasu (.*)\?",
|
|
|
|
(
|
|
|
|
"Błyskawicznie!",
|
|
|
|
"A czy bardzo się Pan spieszy?",
|
|
|
|
"Niestety, w chwili obecnej %1 nie jest dostępne.",
|
|
|
|
),
|
|
|
|
),
|
2024-03-29 21:49:58 +01:00
|
|
|
(
|
|
|
|
r"Dlaczego (.*)",
|
|
|
|
(
|
|
|
|
"Zastanów się nad tym.",
|
|
|
|
"Ty mi powiedz dlaczego %1",
|
|
|
|
"Czemu mnie o to pytasz?",
|
|
|
|
),
|
|
|
|
),
|
|
|
|
(
|
|
|
|
r"Co (.*)",
|
|
|
|
(
|
|
|
|
"Skąd to pytanie?",
|
|
|
|
"Co o tym myślisz?",
|
|
|
|
"Odpowiedz sobie sam.",
|
|
|
|
),
|
|
|
|
),
|
|
|
|
(
|
|
|
|
r"Czemu (.*)",
|
|
|
|
("Tak to już jest.", "Takie życie.", "Bywa."),
|
|
|
|
),
|
|
|
|
(
|
|
|
|
r"Czy (.*)",
|
|
|
|
(
|
|
|
|
"Tak",
|
|
|
|
"Nie",
|
|
|
|
"Nie wiem czy %1",
|
|
|
|
),
|
|
|
|
),
|
|
|
|
(
|
|
|
|
r"(.*)\?",
|
|
|
|
(
|
|
|
|
"Czemu o to pytasz?",
|
|
|
|
"Może odpowiedź jest bliżej niż myślisz.",
|
|
|
|
"Wytłumacz mi to?",
|
|
|
|
),
|
|
|
|
),
|
|
|
|
(
|
|
|
|
r"(.*)\!",
|
|
|
|
(
|
|
|
|
"Czemu krzyczysz?",
|
|
|
|
"Zachowuj się!",
|
|
|
|
"Czemu się złościsz?",
|
|
|
|
),
|
|
|
|
),
|
2024-03-23 11:37:11 +01:00
|
|
|
(
|
|
|
|
r"Potrzebuję (.*)",
|
|
|
|
(
|
|
|
|
"Dlaczego potrzebujesz %1?",
|
|
|
|
"Jesteś pewien, że potrzebujesz %1?",
|
|
|
|
),
|
|
|
|
),
|
|
|
|
(
|
2024-03-29 21:49:58 +01:00
|
|
|
r"(.*) prac(.)(.*)",
|
2024-03-23 11:37:11 +01:00
|
|
|
(
|
2024-03-29 21:49:58 +01:00
|
|
|
"Lubisz swoją pracę?",
|
|
|
|
"Co najbardziej lubisz w swojej pracy?",
|
2024-03-23 11:37:11 +01:00
|
|
|
),
|
|
|
|
),
|
2024-03-29 21:49:58 +01:00
|
|
|
(r"tak", ("Dlaczego tak?",)),
|
|
|
|
(r"nie", ("Dlaczego nie?")),
|
|
|
|
(
|
|
|
|
r"koniec",
|
|
|
|
("Do widzenia",),
|
|
|
|
),
|
2024-03-23 11:37:11 +01:00
|
|
|
(
|
|
|
|
r"(.*)",
|
|
|
|
(
|
2024-03-29 21:49:58 +01:00
|
|
|
"Czemu to powiedziałeś?",
|
|
|
|
"Zmieńmy temat, powiedz mi o swojej pracy.",
|
2024-03-23 11:37:11 +01:00
|
|
|
"Możesz rozwinąć?",
|
|
|
|
"Rozumiem.",
|
|
|
|
"Ciekawe.",
|
|
|
|
"%1.",
|
|
|
|
),
|
|
|
|
),
|
|
|
|
)
|
|
|
|
|
|
|
|
eliza_chatbot = Chat(pairs, reflections)
|
|
|
|
|
|
|
|
|
|
|
|
def eliza_chat():
|
|
|
|
print("Terapeuta\n---------")
|
|
|
|
print("Rozmawiaj po Polsku.")
|
2024-03-29 21:49:58 +01:00
|
|
|
print("Używaj zarówno wielkich, jak i małych lister; używaj interpunkcji.")
|
2024-03-23 11:37:11 +01:00
|
|
|
print('Aby zakończyć, napisz "koniec".')
|
|
|
|
print("=" * 72)
|
|
|
|
print("Witaj, jak się czujesz?")
|
|
|
|
|
|
|
|
eliza_chatbot.converse(quit="koniec")
|
|
|
|
|
|
|
|
|
|
|
|
def demo():
|
|
|
|
eliza_chat()
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
eliza_chat()
|