💫 IPEX-LLM
IPEX-LLM é uma biblioteca PyTorch para executar LLMs em CPUs e GPUs da Intel com latência muito baixa.
- É construída sobre excelentes trabalhos como a extensão Intel para PyTorch (
IPEX), llama.cpp, bitsandbytes, vLLM, qlora, AutoGPTQ e AutoAWQ.
- Oferece integração perfeita com
llama.cpp, Text-Generation-WebUI, HuggingFace transformers e outros.
- Há mais de 50 modelos otimizados/validados no
ipex-llm, e a lista completa pode ser vista aqui.
Atualizações mais recentes 🔥
bigdl-llm foi renomeado para ipex-llm, e o projeto original BigDL pode ser encontrado aqui.
- O
ipex-llm agora pode carregar modelos diretamente do ModelScope(魔搭).
- O
ipex-llm adicionou suporte a INT2, permitindo executar LLMs grandes (por exemplo, Mixtral-8x7B) com 16GB de VRAM em GPUs da Intel.
- Os usuários agora podem usar o
ipex-llm pela interface GUI do Text-Generation-WebUI.
- O
ipex-llm agora oferece suporte a Self-Speculative Decoding, acelerando a latência de inferência em FP16 e BF16 em cerca de 30% em GPUs e CPUs da Intel, respectivamente.
- O
ipex-llm agora oferece suporte a uma lista abrangente de fine-tuning de LLMs em GPUs da Intel.
Demo do ipex-llm
- É possível conferir abaixo o desempenho otimizado dos modelos
chatglm2-6b e llama-2-13b-chat em CPUs Intel Core de 12ª geração e GPUs Intel Arc.
Início rápido com ipex-llm
Instalação do ipex-llm
- Windows GPU: instalar o
ipex-llm no Windows com GPU Intel
- Linux GPU: instalar o
ipex-llm no Linux com GPU Intel
- Docker: usar o Docker do
ipex-llm em CPUs e GPUs da Intel
- Para mais detalhes, consulte o guia de instalação
Executando o ipex-llm
- llama.cpp: executar o
ipex-llm para llama.cpp em GPUs da Intel
- vLLM: executar o
ipex-llm no vLLM em GPUs e CPUs da Intel
- FastChat: executar o
ipex-llm no serving do FastChat em GPUs e CPUs da Intel
- LangChain-Chatchat RAG: executar o
ipex-llm no LangChain-Chatchat
- Text-Generation-WebUI: executar o
ipex-llm no WebUI do oobabooga
- Benchmarking: executar benchmarks do
ipex-llm em CPUs e GPUs da Intel
Exemplos de código
- Inferência em baixa precisão
- Inferência INT4: inferência de LLM em INT4 em GPUs e CPUs da Intel
- Inferência FP8/FP4: inferência de LLM em FP8 e FP4 em GPUs da Intel
- Inferência INT8: inferência de LLM em INT8 em GPUs e CPUs da Intel
- Inferência INT2: inferência de LLM em INT2 em GPUs da Intel
- Inferência FP16/BF16
- Inferência de LLM em FP16: com otimização opcional de self-speculative decoding em GPUs da Intel
- Inferência de LLM em BF16: com otimização opcional de self-speculative decoding em CPUs da Intel
- Salvar e carregar
- Modelos de baixa precisão: salvar e carregar modelos de baixa precisão do
ipex-llm
- GGUF: carregar modelos GGUF diretamente no
ipex-llm
- AWQ: carregar modelos AWQ diretamente no
ipex-llm
- GPTQ: carregar modelos GPTQ diretamente no
ipex-llm
- Fine-tuning
- Fine-tuning de LLMs em GPUs da Intel, incluindo LoRA, QLoRA, DPO, QA-LoRA e ReLoRA
- Fine-tuning QLoRA em CPUs da Intel
- Integração com bibliotecas da comunidade
- HuggingFace transformers
- modelos PyTorch padrão
- DeepSpeed-AutoTP
- HuggingFace PEFT
- HuggingFace TRL
- LangChain
- LlamaIndex
- AutoGen
- ModeScope
- Tutoriais
- Para mais detalhes, consulte o site de documentação do
ipex-llm
Modelos validados
- Os mais de 50 modelos otimizados/validados no
ipex-llm incluem LLaMA/LLaMA2, Mistral, Mixtral, Gemma, LLaVA, Whisper e outros, e a lista pode ser vista abaixo.
Opinião do GN⁺
- O
IPEX-LLM é uma ferramenta poderosa para executar modelos de linguagem de grande porte otimizados em hardware da Intel, podendo ser de grande ajuda para pesquisa e desenvolvimento em inteligência artificial.
- Como essa biblioteca se integra a diversos modelos, ela tem a vantagem de ser facilmente acessível e utilizável pelos usuários.
- No entanto, por ser especializada em hardware da Intel, pode não garantir desempenho ideal em hardware de outros fabricantes.
- Ao adotar essa tecnologia, é necessário ter entendimento suficiente sobre compatibilidade de hardware e ajuste de desempenho.
- Como permite acelerar inferência e fine-tuning de modelos de linguagem de grande porte, pode ajudar a economizar tempo e recursos.
1 comentários
Comentários do Hacker News
Expectativa por uma revolução na VRAM das GPUs
Avaliação positiva do suporte de software da Intel
Pedido de recomendação de GPU Intel
Interesse em benchmarks de desempenho
Sugestão sobre a praticidade de usar GPUs na nuvem
Ausência de GPUs Intel nos provedores de nuvem
Expectativa por análises do produto