Notizie IA Logo

AITalk

Actualités et analyses sur l'intelligence artificielle

Timestral-209M : prédire sans étudier

Generative AIBusinessTraining

timestral.jpg

Imaginez un entrepôt avec trois mille références et un responsable qui, le lundi matin, doit décider combien de palettes commander, combien d'employés convoquer pour le week-end, quels stocks ne jamais laisser à zéro. Personne ne lui demande de lire l'avenir. On lui demande quelque chose de plus humble et de plus utile, une estimation conditionnelle : étant donné ce qui s'est passé jusqu'à présent, quel éventail de lendemains est plausible ? Une bonne prévision n'indique pas un seul chemin, mais dessine l'éventail des chemins possibles et dit lesquels sont les plus probables.

Pendant des décennies, le métier s'est fait d'une seule façon. Les modèles classiques, comme ARIMA, en attribuent un à chaque série temporelle et n'apprennent que d'elle : ils coûtent peu, s'expliquent bien, mais repartent de zéro à chaque nouvelle série. Le deep learning, par exemple avec PatchTST, apprend de nombreuses séries ensemble, mais doit généralement être réentraîné depuis le début sur chaque jeu de données, comme l'explique le blog même de Mistral. Les modèles fondationnels, ou *foundation models, changent la recette : ils sont pré-entraînés sur un corpus énorme puis appliqués sur des données jamais vues, sans autre étude. Cela s'appelle le zero-shot, zéro tentative d'entraînement sur le cas spécifique.*

Sur l'ampleur réelle de cette révolution, les avis sont plus prudents que les communiqués. Rob Hyndman, l'un des noms les plus autorisés en la matière, écrit que ces modèles représentent un changement réel dans la manière dont les prévisions sont produites, mais pas encore une démonstration générale d'une plus grande précision. Cet article se situe entre ces deux positions : il présente Timestral-209M de Mistral, explique son fonctionnement et rapporte un test maison réalisé sur des données de ventes réelles, honnête mais sans prétention de benchmark.

En une phrase : Timestral est un signal sérieux que la prévision devient généraliste, mais il ne prouve pas qu'un modèle fondationnel batte toujours un bon modèle statistique calibré sur le cas spécifique.

Anatomie de Timestral

Timestral est une famille de quatre modèles de 5, 28, 123 et 209 millions de paramètres, publiés par Mistral mi-octobre 2026. Les paramètres sont les boutons internes que le modèle ajuste pendant l'entraînement : 209 millions, c'est beaucoup pour un modèle statistique classique, très peu pour un modèle linguistique moderne. Le format a été choisi pour tourner même sur un processeur ordinaire, en entreprise ou dans des environnements isolés du réseau.

Quatre chiffres de la fiche officielle aident à comprendre ce qu'il peut faire. Le contexte, c'est-à-dire la quantité d'histoire que le modèle lit, atteint 32 768 pas temporels. L'horizon, c'est-à-dire jusqu'où il regarde vers l'avenir, atteint 1 024 pas en une seule fois, au-delà desquels il procède par blocs en réinjectant sa propre médiane comme s'il s'agissait d'une histoire réelle. Les quantiles sont des seuils qui décrivent l'incertitude : le quantile 0,95 est la valeur que le modèle estime dépassée seulement cinq fois sur cent, et Timestral en produit 21, de 0,01 à 0,99. Enfin, il accepte une ou plusieurs séries ensemble, ainsi que des covariables, informations de contexte connues à l'avance comme le calendrier, les prix ou les jours fériés.

