Nemotron-Cascade 2 de NVIDIA atteint le niveau medaille d'or en maths et en code avec un MoE de 30B n'utilisant que 3B de parametres actifs

Nemotron-Cascade 2 est un modele Mixture-of-Experts de 30B qui n’active que 3B de parametres par passe. C’est le deuxieme modele open-weight a atteindre le niveau medaille d’or a l’IMO 2025, l’IOI 2025 et aux Finales mondiales de l’ICPC - apres DeepSeek a 671B, soit plus de 20 fois la taille. La technique principale est le Cascade RL : un apprentissage par renforcement sequentiel domaine par domaine, ou chaque domaine (maths, code, suivi d’instructions, agents SWE) dispose de ses propres hyperparametres sans destabiliser les autres. L’ajout novateur est la Multi-Domain On-Policy Distillation (MOPD) : quand une etape de Cascade RL provoque une regression sur d’autres benchmarks, on distille a la volee depuis le meilleur modele enseignant intermediaire pour ce domaine. Sur AIME 2025, MOPD a atteint les performances de l’enseignant en 30 etapes ; GRPO n’atteignait que 91.0 apres le meme nombre d’etapes. ...

GLM-OCR : un spécialiste du parsing de documents 0.9B qui bat des modèles 235B

GLM-OCR est un modèle multimodal OCR de 0.9B qui atteint 94.62 sur OmniDocBench V1.5, se classant premier malgré sa taille compacte. Développé par Zhipu AI, il bat Qwen3-VL-235B (260× plus de paramètres) et Gemini-3 Pro sur les benchmarks de parsing de documents. Le modèle combine un encodeur visuel CogViT de 0.4B avec un décodeur GLM de 0.5B. Son innovation clé est la Prédiction Multi-Jeton (MTP), qui prédit 10 jetons par étape au lieu d’un seul. Pour l’OCR—une tâche déterministe—vous copiez des caractères, pas vous échantillonnez du texte créatif. Cela offre un débit environ 50% plus élevé que le décodage standard. ...

Le serveur MCP Colab de Google permet a n'importe quel agent IA de creer et d'executer des notebooks dans le cloud

Google a publie un serveur MCP open source pour Google Colab. N’importe quel agent compatible MCP - Claude Code, Gemini CLI, ou un agent personnalise - peut maintenant controler un notebook Colab par programmation : creer des cellules, ecrire et executer du code, installer des dependances, reorganiser le contenu. La configuration tient en un seul bloc : "mcpServers": { "colab-mcp": { "command": "uvx", "args": ["git+https://github.com/googlecolab/colab-mcp"], "timeout": 30000 } } La motivation est concrete : les developpeurs copiaient du code depuis leur terminal vers des cellules Colab pour l’executer ou visualiser des donnees. Ce changement de contexte brise la concentration. Avec ce serveur, l’agent ecrit directement dans un notebook ouvert - vous obtenez un artefact reproductible et executable dans le cloud plutot qu’un simple extrait de code dans votre terminal. ...

Qianfan-OCR de Baidu remplace le pipeline OCR multi-etapes par un seul modele de 4B avec Layout-as-Thought

Les pipelines OCR traditionnels enchainent au moins trois modeles : un detecteur de mise en page, un moteur de reconnaissance de texte, et un modele de langage pour la comprehension. Qianfan-OCR remplace les trois par un seul modele de 4B qui passe directement de l’image au Markdown. L’innovation cle est le Layout-as-Thought : ajouter un token <think> a n’importe quelle invite declenche une phase de raisonnement optionnelle ou le modele analyse explicitement les boites englobantes, les types d’elements et l’ordre de lecture avant de produire la sortie. C’est du Chain-of-Thought applique a la mise en page - et c’est optionnel, donc on peut le desactiver pour les documents simples a colonne unique afin de reduire la latence. ...

OpenShell de NVIDIA applique les garde-fous des agents IA en dehors du processus agent, pour qu'un agent compromis ne puisse pas les contourner

Le probleme avec les garde-fous qui vivent a l’interieur de l’agent : un agent compromis peut les contourner. Claude Code et Cursor embarquent des prompts de securite internes, mais ces protections sont dans le meme processus qu’elles sont censees surveiller. Une injection de prompt ou un skill tiers malveillant a acces au meme environnement d’execution. NVIDIA OpenShell deplace le point d’application en dehors. Il encapsule n’importe quel agent dans un conteneur isole avec des politiques YAML que l’agent ne peut ni lire ni modifier. L’acces reseau est refuse par defaut et rechargeable a chaud ; les contraintes sur le systeme de fichiers et les processus sont verouillees a la creation. L’agent ne peut pas escalader ses privileges parce que le noyau ne le permet pas - pas parce qu’on lui a dit de ne pas le faire. ...

