---
title: "RAG sur Postgres et pgvector pour une PME"
description: "Architecture d’un RAG sur Supabase et pgvector pour une PME: filtres d’accès, citations, coûts réels et pièges Loi 25. Pas un avis juridique."
canonical: "https://www.gatien.dev/fr/topics/rag-pgvector-supabase-loi-25"
---

# RAG sur Postgres et pgvector pour une PME

Architecture d’un RAG sur Supabase et pgvector pour une PME: filtres d’accès, citations, coûts réels et pièges Loi 25. Pas un avis juridique.

La recherche augmentée (RAG) répond à partir de vos documents, pas à partir de la mémoire du modèle. Pour une PME, la version que je livre tient dans Postgres, avec l’extension pgvector, souvent via Supabase. Les profils LinkedIn décrivent l’outil. Cette page décrit l’architecture, ce qui coûte vraiment, et où la Loi 25 apparaît. Ce n’est pas un avis juridique.

## Architecture minimale

- Documents que vous avez le droit d’indexer: procédures, fiches produit, extraits de contrat déjà classés. Pas « tout le SharePoint ».
- Découpage en morceaux, avec la source, la date et le groupe qui a le droit de les voir.
- Un vecteur par morceau, stocké à côté du texte dans Postgres.
- À la question: filtrer d’abord par groupe d’accès, puis chercher les morceaux proches.
- Réponse avec la citation (fichier, page ou URL). Si rien n’est assez proche, la réponse est « je ne sais pas », pas un paragraphe inventé.
Le filtre d’accès passe avant la similarité. Sinon l’assistant d’un vendeur peut citer une note RH parce que les mots se ressemblent.

## Ce qui fait échouer le prototype

- PDF scannés sans texte. Il faut un passage de reconnaissance, ou ces fichiers restent dehors.
- Morceaux trop longs. Le modèle noie la phrase utile dans trois pages.
- Aucun seuil. Tout corpus renvoie « quelque chose », même hors sujet.
- Deux versions du même règlement. Sans date, le RAG cite l’ancienne.
- Un index unique pour toute l’entreprise, sans groupe.

## Où part l’argent

Le stockage Postgres d’un corpus de PME est la petite ligne. La facture vient d’ailleurs: vectoriser le corpus une fois, le refaire quand un document change, puis les jetons du modèle à chaque question. Un chat qui recolle cinq longs morceaux à chaque tour coûte plus cher qu’un chat qui colle le paragraphe cité.

Je ne publie pas de coût d’embedding générique. Il dépend du volume réel et du modèle. Sur l’appel, on part de votre corpus, pas d’une moyenne lue sur un blogue.

## Loi 25, sans jouer au juriste

Un corpus interne contient souvent des noms, des courriels, des salaires ou des dossiers clients. Les indexer, puis les envoyer à un modèle hébergé hors Québec, c’est un usage de renseignements personnels. Avant d’ouvrir l’outil:

- Écrivez quels documents entrent, et lesquels restent exclus.
- Écrivez quels champs partent dans le prompt. La citation peut souvent rester un extrait, pas la fiche complète.
- Notez le fournisseur du modèle, le pays où il traite, et la durée de rétention des journaux.
- Décidez qui peut interroger quel groupe de documents.
- Prévoyez comment retirer un document d’une personne qui demande l’accès ou la suppression.
La Loi 25 et, selon votre activité, la LPRPDE ne se règlent pas avec une case « données au Canada » sur une brochure. Si le corpus est sensible, faites relire le flux par votre conseil avant la prod. Mon travail est de rendre ce flux lisible: quoi part, quoi reste, quoi est journalisé.

## Ce que le prototype de 14 jours contient

Un corpus limité, choisi avec vous. La recherche avec citation. Une dizaine de questions, dont deux auxquelles l’outil doit répondre qu’il ne sait pas. Le code dans votre dépôt. Pas un index de toute l’entreprise, pas une promesse de juste réponse.

Le budget selon que ce RAG reste isolé ou qu’il se branche au CRM est sur [les trois scénarios de prototype](/fr/topics/budget-prototype-agent-ia).

Apportez dix documents et cinq questions dont vous connaissez déjà la réponse. [Réservez 15 min](https://cal.com/gatien-boquet-x6xt0h/15min). On voit si ça tient dans le [prototype de 14 jours](/fr/services/prototype-ia).

## FAQ

### Faut-il une base vectorielle à part?

Non pour une PME. pgvector dans le Postgres que vous avez déjà, souvent Supabase, suffit tant que le corpus se compte en milliers de morceaux et non en millions.

### Le RAG empêche-t-il les réponses inventées?

Il les réduit si la réponse cite un morceau et se tait quand rien n’est proche. Sans seuil et sans citation, c’est un chat avec des documents collés au hasard.

### Peut-on indexer tout SharePoint?

Pas dans un premier mandat. On indexe un dossier dont vous connaissez le contenu et les droits. Le reste attend que le filtre d’accès tienne.

### Cette page remplace-t-elle un avis sur la Loi 25?

Non. Elle liste les décisions à écrire: documents inclus, champs envoyés au modèle, lieu du fournisseur, retrait d’un document. Le conseil juridique relit si le corpus est sensible.

---

Source page: https://www.gatien.dev/fr/topics/rag-pgvector-supabase-loi-25
Agent index: https://www.gatien.dev/llms.txt
Sitemap: https://www.gatien.dev/sitemap.xml