Le modèle est un transformer à 24 couches et une dimension interne de 768, qui ne lit pas les valeurs une par une mais par patches, des fragments de 32 pas, chacun accompagné d'un indicateur de manques dans les données. Il combine deux types d'attention, c'est-à-dire la capacité à peser quelles informations comptent : l'attention temporelle, qui regarde quels moments passés sont pertinents, et l'attention inter-variables, qui regarde comment les séries s'influencent entre elles. Selon le blog, la méthode appelée DHF garde l'intégralité de l'histoire visible et ajoute des jetons de prévision séparés, afin que chaque valeur observée serve à la fois de cible et de contexte. L'attention sur les covariables, quant à elle, ne laisse passer l'information que des covariables vers les cibles, pour éviter que le futur d'une série ne contamine sa propre prévision.

La partie la plus surprenante est l'entraînement : la majeure parte des données est synthétique, des processus avec tendances, saisonnalités et bruits générés de toutes pièces, dans une première phase avec un contexte de 8 192 pas, suivie d'une phase combinant données réelles et synthétiques avec un contexte quatre fois plus long. C'est l'opposé de Funes ou la Mémoire, le personnage de Borges qui se souvient de chaque feuille de chaque arbre et ne sait précisément pas généraliser : ici, on enseigne les formes du temps, pas les événements individuels. Ce que contient exactement le corpus réel n'est pas divulgué. Le rapport technique est annoncé comme « à venir ».

Deux rappels pratiques. Le statut est en aperçu public. La licence, une licence MIT modifiée, n'est pas open source au sens strict : elle refuse l'utilisation à toute entité ou employeur dépassant 20 millions de dollars de chiffre d'affaires mensuel consolidé mondial le mois précédent, sauf accord commercial avec Mistral. Ce n'est pas une redevance, c'est un seuil d'entrée, et cela vaut également pour les œuvres dérivées.

Promesses à vérifier

Mistral affirme que Timestral-209M se classe premier parmi les modèles pré-entraînés et zero-shot sur trois classements publics : GIFT-Eval, TIME et fev-bench, battant l'état de l'art précédent avec deux tiers des paramètres. Sur la fiche technique, les chiffres sont les suivants : sur GIFT-Eval, l'erreur MASE est de 0,658 contre 0,661 pour t0-gamma, et le CRPS de 0,446 contre 0,452. Le MASE mesure l'erreur par rapport à une méthode naïve de référence, tandis que le CRPS évalue la qualité de l'ensemble de la distribution prédite : pour les deux, plus c'est bas, mieux c'est. Sur fev-bench, le score SQL est de 50,39 contre 49,42 pour t0-gamma. Les marges sont réelles mais faibles, et ce sont des résultats déclarés par le fabricant : Mistral publie le code précisément pour les reproduire, mais une réplication indépendante n'existe pas encore.

En ce qui concerne l'efficacité, la déclaration est précise. Sur un processeur serveur à 8 threads, pour prédire un jour à l'avance à partir de trois semaines d'historique à pas de 15 minutes, il faut 10 millisecondes avec le modèle à 5 millions de paramètres et 140 ms avec la version à 209M. Le modèle 28M est cinq fois plus rapide, tandis que le 123M reste à 0,2 % du score maximal avec trois quarts de la latence. Ce sont des mesures effectuées dans des conditions très précises, différentes de celles de notre test, et elles doivent être lues comme telles.

Il y a ensuite le problème fondamental des classements, où la lecture de Hyndman est utile. Il rappelle les analyses de Christoph Bergmeir, selon lesquelles les comparaisons avec les méthodes statistiques sont souvent faites avec des versions peu optimisées. Il cite également l'étude de Meyer et ses collègues : sur 401 jeux de données utilisés par 22 modèles fondationnels publiés, seuls 6 % n'étaient jamais apparus dans les données d'entraînement d'un quelconque modèle. Quiconque a vu le film culte Primer sait ce qui se passe quand une information voyage dans le temps sans que personne ne s'en rende compte. Mistral elle-même reconnaît le problème : sa plateforme Forge promet un contrôle total sur les données d'entraînement, afin que rien de ce que vous testez sur votre propre historique n'ait déjà été vu par le modèle. tabella1.jpg Capture d'écran du tableau de bord montrant la vue d'ensemble des résultats de notre test.

