Claude Code a aidé à porter un RAG juridique à 0,791, mais la finale d'ARLC 2026 a buté sur l'échelle

Dans le défi d'IA juridique ARLC 2026, l'auteur a fait passer en cinq jours et 17 itérations le score d'un pipeline RAG de 0.034 à 0.791 sur le warmup. La recherche hybride et le retrieval par page ont compté, mais aussi une vérification de format toute simple : retirer .pdf du doc_id a provoqué un bond net. En finale, avec 303 documents, le système a perdu 42 %. L'échelle a fait s'effondrer le retrieval.

Traité par IA depuis Habr AI ; édité par Hamidun News
Claude Code a aidé à porter un RAG juridique à 0,791, mais la finale d'ARLC 2026 a buté sur l'échelle
Source : Habr AI. Collage: Hamidun News.
Écouter l'article
Fiche synthèse et chiffres clés
ParamètreDonnées
Source primaireHabr AI ↗
Rédacteur en chef
Chiffre clé #1Retrieval par page plutôt que par chunks
Chiffre clé #2BM25 + embeddings + Reciprocal Rank Fusion
Chiffre clé #3OCR de secours pour les pages vides ou scannées

Le cas ARLC 2026 montre à quel point un RAG peut être fragile sur des tâches réelles. En cinq jours, l'auteur et Claude Code ont fait passer le résultat d'un pipeline juridique de 0.034 à 0.791 sur le warmup, avant de se heurter à un mur de passage à l'échelle en finale.

Du bug au bond

Le défi demandait plus que de répondre à des questions sur des décisions de justice et des lois : il fallait indiquer précisément les pages sources. Le grounding est ainsi devenu un multiplicateur de toute la note finale : même avec de bonnes réponses, des références faibles ramenaient le score presque à zéro. C'est ce qui s'est produit au départ : la première version a obtenu 0.034, alors que la précision d'une partie des réponses était déjà élevée.

Le problème ne venait ni du modèle ni du retrieval, mais du format de sortie. L'auteur a gaspillé trois tentatives avant de repérer une erreur simple : le champ doc_id recevait le nom du fichier avec .pdf, alors que le système attendait un identifiant sans extension. Ce seul correctif a fait passer le grounding de 0.05 à 0.55 et le résultat global de 0.034 à 0.438. Le pipeline a ensuite atteint 0.791 sur le warmup en 17 itérations.

Les calculs du F-beta avec β=2.5 ont aussi aidé : ils ont montré que les pages superflues pénalisent plus qu'il n'y paraît, et que chaque référence en trop peut coûter de 10 % à 22 % de qualité de grounding.

Architecture et techniques

Le meilleur résultat est venu d'un pipeline qui indexait des pages entières de PDF plutôt que des chunks. C'est un choix important pour un RAG juridique : si la métrique vérifie la page exacte, le chunking complique le retour à la source et ajoute du bruit. La recherche reposait sur un schéma hybride BM25 plus embeddings, fusionnés par RRF, avec de l'OCR pour les scans. Par-dessus, l'auteur a plafonné le nombre de pages renvoyées et traité à part les questions de comparaison, qui exigent de confronter deux documents.

  • Retrieval par page plutôt que par chunks
  • BM25 + embeddings + Reciprocal Rank Fusion
  • OCR de secours pour les pages vides ou scannées
  • Limite du nombre de pages par réponse selon le type de question
  • Branches déterministes rapides pour les cas simples
« Valide d'abord le format de sortie.

Améliore la qualité ensuite ».

Claude Code occupe une place à part dans ce cas. Avec son aide, l'auteur a écrit environ 3000 lignes de code réparties en sept modules en cinq jours et produit 17 versions, contre 3 à 5 selon ses estimations à la main. L'agent a accéléré les modifications, le refactoring, les soumissions et la relecture des diffs avant envoi. Mais les décisions stratégiques sont restées humaines : quelles métriques corriger en premier, comment interpréter les régressions et quand ne pas toucher à un prompt déjà réglé.

Là où tout a cassé

Sur le warmup, le corpus comptait 30 documents et 100 questions ; en finale, 303 documents, 4244 pages et 900 questions. C'est là qu'il est apparu qu'un pipeline performant sur un petit jeu de données ne se transpose pas forcément à un grand.

