用BigDL-LLM 即刻加速百亿级参数LLM推理

我们正迈入一个由大语言模型(Large Language Model, LLM)驱动的 AI 新时代,LLM在诸如客户服务、虚拟助理、内容创作、编程辅助等各类应用中正发挥着越来越重要的作用。

然而,随着 LLM 规模不断扩大,运行大模型所需的资源消耗也越来越大,导致其运行也越来越慢,这给 AI 应用开发者带来了相当大的挑战。

为此,英特尔最近推出了一个名为BigDL-LLM[1]的大模型开源库,可助力 AI 开发者和研究者在英特尔® 平台上加速优化大语言模型,提升大语言模型在英特尔® 平台上的使用体验。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

用BigDL-LLM 即刻加速百亿级参数LLM推理

下面就展示了使用 BigDL-LLM 加速过的 330 亿参数的大语言模型 Vicuna-33b-v1.3[2]在一台搭载英特尔® 至强® 铂金 8468 处理器的服务器上运行的实时效果。

用BigDL-LLM 即刻加速百亿级参数LLM推理

△在一台搭载英特尔® 至强® 铂金 8468 处理器的服务器上运行 330 亿参数大语言模型的实际速度(实时录屏)

BigDL-LLM:英特尔® 平台上的开源大语言模型加速库

BigDL-LLM 是一个专注于优化和加速大型语言模型的开源库,它是 BigDL 的一部分,并遵循 Apache 2.0 许可证发布

它提供了各种低精度优化(例如 INT4/INT5/INT8),并可利用多种英特尔® CPU集成的硬件加速技术(AVX/VNNI/AMX 等)和最新的软件优化,来赋能大语言模型在英特尔® 平台上实现更高效的优化和更为快速的运行。

BigDL-LLM 的一大重要特性是:对基于 Hugging Face Transformers API 的模型,只需改动一行代码即可对模型进行加速,理论上可以支持运行任何 Transformers 模型,这对熟悉 Transformers API 的开发者非常友好。

除了 Transformers API,很多人也会使用 LangChain 来开发大语言模型应用。

为此,BigDL-LLM 也提供便于使用的 LangChain 的集成[3],从而让开发者能够轻松使用 BigDL-LLM 来开发新应用或迁移现有的、基于 Transformers API 或 LangChain API 的应用。

此外,对于一般的 PyTorch 大语言模型(没有使用 Transformer 或 LangChain API 的模型),也可使用 BigDL-LLM optimize_model API 一键加速来提升性能。详情请参阅 GitHub README[4]以及官方文档[5]。

