Qu'est-ce que le RAG et pourquoi c'est important

GPT-4o standard ne connaît pas les documents internes de votre entreprise, votre catalogue produit, ni vos données clients. Le RAG résout ce problème : vous stockez votre contenu sous forme d'embeddings vectoriels dans une base de données, et au moment de la requête, vous trouvez les fragments les plus pertinents et les envoyez comme contexte au LLM.

Résultat : un assistant IA qui répond à des questions sur vos données spécifiques, avec précision et en citant ses sources. Pour les entreprises françaises, c'est particulièrement utile pour construire des bases de connaissances internes, des bots de support client, ou des assistants juridiques sur corpus documentaire.

La bonne nouvelle : vous n'avez besoin ni de Python, ni de compétences en ML pour déployer cette architecture.

Étape 1 : Activer pgvector dans Supabase

Supabase est livré avec pgvector intégré. Dans l'éditeur SQL de Supabase, exécutez : CREATE EXTENSION IF NOT EXISTS vector;

Créez ensuite votre table documents avec les colonnes content (texte), embedding (vector(1536)), metadata (jsonb) et created_at.

Créez un index pour la recherche de similarité rapide : CREATE INDEX ON documents USING ivfflat (embedding vector_cosine_ops);

C'est le seul SQL que vous devez écrire. Supabase gère tout le reste — hébergement, sauvegardes, scalabilité. Pour un projet en France, choisissez la région EU West (Paris ou Francfort) pour la conformité RGPD.

Étape 2 : Générer des embeddings avec Xano

Dans Xano, créez un endpoint qui accepte une chaîne de texte, appelle l'API OpenAI Embeddings (text-embedding-3-small), et stocke le résultat dans votre table documents Supabase.

Le function stack : (1) Récupérer l'entrée texte, (2) Appeler l'API OpenAI POST /v1/embeddings, (3) Extraire le tableau d'embedding de la réponse, (4) Insérer dans Supabase via le connecteur API Supabase.

Exécutez ceci pour chaque document, article ou entrée FAQ que vous voulez que votre IA connaisse. Une bonne pratique : découpez les longs documents en chunks de 500-800 mots pour une meilleure précision de recherche.

Étape 3 : Recherche sémantique dans Xano

Créez un second endpoint qui : (1) Accepte une chaîne de requête utilisateur, (2) Génère un embedding pour la requête (même appel OpenAI), (3) Exécute une recherche de similarité vectorielle dans Supabase.

La fonction RPC Supabase pour cela retourne le contenu et les scores de similarité avec la requête, ordonnés du plus pertinent au moins pertinent, limités aux 5 meilleurs résultats.

Cette recherche sémantique est fondamentalement différente d'une recherche par mots-clés : elle comprend le sens et le contexte, pas juste les termes exacts. Un utilisateur qui demande "procédure de remboursement" trouvera aussi les documents sur "politique de retour".

Étape 4 : Générer la réponse avec GPT-4o

Avec les fragments récupérés, appelez l'API Chat Completions d'OpenAI. Le prompt système guide le LLM pour qu'il réponde uniquement à partir du contexte fourni, en déclarant clairement quand la réponse n'est pas dans les documents.

Cette ancrage de la réponse dans vos données réelles empêche les hallucinations — problème majeur des LLMs non contextualisés. Pour les cas d'usage professionnels (support client, documentation technique, conformité réglementaire), c'est la différence entre un outil fiable et un outil inutilisable.

Pensez à adapter le prompt en français pour de meilleurs résultats avec des utilisateurs francophones.

Étape 5 : Construire l'interface de chat dans WeWeb

Dans WeWeb, créez une interface de chat avec une liste de messages et un champ de saisie. Au moment de l'envoi : appelez votre endpoint de recherche Xano, puis streamez la réponse GPT via le support de streaming de Xano ou un appel direct OpenAI depuis le code personnalisé de WeWeb.

Pour la production, ajoutez : historique des messages (stocké dans Supabase), citations des sources (montrez quels documents ont été récupérés), et un mécanisme de feedback (pouce haut/bas pour améliorer la qualité de récupération).

Ce type d'application est particulièrement demandé par les cabinets d'avocats, les services RH et les équipes support en France — secteurs avec de grandes bases documentaires et des utilisateurs non techniques.