“行空板+大模型”——基于ChatGLM的多角色交互式聊天机器人

2023-12-08 14:12:33     来源:

随着人工智能技术的迅猛发展,大型语言模型成为了热门话题。国际上的GPT-3、BERT等模型备受关注,而国内的本土语言模型ChatGLM也引起了广泛关注。ChatGLM是由清华大学开发的强大语言生成模型,结合了深度学习技术和大量中文语料的训练成果。它在自然语言理解和生成方面展现了出色性能,为国内的自然语言处理研究与应用提供了有力支持。

通过使用行空板和UGB喇叭,你可以制作一个有趣好玩的聊天机器人应用。只需修改角色描述,你就能打造属于自己的个性化聊天机器人,它能以多个角色身份与你进行对话。

1702007267369435.png

硬件准备

行空板,USB线,USB喇叭

行空板是一款专为Python学习和使用设计的新一代国产开源硬件,采用单板计算机架构,集成LCD彩屏、WiFi蓝牙、多种常用传感器和丰富的拓展接口。同时,其自带Linux操作系统和Python环境,还预装了常用的Python库,只需两步就能进行Python学习。

功能分解

具体操作

1、注册智谱api:智谱AI开放平台,https://open.bigmodel.cn/,选择验证码登录,输入手机号和验证码完成册。点击API keys, 点击“去认证”,进行实名认证。

2、注册并获取微软语音服务API密钥

(1)注册微软的账号,输入网址:https://portal.azure.com/,用邮箱创建新账号。

新用户有一年的免费额度但需要信用卡验证。如果没有条件申请微软的语音服务API,也可以使用百度的语音服务API,文章的最后提供了使用ChatGLM和百度API的实现代码。

(2)通过验证: 创建好账号登录后会进入以下页面https://portal.azure.com/#home面对新用户,微软提供了1年的免费服务但需要通过验证,这里有两种验证方法。(1)visa/银联卡验证(2)大学生能无需信用卡,使用学生邮箱验证。

(3)申请资源: 验证通过后,在Azure门户中,点击左上角的“+ 创建资源”按钮。之后会跳转到如下页面,按照提示完成填写信息。

3、加载行空板-安装库-行空板联网

(1)加载行空板 :第一步:使用USB线将行空板连接在电脑上。按照步骤加载行空板,创建好文件后,可以看到一个名为“chatbot.py”的文件,双击打开。

(2)安装所需要的库,依次输入PIP指令,点击“运行”

(3)行空板联网:调用API必须要联网。由于在本项目中,使用了智谱清言的API和微软的语音API,所以要为行空板连接网络。(1)打开浏览器,输入“10.1.2.3”进行行空板页面。(2)选择“网络设置”,选择WIFI ,输入密码,注意行空板仅支持2.4GWIFI热点。点击“连接”,行空板成功联网会显示“连接成功”,如下图。

4、编程

(1)调用chatglm的API: 参考官方的API调用文档,定义一个名为ChatGPT的类,代表聊天机器。为了测试效果,在主循环中获取用户输入,将用户的输入传给聊天机器人,打印聊天机器人的回复。

(2)实现多轮对话: 点击右上角的运行,开始在终端打字,与机器人进行对话。以下是测试对话截图,"You"部分是输入的内容,“chatbot”是调用智谱API,使用模型'chatglm_turbo',获取的回复

当聊天机器人给出谜语后,回复“猜不出来”时,期待的是聊天机器人能告诉谜语的答案。但显然根据它的回复,模型没有理解语意是猜不出上轮对话的谜语。这个现象是因为与模型的对话是单轮的形式,即问一答一;而在处理复杂的对话场景时,理解上下文和实现多轮对话是非常重要的。期待的效果是聊天机器人能结合上下文的语境,实现多轮对话。要解决这个问题,可以将整个对话历史作为输入发送给模型,而不仅仅是最新的用户消息。这样,模型就可以看到整个对话的上下文,并据此生成回复。

为了让聊天机器人能理解上下文的语境,可以在__init__ 方法中添加 self.dialogue 列表,用于存储对话历史。在 send_message 方法中,将用户的消息和模型的回复都添加到对话历史中,然后将整个对话历史转化为一个字符串,作为提示发送给模型。

(3)创建角色字典,实现多角色选择

