217 lines
5.2 KiB
Python
217 lines
5.2 KiB
Python
from nltk.chat.util import Chat
|
|
|
|
reflections = {
|
|
"jestem": "jestes",
|
|
"byłem": "byłeś",
|
|
"ja": "ty",
|
|
"zrobiłbym": "zrobiłbyś",
|
|
"zrobiłem": "zrobiłeś",
|
|
"zrobię": "zrobisz",
|
|
"mam": "masz",
|
|
"twoje": "moje",
|
|
"twój": "mój",
|
|
"ty": "ja",
|
|
}
|
|
|
|
pairs = (
|
|
(
|
|
r'Potrzebuje (.*)',
|
|
(
|
|
"Dlaczego potrzebujesz %1?",
|
|
"Czy napewno %1 Ci pomoże?",
|
|
"Jesteś pewny, że potrzebujesz %1?",
|
|
),
|
|
),
|
|
(
|
|
r"Dlaczego nie (.*)",
|
|
(
|
|
"Dlaczego uważasz, że ja nie %1?",
|
|
"Może powinienem zacząć %1.",
|
|
),
|
|
),
|
|
(
|
|
r"Dlaczego nie mogę (.*)",
|
|
(
|
|
"Myślisz, że powinieneś móc %1?",
|
|
"Jeżeli byś mógł %1, co byś z tym zrobił?",
|
|
"Nie rozumiem - dlaczego nie możesz %1?",
|
|
),
|
|
),
|
|
(
|
|
r"Nie mogę (.*)",
|
|
(
|
|
"Dlaczego nie możesz %1?",
|
|
"Uważam, że %1 jest w Twoim zasięgu, musisz tylko chcieć.",
|
|
),
|
|
),
|
|
(
|
|
r"Jestem (.*)",
|
|
(
|
|
"Czy przyszedłś do mnie ponieważ %1?",
|
|
"Od dawna jesteś %1?",
|
|
),
|
|
),
|
|
(
|
|
r"Jesteś (.*)",
|
|
(
|
|
"Czy to ma znaczenie, że jestem %1?",
|
|
"Wolałbyś, gdybym nie był %1?",
|
|
"Dlaczego uważasz, że jestem %1.",
|
|
),
|
|
),
|
|
(
|
|
r"Jak (.*)",
|
|
(
|
|
"Jak uważasz, że powinno się to robić?",
|
|
"Myślę, że sam znasz odpowiedź na to pytanie.",
|
|
),
|
|
),
|
|
(
|
|
r"Ponieważ (.*)",
|
|
(
|
|
"Czy uważasz, że to rzeczywiście jest powód?",
|
|
"Czy przychodzą Ci do głowy jakieś inne możwliwości?",
|
|
"Jeżeli %1, co jeszcze musi być prawdą?",
|
|
),
|
|
),
|
|
(
|
|
r"Cześć(.*)",
|
|
(
|
|
"Hej, cieszę się, że dzisiaj przyszedłeś.",
|
|
"Cześć, jak Ci minął dzisiejszy dzień?",
|
|
"Dzień dobry, jak się dzisiaj czujesz?",
|
|
),
|
|
),
|
|
(
|
|
r"Dzień dobry(.*)",
|
|
(
|
|
"Hej, cieszę się, że dzisiaj przyszedłeś.",
|
|
"Cześć, jak Ci minął dzisiejszy dzień?",
|
|
"Dzień dobry, jak się dzisiaj czujesz?",
|
|
),
|
|
),
|
|
(
|
|
r"I think (.*)",
|
|
(
|
|
"Czy jesteś pewien %1?",
|
|
"Naprawdę tak uważasz?",
|
|
"Ale nie jesteś pewien %1?"
|
|
),
|
|
),
|
|
(
|
|
r"(.*) przyjaciel (.*)",
|
|
(
|
|
"Opowiedz mi więcej o tym przyjacielu.",
|
|
"Co masz na myśli, mówiąc przyjaciel?",
|
|
),
|
|
),
|
|
(
|
|
r"Yes",
|
|
(
|
|
"Brzmisz na całkiem pewnego.",
|
|
"Czy mógłbyś rozwinąć?"
|
|
)
|
|
),
|
|
(
|
|
r"(.*) komputer(.*)",
|
|
(
|
|
"Czy poważnie mnie o to pytasz?",
|
|
"Czy wyglądam Ci na komputer?",
|
|
"Czy boisz się komputerów?",
|
|
),
|
|
),
|
|
(
|
|
r"(.*) program(.*)",
|
|
(
|
|
"Czy poważnie mnie o to pytasz?",
|
|
"Czy wyglądam Ci na komputer?",
|
|
"Czy boisz się komputerów?",
|
|
),
|
|
),
|
|
(
|
|
r"Ty (.*)",
|
|
(
|
|
"Powinniśmy skupić się na Tobie.",
|
|
"Dlaczego tak o mnie mówisz?",
|
|
),
|
|
),
|
|
(
|
|
r"Dlaczego (.*)",
|
|
(
|
|
"Jak myślisz, dlaczego %1?",
|
|
"Myślę, żę Ty możesz mi powiedzieć, dlaczego %1?"
|
|
)
|
|
),
|
|
(
|
|
r"Chcę (.*)",
|
|
(
|
|
"Jak byś się poczuł, gdybyś dostał %1?",
|
|
"Dlaczego chcesz %1?",
|
|
"Jeżeli byś dostał %1, co byś wtedy zrobił?",
|
|
),
|
|
),
|
|
(
|
|
r"(.*) matka(.*)",
|
|
(
|
|
"Opowiedz mi o Twojej matce.",
|
|
"Jaka relacja łączy Cię z rodzicami?",
|
|
),
|
|
),
|
|
(
|
|
r"(.*) mama(.*)",
|
|
(
|
|
"Opowiedz mi o Twojej matce.",
|
|
"Jaka relacja łączy Cię z rodzicami?",
|
|
),
|
|
),
|
|
(
|
|
r"(.*) ojciec(.*)",
|
|
(
|
|
"Opowiedz mi o Twoim ojcu.",
|
|
"Jak czujesz się przy ojcu?",
|
|
),
|
|
(
|
|
r"(.*) tata(.*)",
|
|
(
|
|
"Opowiedz mi o Twoim ojcu.",
|
|
"Jak czujesz się przy ojcu?",
|
|
),
|
|
(
|
|
r"(.*)\?",
|
|
(
|
|
"Dlaczego o to pytasz?",
|
|
"Wydaje mi się, że sam możesz na to odpowiedzieć.",
|
|
"Zastanów się, czy nie możesz sam odpowiedzieć na to pytanie?",
|
|
),
|
|
),
|
|
(
|
|
r"quit",
|
|
(
|
|
"Dziękuję za rozmowę.",
|
|
"Żegnaj.",
|
|
"Dziękuję, to będzie 150PLN. Miłego dnia!",
|
|
),
|
|
),
|
|
(
|
|
r"(.*)",
|
|
(
|
|
"Opowiedz mi więcej.",
|
|
"Zmieńmy trochę temat ... opowiedz mi o Twojej rodzinie.",
|
|
"Mógłbyś rozwinąć?",
|
|
"Dlaczego mówisz %1?",
|
|
"Rozumiem.",
|
|
"Bardzo interesujące.",
|
|
"Rozumiem. Co byś z tego wyciągnął?",
|
|
"Jak się czujesz, mówiąc te słowa?",
|
|
),
|
|
),
|
|
|
|
)
|
|
|
|
chatbot = Chat(pairs, reflections)
|
|
|
|
if __name__ == '__main__':
|
|
print('Cześć, czegopotrzebujesz?')
|
|
|
|
chatbot.converse()
|