如何用python搭建实现一个问答类型机器人
Admin 2022-07-01 群英技术资讯 1201 次浏览
这篇文章主要介绍“如何用python搭建实现一个问答类型机器人”的相关知识,下面会通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“如何用python搭建实现一个问答类型机器人”文章能帮助大家解决问题。今天教大家如何用Python爬虫去搭建一个「生活常识解答」机器人。
思路:这个机器人主要是依托于“阿里达摩院发布的语言模型PLUG”,通过爬虫的方式,发送post请求(提问),然后返回json数据(回答)
这个「生活常识解答」机器人采用的是:阿里达摩院发布的语言模型PLUG(最近刚发布的,目前是测试阶段)

该模型参数规模达270亿,采用1TB以上高质量中文文本训练数据,包括了新闻、小说、诗歌、常识问答等类型。

这里是需要登录阿里云账号,登录之后可以在网页进行测试问答!
因此我们下面将通过抓包方式获取这个问答的请求链接,然后在python代码中requests发送post请求去进行提问,然后返回结果(答案)。
在浏览器里面F12,点击network,然后点击一下提问,获取链接。
首先是发送的参数(提问)

然后是返回的json数据


因此这个数据包的相关信息(请求链接,参数,返回结果)我们已经知道了,下面开始编写python代码
首先是导入python库和请求头
import requests
import json
header={
'content-type':'application/json',
'cookie':'上面页面中你自己的cookie',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3947.100 Safari/537.36',
}
经过测试,有用的请求头参数是上面三个(content-type、cookie、User-Agent),缺一不可。
参数(其中q是问题,length是返回答案长度,type是对应常识问题)
q = "程序员脱发用什么洗发水好?"
data = {
'length':'128',
'type':'2',
'passage':q,
}
发送请求
url = "https://nlp.aliyun.com/otherApi/yymx/cdgmwbsc" text = requests.post(url,data = json.dumps(data),headers=header).json() print(text['res'])
返回结果

下面为了能够多轮提问,将请求部分代码放到循环中(如果输入是exit则退出循环)

今天小编主要就教大家用Python爬虫去搭建一个「生活常识解答」机器人。
这个机器人主要是依托于“阿里达摩院发布的语言模型PLUG”,通过爬虫的方式,发送post请求(提问),然后返回json数据(回答)。轻松实现多轮提问。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
sequence 序列sequence(序列)是一组有顺序的元素的集合(严格的说,是对象的集合,但鉴于我们还没有引入“对象”概念,暂时说元素)序列可以
Python内置函数-vars()函数。vars() 函数返回对象object的属性和属性值的字典对象。
Socket的英文原义是“孔”或“插座”。作为BSD UNIX的进程通信机制,通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,可
这篇文章主要介绍了教你怎么用Python实现多路径迷宫,文中有非常详细的代码示例,对正在学习python的小伙伴们有非常好的帮助,需要的朋友可以参考下
Pandas是一个python数据分析库,它提供了许多函数和方法来加快数据分析过程,下面这篇文章主要给大家介绍了关于python基础篇之pandas常用基本函数的相关资料,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008