AutomationFlowsAI & RAG › Ai-powered SEO Content Optimization with Serp Analysis & Slack Approval Workflow

Ai-powered SEO Content Optimization with Serp Analysis & Slack Approval Workflow

ByRahul Joshi @rahul08 on n8n.io

Enhance content quality, SEO performance, and editorial consistency using an AI-powered optimization engine that blends OpenAI, Google Sheets history, Pinecone knowledge, and real-time SERP intelligence. This workflow transforms rough drafts into polished, SEO-optimized content…

Chat trigger trigger★★★★☆ complexityAI-powered20 nodesMemory Buffer WindowOutput Parser StructuredGoogle Sheets ToolGoogle SheetsOpenAI ChatAgentTool Serp ApiChat Trigger
AI & RAG Trigger: Chat trigger Nodes: 20 Complexity: ★★★★☆ AI nodes: yes Added:

This workflow corresponds to n8n.io template #10832 — we link there as the canonical source.

This workflow follows the Agent → Chat Trigger recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "id": "N5iLhAfzIsBXr3ER",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "name": "Optimize SEO Draft Content Using AI with Google Sheets, SERP Data & Slack Approval",
  "tags": [],
  "nodes": [
    {
      "id": "cab26597-8ed8-43a1-b8fd-e17f6b640948",
      "name": "Overview Sticky",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1328,
        -976
      ],
      "parameters": {
        "width": 427,
        "height": 608,
        "content": "## \ud83c\udfaf AI-Powered SEO Content Optimizer\n\n### How it works\nThis workflow takes existing SEO drafts and enhances them using AI, SERP analysis, and historical data. The AI Agent retrieves context from Google Sheets and Pinecone, analyzes competitor content via SerpAPI, then produces an optimized version with improved keywords, structure, and readability. Once optimized, it sends the draft to Slack for human approval before saving.\n\n### Setup steps\n1. **Connect credentials**: OpenAI API, Google Sheets OAuth2, SerpAPI, Slack OAuth, Pinecone API\n2. **Configure Google Sheet**: Update document ID to point to your `content_versions` sheet\n3. **Set Pinecone index**: Ensure your knowledge base index exists and contains relevant content\n4. **Test with sample**: Use the Edit Fields node to input a test topic and content ID\n5. **Approve in Slack**: Respond to the approval message to finalize the optimized content\n\nThe workflow preserves your original meaning while enhancing SEO performance using real-time competitor insights."
      },
      "typeVersion": 1
    },
    {
      "id": "cef216f6-b0de-4f3f-992d-d6800163a8ad",
      "name": "Trigger Section Sticky",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1328,
        -352
      ],
      "parameters": {
        "color": 2,
        "width": 528,
        "height": 304,
        "content": "## \ud83d\ude80 Entry Point & Test Data\n\nStarts the workflow via chat trigger and injects test parameters. Modify the Edit Fields node to change topic, content ID, or optimization goals for your content."
      },
      "typeVersion": 1
    },
    {
      "id": "574a34ab-edb4-4c7e-800d-f1100ae86f5a",
      "name": "AI Engine Sticky",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -768,
        -352
      ],
      "parameters": {
        "color": 2,
        "width": 772,
        "height": 324,
        "content": "## \ud83e\udde0 AI Optimization Engine\n\nThe core agent combines OpenAI GPT-4o-mini with multiple tools: Google Sheets for historical versions, SerpAPI for competitor analysis, and Pinecone for company knowledge. It optimizes content while preserving factual accuracy and original intent."
      },
      "typeVersion": 1
    },
    {
      "id": "53125d62-64b7-4d96-8b4b-11b09a819181",
      "name": "Tools Context Sticky",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -784,
        -16
      ],
      "parameters": {
        "color": 3,
        "width": 980,
        "height": 536,
        "content": "## \ud83d\udcbe Data Tools & Context\n\nThese nodes provide the AI agent with context: past content versions from Sheets, SERP intelligence from Google, and company-specific knowledge from Pinecone vector storage. Short-term memory maintains conversation continuity."
      },
      "typeVersion": 1
    },
    {
      "id": "039a0cba-f1d2-44d2-a36a-2add51d96d5d",
      "name": "Approval Publishing Sticky",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        208,
        -496
      ],
      "parameters": {
        "color": 2,
        "width": 812,
        "height": 628,
        "content": "## \u2705 Human Approval & Publishing\n\nOptimized content is sent to Slack for review. Team members can approve or reject. Approved content gets saved to Google Sheets with versioning metadata and triggers a success notification."
      },
      "typeVersion": 1
    },
    {
      "id": "6b8eb4bb-23f9-4c78-bd2e-fc5a1fec3709",
      "name": "Security Sticky",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        384,
        336
      ],
      "parameters": {
        "color": 3,
        "width": 340,
        "height": 180,
        "content": "## \ud83d\udd10 Credentials & Security\n\nRequired credentials: OpenAI API key, Google Sheets OAuth2, SerpAPI key, Slack OAuth, Pinecone API key. Use environment variables or n8n credential manager. Never hardcode keys in production workflows."
      },
      "typeVersion": 1
    },
    {
      "id": "089a9fcd-09c2-4c8a-a3a0-0feada6b9dcb",
      "name": "Short-Term Memory",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        -608,
        288
      ],
      "parameters": {
        "sessionKey": "optimize-writer-session",
        "sessionIdType": "customKey",
        "contextWindowLength": 7
      },
      "typeVersion": 1.3
    },
    {
      "id": "09eeb2cc-61d5-41ae-8ddd-a252d04cf499",
      "name": "Enforce JSON Output Structure",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        80,
        208
      ],
      "parameters": {
        "jsonSchemaExample": "{\n  \"optimized_draft\": {\n    \"title\": \"AI SEO Basics: How Artificial Intelligence Transforms Search Optimization\",\n    \"meta_description\": \"Discover how AI improves SEO strategies by automating keyword insights, readability, and tone optimization.\",\n    \"sections\": [\n      {\n        \"heading\": \"Introduction\",\n        \"content\": \"AI is reshaping SEO by automating keyword research and enhancing content tone to match user intent.\"\n      },\n      {\n        \"heading\": \"Benefits of AI in SEO\",\n        \"content\": \"AI tools can analyze trends, optimize tone, and generate SEO-friendly drafts faster than manual editing.\"\n      }\n    ],\n    \"word_count\": 1150,\n    \"keywords_used\": [\"AI SEO\", \"content optimization\", \"search ranking\"],\n    \"improvements\": [\"Enhanced meta description\", \"Improved readability\", \"Better keyword placement\"]\n  },\n  \"metadata\": {\n    \"content_id\": \"CNT-1701255487715\",\n    \"version_no\": 4,\n    \"version_id\": \"VER-004\",\n    \"timestamp\": 1701259999999\n  }\n}\n"
      },
      "typeVersion": 1.3
    },
    {
      "id": "09c157c9-709d-4afc-8056-986a1f566320",
      "name": "Retrieve Context from Google Sheets",
      "type": "n8n-nodes-base.googleSheetsTool",
      "position": [
        -480,
        288
      ],
      "parameters": {
        "options": {},
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 2120745354,
          "cachedResultName": "content_versions"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "[Your Google Sheet ID]",
          "cachedResultName": "SEO Content Automation"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "9ceb6f73-cd2e-4ff9-8f79-dbf9e4f8f072",
      "name": "Save Approved Draft to Sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        288,
        -288
      ],
      "parameters": {
        "columns": {
          "value": {
            "tone": "={{ $json.output.optimized_draft.improvements }}",
            "topic": "={{ $json.output.optimized_draft.title }}",
            "section": "={{ $json.output.optimized_draft.sections }}",
            "keywords": "={{ $json.output.optimized_draft.keywords_used }}",
            "meta_desc": "={{ $json.output.optimized_draft.meta_description }}",
            "timestamp": "={{ $json.output.metadata.timestamp }}",
            "content_id": "={{ $json.output.metadata.content_id }}",
            "meta_title": "={{ $json.output.optimized_draft.title }}",
            "version_id": "={{ $json.output.metadata.version_id }}",
            "version_no": "={{ $json.output.metadata.version_no }}",
            "word_count": "={{ $json.output.optimized_draft.word_count }}",
            "context_used": "={{ $json.output.metadata.content_id }}"
          },
          "schema": [
            {
              "id": "content_id",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "content_id",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "version_no",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "version_no",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "version_id",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "version_id",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "topic",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "topic",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "meta_title",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "meta_title",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "meta_desc",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "meta_desc",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "outline",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "outline",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "keywords",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "keywords",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "tone",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "tone",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "word_count",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "word_count",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "cta_ideas",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "cta_ideas",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "context_used",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "context_used",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "timestamp",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "timestamp",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "section",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "section",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "content_id"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 2120745354,
          "cachedResultName": "content_versions"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "[Your Google Sheet ID]",
          "cachedResultName": "SEO Content Automation"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "20607468-137d-4eb8-9de9-a148cce556eb",
      "name": "OpenAI GPT-4o Mini Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -736,
        288
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o-mini",
          "cachedResultName": "gpt-4o-mini"
        },
        "options": {}
      },
      "typeVersion": 1.2
    },
    {
      "id": "21b368ff-b668-46ac-8dac-d3ffbe03dc8c",
      "name": "AI Content Optimization Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -480,
        -192
      ],
      "parameters": {
        "text": "=Topic: {{ $json.topic }}\nIntent: {{ $json.intent }}\nContent ID: {{ $json.content }}\nOptimization Goal: {{ $json.parameter.goal || 'Improve SEO, tone, and readability' }}\nFocus Keywords: {{ $json.parameter.focus_keywords ? $json.parameter.focus_keywords.join(', ') : 'N/A' }}\n\nContext (from Sheets or memory): {{ $json.context || $memory || 'No context found' }}\n\nUsing the content retrieved from Sheets, optimize the article to follow the tone and outline guidelines. \nEnsure it aligns with the optimization goal while maintaining factual accuracy and original intent.\nReturn the optimized article in structured JSON format.\n",
        "options": {
          "systemMessage": "=You are \"Optimization Agent\", a senior content optimizer AI inside an n8n automation system built by Vivek Patidar.\n\nYour job:\nImprove the provided draft WITHOUT rewriting it from scratch by using:\n1. The existing draft text from the workflow input\n2. Historical versions from Google Sheets (\"content_versions\")\n3. SERP intelligence from SerpAPI (competitors, headings, snippets, PAA, related searches)\n4. Brief or metadata passed from the previous stage\n\nYou must produce a refined, SEO-optimized, well-structured and factually consistent version of the draft.\n\n--------------------------------\n\ud83d\udcce HOW TO USE SERP DATA\n--------------------------------\nYou receive SERP data via upstream tools (SerpAPI). Use it to:\n\n- Identify missing topical sections compared to competitors.\n- Enhance keyword coverage and semantic depth.\n- Improve H2/H3 section clarity and completeness.\n- Strengthen meta description using competitor insight.\n- Suggest improvements based on PAA questions (People Also Ask).\n- Add missing angles/topics found across rankings.\n- Improve EEAT signals (expertise, trustworthiness) when relevant.\n- DO NOT output any raw SERP JSON.\n\nSERP data should influence optimization decisions, but never override the original meaning of the draft.\n\n--------------------------------\n\ud83d\udcdd OPTIMIZATION RULES\n--------------------------------\n1. **Never rewrite from scratch.** Always keep the core meaning and structure.\n2. **Preserve tone** from the original draft or brief.\n3. **Preserve factual accuracy** \u2013 no hallucinations.\n4. **Only improve**, refine, reorganize, expand, clarify, or SEO-enhance.\n5. **Use keywords naturally**, avoid keyword stuffing.\n6. **If brief or previous versions exist**, align with them.\n7. **If SERP data suggests missed content**, incorporate it softly into relevant sections.\n8. **If the draft is messy**, reorganize into sections while preserving original paragraphs as much as possible.\n9. **Never expose intermediate reasoning** or tool data.\n\n--------------------------------\n\ud83e\uddfe VERSIONING LOGIC\n--------------------------------\nUse Google Sheets context to determine versioning:\n\n- If content_id already exists:\n  - Increment version_no (ex: 2 \u2192 3)\n  - Create new version_id as \"VER-00X\"_\n"
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 2.1
    },
    {
      "id": "6708ac6e-356b-470f-82ac-5c5fd79e1fb6",
      "name": "Set Input Parameters",
      "type": "n8n-nodes-base.set",
      "position": [
        -960,
        -192
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "06b7c645-7355-413c-8dfe-29b3109eaffb",
              "name": "intent",
              "type": "string",
              "value": "=optimize"
            },
            {
              "id": "ac8d353d-63bb-4e4a-bc9d-03db4a75059c",
              "name": "topic",
              "type": "string",
              "value": "=AI SEO basics"
            },
            {
              "id": "495c9583-b542-47c5-a9ed-d03df149dfc9",
              "name": "content",
              "type": "string",
              "value": "=C001"
            },
            {
              "id": "69e216f5-01f7-417f-9212-9b3fe2d42489",
              "name": "parameter",
              "type": "object",
              "value": "={}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "76e9e9bc-e342-4598-a774-a525cf5e95be",
      "name": "SerpAPI Competitor Analysis",
      "type": "@n8n/n8n-nodes-langchain.toolSerpApi",
      "position": [
        -352,
        288
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 1
    },
    {
      "id": "ebf1039f-cb11-45d5-b10a-2eaaaf8e7e7a",
      "name": "Chat Workflow Trigger",
      "type": "@n8n/n8n-nodes-langchain.chatTrigger",
      "position": [
        -1184,
        -192
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 1.3
    },
    {
      "id": "58886d1f-f68e-4c1e-a871-a3297f6338c6",
      "name": "Check Human Approval Status",
      "type": "n8n-nodes-base.if",
      "position": [
        512,
        -96
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "3c7c4382-eb2a-4fc8-9239-b0b6e212cd9c",
              "operator": {
                "type": "boolean",
                "operation": "equals"
              },
              "leftValue": "={{ $json.data.approved }}",
              "rightValue": true
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "95802a7b-0c6c-4a90-9d55-6a1e4f609764",
      "name": "Send Success Notification to Slack",
      "type": "n8n-nodes-base.slack",
      "position": [
        736,
        -96
      ],
      "parameters": {
        "text": "=Your {{ $('AI Content Optimization Agent').item.json.output.optimized_draft.title }}  has been Successfully Optimized.",
        "select": "channel",
        "channelId": {
          "__rl": true,
          "mode": "list",
          "value": "[Your Slack Channel ID]",
          "cachedResultName": "general-information"
        },
        "otherOptions": {}
      },
      "typeVersion": 2.3
    },
    {
      "id": "b6595610-3187-4459-83f8-2570a8a7952c",
      "name": "Request Human Approval via Slack",
      "type": "n8n-nodes-base.slack",
      "position": [
        288,
        -96
      ],
      "parameters": {
        "select": "channel",
        "message": "=Here the Details :-\nTitle:- {{ $json.output.optimized_draft.title }}\nDescription:-{{ $json.output.optimized_draft.meta_description }} \n\nMetaData:-{{ $json.output.metadata }}\n",
        "options": {},
        "channelId": {
          "__rl": true,
          "mode": "list",
          "value": "[Your Slack Channel ID]",
          "cachedResultName": "general-information"
        },
        "operation": "sendAndWait"
      },
      "typeVersion": 2.3
    },
    {
      "id": "4c989a89-34ef-4df8-afed-6aa9e38d9925",
      "name": "Query Company Knowledge Base",
      "type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
      "position": [
        -224,
        240
      ],
      "parameters": {
        "mode": "retrieve-as-tool",
        "topK": 5,
        "options": {},
        "pineconeIndex": {
          "__rl": true,
          "mode": "list",
          "value": "whatsappchatbot",
          "cachedResultName": "whatsappchatbot"
        },
        "toolDescription": "Retrieve data from the Pinecone knowledge base and use it to answer user queries about the company, products, or projects in a well-structured, human-like manner"
      },
      "typeVersion": 1.3
    },
    {
      "id": "61bdcc12-7c9d-4972-b469-bbbfd843988c",
      "name": "OpenAI Embeddings for Vector Search",
      "type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
      "position": [
        -208,
        400
      ],
      "parameters": {
        "options": {
          "dimensions": 512
        }
      },
      "typeVersion": 1.2
    }
  ],
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "5ba9c512-5803-4dc3-87a2-83d91c96f84a",
  "connections": {
    "Short-Term Memory": {
      "ai_memory": [
        [
          {
            "node": "AI Content Optimization Agent",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "Set Input Parameters": {
      "main": [
        [
          {
            "node": "AI Content Optimization Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Chat Workflow Trigger": {
      "main": [
        [
          {
            "node": "Set Input Parameters",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI GPT-4o Mini Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Content Optimization Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Check Human Approval Status": {
      "main": [
        [
          {
            "node": "Send Success Notification to Slack",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "SerpAPI Competitor Analysis": {
      "ai_tool": [
        [
          {
            "node": "AI Content Optimization Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Query Company Knowledge Base": {
      "ai_tool": [
        [
          {
            "node": "AI Content Optimization Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "AI Content Optimization Agent": {
      "main": [
        [
          {
            "node": "Save Approved Draft to Sheet",
            "type": "main",
            "index": 0
          },
          {
            "node": "Request Human Approval via Slack",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Enforce JSON Output Structure": {
      "ai_outputParser": [
        [
          {
            "node": "AI Content Optimization Agent",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Request Human Approval via Slack": {
      "main": [
        [
          {
            "node": "Check Human Approval Status",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Embeddings for Vector Search": {
      "ai_embedding": [
        [
          {
            "node": "Query Company Knowledge Base",
            "type": "ai_embedding",
            "index": 0
          }
        ]
      ]
    },
    "Retrieve Context from Google Sheets": {
      "ai_tool": [
        [
          {
            "node": "AI Content Optimization Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    }
  }
}
Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

Enhance content quality, SEO performance, and editorial consistency using an AI-powered optimization engine that blends OpenAI, Google Sheets history, Pinecone knowledge, and real-time SERP intelligence. This workflow transforms rough drafts into polished, SEO-optimized content…

Source: https://n8n.io/workflows/10832/ — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

AI & RAG

• Create a Google Drive folder to watch. • Connect your Google Drive account in n8n and authorize access. • Point the Google Drive Trigger node to this folder (new/modified files trigger the flow).

Agent, Chat Trigger, Memory Buffer Window +14
AI & RAG

Advanced Ai Demo Presented At Ai Developers 14 Meetup. Uses slack, stickyNote, textSplitterRecursiveCharacterTextSplitter, embeddingsOpenAi. Chat trigger; 39 nodes.

Slack, Text Splitter Recursive Character Text Splitter, OpenAI Embeddings +14
AI & RAG

Advanced Ai Demo (Presented At Ai Developers #14 Meetup). Uses slack, stickyNote, textSplitterRecursiveCharacterTextSplitter, embeddingsOpenAi. Chat trigger; 39 nodes.

Slack, Text Splitter Recursive Character Text Splitter, OpenAI Embeddings +14
AI & RAG

Workflow 2358. Uses slack, textSplitterRecursiveCharacterTextSplitter, embeddingsOpenAi, documentDefaultDataLoader. Chat trigger; 39 nodes.

Slack, Text Splitter Recursive Character Text Splitter, OpenAI Embeddings +14
AI & RAG

2358. Uses slack, textSplitterRecursiveCharacterTextSplitter, embeddingsOpenAi, documentDefaultDataLoader. Chat trigger; 39 nodes.

Slack, Text Splitter Recursive Character Text Splitter, OpenAI Embeddings +14