ipex-llm简介
ipex-llm是由Intel开发的PyTorch库,旨在加速Intel CPU和GPU(如本地PC的iGPU、Arc/Flex/Max等独立显卡)上的大语言模型(LLM)推理和微调。它具有以下特点:
- 基于llama.cpp、transformers、bitsandbytes、vLLM等优秀项目构建
- 与llama.cpp、Ollama、Text-Generation-WebUI、HuggingFace transformers、LangChain、LlamaIndex等工具无缝集成
- 已优化/验证超过50种主流LLM模型,包括LLaMA2、Mistral、Mixtral、Gemma、LLaVA、Whisper、ChatGLM、Baichuan、Qwen等
快速入门
Docker镜像
ipex-llm提供了多个Docker镜像,方便用户快速开始:
- GPU C++推理:在Intel GPU上运行llama.cpp、ollama等
- GPU Python推理:在Intel GPU上运行HuggingFace transformers、LangChain等
- GPU上的vLLM:在Intel GPU上运行vLLM服务
- CPU上的vLLM:在Intel CPU上运行vLLM服务
使用指南
- llama.cpp:在Intel GPU上运行llama.cpp
- Ollama:在Intel GPU上运行Ollama
- vLLM:在Intel GPU和CPU上运行vLLM
- FastChat:在Intel GPU和CPU上运行FastChat服务
- Text-Generation-WebUI:在oobabooga WebUI中运行ipex-llm
应用案例
- GraphRAG:使用ipex-llm运行Microsoft的GraphRAG
- RAGFlow:使用ipex-llm运行RAGFlow
- LangChain-Chatchat:使用ipex-llm运行基于RAG的知识库问答系统
- Continue:使用ipex-llm运行VSCode中的编码助手
代码示例
低比特推理
- INT4推理:在Intel GPU和CPU上进行INT4 LLM推理
- FP8/FP6/FP4推理:在Intel GPU上进行FP8、FP6和FP4 LLM推理
- INT2推理:在Intel GPU上基于llama.cpp IQ2机制进行INT2 LLM推理
分布式推理
- 流水线并行:在Intel GPU上进行流水线并行推理
- DeepSpeed AutoTP:在Intel GPU上使用DeepSpeed AutoTP进行推理
模型微调
- LoRA/QLoRA/DPO等:在Intel GPU上进行各种LLM微调
- CPU上的QLoRA:在Intel CPU上进行QLoRA微调
更多资源
ipex-llm为在Intel硬件上加速LLM提供了强大而灵活的解决方案。无论您是想在本地PC上运行大型语言模型,还是在数据中心进行大规模LLM部署,ipex-llm都能助您一臂之力。欢迎访问项目GitHub了解更多信息!