Un bug de cache est d'abord apparu : le système a indexé par erreur les 30 documents du warmup au lieu des 303 de la finale, ce qui a fait grimper les réponses null à 37. Après vidage du cache, ce problème a disparu, mais l'échec principal est resté : le score final a chuté de 42 %, à 0.457.

Les causes profondes étaient architecturales. L'énorme document DIFC Courts Rules s'est mis à polluer les résultats de nombreuses requêtes juridiques, les consultation papers de même numéro mais d'années différentes ont brouillé la désambiguïsation, et la regex des numéros de loi remplaçait les réponses sur les amendes par des numéros de lois. Un lot rapide de huit correctifs semblait raisonnable, mais il a dégradé l'équilibre des métriques : une partie de la précision déterministe a progressé, tandis que le grounding et le score global ont encore reculé.

Cette analyse est précieuse parce qu'elle ne vend pas la magie de l'assistant IA. Claude Code a apporté de la vitesse, mais n'a pas supprimé l'essentiel du travail d'ingénierie : valider le format, calculer la métrique, tester une modification à la fois et vérifier le système à une échelle proche de la production. La conclusion de l'auteur est sans appel : si le jeu d'évaluation est plusieurs fois plus petit que le corpus réel, on ne teste pas le retrieval, mais la chance.

Ce que cela signifie

Pour les équipes qui conçoivent des produits RAG, c'est une douche froide salutaire. Ce n'est pas le stack le plus complexe qui l'emporte, mais la discipline : format de sortie exact, métrique claire, bruit minimal dans les références et tests à l'échelle réelle. Les assistants de code IA offrent déjà une accélération sérieuse, mais ne remplacent pas encore le raisonnement d'ingénierie ni la responsabilité des choix d'architecture.

Dossier

Questions clés sur cet article

Que sait-on sur Du bug au bond ?

Le défi demandait plus que de répondre à des questions sur des décisions de justice et des lois : il fallait indiquer précisément les pages sources. Le grounding est ainsi devenu un multiplicateur de toute la note finale : même avec de bonnes réponses, des références faibles ramenaient le score presque à zéro. C'est ce qui s'est produit au départ : la première version a obtenu 0.034, alors que la précision d'une partie des réponses était déjà élevée. Le problème ne venait ni du modèle ni du retrieval, mais du format de sortie. L'auteur a gaspillé trois tentatives avant de r

Que sait-on sur Architecture et techniques ?

Le meilleur résultat est venu d'un pipeline qui indexait des pages entières de PDF plutôt que des chunks. C'est un choix important pour un RAG juridique : si la métrique vérifie la page exacte, le chunking complique le retour à la source et ajoute du bruit. La recherche reposait sur un schéma hybride BM25 plus embeddings, fusionnés par RRF, avec de l'OCR pour les scans. Par-dessus, l'auteur a plafonné le nombre de pages renvoyées et traité à part les questions de comparaison, qui exigent de confronter deux documents. Retrieval par page plutôt que par chunks BM25 + embedding

Que sait-on sur Là où tout a cassé ?

Sur le warmup, le corpus comptait 30 documents et 100 questions ; en finale, 303 documents, 4244 pages et 900 questions. C'est là qu'il est apparu qu'un pipeline performant sur un petit jeu de données ne se transpose pas forcément à un grand. Un bug de cache est d'abord apparu : le système a indexé par erreur les 30 documents du warmup au lieu des 303 de la finale, ce qui a fait grimper les réponses null à 37. Après vidage du cache, ce problème a disparu, mais l'échec principal est resté : le score final a chuté de 42 %, à 0.457. Les causes profondes étaient architecturales

ZK
Zhemal Khamidun — CPO d'Alpina Digital, product manager d'AlpinaGPT. Conçoit des produits IA depuis 2019. Hamidun News est un projet personnel devenu un agrégateur en production avec plus de 6 000 lecteurs.
✦ Hands-On AI Engineering · Hamidun Academy

Build & Ship Production AI Agents Without Boilerplate Code

Start your free 72-hour trial at Hamidun Academy (academy.hamidun.com) — interactive lessons on Claude Code & Cursor, live Tech Radar, and production agent templates.

Start 72h Free Trial →Vibe-Coding Intensive
Qu'en pensez-vous ?
Chargement des commentaires…