Začněte nyníZačněte zdarma

ELIZA I: kladení otázek

Kladení otázek je skvělý způsob, jak udržet konverzaci živou. Tady začneš budovat první náznaky slavné osobnosti ELIZY – chatbot bude reagovat na tvrzení otázkou a na otázky odpovědí.

Slovník odpovědí s klíči "question" a "statement", jehož hodnotami jsou seznamy vhodných reakcí, je už připravený. Prozkoumej ho v shellu pomocí responses.keys() a responses["question"].

Toto cvičení je součástí kurzu

Building Chatbots in Python

Zobrazit kurz

Pokyny k cvičení

  • Definuj funkci respond(), která přijme argument message a pomocí metody .endswith() zkontroluje, jestli message končí otazníkem.
  • Pokud message otazníkem končí, vyber náhodnou "question" ze slovníku responses. V opačném případě vyber náhodné "statement" z responses.
  • Pošli botovi několik zpráv – s otazníkem i bez něj. Testovací zprávy už jsou připravené. Pokud si chceš vyzkoušet víc, nezapomeň nejdřív kliknout na Spustit kód.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

import random

def respond(message):
    # Check for a question mark
    if ____:
        # Return a random question
        return ____(____["____"])
    # Return a random statement
    return ____(____["____"])


# Send messages ending in a question mark
send_message("what's today's weather?")
send_message("what's today's weather?")

# Send messages which don't end with a question mark
send_message("I love building chatbots")
send_message("I love building chatbots")
Upravit a spustit kód