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

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

3天内不再提示

使用Ryzen ™ AI处理器构建聊天机器人

eeDesigner 来源:11 作者:11 2024-05-11 14:22 次阅读

人工智能处理器和软件将个人计算的强大功能带到人工智能PC上,将工作、协作和创新的效率提升到一个全新的水平。生成式AI应用程序(如AI聊天机器人)由于高处理要求而存在于云中。在这篇博客中,我们将探索Ryzen ™ AI技术的构建模块,并展示利用它来构建一个仅在Ryzen AI笔记本电脑上以最佳性能运行的AI聊天机器人是多么容易。

全栈Ryzen™ AI软件

Ryzen AI配备了一个专用的神经处理单元(NPU),用于与CPU内核集成在片上的AI加速。AMD Ryzen AI软件开发工具包(SDK)使开发人员能够采用在PyTorch或TensorFlow中训练的机器学习模型,并在由Ryzen AI支持的PC上运行它们,可以智能地优化任务和工作负载,释放CPU和GPU资源,并以更低的功耗确保最佳性能。了解更多关于Ryzen AI产品信息

SDK包括用于在NPU上优化和部署AI推理的工具和运行时库。安装很简单,该套件配备了各种预量化的准备部署模型的拥抱脸AMD模型动物园。开发人员可以在几分钟内开始构建他们的应用程序,在Ryzen AI PC上释放AI加速的全部潜力。

构建AI Chatbot

人工智能聊天机器人需要大量的处理能力,以至于它们通常生活在云中。nbsp;实际上,我们可以在PC上运行ChatGPT,但是本地应用程序通过Internet将提示发送到服务器进行LLM模型处理,并在收到响应后简单地显示响应。

然而,在这种情况下,本地和高效的AI聊天机器人不需要云支持。您可以从Hugging Face下载一个开源的预训练OPT1.3B模型,并通过一个简单的三步过程将其部署在Ryzen AI笔记本电脑上,并使用预构建的Gradio Chatbot应用程序。

步骤1:从Hugging Face下载预训练的opt-1.3b模型

步骤2:量化从FP32到INT 8的下载模型

步骤3:使用模型部署Chatbot应用程序

先决条件

首先,您需要确保满足以下先决条件。

AMD锐龙AI笔记本电脑与Windows®(R) 11个操作系统

Anaconda,如果需要,请从 这里

最新的Ryzen AI AIE驱动程序和软件。遵循简单的单击安装 这里

本博客的辅助材料发布在AMD GitHub存储库中。

接下来,克隆存储库或下载并解压缩Chatbot-with-RyzenAI-1.0.zip到安装Ryzen AI SW的根目录中。在本例中,它是C:UserahoqRyzenAI

cd C:UsersahoqRyzenAI

git clone alimulh/Chatbot-with-RyzenAI-1.0

#激活安装RyzenAI时创建的conda环境。在我的情况下,它是ryzenai-1.0-20231204-120522

Conda activate Ryzenai-1.0-20231204-120522

#使用requirements.txt文件安装gradio pkage。聊天机器人的浏览器应用程序是用Gradio创建的

pip安装-r要求. txt

#初始化路径

setup.bat

现在,您可以通过3个步骤创建聊天机器人:

Step-1从Hugging Face下载预训练模型

在此步骤中,从Hugging Face下载预训练的Opt-1.3b模型。您可以修改run.py脚本,从您自己或您公司的存储库下载预训练模型。Opt-1.3b是一个大的,~4GB的模型。下载时间取决于网速。在这种情况下,它花了~6分钟。

cd Chatbot-with-RyzenAI-1.0

python run.py--model_name opt-1.3b --下载

下载的模型保存在文件夹opt-1.3b_pretrained_fp32中,如下所示。

wKgZomY_DnuATA7kAADsZxyjT_M334.jpg

步骤2量化下载的模型从FP32到Int8

下载完成后,我们使用以下命令对模型进行重新配置:

python run.py--model_name opt-1.3b-python

