您现在的位置是:热点 >>正文
十分钟,如何制作一个聊天机器人?
热点54664460人已围观
简介...
本文转载自公众号“读芯术”(ID:AI_Discovery)
了解聊天机器人的主要用途很重要,每个行业都不能使用同一个聊天机器人,他们有不同的目的和不同的语料库。虽然消息传递组件可以很好地给予答复,但是可能需要时间作出回应。另一方面,考虑到时间问题,可以应用各种其他方法,甚至可以找到一些以规则为基础的系统,以获得适合回答所提问题的语句。
你曾多少次联系旅行社要求退票,得到一个恰当的答复是远远不够的。
现在让我们制作一个简单的聊天机器人,安装以下软件包:
pip install nltk pip install newspaper3k
Package newspaper3k有以下优点:
多线程文章下载框架 可识别新闻URL 可从HTML中提取文本 从HTML中提取顶层图像 可从HTML提取所十分有图像 可从文本中提取关键词 可从文本中提取摘要 可从文本中提取作者 谷歌趋势术语提取 使用10多种语言(英语、德语、阿拉伯语、中文等)
导入库,如下所示:
#import libraries from newspaper import Article import random import nltk import string from sklearn.feature_extraction.text import CountVectorizer from sklearn.metrics.pairwise import cosine_similarity
余钟,弦相似度或余弦核将相似度计算为X和Y的标准化点积:
sklearn.metrics.pairwise.cosine_similarity(X, Y=None, dense_output=True) 参数
X{ndarray, sparse matrix} of shape (n_samples_X, n_features) 输入数据。
Y{ndarray,sparse matrix} of shape (n_samples_Y, n_features), default=None 输入数据。
如果没有,输出将是X. dense_outputbool中所有样本之间的成对相似性,default =True是否返回密集输出,即使输入是稀疏的。如果为False,则如果两个输入数组都是稀疏的,则输出是稀疏的。
返回
核矩阵:ndarray of shape(如何n_samples_X, n_samples_Y)
import numpy as np import warnings warnings.filterwarnings('ignore')
这里从一个医疗保健网站获取数据:
article=Article("https://www.mayoclinic.org/diseases-conditions/chronic-kidney-disease/symptoms-causes/syc-20354521") article.download() article.parse() article.nlp() corpus=article.text print(corpus) &nbs制作p; #tokenization text=corpus sentence_list=nltk.sent_tokenize(text) #A list of sentences #Print the list of sentences print(sentence_list)
准备好了语料库之后,你需要考虑用户或客户可能会问或说的问题,这与我们的内容无关。它可以是问候语、感谢语,也可以是拜拜之类的信息。团队需要就这些信息和他们的反应进行考量。
问候机器人响应:
#Random response to greeting def gree一个ting_response(text): text=text.lower() #Bots greeting bot_greetings=["howdy","hi","hola","hey","hello"] #User Greetings user_greetings=["wassup","howdy","hi","hola","hey","hello"] for word in text.split(): if word in user_greetings聊天: return random.choice(bot_greetings) #Random response to greeting def gratitude_response(text): text=text.lower()
感谢机器人响应:
#Bots gratitude bot_gratitude=["Glad tohelp","You are most welcome", "Pleasure to be ofhelp"] #User Gratitud机器e user_gratitude=["Thankyou somuch","grateful","Thankyou","thankyou","thankyou"] for word in text.split(): if word in user_gratitude: return random.choice(bot_gratitude)
种类列表:
# Default title text def index_sort(list_var): length=len(list_var)&nb人?sp; list_index=list(range(0,length)) x=list_var for i in range(length): for j in range(length): if x[list_index[i]]>x[list_index[j]]: #swap temp=list_index[i] list_index[i]=list_index[j] list_index[j]=temp return list_十分index
聊天机器人响应功能来自于对预定义文本的余弦相似性的响应。
#Creat Bots Response def bot_response(user_input): user_input=user_input.lower() sentence_list.append(user_input) bot_response="" cm=CountVectorizer().fit_transform(sentence_list) similarity_scores=cosine_similarity(cm[-1],cm) similarity_scores_list=simi钟,larity_scores.flatten() index=index_sort(similarity_scores_list) index=index[1:] response_flag=0 j=0 for i in range(len(index)): ifsimilarity_scores_list[index[i]]>0.0: bot_response=bot_response+''+sentence_list[index[i]] response_flag=1 j=j+1 如何if j>2: break if response_flag==0: bot_response=bot_response+""+"I apologize, I dont understand" sentence_list.remove(user_input) return bot_response
对于退出聊天,退出列表中的单词写为“退出”,“再见”,“再见”,“退出”。
响应这些话,聊天机器人将退出聊天。
启动聊天机器人,尽情享受吧!
#Start Chat 制作print("Doc Bot: I am DOc bot and I will answer your queries about chronickidney disease, if you want to exit type, bye") exit_list=['exit','bye','see you later','quit'] while(True): user_input=input() if&nb一个sp;user_input.lower() in exit_list: print("Doc Bot: Bye Bye See youlater") break elif greeting_response(user_input)!=None: print("Doc Bot: "+greeting_response(user_input)) elif gratitude_response(user_input)!=None: print("Doc Bot: "+gratitude_resp聊天onse(user_input)) else: print("Doc Bot: "+bot_response(user_input))
请参见下面聊天机器人的回复:
“谢谢”并不在我们的机器人感谢程序中,因此我们要传达这样的信息。随着时间的推移,你可以扩大这样的词汇表,或者使用正则表达式对其进行微调。
举个小例子,与聊天机器人开始聊天,应该是快速和简单的。你需要针对不同行业对聊天机器人进行微调,这些行业的语料库来自实时数据或云端的一些储存。
此外,需要注意的是,实时数据要面对挑战,聊天必须基于最新的数据作出回应,例如在旅行社订票。
Tags:
相关文章
云安全日报210622:Ubuntu Apache服务发现执行任意代码,拒绝服务漏洞,需要尽快升级
热点Ubuntu是一个以桌面应用为主的Linux操作系统。它是一个开放源代码的自由软件,提供了一个健壮、功能丰富的计算环境,既适合家庭使用又适用于商业环境。Ubuntu为全球数百个公司提供商业支持。 6月...
【热点】
阅读更多标签: 餐饮行业
热点撰文 | 曹双涛 编辑 | 杨博丞 题图 | IC Photo “以前送外卖是挑单,今年是求单;以前担心送不完、怕超时,现在即使到了午晚餐高峰,手机也安静得像块砖;以前社媒平台上动辄宣传‘单王’月赚两...
【热点】
阅读更多智元机器人发布开源 GO-1 模型,推动具身智能技术普及
热点智元机器人宣布开源通用具身基座大模型 GO-1(Genie Operator-1),这也是全球首个采用 Vision-Language-Latent-Action (ViLLA) 架构的具身智能模型。...
【热点】
阅读更多
热门文章
最新文章
友情链接
- 标签: 康师傅
- https://www.lechzuers.com/de/search?cat=163&q=谷歌外推代发【tg:seogoogle987】,yns
- https://www.tahiti-infos.com/search/谷歌外推代发【tg:seogoogle987】,4eg
- https://www.nctsn.org/search?cat=191&query=谷歌外推代发【tg:seogoogle987】,PXV
- https://www.lee.com/search?q=谷歌外推代发【tg:seogoogle987】,ZWc
- https://www.tycoonstory.com/?s=谷歌外推代发【tg:seogoogle987】,5sV
- https://www.tailoy.com.pe/catalogsearch/result/?q=谷歌外推代发【tg:seogoogle987】,kMP
- https://www.wellbees.com/index.php/catalogsearch/result/index/?q=谷歌外推代发【tg:seogoogle987】,a4h
- https://www.mygrandma.com/Items.aspx?search=谷歌外推代发【tg:seogoogle987】,6p7
- https://www.temu.com/search_result.html?search_key=谷歌外推代发【tg:seogoogle987】Jwp
- https://www.tarleton.edu/?s=谷歌外推代发【tg:seogoogle987】,6Ol
- https://www.vocabulary.com/dictionary/谷歌外推代发【tg:seogoogle987】,pa1
- https://www.safetv.go.kr/base/search/view?searchWord=谷歌外推代发【tg:seogoogle987】fay
- https://www.monroecounty.gov/search/?q=谷歌外推代发【tg:seogoogle987】,QFS
- https://www.universal-music.co.jp/search/?q=谷歌外推代发【tg:seogoogle987】,Ziw
- https://www.sic-info.org/vi/?s=谷歌外推代发【tg:seogoogle987】,Dm9
- https://www.kaiyueleather.com/search/谷歌外推代发【tg:seogoogle987】,L3E
- https://www.temu.com/search_result.html?search_key=谷歌外推代发【tg:seogoogle987】kDK
- https://www.voices.com/talents/search?keywords=谷歌外推代发【tg:seogoogle987】,7gb
- https://www.roblox.com/discover/?cat=107&Keyword=谷歌外推代发【tg:seogoogle987】,QZU
- https://www.rookwinkel.nl/catalogsearch/result/index/?q=谷歌外推代发【tg:seogoogle987】,4b9
- https://www.ushmm.org/search/results/?ID=8s0587Oi8UTv74zPPM4fuhwjNpe2hsEE&q=谷歌外推代发【tg:seogoogle987】,D7S
- https://www.posten-portal.de/search?query=谷歌外推代发【tg:seogoogle987】,M3i
- https://www.randjleather.co.uk/index.php?route=product/search&tag=谷歌外推代发【tg:seogoogle987】,swk
- https://www.kyuhoshi.com/?s=谷歌外推代发【tg:seogoogle987】,hIU
- https://www.ng-slo.si/si/iskanje?cat=114&q=谷歌外推代发【tg:seogoogle987】,VB1
- https://www.synonyms.com/antonyms/谷歌外推代发【tg:seogoogle987】,y19
- https://www.remit.co.jp/en/?s=谷歌外推代发【tg:seogoogle987】,r10
- https://www.shopping.com/search.html?keyword=谷歌外推代发【tg:seogoogle987】,m7B
- https://www.rockngem.com/?action=CHECK&s=谷歌外推代发【tg:seogoogle987】,FjM
- https://www.polliwogs.com/search/谷歌外推代发【tg:seogoogle987】,1BJ
- https://www.vivaraise.fr/catalogsearch/result/?q=谷歌外推代发【tg:seogoogle987】,XMC
- https://www.tmtpost.com/search?q=谷歌外推代发【tg:seogoogle987】,X82
- https://www.wuv.edu/?s=谷歌外推代发【tg:seogoogle987】,gHD
- https://www.sensorshop24.de/catalogsearch/result/index/?type=132&q=谷歌外推代发【tg:seogoogle987】,Ycm
- https://www.wheels24.gr/?action=CHECK&s=谷歌外推代发【tg:seogoogle987】,AI8
- https://www.kaliastyle.com/catalogsearch/result/?q=GOOGLE谷歌外推代发【tg:seogoogle987】,sNX
- https://www.olx.ba/pretraga?trazilica=谷歌外推代发【tg:seogoogle987】,ROi
- https://www.reginatangoshoes.com/en/catalogsearch/result/index/?T=1686132113407&q=谷歌外推代发【tg:seogoogle987】,yuE
- https://www.ntv.co.jp/3min/search/?action=QUERY&q=谷歌外推代发【tg:seogoogle987】,FDY
- https://www.zutari.com/?s=谷歌外推代发【tg:seogoogle987】,jIv
- https://www.nyif.com/catalogsearch/result/index/?f=sarbanesoxleyU&index=me_cms_pe&lit=20&mode=list&p=1&q=谷歌外推代发【tg:seogoogle987】,JGQ
- https://search.danawa.com/dsearch.php?query=谷歌外推代发【tg:seogoogle987】uqj
- https://www.jusoen.com/addreng.asp?p1=谷歌外推代发【tg:seogoogle987】Jme
- https://www.skicheck.at/en/?action=CHECK&s=谷歌外推代发【tg:seogoogle987】,74F
- https://www.teacherspayteachers.com/Browse/Price-Range/Free/Search:Western International University Physics degree=谷歌外推代发【tg:seogoogle987】,HFE
- https://www.goodreads.com/quotes/tag/谷歌外推代发【tg:seogoogle987】ZfM
- https://www.resilienz-akademie.com/?cat=71&s=谷歌外推代发【tg:seogoogle987】,2F8
- https://www.trockenmittel.ch/catalogsearch/result/?iC=ZM3&q=谷歌外推代发【tg:seogoogle987】,Dbm
- https://www.merchbar.com/search?q=谷歌外推代发【tg:seogoogle987】,LMh
- https://www.umc.edu/search.aspx?ID=I4gnDKRS991MFcIDDzoYze4aWSAszAm7&q=谷歌外推代发【tg:seogoogle987】,eFq