Cómo funciona

GGUF (GPT-Generated Unified Format) es un formato binario para almacenar pesos de modelos de IA, creado para el proyecto llama.cpp. Reemplaza al formato anterior (GGML) y añade soporte para metadatos, múltiples cuantizaciones y mejor organización.

Un archivo GGUF contiene: los pesos del modelo (cuantizados o no), metadatos (nombre, arquitectura, parámetros de tokenización) e información de cuantización. Todo en un único archivo, fácil de distribuir y cargar.

El formato está optimizado para inferencia en CPU y GPU, con soporte para mmap (memory mapping), que permite cargar el modelo sin copiarlo a la RAM. Esto reduce el tiempo de inicialización y el uso de memoria.

Ejemplo práctico

En Hugging Face encuentras modelos como "Llama-3.1-8B-Instruct-GGUF" con varias variantes: Q4_K_M (4 bits, medio), Q5_K_M (5 bits, medio), Q8_0 (8 bits). Descargas el archivo .gguf correspondiente y lo ejecutas con llama.cpp, Ollama o LM Studio.

Con un archivo Q4_K_M de 4.9 GB puedes ejecutar un modelo de 8 mil millones de parámetros en una laptop con 8 GB de RAM, sin GPU. La calidad es ligeramente inferior al modelo original en 16 bits, pero la velocidad y el costo lo compensan.

Para qué sirve

Sirve para distribuir y ejecutar modelos de IA localmente, en hardware modesto. Es el formato estándar para inferencia local y para experimentar con modelos abiertos.

Diferencia entre GGUF y otros formatos

GGUF está optimizado para inferencia (llama.cpp, Ollama). Formatos como Safetensors o PyTorch (.bin/.pt) están optimizados para entrenamiento e investigación. GGUF soporta cuantización nativa; Safetensors no. Para ejecutar localmente, GGUF es el estándar; para entrenar o hacer fine tuning, usa Safetensors.