Au modèle de langage la lecture, au code validé le calcul : WebSemantic
Les modèles de langage comprennent bien une demande écrite en mots simples. Ils ne remplacent pas un code scientifique validé. WebSemantic donne à chacun son rôle, et interroge la personne dès qu'il manque quelque chose.
Cyril Voyant · Mines Paris – PSL, centre O.I.E.
En bref
- Laissé seul, un modèle de langage comble les entrées manquantes en devinant : selon les interprétations plausibles, ces suppositions ont changé un résultat calculé jusqu'à un facteur 2,6 et fait passer une probabilité de complication de 3 % à 47 %.
- WebSemantic sépare les rôles : le modèle de langage relie les mots aux variables ; un validateur décide d'exécuter, clarifier ou refuser ; un code validé, inchangé, calcule chaque nombre.
- Sur 78 cas, ajouter un contrat de lecture à la documentation a fait baisser les calculs prématurés de 26 % à 6 % (Mistral-Small) et de 52 % à 23 % (Codestral).
Le constat
Les modèles de langage deviennent utiles en science quand on les garde à leur place : lire et traduire la demande. Le calcul reste aux codes dont la validité est connue. Quand une entrée manque, la bonne réponse est une question, pas une supposition.
La question
Un modèle de langage peut-il lancer une simulation scientifique pour quelqu'un ? Il le peut, mais il comble volontiers ce qui n'a pas été dit : « un faible courant ascendant » devient 0,1 m/s, « la dose habituelle » devient 3 Gy, et le code tourne sur des valeurs que personne n'a données. Le résultat paraît précis et peut être faux.
La théorie, en clair
Chaque code est décrit une fois, dans un contrat : ce que signifie chaque variable, son unité, ce qui peut être supposé par défaut et ce qui doit être demandé. Chaque entrée d'un scénario porte sa valeur, son unité, son origine (dite par la personne, conversion d'unité, défaut déclaré, hypothèse) et l'accord de la personne. La règle est simple :
- exécuter seulement si chaque entrée nécessaire est donnée, ou est une hypothèse sourcée que la personne a acceptée, et si chaque unité et chaque contrainte sont respectées ;
- clarifier si une entrée manque, est ambiguë ou n'est pas acceptée ;
- refuser si la demande sort du domaine du code, ou si les fichiers du code ne correspondent pas à leur empreinte.
Le validateur n'invente jamais de valeur. Le code scientifique est figé sur une version précise, vérifié avant chaque exécution, et rend ses résultats avec la trace complète de l'origine de chaque nombre.
Où l'on se situe sur l'échelle de la complexité

WebSemantic utilise bien la marche du haut : un grand modèle de langage, un réseau profond, lit la demande. Mais il ne calcule rien : il transmet des variables validées aux marches basses, calcul direct et simulation, où les codes validés calculent. L'IA : indispensable dans la boîte à outils, jamais obligatoire dans la solution.

L'exemple en chiffres
Un scénario complet de recherche en radiothérapie (rectum et prostate, 39 fractions de 2 Gy, chaque entrée donnée et acceptée) : le validateur répond exécuter, et LQL-Equiv renvoie une EQD2 de 78,0 Gy. Retirez la dose par fraction du même scénario : la réponse devient clarifier, « une valeur explicite ou une hypothèse acceptée est nécessaire », et rien n'est calculé.

Ce que cela apporte, et les limites
- Apports : des codes scientifiques utilisables en langage courant, en français ou en anglais, sans hypothèses cachées. Chaque résultat est rendu avec ses unités, ses sources et la version du code. La même démarche fonctionne pour des codes très différents : consommation des tunnels routiers (Tunnel Load Simulator), équivalence de dose en radiothérapie (LQL-Equiv) et physique des nuages (pyrcel).
- Limites : un contrat valide ne garantit pas que la demande a été bien comprise, ni que le modèle scientifique convient à la question. Les preuves portent sur 78 cas ; l'article associé est en préparation. LQL-Equiv fonctionne sur des scénarios fictifs, pour la recherche et l'enseignement seulement.
Pour aller plus loin
- Règle de décision, exemple exécutable et figures (en anglais) : https://cyrilvoyant.github.io/tools/websemantic.html
- L'application web : cyrilvoyant-websemantic.static.hf.space (TLS et LQL-Equiv dans le navigateur)
- Code : github.com/cyrilvoyant/websemantic · archive doi :10.5281/zenodo.23238902 ·
pip install websemantic· instructions pour les agents dansllm.md - Les codes pilotés :
- Tunnel Load Simulator, SoftwareX 35, 102946 (2026) ;
-
LQL-Equiv-web, SoftwareX 36, 103085 (2026).
-
La démarche derrière ce travail : Comprendre avant de calculer