BigDL-LLM 还提供了大量常用开源 LLM的加速样例(e.g. 使用 Transformers API 的样例[6]和使用 LangChain API 的样例[7],以及教程(包括配套 jupyter notebooks)[8] ,方便开发者快速上手尝试。

安装和使用:简便的安装过程和易用的 API 接口

安装 BigDL-LLM 非常方便,只需执行以下命令即可:

pip install --pre --upgrade bigdl-llm[all]

若代码显示不全,请左右滑动

使用 BigDL-LLM对大模型进行加速也是非常容易的(这里仅用 Transformers 风格 API 进行举例)。

使用 BigDL-LLM Transformer 风格 API 对模型加速,只需要改动模型加载部分,后续使用过程与原生 Transformers 完全一致。

而用 BigDL-LLM API 加载模型的方式与 Transformers API 也几乎一致——用户只需要更改 import,在 from_pretrained 参数中设置 load_in_4bit=True 即可。

BigDL-LLM将在模型加载过程中进行4位低精度量化,并在后续的推理过程中利用各种软硬件加速技术进行优化

#Load Hugging Face Transformers model with INT4 optimizationsfrom bigdl.llm. transformers import AutoModelForCausalLMmodel = AutoModelForCausalLM.from_pretrained('/path/to/model/', load_in_4bit=True)

若代码显示不全,请左右滑动

示例:快速实现一个基于大语言模型的语音助手应用

下文将以 LLM 常见应用场景“语音助手”为例,展示采用 BigDL-LLM 快速实现 LLM 应用的案例。通常情况下,语音助手应用的工作流程分为以下两个部分:

用BigDL-LLM 即刻加速百亿级参数LLM推理

△图 1. 语音助手工作流程示意

语音识别——使用语音识别模型(本示例采用了 Whisper 模型[9] )将用户的语音转换为文本;文本生成——将 1 中输出的文本作为提示语 (prompt),使用一个大语言模型(本示例采用了 Llama2[10] )生成回复。

以下是本文使用 BigDL-LLM 和 LangChain[11] 来搭建语音助手应用的过程:

语音识别阶段:第一步,加载预处理器 processor 和语音识别模型 recog_model。本示例中使用的识别模型 Whisper 是一个 Transformers 模型。

只需使用 BigDL-LLM 中的 AutoModelForSpeechSeq2Seq 并设置参数 load_in_4bit=True,就能够以 INT4 精度加载并加速这一模型,从而显著缩短模型推理用时。

#processor = WhisperProcessor .from_pretrained(recog_model_path)recog_model = AutoModelForSpeechSeq2Seq .from_pretrained(recog_model_path, load_in_4bit=True)

若代码显示不全,请左右滑动

第二步,进行语音识别。首先使用处理器从输入语音中提取输入特征,然后使用识别模型预测 token,并再次使用处理器将 token 解码为自然语言文本。

input_features = processor(frame_data,sampling_rate=audio.sample_rate,return_tensor=“pt”).input_featurespredicted_ids = recogn_model.generate(input_features, forced_decoder_ids=forced_decoder_ids)text = processor.batch_decode(predicted_ids, skip_special_tokens=True)[0]

若代码显示不全,请左右滑动

文本生成阶段,首先使用 BigDL-LLM 的 TransformersLLM API 创建一个 LangChain 语言模型(TransformersLLM 是在 BigDL-LLM 中定义的语言链 LLM 集成)。

可以使用这个 API 来加载 Hugging Face Transformers 的任何模型

llm = TransformersLLM . from_model_id(model_id=llm_model_path,model_kwargs={"temperature": 0, "max_length": args.max_length, "trust_remote_code": True},)

若代码显示不全,请左右滑动

然后,创建一个正常的对话链 LLMChain,并将已经创建的 llm 设置为输入参数。

# The following code is complete the same as the use-casevoiceassistant_chain = LLMChain(llm=llm, prompt=prompt,verbose=True,memory=ConversationBufferWindowMemory(k=2),)

若代码显示不全,请左右滑动

以下代码将使用一个链条来记录所有对话历史,并将其适当地格式化为大型语言模型的输入。这样,我们可以生成合适的回复。只需将识别模型生成的文本作为 “human_input” 输入即可。代码如下:

response_text = voiceassistant_chain .predict(human_input=text, stop=”nn”)

若代码显示不全,请左右滑动

最后,将语音识别和文本生成步骤放入循环中,即可在多轮对话中与该“语音助手”交谈。您可访问底部 [12] 链接,查看完整的示例代码,并使用自己的电脑进行尝试。快用 BigDL-LLM 来快速搭建自己的语音助手吧!

作者简介

黄晟盛是英特尔公司的资深架构师,黄凯是英特尔公司的AI框架工程师,戴金权是英特尔院士、大数据技术全球CTO和BigDL项目的创始人,他们都从事着与大数据和AI相关的工作

以上就是用BigDL-LLM 即刻加速百亿级参数LLM推理的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/502613.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
Laravel中居然有个joinSub的语法?
上一篇 2025年11月8日 21:04:18
java框架在物联网低功耗设备集成中的应用
下一篇 2025年11月8日 21:04:21

相关推荐

  • 人工智能如何为 C 语言代码提供安全增强功能?

    人工智能通过提供以下功能来提升 c 代码安全性:静态分析:识别潜在安全漏洞(例如缓冲区溢出);动态分析:监控代码执行并检测异常行为;模糊测试:生成随机输入以测试代码的异常行为;自动化修复:建议修复措施或自动生成补丁程序。 人工智能赋能 C 代码:提升安全性 人工智能 (AI) 在 C 代码安全方面发…

    2026年5月10日
    100
  • ChromaDB向量嵌入的有效持久化策略

    本文详细介绍了如何利用langchain中chromadb的`persist_directory`功能,高效地持久化存储向量嵌入。通过将生成的嵌入数据保存到本地磁盘,可以有效避免重复计算,显著提升工作流程效率。教程将涵盖持久化chromadb实例的创建与后续加载的完整过程。 在处理大规模文本数据并生…

    2026年5月10日
    000
  • DeAgentAI(AIA)币是什么?值得投资吗?DeAgentAI上线指南、价格预测及路线图介绍

    目录 DeAgentAI (AIA) 上市:关键细节和交易时间表关键上市信息DeAgentAI(AIA)价格预测:上市后DeAgentAI (AIA) 是什么:解释DeAgentAI (AIA) 为何脱颖而出?DeAgentAI (AIA) 生态系统:其运作方式认识 DeAgentAI (AIA) …

    2026年5月10日
    000
  • C++ 框架如何支持人工智能模型的持续改进和维护?

    C++ 框架助力持续改进和维护 AI 模型 简介 训练和部署 AI 模型是一项持续的过程,需要不断改进和维护。C++ 框架提供了强大的工具和特性,以支持这些活动。 持续改进 立即学习“C++免费学习笔记(深入)”; 数据收集和特 征工 程 C++ 框架如 TensorFlow 和 PyTorch 提…

    2026年5月10日
    000
  • C++框架在人工智能领域的应用

    c++++ 框架在 ai 领域应用广泛,提供速度、效率和灵活性的优势。流行的 ai c++ 框架包括 tensorflow、pytorch、caffe2、mxnet 和 theano。这些框架用于开发图像分类、自然语言处理和机器学习等应用程序。 C++ 框架在人工智能领域的应用 C++ 以其速度、效…

    2026年5月10日
    000
  • 人工智能助力 C 代码集成和 DevOps实践

    通过将人工智能 (ai) 集成到 c 代码集成和 devops 实践中,可以提高效率和质量:代码审查: ai 工具可以分析代码并识别潜在问题,评估质量指标,例如可读性、可维护性和安全风险。(实战案例:codescene)测试自动化: ai 算法可以生成测试用例并执行测试,提高测试覆盖率。(实战案例:…

    2026年5月10日
    000
  • 如何高效地在Go中使用http.ResponseWriter构建JSONP响应

    本教程探讨在go语言中高效构建jsonp响应的方法,重点解决如何使用`http.responsewriter`处理回调函数封装。文章通过对比传统字符串拼接与字节切片转换的不足,详细介绍了利用`fmt.fprintf`直接写入和`fmt.sprintf`预格式化两种优化方案,旨在提升代码的简洁性和执行…

    2026年5月10日
    000
  • Holoworld AI(HOLO)是什么币?怎么买?未来能涨到多少

    Holoworld AI(HOLO)是AI驱动虚拟社交平台的原生代币,用于生态内功能与激励。用户可通过中心化平台(如用USDT交易)或去中心化平台获取HOLO,需注意合约地址准确性与网络手续费。其市场表现受项目团队、技术进展、代币经济模型、市场环境及社区活跃度等多重因素影响,且所有数字资产交易均伴随…

    2026年5月10日
    200
  • 如何运用人工智能提升 C 代码可维护性?

    如何运用人工智能提升 C 代码可维护性 在 C 编程中,可维护性是至关重要的,它可以确保代码易于理解、修改和调试。人工智能 (AI) 可以成为提升 C 代码可维护性的强大工具。 1. 代码生成和重构 AI 可以用于生成新的代码或重构现有代码,使其更易于维护。例如,代码生成器可以根据指定规范自动生成代…

    2026年5月10日
    000
  • Solana基金会主席 Lily 上海演讲:万物皆可代币化

    在 2025 年 10 月 23 日至 27 日举行的第 11 届全球区块链峰会期间,Solana 基金会主席 Lily Liu 在上海区块链国际周上发表了主题演讲,阐述了“万物皆可代币化”的愿景,并分享了 Solana 在全球金融基础设施建设方面的战略布局。 Solana 的愿景:万物皆可代币化 …

    2026年5月10日
    000
  • html搜索框如何跳转_实现HTML搜索框跳转搜索结果【结果】

    HTML搜索框跳转失败多因表单action或参数错误,可通过五种方法解决:一、百度用form提交至https://www.baidu.com/s?q=关键词;二、Google类似,action为https://www.google.com/search;三、JavaScript拼接必应URL并loc…

    2025年12月23日
    400
  • 从OpenAI API JSON响应中高效提取生成文本内容

    本教程详细指导开发者如何从openai api返回的json格式响应中准确提取生成的文本。通过利用`json.parse()`方法解析响应字符串,并访问`choices[0].text`属性,可以安全、高效地获取核心文本内容,从而避免直接字符串操作的潜在问题,确保api数据处理的健壮性。 OpenA…

    2025年12月23日
    500
  • HTML语义化未来趋势有哪些_HTML语义化在Web发展中的趋势与展望

    HTML语义化正朝着智能、高效、包容发展,深度融合结构化数据与ARIA属性,提升机器理解;2. 组件化趋势推动可复用语义结构普及,Web Components实现自定义语义标签;3. 语义化助力性能优化与可访问性,支持懒加载与内容优先级划分;4. AI工具将自动生成语义化代码并辅助检测,降低实践门槛…

    2025年12月23日
    300
  • 动态生成HTML表格:优化JavaScript数据展示与导出

    本文旨在解决JavaScript中动态生成HTML表格时遇到的代码冗余和样式控制难题。通过引入数据驱动的编程思想,我们将数据与视图逻辑分离,首先将表格内容组织为JavaScript对象数组,然后利用一个通用的函数将这些结构化数据渲染为可读性强、易于维护且支持灵活样式的HTML表格字符串。这种方法不仅…

    2025年12月23日
    000
  • HTML5性能优化怎么实现_HTML5新特性在性能优化方面的应用方法

    HTML5通过语义化标签、Web Storage、Canvas/SVG、Service Worker和原生媒体支持等技术提升性能:1. 语义化标签优化渲染效率;2. Web Storage减少网络请求;3. Canvas/SVG降低资源加载量;4. Service Worker实现离线缓存;5. 原…

    2025年12月23日
    100
  • 利用UTM参数与GTM优化链接点击来源追踪

    本文详细阐述了如何通过UTM参数精准追踪营销链接的点击来源,并深入探讨了Google Tag Manager (GTM) 在此过程中的高级应用。文章首先介绍了UTM参数的构成、生成方法及其在Google Analytics中的自动解析机制,强调其在识别流量来源方面的核心作用。随后,探讨了GTM如何通…

    2025年12月23日
    000
  • HTML数据如何实现数据智能 HTML数据智能分析的技术架构

    实现HTML数据智能分析需构建包含采集、解析、存储、分析与可视化的闭环系统,首先通过爬虫技术获取网页数据并进行清洗标准化,接着利用DOM树分析与NLP技术提取结构化信息,随后将数据存入合适数据库或数据仓库并建立元数据管理机制,进而应用AI模型开展分类、情感分析、趋势预测与知识图谱构建等智能分析,最终…

    2025年12月23日
    100
  • 如何通过HTML在线展示数据_HTML在线数据展示实现与可视化方案

    网页展示数据需结合HTML、CSS与JavaScript,首选table展示结构化数据,配合Chart.js等库实现可视化图表,通过fetch加载远程JSON动态渲染内容,并利用响应式设计与交互优化提升用户体验。 在网页中展示数据,核心是将结构化信息清晰、直观地呈现给用户。HTML本身是内容载体,结…

    2025年12月23日
    000
  • html在线几何图形绘制 html在线SVG应用实战教程

    使用HTML与SVG结合可高效绘制几何图形。SVG基于XML,支持圆形、矩形、多边形、路径等,在任意分辨率下清晰。1. 基础元素包括rect、circle、ellipse、line、polygon、polyline和path。2. 实战示例:用polygon绘制三角形,path绘制五角星和弧线仪表盘…

    2025年12月23日
    000
  • HTML5 section怎么用_HTML5内容分区标签应用场景说明

    在HTML5中,标签用于定义文档中具有明确主题的独立内容区块,需包含标题以体现其结构性与语义性,常用于文章章节、产品模块等场景,区别于无语义的和可独立分发的。 在HTML5中,section 标签用于定义文档中的一个独立内容区块。它不是简单的容器,而是有语义的结构化标签,表示文档中一个主题性的分区,…

    2025年12月23日
    000

发表回复

登录后才能评论
关注微信