Comment nous avons réalisé le test

Le test n'est pas un simple traitement isolé, mais une petite chaîne d'étapes : on part des fichiers originaux, on prépare les données, on génère les prévisions, on les compare aux valeurs réelles et on produit des chiffres, des rapports et des graphiques. Chaque étape enregistre son résultat sur disque et la suivante repart de là. Cela rend le travail vérifiable et répétable, et permet de l'interrompre sans perdre ce qui a déjà été accompli. La séquence est la suivante.

1. Un environnement fermé.

Tout d'abord, nous avons confiné l'expérience dans un seul dossier de projet. Le script de lancement crée l'environnement Python local (.venv), y installe les dépendances et dévie le cache, les fichiers temporaires et les identifiants à l'intérieur du projet, de sorte que rien ne se retrouve dans les dossiers système. Le jeu de données M5 est téléchargé depuis Kaggle et les trois fichiers nécessaires —ventes, calendrier et prix— sont copiés dans data/raw/m5/. Le modèle Timestral-209M est téléchargé une fois depuis Hugging Face et enregistré dans models/timestral/. Si les fichiers sont déjà présents, ils sont réutilisés. Un test automatique vérifie que les répertoires, caches et chemins restent strictement à l'intérieur du projet.

2. Préparation des données.

Avec les trois fichiers locaux prêts, nous avons construit le jeu de données du test. Parmi plus de 30 000 séries produit-magasin, nous en avons choisi 300 par échantillonnage aléatoire stratifié (graine 42) : 120 à fort volume, 120 à volume moyen et 60 à faible volume ou intermittentes. Le volume est mesuré uniquement sur la fenêtre historique la plus ancienne, de sorte que le choix ne dépend pas du futur. Les séries sans ventes dans cette fenêtre ont été exclues ; les jours manquants ont été mis à zéro, faisant de chaque série une séquence quotidienne continue, une ligne par jour. Pour chaque série, nous avons ajouté les informations connues à l'avance : jour de la semaine, mois, week-end, événements, jours SNAP et prix, ce dernier seulement s'il était disponible pour toutes les séries et sur tout l'horizon. Le résultat est enregistré au format Parquet, un format compressé et rapide à relire.

3. Le découpage temporel.

Nous avons ensuite divisé la période en trois fenêtres consécutives de 28 jours, du 1er février au 24 avril 2016. Pour chacune, nous avons conservé 365 jours d'historique et nous avons mis de côté les 28 jours à prédire : ces valeurs réelles ne sont jamais entrées dans la phase de prévision, mais seulement dans celle d'évaluation. Les fenêtres sont du 1er au 28 février, du 29 février au 27 mars et du 28 mars au 24 avril. Le code enregistre les dates de chaque fenêtre dans un fichier de configuration et vérifie que les prévisions couvrent exactement les 28 jours prévus. Trois fenêtres au lieu d'une évitent de tout faire reposer sur un mois particulier : si le résultat se maintient sur les trois, il est nettement plus crédible.

4. L'inférence zero-shot.

Ici, le modèle entre en scène. Nous chargeons Timestral-209M à partir des fichiers locaux, sans entraînement supplémentaire, et nous l'utilisons une série à la fois. Pour chaque série, nous lui fournissons les 365 jours de ventes et les covariables connues pour toute la période (365 jours passés plus 28 futurs) ; le modèle renvoie les 28 jours sous la forme de cinq quantiles (5 %, 25 %, 50 %, 75 %, 95 %). Les prévisions sont calculées par lots de huit séries, sur processeur, en mode inférence seule ; les valeurs négatives sont ramenées à zéro car les ventes ne peuvent pas être négatives. Chaque résultat est enregistré avec l'ID de la série, la date, la fenêtre, les quantiles et le temps de calcul. Si l'exécution s'interrompt, le programme reprend à partir des séries manquantes.

