0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

话说科技 来源:话说科技 作者:话说科技 2023-12-08 14:11 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群


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

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

硬件准备

行空板,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等知名厂商和机构。

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器人
    +关注

    关注

    213

    文章

    30590

    浏览量

    219616
  • 大模型
    +关注

    关注

    2

    文章

    3442

    浏览量

    4969
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    RK3576机器人核心:三屏异显+八路摄像头,重塑机器人交互与感知

    引擎,访问并显示米尔官方网页,承担人机信息查询与交互角色。· MINI DP接口(27寸显示器):实时显示8路摄像头捕捉的图像预览,充当机器人的"视觉监控中心"
    发表于 10-29 16:41

    【EASY EAI Orin Nano开发试用体验】基于RKLLM大模型聊天机器人

    计划在EASY EAI Orin Nano开发部署QWEN大模型,然后通过部署flask服务将其web化,成为一个web聊天对话机器人,最后再对接语音识别模块,最终实现一个语音
    发表于 08-07 16:52

    明远智睿SSD2351开发:语音机器人领域的变革力量

    接口则让语音机器人可以连接到互联网,实时获取最新的信息,增强其智能性和交互能力。 在实际应用场景中,以智能客服语音机器人为例。SSD2351开发可以驱动语音识别模块,准确识别用户的问
    发表于 05-28 11:36

    【「# ROS 2智能机器人开发实践」阅读体验】机器人入门的引路书

    ROS的全称:Robot Operating System 机器人操作系统 ROS的 目的 :ROS支持通用库,是通信总线,协调多个传感器 为了解决机器人里各厂商模块不通用的问题,让机器人快速开发
    发表于 04-30 01:05

    大象机器人携手进迭时空推出 RISC-V 全栈开源六轴机械臂产品

    大象机器人成立于2016年,专注协作机器人研发与应用,产品线涵盖轻量级协作机器人、人形机器人、仿生机器人等多种形态。拳头产品myCobot系
    发表于 04-25 17:59

    零知开源——ESP32语音交互系统(AI小智)开发教程

    小智AI聊天机器人是一个基于嵌入硬件与人工智能技术深度融合的智能交互系统。该项目以ESP32开发为核心,结合语音唤醒、自然语言处理、音频解码播放及图形化
    的头像 发表于 03-29 15:33 1w次阅读
    零知开源——ESP32语音<b class='flag-5'>交互</b>系统(AI小智)开发教程

    东软联合推出新一代全语言交互式社服务机器人“南小宁”

    日前,东软与南宁智慧社创新实验室以及华为携手,共同推出新一代全语言交互式社服务机器人——“南小宁”。它是基于东软“融智”解决方案智能化实施框架,适配DeepSeek推理
    的头像 发表于 03-25 10:04 893次阅读

    普渡机器人接入DeepSeek满血版模型

    自2月20日起,普渡机器人正式接入DeepSeek满血版模型机器人智能语音交互能力迎来智能化升级里程碑!此次升级中,首批搭载该模型的贝拉P
    的头像 发表于 02-20 16:50 1336次阅读

    马斯克DOGE团队开发政府AI聊天机器人

    近日,据媒体引述消息人士透露,全球首富马斯克旗下的政府效率部门(DOGE)正着手为美国联邦总务署(GSA)打造一款定制的生成人工智能(GenAI)聊天机器人——GSAi。
    的头像 发表于 02-10 18:04 1022次阅读

    全开源DFRobot“宠物”机器人,会走会跳还能换表情, 开启智能互动新体验

    近日,一款名为Tillu的开源“宠物”机器人受到了创客们的广泛关注。该机器人基于上海智位机器人(DFRobot)
    的头像 发表于 01-17 15:01 1073次阅读

    物理仿真人形机器人的统一全身控制策略

    创建动作自然并对各种控制输入做出智能响应的交互式仿真人形机器人仍是计算机动画和机器人技术领域最具挑战性的问题之一。NVIDIA Isaac Sim等高性能 GPU 加速仿真器以及使用NVIDIA Isaac Lab的
    的头像 发表于 01-06 12:31 1622次阅读
    物理仿真人形<b class='flag-5'>机器人</b>的统一全身控制策略

    【「具身智能机器人系统」阅读体验】2.具身智能机器人的基础模块

    非常重要的地位。 先说这个自主机器人的计算系统。计算系统是自主机器人的关键部件。自主机器人通过智能计算系统与物理世界交互,自主地完成任务。通常会包括几个关键的模块,分别是传感模块,感知
    发表于 01-04 19:22

    【「具身智能机器人系统」阅读体验】2.具身智能机器人模型

    。 多模态融合的创新与突破 机器人控制技术的另一个重要突破在于多模态大模型的应用。相比于仅通过文字进行人机交互的传统方法,现代机器人能够融合视觉、声音、定位等多模态输入信息,为任务执行
    发表于 12-29 23:04

    【「具身智能机器人系统」阅读体验】+数据在具身人工智能中的价值

    嵌入人工智能(EAI)将人工智能集成到机器人等物理实体中,使它们能够感知、学习环境并与之动态交互。这种能力使此类机器人能够在人类社会中有效地提供商品及服务。 数据是一种货币化工具 数
    发表于 12-24 00:33

    Cloudera推出RAG Studio,助力企业快速部署聊天机器人

    企业在利用实时企业数据部署RAG聊天机器人方面迈出了重要一步,且整个过程仅需几分钟。 RAG Studio是一款无代码解决方案,它极大地简化了非技术用户使用AI应用的难度。通过这一平台,业务团队
    的头像 发表于 12-12 11:06 1030次阅读