1 puntos por GN⁺ 2024-04-05 | 1 comentarios | Compartir por WhatsApp

💫 IPEX-LLM

  • IPEX-LLM es una biblioteca de PyTorch para ejecutar LLM con latencia muy baja en CPU y GPU de Intel.
  • Está construida sobre excelentes trabajos como la extensión de PyTorch para Intel (IPEX), llama.cpp, bitsandbytes, vLLM, qlora, AutoGPTQ y AutoAWQ.
  • Ofrece una integración fluida con llama.cpp, Text-Generation-WebUI, HuggingFace transformers y más.
  • Hay más de 50 modelos optimizados/validados en ipex-llm, y la lista completa puede verse aquí.

Actualizaciones más recientes 🔥

  • bigdl-llm cambió a ipex-llm, y el proyecto original BigDL puede encontrarse aquí.
  • ipex-llm ahora puede cargar modelos directamente desde ModelScope (魔搭).
  • ipex-llm agregó soporte para INT2, lo que permite ejecutar LLM grandes (por ejemplo, Mixtral-8x7B) en GPU de Intel con 16 GB de VRAM.
  • Los usuarios ahora pueden usar ipex-llm a través de la GUI de Text-Generation-WebUI.
  • ipex-llm ahora admite Self-Speculative Decoding, acelerando la latencia de inferencia FP16 y BF16 en aproximadamente 30% en GPU y CPU de Intel, respectivamente.
  • ipex-llm ahora admite una lista integral de fine-tuning de LLM en GPU de Intel.

Demostración de ipex-llm

  • A continuación puede verse el rendimiento optimizado de los modelos chatglm2-6b y llama-2-13b-chat en CPU Intel Core de 12.ª generación y GPU Intel Arc.

Inicio rápido de ipex-llm

Instalación de ipex-llm

  • Windows GPU: instalar ipex-llm en Windows con GPU Intel
  • Linux GPU: instalar ipex-llm en Linux con GPU Intel
  • Docker: usar Docker de ipex-llm en CPU y GPU de Intel
  • Para más detalles, consultar la guía de instalación

Ejecución de ipex-llm

  • llama.cpp: ejecutar ipex-llm para llama.cpp en GPU Intel
  • vLLM: ejecutar ipex-llm en vLLM sobre GPU y CPU de Intel
  • FastChat: ejecutar ipex-llm en el servicio de FastChat sobre GPU y CPU de Intel
  • LangChain-Chatchat RAG: ejecutar ipex-llm en LangChain-Chatchat
  • Text-Generation-WebUI: ejecutar ipex-llm en la WebUI de oobabooga
  • Benchmarking: ejecutar benchmarking de ipex-llm en CPU y GPU de Intel

Ejemplos de código

  • Inferencia de bajo bit
    • Inferencia INT4: inferencia de LLM en INT4 sobre GPU y CPU de Intel
    • Inferencia FP8/FP4: inferencia de LLM en FP8 y FP4 sobre GPU Intel
    • Inferencia INT8: inferencia de LLM en INT8 sobre GPU y CPU de Intel
    • Inferencia INT2: inferencia de LLM en INT2 sobre GPU Intel
  • Inferencia FP16/BF16
    • Inferencia de LLM en FP16: con optimización de self-speculative decoding cuando está disponible en GPU Intel
    • Inferencia de LLM en BF16: con optimización de self-speculative decoding cuando está disponible en CPU Intel
  • Guardar y cargar
    • Modelo de bajo bit: guardar y cargar modelos de bajo bit de ipex-llm
    • GGUF: cargar modelos GGUF directamente en ipex-llm
    • AWQ: cargar modelos AWQ directamente en ipex-llm
    • GPTQ: cargar modelos GPTQ directamente en ipex-llm
  • Fine-tuning
    • Fine-tuning de LLM en GPU Intel, incluyendo LoRA, QLoRA, DPO, QA-LoRA y ReLoRA
    • Fine-tuning de QLoRA en CPU Intel
  • Integración con bibliotecas de la comunidad
    • HuggingFace transformers
    • Modelos estándar de PyTorch
    • DeepSpeed-AutoTP
    • HuggingFace PEFT
    • HuggingFace TRL
    • LangChain
    • LlamaIndex
    • AutoGen
    • ModeScope
  • Tutoriales
    • Para más detalles, consultar el sitio web de documentación de ipex-llm

Modelos validados

  • Los más de 50 modelos optimizados/validados en ipex-llm incluyen LLaMA/LLaMA2, Mistral, Mixtral, Gemma, LLaVA, Whisper y más, y la lista puede verse abajo.

Opinión de GN⁺

  • IPEX-LLM es una herramienta potente para ejecutar modelos de lenguaje a gran escala optimizados sobre hardware de Intel, y puede ser de gran ayuda en investigación y desarrollo de inteligencia artificial.
  • Esta biblioteca está integrada con diversos modelos, lo que ofrece la ventaja de que los usuarios puedan acceder y aprovecharla fácilmente.
  • Sin embargo, al estar especializada en hardware de Intel, puede no garantizar el mejor rendimiento en hardware de otros fabricantes.
  • Al adoptar esta tecnología, es necesario contar con una comprensión suficiente de la compatibilidad de hardware y del ajuste de rendimiento.
  • Permite acelerar la inferencia y el fine-tuning de modelos de lenguaje a gran escala, lo que puede contribuir a ahorrar tiempo y recursos.

1 comentarios

 
GN⁺ 2024-04-05
Comentarios de Hacker News
  • Expectativa por una revolución en la VRAM de las GPU

    Una empresa tiene la oportunidad de dejar atrás el “4 núcleos para siempre” y, con el lanzamiento de su próxima GPU de consumo, romper la limitación de larga data de AMD y Nvidia de “8-16 GB de VRAM para siempre”. Sería poético ofrecer 32-48 GB de VRAM a un precio razonable.

  • Evaluación positiva del soporte de software de Intel

    Intel va en la dirección correcta en cuanto al soporte de software. Quisiera ver datos de benchmarks, y la velocidad en el ejemplo presentado se ve bastante bien.

  • Solicitud de recomendación sobre GPU de Intel

    Necesito recomendaciones de GPU de Intel con mucha VRAM. Pregunto si hay algún producto compatible con esto.

  • Interés en benchmarks de rendimiento

    Me interesa una comparación de rendimiento con llamafile u otros benchmarks. Se proporciona un enlace a ese benchmark.

  • Sugerencia sobre la facilidad de uso de GPU en la nube

    Estaría bien que hubiera un script para ejecutar el ejemplo en una GPU compatible de un proveedor de nube. Pregunto si a alguien le interesa eso y estoy considerando configurarlo yo mismo.

  • Ausencia de GPU de Intel en proveedores de nube

    Los principales proveedores de nube no ofrecen GPU de Intel.

  • Expresión de expectativa por reseñas del producto

    Espero una reseña y me interesa la evaluación de productos futuros.