1xa5sqfvuzzrfdqz25b5aiw.png

Modelos GGUF rápidos y precisos para su CPU

Generado con DALL-E

GGUF es un formato de archivo binario diseñado para el almacenamiento eficiente y la carga rápida de modelos de lenguaje grandes (LLM) con GGML, una biblioteca de tensores basada en C para aprendizaje automático.

GGUF encapsula todos los componentes necesarios para la inferencia, incluido el tokenizador y el código, dentro de un solo archivo. Admite la conversión de varios modelos de lenguaje, como Llama 3, Phi y Qwen2. Además, facilita la cuantificación de modelos a precisiones más bajas para mejorar la velocidad y la eficiencia de la memoria en las CPU.

A menudo escribimos “cuantificación GGUF”, pero GGUF en sí mismo es solo un formato de archivo, no un método de cuantización. Hay varios algoritmos de cuantización implementados en llama.cpp para reducir el tamaño del modelo y serializar el modelo resultante en el formato GGUF.

En este artículo, veremos cómo cuantificar con precisión un LLM y convertirlo a GGUF, utilizando una matriz de importancia (imatriz) y el método K-Quantization. Proporciono el código de conversión GGUF para Gemma 2 Instruct, utilizando una imatriz. Funciona de la misma manera con otros modelos compatibles con llama.cpp: Qwen2, Llama 3, Phi-3, etc. También veremos cómo evaluar la precisión de la cuantificación y el rendimiento de inferencia de los modelos resultantes.