Intel® LLM Library for PyTorch*

May 12, 2025 · View on GitHub

< English | 中文 >

ipex-llm 是一个将大语言模型高效地运行于 Intel GPU (如搭载集成显卡的个人电脑,Arc 独立显卡、Flex 及 Max 数据中心 GPU 等)NPU 和 CPU 上的大模型 XPU 加速库1

Note

最新更新 🔥

  • [2025/05] 通过 ipex-llm 中的 FlashMoE,现可使用 1 到 2 张 Intel Arc GPU (如 A770 或 B580) 运行 DeepSeek V3/R1 671BQwen3MoE 235B 模型。
  • [2025/04] 发布 ipex-llm 2.2.0, 其中包括 Ollama Portable Zip 和 llama.cpp Portable Zip
  • [2025/04] 新增在 Intel GPU 上对于 PyTorch 2.6 的支持。
  • [2025/03] 通过最新 llama.cpp Portable Zip 可运行 Gemma3 模型。
  • [2025/03] 使用最新 llama.cpp Portable Zip, 可以在 Xeon 上通过1到2张 Arc A770 GPU 运行 DeepSeek-R1-671B-Q4_K_M
  • [2025/02] 新增 llama.cpp Portable Zip 在 Intel GPU (包括 WindowsLinux) 和 NPU (仅 Windows) 上直接免安装运行 llama.cpp
  • [2025/02] 新增 Ollama Portable Zip 在 Intel GPU 上直接免安装运行 Ollama (包括 WindowsLinux)。
  • [2025/02] 新增在 Intel Arc GPUs 上运行 vLLM 0.6.6 的支持。
  • [2025/01] 新增在 Intel Arc B580 GPU 上运行 ipex-llm 的指南。
  • [2025/01] 新增在 Intel GPU 上运行 Ollama 0.5.4 的支持。
  • [2024/12] 增加了对 Intel Core Ultra NPU(包括 100H,200V,200K 和 200H 系列)的 PythonC++ 支持。
更多更新
  • [2024/11] 新增在 Intel Arc GPUs 上运行 vLLM 0.6.2 的支持。
  • [2024/07] 新增 Microsoft GraphRAG 的支持(使用运行在本地 Intel GPU 上的 LLM),详情参考快速入门指南
  • [2024/07] 全面增强了对多模态大模型的支持,包括 StableDiffusion, Phi-3-Vision, Qwen-VL,更多详情请点击这里
  • [2024/07] 新增 Intel GPU 上 FP6 的支持,详情参考更多数据类型样例
  • [2024/06] 新增对 Intel Core Ultra 处理器中 NPU 的实验性支持,详情参考相关示例
  • [2024/06] 增加了对流水线并行推理的全面支持,使得用两块或更多 Intel GPU(如 Arc)上运行 LLM 变得更容易。
  • [2024/06] 新增在 Intel GPU 上运行 RAGFlow 的支持,详情参考快速入门指南
  • [2024/05] 新增 Axolotl 的支持,可以在 Intel GPU 上进行LLM微调,详情参考快速入门指南
  • [2024/05] 你可以使用 Docker images 很容易地运行 ipex-llm 推理、服务和微调。
  • [2024/05] 你能够在 Windows 上仅使用 "one command" 来安装 ipex-llm
  • [2024/04] 你现在可以在 Intel GPU 上使用 ipex-llm 运行 Open WebUI ,详情参考快速入门指南
  • [2024/04] 你现在可以在 Intel GPU 上使用 ipex-llm 以及 llama.cppollama 运行 Llama 3 ,详情参考快速入门指南
  • [2024/04] ipex-llm 现在在Intel GPUCPU 上都支持 Llama 3 了。
  • [2024/04] ipex-llm 现在提供 C++ 推理, 在 Intel GPU 上它可以用作运行 llama.cppollama 的加速后端。
  • [2024/03] bigdl-llm 现已更名为 ipex-llm (请参阅此处的迁移指南),你可以在这里找到原始BigDL项目。
  • [2024/02] ipex-llm 现在支持直接从 ModelScope (魔搭) loading 模型。
  • [2024/02] ipex-llm 增加 INT2 的支持 (基于 llama.cpp IQ2 机制), 这使得在具有 16GB VRAM 的 Intel GPU 上运行大型 LLM(例如 Mixtral-8x7B)成为可能。
  • [2024/02] 用户现在可以通过 Text-Generation-WebUI GUI 使用 ipex-llm
  • [2024/02] ipex-llm 现在支持 Self-Speculative Decoding,这使得在 Intel GPUCPU 上为 FP16 和 BF16 推理带来 ~30% 加速
  • [2024/02] ipex-llm 现在支持在 Intel GPU 上进行各种 LLM 微调(包括 LoRA, QLoRA, DPO, QA-LoRAReLoRA)。
  • [2024/01] 使用 ipex-llm QLoRA,我们成功地在 8 个 Intel Max 1550 GPU 上使用 Standford-Alpaca 数据集分别对 LLaMA2-7B(21 分钟内)和 LLaMA2-70B(3.14 小时内)进行了微调,具体详情参阅博客
  • [2023/12] ipex-llm 现在支持 ReLoRA (具体内容请参阅 "ReLoRA: High-Rank Training Through Low-Rank Updates").
  • [2023/12] ipex-llm 现在在 Intel GPUCPU 上均支持 Mixtral-8x7B
  • [2023/12] ipex-llm 现在支持 QA-LoRA (具体内容请参阅 "QA-LoRA: Quantization-Aware Low-Rank Adaptation of Large Language Models").
  • [2023/12] ipex-llm 现在在 Intel GPU 上支持 FP8 and FP4 inference
  • [2023/11] 初步支持直接将 GGUFAWQGPTQ 模型加载到 ipex-llm 中。
  • [2023/11] ipex-llm 现在在 Intel GPUCPU 上都支持 vLLM continuous batching
  • [2023/10] ipex-llm 现在在 Intel GPUCPU 上均支持 QLoRA finetuning
  • [2023/10] ipex-llm 现在在 Intel GPU 和 CPU 上都支持 FastChat serving
  • [2023/09] ipex-llm 现在支持 Intel GPU (包括 iGPU, Arc, Flex 和 MAX)。
  • [2023/09] ipex-llm 教程 已发布。

