llamafile, el nou projecte de Mozilla que permet distribuir i executar LLM en un sol fitxer

trucafile

Logo de trucafile

Mozilla va donar a conèixer, mitjançant una publicació de bloc, elançament d'un compilador, el qual té com finalitat simplificar dràsticament l'ús de diversos models de llenguatge grans (LLM) a gairebé qualsevol escriptori o servidor.

El nou projecte de Mozilla batejat com a «llamafile», és un compilador de codi obert que pot prendre un fitxer de paràmetres de model d'aprenentatge automàtic en format GGUF i convertir-lo en un fitxer executable que es pot executar en sis sistemes operatius diferents en maquinari AMD64 i ARM64.

I és que no em deixessin mentir, però els models de llenguatge gran (LLM) per a ús local generalment es distribueixen generalment en diversos conjunts, els quals el pes de cadascun d'aquests arxius sol ser de diversos gigabytes. Aquests fitxers no són directament utilitzables per si mateixos, cosa que complica la seva distribució i execució en comparació amb altres tipus de programari. A més, un model específic pot haver experimentat modificacions i ajustaments, donant lloc a resultats diversos en utilitzar versions diferents.

Mozilla se'n va adonar, prenc cartes en l'assumpte i per abordar aquest desafiament, el grup d'innovació de Mozilla ha llançat llamafile, el qual com ja es va esmentar a dalt, és un compilador que converteix els LLM en un sol fitxer binari capaç d'executar-se en sis sistemes operatius diferents (macOS, Windows, Linux, FreeBSD, OpenBSD i NetBSD) sense necessitat d'instal·lació addicional. Aquesta solució facilita considerablement la distribució i l'execució de LLM, alhora que garanteix la consistència i reproductibilitat d'una versió específica de LLM al llarg del temps.

Sobre el compilador trucafile, s'esmenta que es va crear combinant dos projectes: truca.cpp (un marc de chatbot LLM de codi obert) i Cosmopolitan Libc (un projecte de codi obert que permet compilar i executar programes en C a moltes plataformes i arquitectures). Durant la implementació, Mozilla esmenta que va enfrontar reptes interessants i va haver d'ampliar significativament l'abast de Cosmopolitan per assolir els objectius plantejats.

El nostre objectiu és fer que els models de llenguatges grans de codi obert siguin molt més accessibles tant per als desenvolupadors com per als usuaris finals. Ho estem fent combinant llama.cpp amb Cosmopolitan Libc en un marc que col·lapsa tota la complexitat dels LLM en un únic fitxer executable (anomenat «flamafile») que s'executa localment a la majoria dels ordinadors, sense instal·lació.

S'esmenta que un dels principals objectius de llamafile era que pogués executar-se en múltiples microarquitectures de CPU. Aquí és on entra truca.cpp per permetre que els nous sistemes Intel utilitzin les funcions dels processadors moderns sense sacrificar el suport per a ordinadors més antigues, mentre que per AMD64 i ARM64 aquestes concatenen mitjançant un script d'intèrpret d'ordres que inicia la versió adequada. El format de fitxer és compatible amb WIN32 i la majoria dels shells UNIX.

Un altre dels desafiaments que va ser abordat va ser el tema dels pesos dels arxius dels LLM, els quals es poden integrar a llamafile, això gràcies al suport per a PKZIP a la biblioteca GGML. Això permet assignar pesos sense comprimir directament a la memòria, com un fitxer autoextraïble, a més que permet que els pesos quantificats distribuïts en línia tinguin com a prefix una versió compatible del programari anomena.cpp, la qual cosa garanteix que els comportaments observats originalment puguin reproduir-se indefinidament .

Suposem que teniu un conjunt de pesos LLM en forma de fitxer de 4 GB (en el format GGUF d'ús comú). Amb llamafile pots transformar aquest fitxer de 4GB en un binari que s'executa en sis sistemes operatius sense necessitat d'instal·lació.

Finalment, cal esmentar que Mozilla va llançar el projecte "llamafile" escrit en C/C++ i distribuït sota la llicència Apache, cosa que implica menys restriccions en termes de mètodes d'ús i disponibilitat de recursos, en comparació amb llicències com la GPL.

Pel que fa als interessats en poder conèixer més sobre això el projecte o ja el volen utilitzar, poden consultar els detalls i/o la guia ràpida d'ús a el següent enllaç.


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: AB Internet Networks 2008 SL
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.