Un fichier plus petit qu'une icône d'application qui bat des modèles dix fois plus gros, ça sent le marketing, mais Needle 3 revendique exactement cela. Sa plus petite tranche utilisable, à 4 couches, pèse environ 8 Mo, la version complète à 20 couches fait 29 Mo. Pas d'internet, pas de saut serveur, pas d'attente — le modèle tourne directement sur l'appareil. La vidéo démonte ce titre pièce par pièce pour voir où il tient et où il force le trait.
L'équipe derrière s'appelle Cactus Compute, une petite équipe de San Francisco soutenue par Y Combinator. Leur thèse est brutale : l'intelligence adossée au cloud est puissante mais exige une connexion, coûte de l'argent à chaque appel et déplace vos données ailleurs avant de répondre. Ils construisent des modèles et un moteur d'inférence pour s'affranchir de tout cela, en plaçant l'intelligence sur le matériel dans votre main ou à votre poignet. Ce n'est pas une expérience isolée — ils livrent depuis un moment des outils open source pour le mobile et l'edge, et Needle en est à sa troisième génération.
La lignée montre une itération rapide. Needle 1 est arrivé plus tôt cette année comme un modèle de 26 millions de paramètres présenté comme une tranche distillée de la capacité d'appel d'outils de Gemini, assez petit pour un téléphone d'entrée de gamme et totalement ouvert dès le premier jour. Needle 2 est passé à 45 millions de paramètres tout en restant à 14 Mo sur disque, avec une fenêtre glissante de 256 jetons et des définitions d'outils épinglées comme références fixes, plafonnant la mémoire à environ 28 Mo quelle que soit la durée de la conversation. L'équipe était claire à l'époque : c'était un spécialiste, pas un généraliste — pas fait pour les longues discussions ou les essais, mais pour choisir la bonne fonction et remplir correctement les arguments.
La traction du projet suggère qu'il ne s'agit pas d'une publication jetable. Le dépôt GitHub dépasse 11 300 étoiles avec plus de 700 forks et des dizaines de contributeurs ; la licence est récemment passée de MIT à Apache 2.0 et le journal des commits montre des corrections du moteur et de la gestion d'état interne arrivées ces derniers jours. Dix-sept versions étiquetées et une activité quotidienne signalent une attention soutenue plutôt qu'un simple lancement unique.
Le signal externe le plus fort vient du déploiement. Pebble, la société derrière les montres connectées et l'anneau sans écran Pebble Index Ring, fait déjà tourner Cactus Needle dans son application. L'argument du fondateur est simple : un anneau sans écran doit exécuter une commande vocale à chaque fois, avec ou sans connectivité, donc ils font tourner le modèle localement au lieu de dépendre du cloud. L'empreinte reste minuscule tandis que les performances tiennent — un vrai test produit au-delà des tableaux de benchmarks.
Needle 3 prétend couvrir trois tâches dans un seul modèle, tout sur l'appareil. La première est l'appel d'outils : on donne au modèle les fonctions exposées par votre application avec leurs descriptions, et il lit ce que dit l'utilisateur et décide quelle ou quelles fonctions appeler et quels arguments remplir. Si une seule phrase demande deux choses, il renvoie deux appels dans le bon ordre ; si rien ne correspond, il renvoie une liste vide au lieu de deviner, pour que l'application sache ne rien faire plutôt que faire la mauvaise chose.
L'exemple concret de la vidéo rend cela clair : dire « Baisse la chambre et ferme à clé » à une application domotique devient deux appels — un pour baisser les lumières, un pour verrouiller les portes — exécutés immédiatement sur l'appareil sans aller-retour vers un hub ou le cloud. Cette exécution hors ligne instantanée est exactement le moment pour lequel Needle est conçu, surtout quand les commandes vocales ne doivent jamais être perdues parce que le réseau est tombé.
La deuxième tâche est l'extraction structurée. Vous déclarez la forme voulue, vous passez un texte brouillon, et Needle renvoie les champs exacts sous forme de données typées. Extraire un nom de fournisseur, un montant total et une date d'échéance d'une facture, ou des détails clés d'une confirmation de réservation, d'une notification téléphonique ou d'un formulaire, sont les exemples canoniques. La fiabilité vient d'une grammaire de décodage compilée à partir du schéma qui contraint la génération, garantissant que la sortie se parse et reste dans les valeurs autorisées. L'équipe note que cette approche se généralise à la classification, puisqu'un enum transforme le même mécanisme en étiqueteur.
La troisième tâche est le plongement de texte. Le même modèle peut transformer une phrase en vecteur — une empreinte numérique du sens — pour que l'application puisse chercher, associer et router entièrement sur l'appareil. Cela peut être trouver la bonne note parmi des centaines, choisir l'outil le plus proche d'une demande vague, ou remarquer que deux alertes disent la même chose et les fusionner. Sur une montre où l'espace d'écran et l'attention sont rares, garder cette logique en local est particulièrement précieux ; sinon chaque requête paie un aller-retour cloud.
Regrouper trois capacités habituellement séparées dans un seul petit binaire, si cela tient, supprime une vraie complexité pour les développeurs. Ce qui distingue Needle 3, c'est ce que Cactus appelle l'échelle d'intelligence : un seul jeu de poids où chaque profondeur de 2 à 20 couches est elle-même un modèle complet et utilisable, chacun plus capable que celui du dessous. Un développeur peut livrer une tranche de 4 couches à 8 Mo et 29 millions de paramètres pour une montre, ou la version complète de 20 couches à 29 Mo pour un téléphone haut de gamme, le tout issu de la même session d'entraînement. Les profondeurs sont entraînées ensemble pour que les sous-réseaux plus petits héritent de la capacité du processus complet, et chaque profondeur peut ensuite être affinée indépendamment.
Plusieurs paris architecturaux rendent cela possible. Le bloc feed-forward standard est remplacé par un MLP Monarch Hadamard, l'attention utilise une grouped-query attention avec embeddings de position rotatifs et de légères convolutions causales, et la pièce la plus inhabituelle est ce que Cactus appelle un engram — une recherche en mémoire de hachage où une grande part des paramètres vit sous forme de motifs mémorisés plutôt que de calcul actif, ce qui explique qu'un modèle de 121 millions de paramètres se comporte computationnellement plus près d'un modèle de 50 millions. De multiples hyper-connexions parallèles laissent aussi l'information circuler sur plusieurs voies à la fois. Ensemble, Cactus affirme que ces choix réduisent les opérations en virgule flottante par jeton de plus de deux fois par rapport à un transformateur standard de même forme, ce qui se traduit directement par moins de consommation de batterie et moins de chaleur. L'équipe note honnêtement que le partage de poids entre tailles n'est pas nouveau en recherche ; ce qui semble nouveau, c'est de le livrer aussi abouti pour les tout petits appareils qu'ils visent.
Avant d'accepter le titre, il aide de voir comment il a été mesuré. Pour l'appel d'outils, Cactus a utilisé Mobile Actions avec 961 lignes de commandes téléphoniques mappées sur des intents Android, DroidCall avec 200 lignes où certaines requêtes exigent deux appels dans le bon ordre, et Berkeley BFCL v4 avec 3 641 lignes qui vérifie aussi l'abstention d'appel quand aucun outil ne s'applique. Pour l'extraction, ils ont utilisé DSDC8, Snips Gold et SNIPS 7way, notés en micro-F1 de champs. Le protocole de comparaison compte : les baselines tournaient en 16 bits complet via un moteur standard, DeepSeek V4 Flash était interrogé via son API cloud, et les propres sous-réseaux de Needle à 20, 16, 8 et 4 couches tournaient comme les vrais binaires quantifiés en 2 bits livrés aux développeurs. Needle est donc mesuré dans sa forme la plus compressée et livrable, tandis que les baselines sont mesurées à leur plus fort et sans compression. La vidéo présente cela comme une réponse équitable à « ce que vous livreriez aujourd'hui », tout en signalant que ce n'est pas une comparaison de compression à conditions égales.
Dans ce cadre, le titre affirme que Needle 3 surpasse des modèles dix fois plus grands sur les tests d'appel d'outils mobiles et garde le rythme avec des modèles deux à trois fois plus grands sur l'extraction. L'affirmation plus tonitruante « passe DeepSeek V4 Flash » est plus étroite : l'affinage sur le jeu DroidCall via la Cactus Platform fait gagner à chaque sous-réseau de 18 à 36 points, et à partir de 4 couches, la tranche affinée passe DeepSeek V4 Flash sur DroidCall et Mobile Actions. Sur Mobile Actions, l'instantané est DeepSeek V4 Flash 88,4, Needle 3 complet 20 couches 86,0, LFM2.5 1.2B 82,4, Qwen3.5 0.8B 76,0, FunctionGemma 270M 65,1 et le modèle embarqué d'Apple 57,6. Ce n'est pas une affirmation qu'un modèle de 29 millions de paramètres réfléchit mieux qu'un modèle de pointe en général ; c'est une victoire de tâche étroite après affinage, différente de battre un modèle de pointe frontalement, mais réellement utile si votre application n'a besoin que de cette tâche étroite, de façon fiable et hors ligne.
La prise en main est délibérément simple. On installe le paquet Python, on récupère le modèle une fois depuis Hugging Face et on le met en cache localement, puis on décore une simple fonction Python — sa signature fournit les types d'arguments et sa docstring devient la description que le modèle lit. Un seul appel run gère la boucle : Needle choisit l'outil approprié, exécute votre fonction, incorpore la valeur renvoyée et renvoie une réponse consolidée avec le résultat de l'exécution. Quand une description seule ne suffit pas, les triggers aident : des expressions régulières comparées à l'énoncé de l'utilisateur peuvent verrouiller le décodage sur un outil spécifique et garantir un appel même sous le seuil de confiance normal, utile pour des phrases comme « allume les lumières » qui ne doivent jamais être manquées ou mal routées. Pour l'extraction, le flux est symétrique : déclarer la forme avec un modèle Pydantic et appeler extract avec le texte brouillon et la forme, pour obtenir un objet typé sans parsing manuel. Chaque réponse revient comme un unique objet JSON cohérent avec les appels de fonctions, une trace de raisonnement rédigée, un score de confiance calibré et des chiffres de performance comme la vitesse de prefill et de decode plus la mémoire crête. La tête de confiance a un plancher intégré à 0,1 — tout ce qui est en dessous est déplacé vers un champ suppressed-calls au lieu d'être exécuté — et Cactus suggère un usage à trois niveaux : au-dessus d'environ 0,7 exécuter immédiatement, au milieu montrer et confirmer, et quand rien n'est renvoyé le traiter comme un refus car le modèle n'a trouvé aucun outil applicable.
La couverture est exceptionnellement large. Cactus livre des moteurs préconstruits de moins de 1 Mo chacun pour macOS, cinq architectures Linux, Windows, trois architectures Android, iOS, tvOS, watchOS, une build WebAssembly pour navigateur et même un composant WASI pour des cibles embarquées spécialisées. Cette ampleur signale une intention de s'intégrer dans presque toute catégorie d'appareils, pas seulement les téléphones. Les poids de Needle 3 sont sur Hugging Face et le code source complet plus le moteur sont sur GitHub, libres à télécharger et exécuter. Le business vit un étage au-dessus : la Cactus Platform propose des jeux de données curés, la quantification 2 bits qui réduit le modèle livré, la conception et le suivi d'évaluations, et une infrastructure d'affinage pleine profondeur sur le pipeline propre de Cactus. Autrement dit, le modèle ouvert gratuit est un excellent point de départ, et la plateforme payante est là où une équipe le façonne à ses propres outils et cas d'usage sans construire une pile d'entraînement de zéro. Ce schéma open-core plus infrastructure payante tend à être plus sain qu'une version gratuite sans chemin de revenus — cela donne à Cactus une incitation à continuer d'améliorer Needle parce que les revenus dépendent des développeurs qui veulent aller plus loin, pas seulement télécharger une fois.
Commentaire de l’IA
""Ce qui me frappe le plus avec Needle 3, ce n'est pas seulement la taille, mais la façon dont chaque choix de conception est mesuré en batterie et en chaleur ; l'échelle d'intelligence traînait dans les papiers de recherche depuis des années, et Cactus l'a rendue livrable et mesurable sur une vraie montre.""
Évaluation de l’IA
En défendant l'argument adverse, un petit spécialiste qui bat un grand généraliste sur une tâche étroite n'a rien de surprenant — c'est le résultat attendu. DeepSeek V4 Flash est entraîné pour le chat large, le code, le raisonnement et le long contexte ; sur des suites d'intentions téléphoniques de 961 lignes pour Mobile Actions et 200 lignes pour DroidCall, l'essentiel de cette ampleur reste inutilisé. Prendre un spécialiste de 29 millions de paramètres, l'affiner sur cette même distribution étroite pour un gain de 18 à 36 points puis comparer sur la même suite penche naturellement vers le spécialiste. Cela ne rend pas la victoire vide de sens ; pour un produit qui n'a besoin que de cette tâche étroite hors ligne, appeler un grand modèle général est simplement du gaspillage.
Deux limites méritent du poids. D'abord, tous les scores de Needle dans le tableau sont mesurés via le vrai binaire quantifié en 2 bits, tandis que les baselines sont mesurées en 16 bits complet. C'est le bon choix pour « ce que vous livrez aujourd'hui », mais ce n'est pas une comparaison à compression égale. Une architecture qui perd peu en 2 bits pourrait gagner encore plus en 16 bits, ou l'inverse pourrait être vrai. Ensuite, Needle brille à l'intérieur de sa distribution d'entraînement — actions d'appareils grand public pour la maison connectée, le mobile et les wearables, plus le remplissage structuré de champs. En dehors, les gains s'estompent : sur les surfaces d'appel non Python et les catégories d'API d'entreprise de BFCL v4, la généralisation baisse, l'écart se concentrant dans les tranches SDK Java et JavaScript où le jeu d'entraînement n'est jamais allé.
Sur la vérifiabilité, lisez le tableau avec équilibre. Les 11 300 étoiles sur GitHub et le déploiement en production dans l'anneau Pebble sont deux signaux hors benchmarks et tous deux pointent positivement, montrant de la maintenance et une confiance produit au-delà d'un graphique. Pourtant, la curation des benchmarks elle-même est menée par l'entreprise, et la suite d'une entreprise sera toujours clémente envers son propre modèle. Le corpus de pré-entraînement de 115 milliards de jetons et les détails du pipeline Cactus Quants 2 bits restent propriétaires, rendant une réplication externe exacte difficile. Les 18 à 36 points supplémentaires venus de l'affinage côté plateforme posent une question légitime : le même gain apparaîtrait-il avec les mêmes données hors de la plateforme ?
La conclusion pratique tombe sur un seuil clair. Si vous avez besoin qu'une commande vocale ou un court texte devienne une action d'appareil fiable hors ligne — maison connectée, wearable, robot ou produit de classe microcontrôleur — Needle 3 est un sérieux prétendant, surtout avec un JSON garanti par grammaire, une tête de confiance calibrée et des triggers regex pour les phrases à ne jamais manquer. Si vous avez besoin de longue conversation, de Q&A ouvert, d'écriture créative ou d'une large couverture d'API au-delà de Python, ce n'est pas cet outil et Cactus ne le présente pas comme tel. La décision la plus saine n'est pas de choisir sur le seul 86,0 de Mobile Actions mais de mesurer directement avec vos propres définitions d'outils et vos propres textes de factures et notifications entre la tranche 4 couches et la tranche 20 couches.
Sources
6 liens ; aucun autre article publié ne les cite. Stories sharing a link do not confirm each other; a source's origin is not inferred from how often it is cited.
- @youtube https://www.youtube.com/watch?v=qiZITfI0wQE
- @cactuscompute https://cactuscompute.com/needle
- @huggingface https://huggingface.co/Cactus-Compute/needle3
- @github https://github.com/cactus-compute/needle
- @gittrend https://gittrend.io/repo/cactus-compute/needle
- @cactuscompute https://cactuscompute.com/
needle 3 · cactus compute · ia sur appareil · échelle d'intelligence · ia en périphérie