Mon workflow
Ceci est unSupport Chatbot, AI RAGworkflow d'automatisation du domainecontenant 26 nœuds.Utilise principalement des nœuds comme Set, Code, Webhook, GoogleDrive, HttpRequest. Utiliser Google Drive et GPT-4o pour créer un chatbot de base de connaissances avec recherche vectorielle
- •Point de terminaison HTTP Webhook (généré automatiquement par n8n)
- •Informations d'identification Google Drive API
- •Peut nécessiter les informations d'identification d'authentification de l'API cible
- •Clé API OpenAI
Nœuds utilisés (26)
Catégorie
{
"meta": {
"instanceId": "0f4ab867ceb8faa35a96b3ba8bfe372ed23fd9289fb2f308ae76570118367d6d"
},
"name": "My workflow",
"tags": [],
"nodes": [
{
"id": "3c701a7e-738e-44d4-af9b-c3629d0e471e",
"name": "Recursive Character Text Splitter",
"type": "@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter",
"position": [
760,
920
],
"parameters": {
"options": {},
"chunkOverlap": 100
},
"typeVersion": 1
},
{
"id": "51a61f7f-610b-4cda-8405-11983fec7c8a",
"name": "Default Data Loader",
"type": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader",
"position": [
780,
740
],
"parameters": {
"options": {},
"dataType": "binary",
"binaryMode": "specificField"
},
"typeVersion": 1
},
{
"id": "805a12e8-2d85-4951-929c-76df85ad4e0f",
"name": "Simple Vector Store",
"type": "@n8n/n8n-nodes-langchain.vectorStoreInMemory",
"position": [
700,
540
],
"parameters": {
"mode": "insert",
"memoryKey": {
"__rl": true,
"mode": "list",
"value": "vector_store_key"
}
},
"typeVersion": 1.2
},
{
"id": "c17de454-87ab-4a69-b129-bf77a5afbb66",
"name": "Embeddings OpenAI",
"type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
"position": [
620,
740
],
"parameters": {
"options": {}
},
"typeVersion": 1.2
},
{
"id": "14c2ff00-618f-4ea3-aeb8-212aa76d28ef",
"name": "OpenAI Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
1400,
680
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini"
},
"options": {}
},
"typeVersion": 1.2
},
{
"id": "318ca8eb-0e06-4ba9-bcc2-c57b65254794",
"name": "Répondre aux questions avec un vector store",
"type": "@n8n/n8n-nodes-langchain.toolVectorStore",
"position": [
1700,
640
],
"parameters": {},
"typeVersion": 1.1
},
{
"id": "286f2e2b-1a70-48c8-a619-1e01cacf8cee",
"name": "Simple Vector Store2",
"type": "@n8n/n8n-nodes-langchain.vectorStoreInMemory",
"position": [
1560,
840
],
"parameters": {
"memoryKey": {
"__rl": true,
"mode": "list",
"value": "vector_store_key"
}
},
"typeVersion": 1.2
},
{
"id": "1603e15d-db26-4174-bb32-0d8f429d3fca",
"name": "Embeddings OpenAI1",
"type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
"position": [
1540,
980
],
"parameters": {
"options": {}
},
"typeVersion": 1.2
},
{
"id": "c6623fd4-2ccc-4a15-9b10-07024c916eeb",
"name": "OpenAI Chat Model1",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
1840,
840
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini"
},
"options": {}
},
"typeVersion": 1.2
},
{
"id": "e7c3e7a9-5d38-4dd4-983f-1f4a104f4fe9",
"name": "Note adhésive1",
"type": "n8n-nodes-base.stickyNote",
"position": [
3200,
1020
],
"parameters": {
"color": 4,
"width": 620,
"height": 920,
"content": "## Google Drive Connection\nTo set up Google Drive OAuth2 credentials in n8n (using the recommended OAuth2 method), follow these steps:\n\n1. Create a Google Cloud Project:\n - Go to the Google Cloud Console.\n - Create a new project or select an existing one.\n\n2. Enable the Google Drive API:\n - In your project, navigate to “APIs & Services” > “Library”.\n - Search for “Google Drive API” and enable it.\n\n3. Configure OAuth Consent Screen:\n - Go to “APIs & Services” > “OAuth consent screen”.\n - Fill in the required fields (app name, user support email, etc.).\n - Add the necessary scopes (for Google Drive, typically https://www.googleapis.com/auth/drive).\n\n4. Create OAuth2 Credentials:\n - Go to “APIs & Services” > “Credentials”.\n - Click “Create Credentials” > “OAuth client ID”.\n - Choose “Web application”.\n - Add the following to “Authorized redirect URIs”:\n - https://<your-n8n-domain>/rest/oauth2-credential/callback\n - If running locally: http://localhost:5678/rest/oauth2-credential/callback\n\n5. Copy the Client ID and Client Secret.\n \n6. In n8n:\n - Go to “Credentials” and create new credentials for “Google Drive OAuth2 API”.\n - Enter the Client ID and Client Secret you copied from Google Cloud.\n - Set the appropriate scopes (e.g., https://www.googleapis.com/auth/drive).\n - Save and connect the credentials.\n\nAfter this, your Google Drive OAuth2 credentials should be set up and ready to use in your n8n workflows.\n\nNote: If you get 403:access denied you need to go back to Google cloud.\n - Go to Audience\n - Add your Email in Test users"
},
"typeVersion": 1
},
{
"id": "fac8b33c-f829-4d39-8eee-c773c93980e6",
"name": "Note adhésive",
"type": "n8n-nodes-base.stickyNote",
"position": [
3200,
0
],
"parameters": {
"color": 6,
"width": 620,
"height": 980,
"content": "## 🛠️ Configuration Guide After Importing the Template\n\nOnce you download and import the chatbot template into your n8n instance, follow these steps to configure it properly:\n\n---\n\n### 🔑 1. **Set Up Google Drive Credentials**\n\n- Go to **Credentials** in n8n.\n- Create new credentials for **Google Drive OAuth2 API**.\n- Add your **Client ID** and **Client Secret** from Google Cloud Console \n(Follow the Google drive connection guide on the next green note).\n- Make sure to add the redirect URL:\n ```\n https://<your-n8n-domain>/rest/oauth2-credential/callback\n ```\n- Use the created credential in all `Google Drive` nodes.\n---\n\n### 📁 2. **Set the File or Folder to Load from Google Drive**\n\n- All the `Google Drive` node (except Download Files node):\n - Set the file name or folder name to search for.\n- In the `Google Drive Download Files` node:\n - Map the file ID from the search result using expressions like:\n ```\n {{$json[\"id\"]}}\n ```\n---\n\n### 🔐 3. **Connect Your OpenAI Credentials**\n\n- Create a new credential in n8n for **OpenAI API**.\n- Paste your OpenAI API key.\n- Use this credential in:\n - `Embeddings OpenAI` node\n - `OpenAI Chat Model` node\n - `Answer questions with a vector store`\n\n---"
},
"typeVersion": 1
},
{
"id": "6bbd55eb-29bb-4322-83a8-ebb46292802b",
"name": "Note adhésive2",
"type": "n8n-nodes-base.stickyNote",
"position": [
2540,
0
],
"parameters": {
"width": 620,
"height": 520,
"content": "# 🤖 Simple AI Chatbot Using Google Drive Knowledge in n8n\n\nThis guide explains how to use an **AI chatbot powered by OpenAI**, where the knowledge comes from files (like PDFs, text, etc.) stored in **Google Drive**. No coding needed!\n\n---\n\n## 📌 What This Workflow Does\n\n- Automatic file updates from Google Drive \n- Converts it into a searchable knowledge base (vector store)\n- Allows users to chat and ask questions about that file\n- AI replies based **only** on the content in your file!\n\n---"
},
"typeVersion": 1
},
{
"id": "3a3ff629-4664-4b11-8de0-56eeb236044e",
"name": "Télécharger des fichiers",
"type": "n8n-nodes-base.googleDrive",
"position": [
500,
540
],
"parameters": {
"fileId": {
"__rl": true,
"mode": "id",
"value": "={{ $json.id }}"
},
"options": {},
"operation": "download"
},
"typeVersion": 3
},
{
"id": "79414561-32d3-4d1c-924f-341ce16aeb76",
"name": "Note adhésive3",
"type": "n8n-nodes-base.stickyNote",
"position": [
0,
0
],
"parameters": {
"color": 3,
"width": 1080,
"height": 1160,
"content": "\n### 🧩 PART 1: **File Upload and Knowledge Preparation**\n\n| Node | What It Does |\n|----------------------------------------------|--------------------------------------------------------------|\n| 📂 File created in the Folder | Triggered when a new file is uploaded to Google Drive |\n|----------------------------------------------|--------------------------------------------------------------|\n| 📂 File updated in the Folder | Triggered when an existing file is updated |\n|----------------------------------------------|--------------------------------------------------------------|\n| 🔍 Search Files in your Google Drive | Finds the new or updated file |\n|----------------------------------------------|--------------------------------------------------------------|\n| ⬇️ Download Files | Downloads the actual content of the file |\n|----------------------------------------------|--------------------------------------------------------------|\n| 🧠 Embeddings OpenAI | Converts file into searchable AI vectors |\n|----------------------------------------------|--------------------------------------------------------------|\n| 📄 Default Data Loader | Loads document into chunks |\n|----------------------------------------------|--------------------------------------------------------------|\n| 🔁 Recursive Character Text Splitter | Splits large documents into clean text blocks |\n|----------------------------------------------|--------------------------------------------------------------|\n| 🧊 Simple Vector Store | Stores the vectors for AI retrieval later |\n"
},
"typeVersion": 1
},
{
"id": "d64086c3-31bb-4876-8652-df1c287f4a53",
"name": "Note adhésive4",
"type": "n8n-nodes-base.stickyNote",
"position": [
1120,
0
],
"parameters": {
"color": 5,
"width": 1380,
"height": 1160,
"content": "### 🧠 PART 2: **AI Chatbot for Question Answering**\n\n| Node | What It Does |\n|----------------------------------------------|--------------------------------------------------------------|\n| 🌐 Webhook | Receives incoming question requests from external apps |\n|----------------------------------------------|--------------------------------------------------------------|\n| 📝 Edit Fields | Maps and formats incoming user data |\n|----------------------------------------------|--------------------------------------------------------------|\n| 🤖 AI Agent | Core logic and decision-making engine |\n|----------------------------------------------|--------------------------------------------------------------|\n| 🔁 Window Buffer Memory | Maintains conversation memory |\n|----------------------------------------------|--------------------------------------------------------------|\n| 🧊 Simple Vector Store2 | Retrieves stored file knowledge |\n|----------------------------------------------|--------------------------------------------------------------|\n| 📚 Answer questions with vector store | Searches relevant parts of the uploaded file |\n|----------------------------------------------|--------------------------------------------------------------|\n| 💬 OpenAI Chat Model(s) | Generates AI response |\n|----------------------------------------------|--------------------------------------------------------------|\n| 🔎 Is AI Agent output exist? | Conditional check to ensure a valid reply |\n|----------------------------------------------|--------------------------------------------------------------|\n| 🔐 Token Authentication | Validates that the request is authorized |\n|----------------------------------------------|--------------------------------------------------------------|\n| 📤 Send to Chat App | Sends response back to user via external platform |\n"
},
"typeVersion": 1
},
{
"id": "0eeeddda-95e7-46a2-8c0a-d09b1da5ecf1",
"name": "Webhook",
"type": "n8n-nodes-base.webhook",
"position": [
1160,
440
],
"webhookId": "bfb0e32d-659b-4fc5-a7a3-695c55137855",
"parameters": {
"path": "bfb0e32d-659b-4fc5-a7a3-695c55137855",
"options": {},
"httpMethod": "POST"
},
"typeVersion": 2
},
{
"id": "6428ae4e-6702-4776-9430-6c808b1588df",
"name": "Modifier les champs",
"type": "n8n-nodes-base.set",
"position": [
1340,
440
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "e2a61b06-dc33-4c30-8197-cf6de3dc4a5d",
"name": "chatInput",
"type": "string",
"value": "={{ $json.body.Data.ChatMessage.Content }}"
},
{
"id": "fc96dfe9-cc87-4004-b812-cb1fa84e7f67",
"name": "sessionId",
"type": "string",
"value": "={{ $json.body.Data.ChatMessage.RoomId }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "5bb23164-475f-45ee-a1c7-59ca9600a07a",
"name": "La sortie de l'agent IA existe-t-elle ?",
"type": "n8n-nodes-base.code",
"position": [
1860,
440
],
"parameters": {
"jsCode": "const ai = items.find(i => i.json.output);\nconst fallback = \"Sorry, I didn’t understand your message. Please try again or send a text.\";\n\nreturn [\n {\n json: {\n content: ai?.json.output || fallback\n }\n }\n];"
},
"typeVersion": 2
},
{
"id": "bb54bb65-8bf0-440f-9479-da920e2a8da3",
"name": "Agent IA",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
1520,
440
],
"parameters": {
"options": {
"systemMessage": "You are a friendly and well-informed customer support specialist for Venio, a third-party multichannel messaging platform. Stay factual. You must answer the user's question using only the information provided in the document content below. Do not invent or guess information outside the context. Remember to ensure the answer is correct refer to the file.\n\nYour task is to answer customer questions clearly, patiently, and in a warm, supportive tone.\n\nDo not to say feel free to ask or something like that"
}
},
"typeVersion": 2
},
{
"id": "4b847538-28d1-4e61-ba01-89d46e74fc24",
"name": "Authentification par jeton",
"type": "n8n-nodes-base.httpRequest",
"position": [
2080,
440
],
"parameters": {
"url": "<Your-Token-Url>",
"method": "POST",
"options": {
"redirect": {
"redirect": {}
}
},
"sendBody": true,
"contentType": "form-urlencoded",
"sendHeaders": true,
"bodyParameters": {
"parameters": [
{
"name": "grant_type",
"value": "client_credentials"
},
{
"name": "client_id",
"value": "<Your-Client-Id>"
},
{
"name": "client_secret",
"value": "<Your-Client-Secret>"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "Ocp-Apim-Subscription-Key",
"value": "<Your-Subscription-Key>"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "1aa5a0b5-304f-43ac-9119-13938c815010",
"name": "Envoyer à l'application de chat",
"type": "n8n-nodes-base.httpRequest",
"position": [
2300,
440
],
"parameters": {
"url": "<Your-Chat-Url>",
"method": "POST",
"options": {
"redirect": {
"redirect": {}
}
},
"sendBody": true,
"sendHeaders": true,
"bodyParameters": {
"parameters": [
{
"name": "roomId",
"value": "={{ $('Webhook').item.json.body.Data.ChatMessage.RoomId }}"
},
{
"name": "content",
"value": "={{ $('Is AI Agent output exist?').item.json.content }}"
},
{
"name": "type",
"value": "message"
},
{
"name": "platform",
"value": "={{ $('Webhook').item.json.body.Data.ChatMessage.Platform }}"
},
{
"name": "companyId",
"value": "={{ $('Webhook').item.json.body.Data.ChatMessage.User.CompanyId }}"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "=Bearer {{ $json.access_token }}"
},
{
"name": "Ocp-Apim-Subscription-Key",
"value": "<Your-Subscription-Key>"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "01d71fdf-4979-4478-a480-a0d15de8dab5",
"name": "Fichier créé dans le dossier",
"type": "n8n-nodes-base.googleDriveTrigger",
"position": [
80,
460
],
"parameters": {
"event": "fileCreated",
"options": {},
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
},
"triggerOn": "specificFolder",
"folderToWatch": {
"__rl": true,
"mode": "list",
"value": "1Ve5ZLtQwpK5Hq4YxZTNRduRgPlSMZ1hJ",
"cachedResultUrl": "https://drive.google.com/drive/folders/1Ve5ZLtQwpK5Hq4YxZTNRduRgPlSMZ1hJ",
"cachedResultName": "ChatbotTest"
}
},
"typeVersion": 1
},
{
"id": "a2cf29ab-fa4d-4185-9a0d-eb22e04bf836",
"name": "Fichier mis à jour dans le dossier",
"type": "n8n-nodes-base.googleDriveTrigger",
"position": [
80,
660
],
"parameters": {
"event": "fileUpdated",
"options": {},
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
},
"triggerOn": "specificFolder",
"folderToWatch": {
"__rl": true,
"mode": "list",
"value": "1Ve5ZLtQwpK5Hq4YxZTNRduRgPlSMZ1hJ",
"cachedResultUrl": "https://drive.google.com/drive/folders/1Ve5ZLtQwpK5Hq4YxZTNRduRgPlSMZ1hJ",
"cachedResultName": "ChatbotTest"
}
},
"typeVersion": 1
},
{
"id": "f8c00b8a-13da-451a-855c-ccc424fd56c1",
"name": "Rechercher des fichiers dans votre dossier Google Drive",
"type": "n8n-nodes-base.googleDrive",
"position": [
300,
540
],
"parameters": {
"filter": {
"driveId": {
"__rl": true,
"mode": "list",
"value": "My Drive",
"cachedResultUrl": "https://drive.google.com/drive/my-drive",
"cachedResultName": "My Drive"
},
"folderId": {
"__rl": true,
"mode": "list",
"value": "1Ve5ZLtQwpK5Hq4YxZTNRduRgPlSMZ1hJ",
"cachedResultUrl": "https://drive.google.com/drive/folders/1Ve5ZLtQwpK5Hq4YxZTNRduRgPlSMZ1hJ",
"cachedResultName": "ChatbotTest"
}
},
"options": {},
"resource": "fileFolder"
},
"typeVersion": 3
},
{
"id": "a4f972ff-d5cb-4ac0-ad79-a7a582b2d4c3",
"name": "Window Buffer Memory",
"type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
"position": [
1560,
680
],
"parameters": {},
"typeVersion": 1.3
},
{
"id": "0df89f09-5e2b-4242-a276-10c48df7f1c5",
"name": "Note adhésive5",
"type": "n8n-nodes-base.stickyNote",
"position": [
2540,
560
],
"parameters": {
"color": 2,
"width": 620,
"height": 1380,
"content": "---\n\n### 🌐 Webhook URL Customization (Important)\n\nWhen you create a **Webhook node** in n8n, it automatically generates a unique URL for receiving data.\n\n✅ **You do not need to delete or manually change this URL**, but you can customize the **path** if needed.\n\nFor example:\n```\nhttps://your-n8n-domain/webhook/my-ai-chatbot\n```\n\n📌 You can:\n- Click on the **Webhook node**\n- Set a **Custom Path** in the **HTTP Method + Path** section\n- Use this custom URL in external tools, forms, or apps to send questions to the chatbot\n\nThis makes integration more user-friendly and consistent with your platform naming.\n\n> ✨ Tip: Keep the path short and meaningful, like `/webhook/ask-ai` or `/webhook/hr-bot`.\n\n---\n---\n\n### 🔐 Token Authentication & Send to Chat App – URL Notes\n\nIn the following nodes, you also have to deal with URLs that should be customized for your system:\n\n---\n#### ✅ Token Authentication Node\n\n- This node is used to **verify incoming requests** to ensure only authorized apps/users can interact with the chatbot.\n- Typically, you'll compare a token (e.g., from headers or body) against a stored secret or environment variable.\n- You **do not need to hardcode the webhook URL** inside this node, but you can **define expected token values** per integration.\n\n> ✨ If you're calling the chatbot from external services, make sure they **include the token** in the correct format.\n---\n\n#### 📤 Send to Chat App Node\n\n- This is the final step where the chatbot sends the answer back to your front-end, bot, or chat system.\n- **Make sure to customize the target URL** where the answer should be posted.\n\nFor example:\n```\nhttps://your-frontend.com/api/chat-response\n```\n\n✅ Best Practice:\n- Use an environment variable or a `Set` node to define the target base URL.\n- This makes it easy to update without modifying the entire workflow.\n\n> 💡 You can also dynamically route messages using user ID or channel info in the webhook payload.\n\n---\n"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "",
"connections": {
"0eeeddda-95e7-46a2-8c0a-d09b1da5ecf1": {
"main": [
[
{
"node": "6428ae4e-6702-4776-9430-6c808b1588df",
"type": "main",
"index": 0
}
]
]
},
"bb54bb65-8bf0-440f-9479-da920e2a8da3": {
"main": [
[
{
"node": "5bb23164-475f-45ee-a1c7-59ca9600a07a",
"type": "main",
"index": 0
}
]
]
},
"6428ae4e-6702-4776-9430-6c808b1588df": {
"main": [
[
{
"node": "bb54bb65-8bf0-440f-9479-da920e2a8da3",
"type": "main",
"index": 0
}
]
]
},
"3a3ff629-4664-4b11-8de0-56eeb236044e": {
"main": [
[
{
"node": "805a12e8-2d85-4951-929c-76df85ad4e0f",
"type": "main",
"index": 0
}
]
]
},
"c17de454-87ab-4a69-b129-bf77a5afbb66": {
"ai_embedding": [
[
{
"node": "805a12e8-2d85-4951-929c-76df85ad4e0f",
"type": "ai_embedding",
"index": 0
}
]
]
},
"14c2ff00-618f-4ea3-aeb8-212aa76d28ef": {
"ai_languageModel": [
[
{
"node": "bb54bb65-8bf0-440f-9479-da920e2a8da3",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"1603e15d-db26-4174-bb32-0d8f429d3fca": {
"ai_embedding": [
[
{
"node": "286f2e2b-1a70-48c8-a619-1e01cacf8cee",
"type": "ai_embedding",
"index": 0
}
]
]
},
"c6623fd4-2ccc-4a15-9b10-07024c916eeb": {
"ai_languageModel": [
[
{
"node": "318ca8eb-0e06-4ba9-bcc2-c57b65254794",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"51a61f7f-610b-4cda-8405-11983fec7c8a": {
"ai_document": [
[
{
"node": "805a12e8-2d85-4951-929c-76df85ad4e0f",
"type": "ai_document",
"index": 0
}
]
]
},
"286f2e2b-1a70-48c8-a619-1e01cacf8cee": {
"ai_vectorStore": [
[
{
"node": "318ca8eb-0e06-4ba9-bcc2-c57b65254794",
"type": "ai_vectorStore",
"index": 0
}
]
]
},
"4b847538-28d1-4e61-ba01-89d46e74fc24": {
"main": [
[
{
"node": "1aa5a0b5-304f-43ac-9119-13938c815010",
"type": "main",
"index": 0
}
]
]
},
"a4f972ff-d5cb-4ac0-ad79-a7a582b2d4c3": {
"ai_memory": [
[
{
"node": "bb54bb65-8bf0-440f-9479-da920e2a8da3",
"type": "ai_memory",
"index": 0
}
]
]
},
"5bb23164-475f-45ee-a1c7-59ca9600a07a": {
"main": [
[
{
"node": "4b847538-28d1-4e61-ba01-89d46e74fc24",
"type": "main",
"index": 0
}
]
]
},
"01d71fdf-4979-4478-a480-a0d15de8dab5": {
"main": [
[
{
"node": "f8c00b8a-13da-451a-855c-ccc424fd56c1",
"type": "main",
"index": 0
}
]
]
},
"a2cf29ab-fa4d-4185-9a0d-eb22e04bf836": {
"main": [
[
{
"node": "f8c00b8a-13da-451a-855c-ccc424fd56c1",
"type": "main",
"index": 0
}
]
]
},
"3c701a7e-738e-44d4-af9b-c3629d0e471e": {
"ai_textSplitter": [
[
{
"node": "51a61f7f-610b-4cda-8405-11983fec7c8a",
"type": "ai_textSplitter",
"index": 0
}
]
]
},
"318ca8eb-0e06-4ba9-bcc2-c57b65254794": {
"ai_tool": [
[
{
"node": "bb54bb65-8bf0-440f-9479-da920e2a8da3",
"type": "ai_tool",
"index": 0
}
]
]
},
"f8c00b8a-13da-451a-855c-ccc424fd56c1": {
"main": [
[
{
"node": "3a3ff629-4664-4b11-8de0-56eeb236044e",
"type": "main",
"index": 0
}
]
]
}
}
}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é - Chatbot de support, RAG IA
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.
Workflows recommandés
Gofive
@gofiveWe create word-class software experience. Our offering includes "Venio" a highly innovative mobile-first CRM for B2B solution. "empeo" the complete HR solution for a multi-generational workplace and "eTaxGo" electronic tax invoice for organization.
Partager ce workflow