
Maximizando el rendimiento de los LLM con CPUs de Intel
Con procesadores de IA, como el de quinta generación Intel Xeon Emerald Rapids y las bibliotecas de optimización de Intel, Azure hace que los pipelines RAG multimodales sean más rentables.
Resumen
Azure ha anunciado en preview sus virtual machines de las familias D y E, impulsadas por los nuevos procesadores Intel® Xeon® de 5ª generación con Intel® AMX (Advanced Matrix Extensions) integrado. Este acelerador avanzado mejora el rendimiento de la inferencia de Deep Learning directamente en la CPU. Las instancias de Azure que se ejecutan en la 5ª generación de procesadores Intel® Xeon® admiten el uso del acelerador AMX integrado. Estas nuevas máquinas virtuales ofrecen una excelente relación precio-rendimiento para clientes que desarrollan soluciones RAG Multimodal que integran Embeddings, Modelos de Lenguaje Profundo y Modelos de Visión-Lenguaje.
Este artículo explora cómo configurar y optimizar nuestros pipelines RAG para varios modelos que nos permitirán ejecutar modelos de código abierto (sin necesidad de APIs externas) manteniendo un buen rendimiento. Por último, comparamos el rendimiento de máquinas con GPU y distintos modelos de CPU.
Introducción
Retrieval-Augmented Generation (RAG) combina la recuperación de información y la generación de textos para ofrecer respuestas que se adapten mejor al contexto. Mejora los modelos generativos tradicionales incorporando conocimientos externos procedentes de una base de datos o un corpus, lo que garantiza resultados más precisos y fundamentados.
Los componentes clave de un proceso RAG son:
- Embedding Model: Convierte texto o datos en representaciones vectoriales para una recuperación eficiente. Aquí utilizamos bge-large v1.5 para embeddings de alta precisión.
- Generative Model (LLM): Este modelo produce respuestas en lenguaje natural basadas en la información recuperada. En este caso, utilizamos Llama 3.2 por su gran capacidad de generación de texto.
- Vision-Language Model (VLM): Procesa datos visuales y los integra con entradas textuales. Utilizamos Phi-3.5 Vision para analizar imágenes y generar descripciones detalladas.

