GGUF versus GGML

Vista aérea de San Francisco iluminado.

El formato unificado generado por GPT (GGUF) es un formato de archivo que agiliza el uso y el despliegue de modelos de lenguaje de gran tamaño (LLM). GGUF está especialmente diseñado para almacenar modelos de inferencia y funcionar bien en hardware informático de nivel de consumidor.

Esto se logra combinando los parámetros del modelo (ponderaciones y sesgos) con metadatos adicionales para una ejecución eficiente. GGUF es claro, extensible, versátil y capaz de incorporar nueva información sin romper la compatibilidad con modelos más antiguos. GGUF es un desarrollo más reciente que se basa en los cimientos establecido por su formato de archivo predecesor, GGML.

GGUF es un formato binario diseñado explícitamente para la carga y el almacenado rápidos de modelos. Debido a que es compatible con varios lenguajes de programación como Python y R, GGUF aumentó la popularidad del formato. También admite el refinamiento, para que los usuarios puedan adaptar los LLM a aplicaciones especializadas y almacena plantillas de instrucciones para despliegues de modelos en todas las aplicaciones. Si bien GGML todavía está en uso, su soporte fue reemplazado por GGUF.

Diseño 3D de pelotas rodando en una pista

Las últimas novedades e insights sobre IA

Descubra insights y noticias de expertos sobre IA, la nube y mucho más en el boletín semanal Think. 

¿Cuál es la diferencia entre GGUF y GGML?

GGML fue el formato de archivo que precedió directamente a GGUF, creado por el desarrollador Georgi Gerganov. El nombre es una combinación de las iniciales de Gerganov (GG) y ML para machine learning. GGML era una biblioteca de tensores diseñada para un alto rendimiento en varias plataformas de hardware. También fue un primer intento de crear un formato de archivo para los modelos de inteligencia artificial GPT de OpenAI para facilitar el intercambio y la ejecución de modelos. GGML fue diseñado para ser inequívoco y contener toda la información necesaria para cargar un modelo.

GGML fue uno de los primeros esfuerzos por hacer accesibles grandes modelos lingüísticos en hardware estándar. Sin embargo, era limitado en términos de flexibilidad y extensibilidad. Esto significa que GGML necesitaba ajustes manuales y se enfrentaba a problemas de compatibilidad a medida que los usuarios agregaban nuevas funciones para solventar sus limitaciones.

GGUF aborda las limitaciones de GGML y permite agregar nuevas características mientras mantiene la compatibilidad con modelos más antiguos. Dado que GGUF elimina los cambios de última hora, facilita las transiciones a versiones más nuevas y admite una amplia gama de modelos, lo que la convierte en una solución integral. Convertir los modelos existentes a GGUF puede llevar mucho tiempo y, como con todos los formatos nuevos, los usuarios y desarrolladores deben acostumbrarse a sus detalles.

AI Academy

Por qué los modelos fundacionales son un cambio de paradigma para la IA

Conozca una nueva clase de modelos de IA flexibles y reutilizables que pueden desbloquear nuevos ingresos, reducir costos y aumentar la productividad, luego use nuestra guía para investigar a profundidad.

Conversión a GGUF

Huggingface es una plataforma impulsada por la compañía y la comunidad que proporciona herramientas y modelos para el procesamiento del lenguaje natural ( NLP). Ofrecen una biblioteca Transformers, que incluye muchos modelos preentrenados que se pueden convertir al formato de archivo GGUF. Huggingface también admite el ajuste y el despliegue, lo que lo convierte en parte integral del ecosistema en torno a GGUF.

Los transformadores son un tipo de arquitectura de modelos que se convirtió en la columna vertebral del PNL moderno. GGUF permite almacenar y desplegar modelos basados en transformadores para aplicaciones que dependen de estas arquitecturas avanzadas.

Por qué es importante el GGUF

GGUF proporciona un formato firme, flexible y eficiente para los modelos de lenguaje. Aborda las limitaciones de los formatos anteriores, garantizando la compatibilidad con tecnologías y técnicas en evolución. Su mayor flexibilidad, rendimiento mejorado y soporte para marcos avanzados de cuantificación y despliegue lo convierten en una herramienta crítica para el futuro de la IA y el aprendizaje automático.

