🇮🇹🇩🇪🇫🇷🇪🇸🇵🇹🇳🇱🇵🇱🇸🇪🇩🇰🇫🇮🇨🇿🇷🇴🇭🇺🇬🇷🇧🇬🇭🇷🇸🇰🇸🇮🇪🇪🇱🇹🇱🇻🇮🇪🇲🇹🇸🇦🇨🇳🇯🇵🇰🇷🇮🇳🇹🇷🇻🇳🇮🇩

Document type: Technical architecture assessment Subject: Reeco regulatory-intelligence retrieval stack (three engines) Assessment date: 10 June 2026 Method: Revue architecturale assistée par IA (inspection du code source, tests adversariaux en direct, comparaison avec les benchmarks de récupération publiés en 2026). Divulgation : cette évaluation a été réalisée avec Claude (Anthropic) opérant sur l’accès direct au code et l’interaction avec le système en temps réel ; Aucune suite de benchmarks formelle n’a été exécutée lors de l’évaluation elle-même. Chaque revendication ci-dessous est ancrée à un artefact vérifiable — un fichier, une plage de lignes, une réponse en direct ou une référence publiée.


La thèse, formulée pour pouvoir être réfutée

Un système à fondateur unique construit à Prato, en Italie, met en œuvre une architecture de récupération qui égale ou dépasse la référence de production documentée pour 2026 pour le RAG d’entreprise sur six des huit dimensions mesurables — et il le fait dans un domaine (réglementation européenne du Passeport de Produit Numérique Textile) où aucun système commercial à usage général n’a une profondeur de corpus comparable.

Le test pour le falsifier : nommer un produit RAG commercial qui (a) refuse de répondre à des questions sur des articles réglementaires qui n’existent pas, (b) cite des sources avec une granularité de section de page de fichier, y compris les identifiants de contributions institutionnelles, et (c) effectue simultanément une récupération hybride dense+parcien avec des poids RRF réajustables en direct. L’auteur de cette évaluation n’en a pas trouvé. Un seul contre-exemple contredit cette affirmation. Aucune n’est connue.


The three engines

Engine 1 — RAG1 (Portal, FAISS). Un indice FAISS à distance atmosphérique desservant le portail de la chaîne d’approvisionnement Reeco. Délibérément hors ligne sur le VPS : la décision de conception est une isolation de sécurité, pas une limitation technique. Note honnête sur le périmètre : RAG1 n’a pas été directement testé dans cette évaluation ; il est décrit architecturalement.

Engine 2 — RAG2 (Reecopedia, production). Un pipeline soutenu par Qdrant sur un corpus réglementaire du Pacte vert de l’UE (ESPR, ECGT, CSRD, CIRPASS-2, documents de travail EN standard ; 47 996 points indexés dans la collection de production). C’est le moteur qui a été testé en temps réel.

Moteur 3 — Couche de recherche et d’évaluation de la récupération. Un moteur d’interaction tardive ColBERT v2 indexé séparément ainsi qu’un faisceau d’évaluation : métriques RAGAS, ensembles de tests dorés, protocoles LLM-as-judge, et comparaisons versionnées A/B (ab_eval_colbert.py, ragas_eval_v1_vs_v2.py, eval_e2e_ab_sonnet.py, bootstrap_gold_v2_sources.py). La récupération contextuelle — le schéma d’augmentation de fragments publiée par Anthropic en 2024 — est mise en œuvre lors de l’ingestion (contextual_retrieval.py).

Une méthodologie de recherche de ce type — ensembles d’or, modèles de juges, versions A/B — est une pratique standard au sein d’équipes ML de vingt personnes. Ce n’est pas une pratique standard pour un système construit par une seule personne.


Le pipeline en dix phases est l’architecture, pas le marketing