量化是一个两步的过程。首先,FP32模型是“平滑量化”的,以减少量化过程中的精度损失。它本质上是识别激活系数中的异常值并相应地调节权重。因此,在量化期间,如果离群值被丢弃,则误差引入是可忽略的。Smooth Quant是由AMD的先驱研究人员之一Song Han博士发明的,他是麻省理工学院EECS系的教授。下面是平滑量化技术如何工作的可视化演示。

wKgaomY_Dn2AOJmUAAEw7FyurAE541.jpg

你可以在这里了解更多关于平滑量化(smoothquant)技术的信息。在平滑建模过程之后,条件模型沿着与mart.json文件一起保存在opt-1.3b_smoothquant文件夹的“model_onnx”文件夹中。以下是平滑量化对数的屏幕截图:

wKgaomY_DoCAPSzPAADVHa0erGo345.jpg

平滑量化需要约30秒才能完成。一旦完成,最佳量化器用于将模型转换为int 8。int 8量化模型然后保存在“opt-1.3b_smoothquant "文件夹内的”model_onnx_int8“文件夹中。量化是一个离线过程。大约需要2-3分钟完成,需要一次完成。下面是Int 8量化日志的屏幕截图:

wKgZomY_DoSAF3nnAAG2oCwRX14969.jpg

Step-3评估模型并使用聊天机器人应用程序部署它

接下来,评估量化模型并使用以下命令以NPU为目标运行它。注意,模型路径被设置为我们在上一步中保存int8量化模型的位置,

python run.py --model_name opt-1.3b --target aie --local_path。 opt-1.3b_smoothquantmodel_onnx_int8

在第一次运行期间,模型由内联编译器自动编译。编译也是一个两步的过程:首先,编译器识别可以在NPU中执行的层和需要在CPU中执行的层。然后创建子图集。一组用于NPU,另一组用于CPU。最后,它为每个子图创建针对相应执行单元的指令集。这些指令由两个ONNX执行提供程序(EP)执行,一个用于CPU,一个用于NPU。在第一次编译之后,已编译的模型保存在该高速缓存中,因此在后续部署中它避免了编译。下面是一个屏幕截图,其中模型信息是在编译流程中打印出来的。

wKgZomY_DoeAJj7NAAEx-b3TWvE852.jpg

编译后,模型在NPU和CPU上运行。将应用测试提示。LLM Opt1.3B模型的响应显示了正确的答案。请记住,我们下载并部署了一个公开的预训练模型。因此,它的准确性是主观的,可能并不总是像预期的那样。我们强烈建议在生产部署之前对公开可用的模型进行微调。下面是测试提示和响应的屏幕截图:

wKgaomY_DomACXPqAAB3NSK5lZI258.jpg

现在,让我们使用保存在路径opt-1. 3b-smoothquantmodel_onnx_int 8中的int 8量化模型启动聊天机器人

python gradio_appopt_demo_gui. py——model_file. opt—1.3b_smoothquantmodel_onnx_int8

如命令提示符所示,聊天机器人应用程序在端口1234上的本地主机上运行。

打开浏览器并浏览到http://localhost:1234。

在浏览器应用程序上,设置max_output_token=64并输入提示“AMD做什么?“输入文本框中。聊天机器人输出如下所示的响应。它还将KPI(关键性能指标)计算为token/sec。在这种情况下,它是每秒约4.7个令牌。

wKgZomY_Do2AKaXfAADk6exh4VA870.jpg

恭喜你,你已经成功构建了一个私人AI聊天机器人。它完全运行在笔记本电脑上,OPT1.3B是一种LLM(大型语言模型)。

结论

AMD锐龙™ AI全栈工具使用户能够在AI PC上轻松创建以前无法实现的体验-开发人员使用AI应用程序,创作者使用创新和引人入胜的内容,企业主使用工具优化工作流程和效率。

我们很高兴能将这项技术带给我们的客户和合作伙伴。如果您有任何问题或需要澄清,我们很乐意听取您的意见。查看我们的GitHub存储库以获取教程和示例设计,加入我们的讨论论坛,或发送电子邮件至amd_ai_mkt@amd.com。