5. Évaluation et comparaison.

Une fois les prévisions fixées, nous les associons aux valeurs réelles des 28 jours et calculons les métriques d'erreur : MAE, RMSE, WAPE, MASE, biais, pinball loss, couverture et largeur des intervalles. Nous faisons de même avec une référence simple, la prévision saisonnière naïve, qui répète la valeur du même jour de la semaine précédente. Les métriques sont agrégées par série, par niveau de volume, par fenêtre et au global ; les intervalles de confiance à 95 % proviennent de 1 000 rééchantillonnages des séries. Les résultats se retrouvent dans six fichiers CSV : par série, agrégé, référence, niveaux de volume, intervalles de confiance et résumé. La prévision ponctuelle utilisée pour le MAE, le RMSE, le WAPE et le biais est la médiane.

6. Rapport et tableau de bord.

La dernière étape transforme les chiffres en un document lisible. Un module génère automatiquement un rapport en Markdown contenant objectifs, jeu de données, protocole, métriques, comparaison avec la référence, meilleurs et pires cas et limites. Un tableau de bord Streamlit lit les mêmes fichiers et affiche quatre onglets : vue d'ensemble, série par série, analyse agrégée et rapport narratif. Les graphiques sont réalisés avec Plotly et montrent l'historique, les valeurs réelles, la médiane prédite et les bandes d'incertitude à 50 % et 90 %. Tout se régénère avec une seule commande : le script de lancement exécute la chaîne de traitement puis ouvre le tableau de bord.

C'est là tout le sens de la démarche : ne pas se contenter de décrire un modèle, mais rendre une expérience vérifiable. La chaîne de traitement consiste en une séquence de choix explicites (quelles séries, quel historique, quelles variables, quelle référence) et chacun d'eux peut être inspecté, refait ou contesté. Les chiffres qui suivent valent ce que vaut le processus qui les a produits : c'est pourquoi le découpage temporel —décidé avant de voir le moindre résultat— est l'étape qui donne tout son sens au reste. grafico1.jpg Capture d'écran du tableau de bord ; la dernière partie compare les données réelles et les données prédites par Timestral.

Le test sur M5

Avertissement honnête : il s'agit d'un test maison, pas d'un benchmark formel, et il n'est pas indépendant au sens académique du terme. M5 est une compétition de prévision sur les ventes unitaires de Walmart, comprenant 30 490 séries produit-magasin et 1 941 jours entre 2011 et 2016. La métrique officielle de la compétition, le WRMSSE, n'est pas calculée ici, les résultats ne sont donc pas comparables directement avec le classement d'origine.

Nous avons extrait 300 séries par échantillonnage aléatoire stratifié (graine 42) : 120 à fort volume, 120 à volume moyen et 60 à faible volume ou intermittentes, avec des seuils calculés uniquement sur la période historique la plus ancienne afin de ne pas faire dépendre l'échantillon du futur à prédire. Les séries à volume nul ont été exclues, les jours manquants mis à zéro. Trois fenêtres consécutives de 28 jours, du 1er février au 24 avril 2016, chacune avec 365 jours d'historique. Le modèle a fonctionné en zero-shot et en mode univarié, sur processeur, avec des covariables connues à l'avance : jour de la semaine, mois, week-end, événements, jours SNAP (bons alimentaires) et prix (supposé connu pour tout l'horizon). Aucune promotion, inventaire ou donnée météo. La référence est la prévision saisonnière naïve, qui répète la valeur du même jour de la semaine précédente. Les valeurs réelles de l'horizon n'ont jamais été fournies au modèle et les prévisions ont été tronquées à zéro.

Examen des chiffres

tabella2.jpg

