RAG & Hermes : chercher dans 1 200 documents internes sans halluciner
La questionPeut-on donner à nos équipes une réponse fiable et sourcée sur n’importe quel projet, en moins de trois secondes, à partir de notre documentation existante ?
Oui, à condition d’imposer la citation des sources et de refuser de répondre quand aucun passage ne soutient la réponse. Le reclassement fait la différence, pas le modèle.
DécisionAdopté. Intégré à Jarvis et utilisé quotidiennement par l’équipe.
- Statut
- Concluant
- Durée
- 4 semaines
- Équipe
- 2 développeurs, 1 architecte
- Stack
- Hermes
- pgvector
- BM25
- Cohere Rerank
- Claude
- MCP
Contexte
Ce qu’on a testé
- V1 : recherche vectorielle seule (embeddings, pgvector), 5 passages envoyés au modèle.
- V2 : recherche hybride, vecteurs + BM25 fusionnés, pour rattraper les termes exacts (noms de tables, codes d’erreur, références de tickets).
- V3 : V2 plus reclassement des 30 premiers passages par un modèle de rerank, 5 conservés.
- V4 : V3 plus consigne stricte : chaque affirmation doit citer un passage, et le modèle doit répondre « je ne trouve pas » si aucun passage ne soutient la réponse.
- Skills Hermes : des compétences spécialisées par type de question (procédure, décision, chiffre) qui adaptent la requête et le format de réponse.
Résultats
0,61
précision@5 en vectoriel seul (V1)
0,72
précision@5 en hybride (V2)
0,84
précision@5 avec rerank (V3)
2 %
hallucinations avec citations obligatoires (V4)
- La recherche hybride règle presque tous les échecs sur les identifiants exacts : un code d’erreur ou un nom de table ne se retrouve pas par similarité sémantique.
- Les skills Hermes améliorent surtout la forme : une procédure rendue en étapes numérotées, une décision avec ses alternatives écartées. Gain de précision faible, gain d’usage réel.
- La latence médiane de 2,1 s est tirée par la génération, pas par la recherche (280 ms tout compris).
- Découpage des passages : 400 tokens avec chevauchement de 80 a donné les meilleurs résultats. Plus court perd le contexte, plus long dilue la réponse.
Ce qu’on en conclut
“Le jour où l’outil a répondu « je ne trouve pas » à une question dont j’étais sûr de connaître la réponse, j’ai vérifié : la doc n’existait pas. On l’a écrite.”
Et maintenant
- Le pipeline V4 est intégré à Jarvis et indexe désormais la documentation de tous nos projets actifs, avec réindexation chaque nuit.
- Les questions « je ne trouve pas » sont remontées chaque semaine aux chefs de projet : c’est devenu notre meilleur détecteur de documentation manquante.
- Prochaine étape : évaluer le même pipeline sur la documentation d’un client, avec cloisonnement strict par projet.