你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

使用ChatterBot库创建python chatbot

[复制链接]
gaosmile 发布时间:2020-8-7 20:10
前言
在人工智能时代,聊天机器人日益流行。它是业界设计用来简化人机交互的最新工具。从电子商务到医疗保健机构,每个人都希望使用Chatbot与用户进行交互。
微信图片_20200807200742.png 7 R# l* y( j3 a8 w
% Y2 N4 {- o6 W5 m# \+ T

: l# Q5 e9 W. H; G0 y, I什么是聊天机器人
* c3 t: S0 R/ `$ P- J
聊天机器人是一种软件应用程序,用于通过文本或文本到语音进行在线聊天对话,而不是与真人代理直接接触。-根据维基百科。

  @6 A! c6 w, u4 z

' X- J, v! G. U+ s. A7 L" |: A! b聊天机器人的类型7 Q' `+ t; K+ f% O
聊天机器人可以分为两类
•基于规则的•自学习
基于规则的: -基于规则的聊天机器人训练聊天机器人回答基于预先训练的规则的问题。这些类型的聊天机器人很适合进行简单的查询。
自主学习聊天机器人: 自主学习聊天机器人基于机器学习算法,它们比基于规则的聊天机器人更聪明。他们可以自己学习。

4 y3 {/ ?2 a4 [

/ v$ h# I. ?- y聊天机器人是如何工作的
, E. k7 e+ C: t- o
由人工智能驱动的聊天机器人是智能的,也可以自己学习。它们使用自然语言处理和机器学习算法来学习和获取数据。
例如:谷歌助手,Alexa, Siri
智能的人工智能聊天机器人提供用户数据,并学习和尝试提高自己。他们用复杂的人工智能算法分析它,并以文本或语音的形式输出响应。
由于这些机器人可以从行为和经验中学习,它们可以对广泛的查询和命令作出回应。
$ Y4 c9 m6 ?- j* p
开始搭建
今天,我们将使用ChatterBot库创建python chatbot。让我们开始吧!
1. 创建虚拟环境
pipenv是一个轻松创建虚拟环境的python库。
pip install pipenv pipenv install
% j: v2 p2 R; j% \2. 安装库
+ j# _) I) N5 b1 v3 ~6 z  W
我们将使用ChatterBot库来创建简单的Python Chatbot。通过pip命令安装chatterbot和chatterbot_corpus。
pipenv install chatterbot ) Q9 o3 [, Y% l; H+ a: g# X
pipenv 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"
3 J0 a; S8 G0 \" w1 `def start():
2 E! j7 @2 X1 R# \4 W8 S" X! C     bot = ChatBot(BOTNAME,0 B; w! U/ Z6 u
        logic_adapters=[
5 d1 W+ M# H9 j" j/ X9 s/ L% Z/ ] {& ]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.',
/ [7 p& ^$ n8 }& y5 z! a. r9 @ 'maximum_similarity_threshold': 0.90,
$ x9 B0 X/ Q2 i! ] },        ' I# o, P5 F* w* T; r; h$ T
],
" V; [, {! A8 z9 l/ |8 e         preprocessors = [, m2 D& s, F8 n
"chatterbot.preprocessors.clean_whitespace",
$ [& y' a; e* P' X) f$ n],
" |  c9 R6 f6 V6 G$ W& I        input_adaptor="chatterbot.input.TerminalAdaptor", . {5 T/ L/ c5 E. Z: e; B( u7 ?  `8 C+ c
        output_adaptor="chatterbot.output.TerminalAdaptor",
+ p- l/ c% M$ P1 R: t# K        database_uri='sqlite:///database.sqlite3')
! ^6 w8 y0 u% i1 |3 k  `    trainer = ChatterBotCorpusTrainer(bot)
# }6 S2 t8 j- @$ s # Train based on the english corpus) o$ ?8 B. L" L! _  {+ J
    trainer.train(
5 F$ ^; I) Y9 `0 c4 a' g "chatterbot.corpus.english",
/ C/ L* c, @& m; j, O/ o, z"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}")
2 t1 Z. |/ }! ` whileTrue: - D- a/ G' v& M% V0 M
try:% v3 X8 i) x) Q) X
            bot_input = input("You: ")
2 V  ?6 X) H3 v. V  `- j2 u             bot_respose = bot.get_response(bot_input)
# o% ]2 E0 F# @print(f"{BOTNAME}: {bot_respose}")
/ g4 Q1 M4 w3 ^# r, V/ yexcept(KeyboardInterrupt, EOFError, SystemExit): ) I( Z" }8 K1 O5 q+ m
break
8 Q* _- W3 ]) wif __name__ == "__main__":
8 U( J& @% I: m: |) x. d     start()
) c' `& r2 S: i: ], B4 @6 U6 O
) d5 r2 k, g9 e1 Z& u" u
赞 收藏 评论0 发布时间:2020-8-7 20:10

举报

0个回答
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版