英特尔 Extension for Transformers 实验

1 英特尔技术介绍

英特尔 Extension for Transformers 是英特尔推出的一个创新工具包,可基于英特尔架构平台,尤其是第四代英特尔至强可扩展处理器(代号 Sapphire Rapids,SPR)显著加速基于 Transformer 的大语言模型 (Large Language Model, LLM)。其主要特性包括:

通过扩展 Hugging Face transformers API 和利用英特尔® Neural Compressor,为用户提供无缝的模型压缩体验;

提供采用低位量化内核(NeurIPS 2023:在 CPU 上实现高效 LLM 推理)的 LLM 推理运行时,支持 Falcon、 LLaMA、MPT、 Llama2、 BLOOM、 OPT、 ChatGLM2、GPT-J-6B、Baichuan-13B-Base、Baichuan2-13B-Base、Qwen-7B、Qwen-14B 和 Dolly-v2-3B 等常见的 LLM;

先进的压缩感知运行时(NeurIPS 2022:在 CPU 上实现快速蒸馏 和 QuaLA-MiniLM:量化长度自适应 MiniLM;NeurIPS 2021:一次剪枝,一劳永逸:对预训练语言模型进行稀疏/剪枝)。

2 实验环境配置

进入ModelScope(https://www.modelscope.cn/home),右上角点击完成新用户的注册;

注册完成后,登录modelscope,进入首页,请确定已经绑定阿里云账号,并已获得免费的配套云计算资源。启动CPU服务器:

打开terminal

进入环境目录/opt/conda/envs,新建文件夹itrex:

拷贝镜像文件至itrex目录(任选一个下载即可):

解压文件:

结果如下:

激活环境:

安装对应的kernel

3 设计实现

创建notebook

基于itrex kernel新建notebook

下载模型,新建cell,下载中文大模型:

新建cell,下载embedding模型:

准备知识库文件sample.jsonl

1) 新建文件sample.jsonl:右键->New File 双击文件,在文件里面输入如下内容,保存文件。

回到notebook,新建cell,添加以下代码构建chatbot,点击运行:

 

新建cell,添加以下代码disable retrieval,运行结果如下:

新建cell,添加以下代码enable retrieval,运行结果如下:

4 个人心得

在英特尔Extension for Transformers 中,我发现了一种创新工具,能够显著地提升基于 Transformer 的大语言模型(LLM)的推理效率。这个工具包括了一个名为LLM Runtime的运行时环境,专门为英特尔至强可扩展处理器进行了优化。通过这个运行时环境,我能够利用英特尔®的各种AI加速技术,如AMX、VNNI,以及AVX512F和AVX2指令集,来实现更高效的LLM推理。

其中,LLM Runtime还提供了多种量化选择,使得我可以根据需要进行不同粒度和不同组大小的量化,从而更好地适应我的应用场景。此外,它还拥有优化的KV缓存访问和内存分配策略,以及张量并行化功能,有助于在多路系统中进行分布式推理。

在实验中,我发现这个工具包极大地提升了我的工作效率,特别是在处理大型语言模型时。通过充分利用英特尔的硬件优势和优化的运行时环境,我能够更快速地完成推理任务,同时减少了资源消耗。这使得我能够更好地应对LLM在聊天等应用场景中的挑战,提供更流畅、更智能的用户体验。

总的来说,英特尔 Extension for Transformers 提供了一套强大而高效的工具,为我在英特尔架构平台上开发和部署基于Transformer的大语言模型提供了极大的帮助。我相信在未来的工作中,这个工具包将继续发挥重要作用,帮助我更好地应对各种复杂的自然语言处理任务。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值