Ce nouveau moteur exécute l'IA locale en utilisant 10x moins de RAM ! (Cactus)

BBetter Stack
컴퓨터/소프트웨어가전제품/카메라스마트폰/모바일

Transcript

00:00:00Voici Cactus. C'est un moteur d'inférence à faible latence conçu pour traiter les appareils mobiles et embarqués
00:00:06comme des citoyens de première classe. Généralement, quand on essaie de faire tourner des modèles d'IA sur ces appareils,
00:00:12ils semblent lourds, énergivores et ont tendance à être coupés par le gestionnaire de mémoire
00:00:18des systèmes d'exploitation mobiles. Mais Cactus cherche à résoudre ce problème car il a été conçu spécifiquement
00:00:23pour les contraintes des NPU (unités de traitement neural) et de la mémoire RAM limitée. Aujourd'hui, nous allons
00:00:28donc nous pencher sur Cactus, voir comment il fonctionne et le tester sur un appareil embarqué pour voir ses performances.
00:00:34Plongeons directement dans le vif du sujet. Le plus grand goulot d'étranglement pour l'IA locale n'est pas le calcul, mais
00:00:44la surcharge mémoire. Sur un appareil mobile standard, le système d'exploitation est extrêmement agressif
00:00:50pour fermer les applications qui font grimper l'utilisation de la RAM. Cactus résout ce problème grâce au
00:00:57mappage mémoire « zero-copy ». Au lieu de l'approche habituelle où tout est chargé dans la RAM, Cactus mappe
00:01:02les poids du modèle directement depuis le stockage. C'est un système sans copie qui n'envoie les tenseurs spécifiques
00:01:08dans le cycle de calcul actif qu'au moment où ils sont nécessaires. Vous bénéficiez ainsi de la puissance de raisonnement
00:01:13d'un grand modèle sans risquer que le système d'exploitation ne ferme votre application. Et pour y parvenir,
00:01:19ils ont même abandonné le format traditionnel GGUF au profit de leur propre format
00:01:24propriétaire .CACT, qui permet de rendre ce mappage efficace sur les appareils embarqués. Mais
00:01:31le vrai travail de fond se fait dans le NPU, l'unité de traitement neural. Alors que la plupart
00:01:37des moteurs locaux utilisent le GPU par défaut, Cactus est conçu pour privilégier le NPU. Si vous regardez
00:01:43les puces modernes d'Apple, Qualcomm ou MediaTek, elles ont toutes des composants dédiés aux réseaux de neurones.
00:01:50Cactus communique directement avec ces unités, contournant les couches de traduction habituelles
00:01:55qui ralentissent l'inférence. Ils ont d'ailleurs optimisé des modèles spécifiques pour tirer pleinement
00:02:00parti de ces unités de multiplication de matrices. Si vous allez sur le tableau de bord de Cactus,
00:02:07vous verrez une liste de modèles optimisés pour les NPU, prêts à être téléchargés. Une autre fonctionnalité intéressante
00:02:12de Cactus est son routeur hybride. En réalité, sur les appareils embarqués, les modèles locaux,
00:02:18aussi optimisés soient-ils, finissent par atteindre un plafond en termes de raisonnement. C'est là que
00:02:23le routeur hybride intervient. Au lieu de vous forcer à choisir entre un modèle local rapide mais limité
00:02:29intelligent mais coûteux, Cactus gère les deux et bascule de l'un à l'autre. Il utilise
00:02:35un système de routage basé sur le niveau de confiance. Si vous posez une question simple, elle reste sur le
00:02:40NPU parce que c'est rapide, privé et gratuit. Mais si le modèle local détecte que la tâche
00:02:45est trop complexe ou nécessite une immense fenêtre de contexte, il transfère automatiquement
00:02:51cette requête spécifique à un modèle de pointe sur le cloud. Votre code reste inchangé. Le moteur
00:02:57gère simplement la transition en arrière-plan. C'est donc un excellent moyen en production de maintenir
00:03:03les coûts au plus bas sans sacrifier l'expérience utilisateur lorsque les requêtes se compliquent. Tout cela
00:03:08a l'air génial, mais je voulais le tester par moi-même. Sur leur page d'accueil, ils proposent
00:03:13cette démo qui montre comment réaliser une transcription en temps réel avec environ 100 millisecondes
00:03:19de latence sur un appareil embarqué. J'ai donc codé rapidement une petite application Swift en utilisant
00:03:25leur package Swift Cactus, qui permet d'exécuter une transcription en temps réel grâce à leur modèle vocal
00:03:30Parakeet en local, combiné à un modèle Gemini sur le cloud. Testons cela. Comme vous pouvez
00:03:36le voir, en local, nous tournons autour de 260 millisecondes de latence en streaming direct. Et notez
00:03:44bien que je fais ce test sur un ancien modèle d'iPhone, le 12 Pro. Donc, pour un appareil de cet âge,
00:03:50je trouve que ces performances en local sont plutôt bonnes. Et si on bascule sur le cloud, Cactus choisit
00:03:55Gemini 2.5 Flash comme solution alternative. Pour une raison quelconque, ils n'ont pas le même
00:04:01modèle Parakeet côté cloud, j'ai donc dû utiliser Gemini. On peut voir ici
00:04:06que la moyenne est d'environ 2000 millisecondes pour une transcription par lots de trois secondes. Et
00:04:12c'est assez logique puisque cela nécessite un aller-retour avec le serveur de données. Mais
00:04:17concrètement, la majeure partie du temps, vous utiliserez de toute façon la transcription locale,
00:04:23l'option cloud restant utile pour d'autres tâches comme l'analyse d'images complexes ou d'autres processus plus lourds.
00:04:27Voilà donc, pour résumer, ce qu'est le moteur Cactus. Je trouve qu'ils proposent
00:04:33quelque chose de vraiment intéressant. J'aime leur approche de l'optimisation locale avec une
00:04:37architecture sur mesure adaptée aux NPU. Et j'apprécie le fait
00:04:43qu'ils proposent autant de SDK et de modèles pour toutes sortes de tâches multimodales.
00:04:50Je suis vraiment curieux de voir comment leur produit va évoluer. Je vais suivre
00:04:54leurs progrès de près, c'est certain. Et vous, que pensez-vous de Cactus ? L'avez-vous testé ?
00:04:59Dites-le-nous dans la section des commentaires ci-dessous. Et si vous aimez ce genre d'analyses,
00:05:03n'hésitez pas à me le faire savoir en cliquant sur le bouton j'aime sous la vidéo. Pensez également à vous abonner
00:05:08à notre chaîne. C'était Andris de Better Stack, et je vous donne rendez-vous dans les prochaines
00:05:13vidéos.

