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

审核编辑 黄宇

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

    关注

    211

    文章

    28468

    浏览量

    207358
  • 大模型
    +关注

    关注

    2

    文章

    2476

    浏览量

    2816
收藏 人收藏

    评论

    相关推荐

    自然语言处理在聊天机器人中的应用

    随着人工智能技术的飞速发展,聊天机器人已经成为我们日常生活中不可或缺的一部分。从客户服务到个人助理,聊天机器人的应用范围越来越广泛。这些机器人能够理解用户的查询,并提供及时、准确的回答,这在很大程度
    的头像 发表于 12-05 15:24 464次阅读

    马斯克旗下xAI计划推出Grok聊天机器人独立应用

    与当前市场中的佼佼者OpenAI展开竞争。 Grok聊天机器人作为xAI公司的核心产品,一直备受关注。此次推出的独立应用程序,将为Grok提供一个更加广阔的展示舞台,使其能够更好地服务于广大用户。通过这款应用,用户可以更加便捷地与Grok进行交互,享受更
    的头像 发表于 11-29 13:38 183次阅读

    NLP技术在聊天机器人中的作用

    聊天机器人,也称为聊天AI,是一种通过文本或语音与人类进行交流的软件。它们广泛应用于客户服务、在线购物、个人助理等领域。NLP技术是实现聊天机器人智能对话能力的关键。 1. 理解用户意图 NLP技术
    的头像 发表于 11-11 10:33 455次阅读

    ChatGPT 与传统聊天机器人的比较

    随着人工智能技术的飞速发展,聊天机器人已经成为我们日常生活中不可或缺的一部分。从简单的客服助手到复杂的个人助理,这些虚拟助手正在逐渐改变我们与技术的互动方式。在众多聊天机器人中,ChatGPT无疑是
    的头像 发表于 10-25 16:16 601次阅读

    Meta人工智能聊天机器人进军新市场,挑战ChatGPT

    Meta近日宣布,其人工智能聊天机器人将进军21个新市场,与OpenAI的ChatGPT展开激烈竞争。
    的头像 发表于 10-11 16:29 310次阅读

    Snapchat聊天机器人集成谷歌Gemini技术

    Snap与谷歌云的战略合作再升级,为Snapchat平台注入了新的智能活力。双方宣布,Snapchat的My AI聊天机器人将深度集成谷歌Gemini技术,这一创新举措标志着Snapchat在人工智能应用领域的又一次飞跃。
    的头像 发表于 09-25 14:51 297次阅读

    Meta将推出音频版聊天机器人

    ,为旗下Meta AI聊天机器人注入明星之声。这一音频版本预计本周起在美国及全球其他英语市场率先上线,为用户提供前所未有的语音交互体验。
    的头像 发表于 09-24 15:18 460次阅读

    Al大模型机器人

    和迭代来不断改进自身性能。它们可以从用户交互中学习并根据反馈进行调整,以提高对话质量和准确性。可定制性与整合性: AI大模型机器人可以根据特定需求进行定制和整合,以满足不同场景和应用的要求。它们可以与其
    发表于 07-05 08:52

    AI聊天机器人Grok向欧洲X平台Premium会员开放

    社交平台X的首席执行官琳达·亚卡里诺宣布,全新研发的Grok人工智能聊天机器人正式向欧洲的X Premium会员提供服务。Grok是X平台精心打造的一款AI聊天机器人,旨在提升欧洲会员的交流体验。
    的头像 发表于 05-17 09:38 427次阅读

    揭秘聊天机器人的“大脑”-大语言模型

    如果说 AI 正处于改变历史的“iPhone 时刻”,那么聊天机器人就是其首批热门应用之一。
    的头像 发表于 04-17 10:01 741次阅读
    揭秘<b class='flag-5'>聊天机器人</b>的“大脑”-大语言<b class='flag-5'>模型</b>

    Mistral AI发布旗舰大模型Mistral Large及聊天机器人Le Chat

    近日,欧洲人工智能领域的领军企业Mistral AI发布了其旗舰大模型Mistral Large,并同步推出了首个聊天机器人产品Le Chat。这一重要进展标志着Mistral AI在人工智能技术的创新和应用方面取得了新的突破。
    的头像 发表于 03-04 14:04 881次阅读

    英伟达引领AI新潮流,推出“Chat with RTX”聊天机器人

    随着人工智能技术的突飞猛进,英伟达(NVIDIA)再次展现了其技术领导地位,为Windows PC用户带来了一款革命性的本地聊天机器人应用程序——“Chat with RTX”。这一创新应用的推出,不仅标志着人工智能在日常生活中的进一步渗透,也预示着聊天机器人将迈向一个更
    的头像 发表于 02-19 11:11 1011次阅读

    英伟达推出全新AI聊天机器人

    近日,英伟达(Nvidia)宣布推出其全新的AI聊天机器人——“Chat With RTX”。这款聊天机器人被视为英伟达版的ChatGPT,为用户提供了一个全新的、本地化的AI交互体验。
    的头像 发表于 02-19 11:09 934次阅读

    谷歌AI聊天机器人改名为Gemini

    谷歌(Google)近日宣布,旗下备受瞩目的AI聊天机器人Bard正式更名为Gemini,并推出了一款功能更加强大的付费版本——Gemini Advanced。这一战略调整旨在与微软、OpenAI等科技巨头在AI聊天机器人市场展开更为激烈的竞争。
    的头像 发表于 02-18 11:28 1122次阅读

    字节跳动推出AI聊天机器人Coze扣子

    近日,字节跳动正式推出了名为“Coze扣子”的AI聊天机器人开发平台。自2月1日起,这一平台已正式上线,为开发者和用户提供了一个全新的交互体验。
    的头像 发表于 02-03 09:31 1847次阅读