Figura 1. Ejemplo de diagrama de los componentes del pipeline de RAG multimodal.
En esta solución RAG multimodal, Phi-3.5 Vision enriquece el sistema al permitir descripciones detalladas de las imágenes, que se integran con los datos de texto recuperados. Esta configuración mejora la capacidad del sistema para gestionar consultas multimodales complejas, lo que lo hace ideal para aplicaciones como el análisis multimedia y ayudando a mejorar la toma de decisiones.
Bibliotecas de optimización
Intel proporciona varias bibliotecas diseñadas para maximizar el rendimiento en la ejecución de modelos, ofreciendo optimizaciones avanzadas tanto para CPU como para GPU. Entre estas herramientas se encuentra IPEX-LLM, una librería PyTorch diseñada para acelerar la inferencia e incluso el proceso de «fine-tuning» de grandes modelos de lenguaje (LLM) en hardware Intel, incluidas CPU, aceleradores de IA como Gaudi y GPU como las GPU Arc.
Construida sobre la Extensión Intel para PyTorch (IPEX), esta librería ofrece optimizaciones de última generación y soporta cálculos de baja precisión (FP8/FP4/INT4), permitiendo una integración perfecta con herramientas populares como llama.cpp, Ollama, HuggingFace Transformers, LangChain, LlamaIndex y DeepSpeed.
La configuración del entorno es sencilla si sólo utiliza un procesador Intel CPU en su pipeline. No es necesario instalar ningún software adicional (como OneAPI para GPUs Intel), basta con instalar ipex-llm desde pip.
pip install –pre –upgrade ipex-llm[all] –extra-index-url https://download.pytorch.org/whl/cpu |
Embeddings
En el Procesamiento del Lenguaje Natural (PLN), las incrustaciones o embeddings son representaciones numéricas del texto que captan el significado semántico y permiten a los modelos procesar el lenguaje con mayor eficacia. Facilitan tareas como la clasificación de textos y la recuperación de información al representar palabras u oraciones como vectores en un espacio continuo.
El modelo bge-large-en-v1.5 es un modelo avanzado de incrustación del inglés desarrollado por la Academia de Inteligencia Artificial de Pekín (BAAI). Basado en la arquitectura BERT, genera incrustaciones de frases de alta calidad que facilitan el cálculo preciso de similitudes y la recuperación eficaz de pasajes.
Intel ha optimizado el modelo bge-large-en-v1.5 con su biblioteca IPEX-LLM, mejorando el rendimiento en las CPU y GPU de Intel.
En este caso, podemos aplicar la optimización a nuestro nodelo de «sentence transformer» utilizando la API ipex-llm
Estas funciones aplican optimizaciones como la fusión KQV. En los modelos de transformers, este proceso consiste en combinar las transformaciones lineales independientes de las consultas (Q), las claves (K) y los valores (V) en una única operación lineal. Este enfoque reduce la carga computacional al realizar una multiplicación de matrices en lugar de tres, lo que mejora la eficacia sin comprometer el rendimiento del modelo.
Encontrarás más detalles en IntelCPU: Intel CPU benchmarking on LLMs
Large Language Model
Los Large Language Models (LLM, Large Language Models) son fundamentales en los sistemas de generación mejorada de consultas (RAG, Retrieval-Augmented Generation). En estos sistemas, los LLM generan textos coherentes y contextualmente relevantes integrando las consultas del usuario con la información externa recuperada. Llama 3.2-1B, desarrollado por Meta, fue lanzado oficialmente por Meta el 25 de septiembre de 2024, y es un modelo de 1.000 millones de parámetros optimizado para hardware móvil, que permite a los desarrolladores crear aplicaciones potenciadas por IA para smartphones y otros dispositivos.
Cargar modelos optimizados con IPEX-llm es fácil utilizando la API Automodel de Transformers hugging face
La extensión ipex-llm para transformadores permite cargar directamente modelos optimizados. En este caso, estamos utilizando la optimización simétrica INT4, pero puede aplicar otras optimizaciones de bits bajos (INT5, INT8, etc.) simétrica y asimétricamente.
Vision Language Model
En los sistemas multimodales de Recuperación-Generación Aumentada (RAG), los modelos de lenguaje visual desempeñan un papel crucial al integrar las entradas visuales en los procesos de recuperación y generación. Esto permite al sistema comprender y generar contenidos que combinan texto e imágenes, mejorando tareas como la subtitulación de imágenes, la respuesta a preguntas visuales y la creación de contenidos multimodales.
Phi-3.5 Vision es un modelo multimodal open-source de última generación desarrollado por Microsoft. Integra tanto datos textuales como visuales, lo que permite un razonamiento avanzado a través de estas modalidades. El modelo se basa en conjuntos de datos de alta calidad, incluidos datos sintéticos y sitios web públicos filtrados, y hace hincapié en la información densa para el razonamiento tanto en el ámbito textual como en el visual.
Una característica destacable de Phi-3.5 Vision es que admite una longitud de contexto de hasta 128.000 tokens, lo que le permite manejar una amplia información multimodal de forma eficiente.
Utilizamos los mismos parámetros opt_parameters que en Llama 3.2 para cargar nuestro modelo.
Establecer attn_implementation=«eager» configura el modelo para utilizar una implementación manual y directa de la atención, a menudo denominada modo «eager». Este modo es generalmente más compatible a través de varios entornos de hardware y software, asegurando un soporte y estabilidad más amplios. Cuando se despliegan modelos como Phi-3.5 Vision, que pueden no soportar ciertos mecanismos de atención optimizados, especificar este parámetro puede ayudar a prevenir problemas de compatibilidad.
Comparativa del rendimiento
En esta sección, comparamos el rendimiento de la inferencia de cada componente central del canal RAG multimodal -incrustación, modelo de lenguaje extenso (LLM) y modelo de lenguaje de visión (VLM)- en diferentes configuraciones de hardware. Esta evaluación proporciona información sobre la elección de una infraestructura rentable para ejecutar toda la canalización.
Las máquinas virtuales de Azure utilizadas para la prueba comparativa son:
Todas las máquinas están en la región de East US 2.
Embeddings
El gráfico compara los tiempos de inferencia para generar incrustaciones utilizando el modelo BGE Large EN en diferentes configuraciones de hardware, medidas para 80 documentos.
Aunque la GPU Tesla T4 destaca en el manejo de incrustaciones, especialmente a medida que aumenta el tamaño de los lotes, la D16s v6 de Azure con CPU Intel Emerald Rapids ofrece un convincente equilibrio entre coste y rendimiento. Esto significa que para la prueba comparativa BEG Large EN, Intel AMX podría conseguir un rendimiento más lento pero con un coste casi un 35% inferior, por ejemplo.
Large Language Model
Este gráfico compara los tiempos de inferencia para la generación de 750 tokens en un único lote de tamaño.
Los resultados muestran que el procesador D16s v6 de Azure con procesadores Intel Emerald Rapids ofrece una combinación equilibrada de coste y rendimiento, acercándose mucho a la eficiencia de la GPU para la generación de texto.
Comparación coste-rendimiento
También evaluamos el rendimiento de este modelo LLM midiendo su tasa de tokens por segundo (t/s). Esta métrica cuantifica el número de tokens que el modelo puede generar o procesar por segundo, lo que indica claramente su eficacia durante la inferencia.
Para comprender mejor la rentabilidad del modelo Llama 3.2 en distintos equipos, evaluamos el coste por ficha. Esta métrica calcula el coste en USD necesario para procesar un token por segundo, proporcionando una imagen clara de las implicaciones económicas de ejecutar el modelo en distintas configuraciones de hardware. Comparando estos valores, podemos identificar qué hardware ofrece el mejor equilibrio entre rendimiento y coste.
Aunque el D16s v6 muestra un coste por token significativamente inferior al de las demás opciones, es importante señalar que este análisis tiene en cuenta la eficiencia del hardware y los costes asociados. Esto hace que el D16s v6 sea la opción más rentable, mientras que el NC16as T4 v3 y el D16s v4 tienen costes similares pero superiores en comparación con el D16s v6.
Vision Language model
Para mostrar las capacidades de modelos como Phi3.5 Vision en la creación de pies de foto detallados, presentamos a continuación un ejemplo de imagen:

Figura 2. Imagen para generar un pie de foto detallado
El mensaje para la siguiente salida era: «Generar un pie de foto detallado para la imagen”.
“En la imagen, una niña es la figura central, de pie frente a un rústico muro de piedra. La niña lleva un vestido de rayas rosas y blancas, que añade un toque de inocencia y juventud a la escena. En las manos de la niña sostiene un osito de peluche blanco, adornado con un tutú rosa, que simboliza el amor de la niña por los animales de peluche. El osito está colocado de tal manera que parece bailar, lo que añade un elemento lúdico a la imagen. El fondo es sencillo pero encantador, con un muro de piedra».
Este gráfico compara los tiempos de inferencia para generar un pie de foto detallado de una sola imagen. (Máximo de 130 tokens)
Tradicionalmente, las GPU han sido la opción preferida para las tareas de IA relacionadas con la visión debido a su mayor rendimiento en cargas de trabajo paralelas. Sin embargo, como se muestra en esta comparativa, la limitada capacidad de memoria de las GPU a menudo puede impedir que determinados modelos se ejecuten de forma eficiente o no se ejecuten en absoluto. En el gráfico anterior, el tiempo de inferencia de la Nvidia T4 no se incluyó debido a las limitaciones de memoria, que impedían que el modelo se ejecutara correctamente en esta GPU. En cambio, la memoria de que suelen disponer los servidores estándar es muy superior a los 16 GB que proporcionan GPU como la Tesla T4. Esto hace que las CPU y los servidores con mucha memoria sean una solución práctica para los modelos más grandes. Además, la máquina D16s v6 consigue un impresionante tiempo de inferencia para generar la descripción de la imagen, lo que demuestra su eficiencia y fiabilidad para estas tareas.
Entornos de producción
Las pruebas realizadas en la sección anterior demuestran cómo es posible ejecutar modelos que forman parte de un pipeline multimodal utilizando únicamente la CPU. Si necesitamos que este pipeline pueda ser utilizado por muchos usuarios de forma concurrente, podríamos utilizar servidores LLM como vLLM para conseguir un mayor rendimiento de nuestro modelo.
El siguiente link muestra cómo configurar vLLM en Intel Extension para PyTorch utilizando sólo la CPU como dispositivo de inferencia.
Conclusión
Las CPU Intel Xeon Emerald Rapids de 5ª generación, integradas con las últimas máquinas virtuales de Azure, están revolucionando el modo en que se crean y optimizan las canalizaciones de generación mejorada de recuperación (RAG). Estos procesadores, con funciones avanzadas como Intel Advanced Matrix Extensions (AMX), ofrecen un sólido rendimiento para tareas RAG multimodales, como incrustaciones, inferencia de modelos de lenguaje de gran tamaño (LLM) y análisis de modelos de visión y lenguaje (VLM), sin los elevados costes asociados normalmente a las GPU.
Las CPU Emerald Rapids alcanzan velocidades de inferencia comparables a las de GPU como la Tesla T4, con diferencias mínimas de rendimiento en las distintas cargas de trabajo RAG. Esto convierte a los procesadores Intel en una opción rentable y de alto rendimiento, que facilita el acceso a las tecnologías avanzadas de IA. Además, las CPU ofrecen la ventaja de simplificar el desarrollo y las pruebas, ya que no requieren la instalación de librerías o controladores adicionales, a diferencia de las GPU. Esto resulta especialmente útil en escenarios en los que los entornos locales y de producción difieren en cuanto a arquitectura de hardware.
La combinación de la innovadora tecnología de CPU de Intel y la infraestructura flexible de Azure permite a las empresas aprovechar los flujos de trabajo de código abierto, reducir los costes de dependencia y mantener el control sobre sus implementaciones de GAR. Con este enfoque, las organizaciones pueden manejar eficientemente tareas multimodales complejas y escalar sus canalizaciones para satisfacer las demandas en evolución.