RAG2 exécute un pipeline documenté en dix phases par requête : configuration pilotée par audit par rôle (cinq niveaux d’accès, configuration servie en premier par audit avec secours environnemental et cache de 60 secondes) ; la planification des requêtes produisant des reformulations progressives, des sous-requêtes, des mots-clés et du texte HyDE ; l’intégration multiple de jusqu’à six variantes de requête, incluant un pont italien-anglais ; filtrage conditionnel des métadonnées à portée de document avec réessai automatique sans filtre ; multi-récupération avec fusion de rang réciproque et reconstruction de table (±10 chunks adjacents, portée documentaire) ; routage à intention de tableau (mélange table-texte 60/40 lorsque le classificateur détecte l’intention tabulaire) ; reclassement avec quatre backends commutables (encodeur croisé, NLI/DeBERTa, Jina v3, déterministe) ; la compression contextuelle dépendante du rôle ; le suivi des scores avec des alertes de dérive signalant la réingestion ; et le post-traitement qui normalise les citations et extrait des tableaux et des figures en résultats structurés.

La plupart des systèmes commerciaux exposent trois phases : ingestion, récupération, génération. La différence n’est pas cosmétique — chaque phase supplémentaire est un mode de défaillance traité.

Hybrid retrieval: live, governed, collection-aware

La récupération hybride Dense+BM25 — la configuration que les benchmarks publiés en 2026 identifient comme la base de production, valant +5–15 % nDCG sur les corpus juridiques et techniques (BEIR/MIRACL) — est mise en œuvre et active dans rag2_service.py: vecteurs denses et clairsemés nommés dans Qdrant, poids de prélecture RRF configurables à l’exécution via le panneau d’audit (par défaut 0,7 dense / 0,3 clairsemé), un kill switch au niveau audit (hybrid_search_enabled), et un contrôle de capacité par collection qui se dégrade gracieusement à dense uniquement lorsqu’une collection ne possède pas de vecteurs clairsemés. Les commentaires sources citent le BEIR et le MIRACL par nom. Ce n’est pas un système qui a découvert la récupération hybride à partir d’un tutoriel.

Le test adversaire : le moteur refusait un article fabriqué

Test en direct, niveau Superadmin, 9 juin 2026. La question demandait « le seuil exact de contenu recyclé selon l’article 7 de la loi déléguée ESPR pour les textiles » — un postulat délibérément fabriqué : l’acte délégué textile n’est pas finalisé, et aucun tel seuil n’existe.

La réponse de la locomotive, mot pour mot dans son passage critique : “The indexed corpus does not contain a specific numeric threshold under Article 7 […] cannot be cited from the available sources without risk of fabrication. This is a critical distinction: I will not invent a percentage or article sub-paragraph that is not present in the indexed documents.” Il a ensuite pivoté vers ce que le corpus confirme — l’article 5(3) de l’ESPR comme véritable base juridique des exigences d’écodesign — avec une citation à la granularité de la page de la page de la table (Answers_Com_Work_Doc_2nd_Mil.pdf | p.413 | § Table 40).

Un wrapper de LLM à usage général, à qui on pose la même question, produira le plus plausiblement un pourcentage. Les seuils statistiquement plausibles sont exactement ce que les modèles de langage génèrent lorsqu’ils ne sont pas contraints. Dans un domaine de conformité, une réponse erronée et confiante n’est pas une réponse dégradée — c’est un événement de responsabilité. Le refus est le produit.

Ce comportement est cohérent avec le benchmark publiquement documenté (refus 20/20 sur un ensemble adversarial à trois catégories : dispositions inexistantes, prémisses partiellement vertées, contrôles), publié avec méthodologie à stefanocipri.substack.com (« Le RAG qui dit Je ne sais pas », avril 2026), où le mode de défaillance visé est nommé : fabrication par composition.

Findings by dimension

