Il existe une réponse qui devrait mettre fin à un rendez-vous : « nos agents sont assez intelligents pour gérer ça ». Un modèle de langage produit une réponse plausible, pas une réponse vérifiée. Il se trompera. Ce qui distingue une architecture sérieuse, c'est ce qui est prévu pour ce moment-là.

La leçon que nous avons payée

Nous exploitons des agents qui interviennent réellement sur des comptes publicitaires. Un jour, une consigne parfaitement claire avait été écrite dans les instructions de l'agent : ne jamais toucher à un terme précis. Quelques heures plus tard, l'agent y touchait quand même. La consigne n'était pas ambiguë, elle était simplement dans le mauvais endroit.

Un interdit écrit dans une consigne est un souhait. Un interdit écrit dans le code est une règle.

Depuis, toute interdiction dure est appliquée par du code déterministe, en dehors du modèle, sur le chemin de l'action. Le modèle peut proposer ce qu'il veut : si la proposition touche à un élément protégé, elle est refusée avant d'atteindre le système extérieur, avec un motif enregistré. C'est le principe le plus important de cet article.

Le dispositif, couche par couche

  • Des règles déterministes en amont. Tout ce qui peut être vérifié sans modèle l'est sans modèle : format, plage de valeurs, cohérence avec l'existant, listes de protection.
  • Un contrôle métier avant l'action. La proposition est confrontée à l'état réel du système : est-ce que cette action détruirait quelque chose qui fonctionne, dépasserait-elle un seuil, contredirait-elle une décision antérieure.
  • Un seuil de confiance. En dessous, la machine ne tranche pas : elle passe la main, en expliquant ce qui la rend incertaine.
  • Un repli explicite. Quand le modèle est indisponible ou trop lent, le process ne s'arrête pas au milieu : il bascule sur un comportement dégradé, connu et documenté.
  • Un journal complet. Chaque action porte son auteur, son motif, son coût et son résultat. Sans ce journal, aucune erreur n'est analysable, donc aucune n'est corrigible.
  • Une alerte. Les cas anormaux remontent à un humain nommé, tout de suite, pas dans un rapport mensuel.
  • Une annulation réelle. Un refus doit défaire ce qui a été fait, et pas seulement le signaler.

Annuler pour de vrai

C'est le point que nous conseillons de creuser chez n'importe quel prestataire. Sur nos agents publicitaires, chaque intervention proposée arrive à l'humain avec deux boutons. « Je suis d'accord » confirme. « Pas d'accord » ne se contente pas d'enregistrer un avis : il défait l'intervention quand elle est réversible, il enregistre l'interdit pour que la même proposition ne revienne pas, et il envoie une confirmation, y compris quand l'annulation a échoué.

Ce dernier détail est le plus révélateur. Une annulation qui échoue en silence est pire que pas d'annulation du tout : elle donne le sentiment que le sujet est traité.

Les tests, sur les erreurs réelles

Nos garde-fous sont couverts par des tests automatisés dont les cas viennent des incidents que nous avons vécus, pas de scénarios imaginés. Une erreur constatée en production devient un test, ce qui garantit qu'elle ne reviendra pas par la même porte. C'est une question simple à poser à un prestataire : vos garde-fous sont-ils testés, et sur quels cas.

Ce qu'il faut accepter

Aucun de ces dispositifs ne ramène le taux d'erreur à zéro. Ils font autre chose, et c'est ce qui compte : ils rendent les erreurs visibles, bornées et réparables. Une entreprise qui déploie de l'IA sans cette couche ne déploie pas de l'IA, elle déploie une exposition.