Aller au contenu
Ernest.IA & Lab
En poste

IA & Lab

IA & expérimentation technique

Développer, automatiser et diagnostiquer avec des outils modernes, tout en expérimentant personnellement autour des LLM et des architectures RAG.

01Au quotidien

IA dans le travail quotidien

L’IA fait partie de mes outils de travail pour accélérer certaines phases de développement, d’analyse et de diagnostic : exploration de pistes, relecture de code, comparaison d’approches ou analyse d’erreurs.

Elle reste un outil d’aide à la réflexion et à la production, pas une source d’autorité. Les propositions sont vérifiées sur l’environnement concerné avant toute utilisation.

L’architecture, les choix techniques, la validation et le code livré restent sous mon contrôle.

02Autoformation

Ce que j’explore

Autoformation continue autour de l’IA générative et des architectures RAG, à partir de ressources techniques, vidéos et expérimentations personnelles.

Sujets explorés

  • LLM
  • RAG
  • Embeddings
  • Recherche sémantique
  • Recherche hybride
  • Reranking
  • LlamaIndex
  • Hugging Face
  • API d’IA
  • Prompt engineering
03

Expérimentations

Ingénierie RAG - Assistant documentaire DSI

Un moteur de question-réponse sur 11 806 pages de documentation technique. On demande en français, il répond à partir des documents et cite la page. Quand l’information n’y est pas, il le dit : en support, une commande inventée coûte plus cher qu’une absence de réponse.

Carnet publicOuvrir le carnet sur kaggle.comCode et sorties enregistrées · 6 étapes · 8 outils

Le problème

Trois documentations d’infrastructure (Red Hat Enterprise Linux 7, Troubleshoot Windows Server, Windows Server Identity) mêlent A4 et Letter, titres numérotés chez l’une, pas chez les autres. Aucune règle propre à l’une ne sert aux autres. Et le technicien qui cherche une procédure a besoin de sa page pour la vérifier.

Ce que j’ai construit

  1. 01 Extraction245 639 blocs, avec leurs signaux typographiques : taille, graisse, chasse fixe, position dans la page.
  2. 02 Classificationtitre, commande, note, étape, pied de page. Le seuil de taille se calcule par document plutôt qu’en dur : 12 pt est du corps chez Microsoft, un titre chez Red Hat.
  3. 03 Découpage8 352 chunks, 296 mots en médiane, qui ne franchissent aucun titre et gardent de quoi citer leur page et leur section.
  4. 04 Recherchevectorielle (BGE-M3, index FAISS) et lexicale (BM25), fusionnées sur les rangs : les deux scores ne sont pas à la même échelle.
  5. 05 Reclassementun cross-encoder relit la question et chaque candidat ensemble, et ramène 20 candidats à 5.
  6. 06 Générationle modèle ne reçoit que ces 5 passages, sans droit d’aller au-delà, et renvoie à ses sources numérotées.

Résultats

ConfigurationRecall@5MRR
Vectoriel seul83,3 %0,714
Hybride (FAISS + BM25)88,3 %0,803
Hybride + reranker93,3 %0,876

Recall@5 : la bonne page est-elle dans les cinq résultats. MRR : à quelle place elle arrive. Les barres sont graduées de 80 à 95 % pour rendre l’écart lisible. En accent, la configuration qui répond réellement aux questions.

Sur quatre questions hors corpus, il s’abstient quatre fois sur quatre, dans la formulation exacte demandée.

  • Les questions d’évaluation sont générées depuis les passages : elles en reprennent le vocabulaire, ce qu’un vrai utilisateur ne fait pas. Les scores comparent les trois configurations entre elles, ils ne prédisent pas la production.
  • Les trois documentations sont celles de leurs éditeurs, non redistribuées : le carnet se lit avec ses résultats enregistrés, il ne se rejoue pas en l’état.

Stack

  • PyMuPDF
  • BGE-M3
  • FAISS
  • BM25
  • BGE-reranker-v2-m3
  • Qwen2.5-3B-Instruct
  • PyTorch
  • GPU T4

Ce que le projet m’a appris

Mesurer avant de corriger : la détection des titres par la graisse échouait sur un document dont 85 % des blocs sont gras, où le signal existait sans rien séparer. Et savoir renoncer : deux filtres du bruit éditorial emportaient aussi la vraie structure des articles de dépannage, je les ai retirés plutôt que d’empiler.

Lire le carnet entier sur Kaggle

Avant celui-ci

Plusieurs labs RAG ont précédé ce carnet : indexation, recherche sémantique, articulation entre un modèle et une base documentaire. Ces environnements-là ne sont plus disponibles, et ils n’étaient pas faits pour durer.

Ce qu’il en reste est l’essentiel, et le carnet le met en œuvre : où un mauvais découpage dégrade une recherche, ce qu’un changement de modèle d’embedding produit sur les résultats, et pourquoi une réponse plausible n’est pas une réponse fondée.

Aucune IA n’administre l’infrastructure

L’IA m’aide à travailler ; elle n’administre rien. Aucun modèle ne tourne sur l’infrastructure hospitalière et aucune décision d’exploitation ne lui est déléguée.

Le système d’IA que j’exploite sur ce site est limité aux informations publiques du site.

Cette distinction est volontaire : utiliser l’IA ne signifie pas lui déléguer la responsabilité technique.

Voir ce qui a été déployé

© 2026 Ernest DIBYMentions légales