Architecture IA
Retriever Hybride
Le retriever hybride est le cœur de la qualité : il combine plusieurs moteurs pour ne pas dépendre d’un seul signal.
PostgreSQLpgvectorTurbovecElasticsearchRe-ranking
Rôle du retriever
Le retriever récupère les candidats avant le LLM. L’hybride évite de miser uniquement sur les embeddings : certains sujets demandent une référence exacte, d’autres une proximité de sens, d’autres encore une relation métier.
flowchart TB
Q[Question] --> A[Analyse intention / filtres]
A --> B[Elasticsearch BM25]
A --> C[pgvector]
A --> D[Turbovec]
A --> E[PostgreSQL métadonnées ACL]
A --> F[Knowledge Graph]
B --> G[Fusion scores]
C --> G
D --> G
E --> G
F --> G
G --> H[Déduplication]
H --> I[Re-ranking]
I --> J[Top context]
Briques techniques
| Brique | Usage | Pourquoi |
|---|---|---|
| PostgreSQL | Source de vérité documentaire. | ACL, versions, statuts, traçabilité. |
| pgvector | Recherche vectorielle intégrée. | Simple, fiable, proche des métadonnées. |
| Turbovec | Index vectoriel compressé. | Réduction mémoire/coût, performance. |
| Elasticsearch | BM25, full-text, filtres. | Termes exacts, références, facettes. |
| Knowledge Graph | Relations métier. | Renvois, exceptions, dépendances. |
Re-ranking
Le re-ranker relit la question et les chunks candidats pour les classer selon leur pertinence réelle. Le retriever maximise le rappel ; le re-ranker maximise la précision.
score_final = 0.30 * semantic + 0.25 * lexical + 0.20 * source_authority + 0.15 * metadata + 0.10 * freshness
Risques et garde-fous
- Ne pas surpondérer le vectoriel au détriment des références exactes.
- Tracer la contribution de chaque moteur dans le score final.
- Maintenir un jeu d’évaluation métier pour tester les changements.
- Prévoir un fallback si un index est indisponible.