ipex-llm Demo

以下分别是使用 ipex-llm 在英特尔酷睿Ultra iGPU、酷睿Ultra NPU、单卡 Arc GPU 或双卡 Arc GPU 上运行本地 LLM 的 DEMO 演示,

Intel Core Ultra iGPU Intel Core Ultra NPU 2-Card Intel Arc dGPUs Intel Xeon + Arc dGPU
Ollama
(Mistral-7B, Q4_K)
HuggingFace
(Llama3.2-3B, SYM_INT4)
llama.cpp
(DeepSeek-R1-Distill-Qwen-32B, Q4_K)
FlashMoE
(Qwen3MoE-235B, Q4_K)

ipex-llm 性能

下图展示了在 Intel Core Ultra 和 Intel Arc GPU 上的 Token 生成速度1(更多详情可点击 [2][3][4])。

如果需要自己进行 ipex-llm 性能基准测试,可参考基准测试指南

模型准确率

部分模型的 Perplexity 结果如下所示(使用 Wikitext 数据集和此处的脚本进行测试)。

Perplexitysym_int4q4_kfp6fp8_e5m2fp8_e4m3fp16
Llama-2-7B-chat-hf6.3646.2186.0926.1806.0986.096
Mistral-7B-Instruct-v0.25.3655.3205.2705.2735.2465.244
Baichuan2-7B-chat6.7346.7276.5276.5396.4886.508
Qwen1.5-7B-chat8.8658.8168.5578.8468.5308.607
Llama-3.1-8B-Instruct6.7056.5666.3386.3836.3256.267
gemma-2-9b-it7.5417.4127.2697.3807.2687.270
Baichuan2-13B-Chat6.3136.1606.0706.1456.0866.031
Llama-2-13b-chat-hf5.4495.4225.3415.3845.3325.329
Qwen1.5-14B-Chat7.5297.5207.3677.5047.2977.334

ipex-llm 快速入门

使用

  • Ollama: 在 Intel GPU 上直接免安装运行 Ollama
  • llama.cpp: 在 Intel GPU 上直接免安装运行llama.cpp
  • Arc B580: 在 Intel Arc B580 GPU 上运行 ipex-llm(包括 Ollama, llama.cpp, PyTorch, HuggingFace 等)
  • NPU: 在 Intel NPU 上运行 ipex-llm(支持 Python/C++ 及 llama.cpp API)
  • PyTorch/HuggingFace: 使用 WindowsLinux 在 Intel GPU 上运行 PyTorchHuggingFaceLangChainLlamaIndex 等 (使用 ipex-llm 的 Python 接口)
  • vLLM: 在 Intel GPUCPU 上使用 ipex-llm 运行 vLLM
  • FastChat: 在 Intel GPU 和 CPU 上使用 ipex-llm 运行 FastChat 服务
  • Serving on multiple Intel GPUs: 利用 DeepSpeed AutoTP 和 FastAPI 在 多个 Intel GPU 上运行 ipex-llm 推理服务
  • Text-Generation-WebUI: 使用 ipex-llm 运行 oobabooga WebUI
  • Axolotl: 使用 Axolotlipex-llm 进行 LLM 微调
  • Benchmarking: 在 Intel GPU 和 CPU 上运行性能基准测试(延迟和吞吐量)

