L'exécution d'une réponse juridique¶
Le modèle ne reçoit jamais directement la question pour improviser. Une réponse est une exécution persistante qui recherche, vérifie puis publie.
Le run comme unité d'audit¶
CREATED → AUTHORIZING → QUOTA_RESERVED → VALIDATING_INPUT
→ ANALYZING_QUERY → ROUTING_CORPUS → RETRIEVING
→ RERANKING → BUILDING_EVIDENCE → DRAFTING
→ VERIFYING_CLAIMS → VERIFYING_CITATIONS
→ FINALIZING → COMPLETED
Des sorties alternatives couvrent clarification, preuve insuffisante, annulation et échecs. Un état n'est considéré comme implémenté que si sa transition, sa reprise et ses effets sont testés.
Socle B3 disponible
La persistance des conversations, messages, runs et événements est en place.
La création est idempotente, le flux SSE reprend avec Last-Event-ID, un
worker consomme l'outbox et le ledger règle succès, annulation ou échec. Le
moteur actuel est volontairement déterministe et ne produit aucun avis
juridique ; le retrieval et la gate arrivent aux jalons suivants.
La chaîne cible¶
- authentifier et charger les droits ;
- valider la taille et l'idempotence de la demande ;
- réserver le quota maximal ;
- analyser juridiction, branche, période, faits et références explicites ;
- construire le contexte conversationnel sans dépasser son budget ;
- router vers les familles de corpus autorisées ;
- combiner résolution exacte, recherche lexicale et vectorielle ;
- appliquer admissions, dates, statut et juridiction ;
- reranker si le benchmark le justifie ;
- construire le dossier de preuves ;
- générer un brouillon structuré ;
- vérifier affirmations et citations ;
- corriger, demander une précision ou s'abstenir ;
- sauvegarder, finaliser le coût, puis diffuser la réponse validée.
Streaming sans fuite de raisonnement¶
Avant validation, l'interface reçoit seulement des événements de progression. Le texte final peut être diffusé après la gate de publication. Last-Event-ID permet de rejouer les événements manquants après une coupure.
Annulation réelle¶
Fermer la connexion du navigateur ne suffit pas. L'API marque la demande, interrompt le fournisseur si possible, finalise la consommation réelle, sauvegarde ce qui doit l'être et émet run.cancelled.
Règle de publication¶
| Situation | Sortie |
|---|---|
| Preuves suffisantes et cohérentes | réponse citée |
| Fait ou périmètre déterminant absent | question de clarification |
| Couverture partielle | réponse limitée avec avertissement |
| Sources contradictoires | contradiction exposée |
| Aucune preuve suffisante | abstention |