Le MAE est l'erreur absolue moyenne en unités vendues par jour par série, le RMSE pénalise plus lourdement les grandes erreurs. Le WAPE est l'erreur totale divisée par les ventes totales : il est important de préciser que 0,6348 ne signifie pas « une précision de 63 % », mais une erreur égale à 63 % du volume total vendu. Le MASE compare l'erreur à l'erreur moyenne d'une méthode naïve sur l'historique : 0,80 contre 1,11 pour la prévision naïve sur la même échelle. Par rapport à la référence, le WAPE s'améliore de 23,45 %, le MAE de 23,46 %, le RMSE de 19,54 % et le MASE de 27,70 %. Le sens de l'amélioration est constant sur les trois fenêtres, avec des WAPE de 0,6728, 0,6165 et 0,6154.

Il faut l'interpréter avec précaution. Les intervalles de confiance à 95 % issus du rééchantillonnage donnent pour le WAPE une plage de 0,5883–0,6917 contre 0,7610–0,9059 pour la référence, bien séparés. Pour le RMSE, les plages sont de 2,2543–4,9287 contre 2,7815–5,6903, se chevauchant largement, et le MAE rassemble un chevauchement proche : sur ces deux métriques, l'avantage statistique n'est pas démontré. De plus, les intervalles reflètent la variabilité entre séries, pas entre périodes temporelles.

Le biais mérite une attention particulière. Il mesure l'erreur moyenne signée, et une valeur de −0,5632 indique une sous-estimation systématique : sur des ventes moyennes d'environ deux unités par jour (déduites du ratio MAE/WAPE), cela représente près de 28 %, contre −0,025 pour la prévision naïve. Cela équivaut à environ 45 % du MAE. Pour qui gère des stocks, c'est le défaut le plus grave, car il conduit à des ruptures. Le rapport ne précise pas quelle prévision ponctuelle a été utilisée : s'il s'agissait de la médiane sur des séries contenant de nombreux zéros, ce serait une explication plausible, mais cela reste une hypothèse à vérifier.

Les intervalles de prévision sont conservateurs. Celui à 90 % atteint une couverture de 93,30 % —contenant la valeur réelle plus souvent que prévu—, et celui à 50 % atteint 62,62 %, douze points au-dessus du nominal, avec une largeur moyenne de l'intervalle à 90 % de 5,40 unités, soit plus du double des ventes moyennes. Sur des données discrètes et remplies de zéros, la couverture est naturellement gonflée, et sans une référence probabiliste équivalente, nous ne pouvons pas dire si les intervalles sont bons ou simplement larges.

En ventilant les résultats par volume, les conclusions deviennent plus nuancées. Sur les 120 séries à fort volume (~4 unités/jour), le WAPE est de 0,5845 contre 0,7518 —une amélioration de 22,25 %—. Sur le volume moyen (~0,8 unité/jour), il est de 0,8708 contre 1,1684 (+25,47 %). Sur les 60 séries intermittentes (~0,13 unité/jour), le WAPE est de 1,0069 contre 1,6956, une amélioration de 40,62 % qui est toutefois trompeuse : un WAPE supérieur à 1 est pire que de prédire uniquement des zéros, et la référence naïve part d'un niveau très mauvais. Dans ce segment, le MASE et le pinball loss (erreur sur les quantiles, valant 0,4066 en moyenne pour Timestral) sont plus fiables.

Les cas individuels sont plus instructifs que les moyennes. Le meilleur par WAPE est FOODS_3_042_WI_1 (0,1975, MASE 0,5069), mais un autre parmi les « meilleurs », FOODS_3_329_CA_1, affiche un MASE de 1,4251, pire que la prévision naïve : les métriques peuvent se contredire. Le pire cas, HOUSEHOLD_2_124_TX_2, présente un WAPE de 26,22 parce qu'il vend environ 0,012 unité par jour, pratiquement rien. Dans FOODS_1_110_WI_1, toute l'erreur provient d'une surestimation, probablement un produit sorti du catalogue ou en rupture de stock. Les zéros dans M5 ne signifient pas toujours une absence de demande.

