Llmstick – un dispositif USB AI et LLM basé sur Raspberry Pi Zero W et optimisé Llama.cpp

LLMStick is aportable plug-and-play AI device

YouTuber et le passionné de technologie Binh Pham a récemment construit un appareil AI et LLM portables Plug-and-Play Institué dans un bâton USB appelé LLMStick et construit autour d’un Raspberry Pi Zero W. Cet appareil décrit le concept d’un jeu de fiche local LLM que vous pouvez utiliser sans Internet.

Après que Deepseek secoue le monde de ses performances et de ses accessibilité open source, nous avons vu des outils comme Exo qui vous permettent d’exécuter de grands modèles de langage (LLM) sur un groupe d’appareils, comme les ordinateurs, les smartphones et les ordinateurs monomodes, distribuant efficacement la charge de traitement. Nous avons également vu des instructions de libération de RADXA pour exécuter Deepseek R1 (Qwen2 1.5b) sur un SBC basé sur Rockchip RK3588 avec 6 Tops NPU.

LLMStick est un périphérique AI plug-and-play aporable

Pham a pensé à utiliser le projet LLAMA.CPP car il est spécialement conçu pour les appareils avec des ressources limitées. Cependant, Running Llama.cpp sur le Raspberry Pi Zero W n’était pas simple et il a dû faire face à l’incompatibilité de l’architecture car l’ancien Pi Zero W utilise une ancienne architecture Armv6, tandis que Llama.cpp avait des optimisations pour les architectures de bras plus récentes (comme ARMV8-A Trouvé dans le Raspberry Pi 5). Ces optimisations reposaient sur des instructions spécifiques au néon ARM qui n’étaient pas disponibles sur le processeur de Pi Zero W. Cela a provoqué des erreurs de compilation.

Pour résoudre ces problèmes, il a modifié le code source de Llama.cpp et a identifié les optimisations spécifiques à l’architecture. Ensuite, il a manqué ou modifié manuellement ces parties du code pour la compatibilité avec l’architecture ARMV6 pour créer le projet LLAMA.ZERO. Il s’agissait d’un processus long et complexe, nécessitant une compréhension approfondie des architectures de base de code et de bras. Selon une note, il mentionne également que la compilation de cela sur un processeur de 23 ans enlève 12 heures de temps de compilation.

LLM sur le bâton USB

Une fois le processus de compilation terminé, il a commencé à travailler sur une interface et s’est installé sur l’exécution du Raspberry Pi en mode gadget USB, où le PI apparaîtrait comme un lecteur de stockage USB. Maintenant, pour donner une invite au LLM, il vous suffit de faire un fichier avec une invite, et le LLM remplit le fichier avec les réponses. Cette configuration transforme efficacement le Raspberry Pi Zero W dans un périphérique AI plug-and-play portable, permettant une interaction LLM hors ligne dans un facteur de forme compact.

En écrivant à ce sujet, je ne pouvais pas comprendre pourquoi il n’utilisait pas une nouvelle carte Raspberry Pi Zero 2W, car ce serait un remplacement presque réduit, et augmenter considérablement les performances, permettant des modèles plus grands et plus pratiques. Le nouveau PI utilise l’architecture ARMV8, il aurait donc éliminé le besoin de autant de modifications, je pense qu’en fin de compte, il voulait rendre la vidéo intéressante. Quoi qu’il en soit, ce périphérique d’IA plug-and-play portable montre le potentiel d’exécution des LLM sur un matériel minimal, même si les performances restent un facteur limitant. Le projet comprend une version modifiée de Llama.cpp, ainsi que des instructions pour configurer le PI Zero en tant que dispositif USB, qui se trouvent tous sur le repo GitHub de Pham Tuan Binh.

https://www.youtube.com/watch?v=sm-ffse9edu

Via hackster.io

Retrouvez l’histoire de Raspberry Pi dans cette vidéo :

YouTube video

  • Waveshare USB HUB Hat (B) for Raspberry Pi Zero/Zero W/4B/3B/3B+, with 4X USB 2.0 Ports Support USB 2.0/1.1
  • Hub Ethernet / USB HAT Boitier ABS pour Raspberry Pi Zero 2 W/Zero 2WH/Pi Zero/Zero W/Zero WH, avec 3 ports USB, compatible avec USB 2.0/1.1 et 1 port Ethernet RJ45 10/100M Auto-négociation