FlowKitVoir les packs

Template n8n · Pack Assistant RAG

Créer un chatbot RAG avec citations dans n8n

Le cœur du Pack Assistant RAG : un chat n8n public qui interroge votre base vectorielle Supabase et répond en citant ses sources. Six nodes suffisent — c'est la démonstration que le RAG de production n'exige ni framework ni code.

Pipelinechatbot-rag-citations.json · 6 nodes
  1. ChattriggerChat (trigger)
  2. Assistant documentaireChaîne RAG (Q&R)
  3. Base vectorielle SupabaseBase vectorielle Supabase

Sous-nodes IA rattachés

  • Modèle OpenAIModèle OpenAI
  • RetrieverRetriever
  • Embeddings OpenAIEmbeddings OpenAI

Le problème que ça règle

Un LLM brut répond à tout, y compris à côté : demandez-lui votre politique de remboursement et il en inventera une plausible. Pour un usage professionnel, la réponse doit venir de vos documents, et être vérifiable.

Le RAG résout les deux exigences : la recherche vectorielle fournit les passages pertinents, le prompt contraint le modèle à ne rien affirmer hors de ce contexte et à citer chaque source. L'utilisateur peut vérifier, la confiance s'installe.

Comment le workflow fonctionne, node par node

  1. 01

    Chat

    Chat (trigger)

    Interface de chat hébergée par n8n, accessible par URL publique — partageable à l'équipe sans développer de frontend. Gère aussi l'identifiant de session.

  2. 02

    Assistant documentaire

    Chaîne RAG (Q&R)

    Chaîne question-réponse avec récupération : elle injecte les passages retrouvés dans le prompt ({context}) et impose de répondre uniquement à partir d'eux, avec citation [source] et refus poli hors périmètre.

  3. 03

    Modèle OpenAI

    Modèle OpenAI

    Sous-node ai_languageModel (gpt-4o-mini). Montez vers un modèle plus capable si vos documents sont denses ou vos questions multi-documents.

  4. 04

    Retriever

    Retriever

    Sous-node ai_retriever : ramène les 4 fragments les plus proches de la question (topK réglable — plus de contexte contre plus de bruit).

  5. 05

    Base vectorielle Supabase

    Base vectorielle Supabase

    Mode retrieve sur la table documents : exécute la recherche de similarité via la fonction match_documents côté Postgres.

  6. 06

    Embeddings OpenAI

    Embeddings OpenAI

    Vectorise la question de l'utilisateur avec le même modèle que l'ingestion (text-embedding-3-small) — indispensable : question et documents doivent vivre dans le même espace vectoriel.

Ce qu'il faut pour le faire tourner

  • n8n ≥ 1.60 avec les nodes LangChain
  • Une base Supabase pgvector déjà alimentée (workflows d'ingestion PDF ou Notion du même pack)
  • Une clé API OpenAI
  • La fonction SQL match_documents installée (fournie dans le guide du pack)

Pistes de personnalisation

  • Adapter le ton et la langue du prompt (répondre en français même sur des documents anglais, par exemple)
  • Augmenter topK à 6-8 pour des questions transverses, au prix d'un peu plus de tokens
  • Restreindre l'accès en désactivant le mode public du chat et en l'intégrant à votre outil interne via l'API du même pack

FAQ

Questions fréquentes

Comment importer ce template dans n8n ?

Importez chatbot-rag-citations.json via « Import from File », associez vos credentials OpenAI et Supabase, vérifiez que la table documents contient des fragments, activez, puis ouvrez l'URL publique affichée sur le node Chat.

Que répond le bot si la réponse n'est pas dans mes documents ?

Le prompt lui impose de le dire explicitement plutôt que d'improviser : il indique qu'il ne trouve pas l'information dans la documentation fournie et suggère de reformuler ou de contacter un humain.

Comment les citations fonctionnent-elles ?

Chaque fragment indexé porte sa métadonnée source (nom du fichier, URL Notion…). Le prompt exige que chaque affirmation soit suivie de sa source entre crochets, telle qu'elle apparaît dans les métadonnées du passage utilisé.