现在我们已经成功实现了多轮对话,在与聊天机器人对话时,它是以人工智能助手(assistant)的身份。怎么能实现角色扮演呢?为了实现这个功能,可以在 ChatGPT 类中添加一个 self.role 属性来存储角色描述。然后,我们可以修改 send_message 方法,使其在将对话历史转化为字符串时,首先添加角色描述。这样,模型就会知道它应该扮演的角色,从而生成符合角色的回复。

5、UI设计

按照同样的逻辑在行空板上进行UI设计。

6、实现语音交互功能

实现语音交互功能,在角色图片的下方添加一个麦克风图片,当点击麦克风图片开始录音,并使用百度语音识别API实现语音转文字作为对话内容传给聊天机器人,再调用百度语音合成API将聊天机器人的回复播报出来。

借助ChatGLM语言生成模型和多种人工智能技术,我们可以创建一个有趣而富有趣味性的聊天机器人应用。只需准备一块行空板和一个UGB喇叭,就能得到一个可以扮演多个角色与你进行对话的机器人助手。通过自定义角色描述,你可以打造一个完全符合个性化需求的聊天机器人!让我们一起开始这个有趣的项目吧!

关于“行空板+大模型”——基于ChatGLM的多角色交互式聊天机器人 ”详细实现过程,关注“行空板”公众号”,了解更多。

上海智位机器人

上海智位机器人成立于2010年,是全球领先的从事开源硬件、机器人产品和科创教育的高科技企业,打造了DFRobot、蘑菇云科创教育等品牌,是国内最早的创客理念引入者和倡导者,创客教育的开拓者和引领者。旗下拥有中国最大的线上DF创客社区和国家级创客空间——蘑菇云创客空间,提供丰富的线上和线下学习资源,构建了一个自由、开放和富于创造力的交流空间。其Gravity产品已被全球超过100万开发者选用。合作伙伴包括微软、英特尔、Autodesk、霍尼韦尔、NASA、MIT等知名厂商和机构。

标签:

猜你喜欢

质感无法平替,Harbor House沙发新选择
肤色管理潮流引领者:Vida Glow滤镜胶囊火爆全球两周年
新鸿出国:美国EB5移民项目推荐----洛杉矶市中心万豪酒店
独具光环,敢于不凡|2023 魅族秋季无界生态发布会顺利举行
美国健康微生态保健品赫瑞克,提升全球消费者每日生活质量
为嘉兴未来发展建言献策 三省一市专家畅谈深入推进长三角一体化发展
英语启蒙绘本阅读的正确打开方式,蜜课绘本岛玩法大揭秘!
增多多5号(闪电版)养老年金保险:家庭财富规划的新选择
首台中国重离子系统临床应用新技术及绿色就医模式新闻发布会在北京顺利召开
光明眼科21周年院庆学术会议暨院眼底病诊疗中心揭牌发布仪式成功举办!
出海首家丨OneSight营销云通过中国信通院营销自动化MA平台能力测评
三河经开管委会2023年度瞪羚企业授牌仪式在铭泰慧谷召开
北京逛街购物好去处王府中环积分换礼礼遇来袭,百余款积分好礼等你随心兑
特性性皮炎的中西医治疗——李茜
安翼机器人与上海均和集团签署《战略合作框架协议》
年薪冲破500万的第二天,父亲在家突发脑梗
第十三届海峡两岸信息服务创新大赛颁奖典礼暨2023年福建省软件和信息技术服务业综合竞争力评价结果发布会在榕举办
深耕基础科学研究结硕果,方太NSP选择性过滤技术再获权威认证
中小酒店“直销”自救新路径
租板滑雪不尽兴? 神州租车滑雪季多款车型随你装
3D生物束带产道修复怎么样?石家庄哪里有做3D生物束带的医院
北京八大处整形杨明勇:玻尿酸隆鼻优势
规范、快捷,让患者少跑路、少花钱!南昌普瑞眼科「一站式」眼内注药中心正式成立!
国际航协北亚区货运日暨广州国际货运航空枢纽高质量发展大会在穗召开
传智教育承办2023泰达数字经济论坛成功举办
世界真的变了!
茶王之家“悦享王者”的商标韵致
“与善击掌 为它存粮” 善待宠粮携手合生汇点亮流浪动物寒冬希望
贵州茅源-华仑天香酒正式上市 余派酱香第一力作醇厚登场
家用吸尘器哪个牌子好?诸多新款如何取舍?