|
前言 在人工智能时代,聊天机器人日益流行。它是业界设计用来简化人机交互的最新工具。从电子商务到医疗保健机构,每个人都希望使用Chatbot与用户进行交互。
% Y2 N4 {- o6 W5 m# \+ T 什么是聊天机器人 聊天机器人是一种软件应用程序,用于通过文本或文本到语音进行在线聊天对话,而不是与真人代理直接接触。-根据维基百科。 聊天机器人的类型7 Q' `+ t; K+ f% O 聊天机器人可以分为两类 •基于规则的•自学习 基于规则的: -基于规则的聊天机器人训练聊天机器人回答基于预先训练的规则的问题。这些类型的聊天机器人很适合进行简单的查询。 自主学习聊天机器人: 自主学习聊天机器人基于机器学习算法,它们比基于规则的聊天机器人更聪明。他们可以自己学习。 聊天机器人是如何工作的 由人工智能驱动的聊天机器人是智能的,也可以自己学习。它们使用自然语言处理和机器学习算法来学习和获取数据。 例如:谷歌助手,Alexa, Siri 智能的人工智能聊天机器人提供用户数据,并学习和尝试提高自己。他们用复杂的人工智能算法分析它,并以文本或语音的形式输出响应。 由于这些机器人可以从行为和经验中学习,它们可以对广泛的查询和命令作出回应。 $ Y4 c9 m6 ?- j* p 开始搭建今天,我们将使用ChatterBot库创建python chatbot。让我们开始吧! 1. 创建虚拟环境pipenv是一个轻松创建虚拟环境的python库。 pip install pipenv pipenv install2. 安装库 我们将使用ChatterBot库来创建简单的Python Chatbot。通过pip命令安装chatterbot和chatterbot_corpus。 pipenv install chatterbot ) Q9 o3 [, Y% l; H+ a: g# Xpipenv install chatterbot_corpus1 P/ g" ?4 u- v+ Z8 G, y+ W0 s/ t 3.创造和训练聊天机器人3 j* Q4 a7 g4 _ from chatterbot importChatBot% E8 @9 U' G% g* Z. i from chatterbot.trainers importChatterBotCorpusTrainer: A f, g4 k5 X BOTNAME = "Pyter" def start(): bot = ChatBot(BOTNAME,0 B; w! U/ Z6 u logic_adapters=[ {& ]7 m% M" }: ]& K' `$ k) v 'import_path': 'chatterbot.logic.BestMatch', 7 s& F2 h% @7 \0 I [6 M 'default_response': 'I am sorry, but I do not understand.', 'maximum_similarity_threshold': 0.90, }, ' I# o, P5 F* w* T; r; h$ T ], preprocessors = [, m2 D& s, F8 n "chatterbot.preprocessors.clean_whitespace", ], input_adaptor="chatterbot.input.TerminalAdaptor", . {5 T/ L/ c5 E. Z: e; B( u7 ? `8 C+ c output_adaptor="chatterbot.output.TerminalAdaptor", database_uri='sqlite:///database.sqlite3') trainer = ChatterBotCorpusTrainer(bot) # Train based on the english corpus) o$ ?8 B. L" L! _ {+ J trainer.train( "chatterbot.corpus.english", "chatterbot.corpus.english.greetings", + Q! `+ a9 A" i: v h "chatterbot.corpus.english.conversations", 5 Z* L' o V* l3 Q) z ) / h9 K# ?& s4 P2 p7 K7 P print(f"Hello I am {BOTNAME}") whileTrue: - D- a/ G' v& M% V0 M try:% v3 X8 i) x) Q) X bot_input = input("You: ") bot_respose = bot.get_response(bot_input) print(f"{BOTNAME}: {bot_respose}") except(KeyboardInterrupt, EOFError, SystemExit): ) I( Z" }8 K1 O5 q+ m break if __name__ == "__main__": start() |
微信公众号
手机版