Key Takeaway

Le moteur d'inférence Cactus optimise l'IA locale sur les appareils mobiles en éliminant la surcharge de la RAM grâce au mappage mémoire zero-copy au format .CACT et à l'exploitation directe des puces NPU.

Highlights

  • Le moteur d'inférence Cactus réduit l'utilisation de la mémoire RAM lors de l'exécution locale des modèles d'intelligence artificielle sur les appareils mobiles et embarqués.

  • La technique du mappage mémoire zero-copy élimine le chargement complet des poids du modèle dans la RAM en les associant directement depuis le stockage.

  • Le format de fichier propriétaire .CACT remplace le format traditionnel GGUF pour assurer l'efficacité du mappage mémoire sur les architectures embarquées.

  • L'architecture de Cactus communique directement avec les unités de traitement neural (NPU) d'Apple, Qualcomm et MediaTek sans passer par les couches de traduction habituelles.

  • Un routeur hybride intégré bascule automatiquement la requête vers un modèle cloud comme Gemini 2.5 Flash lorsque le niveau de confiance du modèle local est insuffisant.

  • Les tests de transcription en temps réel sur un iPhone 12 Pro affichent une latence d'environ 260 millisecondes en local contre 2000 millisecondes pour un traitement par lots sur le cloud.

Timeline

Optimisation de la mémoire vive par le mappage zero-copy

  • Les systèmes d'exploitation mobiles ferment de manière agressive les applications gourmandes en mémoire RAM.
  • Le mappage mémoire zero-copy de Cactus charge uniquement les tenseurs spécifiques dans le cycle de calcul actif au moment de leur utilisation.
  • Le format propriétaire .CACT remplace le format standard GGUF pour optimiser le transfert des données.

Les contraintes matérielles des smartphones entraînent souvent l'arrêt des modèles d'intelligence artificielle par le gestionnaire de mémoire. Au lieu de stocker l'intégralité des poids du modèle dans la RAM, ce moteur lie les données directement au support de stockage. Cette approche préserve les ressources du système tout en maintenant la puissance de raisonnement du grand modèle.

Exploitation directe des puces NPU et routage hybride

  • Cactus privilégie l'unité de traitement neural (NPU) plutôt que le processeur graphique (GPU) traditionnel.
  • L'accès direct aux puces d'Apple, Qualcomm ou MediaTek supprime les couches de traduction logicielles intermédiaires.
  • Le routeur hybride transfère les requêtes complexes vers le cloud selon un système basé sur le niveau de confiance.

Les processeurs modernes intègrent des composants dédiés aux calculs matriciels des réseaux de neurones. Le moteur est configuré pour interagir directement avec ces structures matérielles spécifiques via des modèles optimisés téléchargeables. Pour dépasser les limites de calcul des puces embarquées, le système redirige de manière transparente les tâches lourdes ou nécessitant un grand contexte vers des serveurs distants.

Mesures de latence et performances comparées sur iPhone 12 Pro

  • Une application Swift utilisant le modèle vocal Parakeet atteint une latence de 260 millisecondes en streaming local.
  • Le traitement de la transcription sur le cloud avec Gemini 2.5 Flash génère une latence moyenne de 2000 millisecondes.
  • La solution locale traite la majorité des flux tandis que l'alternative cloud gère l'analyse d'images complexes.

Les tests concrets menés sur un ancien smartphone comme l'iPhone 12 Pro valident l'efficacité du moteur en conditions réelles. La latence locale de 260 millisecondes permet un traitement fluide, tandis que le délai de deux secondes constaté sur le cloud s'explique par l'aller-retour obligatoire des données avec le serveur. Cette architecture hybride permet de réduire les coûts d'infrastructure de production en exploitant le matériel de l'utilisateur.

Community Posts

No posts yet. Be the first to write about this video!

Write about this video