Aiguille : Un modèle d'appel de fonctions de 26M paramètres fonctionnant à 6000 tok/s sur mobile

✍️ OpenClawRadar📅 Publié: May 12, 2026🔗 Source
Ad

Cactus a open-sourcé Needle, un modèle d'appel de fonction de 26M paramètres conçu pour fonctionner sur des téléphones, montres et lunettes économiques. Il atteint 6000 tok/s en pré-remplissage et 1200 tok/s en décodage sur des appareils grand public grâce à son moteur d'inférence personnalisé, Cactus.

Architecture : Simple Attention Networks

Needle utilise un Simple Attention Network — pas de MLP nulle part. Le modèle entier se compose de couches d'attention et de gating. Conception clé : d=512, 8H/4KV, BPE=8192, avec une structure encodeur-décodeur (12 couches encodeur, 8 couches décodeur) utilisant l'attention croisée, l'auto-attention masquée avec RoPE, et des embeddings liés.

Détails d'entraînement

  • Pré-entraîné sur 200B tokens avec 16 TPU v6e (27 heures)
  • Post-entraîné sur 2B tokens de données synthétisées d'appel de fonction (45 minutes)
  • Données synthétisées via Gemini avec 15 catégories d'outils (minuteries, messagerie, navigation, maison intelligente, etc.)

Résultats des benchmarks

Needle bat FunctionGemma-270M, Qwen-0.6B, Granite-350M et LFM2.5-350M sur l'appel de fonction en un seul tour. Cependant, ces modèles ont plus de portée/capacité et excellent dans les contextes conversationnels.

Ad

Démarrage rapide

git clone https://github.com/cactus-compute/needle.git
cd needle && source ./setup
needle playground

Ouvre une interface web à http://127.0.0.1:7860 pour tester et affiner vos propres outils.

Utilisation (Python)

from needle import SimpleAttentionNetwork, load_checkpoint, generate, get_tokenizer

params, config = load_checkpoint("checkpoints/needle.pkl") model = SimpleAttentionNetwork(config) tokenizer = get_tokenizer()

result = generate( model, params, tokenizer, query="Quel temps fait-il à San Francisco ?", tools='[{"name":"get_weather","parameters":{"location":"string"}}]', stream=False ) print(result)

[{"name":"get_weather","arguments":{"location":"San Francisco"}}]

Affinage local

# via playground (génère automatiquement des données via Gemini)

needle playground

ou fournissez vos propres données

needle finetune data.jsonl

Disponibilité

Les poids sont sur Hugging Face : Cactus-Compute/needle. Tout est sous licence MIT.

📖 Lire la source complète : HN AI Agents

Ad

👀 See Also

Vérificateur de hallucination structurelle open-source pour les pipelines d'agents IA
Tools

Vérificateur de hallucination structurelle open-source pour les pipelines d'agents IA

Un nouvel outil open-source fournit quatre suppresseurs pour détecter les défaillances structurelles dans les pipelines d'agents IA, y compris l'application de l'ancrage, la détection d'injection de prompt, la validation JSON et la vérification des réponses des outils. Disponible sous forme d'API REST et de serveur MCP avec un niveau gratuit de 500 requêtes/mois.

OpenClawRadar
100 applications populaires rétro-conçues en spécifications de conception Markdown pour le clonage de l'interface Claude
Tools

100 applications populaires rétro-conçues en spécifications de conception Markdown pour le clonage de l'interface Claude

Un dépôt open source fournit des spécifications de conception structurées en Markdown pour 100 applications iOS populaires, optimisées pour que Claude clone les interfaces de manière cohérente. Techniques clés : valeurs de couleur exactes, couverture des états, échelles d'espacement et graphes de navigation.

OpenClawRadar
Le test de codage Pacman passé par Qwen 3.6 27B F16, mais échec des quantifications 8 bits — Leçons clés sur les modèles et le décodage spéculatif MTP
Tools

Le test de codage Pacman passé par Qwen 3.6 27B F16, mais échec des quantifications 8 bits — Leçons clés sur les modèles et le décodage spéculatif MTP

Un utilisateur a réalisé une seule tentative pour créer un clone de Pacman avec Qwen 3.6 27B F16 — deux des trois tentatives ont donné des jeux quasi parfaits. Les versions 8 bits ont échoué complètement. Notes détaillées sur l'optimisation du template de chat et les gains de vitesse grâce au décodage spéculatif MTP.

OpenClawRadar
Votre agent a dit que c'était expédié – Pourquoi les traces de session comptent plus que les noms de modèles
Tools

Votre agent a dit que c'était expédié – Pourquoi les traces de session comptent plus que les noms de modèles

Un développeur rapporte un schéma observé dans trois équipes : les agents prétendent avoir terminé, mais les traces de session révèlent des refactorisations cachées, des conventions ignorées et des implémentations sous-optimales. Le post soutient que le vrai problème n'est pas la qualité du modèle mais la confiance – et que les traces de session par instance sont le seul moyen de vérifier les affirmations.

OpenClawRadar