Las ponderaciones del modelo son los parámetros que aprende un modelo de aprendizaje automático durante el entrenamiento. GGUF almacena estos pesos de manera eficiente, lo que permite una carga e inferencia rápidas. Los métodos de cuantificación aplicados a las ponderaciones de los modelos pueden mejorar aún más el rendimiento y reducir el consumo de recursos.

La cuantificación, el proceso de convertir señales continuas en formatos digitales con menos valores posibles, desempeña un papel crucial en GGUF. La cuantificación mejora la eficiencia y el rendimiento, especialmente para hardware con recursos limitados. Al reducir el tamaño del modelo y mejorar la velocidad de inferencia, los modelos cuantificados requieren menos potencia computacional, lo que lleva a un menor consumo de energía. Esto hace que GGUF sea muy adecuado para su despliegue en dispositivos edge y plataformas móviles donde los recursos de energía son limitados.

Por ejemplo, una técnica de cuantificación específica que se emplea es GPTQ (Cuantificación precisa posterior al entrenamiento para transformadores generativos preentrenados). GPTQ reduce el tamaño y las necesidades computacionales de un LLM al convertir sus datos complejos en formatos más simples. Esto permite desplegar LLM en dispositivos con menos memoria y capacidad de procesamiento.

GGUF también está diseñado para incorporar nuevas funciones sin comprometer la compatibilidad con una versión anterior. Esta capacidad permite agregar nuevos tipos de datos y metadatos, lo que hace que GGUF sea a prueba del futuro. A medida que evolucionan los modelos de aprendizaje automático, GGUF puede adaptarse a estos cambios, protegiendo la relevancia y la adaptabilidad a largo plazo.

El diseño de formato binario de GGUF mejora significativamente la velocidad de carga y almacenamiento de modelos, lo cual es particularmente vital para aplicaciones que requieren un despliegue e inferencia rápidos. Los servicios de conversión de idiomas en tiempo real y los sistemas de IA interactivos, por ejemplo, se benefician del manejo eficiente de archivos modelo de GGUF. Cuanto más rápido se pueda cargar y emplear un modelo, mejor será la experiencia del usuario en estas aplicaciones sensibles al tiempo.

GGUF destaca por su compatibilidad con técnicas avanzadas de ajuste como la adaptación de bajo rango (LoRA), la adaptación cuantificada de bajo rango (QLoRA) y la cuantificación adaptativa del peso (AWQ). Estas técnicas optimizan aún más el rendimiento del modelo y la utilización de los recursos.

Además, GGUF admite varios niveles cuantitativos, lo que proporciona flexibilidad para equilibrar la precisión y la eficiencia del modelo. Los esquemas de cuantificación comunes que son compatibles con GGUF incluyen:

  • Cuantificación de 2 bits: ofrece la compresión más alta, lo que reduce significativamente el tamaño del modelo y la velocidad de inferencia, aunque con un impacto potencial en la precisión.
  • Cuantificación de 4 bits: Equilibra compresión y precisión, haciéndola adecuada para muchas aplicaciones prácticas.
  • Cuantificación de 8 bits: proporciona una buena precisión con una compresión moderada, ampliamente empleada en diversas aplicaciones.

Los cuantos se refieren a los distintos niveles de cuantificación aplicados a los pesos del modelo, como la cuantificación de 2 bits, 4 bits u 8 bits.

Los modelos GGUF también emplean Compute Unified Device Architecture (CUDA), una plataforma de computación paralela e interfaz de programación de aplicaciones que permite que los modelos empleen GPU para tareas informáticas aceleradas. Esta capacidad mejora la eficiencia y velocidad computacional de los modelos de lenguaje. Finalmente, la integración de GGUF con Langchain, un marco para desarrollar y desplegar modelos de lenguaje, facilita el despliegue de modelos GGUF para que puedan usarse de manera efectiva en entornos y aplicaciones de desarrollo.

