Léonard Noth
ENFRDE
ia & data

Utile vaut mieuxqu'impressionnant.

J'ai entraîné des modèles, je les ai mis en production, et j'ai été celui qu'on appelle quand ils dérivent. Trois choses différentes s'appellent « IA » et méritent d'être séparées : ce qui entre dans le produit, ce qui fait tourner les données derrière, et la façon dont le logiciel lui-même s'écrit.

01

Dans le produit

Un modèle gagne sa place dans un produit en supprimant du travail qu'une personne ferait autrement à la main, pas en étant la fonctionnalité.

Chez YEPA, c'est un classifieur qui range du texte libre dans les catégories que la plateforme sait manipuler, pour que le reste du système reste du code ordinaire au comportement prévisible. C'est un petit modèle supervisé, pas un modèle généraliste hébergé : peu coûteux à exécuter, évaluable sur un jeu de test mis de côté, et quand il se trompe, il se trompe d'une manière que je peux mesurer et corriger par réentraînement.

Mon travail de master, SAFE, appliquait le même réflexe à l'échelle de la recherche : extraire la portée temporelle, le sentiment et des émotions plus fines de l'actualité financière, puis vérifier la séparabilité avant d'y croire. Noté 6/6, publié intégralement.

99.6%
classification temporelle
98.8%
sentiment
6 501
échantillons vérifiés à la main
02

Dans la chaîne de traitement

L'usage intéressant d'un grand modèle n'est pas de répondre à des questions. C'est d'être un opérateur parmi d'autres dans une chaîne qui devra tourner à nouveau le mois prochain et produire la même chose. Chaque étape est numérotée, écrit son résultat sur disque, et peut être relancée seule.

  1. 00

    Brut → catégories

    Regex et règles d'abord. Ce qu'une passe déterministe peut corriger ne devrait pas coûter un appel de modèle.

  2. 01

    Nettoyage assisté

    Le LLM ne traite que ce que les règles n'ont pas su faire : entrées malformées, langues mélangées, encodages cassés.

  3. 02

    Filtrage

    On écarte ce que le nettoyage a vidé. Une étape qui supprime du contenu en silence est une étape qu'on ne remarque pas.

  4. 03

    Entités & reformulation

    Détecter noms, lieux, institutions, puis reformuler autour d'eux pour que le classifieur apprenne la forme, pas la personne.

  5. 04

    Mise en forme

    Fixer le schéma avant de générer. Typé en entrée, typé en sortie.

  6. 05

    Augmentation

    Générer des variantes pour les classes minoritaires seulement, mesuré sur l'équilibre des classes, pas appliqué à l'aveugle.

  7. 06

    Embeddings

    Une seule passe d'embedding sur le jeu final, mise en cache, pour que réentraîner ne coûte presque rien.

Le résultat est un classifieur Keras assez petit pour être réentraîné sur un portable. Le coût n'a jamais été l'entraînement. C'était de rendre les données honnêtes.

03

Dans l'atelier

Je développe avec des agents de code tous les jours. Ça ne marche que parce que les contraintes sont écrites et que les garde-fous sont réels.

Le « vibe coding », c'est accepter du code qu'on n'a pas lu. Ce que je fais ressemble plutôt à tenir une base de code qui documente ses propres conventions assez bien pour qu'un nouveau venu compétent (humain ou non) puisse les suivre, puis à relire le résultat comme n'importe quelle autre contribution.

Des budgets, écrits

Le CLAUDE.md du dépôt fixe des limites de taille par type de fichier (200 lignes pour une page, 150 pour un composant, 100 pour un hook) en précisant que ce sont des repères. Un composant cohérent de 210 lignes passe. Un de 150 lignes qui fait trois choses sans rapport, non.

Des procédures, pas des prompts

Le travail récurrent devient une skill écrite que l'agent suit. Celle qui extrait une fonctionnalité vers le paquet partagé encode les pièges de quatre migrations réelles : extraire vers le partagé, brancher la seconde app, refaire la première en simple enveloppe, et garder chaque changement additif pour que l'app déjà dessus ne casse pas.

Des branches isolées

Le travail des agents arrive sur ses propres branches et se lit avant d'être fusionné. La même revue que pour n'importe qui d'autre.

Des barrières dures

Les déploiements sont validés par un humain, point. C'est la première règle du fichier. Rien n'est automatique, et aucun secret n'est jamais mis en staging par un agent.

C'est la même approche qui a produit Atelier, ma suite de production vidéo, et le site que vous lisez.

Où je place les limites

Les règles avant les modèles

Si une regex suffit, on ne demande pas à un modèle. Moins cher, et ça échoue de façon lisible.

Mesuré, pas supposé

Un contrôle de séparabilité avant l'entraînement. Un jeu de test après. Un chiffre que je défendrais devant un directeur de mémoire.

Quelqu'un signe

Rien n'atteint la production parce qu'une machine était confiante. Déployer est une décision que quelqu'un prend.