Docker

  • GPU Inference in C++: 在 Intel GPU 上使用 ipex-llm 运行 llama.cpp, ollama
  • GPU Inference in Python : 在 Intel GPU 上使用 ipex-llm 运行 HuggingFace transformers, LangChain, LlamaIndex, ModelScope,等
  • vLLM on GPU: 在 Intel GPU 上使用 ipex-llm 运行 vLLM 推理服务
  • vLLM on CPU: 在 Intel CPU 上使用 ipex-llm 运行 vLLM 推理服务
  • FastChat on GPU: 在 Intel GPU 上使用 ipex-llm 运行 FastChat 推理服务
  • VSCode on GPU: 在 Intel GPU 上使用 VSCode 开发并运行基于 Python 的 ipex-llm 应用

应用

  • GraphRAG: 基于 ipex-llm 使用本地 LLM 运行 Microsoft 的 GraphRAG
  • RAGFlow: 基于 ipex-llm 运行 RAGFlow (一个开源的 RAG 引擎)
  • LangChain-Chatchat: 基于 ipex-llm 运行 LangChain-Chatchat (使用 RAG pipline 的知识问答库)
  • Coding copilot: 基于 ipex-llm 运行 Continue (VSCode 里的编码智能助手)
  • Open WebUI: 基于 ipex-llm 运行 Open WebUI
  • PrivateGPT: 基于 ipex-llm 运行 PrivateGPT 与文档进行交互
  • Dify platform: 在Dify(一款开源的大语言模型应用开发平台) 里接入 ipex-llm 加速本地 LLM

安装

代码示例

API 文档

FAQ

模型验证

50+ 模型已经在 ipex-llm 上得到优化和验证,包括 LLaMA/LLaMA2, Mistral, Mixtral, Gemma, LLaVA, Whisper, ChatGLM2/ChatGLM3, Baichuan/Baichuan2, Qwen/Qwen-1.5, InternLM, 更多模型请参看下表,

模型CPU 示例GPU 示例NPU 示例
LLaMAlink1, link2link
LLaMA 2link1, link2linkPython link, C++ link
LLaMA 3linklinkPython link, C++ link
LLaMA 3.1linklink
LLaMA 3.2linkPython link, C++ link
LLaMA 3.2-Visionlink
ChatGLMlink
ChatGLM2linklink
ChatGLM3linklink
GLM-4linklink
GLM-4Vlinklink
GLM-EdgelinkPython link
GLM-Edge-Vlink
Mistrallinklink
Mixtrallinklink
Falconlinklink
MPTlinklink
Dolly-v1linklink
Dolly-v2linklink
Replit Codelinklink
RedPajamalink1, link2
Phoenixlink1, link2
StarCoderlink1, link2link
Baichuanlinklink
Baichuan2linklinkPython link
InternLMlinklink
InternVL2link
Qwenlinklink
Qwen1.5linklink
Qwen2linklinkPython link, C++ link
Qwen2.5linkPython link, C++ link
Qwen-VLlinklink
Qwen2-VLlink
Qwen2-Audiolink
Aquilalinklink
Aquila2linklink
MOSSlink
Whisperlinklink
Phi-1_5linklink
Flan-t5linklink
LLaVAlinklink
CodeLlamalinklink
Skyworklink
InternLM-XComposerlink
WizardCoder-Pythonlink
CodeShelllink
Fuyulink
Distil-Whisperlinklink
Yilinklink
BlueLMlinklink
Mambalinklink
SOLARlinklink
Phixtrallinklink
InternLM2linklink
RWKV4link
RWKV5link
Barklinklink
SpeechT5link
DeepSeek-MoElink
Ziya-Coding-34B-v1.0link
Phi-2linklink
Phi-3linklink
Phi-3-visionlinklink
Yuan2linklink
Gemmalinklink
Gemma2link
DeciLM-7Blinklink
Deepseeklinklink
StableLMlinklink
CodeGemmalinklink
Command-R/coherelinklink
CodeGeeX2linklink
MiniCPMlinklinkPython link, C++ link
MiniCPM3link
MiniCPM-Vlink
MiniCPM-V-2linklink
MiniCPM-Llama3-V-2_5linkPython link
MiniCPM-V-2_6linklinkPython link
MiniCPM-o-2_6link
Janus-Prolink
Moonlightlink
StableDiffusionlink
Bce-Embedding-Base-V1Python link
Speech_Paraformer-LargePython link

官方支持

Footnotes

  1. Performance varies by use, configuration and other factors. ipex-llm may not optimize to the same degree for non-Intel products. Learn more at www.Intel.com/PerformanceIndex 2