Modelos y casos de uso de GGUF

Modelo de lenguaje grande Meta IA (LLaMA)
 

Meta emplea GGUF para sus modelos LLaMA (Llama-2 Llama-3), que están diseñados para tareas de procesamiento de lenguaje natural (NLP) que incluyen generación de texto, resumen y respuesta a preguntas. GGUF en LLaMA permite el despliegue en diferentes configuraciones de hardware, desde GPU de alto rendimiento hasta las CPU de consumo más comunes. Llama-3 es el modelo actual.

WebUI de generación de texto

 

Esta interfaz web genera texto por medio de LLM y emplea GGUF para el almacenamiento y la inferencia de modelos. La flexibilidad de GGUF permite a los usuarios cargar modelos grandes rápidamente para realizar tareas de generación de texto con una latencia mínima.

KoboldCpp

 

Un cliente popular para ejecutar LLM localmente, KoboldCpp adoptó GGUF para mejorar su rendimiento para los usuarios finales. Esto es especialmente beneficioso para aficionados e investigadores que requieren soluciones robustas y fáciles de usar para experimentar con LLM en computadoras personales.

Apoyo a la comunidad y al ecosistema

El desarrollo de GGUF está respaldado por una comunidad colaborativa. Se desarrollaron numerosas bibliotecas y herramientas para respaldar GGUF, lo que garantiza una amplia adopción e integración en varios flujos de trabajo de IA. Algunos de los actores clave en este ecosistema incluyen:

  • llama.cpp: Una biblioteca central que proporciona herramientas para trabajar con GGUF, incluidas utilidades de conversión y soporte para ejecutar modelos.
  • ctransformers: esta biblioteca admite la integración de modelos GGUF en diferentes entornos de programación, lo que facilita a los desarrolladores el uso de estos modelos en sus aplicaciones.
  • Interfaz de usuario web LoLLMS: una interfaz basada en la web que admite GGUF, lo que permite a los usuarios interactuar con los modelos a través de una interfaz fácil de usar.

Preparada para el futuro y para un impacto más amplio

La introducción de GGUF marca un cambio hacia formatos de modelos generativos más sustentables y adaptables. Su capacidad de soportar una amplia gama de modelos y configuraciones significa que no está limitado a casos de uso o hardware específicos. Esta versatilidad garantiza que GGUF pueda seguir satisfaciendo las necesidades de la comunidad de IA a medida que surgen nuevos avances.

Además, el énfasis de GGUF en la compatibilidad con una versión anterior minimiza las interrupciones durante las actualizaciones, lo que facilita a las organizaciones la transición a versiones más nuevas sin un tiempo de inactividad o reconfiguración significativos.

GGUF, al ser un formato abierto, se beneficia de las contribuciones colaborativas de la comunidad de código abierto, lo que ayuda en su desarrollo, mejora y adopción generalizada. Su adopción en proyectos de alto perfil como LLaMA y varias herramientas de IA subraya su importancia en la evolución continua de los modelos de lenguaje de gran tamaño. Al facilitar un despliegue de modelos más rápido, flexible y preparado para el futuro, GGUF desempeña un papel crucial en el avance de las capacidades de los sistemas de IA.

Soluciones relacionadas
IBM Bob

Acelere la entrega de software con Bob, su socio de IA para un desarrollo seguro y consciente de la intención.

Explore IBM Bob
IBM watsonx Orchestrate

Diseñe asistentes y agentes de IA escalables con facilidad, automatice tareas repetitivas y simplifique procesos complejos con IBM watsonx Orchestrate.

Explore watsonx Orchestrate
Soluciones de inteligencia artificial

Ponga a trabajar la IA en su negocio con la experiencia en IA líder del sector y la cartera de soluciones de IBM a su lado.

Explore las soluciones de IA
Dé el siguiente paso

Independientemente de en qué fase del ciclo de desarrollo se encuentre, Bob lo respalda con revisiones agénticas basadas en la intención y alineadas con la seguridad, que aceleran la entrega de software de alta calidad.

  1. Descubra IBM Bob
  2. Explore watsonx Orchestrate