Les limites restent celles annoncées : 300 séries sur plus de 30 000, 84 jours sans changements structurels, aucune covariable promotionnelle, une seule référence simple et aucune comparaison avec ARIMA, ETS ou d'autres modèles fondationnels. Concernant la contamination, M5 est public depuis 2020 et nous ne pouvons pas exclure sa présence dans les données d'entraînement. La conclusion n'est donc pas que « Timestral est le meilleur sur M5 », mais qu'il bat une règle naïve de manière cohérente dans des limites précises.

En termes simples : dans ce test, Timestral a mieux prédit les ventes du dernier mois que la règle répétant la valeur de la semaine précédente, avec environ un quart d'erreur en moins (WAPE 0,63 contre 0,83) et un avantage constant sur les trois fenêtres. Toutefois, son avantage est solide surtout sur l'erreur globale et sur le MASE, tandis que sur le MAE et le RMSE les intervalles de confiance se chevauchent et sa supériorité n'est pas démontrée. Il subsiste également une sous-estimation systématique d'environ 28 % —le défaut le plus insidieux pour la gestion de stock— et les prévisions sont nettement plus fiables sur les produits à fort volume que sur les produits intermittents, où les zéros ne font pas la différence entre absence de demande et rupture de stock. En résumé : un résultat zero-shot solide, nettement supérieur à une référence élémentaire, mais pas une preuve définitive que Timestral soit le modèle à privilégier pour des jeux de données de type M5.

Qui devrait l'utiliser, qui ne le devrait pas

Dans son blog, Mistral cite des cas d'usage comme les capteurs industriels, les flux et volumes financiers, l'énergie, la planification de la supply chain et les métriques d'observabilité des systèmes. Le commerce de détail n'est couvert ici que par notre test. Dans les contextes avec de nombreuses séries, peu de ressources statistiques et des données riches en covariables connues, la valeur est évidente : un seul modèle pré-entraîné évite de construire et de maintenir une chaîne de traitement pour chaque série. Sur la fiche technique, Timestral devance de peu Chronos-2, TimesFM-3, Toto-2.0 (dans sa version à 2,5 milliards de paramètres) et t0-gamma, la compétition reste donc ouverte. De plus, Mistral indique que son modèle de 28 millions de paramètres bat Chronos-2 (environ quatre fois plus grand) sur GIFT-Eval et TIME.

Il est moins utile dans les cas que le bon sens et Hyndman indiquent : peu de séries, relations causales connues, explicabilité obligatoire, données rares ou manque de compétences pour maintenir un modèle en production. Son conseil se résume en trois étapes : commencer par une référence statistique bien conçue, tester sur ses propres données avec des fenêtres glissantes sans se fier aux classements externes, et peser le coût total entre calcul, latence, dépendance vis-à-vis du fournisseur et faible interprétabilité. À cela s'ajoute la licence, qu'un service juridique devrait examiner avant de développer un produit commercial sur cette base.

Plus accessible, pas magique

Le goulot d'étranglement se déplace : moins sur le choix du modèle, plus sur la qualité des données, le suivi du biais et de la couverture, et la gouvernance des covariables et licences. La souveraineté, avec un déploiement local en entreprise intégrant journaux d'audit, constitue un argument supplémentaire pour les organisations ne pouvant pas envoyer leurs données à l'extérieur.

Quatre points à suivre dans les prochains mois : la sortie du rapport technique, la réplication indépendante des résultats, les cas d'usage réels en production et des comparaisons rigoureuses avec les alternatives, y compris statistiques. D'ici là, Timestral est un signal fort, pas une preuve définitive. Dans notre test, il bat une règle naïve de 23 % sur le WAPE, mais il sous-estime, présente des intervalles de prévision larges et a été évalué sur un échantillon limité.

La prévision n'est pas devenue magique. Elle est devenue plus accessible.