Un système de fichiers compressé grâce à un LLM
Vous connaissez peut-être FUSE (Filesystem in Userspace), ce truc qui permet de créer des systèmes de fichiers custom sans toucher au noyau Linux. C’est grâce à lui notamment qu’on peut monter un Google Drive, un bucket S3 ou même un dossier distant via SSH comme un simple répertoire local.
Hé bien, Rohan Gupta a poussé ce concept jusqu’à l’absurde en créant LLMfuse, un système de fichiers où toutes les opérations sont gérées par un modèle de langage fine-tuné.
Ainsi, quand vous faites un ls, un chmod ou un cat sur ce filesystem, c’est un LLM qui répond et chaque opération FUSE devient une requête au modèle. Pour parvenir à ces fins, le développeur a entraîné un Qwen3-4B sur environ 15 000 paires prompt/completion générées à partir de simulations d’opérations filesystem. Le modèle a alors appris à lire le contenu des fichiers, modifier les métadonnées, et même à représenter l’arborescence complète en XML.
Bon, dit comme ça, ça ressemble à une expérience de savant fou un peu conne… Mais y’a un truc vraiment intéressant qui découle de tout ça. En effet, l’auteur a découvert que la combinaison du codage arithmétique avec son modèle fine-tuné permettait d’atteindre des taux de compression délirants. Sur un fichier texte classique, il obtient par exemple une compression 22 fois meilleure que gzip. Et pour une arborescence de fichiers représentée en XML, c’est environ 8 fois mieux que squashfs.
Alors comment c’est possible cette magie noire ? Bah ça remonte au théorème de Shannon de 1948 sur l’entropie où plus un modèle prédit bien les données, moins il faut de bits pour les encoder. Un LLM fine-tuné sur un type de données spécifique devient alors un compresseur hyper efficace pour ces données.
L’auteur est le premier à admettre que c’est une expérimentation, donc, pas de quoi vous emballer non plus… Après si vous souhaitez l’utiliser, vous avez besoin d’un GPU, que l’intégralité du système de fichiers tienne dans la fenêtre de contexte du modèle, et ça ne marche vraiment bien que sur des données textuelles. Pour vos vidéos 4K ou votre bibliothèque de jeux Steam, on repassera… snif…
D’ailleurs, le fait que lipsum.txt (le classique Lorem Ipsum) soit surreprésenté dans les données d’entraînement des LLM aide beaucoup à gonfler les chiffres de compression mais même sur d’autres types de textes “normaux” qui ressemblent à ce qu’on trouve sur Internet, les gains restent entre 5x et 20x par rapport à gzip.
Le code source est disponible sous licence MIT, avec notamment un utilitaire CLI appelé llmencode que vous pouvez tester en local si vous avez une bonne carte graphique sous la main.
Amusez-vous bien !
