Dossier technique de l’AI Act : le tenir à jour à chaque version
Dans un cas fictif, la version 1.5 ajoute une métrique d’évaluation et le build la bloque. Pourquoi un paragraphe périmé bloquerait-il votre version ?
EN 30 SECONDES
Un dossier technique géré dans la CI est un dossier que le build régénère à chaque version, à côté des tests. Dans ce modèle, une section humaine qui dépasse sa date de revue bloque la version, comme un test qui échoue.
À RETENIR · 3
- Dans ce modèle, un bloc humain qui dépasse sa fenêtre de revue bloque la version, comme un test qui échoue.
- Régénérer le dossier dans la CI peut aider à maintenir ses faits à jour, mais ne remplit pas seul l’obligation documentaire.
- Un contrôle de revue réussi montre que les revues ont eu lieu à temps, pas que les arguments tiennent.
Sur cette page
Une version passe, la suivante est bloquée
EN BREF Le même build livre une version et bloque la suivante, parce qu’une section humaine a dépassé sa date de revue.
LES MOTS À CONNAÎTRE
- Tag de version
- Une étiquette dans le gestionnaire de versions, comme 1.4.0, qui identifie le code et les réglages versionnés d’une livraison.
- Manifeste
- Un petit fichier de configuration qui énumère les blocs du dossier technique et indique, pour chacun, qui peut l’écrire.
- CI
- Intégration continue : la chaîne automatique qui construit et teste chaque changement.
Les valeurs ci-dessous sont fictives. La règle vient du Manifeste Un petit fichier de configuration qui énumère les blocs du dossier technique et indique, pour chacun, qui peut l’écrire. Voir le glossaire : un bloc humain qui dépasse sa fenêtre de revue fait échouer la version, comme un test en échec.
UN EXEMPLE CONCRET
Chiffres illustratifs
VALIDÉVersion 1.4.0 : un modèle remplacé, revues à jour
ENTRÉE
- Tag
- reconciliation-agent@1.4.0
- Changement
- modèle remplacé, prompt modifié
- Justification des métriques
- revue il y a 30 jours (fenêtre : 90 jours)
CE QUI SE PASSE
- Le build lit le modèle, le prompt et les résultats d’évals au tag.
- Il récupère les blocs humains et vérifie leurs dates de revue.
- Tous sont dans leur fenêtre, donc il produit le dossier.
SORTIE
- Résultat
- dossier produit, version livrée
- Dossier
- dossier technique de la 1.4.0, daté
BLOQUÉEVersion 1.5.0 : nouvelle métrique, justification périmée
ENTRÉE
- Tag
- reconciliation-agent@1.5.0
- Changement
- une nouvelle métrique d’évaluation principale
- Justification des métriques
- revue il y a 120 jours (fenêtre : 90 jours)
CE QUI SE PASSE
- Les blocs générés sont produits sans problème.
- La justification des métriques a 30 jours de retard sur sa fenêtre.
- Le contrôle fait échouer la version, comme un test en échec.
SORTIE
- Résultat
- version bloquée
- Suite
- le responsable du risque relit la justification des métriques
OBJET OBTENU
Un contrôle réussi prouve les délais, pas le fond
Dans la section suivante : Alors, où et quand ce contrôle tourne-t-il ?
Tenir le dossier à jour à chaque version
EN BREF Placez le générateur à côté des tests : chaque version régénère le dossier et le compare au précédent.
Dans ce modèle, les tests et le générateur tournent dans la CI Intégration continue : la chaîne automatique qui construit et teste chaque changement. Voir le glossaire à chaque changement, sur le même Tag de version Une étiquette dans le gestionnaire de versions, comme 1.4.0, qui identifie le code et les réglages versionnés d’une livraison. Voir le glossaire. Une étape de build peut aider à maintenir les faits à jour. Elle ne remplit pas seule l’obligation documentaire : il faut encore vérifier que le dossier est complet et que les sections humaines ont été relues.
ÉTAPE PAR ÉTAPE
Étape 1. Fusionner un changement. Un prompt modifié, un modèle remplacé ou un index reconstruit change ce qu’est le système.
- Fusionner un changement Un prompt modifié, un modèle remplacé ou un index reconstruit change ce qu’est le système.
- Régénérer dans la CI L’étape qui lance les tests produit aussi le dossier. Personne n’a besoin d’y penser.
- Comparer à la version précédente Un bloc généré qui bouge est attendu. Un bloc humain périmé fait échouer le build comme un test en échec.
- Livrer avec le tag, puis boucler Une fois la revue refaite, le dossier part avec son tag : la version 1.4 reçoit la documentation de la 1.4. Le changement suivant relance la boucle.
EN CLAIR
Le dossier est reconstruit avec le code. Une section humaine que personne n’a reconfirmée arrête la version.
Commencez modestement et suivez le coût d’entretien : extraction, preuves externes et sections relues prennent du temps. Un dossier produit reste une image du système. Il est utile quand ses sources, sa version et son historique de revue sont vérifiables.
Je préfère produire d’abord un dossier imparfait et corriger le gabarit, plutôt que l’écrire dans l’urgence, de mémoire, sur une version qui ne tourne plus.
Les chiffres d’évals du dossier viennent de la même exécution que la suite d’évals qui décide si un agent part en production. Cette exécution donne à la fois le verdict de lancement et les résultats d’évals du dossier.
# annex-iv.yaml: the technical file as a build artifact (illustrative values)
release_tag: reconciliation-agent@1.4.0
blocks:
- { id: system_description, point: 1, source: generated }
- { id: build_and_architecture, point: 2, source: generated }
- { id: design_rationale, point: 2, source: human, owner: tech-lead, review_every_days: 90 }
- { id: monitoring_and_control, point: 3, source: generated }
- { id: metrics_rationale, point: 4, source: human, owner: risk-owner, review_every_days: 90 }
- { id: risk_management, point: 5, source: human, owner: risk-owner, review_every_days: 90 }
- { id: lifecycle_changes, point: 6, source: generated }
- { id: standards_applied, point: 7, source: human, owner: tech-lead, review_every_days: 180 }
- { id: declaration_of_conformity, point: 8, source: human, owner: compliance }
- { id: post_market_evaluation, point: 9, source: human, owner: risk-owner, review_every_days: 90 } # incl. Art. 72(3) plan
gate:
block_release_if:
- a human block is past its review_every_days
- a generated block cannot be read at release_tag
- release_tag is missing
Quatre blocs produits par le build, six portés par une personne ; le point 2 en prend un de chaque. Les fenêtres de revue sont fictives. Les équipes ont tendance à sauter le contrôle du bas : avec lui, une section humaine périmée fait échouer la version.
FAQ
En partie : automatisez les preuves reproductibles, validez l’extraction, assemblez des textes approuvés. Certaines preuves sont hors du dépôt. Des personnes doivent assumer et approuver les raisons, les métriques et les choix de risque, et les revoir quand ils changent.
NIVEAU TERMINÉ
Ce que vous savez maintenant
- Une revue périmée sur une section humaine fait échouer la version, comme un test en échec.
- Régénérer le dossier dans la CI peut aider à maintenir ses faits à jour ; des personnes vérifient encore qu’il est complet.
Vérifiez par vous-même
Touchez ou cliquez une question pour voir la réponse.
Cas fictif : la version 1.6 ne modifie qu’un prompt, et toutes les revues sont à jour. Que fait le build ?
Il régénère les faits, consigne le changement de prompt et produit le dossier : la version peut partir. Des personnes relisent quand même le dossier.
Ancien CTO d’Integra. Auteur nommé (1 sur 5) d’ERC-3643, premier auteur d’ERC-6960, co-auteur d’ERC-7410 et co-auteur d’ERC-8203, encore à l’état de brouillon. Conçoit des systèmes d’IA en production et des systèmes Web3 régulés.
Un projet à livrer ou un poste à pourvoir ?
Parlons de votre besoinSuivre les notes techniques
Recevez les nouveaux articles sur l’IA en production et les smart contracts par email.