1. Nauka
  2. /
  3. Kursy
  4. /
  5. Tworzenie chatbotów w Pythonie

Connected

ćwiczenie

ELIZA II: Wyodrębnianie kluczowych fraz

Prawdziwa sprytność ELIZY polega na tym, że program sprawia wrażenie, jakby rozumiał to, co mu piszesz – od czasu do czasu włącza bowiem fragmenty wypowiedzi użytkownika do swoich odpowiedzi.

W tym ćwiczeniu dopasowujesz wiadomości do typowych wzorców i wyodrębniasz frazy za pomocą re.search(). Zdefiniowany został już słownik rules, który dopasowuje następujące wzorce:

  • "do you think (.*)"
  • "do you remember (.*)"
  • "I want (.*)"
  • "if (.*)"

Przejrzyj ten słownik w konsoli przed rozpoczęciem ćwiczenia.

Instrukcje

100 XP
  • Iteruj po słowniku rules za pomocą jego metody .items(), używając pattern i responses jako zmiennych iteratora.
  • Użyj re.search() z argumentami pattern i message, aby utworzyć obiekt match.
  • Jeśli dopasowanie zostało znalezione, użyj random.choice(), aby wybrać response.
  • Jeśli '{0}' znajduje się w danym response, użyj metody .group() obiektu match z indeksem 1, aby pobrać frazę.