Devstral 2 et Codestral : le code chez Mistral en 2026
Mis à jour le 28 juillet 2026
Le pôle code de Mistral s’articule désormais autour de deux modèles complémentaires, et la tentation est grande de les confondre : tous deux « font du code », tous deux portent un nom en -stral, tous deux figurent parmi les spécialistes de la gamme. La distinction est pourtant nette, et elle détermine directement l’architecture de vos outils de développement. Cette leçon la pose une bonne fois, puis montre comment ces deux modèles s’emboîtent avec Medium 3.5.
Deux modèles, deux métiers
| Modèle | Version | Description officielle |
|---|---|---|
| Devstral 2 | v25.12 | Modèle frontière pour agents de code, conçu pour résoudre des tâches d’ingénierie logicielle |
| Codestral | v25.08 | Modèle de pointe pour la complétion de code |
Codestral reste le spécialiste de la complétion. Son métier, c’est l’autocomplétion dans l’éditeur, le fill-in-the-middle — compléter un trou entre un préfixe et un suffixe de code existant — et la génération rapide de fonctions. C’est le modèle qu’on branche dans un IDE, où la latence compte autant que la justesse : le développeur attend sa suggestion pendant qu’il tape, pas trois secondes après.
Devstral 2 joue dans une autre catégorie : les agents. Son métier n’est pas de compléter une ligne mais de résoudre une tâche d’ingénierie logicielle de bout en bout — comprendre un ticket, naviguer dans un dépôt, modifier plusieurs fichiers, faire tourner les tests, recommencer si nécessaire. C’est le modèle qu’on met derrière un agent de développement autonome. La documentation le qualifie de « frontière » pour cette catégorie, et ce positionnement est assumé : là où Devstral 1.x explorait le terrain, Devstral 2 le revendique.
En pratique, cela signifie que la question « Codestral ou Devstral ? » se résout en une phrase : si un humain conduit et que le modèle suggère, c’est Codestral ; si le modèle conduit et que l’humain supervise, c’est Devstral 2.
Le troisième étage : Medium 3.5
Vous vous souvenez peut-être, depuis la leçon 2, que l’annonce de Medium 3.5 le 22 mai 2026 mettait en avant les agents de code distants. Cela pourrait sembler marcher sur les plates-bandes de Devstral 2 — c’est en réalité un étage supplémentaire. L’écosystème code de Mistral se lit en trois niveaux : Codestral pour compléter, Devstral 2 pour agir sur un dépôt, et Medium 3.5 pour les scénarios agentiques les plus larges, ceux qui dépassent le seul code — un agent qui lit une spécification, interroge une documentation, écrit du code et rédige le compte rendu mobilise des capacités généralistes que Medium 3.5 apporte en plus.
Ce qui change par rapport à nos cours existants
Notre cours « Codestral & Devstral » décrit la génération précédente, Devstral 1.x. Les principes que vous y avez appris — quand préférer un agent à une complétion, comment structurer les prompts de code — restent valides ; c’est la partie du cours qui vieillit bien. Ce qui a changé tient en trois faits : Devstral passe en version 2 (v25.12) avec un positionnement « frontière » assumé ; les versions antérieures de Devstral figurent désormais dans les modèles dépréciés de la documentation ; et Codestral, lui, reste sur sa branche propre (v25.08). Si vos scripts appellent une version datée de Devstral 1.x, la vérification s’impose avant que la dépréciation ne devienne une coupure.
Les deux appels, côte à côte
Le code lui-même illustre la différence de métier : Codestral s’appelle via l’endpoint FIM avec un préfixe et un suffixe, Devstral 2 via les chat completions avec une consigne de haut niveau.
# Complétion dans l'éditeur : Codestral
response = client.fim.complete(
model="codestral-latest",
prompt="def moyenne_ponderee(valeurs, poids):",
suffix="return résultat",
)
# Agent de code : Devstral 2
response = client.chat.complete(
model="devstral-latest",
messages=[{"role": "user", "content": "Corrige le bug décrit dans ce ticket et propose un patch."}],
)
Regardez ce qu’on donne à chaque modèle. Codestral reçoit le squelette d’une fonction et la ligne de retour : il doit remplir l’intérieur, rien de plus — c’est un travail de complétion pure, borné par le contexte immédiat. Devstral 2 reçoit une mission : « corrige le bug décrit dans ce ticket ». Pour y répondre, il devra raisonner sur le dépôt entier, pas sur dix lignes. Même rappel qu’ailleurs dans cette formation : les alias -latest conviennent pour explorer, mais en production, épinglez une version datée.
Source officielle : docs.mistral.ai — Models Overview
Points clés à retenir
- Codestral (v25.08) : complétion de code dans l’éditeur, endpoint FIM
- Devstral 2 (v25.12) : agents de code, ingénierie logicielle de bout en bout
- Medium 3.5 chapeaute les scénarios agentiques larges, y compris code distant
- Les anciennes versions de Devstral sont dépréciées
- Règle simple : l’humain conduit → Codestral ; le modèle conduit → Devstral 2