Aller au contenu principal

Le déterminisme expliqué

Pourquoi une application générée par Maker ne se casse pas quand vous l'ajustez, en langage non-technique.

Le problème des générateurs classiques

Quand une IA écrit directement le code d'une application, chaque correction est une nouvelle rédaction. Demander un petit changement peut en casser un autre ailleurs, sans prévenir. C'est la source des « boucles de correction » : on corrige, ça casse, on re-corrige.

L'approche de Maker : app = builders(spécification)

Chez Maker, l'IA ne rédige pas l'ossature de l'application. Elle conçoit une spécification : la liste des entités, les règles métier, les indicateurs. Ce sont ensuite des builders déterministes : des programmes, pas une IA, qui transforment cette spécification en base de données, routes d'API, formulaires et navigation.

« Déterministe » signifie : la même spécification produit toujours la même ossature. Il n'y a là ni improvisation, ni code halluciné.

Certains blocs d'écran sont, eux, bel et bien écrits par un modèle : le tableau de bord, les zones de synthèse des listes, les données d'exemple, et les vues signature au niveau Masterpiece. Ils sont délimités, leur nombre d'appels est fixé à l'avance, et ils doivent passer la compilation et la validation à l'exécution — sinon ils sont remplacés par leur version déterministe. C'est la différence entre confier une pièce à un modèle sous contrôle, et lui confier l'application entière.

Le flux, étape par étape

  • Votre prompt, en langage naturel.
  • La spécification : conçue par l'IA (entités, règles, indicateurs).
  • L'ossature — base de données, routes d'API, formulaires, navigation — écrite par des builders déterministes à partir de la spécification.
  • Les blocs d'écran confiés à un modèle, validés à la compilation puis à l'exécution avant d'être retenus.

Ce que ça change pour vous

Ajuster votre application revient à ajuster la spécification, puis à laisser les builders reconstruire. Le comportement reste prévisible : pas de régression surprise, pas de boucle de correction facturée à chaque essai. Vous itérez en confiance.

Est-ce la même chose qu'un no-code manuel (Bubble, WeWeb, Retool) ?

Non. Sur Bubble, WeWeb ou Retool, aucune IA ne construit l'application : vous configurez chaque écran et chaque règle vous-même dans un éditeur visuel. C'est déterministe parce qu'un humain a tout défini explicitement, pas parce qu'une IA a été maîtrisée.

Chez Maker, une IA construit bien l'application depuis un prompt. Le déterminisme ne vient pas de l'absence d'IA, mais du fait qu'elle n'écrit pas l'ossature — elle conçoit une spécification, et un programme (pas une IA) la transforme en base de données, routes et écrans.

Est-ce la même chose qu'un agent IA mieux contraint (Claude Code, OpenAI Codex, Devin, Cursor Agent) ?

Non plus, et la nuance compte. Ces agents restent des modèles de langage qui écrivent le code ligne par ligne — même entourés de templates stricts, de tests automatiques et de boucles de correction, un LLM reste par construction capable de produire un résultat différent d'une exécution à l'autre. On peut réduire le hasard, jamais l'éliminer à cette étape.

Chez Maker, le LLM n'écrit pas l'application ligne par ligne. Il conçoit la spécification, et des builders déterministes en produisent l'ossature — un même AppSpec produit toujours exactement la même ossature, sans variation possible. Les passes de modèle qui subsistent portent sur des blocs d'écran délimités, en nombre d'appels fixé, adossés à un compilateur et à une validation à l'exécution. Ce n'est pas un agent mieux discipliné : c'est une architecture où la structure échappe entièrement au hasard, et où ce qu'on laisse au modèle est borné et vérifié.

Ce que dit la recherche académique

Cette architecture n'est pas propre à Maker : la séparation spécification/code est une direction de recherche active (« correction par construction »), et le non-déterminisme des générateurs classiques est un fait mesuré dans des revues à comité de lecture. L'ensemble des sources — et une série de trois articles qui déroulent l'argument — vit sur la page dédiée à la recherche, pour que cette page-ci reste ce qu'elle est : l'explication du fonctionnement.