from nltk.chat.util import Chat # "cheddar" chatbot reflections = { "jestem": "jestes", "bylem": "byles", "bylam": "bylas", "ja": "ty", "jestem": "jestes", "chcialbym": "chcialbys", "chcialabym": "chcialabys", "mam": "masz", "bede": "bedziesz", "moj": "twoj", "twoja": "moja", "moim": "twoim", "mojego": "twojego", "jestes": "jestem", "byles": "bylem", "masz": "mam", "bedziesz": "bede", "twoj": "moj", "twoja": "moja", "twoim": "moim", "twojego": "mojego", "ty": "ja", "nasz": "wasz", "moge": "mozesz" } pairs = ( ( r"Potrzebuje (.*)", ( "Dlaczego potrzebujesz %1?", "Czy naprawdÄ™ pomogloby Ci zdobycie %1?", "Czy jestes pewien, ze potrzebujesz %1?", ), ), ( r"Dlaczego nie moge (.*)", ( "Czy uwazasz, ze powinienes moc %1?", "Gdybys mogl %1, co bys zrobil?", "Nie wiem, dlaczego nie mozesz %1?", "Czy naprawde probowales?", ), ), ( r"Nie moge (.*)", ( "Skad wiesz, ze nie mozesz %1?", "Byc moze moglbys %1, gdybys sprobowal.", "Co musialbys zrobic zeby %1?", ), ), ( r"Jestem (.*)", ( "Czy rozmawiasz ze mna poniewaz jestes %1?", "Od jak dawna jestes %1?", "Jak sie czujesz z tym, ze jestes %1?", "Jak sie czujesz bedac %1?", "Dlaczego mowisz mi, ze jestes %1?", "Dlaczego uwazasz, ze jestes %1?", ), ), ( r"Czy jestes (.*)", ( "Dlaczego ma to znaczenie czy jestem %1?", "Czy wolabys gdybym nie byl %1?", "Byc moze uwazasz, ze jestem %1.", "Byc moze jestem %1, co o tym sadzisz?", ), ), ( r"Co (.*)", ( "Dlaczego pytasz?", "W jaki sposob pomoglaby ci odpowiedz na to pytanie?", "Co o tym myslisz?", ), ), ( r"Jak (.*)", ( "Jak sadzisz?", "Byc moze potrafisz odpowiedziec na swoje wlasne pytanie.", "O co tak naprawde pytasz?", ), ), ( r"Poniewaz (.*)", ( "Czy to jest prawdziwy powod?", "Jakie inne powody przychodza Ci na mysl?", "Czy ten powod odnosi sie do czegos innego?", "Jesli %1, to co jeszcze musi byc prawda?", ), ), ) cheddar = Chat(pairs, reflections) print("\nNapisz 'quit' aby zakonczyc.") print("-" * 70) print("Witaj. Jak sie dzisiaj czujesz?") cheddar.converse()