El equipo de ggml-org anunció en Hugging Face llama.cpp v1.0.0 y publicó a la vez la biblioteca llama.cpp (libllama) y la biblioteca de tensores que la sustenta, ggml (libggml), ambas en la versión 1.0.0. El proyecto tiene unos tres años y medio, y el equipo señala que muchas aplicaciones dependen ya de él.
Qué significa ahora el número de versión
El cambio central es un compromiso de compatibilidad. Ambos proyectos avisarán de las incompatibilidades de API y ABI con un salto de versión mayor. El equipo fija las reglas para todos sus proyectos que usan versionado semántico:
- Mayor: un cambio que rompe la API pública en C del directorio include.
- Menor: una función retrocompatible, una actualización de backend, soporte de un modelo o una ampliación de la API.
- Parche: la corrección de un error sin cambios en la API.
Según el equipo, será más estricto a la hora de hacer visibles estos límites a medida que crezca la adopción.
Distribución
La publicación enumera los canales por los que se distribuye el software:
- Artefactos de preversión para Linux, macOS, Windows, Android e iOS.
- Imágenes de Docker para Linux.
- Paquetes de Debian.
- Homebrew para macOS y Linux.
- conda-forge para Windows, macOS y Linux.
- MacPorts y Winget.
- Un XCFramework para iOS y macOS.
Además, el equipo remite a quienes empaquetan software a un hilo de discusión sobre cómo incorporar los proyectos a sus propios procesos de publicación.
Desarrollo y cobertura
El equipo dice que usa LLM en su propio desarrollo de forma mesurada y que conserva el control de la arquitectura. Está invirtiendo en infraestructura de integración continua: recurre a HF Buckets y HF Jobs de Hugging Face para tener capacidad y suma runners propios en las principales plataformas de hardware, con apoyo de NVIDIA, AMD, Qualcomm, Arm, IBM e Intel.
En cuanto a modelos, llama.cpp admite hoy más de 150 variantes de arquitectura y todos los métodos habituales de decodificación especulativa. El soporte de hardware llega a través de los backends de ggml, y cada uno puede compilarse como biblioteca dinámica y cargarse en tiempo de ejecución.
Lo que el anuncio no incluye
La publicación no describe capacidades nuevas de modelos ni cifras de rendimiento, y tampoco da fecha para una futura versión mayor. El cambio apunta a la previsibilidad de quienes construyen sobre estas bibliotecas.