聊天机器人(Magpie Chatbot Lab)活动2:Class Magpie

陈 欣发布

在此活动中,你需要实现一个简单的聊天机器人Magpie。你会了解它是如何处理关键字的,并在之后可以添加你自己的关键字。

准备

确保你有:

  • Magpie代码
  • MagpieRunner代码
  • 带有Java开发工具的电脑

开始

熟悉Class Magpie。按照老师的指示运行它。

观察它如何回复:

  • My mother and I talked last night.
  • I said no!
  • The weather is nice.
  • Do you know my brother?

探索

仔细阅读代码。查看if语句是如何给回复赋值并返回回复的。getRandomResponse method从一组String object中选择随机的一个作为回复。

练习

修改代码:

  • 在输入包含dog或cat时,回复“Tell me more about your pets.”。一个可能的对话会是:
    输入:I like my cat Mittens.
    回复:Tell me more about your pets.
  • 让机器人在看到老师名字出现时夸奖一番,确保使用正确的代词!一个可能的对话会是:
    输入:Mr. Xin Chen is telling us about AP Computer Science.
    回复:He sounds like a good teacher.
  • 让机器人检查输入至少包含一个有效字符。可以使用String.trim()来移除首尾的空格,然后再检查长度。如果没有有效字符,可以提示用户输入一些内容:一个可能的对话会是:
    输入:
    回复:Say something, please.
  • 添加两个新的随机回复。
  • 添加三个新关键字以及对应的回复。
  • 如果输入中同时出现多个关键字,如“My mother has a dog but no cat”,会发生什么?解释如何在代码中设定回复的优先级。

问题

  1. 当关键字是某个词的组成部分时,如“I know all the state capitals”与“I like vegetables smothered in cheese”,会发生什么?解释机器人对于这些输入的回复。

陈 欣

AADPS创始人

1 条评论

AP计算机科学实验:聊天机器人(Magpie Chatbot Lab) – AP Computer Science · 2018年4月28日 上午10:40

[…] 活动2:Class Magpie […]

发表回复