Chatbot de LLM basado en RAG
Este es unAI RAG, Multimodal AIflujo de automatización del dominio deautomatización que contiene 17 nodos.Utiliza principalmente nodos como GoogleDrive, Agent, GoogleDriveTrigger, ChatTrigger, LmChatOpenAi. Usar RAG, base de datos de vectores Pinecone y OpenAI para crear un chatbot de políticas de empresa
- •Credenciales de API de Google Drive
- •Clave de API de OpenAI
- •Clave de API de Pinecone
Nodos utilizados (17)
Categoría
{
"id": "ijORqghBWmOcVaCd",
"meta": {
"instanceId": "87616dfce72ffd690a51f4d408ac3b27a946f12a1119e0e281f5ed271497219e",
"templateCredsSetupCompleted": true
},
"name": "ChatBot For RAG Based LLMs",
"tags": [],
"nodes": [
{
"id": "93879f6c-0d57-4049-9e42-44d906160eb6",
"name": "Cuando se recibe un mensaje de chat",
"type": "@n8n/n8n-nodes-langchain.chatTrigger",
"position": [
-440,
-300
],
"webhookId": "ba6e0e80-df72-4993-a938-16604c978e0b",
"parameters": {
"public": true,
"options": {}
},
"typeVersion": 1.1
},
{
"id": "688546eb-decc-4d88-b991-e6851d00d3c3",
"name": "Agente de IA",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-80,
-300
],
"parameters": {
"options": {
"systemMessage": "=You are an AI assistant specialized in analyzing user queries and retreive the data using pine cone vectore store via Vectore store QnA Tool. \n\nYour primary task is to answer questions accurately and precisely using the vector database, which contains relevant documents.\n\nOnly provide information that you retrieve from the documents (or verified expert knowledge). If something is not included in the dataset or is unclear, clearly state that you do not have sufficient information.\n\nStructure of your responses:\n• Concise and to the point\n• Specific numbers and facts, when available\n• Clearly indicate which quarterly tax deduction with the information comes from\n\nObjective:\nProvide users with reliable and quick insights to user questions without unnecessary details."
}
},
"typeVersion": 2
},
{
"id": "47d5f4e0-45e6-4a75-8250-76277a33addd",
"name": "OpenAI Modelo de Chat",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
-220,
-60
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "qlhg6EzexBZ9bwXO",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "c5e00f0e-2494-443d-9ff5-ab476f174fda",
"name": "Memoria Simple",
"type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
"position": [
20,
80
],
"parameters": {},
"typeVersion": 1.3
},
{
"id": "5bdc6723-18e4-4637-b31e-2b7a722c2d30",
"name": "Pinecone Almacén Vectorial",
"type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
"position": [
300,
80
],
"parameters": {
"options": {
"pineconeNamespace": "<yourNameSpace>"
},
"pineconeIndex": {
"__rl": true,
"mode": "list",
"value": "n8ntest",
"cachedResultName": "n8ntest"
}
},
"credentials": {
"pineconeApi": {
"id": "PJJqeU0YnPNhhvLk",
"name": "PineconeApi account"
}
},
"typeVersion": 1.2
},
{
"id": "c9325bbd-95ee-49b6-80e3-b8eb18a3044e",
"name": "Embeddings OpenAI",
"type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
"position": [
320,
240
],
"parameters": {
"options": {
"batchSize": 512,
"dimensions": 512
}
},
"credentials": {
"openAiApi": {
"id": "qlhg6EzexBZ9bwXO",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "1752c787-78f3-4c03-a44a-f619358b002b",
"name": "Calculadora",
"type": "@n8n/n8n-nodes-langchain.toolCalculator",
"position": [
760,
-120
],
"parameters": {},
"typeVersion": 1
},
{
"id": "c5130a15-b2fa-4c96-b890-6cda5a5d1e8a",
"name": "Google Disparador de Drive",
"type": "n8n-nodes-base.googleDriveTrigger",
"position": [
-1960,
-240
],
"parameters": {
"event": "fileCreated",
"options": {},
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
},
"triggerOn": "specificFolder",
"folderToWatch": {
"__rl": true,
"mode": "list",
"value": "18ElQ-fxK0zXX5Ahx1lk80OXnAJ9NwvHl",
"cachedResultUrl": "https://drive.google.com/drive/folders/18ElQ-fxK0zXX5Ahx1lk80OXnAJ9NwvHl",
"cachedResultName": "n8n"
}
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "xFTXDFHVEmRlrR5e",
"name": "Google Drive account 2"
}
},
"typeVersion": 1
},
{
"id": "e918feee-188e-42c7-8012-09614b6d73a4",
"name": "Google Drive",
"type": "n8n-nodes-base.googleDrive",
"position": [
-1740,
-240
],
"parameters": {
"fileId": {
"__rl": true,
"mode": "list",
"value": "1AWznNmqjEyztSOFYG9PgKOYX_GfJvI-P",
"cachedResultUrl": "https://drive.google.com/file/d/1AWznNmqjEyztSOFYG9PgKOYX_GfJvI-P/view?usp=drivesdk",
"cachedResultName": "income-tax-bill-2025.pdf"
},
"options": {},
"operation": "download"
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "xFTXDFHVEmRlrR5e",
"name": "Google Drive account 2"
}
},
"typeVersion": 3
},
{
"id": "f2da487d-cbda-478d-8a38-b4c2a920dbaf",
"name": "Cargador de Datos Predeterminado",
"type": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader",
"position": [
-1140,
40
],
"parameters": {
"loader": "pdfLoader",
"options": {},
"dataType": "binary"
},
"typeVersion": 1
},
{
"id": "0ce84124-e903-4b41-a9dc-2b701efbeeaf",
"name": "Separador de Texto Recursivo por Caracteres",
"type": "@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter",
"position": [
-1120,
220
],
"parameters": {
"options": {
"splitCode": "markdown"
},
"chunkOverlap": 50
},
"typeVersion": 1
},
{
"id": "c6fff7f0-d215-4d25-8e4e-bcd5cc200330",
"name": "Nota Adhesiva",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2020,
-600
],
"parameters": {
"width": 940,
"height": 280,
"content": "## Data Loader\n- #### GDrive - Trigger \n This node will trigger for every minute and retrieve details for any change to the folder.\n- #### GDrive - Trigger\n This node will download the latest changes from GDrive and pass them to pin cone vector store\n- #### PineCone Vector Store\n Here, we are actually storing the files by splitting them by leveraging the capabilities of default data loader. \n\n\n"
},
"typeVersion": 1
},
{
"id": "abab349f-8cb4-489e-8a94-d369f89db0e0",
"name": "PineconeVectorStore",
"type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
"position": [
-1480,
-240
],
"parameters": {
"mode": "insert",
"options": {
"pineconeNamespace": "[YouNameSpace]"
},
"pineconeIndex": {
"__rl": true,
"mode": "list",
"value": "n8ntest",
"cachedResultName": "n8ntest"
}
},
"credentials": {
"pineconeApi": {
"id": "PJJqeU0YnPNhhvLk",
"name": "PineconeApi account"
}
},
"typeVersion": 1.2
},
{
"id": "9cee9812-3cc7-4d3f-b7be-6d02b8f7ca3e",
"name": "OpenAI Embeddings",
"type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
"position": [
-1480,
0
],
"parameters": {
"options": {
"batchSize": 512,
"dimensions": 512
}
},
"credentials": {
"openAiApi": {
"id": "qlhg6EzexBZ9bwXO",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "401070d0-b61c-4fd4-9139-f82624e4d7fc",
"name": "Nota Adhesiva1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-500,
-500
],
"parameters": {
"color": 4,
"width": 940,
"height": 180,
"content": "## Data Retrieval\nWe have an AI Agent that connects to Vector Store and Retrieve the required information to the user questions. \n\nThis connects to Vector Store QnA tool which then further connects to Vector Store to fetch the information and share to Ai Agent for further processing. "
},
"typeVersion": 1
},
{
"id": "82fe4b78-b7d9-4ee1-a319-eb6e44d013dd",
"name": "Vector Store QnA",
"type": "@n8n/n8n-nodes-langchain.toolVectorStore",
"position": [
380,
-100
],
"parameters": {
"description": "Returns documents related to company polices and everything important from those policy documents"
},
"typeVersion": 1.1
},
{
"id": "84e007f0-7bfe-4788-900b-9a73376a1318",
"name": "OpenAI Chat Model2",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
780,
60
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "qlhg6EzexBZ9bwXO",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "74b8ed97-4177-4d50-ae41-856da7e16a43",
"connections": {
"1752c787-78f3-4c03-a44a-f619358b002b": {
"ai_tool": [
[
{
"node": "688546eb-decc-4d88-b991-e6851d00d3c3",
"type": "ai_tool",
"index": 0
}
]
]
},
"e918feee-188e-42c7-8012-09614b6d73a4": {
"main": [
[
{
"node": "abab349f-8cb4-489e-8a94-d369f89db0e0",
"type": "main",
"index": 0
}
]
]
},
"c5e00f0e-2494-443d-9ff5-ab476f174fda": {
"ai_memory": [
[
{
"node": "688546eb-decc-4d88-b991-e6851d00d3c3",
"type": "ai_memory",
"index": 0
}
]
]
},
"82fe4b78-b7d9-4ee1-a319-eb6e44d013dd": {
"ai_tool": [
[
{
"node": "688546eb-decc-4d88-b991-e6851d00d3c3",
"type": "ai_tool",
"index": 0
}
]
]
},
"c9325bbd-95ee-49b6-80e3-b8eb18a3044e": {
"ai_embedding": [
[
{
"node": "5bdc6723-18e4-4637-b31e-2b7a722c2d30",
"type": "ai_embedding",
"index": 0
}
]
]
},
"47d5f4e0-45e6-4a75-8250-76277a33addd": {
"ai_languageModel": [
[
{
"node": "688546eb-decc-4d88-b991-e6851d00d3c3",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"9cee9812-3cc7-4d3f-b7be-6d02b8f7ca3e": {
"ai_embedding": [
[
{
"node": "abab349f-8cb4-489e-8a94-d369f89db0e0",
"type": "ai_embedding",
"index": 0
}
]
]
},
"84e007f0-7bfe-4788-900b-9a73376a1318": {
"ai_languageModel": [
[
{
"node": "82fe4b78-b7d9-4ee1-a319-eb6e44d013dd",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"f2da487d-cbda-478d-8a38-b4c2a920dbaf": {
"ai_document": [
[
{
"node": "abab349f-8cb4-489e-8a94-d369f89db0e0",
"type": "ai_document",
"index": 0
}
]
]
},
"c5130a15-b2fa-4c96-b890-6cda5a5d1e8a": {
"main": [
[
{
"node": "e918feee-188e-42c7-8012-09614b6d73a4",
"type": "main",
"index": 0
}
]
]
},
"5bdc6723-18e4-4637-b31e-2b7a722c2d30": {
"ai_vectorStore": [
[
{
"node": "82fe4b78-b7d9-4ee1-a319-eb6e44d013dd",
"type": "ai_vectorStore",
"index": 0
}
]
]
},
"93879f6c-0d57-4049-9e42-44d906160eb6": {
"main": [
[
{
"node": "688546eb-decc-4d88-b991-e6851d00d3c3",
"type": "main",
"index": 0
}
]
]
},
"0ce84124-e903-4b41-a9dc-2b701efbeeaf": {
"ai_textSplitter": [
[
{
"node": "f2da487d-cbda-478d-8a38-b4c2a920dbaf",
"type": "ai_textSplitter",
"index": 0
}
]
]
}
}
}¿Cómo usar este flujo de trabajo?
Copie el código de configuración JSON de arriba, cree un nuevo flujo de trabajo en su instancia de n8n y seleccione "Importar desde JSON", pegue la configuración y luego modifique la configuración de credenciales según sea necesario.
¿En qué escenarios es adecuado este flujo de trabajo?
Avanzado - RAG de IA, IA Multimodal
¿Es de pago?
Este flujo de trabajo es completamente gratuito, puede importarlo y usarlo directamente. Sin embargo, tenga en cuenta que los servicios de terceros utilizados en el flujo de trabajo (como la API de OpenAI) pueden requerir un pago por su cuenta.
Flujos de trabajo relacionados recomendados
Pramod Kumar Rathoure
@prathoureDesign and build custom n8n workflows that:\n ⚡ Eliminate repetitive work 📊 Integrate tools like Google Workspace, CRMs, and APIs ✅ Deliver faster, error-free results I create solutions that save time, boost accuracy, and let teams focus on high-value work. For me, automation isn’t just about technology—it’s about freeing people from busywork so they can do what matters most. let’s talk—I can help you turn them into smooth, automated workflows.
Compartir este flujo de trabajo