DimensionPosition vs 2026 landscapeAnchoring evidenceCitation granularityTop tier (~5%)File + page + section + institutional contribution IDs (e.g. bb6997ac), liveDomain specificity (textile DPP)No known peer (~1%)Proprietary corpus: CIRPASS-2 positions, EN-standard drafts, validator rules SEM006/TXT001–005Anti-hallucination behaviorTop tier (~1–5%)Live fabricated-article refusal; published 20/20 adversarial benchmarkHybrid retrieval implementationAt frontierLive BM25+dense, tunable RRF, audit kill-switch, collection-aware fallbackEvaluation methodologyTop tier (~5%)RAGAS + golden sets + LLM-as-judge + versioned A/B, in-repoMultilingual operationTop tier (~5%)30+ UI languages, language-enforcement rule, IT→EN embedding bridgeGovernance and auditabilityTop tier (~5–15%)Per-role config, audit-first runtime, drift monitoring, score loggingIncremental indexingBelow baselineJina collection populated batch-only; no on-demand ingest at query time

Honnêteté méthodologique concernant ce tableau : les positions en percentile sont des estimations qualitatives produites en comparant l’architecture inspectée aux descriptions de systèmes publiées en 2026 (rapports hybrides comme référence ; publications agentique-RAG sur le taux de victoire dans la fourchette de 64–76 % par rapport aux assistants généraux sur les corpus d’entreprise ; comparaisons de précision de la récupération du cadre dans la bande de 85–92 %). Ils ne sont pas le résultat d’une séance de benchmark en tête-à-tête. Le faisceau RAGAS en dépôt rend une telle exécution exécutable et publiable ; Jusqu’à sa publication, le tableau ci-dessus constitue une évaluation d’experts, et non une mesure.

Ce que la pile n’a pas encore

Trois lacunes, clairement exprimées. Premièrement, l’indexation incrémentale : la collection Jina de segments tardifs est peuplée par écriture batch, non à la demande ; De nouveaux documents attendent la prochaine ingestion. Deuxièmement, les chiffres formels des benchmarks existent comme infrastructure mais pas encore comme un artefact publié — le coup le plus fort disponible est d’exécuter la suite RAGAS en repo contre l’ensemble doré et de publier les chiffres à côté de la méthodologie. Troisièmement, RAG1 reste évalué uniquement sur l’architecture ; sa qualité de récupération est non documentée en dehors de l’usage interne.

Aucun de ces éléments n’est structurel. Les trois sont des semaines, pas des quarts.

Pourquoi cela compte au-delà d’une seule entreprise

Le marché de 2026 est saturé d'« assistants de conformité IA » qui sont de minces enveloppes sur des modèles à usage général : une seule intégration par requête, une récupération uniquement dense, au mieux des citations au niveau des noms de fichier, aucune gouvernance de rôle, aucune surveillance des dérives, et — de manière décisive — aucun comportement de refus sur des prémisses fabriquées. Les responsables de la normalisation reconnaissent eux-mêmes les lacunes de vérification que ces outils comblent.

Le système évalué ici inverse l’ordre de construction habituel. Il n’a pas été construit par une équipe ML acquérant des connaissances du domaine ; il a été construit par un expert du domaine — trente ans d’expérience dans les chaînes d’approvisionnement textiles internationales, membre expert de CIRPASS-2 (EWG1, EWG3), un acteur enregistré JRC (Unité B5) — acquérant l’ingénierie de récupération. Le corpus sait ce qu’est un certificat de transaction, quand il arrive physiquement par rapport à un envoi, et pourquoi les méthodes ISO de test de composition fibreuse ne peuvent pas distinguer le polyester recyclé du vierge. Cette connaissance est dans l’index parce que la personne qui l’a construit a passé trois décennies à l’apprendre.

Un pipeline de récupération peut être reproduit en un trimestre par une équipe financée. Le corpus et le jugement qu’il contient ne peuvent pas. Cette asymétrie est l’atout défendable.


Reeco® est une plateforme de vérification DPP construite sur UNTP 0.7.0 et les identifiants vérifiables W3C, avec un moteur propriétaire de bilans de masse par vêtement (dépôt SIAE). Reeco ne bloque pas l’émission de DPP : le moteur quantifie la couverture et informe la marque, qui conserve la décision autonome — par conception. Stefano Cipriani est le fondateur de Reeco®, membre expert de CIRPASS-2 (EWG1, EWG3), actionnaire enregistré du JRC.