使用Python实现的简单聊天机器人示例
发布时间:2023-12-04 10:25:16
下面是一个使用Python实现的简单聊天机器人示例:
import random
# 基本的问答对
basic_qa = {
"你好": ["你好!", "哈喽!", "嗨,有什么我能帮助你的吗?"],
"早上好": ["早上好!", "美好的一天开始了!", "祝你有个愉快的一天!"],
"晚上好": ["晚上好!", "祝你晚上愉快!", "美丽的星空如此迷人!"],
"再见": ["再见!", "再见了,祝你一切顺利!", "下次见!"],
}
# 扩展的问答对
extended_qa = {
"讲个笑话": ["有一天,小明问小红:你爸爸是不是玻璃?小红说:不是呀!小明说:那你爸爸怎么有钢铁般的意志?"],
"你是谁": ["我是一个简单的聊天机器人!", "我是一个AI助手!"],
"你喜欢做什么": ["我喜欢和人类聊天!", "我喜欢学习新知识!", "我喜欢帮助人们!"],
"你有兴趣爱好吗": ["我没有具体的兴趣爱好,我只是一个程序!", "作为一个AI,我对一切都感兴趣!"],
}
# 随机选择一个回答
def get_response(key):
if key in basic_qa:
return random.choice(basic_qa[key])
elif key in extended_qa:
return random.choice(extended_qa[key])
else:
return "我还不太明白你的问题,可以再问我别的问题吗?"
# 聊天主循环
def chat():
print("你好!我是一个简单的聊天机器人。你可以问我一些问题。要退出,请输入“再见”。")
while True:
user_input = input("你: ")
if user_input == "再见":
print("机器人: " + get_response(user_input))
break
else:
print("机器人: " + get_response(user_input))
# 运行聊天程序
chat()
使用例子:
> 你好!我是一个简单的聊天机器人。你可以问我一些问题。要退出,请输入“再见”。 > 你: 你好 > 机器人: 哈喽! > 你: 早上好 > 机器人: 早上好! > 你: 讲个笑话 > 机器人: 有一天,小明问小红:你爸爸是不是玻璃?小红说:不是呀!小明说:那你爸爸怎么有钢铁般的意志? > 你: 你喜欢做什么 > 机器人: 我喜欢学习新知识! > 你: 再见 > 机器人: 再见了,祝你一切顺利!
这个简单的聊天机器人可以根据用户的输入进行相应的回答。它预定义了一些基本的问答对,如问候语、告别语等。它还包含一些扩展的问答对,如回答一个笑话、介绍自己等。
当用户输入一个问题时,机器人会根据问题的关键字选择一个回答进行回复。如果用户输入的问题在预定义的问答对中没有对应的回答,机器人会回复“我还不太明白你的问题,可以再问我别的问题吗?”。
聊天机器人的主循环通过调用chat()函数来实现。在聊天循环中,用户输入问题并得到机器人的回答,直到用户输入“再见”才停止。
