Le premier stick USB avec LLM local – IA dans votre poche !

Le stockage local LLM est en augmentation, avec de nombreux utilisateurs mettant en place des PC ou des systèmes pour les exécuter, l’idée d’avoir un LLM fonctionner sur un serveur quelque part dans le cloud devient rapidement dépassée. Binh Pham a expérimenté avec un Raspberry Pi Zero, transformant efficacement le dispositif en une petite clé USB capable d’exécuter un LLM localement sans aucun matériel supplémentaire nécessaire. Le projet a été largement facilité grâce à llama.cpp et llamafile, une combinaison d’un ensemble d’instructions et d’une série de packages conçus pour offrir une expérience de chatbot légère hors ligne.
Problèmes de compatibilité du Pi Zero
Cependant, en raison du Pi Zero datant de huit ans, ce n’était pas aussi simple que d’installer llama.cpp sur le Pi Zero et de le faire fonctionner. Tout d’abord, Pham a monté le dispositif sur une interface USB et a imprimé en 3D une coque pour le dispositif lui-même. Après avoir réglé tous ces problèmes, le projet a rencontré une complexité supplémentaire en raison de la limitation de stockage RAM de 512 Mo du Pi Zero W. Après avoir compilé llama.cpp sur le dispositif, il a échoué à compiler, et personne d’autre n’avait osé compiler llama.cpp sur un Pi Zero ou Pi One. Le cœur des problèmes provenait du processeur du Pi Zero, qui fonctionne sur ARMv6. Pour contourner cela, Pham a dû se concentrer et convertir l’ensemble d’instructions ARMv8 de llama.cpp et supprimer toutes les notations ou optimisations basées sur du matériel moderne.
Implémentation du logiciel
Après avoir modifié le code source de llama.cpp pour que les choses fonctionnent sur le Pi Zero, il a dû rendre opérationnel le côté logiciel de la clé USB. Ensuite, son attention s’est tournée vers l’optimisation de l’expérience logicielle le plus fluide possible. Le LLM lui-même repose sur la soumission de fichiers texte au LLM, qui sert de principale invite. Ainsi, Pham a construit son implémentation qui génère une histoire basée sur l’invite texte et la renvoie sous forme d’un fichier entièrement peuplé avec des sorties générées.
Source : www.tomshardware.com