Unsloth Studio est une interface no-code open source pour entraîner et exécuter des LLMs localement

Unsloth Studio regroupe l’inférence locale, le fine-tuning et l’export de modèles dans une seule interface web sans code. Une commande curl suffit pour l’installer; on peut ensuite exécuter des modèles GGUF ou safetensor sur Mac, Windows ou Linux sans écrire une seule ligne de code. Le volet entraînement est le principal attrait: fine-tuning 2x plus rapide avec 70% moins de VRAM sur 500+ familles de modèles (texte, vision, TTS, embeddings). LoRA, FP8 et le fine-tuning complet fonctionnent sur le matériel NVIDIA, avec support multi-GPU déjà intégré. ...

Mistral Small 4 fusionne instruct, raisonnement et code en un seul modele avec un effort de raisonnement configurable par requete

Mistral Small 4 remplace trois modeles Mistral distincts - Magistral pour le raisonnement, Devstral pour les agents de code, et Mistral Small pour les instructions par un seul modele MoE de 119 milliards de parametres (128 experts, 4 actifs, 6,5 milliards de parametres actifs par token). Le comportement se choisit par requete via un parametre reasoning_effort: reasoning_effort="none": reponses rapides style chat, equivalent a Mistral Small 3.2 reasoning_effort="high": raisonnement approfondi etape par etape, equivalent a Magistral ...

OpenViking: Une base de contexte utilisant un paradigme de système de fichiers pour les agents IA

OpenViking abandonne le stockage vectoriel RAG traditionnel et utilise plutôt un paradigme de système de fichiers. Il organise le contexte de l’agent (mémoires, ressources, compétences) sous les URI viking:// avec une structure à trois niveaux : L0 (Abstract): Résumé en une phrase pour une récupération rapide L1 (Overview): Informations essentielles et scénarios d’utilisation L2 (Details): Données originales complètes, chargées à la demande Cela permet une récupération récursive par répertoires qui verrouille d’abord les répertoires à haut score, puis affine l’exploration du contenu. La trajectoire de récupération est entièrement observable, permettant aux utilisateurs de voir exactement comment le contexte est accédé. ...

On peut forcer un LLM a ne produire que des reponses valides

YouTube vient de publier en open source un projet appele STATIC qui resout un probleme que la plupart des gens ignorent: les LLMs peuvent dire n’importe quoi, mais parfois vous avez besoin qu’ils choisissent uniquement parmi une liste specifique. Le probleme Quand un LLM genere du texte, il choisit un token (mot/chiffre) a la fois parmi un vocabulaire de ~32 000 options. C’est ideal pour la conversation, mais terrible quand vous avez besoin qu’il produise quelque chose de precis: un identifiant de produit valide, un code medical, ou une recommandation video parmi un catalogue de millions d’entrees. ...

Passer les reponses d'agents Mastra dans jq pour coloriser le raisonnement et les appels d'outils dans le terminal

L’API HTTP d’agents de Mastra retourne une structure JSON avec des steps, chacune contenant des elements content types comme reasoning, tool-call, tool-result et text. La sortie brute est dense. Commencez par l’explorer: # Appeler l'API et voir la structure brute http localhost:4111/api/agents/weather-agent/generate \ messages[0]="what's the weather in montreal?" | jq . # Obtenir uniquement la reponse finale http localhost:4111/api/agents/weather-agent/generate \ messages[0]="what's the weather in montreal?" | jq -r '.text' # Explorer ce qui se trouve dans les steps http localhost:4111/api/agents/weather-agent/generate \ messages[0]="what's the weather in montreal?" | jq '.steps[].content[] | .type' # "reasoning" # "tool-call" # "tool-result" # "text" # "reasoning" # "text" # Voir quels champs chaque type possede http localhost:4111/api/agents/weather-agent/generate \ messages[0]="what's the weather in montreal?" | jq '.steps[].content[] | select(.type == "tool-call")' Une fois la structure comprise, passez dans jq -r avec des sequences d’echappement ANSI en ligne pour coloriser chaque element: ...