● Silicon.fr Télécom 📅 14/04/2026 à 16:25

Decathlon peuple les métadonnées de sa médiathèque à base de LLM

Data Science 👤 Clément Bohic
Illustration
Avoir un seul compte AWS pour l’industrialisation implique des quotas mutualisés, notamment pour l’inférence. Decathlon a dû faire avec dans le cadre de son projet Image Metadata Generation. En production depuis fin 2025, il contribue à enrichir la médiathèque de l’entreprise. Celle-ci contient près de 20 millions d’assets, de 3 types : communication, identité de marque et présentation des produits. Image Metadata Generation a englobé les photos de produits (environ 2 millions). Il s’agissait de générer des descriptions ainsi que des balises et des mots-clés SEO. Tant pour favoriser l’exploitation de ces contenus que la conformité à la directive européenne sur l’accessibilité. Inférence par lots à 300 pixels Avec les quotas partagés entre équipes (requêtes et tokens par minute), traiter 2 millions d’images à la demande aurait créé une saturation. Lire aussi : Perplexity se laisse séduire par Microsoft Foundry…sans lâcher AWS Ce ne fut pas le seul défi. Le PoC, effectué avec une centaine d’images, avait permis de valider un traitement séquentiel. Mais à l’échelle, une invocation synchrone et unitaire « était presque un antipattern », explique Lévi Bernadine, ML engineer chez Decathlon Digital. Même en parallélisant, avec les quotas partagés, on créait des goulets d’étranglement : files d’attente, timeouts, rejets… Il fallait aussi assurer une gestion d’état pour éviter qu’une erreur fasse planter tout un lot. Et maîtriser les coûts : une image en entrée consomment un nombre de tokens proportionnel à sa taille. Dans ces conditions, Decathlon a opté pour un traitement asynchrone, avec de l’inférence par lots. Ce traitement en arrière-plan ne bloque pas les ressources système des autres équipes, réduit le coût de moitié par rapport au traitement à la demande et embarque une gestion native des erreurs. En contrepartie, il a fallu gérer l’absence de garantie sur le délai d’exécution des jobs. Les images ont été redimensionnées à 300 pixels en hauteur ou en largeur (ratio conservé), avec une compression JPEG qualité 85. Les résultats étaient en moyenne 96 % plus légers que les fichiers d’origine. Un prompt, deux variantes Decathlon a expérimenté des prompts distincts pour les descriptions et les mots-clés. Constatant que les résultats étaient peu cohérents, il a finalement opté pour un prompt unique, qui avait aussi l'avantage de ne consommer qu'une requête API. Ce prompt a deux variantes, assignés selon la nature de l'image. D'un côté, les packshots produits. De l'autre, les photos de pratiques sportives (images contextuelles : on cherche à décrire l'action, l'atmosphère, l'émotion...). Prétraitement quotidien, traitement horaire Le workflow de prétraitement s'enclenche une fois par jour. « Cela correspond à la période de mise à jour des tables dans nos data lakes », confie Lévi Bernadine à l'occasion de l'AWS Summit Paris. Ses principales composantes : Localiser, dans le DAM, les assets pas encore passés dans le générateur ou mis à jour depuis Les télécharger en qualité originale via le CDN Decathlon Préparer les prompts pour les modèles Claude (Anthropic) et Nova (Amazon) Redimensionner et compresser Stocker les images, ainsi que les fichiers d'entrée (JSONL comprenant l'image compressée encodée en base64 et le prompt adapté) Suivi d'état (registre DynamoDB) Le workflow de traitement s'exécute en parallèle, toutes les heures. Il contrôle, dans le registre, les images prêtes à être traitées (statut « staging »). Elles sont groupées dans des lots de 500 à 2000 images. L'ensemble est transmis à Bedrock - avec un pont IAM - et l'API Batch pousse les résultats dans S3 (descriptions + mots-clés en anglais et en français). Airflow vérifie le statut toutes les demi-heures (timeout de 48 heures). Lorsqu'un job est terminé, le post-traitement s'enclenche et le DAM (Digital Asset Management) est mis à jour. 3200 € de coûts LLM... pour 1,2 M€ d'économies ? Ce système serverless est capable de traiter 25 000 images par jour. En matière de performances, on nous annonce des taux de validation « jusqu'à 93 % à travers différents évaluateurs et catégories d'outils ». Lire aussi : AWS active "Rainier", son cluster dédié à l’IA Image Metadata Generation facilite la recherche dans le DAM (réduction de la duplication d'images), améliore l'indexation dans les moteurs de recherche et favorise la conformité en termes d'accessibilité. Decathlon estime que le projet a le potentiel d'engendrer 1,2 M€ d'économies annuelles. À comparer aux quelque 7 M€ de frais fixes annuels qu'il supporte pour créer, corriger et traduire ces contenus. Lévi Bernadine évoque un autre cas d'usage, en cours d'exploration : l'identification de la présence de mannequins reconnaissables. Il mentionne aussi la possibilité d'A/B testing des images et des descriptions en lien avec les équipes e-commerce. En batch à 300px avec Nova Pro, il en a coûté 3229 € pour traiter les 2 millions d'images. Plus précisément, 2125 € en entrée (2,31 milliards de tokens, dont 85 % représentant les pixels de l'image) et 1104 € en sortie (300 millions de tokens). Avec Claude Sonnet 4.5, la facture se serait élevée à environ 18 000 €. À la demande et en pleine résolution (1200px), il aurait fallu compter 30 000 € avec Nova Pro et 160 000 € avec Claude Sonnet. * Sur les 2,33 milliards de tokens en entrée, 85 % représentent les pixels des images. Illustration principale générée par IA
← Retour