在英特尔锐炫™ GPU 上发挥大语言模型的巨大威力

关于正睿.png

生成式 AI 不断重塑内容创作的行业格局,为内容创作者带来无限可能。这项技术可用于创作之前无法想象的图像、视频和文章。大语言模型 (LLM) 已成为 AI 时代的热门话题。通过创建提示词,任何人都可以利用它生成歌词,解决复杂的物理问题,或者草拟演示稿的大纲。这些 AI 功能不再需要通过云或订阅服务来实现。它们可以运行在您的本地 PC 上,允许您对模型进行全面控制,以创建您专属的模型输出。

在本文中,我们将向您展示如何在搭载英特尔锐炫™ A770 16GB 显卡的 PC 上进行设置,以及尝试使用多种常见的大语言模型 (LLM)。本教程将使用 Mistral-7B-Instruct LLM。借助相同的步骤,您还可以运行 Phi2、Llama2 等 PyTorch LLM,甚至是最新的 Llama3 模型!

Intel® LLM Library for PyTorch

我们之所以能够使用相同的基础安装来运行各种模型,要归功于 Intel® LLM Library for PyTorch(一种面向 PyTorch 的 LLM 库 https://github.com/intel-analytics/ipex-llm ),以下简称为IPEX-LLM。它在面向 PyTorch* 的英特尔® 扩展的基础上构建而成,包含先进的 LLM 优化和低位 (INT4/FP4/INT8/FP8) 权重压缩,以及面向英特尔硬件的最新性能优化。IPEX-LLM 利用英特尔独立显卡(例如锐炫 A 系列显卡)中的 Xe 内核 XMX AI 加速来提升性能。它支持用户在Windows的第二代Linux子系统、原生 Windows 环境和原生 Linux 中使用英特尔锐炫 A 系列显卡。

由于这个方案是基于原生 PyTorch的实现,因此您可以轻松替换为其他PyTorch支持的模型及输入数据,并可在具有加速功能的英特尔锐炫 GPU 上高效运行。

例如,当使用 IPEX-LLM 库运行 Mistral 7B 模型时,锐炫 A770 16GB 显卡每秒可处理 70 个Token词元 (每秒Token数TPS)。这意味着什么?一般而言,1 个词元相当于 0.75 个词。人类的平均阅读速度是每秒 4 个词(参考:https://wordsrated.com/speed-reading-statistics/),或者 5.3 TPS。因此锐炫 A770 16GB 显卡生成单词的速度比普通人的阅读速度要快得多!

我们的内部测试表明,锐炫 A770 16GB 显卡在运行各类模型时均能提供出众功能,因此,它是在端侧运行 LLM 的理想选择。

接下来,我们来看一下安装指南,以帮助您在锐炫 A 系列 GPU 上使用 LLM。

安装说明

您也可以参照此页面来设置环境:在搭载英特尔 GPU 的 Windows 系统上安装 IPEX-LLM — IPEX-LLM 最新文档(https://ipex-llm.readthedocs.io/en/latest/doc/LLM/Quickstart/install_windows_gpu.html)
 

1. 在设备管理器中禁用集成显卡。

2. 下载并安装 Anaconda(https://www.anaconda.com/download)。

3. 安装完成后,打开“开始”菜单,搜索 Anaconda Prompt,以管理员身份运行它,然后使用以下命令创建一个虚拟环境。分别输入每个命令:

8dae6a12ly1hpz771vf6oj20iv07eq47.jpg

4. 创建一个文本文档,将其命名为 demo.py,并保存到 C:\Users\Your_Username\Documents 或者您选择的目录中。

5. 使用您所选的编辑器打开 demo.py,并将以下代码示例复制到 demo.py 中:

8dae6a12ly1hpz77hlcm8j20is0khtgq.jpg

注:上述代码从此代码仓库(https://huggingface.co/mistralai/Mistral-7B-Instruct-v0.2)的示例代码中构建。

6. 保存 demo.py。在 Anaconda 中,使用 cd 命令导航至 demo.py 所在的目录,并在 Anaconda Prompt 中运行以下命令:

8dae6a12ly1hpz77prv9pj20iy01o3yg.jpg

运行演示样例代码,就可以在发出“do you have mayonnaise recipe”的询问后,获得由模型提供的相应回答。

现在,您可以得到制作蛋黄酱的一份美味食谱!

8dae6a12ly4hpz75qecldj20sg05x0w1.png

更换模型

在我们刚才设置好的环境中,您可以通过替换上述 demo.py 中的 Hugging Face 模型 id,尝试运行其他常见的 Hugging Face 模型,例如 llama2-7B-chat-hf、llama3-8B-it、phi-2、gemma-7B-i 和 stablelm2。

8dae6a12ly1hpz78b55vyj20iv04g75f.jpg

不同的模型可能需要不同版本的 transformer 包。如果您在启动 demo.py 时遇到了错误,请按照以下步骤对 transformer 进行升级/降级:

1. Open Anaconda Prompt

2. conda activate llm

3. pip install transformers==4.37.0

经过验证的 transformer 版本:

8dae6a12ly4hpz75rxck8j20e00admxv.jpg

内存要求可能因模型和框架而异。对于运行 IPEX-LLM 的英特尔锐炫 A750 8GB,建议您使用 Llama-2-7B-chat-hf、Mistral-7B-Instruct-v0.2、phi-2 或 chatglm3-6B。

实现聊天机器人 WebUI

现在,让我们实施一个 Gradio 聊天机器人 WebUI,以改善您的 web 浏览器使用体验。如欲进一步了解如何实施基于 LLM 的交互式聊天机器人,请参见 https://www.gradio.app/guides/creating-a-chatbot-fast

1. 使用您所选的文本编辑器,创建一个名为 chatbot_gradio.py 的文档。

2. 将以下代码段复制粘贴到 chatbot_gradio.py 中:

8dae6a12ly1hpz78yhw8tj20is0ly47m.jpg

8dae6a12ly1hpz796ryuuj20is0hsq8f.jpg

3. 打开一个新的 anaconda prompt,并输入以下命令:

  • pip install gradio

  • conda activate llm

  • cd to the directory that chat_gradio.py is located in

  • python chatbot_gradio.py

4. 打开您的 web 浏览器并导航至 127.0.0.1:7860。您应看到一个使用 mistral-7b-instruct-v0.2 语言模型设置的聊天机器人!现在,您的聊天机器人有了一个美观的 WebUI。

5.提出一个问题,与您的聊天机器人开始对话吧。

8dae6a12ly4hpz75tln4pj20u00hvjt1.png

系统配置与工作负载

8dae6a12ly4hpz75vcagqj20cg0h17b9.png

补充说明:

各位读者可以根据上面的步骤,利用现有相仿的环境实现模型的下载及部署。如果需要使用托管在魔搭社区的模型完成下载及部署,可以参考 IPEX-LLM 相关的部署指南 (https://github.com/intel-analytics/ipex-llm/tree/main/python/llm/example/GPU/ModelScope-Models  )及魔搭社区的相关模型下载方式。

通知和免责声明

1、实际性能受使用情况、配置和其他因素的差异影响。更多信息请访问性能指标网站。

2、性能测试结果基于配置信息中显示的日期进行测试,且可能并未反映所有公开可用的安全更新。

3、详情请参阅配置信息披露。没有任何产品或组件是绝对安全的。

4、基于预生产系统和组件的结果,以及使用英特尔参考平台(内部示例新系统)、英特尔内部分析或架构模拟或建模评估或模拟的结果,仅供您参考。结果可能因任何系统、组件、规格或配置未来进行更改而有所差异。

5、具体成本和结果可能不同。

6、英特尔技术可能需要启用硬件、软件或激活服务。


 

© 英特尔公司版权所有。英特尔、英特尔标识、锐炫和其他英特尔标志是英特尔公司或其子公司在美国和/或其他国家(地区)的商标。

*其他的名称和品牌可能是其他所有者的资产。

疑问没解决? 我们帮您!

如果您在本文中未能找到解决当前疑问的办法,不用担心——正睿专业技术支持团队随时待命

服务项目.png

获取更多帮助

文章来源:微博 作者:英特尔开发人员专区

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值