审核编辑 黄宇

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

    关注

    68

    文章

    19404

    浏览量

    231020
  • 机器人
    +关注

    关注

    211

    文章

    28632

    浏览量

    208230
  • AI
    AI
    +关注

    关注

    87

    文章

    31493

    浏览量

    270153
  • ryzen
    +关注

    关注

    1

    文章

    81

    浏览量

    17020
收藏 人收藏

    评论

    相关推荐

    聊天机器人在国内为什么只能做客服?

    `“智能聊天机器人”在国外越来越火热了。这一年,微软先后推出了Tay、小冰小娜机器人家族,社交巨头Facebook也紧接着在自己的messenger应用中发布了超过10万个的功能性机器人。此后,包括
    发表于 06-20 16:50

    聊天机器人的自动问答技术实现

    【原创】聊天机器人与自动问答技术
    发表于 06-03 08:47

    如何利用Python+ESP8266 DIY 一个智能聊天机器人

    如何利用Python+ESP8266 DIY 一个智能聊天机器人
    发表于 02-14 06:16

    聊天机器人的作用分析

    可以成为你的私人小秘书。 近日,两大科技巨头谷歌和脸谱纷纷投巨资研发各自的聊天机器人产品。谷歌本周收购了聊天机器人创业公司API.AI,进一步加强语音识别技术,让机器人开始说话。 脸谱
    发表于 09-20 10:21 2次下载

    AI聊天机器人发展的前途怎么样

    在人工智能(AI)盛行的时代,由于即时消息平台的崛起,虚拟助理的普及以及各种企业提供实时客户服务的努力下,聊天机器人市场正以非凡速度的成长。
    发表于 03-26 16:19 1423次阅读

    一个基于Microsoft聊天机器人Tay的示例

    当意料之外的事情浮出水面时,我们可以期望的最好的办法就是减少有效应对负担的基础设施。让我们谈谈为AI构建该基础架构。互联网喜欢聊天机器人无处不在,所以让我们看一个基于Microsoft聊天机器
    的头像 发表于 04-09 14:18 2987次阅读

    构建聊天机器人需要哪些资源?

    我问新客户的第一个问题是:“为什么需要聊天机器人,并且该聊天机器人如何解决您的问题或为您的组织带来价值?”,“您的客户正在寻找什么答案?”,“您的客户服务是否经常收到重复的问题?”
    的头像 发表于 10-27 14:59 2494次阅读

    GoGlobal 推出全新 AI 聊天机器人 – ChatGoGlobal

        立即提问,即时回应 全球领先的国际人力资源和名义雇主(EOR)服务提供商 GoGlobal,近日宣布推出其全新的 AI 聊天机器人ChatGoGlobal。 这款生成式 AI 聊天机器
    的头像 发表于 04-20 14:56 1187次阅读
    GoGlobal 推出全新 <b class='flag-5'>AI</b> <b class='flag-5'>聊天机器人</b> – ChatGoGlobal

    聊天机器人开源分享

    电子发烧友网站提供《聊天机器人开源分享.zip》资料免费下载
    发表于 06-20 15:07 1次下载
    <b class='flag-5'>聊天机器人</b>开源分享

    全球与中国AI聊天机器人市场:增长趋势、竞争格局与前景展望

    与人类用户进行对话。 它可以使用自然语言处理(NLP)和机器学习(ML)等各种技术和方法来构建聊天机器人有多种类型,包括基于规则的聊天机器人
    的头像 发表于 08-01 18:07 2054次阅读

    如何用AI聊天机器人写出万字长文

    如何用AI聊天机器人写出万字长文
    的头像 发表于 12-26 16:25 1088次阅读

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

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

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

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

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

    近年来最受瞩目的一个。 一、技术基础 1.1 传统聊天机器人 传统聊天机器人通常基于规则引擎构建,这意味着它们通过预设的脚本和关键词来响应用户的输入。这些机器人
    的头像 发表于 10-25 16:16 681次阅读

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

    上归功于自然语言处理技术的进步。 聊天机器人的工作原理 聊天机器人的核心是一个对话系统,它能够处理用户的输入(通常是文本形式),并生成相应的回复。这个系统通常包括以下几个关键组件: 语
    的头像 发表于 12-05 15:24 563次阅读