Discuter avec un dossier Drive via RAG

Avancé

Ceci est unAI RAG, Multimodal AIworkflow d'automatisation du domainecontenant 20 nœuds.Utilise principalement des nœuds comme GoogleDrive, Agent, GoogleDriveTrigger, ChatTrigger, LmChatOpenAi. Dialoguer avec les documents de Google Drive en utilisant GPT, Pinecone et RAG

Prérequis
  • Informations d'identification Google Drive API
  • Clé API OpenAI
  • Clé API Pinecone
Aperçu du workflow
Visualisation des connexions entre les nœuds, avec support du zoom et du déplacement
Exporter le workflow
Copiez la configuration JSON suivante dans n8n pour importer et utiliser ce workflow
{
  "id": "9RKrZdyiAYeuGv6W",
  "meta": {
    "instanceId": "c23cb86fa0050ec3afbd7900d224878abccb334ae42c0f7ffb061d805dfe19c7",
    "templateCredsSetupCompleted": true
  },
  "name": "Talk with your Drive folder RAG",
  "tags": [
    {
      "id": "GNqLf5pjefdKGbgv",
      "name": "Agent",
      "createdAt": "2025-08-28T08:18:53.209Z",
      "updatedAt": "2025-08-28T08:18:53.209Z"
    }
  ],
  "nodes": [
    {
      "id": "b30ce82d-44b4-46d7-810c-eb64257b4327",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        60,
        400
      ],
      "parameters": {
        "model": "gpt-4o-2024-08-06",
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "gKM5mJZRrP7c1SlE",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "18f18c72-0066-4803-8128-5d7d143d2c85",
      "name": "Mémoire tampon fenêtrée",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        100,
        620
      ],
      "parameters": {
        "sessionKey": "=docs-{{ $json.messages[0].from }}",
        "sessionIdType": "customKey"
      },
      "typeVersion": 1.2
    },
    {
      "id": "950f35d8-fb93-4b6f-b528-c47c25c60301",
      "name": "Outil de stockage vectoriel",
      "type": "@n8n/n8n-nodes-langchain.toolVectorStore",
      "position": [
        300,
        420
      ],
      "parameters": {
        "name": "get_documents",
        "description": "Retrieve information from any company documents"
      },
      "typeVersion": 1
    },
    {
      "id": "5603154c-8a32-48f5-9750-1e2aca633e31",
      "name": "Générer des embeddings pour la recherche avec OpenAI",
      "type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
      "position": [
        200,
        760
      ],
      "parameters": {
        "model": "text-embedding-3-small",
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "gKM5mJZRrP7c1SlE",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "dfd9a08b-ec49-48a5-984f-55cc270de0ae",
      "name": "OpenAI Chat Model1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        580,
        720
      ],
      "parameters": {
        "model": "gpt-4o-2024-08-06",
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "gKM5mJZRrP7c1SlE",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "2b385fec-c2f9-43a9-bb28-e42b38346c44",
      "name": "Embeddings OpenAI1",
      "type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
      "position": [
        -960,
        340
      ],
      "parameters": {
        "model": "text-embedding-3-small",
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "gKM5mJZRrP7c1SlE",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "5431b1f1-1c98-4073-a15e-f46bc04a9481",
      "name": "Chargeur de données par défaut",
      "type": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader",
      "position": [
        -820,
        240
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 1
    },
    {
      "id": "f4ffd33e-8a9b-4f5a-b4a9-ec286b13ce68",
      "name": "Séparateur de texte récursif",
      "type": "@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter",
      "position": [
        -660,
        400
      ],
      "parameters": {
        "options": {},
        "chunkSize": 2000,
        "chunkOverlap": 100
      },
      "typeVersion": 1
    },
    {
      "id": "918aa3af-19fa-48d3-8669-3dc841a9ba0b",
      "name": "Note adhésive1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1000,
        -80
      ],
      "parameters": {
        "color": 7,
        "width": 614.6875,
        "height": 731.1875,
        "content": "## 2. Create a Vector Store\n[Read more about the In-Memory Vector Store](https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.vectorstoreinmemory/)"
      },
      "typeVersion": 1
    },
    {
      "id": "95668d63-a834-47a2-82f3-3039d2cb9d84",
      "name": "Note adhésive5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -60,
        -60
      ],
      "parameters": {
        "color": 7,
        "width": 746.6875,
        "height": 929.1875,
        "content": "## 4. AI Agent Responds\n[Learn more about using AI Agents](https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.agent/)\n\nn8n's AI agents are powerful nodes which make it incredibly easy to use state-of-the-art AI in your workflows. Not only do they have the ability to remember conversations per individual customer but also tap into resources such as our product catalogue vector store to pull factual information and data for every question."
      },
      "typeVersion": 1
    },
    {
      "id": "f2a080c7-5fbe-4426-b7d7-226934e76f3f",
      "name": "Agent commercial IA",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        60,
        220
      ],
      "parameters": {
        "text": "={{ $json.chatInput }}",
        "options": {
          "systemMessage": "You a personal assistant that helps me make decisions based on my internal information pdfs. Your goal is not to facilitate a explain any questions user might have about the documents.\n\nDo your best to answer any questions factually. If you don't know the answer or unable to obtain the information from the datastore, then tell the user so.\n\nAlways answer in short message, in the size of one paragraph: between 100 and 200 words. Better to answer in short messages, human like."
        },
        "promptType": "define"
      },
      "typeVersion": 1.6
    },
    {
      "id": "20a21f7b-e05e-4300-853e-7c1efbb6dfc7",
      "name": "Télécharger le fichier depuis Google Drive",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        -1260,
        140
      ],
      "parameters": {
        "fileId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $json.id }}"
        },
        "options": {
          "fileName": "={{ $json.name }}"
        },
        "operation": "download"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "null",
          "name": "Google Drive account"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "c81c5d09-a9d2-41b1-a0a6-d00eb1a7b58a",
      "name": "Google Drive File Updated",
      "type": "n8n-nodes-base.googleDriveTrigger",
      "position": [
        -1580,
        360
      ],
      "parameters": {
        "event": "fileUpdated",
        "options": {},
        "pollTimes": {
          "item": [
            {
              "mode": "everyMinute"
            }
          ]
        },
        "triggerOn": "specificFolder",
        "folderToWatch": {
          "__rl": true,
          "mode": "list",
          "value": "1WlejjfGrijAhMsJ2zWUa-2OZsiXIj4Bu",
          "cachedResultUrl": "https://drive.google.com/drive/folders/null",
          "cachedResultName": "4. Personal Helper"
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "null",
          "name": "Google Drive account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "186f3de8-cdb9-4190-91ec-aceba939a70c",
      "name": "Google Drive File Created",
      "type": "n8n-nodes-base.googleDriveTrigger",
      "position": [
        -1580,
        160
      ],
      "parameters": {
        "event": "fileCreated",
        "options": {
          "fileType": "all"
        },
        "pollTimes": {
          "item": [
            {
              "mode": "everyMinute"
            }
          ]
        },
        "triggerOn": "specificFolder",
        "folderToWatch": {
          "__rl": true,
          "mode": "list",
          "value": "1WlejjfGrijAhMsJ2zWUa-2OZsiXIj4Bu",
          "cachedResultUrl": "https://drive.google.com/drive/folders/null",
          "cachedResultName": "4. Personal Helper"
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "6k5Fu82oEMsV1a3A",
          "name": "Google Drive account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "91e7cd3d-e35b-4483-b092-0350873fdb7c",
      "name": "Note adhésive3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2060,
        -680
      ],
      "parameters": {
        "width": 320,
        "content": "## Add documents to vector store when updating or creating new documents in Google Drive"
      },
      "typeVersion": 1
    },
    {
      "id": "bcda0f55-7251-48b0-b3ed-b2739b151dbe",
      "name": "Note adhésive",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1700,
        -60
      ],
      "parameters": {
        "color": 7,
        "width": 640,
        "height": 655,
        "content": "## 1. Build Databse\n[Read more about the HTTP Request Tool](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.httprequest)\n\nImport your marketing PDF document to build your vector store. This will be used as the knowledgebase by the Tourist guide AI Agent."
      },
      "typeVersion": 1
    },
    {
      "id": "d74cef89-3f35-4a1e-b0db-fcced3f11227",
      "name": "When chat message received",
      "type": "@n8n/n8n-nodes-langchain.chatTrigger",
      "position": [
        -240,
        220
      ],
      "webhookId": "7d2ecd50-140d-4b7d-a07b-42300ce295b0",
      "parameters": {
        "public": true,
        "options": {}
      },
      "typeVersion": 1.1
    },
    {
      "id": "d1ecb940-335c-40c9-9880-d899b50aaa1b",
      "name": "Pinecone Vector Store",
      "type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
      "position": [
        -900,
        40
      ],
      "parameters": {
        "mode": "insert",
        "options": {},
        "pineconeIndex": {
          "__rl": true,
          "mode": "list",
          "value": "my-docs",
          "cachedResultName": "my-docs"
        }
      },
      "credentials": {
        "pineconeApi": {
          "id": "oXLXLM4QUaxoxCQM",
          "name": "PineconeApi account - M "
        }
      },
      "typeVersion": 1
    },
    {
      "id": "4e62dd9c-6c3a-4f13-9f0f-fef2df99a304",
      "name": "Pinecone Vector Store (Retrieval)",
      "type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
      "position": [
        280,
        600
      ],
      "parameters": {
        "options": {},
        "pineconeIndex": {
          "__rl": true,
          "mode": "list",
          "value": "my-docs",
          "cachedResultName": "my-docs"
        }
      },
      "credentials": {
        "pineconeApi": {
          "id": "oXLXLM4QUaxoxCQM",
          "name": "PineconeApi account - M "
        }
      },
      "typeVersion": 1
    },
    {
      "id": "0efaa10f-2908-41a6-aeda-cd54c168f4ba",
      "name": "Télécharger le fichier depuis Google Drive1",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        -1300,
        380
      ],
      "parameters": {
        "driveId": {
          "__rl": true,
          "mode": "list",
          "value": "0AGMjmhIM2B3eUk9PVA",
          "cachedResultUrl": "https://drive.google.com/drive/folders/0AGMjmhIM2B3eUk9PVA",
          "cachedResultName": "Shape Labs"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "list",
          "value": "1WlejjfGrijAhMsJ2zWUa-2OZsiXIj4Bu",
          "cachedResultUrl": "https://drive.google.com/drive/folders/1WlejjfGrijAhMsJ2zWUa-2OZsiXIj4Bu",
          "cachedResultName": "4. Personal Helper"
        },
        "resource": "folder"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "6k5Fu82oEMsV1a3A",
          "name": "Google Drive account"
        }
      },
      "typeVersion": 3
    }
  ],
  "active": true,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "e1019cc3-1fb9-421f-a440-ad87d0dc8d53",
  "connections": {
    "f2a080c7-5fbe-4426-b7d7-226934e76f3f": {
      "main": [
        []
      ]
    },
    "Embeddings OpenAI": {
      "ai_embedding": [
        [
          {
            "node": "4e62dd9c-6c3a-4f13-9f0f-fef2df99a304",
            "type": "ai_embedding",
            "index": 0
          }
        ]
      ]
    },
    "b30ce82d-44b4-46d7-810c-eb64257b4327": {
      "ai_languageModel": [
        [
          {
            "node": "f2a080c7-5fbe-4426-b7d7-226934e76f3f",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "950f35d8-fb93-4b6f-b528-c47c25c60301": {
      "ai_tool": [
        [
          {
            "node": "f2a080c7-5fbe-4426-b7d7-226934e76f3f",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "2b385fec-c2f9-43a9-bb28-e42b38346c44": {
      "ai_embedding": [
        [
          {
            "node": "d1ecb940-335c-40c9-9880-d899b50aaa1b",
            "type": "ai_embedding",
            "index": 0
          }
        ]
      ]
    },
    "dfd9a08b-ec49-48a5-984f-55cc270de0ae": {
      "ai_languageModel": [
        [
          {
            "node": "950f35d8-fb93-4b6f-b528-c47c25c60301",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "5431b1f1-1c98-4073-a15e-f46bc04a9481": {
      "ai_document": [
        [
          {
            "node": "d1ecb940-335c-40c9-9880-d899b50aaa1b",
            "type": "ai_document",
            "index": 0
          }
        ]
      ]
    },
    "18f18c72-0066-4803-8128-5d7d143d2c85": {
      "ai_memory": [
        [
          {
            "node": "f2a080c7-5fbe-4426-b7d7-226934e76f3f",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "186f3de8-cdb9-4190-91ec-aceba939a70c": {
      "main": [
        [
          {
            "node": "20a21f7b-e05e-4300-853e-7c1efbb6dfc7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c81c5d09-a9d2-41b1-a0a6-d00eb1a7b58a": {
      "main": [
        [
          {
            "node": "20a21f7b-e05e-4300-853e-7c1efbb6dfc7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "d74cef89-3f35-4a1e-b0db-fcced3f11227": {
      "main": [
        [
          {
            "node": "f2a080c7-5fbe-4426-b7d7-226934e76f3f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "20a21f7b-e05e-4300-853e-7c1efbb6dfc7": {
      "main": [
        [
          {
            "node": "d1ecb940-335c-40c9-9880-d899b50aaa1b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "4e62dd9c-6c3a-4f13-9f0f-fef2df99a304": {
      "ai_vectorStore": [
        [
          {
            "node": "950f35d8-fb93-4b6f-b528-c47c25c60301",
            "type": "ai_vectorStore",
            "index": 0
          }
        ]
      ]
    },
    "f4ffd33e-8a9b-4f5a-b4a9-ec286b13ce68": {
      "ai_textSplitter": [
        [
          {
            "node": "5431b1f1-1c98-4073-a15e-f46bc04a9481",
            "type": "ai_textSplitter",
            "index": 0
          }
        ]
      ]
    }
  }
}
Foire aux questions

Comment utiliser ce workflow ?

Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.

Dans quelles scénarios ce workflow est-il adapté ?

Avancé - RAG IA, IA Multimodale

Est-ce payant ?

Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.

Informations sur le workflow
Niveau de difficulté
Avancé
Nombre de nœuds20
Catégorie2
Types de nœuds12
Description de la difficulté

Adapté aux utilisateurs avancés, avec des workflows complexes contenant 16+ nœuds

Auteur

Backend engineer with 10+ years of experience designing and optimizing database-driven systems. I help teams build scalable, secure, and high-performance infrastructure using modern backend stacks. Book a call to discuss how I can support your API, data, or automation workflows.

Liens externes
Voir sur n8n.io

Partager ce workflow

Catégories

Catégories: 34