始める無料で始める

すべてをまとめる(前編)

コースで学んだすべての内容を組み合わせましょう。コーヒー注文ボットと、第1章で作成した ELIZA ルールを統合します。

まず、chitchat_response() という関数を定義します。この関数は、第1章で定義済みの match_rule() 関数を呼び出します。メッセージが ELIZA テンプレートに一致した場合は応答を返し、一致しない場合は None を返します。

ELIZA ルールは eliza_rules という辞書に格納されています。

この演習はコースの一部です

Python でチャットボットを作る

コースを見る

演習の手順

  • message 引数を受け取る chitchat_response() 関数を定義してください。
  • eliza_rulesmessage を引数として match_rule() 関数を呼び出し、出力を responsephrase にアンパックしてください。
  • response"default" の場合は、None を返してください。
  • response"{0}" が含まれている場合は、replace_pronouns() を使って phrase の人称代名詞を変換し、response に対して .format() を呼び出して phrase を埋め込んでください。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Define chitchat_response()
def chitchat_response(message):
    # Call match_rule()
    ____, ____ = ____
    # Return none if response is "default"
    if response == "____":
        return None
    if '{0}' in response:
        # Replace the pronouns of phrase
        phrase = ____
        # Calculate the response
        response = ____
    return response
コードを編集して実行