Le RAG (retrieval-augmented generation) promet « répondre depuis vos docs ». Sans discipline, il invente des citations crédibles. Trois lignes de défense.
1. Des documents propres
On nettoie, on découpe en chunks cohérents (pas au milieu d’une phrase), on stocke dans pgvector. Un chunk pourri = une source pourrie.
2. Un retriever évalué
On mesure la précision@k : sur un jeu de questions étiquetées, est-ce que les bons chunks remontent ? Si non, on ajuste le chunking ou l’embedding avant de toucher au LLM.
3. Un prompt contraint
La consigne interdit de répondre sans contexte retrouvé et impose de citer la source. Pas de « selon la documentation », mais « source #2 ».
Le RAG n’est pas magique : c’est une pipeline qu’on teste comme du code.