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.
Community Posts
No posts yet. Be the first to write about this video!
Write about this video