AI agent to chat with files in Supabase Storage
n8n-workflow-2621.n8n.io
· n8n.io
Video Guide I prepared a detailed guide explaining how to set up and implement this scenario, enabling you to chat with your documents stored in Supabase using n8n.  Youtube Link Who is this for? This workflow is ideal for researchers, analysts, business owners, or anyone managing a large collection of documents. It's particularly beneficial for those who need quick contextual information retrieval from text-heavy files stored in Supabase, without needing additional services like Google Drive. What problem does this workflow solve? Manually retrieving and analyzing specific information from large document repositories is time-consuming and inefficient. This workflow automates the process by vectorizing documents and enabling AI-powered interactions, making it easy to query and retrieve context-based information from uploaded files. What this workflow does The workflow integrates Supabase with an AI-powered chatbot to proce
n8n-workflow-2621.n8n.io via a single DNS TXT record to add the
verified by owner badge, embed an Agenstry badge on your README, and earn back the missing conformance points listed below.
Dispute or improve this rating
F
Conformance score: 19/100
F-grade: card is reachable but fails most operational signals.
click to expand breakdown ▾
click to collapse breakdown ▴
agent-card.json changed within the last 7 days. We track these so downstream callers can react.
Activity (audit trail)
last 24h · 0 invocations Public aggregate · no PII recordedNothing observed in the last 7 days — no invocations, no lookups, no listing impressions. Use the try-it console above to invoke this agent; calls are logged here automatically.
Endpoints
| Agent card | https://n8n.io/workflows/2621 |
| Provider | https://n8n.io |
| Docs | https://n8n.io/workflows/2621 |
Health · last 0 probes
Similar agents embedding-nearest
Embed your Agenstry badge
Paste any of these into your README, agent card, or marketing page. Each badge auto-updates and links back to this page.
Markdown / HTML snippets
[](https://agenstry.com/agents/n8n-workflow-2621.n8n.io) [](https://agenstry.com/agents/n8n-workflow-2621.n8n.io) [](https://agenstry.com/agents/n8n-workflow-2621.n8n.io) [](https://agenstry.com/agents/n8n-workflow-2621.n8n.io)
Audit-grade evidence bundle
JSON snapshot for vendor-review files. Add ?sign=true for a JWS-signed envelope verifiable against
our JWKS. See the methodology.
Raw agent card JSON
{
"_source": "n8n.io",
"workflow": {
"id": 2621,
"name": "AI agent to chat with files in Supabase Storage",
"totalViews": 80727,
"price": null,
"purchaseUrl": null,
"recentViews": 2,
"createdAt": "2024-12-10T19:04:24.160Z",
"user": {
"username": "lowcodingdev",
"verified": true
},
"readyToDemo": null,
"nodes": [
{
"id": 19,
"icon": "file:httprequest.svg",
"name": "n8n-nodes-base.httpRequest",
"codex": {
"data": {
"alias": [
"API",
"Request",
"URL",
"Build",
"cURL"
],
"resources": {
"generic": [
{
"url": "https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/",
"icon": "\u2600\ufe0f",
"label": "2021: The Year to Automate the New You with n8n"
},
{
"url": "https://n8n.io/blog/why-business-process-automation-with-n8n-can-change-your-daily-life/",
"icon": "\ud83e\uddec",
"label": "Why business process automation with n8n can change your daily life"
},
{
"url": "https://n8n.io/blog/automatically-pulling-and-visualizing-data-with-n8n/",
"icon": "\ud83d\udcc8",
"label": "Automatically pulling and visualizing data with n8n"
},
{
"url": "https://n8n.io/blog/learn-how-to-automatically-cross-post-your-content-with-n8n/",
"icon": "\u270d\ufe0f",
"label": "Learn how to automatically cross-post your content with n8n"
},
{
"url": "https://n8n.io/blog/automatically-adding-expense-receipts-to-google-sheets-with-telegram-mindee-twilio-and-n8n/",
"icon": "\ud83e\uddfe",
"label": "Automatically Adding Expense Receipts to Google Sheets with Telegram, Mindee, Twilio, and n8n"
},
{
"url": "https://n8n.io/blog/running-n8n-on-ships-an-interview-with-maranics/",
"icon": "\ud83d\udef3",
"label": "Running n8n on ships: An interview with Maranics"
},
{
"url": "https://n8n.io/blog/what-are-apis-how-to-use-them-with-no-code/",
"icon": " \ud83e\udea2",
"label": "What are APIs and how to use them with no code"
},
{
"url": "https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/",
"icon": "\u26a1\ufe0f",
"label": "5 tasks you can automate with the new Notion API "
},
{
"url": "https://n8n.io/blog/world-poetry-day-workflow/",
"icon": "\ud83d\udcdc",
"label": "Celebrating World Poetry Day with a daily poem in Telegram"
},
{
"url": "https://n8n.io/blog/automate-google-apps-for-productivity/",
"icon": "\ud83d\udca1",
"label": "15 Google apps you can combine and automate to increase productivity"
},
{
"url": "https://n8n.io/blog/automate-designs-with-bannerbear-and-n8n/",
"icon": "\ud83c\udfa8",
"label": "Automate Designs with Bannerbear and n8n"
},
{
"url": "https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/",
"icon": " \ud83d\udd78\ufe0f",
"label": "How uProc scraped a multi-page website with a low-code workflow"
},
{
"url": "https://n8n.io/blog/building-an-expense-tracking-app-in-10-minutes/",
"icon": "\ud83d\udcf1",
"label": "Building an expense tracking app in 10 minutes"
},
{
"url": "https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/",
"icon": "\ud83e\udd16",
"label": "5 workflow automations for Mattermost that we love at n8n"
},
{
"url": "https://n8n.io/blog/how-to-use-the-http-request-node-the-swiss-army-knife-for-workflow-automation/",
"icon": "\ud83e\uddf0",
"label": "How to use the HTTP Request Node - The Swiss Army Knife for Workflow Automation"
},
{
"url": "https://n8n.io/blog/learn-how-to-use-webhooks-with-mattermost-slash-commands/",
"icon": "\ud83e\udd84",
"label": "Learn how to use webhooks with Mattermost slash commands"
},
{
"url": "https://n8n.io/blog/how-a-membership-development-manager-automates-his-work-and-investments/",
"icon": "\ud83d\udcc8",
"label": "How a Membership Development Manager automates his work and investments"
},
{
"url": "https://n8n.io/blog/a-low-code-bitcoin-ticker-built-with-questdb-and-n8n-io/",
"icon": "\ud83d\udcc8",
"label": "A low-code bitcoin ticker built with QuestDB and n8n.io"
},
{
"url": "https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/",
"icon": "\ud83c\udfa1",
"label": "How to set up a no-code CI/CD pipeline with GitHub and TravisCI"
},
{
"url": "https://n8n.io/blog/automations-for-activists/",
"icon": "\u2728",
"label": "How Common Knowledge use workflow automation for activism"
},
{
"url": "https://n8n.io/blog/creating-scheduled-text-affirmations-with-n8n/",
"icon": "\ud83e\udd1f",
"label": "Creating scheduled text affirmations with n8n"
},
{
"url": "https://n8n.io/blog/how-goomer-automated-their-operations-with-over-200-n8n-workflows/",
"icon": "\ud83d\udef5",
"label": "How Goomer automated their operations with over 200 n8n workflows"
},
{
"url": "https://n8n.io/blog/aws-workflow-automation/",
"label": "7 no-code workflow automations for Amazon Web Services"
}
],
"primaryDocumentation": [
{
"url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/"
}
]
},
"categories": [
"Development",
"Core Nodes"
],
"nodeVersion": "1.0",
"codexVersion": "1.0",
"subcategories": {
"Core Nodes": [
"Helpers"
]
}
}
},
"group": "[\"output\"]",
"defaults": {
"name": "HTTP Request",
"color": "#0004F5"
},
"iconData": {
"type": "file",
"fileBuffer": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00MCAyMEM0MCA4Ljk1MzE0IDMxLjA0NjkgMCAyMCAwQzguOTUzMTQgMCAwIDguOTUzMTQgMCAyMEMwIDMxLjA0NjkgOC45NTMxNCA0MCAyMCA0MEMzMS4wNDY5IDQwIDQwIDMxLjA0NjkgNDAgMjBaTTIwIDM2Ljk0NThDMTguODg1MiAzNi45NDU4IDE3LjEzNzggMzUuOTY3IDE1LjQ5OTggMzIuNjk4NUMxNC43OTY0IDMxLjI5MTggMTQuMTk2MSAyOS41NDMxIDEzLjc1MjYgMjcuNjg0N0gyNi4xODk4QzI1LjgwNDUgMjkuNTQwMyAyNS4yMDQ0IDMxLjI5MDEgMjQuNTAwMiAzMi42OTg1QzIyLjg2MjIgMzUuOTY3IDIxLjExNDggMzYuOTQ1OCAyMCAzNi45NDU4Wk0xMi45MDY0IDIwQzEyLjkwNjQgMjEuNjA5NyAxMy4wMDg3IDIzLjE2NCAxMy4yMDAzIDI0LjYzMDVIMjYuNzk5N0MyNi45OTEzIDIzLjE2NCAyNy4wOTM2IDIxLjYwOTcgMjcuMDkzNiAyMEMyNy4wOTM2IDE4LjM5MDMgMjYuOTkxMyAxNi44MzYgMjYuNzk5NyAxNS4zNjk1SDEzLjIwMDNDMTMuMDA4NyAxNi44MzYgMTIuOTA2NCAxOC4zOTAzIDEyLjkwNjQgMjBaTTIwIDMuMDU0MTlDMjEuMTE0OSAzLjA1NDE5IDIyLjg2MjIgNC4wMzA3OCAyNC41MDAxIDcuMzAwMzlDMjUuMjA2NiA4LjcxNDA4IDI1LjgwNzIgMTAuNDA2NyAyNi4xOTIgMTIuMzE1M0gxMy43NTAxQzE0LjE5MzMgMTAuNDA0NyAxNC43OTQyIDguNzEyNTQgMTUuNDk5OCA3LjMwMDY0QzE3LjEzNzcgNC4wMzA4MyAxOC44ODUxIDMuMDU0MTkgMjAgMy4wNTQxOVpNMzAuMTQ3OCAyMEMzMC4xNDc4IDE4LjQwOTkgMzAuMDU0MyAxNi44NjE3IDI5LjgyMjcgMTUuMzY5NUgzNi4zMDQyQzM2LjcyNTIgMTYuODQyIDM2Ljk0NTggMTguMzk2NCAzNi45NDU4IDIwQzM2Ljk0NTggMjEuNjAzNiAzNi43MjUyIDIzLjE1OCAzNi4zMDQyIDI0LjYzMDVIMjkuODIyN0MzMC4wNTQzIDIzLjEzODMgMzAuMTQ3OCAyMS41OTAxIDMwLjE0NzggMjBaTTI2LjI3NjcgNC4yNTUxMkMyNy42MzY1IDYuMzYwMTkgMjguNzExIDkuMTMyIDI5LjM3NzQgMTIuMzE1M0gzNS4xMDQ2QzMzLjI1MTEgOC42NjggMzAuMTA3IDUuNzgzNDYgMjYuMjc2NyA0LjI1NTEyWk0xMC42MjI2IDEyLjMxNTNINC44OTI5M0M2Ljc1MTQ3IDguNjY3ODQgOS44OTM1MSA1Ljc4MzQxIDEzLjcyMzIgNC4yNTUxM0MxMi4zNjM1IDYuMzYwMjEgMTEuMjg5IDkuMTMyMDEgMTAuNjIyNiAxMi4zMTUzWk0zLjA1NDE5IDIwQzMuMDU0MTkgMjEuNjAzIDMuMjc3NDMgMjMuMTU3NSAzLjY5NDg0IDI0LjYzMDVIMTAuMTIxN0M5Ljk0NjE5IDIzLjE0MiA5Ljg1MjIyIDIxLjU5NDMgOS44NTIyMiAyMEM5Ljg1MjIyIDE4LjQwNTcgOS45NDYxOSAxNi44NTggMTAuMTIxNyAxNS4zNjk1SDMuNjk0ODRDMy4yNzc0MyAxNi44NDI1IDMuMDU0MTkgMTguMzk3IDMuMDU0MTkgMjBaTTI2LjI3NjYgMzUuNzQyN0MyNy42MzY1IDMzLjYzOTMgMjguNzExIDMwLjg2OCAyOS4zNzc0IDI3LjY4NDdIMzUuMTA0NkMzMy4yNTEgMzEuMzMyMiAzMC4xMDY4IDM0LjIxNzkgMjYuMjc2NiAzNS43NDI3Wk0xMy43MjM0IDM1Ljc0MjdDOS44OTM2OSAzNC4yMTc5IDYuNzUxNTUgMzEuMzMyNCA0Ljg5MjkzIDI3LjY4NDdIMTAuNjIyNkMxMS4yODkgMzAuODY4IDEyLjM2MzUgMzMuNjM5MyAxMy43MjM0IDM1Ljc0MjdaIiBmaWxsPSIjM0E0MkU5Ii8+Cjwvc3ZnPgo="
},
"displayName": "HTTP Request",
"typeVersion": 4,
"nodeCategories": [
{
"id": 5,
"name": "Development"
},
{
"id": 9,
"name": "Core Nodes"
}
]
},
{
"id": 20,
"icon": "fa:map-signs",
"name": "n8n-nodes-base.if",
"codex": {
"data": {
"alias": [
"Router",
"Filter",
"Condition",
"Logic",
"Boolean",
"Branch"
],
"details": "The IF node can be used to implement binary conditional logic in your workflow. You can set up one-to-many conditions to evaluate each item of data being inputted into the node. That data will either evaluate to TRUE or FALSE and route out of the node accordingly.\n\nThis node has multiple types of conditions: Bool, String, Number, and Date & Time.",
"resources": {
"generic": [
{
"url": "https://n8n.io/blog/learn-to-automate-your-factorys-incident-reporting-a-step-by-step-guide/",
"icon": "\ud83c\udfed",
"label": "Learn to Automate Your Factory's Incident Reporting: A Step by Step Guide"
},
{
"url": "https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/",
"icon": "\u2600\ufe0f",
"label": "2021: The Year to Automate the New You with n8n"
},
{
"url": "https://n8n.io/blog/why-business-process-automation-with-n8n-can-change-your-daily-life/",
"icon": "\ud83e\uddec",
"label": "Why business process automation with n8n can change your daily life"
},
{
"url": "https://n8n.io/blog/create-a-toxic-language-detector-for-telegram/",
"icon": "\ud83e\udd2c",
"label": "Create a toxic language detector for Telegram in 4 step"
},
{
"url": "https://n8n.io/blog/no-code-ecommerce-workflow-automations/",
"icon": "store",
"label": "6 e-commerce workflows to power up your Shopify s"
},
{
"url": "https://n8n.io/blog/how-to-build-a-low-code-self-hosted-url-shortener/",
"icon": "\ud83d\udd17",
"label": "How to build a low-code, self-hosted URL shortener in 3 steps"
},
{
"url": "https://n8n.io/blog/automate-your-data-processing-pipeline-in-9-steps-with-n8n/",
"icon": "\u2699\ufe0f",
"label": "Automate your data processing pipeline in 9 steps"
},
{
"url": "https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/",
"icon": "\ud83d\udc65",
"label": "How to get started with CRM automation (with 3 no-code workflow ideas"
},
{
"url": "https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/",
"icon": "\u26a1\ufe0f",
"label": "5 tasks you can automate with the new Notion API "
},
{
"url": "https://n8n.io/blog/automate-google-apps-for-productivity/",
"icon": "\ud83d\udca1",
"label": "15 Google apps you can combine and automate to increase productivity"
},
{
"url": "https://n8n.io/blog/automation-for-maintainers-of-open-source-projects/",
"icon": "\ud83c\udff7\ufe0f",
"label": "How to automatically manage contributions to open-source projects"
},
{
"url": "https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/",
"icon": " \ud83d\udd78\ufe0f",
"label": "How uProc scraped a multi-page website with a low-code workflow"
},
{
"url": "https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/",
"icon": "\ud83e\udd16",
"label": "5 workflow automations for Mattermost that we love at n8n"
},
{
"url": "https://n8n.io/blog/why-this-product-manager-loves-workflow-automation-with-n8n/",
"icon": "\ud83e\udde0",
"label": "Why this Product Manager loves workflow automation with n8n"
},
{
"url": "https://n8n.io/blog/sending-automated-congratulations-with-google-sheets-twilio-and-n8n/",
"icon": "\ud83d\ude4c",
"label": "Sending Automated Congratulations with Google Sheets, Twilio, and n8n "
},
{
"url": "https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/",
"icon": "\ud83c\udfa1",
"label": "How to set up a no-code CI/CD pipeline with GitHub and TravisCI"
},
{
"url": "https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/",
"icon": "\ud83c\udf96",
"label": "Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"
},
{
"url": "https://n8n.io/blog/aws-workflow-automation/",
"label": "7 no-code workflow automations for Amazon Web Services"
}
],
"primaryDocumentation": [
{
"url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.if/"
}
]
},
"categories": [
"Core Nodes"
],
"nodeVersion": "1.0",
"codexVersion": "1.0",
"subcategories": {
"Core Nodes": [
"Flow"
]
}
}
},
"group": "[\"transform\"]",
"defaults": {
"name": "If",
"color": "#408000"
},
"iconData": {
"icon": "map-signs",
"type": "icon"
},
"displayName": "If",
"typeVersion": 2,
"nodeCategories": [
{
"id": 9,
"name": "Core Nodes"
}
]
},
{
"id": 24,
"icon": "file:merge.svg",
"name": "n8n-nodes-base.merge",
"codex": {
"data": {
"alias": [
"Join",
"Concatenate",
"Wait"
],
"resources": {
"generic": [
{
"url": "https://n8n.io/blog/how-to-sync-data-between-two-systems/",
"icon": "\ud83c\udfec",
"label": "How to synchronize data between two systems (one-way vs. two-way sync"
},
{
"url": "https://n8n.io/blog/supercharging-your-conference-registration-process-with-n8n/",
"icon": "\ud83c\udfab",
"label": "Supercharging your conference registration process with n8n"
},
{
"url": "https://n8n.io/blog/migrating-community-metrics-to-orbit-using-n8n/",
"icon": "\ud83d\udcc8",
"label": "Migrating Community Metrics to Orbit using n8n"
},
{
"url": "https://n8n.io/blog/build-your-own-virtual-assistant-with-n8n-a-step-by-step-guide/",
"icon": "\ud83d\udc66",
"label": "Build your own virtual assistant with n8n: A step by step guide"
},
{
"url": "https://n8n.io/blog/sending-automated-congratulations-with-google-sheets-twilio-and-n8n/",
"icon": "\ud83d\ude4c",
"label": "Sending Automated Congratulations with Google Sheets, Twilio, and n8n "
},
{
"url": "https://n8n.io/blog/aws-workflow-automation/",
"label": "7 no-code workflow automations for Amazon Web Services"
}
],
"primaryDocumentation": [
{
"url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.merge/"
}
]
},
"categories": [
"Core Nodes"
],
"nodeVersion": "1.0",
"codexVersion": "1.0",
"subcategories": {
"Core Nodes": [
"Flow",
"Data Transformation"
]
}
}
},
"group": "[\"transform\"]",
"defaults": {
"name": "Merge"
},
"iconData": {
"type": "file",
"fileBuffer": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTEyIiBoZWlnaHQ9IjUxMiIgdmlld0JveD0iMCAwIDUxMiA1MTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8xMTc3XzUxOCkiPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAgNDhDMCAyMS40OTAzIDIxLjQ5MDMgMCA0OCAwSDExMkMxMzguNTEgMCAxNjAgMjEuNDkwMyAxNjAgNDhWNTZIMTk2LjI1MkMyNDAuNDM1IDU2IDI3Ni4yNTIgOTEuODE3MiAyNzYuMjUyIDEzNlYxOTJDMjc2LjI1MiAyMTQuMDkxIDI5NC4xNjEgMjMyIDMxNi4yNTIgMjMySDM1MlYyMjRDMzUyIDE5Ny40OSAzNzMuNDkgMTc2IDQwMCAxNzZINDY0QzQ5MC41MSAxNzYgNTEyIDE5Ny40OSA1MTIgMjI0VjI4OEM1MTIgMzE0LjUxIDQ5MC41MSAzMzYgNDY0IDMzNkg0MDBDMzczLjQ5IDMzNiAzNTIgMzE0LjUxIDM1MiAyODhWMjgwSDMxNi4yNTJDMjk0LjE2MSAyODAgMjc2LjI1MiAyOTcuOTA5IDI3Ni4yNTIgMzIwVjM3NkMyNzYuMjUyIDQyMC4xODMgMjQwLjQzNSA0NTYgMTk2LjI1MiA0NTZIMTYwVjQ2NEMxNjAgNDkwLjUxIDEzOC41MSA1MTIgMTEyIDUxMkg0OEMyMS40OTAzIDUxMiAwIDQ5MC41MSAwIDQ2NFY0MDBDMCAzNzMuNDkgMjEuNDkwMyAzNTIgNDggMzUySDExMkMxMzguNTEgMzUyIDE2MCAzNzMuNDkgMTYwIDQwMFY0MDhIMTk2LjI1MkMyMTMuOTI1IDQwOCAyMjguMjUyIDM5My42NzMgMjI4LjI1MiAzNzZWMzIwQzIyOC4yNTIgMjk0Ljc4NCAyMzguODU5IDI3Mi4wNDQgMjU1Ljg1MyAyNTZDMjM4Ljg1OSAyMzkuOTU2IDIyOC4yNTIgMjE3LjIxNiAyMjguMjUyIDE5MlYxMzZDMjI4LjI1MiAxMTguMzI3IDIxMy45MjUgMTA0IDE5Ni4yNTIgMTA0SDE2MFYxMTJDMTYwIDEzOC41MSAxMzguNTEgMTYwIDExMiAxNjBINDhDMjEuNDkwMyAxNjAgMCAxMzguNTEgMCAxMTJWNDhaTTEwNCA0OEMxMDguNDE4IDQ4IDExMiA1MS41ODE3IDExMiA1NlYxMDRDMTEyIDEwOC40MTggMTA4LjQxOCAxMTIgMTA0IDExMkg1NkM1MS41ODE3IDExMiA0OCAxMDguNDE4IDQ4IDEwNFY1NkM0OCA1MS41ODE3IDUxLjU4MTcgNDggNTYgNDhIMTA0Wk00NTYgMjI0QzQ2MC40MTggMjI0IDQ2NCAyMjcuNTgyIDQ2NCAyMzJWMjgwQzQ2NCAyODQuNDE4IDQ2MC40MTggMjg4IDQ1NiAyODhINDA4QzQwMy41ODIgMjg4IDQwMCAyODQuNDE4IDQwMCAyODBWMjMyQzQwMCAyMjcuNTgyIDQwMy41ODIgMjI0IDQwOCAyMjRINDU2Wk0xMTIgNDA4QzExMiA0MDMuNTgyIDEwOC40MTggNDAwIDEwNCA0MDBINTZDNTEuNTgxNyA0MDAgNDggNDAzLjU4MiA0OCA0MDhWNDU2QzQ4IDQ2MC40MTggNTEuNTgxNyA0NjQgNTYgNDY0SDEwNEMxMDguNDE4IDQ2NCAxMTIgNDYwLjQxOCAxMTIgNDU2VjQwOFoiIGZpbGw9IiM1NEI4QzkiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xMTc3XzUxOCI+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo="
},
"displayName": "Merge",
"typeVersion": 3,
"nodeCategories": [
{
"id": 9,
"name": "Core Nodes"
}
]
},
{
"id": 39,
"icon": "fa:sync",
"name": "n8n-nodes-base.splitInBatches",
"codex": {
"data": {
"alias": [
"Loop",
"Concatenate",
"Batch",
"Split",
"Split In Batches"
],
"resources": {
"generic": [
{
"url": "https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/",
"icon": " \ud83d\udd78\ufe0f",
"label": "How uProc scraped a multi-page website with a low-code workflow"
},
{
"url": "https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/",
"icon": "\ud83c\udf96",
"label": "Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"
}
],
"primaryDocumentation": [
{
"url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.splitinbatches/"
}
]
},
"categories": [
"Core Nodes"
],
"nodeVersion": "1.0",
"codexVersion": "1.0",
"subcategories": {
"Core Nodes": [
"Flow"
]
}
}
},
"group": "[\"organization\"]",
"defaults": {
"name": "Loop Over Items",
"color": "#007755"
},
"iconData": {
"icon": "sync",
"type": "icon"
},
"displayName": "Loop Over Items (Split in Batches)",
"typeVersion": 3,
"nodeCategories": [
{
"id": 9,
"name": "Core Nodes"
}
]
},
{
"id": 112,
"icon": "fa:map-signs",
"name": "n8n-nodes-base.switch",
"codex": {
"data": {
"alias": [
"Router",
"If",
"Path",
"Filter",
"Condition",
"Logic",
"Branch",
"Case"
],
"resources": {
"generic": [
{
"url": "https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/",
"icon": "\u2600\ufe0f",
"label": "2021: The Year to Automate the New You with n8n"
},
{
"url": "https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/",
"icon": "\ud83d\udc65",
"label": "How to get started with CRM automation (with 3 no-code workflow ideas"
},
{
"url": "https://n8n.io/blog/build-your-own-virtual-assistant-with-n8n-a-step-by-step-guide/",
"icon": "\ud83d\udc66",
"label": "Build your own virtual assistant with n8n: A step by step guide"
},
{
"url": "https://n8n.io/blog/automation-for-maintainers-of-open-source-projects/",
"icon": "\ud83c\udff7\ufe0f",
"label": "How to automatically manage contributions to open-source projects"
}
],
"primaryDocumentation": [
{
"url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.switch/"
}
]
},
"categories": [
"Core Nodes"
],
"nodeVersion": "1.0",
"codexVersion": "1.0",
"subcategories": {
"Core Nodes": [
"Flow"
]
}
}
},
"group": "[\"transform\"]",
"defaults": {
"name": "Switch",
"color": "#506000"
},
"iconData": {
"icon": "map-signs",
"type": "icon"
},
"displayName": "Switch",
"typeVersion": 3,
"nodeCategories": [
{
"id": 9,
"name": "Core Nodes"
}
]
},
{
"id": 545,
"icon": "file:supabase.svg",
"name": "n8n-nodes-base.supabase",
"codex": {
"data": {
"resources": {
"primaryDocumentation": [
{
"url": "https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.supabase/"
}
],
"credentialDocumentation": [
{
"url": "https://docs.n8n.io/integrations/builtin/credentials/supabase/"
}
]
},
"categories": [
"Data & Storage"
],
"nodeVersion": "1.0",
"codexVersion": "1.0"
}
},
"group": "[\"input\"]",
"defaults": {
"name": "Supabase"
},
"iconData": {
"type": "file",
"fileBuffer": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDkiIGhlaWdodD0iMTEzIiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSJ1cmwoI2EpIiBkPSJNNjMuNzA4IDExMC4yODRjLTIuODYgMy42MDEtOC42NTggMS42MjgtOC43MjctMi45N2wtMS4wMDctNjcuMjUxaDQ1LjIyYzguMTkgMCAxMi43NTggOS40NiA3LjY2NSAxNS44NzR6Ii8+PHBhdGggZmlsbD0idXJsKCNiKSIgZmlsbC1vcGFjaXR5PSIuMiIgZD0iTTYzLjcwOCAxMTAuMjg0Yy0yLjg2IDMuNjAxLTguNjU4IDEuNjI4LTguNzI3LTIuOTdsLTEuMDA3LTY3LjI1MWg0NS4yMmM4LjE5IDAgMTIuNzU4IDkuNDYgNy42NjUgMTUuODc0eiIvPjxwYXRoIGZpbGw9IiMzRUNGOEUiIGQ9Ik00NS4zMTcgMi4wNzFjMi44Ni0zLjYwMSA4LjY1Ny0xLjYyOCA4LjcyNiAyLjk3bC40NDIgNjcuMjUxSDkuODNjLTguMTkgMC0xMi43NTktOS40Ni03LjY2NS0xNS44NzV6Ii8+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJhIiB4MT0iNTMuOTc0IiB4Mj0iOTQuMTYzIiB5MT0iNTQuOTc0IiB5Mj0iNzEuODI5IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iIzI0OTM2MSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzNFQ0Y4RSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IGlkPSJiIiB4MT0iMzYuMTU2IiB4Mj0iNTQuNDg0IiB5MT0iMzAuNTc4IiB5Mj0iNjUuMDgxIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3AvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1vcGFjaXR5PSIwIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"
},
"displayName": "Supabase",
"typeVersion": 1,
"nodeCategories": [
{
"id": 3,
"name": "Data & Storage"
}
]
},
{
"id": 565,
"icon": "fa:sticky-note",
"name": "n8n-nodes-base.stickyNote",
"codex": {
"data": {
"alias": [
"Comments",
"Notes",
"Sticky"
],
"categories": [
"Core Nodes"
],
"nodeVersion": "1.0",
"codexVersion": "1.0",
"subcategories": {
"Core Nodes": [
"Helpers"
]
}
}
},
"group": "[\"input\"]",
"defaults": {
"name": "Sticky Note",
"color": "#FFD233"
},
"iconData": {
"icon": "sticky-note",
"type": "icon"
},
"displayName": "Sticky Note",
"typeVersion": 1,
"nodeCategories": [
{
"id": 9,
"name": "Core Nodes"
}
]
},
{
"id": 838,
"icon": "fa:mouse-pointer",
"name": "n8n-nodes-base.manualTrigger",
"codex": {
"data": {
"resources": {
"generic": [],
"primaryDocumentation": [
{
"url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.manualworkflowtrigger/"
}
]
},
"categories": [
"Core Nodes"
],
"nodeVersion": "1.0",
"codexVersion": "1.0"
}
},
"group": "[\"trigger\"]",
"defaults": {
"name": "When clicking \u2018Execute workflow\u2019",
"color": "#909298"
},
"iconData": {
"icon": "mouse-pointer",
"type": "icon"
},
"displayName": "Manual Trigger",
"typeVersion": 1,
"nodeCategories": [
{
"id": 9,
"name": "Core Nodes"
}
]
},
{
"id": 1119,
"icon": "fa:robot",
"name": "@n8n/n8n-nodes-langchain.agent",
"codex": {
"data": {
"alias": [
"LangChain",
"Chat",
"Conversational",
"Plan and Execute",
"ReAct",
"Tools"
],
"resources": {
"primaryDocumentation": [
{
"url": "https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.agent/"
}
]
},
"categories": [
"AI",
"Langchain"
],
"subcategories": {
"AI": [
"Agents",
"Root Nodes"
]
}
}
},
"group": "[\"transform\"]",
"defaults": {
"name": "AI Agent",
"color": "#404040"
},
"iconData": {
"icon": "robot",
"type": "icon"
},
"displayName": "AI Agent",
"typeVersion": 3,
"nodeCategories": [
{
"id": 25,
"name": "AI"
},
{
"id": 26,
"name": "Langchain"
}
]
},
{
"id": 1141,
"icon": "file:openAiLight.svg",
"name": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
"codex": {
"data": {
"resources": {
"primaryDocumentation": [
{
"url": "https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.embeddingsopenai/"
}
]
},
"categories": [
"AI",
"Langchain"
],
"subcategories": {
"AI": [
"Embeddings"
]
}
}
},
"group": "[\"transform\"]",
"defaults": {
"name": "Embeddings OpenAI"
},
"iconData": {
"type": "file",
"fileBuffer": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTM2Ljg2NzEgMTYuMzcxOEMzNy43NzQ2IDEzLjY0OCAzNy40NjIxIDEwLjY2NDIgMzYuMDEwOCA4LjE4NjYxQzMzLjgyODIgNC4zODY1MyAyOS40NDA3IDIuNDMxNDkgMjUuMTU1NiAzLjM1MTUxQzIzLjI0OTMgMS4yMDM5NiAyMC41MTA1IC0wLjAxNzMxNDggMTcuNjM5MiAwLjAwMDE4NTUzM0MxMy4yNTkxIC0wLjAwOTgxNDY4IDkuMzcyNzMgMi44MTAyNSA4LjAyNTIgNi45Nzc4M0M1LjIxMTM5IDcuNTU0MSAyLjc4MjU4IDkuMzE1MzggMS4zNjEzIDExLjgxMTdDLTAuODM3NDkzIDE1LjYwMTggLTAuMzM2MjMyIDIwLjM3OTQgMi42MDEzMyAyMy42Mjk0QzEuNjkzODEgMjYuMzUzMiAyLjAwNjMyIDI5LjMzNzEgMy40NTc2IDMxLjgxNDZDNS42NDAxNSAzNS42MTQ3IDEwLjAyNzcgMzcuNTY5NyAxNC4zMTI4IDM2LjY0OTdDMTYuMjE3OSAzOC43OTczIDE4Ljk1NzkgNDAuMDE4NSAyMS44MjkyIDM5Ljk5OThDMjYuMjExOCA0MC4wMTEgMzAuMDk5NCAzNy4xODg1IDMxLjQ0NjkgMzMuMDE3MUMzNC4yNjA4IDMyLjQ0MDkgMzYuNjg5NiAzMC42Nzk2IDM4LjExMDggMjguMTgzM0M0MC4zMDcxIDI0LjM5MzIgMzkuODA0NiAxOS42MTk0IDM2Ljg2ODMgMTYuMzY5M0wzNi44NjcxIDE2LjM3MThaTTIxLjgzMTcgMzcuMzg2QzIwLjA3OCAzNy4zODg1IDE4LjM3OTIgMzYuNzc0NyAxNy4wMzI5IDM1LjY1MDlDMTcuMDk0MSAzNS42MTg0IDE3LjIwMDQgMzUuNTU5NyAxNy4yNjkxIDM1LjUxNzJMMjUuMjM0MyAzMC45MTcxQzI1LjY0MTggMzAuNjg1OCAyNS44OTE4IDMwLjI1MjEgMjUuODg5MyAyOS43ODMzVjE4LjU1NDNMMjkuMjU1NyAyMC40OTgxQzI5LjI5MTkgMjAuNTE1NiAyOS4zMTU3IDIwLjU1MDYgMjkuMzIwNyAyMC41OTA2VjI5Ljg4OTZDMjkuMzE1NyAzNC4wMjQ3IDI1Ljk2NjggMzcuMzc3MiAyMS44MzE3IDM3LjM4NlpNNS43MjY0IDMwLjUwNzFDNC44NDc2MyAyOC45ODk2IDQuNTMxMzcgMjcuMjEwOCA0LjgzMjYzIDI1LjQ4NDVDNC44OTEzOCAyNS41MTk1IDQuOTk1MTMgMjUuNTgzMiA1LjA2ODg4IDI1LjYyNTdMMTMuMDM0MSAzMC4yMjU4QzEzLjQzNzggMzAuNDYyMSAxMy45Mzc4IDMwLjQ2MjEgMTQuMzQyOCAzMC4yMjU4TDI0LjA2NjggMjQuNjEwN1YyOC40OTgzQzI0LjA2OTMgMjguNTM4MyAyNC4wNTA1IDI4LjU3NyAyNC4wMTkzIDI4LjYwMkwxNS45Njc5IDMzLjI1MDlDMTIuMzgxNSAzNS4zMTU5IDcuODAxNDQgMzQuMDg4NCA1LjcyNzY1IDMwLjUwNzFINS43MjY0Wk0zLjYzMDEgMTMuMTIwNUM0LjUwNTEyIDExLjYwMDQgNS44ODY0IDEwLjQzNzkgNy41MzE0NCA5LjgzNDE1QzcuNTMxNDQgOS45MDI5IDcuNTI3NjkgMTAuMDI0MiA3LjUyNzY5IDEwLjEwOTJWMTkuMzEwNkM3LjUyNTE5IDE5Ljc3ODEgNy43NzUxOSAyMC4yMTE5IDguMTgxNDUgMjAuNDQzMUwxNy45MDU0IDI2LjA1N0wxNC41MzkxIDI4LjAwMDhDMTQuNTA1MyAyOC4wMjMzIDE0LjQ2MjggMjguMDI3IDE0LjQyNTMgMjguMDEwOEw2LjM3MjY2IDIzLjM1ODJDMi43OTM4MyAyMS4yODU2IDEuNTY2MzEgMTYuNzA2OCAzLjYyODg1IDEzLjEyMTdMMy42MzAxIDEzLjEyMDVaTTMxLjI4ODIgMTkuNTU2OUwyMS41NjQyIDEzLjk0MTdMMjQuOTMwNiAxMS45OTkyQzI0Ljk2NDMgMTEuOTc2NyAyNS4wMDY4IDExLjk3MjkgMjUuMDQ0MyAxMS45ODkyTDMzLjA5NyAxNi42MzhDMzYuNjgyMSAxOC43MDkzIDM3LjkxMDggMjMuMjk1NyAzNS44Mzk1IDI2Ljg4MDhDMzQuOTYzMyAyOC4zOTgzIDMzLjU4MzIgMjkuNTYwOCAzMS45Mzk1IDMwLjE2NThWMjAuNjg5NEMzMS45NDMyIDIwLjIyMTkgMzEuNjk0NSAxOS43ODk0IDMxLjI4OTQgMTkuNTU2OUgzMS4yODgyWk0zNC42MzgzIDE0LjUxNDJDMzQuNTc5NSAxNC40NzggMzQuNDc1OCAxNC40MTU1IDM0LjQwMiAxNC4zNzNMMjYuNDM2OCA5Ljc3Mjg5QzI2LjAzMzEgOS41MzY2NCAyNS41MzMxIDkuNTM2NjQgMjUuMTI4MSA5Ljc3Mjg5TDE1LjQwNDEgMTUuMzg4VjExLjUwMDRDMTUuNDAxNiAxMS40NjA0IDE1LjQyMDQgMTEuNDIxNyAxNS40NTE2IDExLjM5NjdMMjMuNTAzIDYuNzUxNThDMjcuMDg5NCA0LjY4Mjc5IDMxLjY3NDUgNS45MTQwNiAzMy43NDIgOS41MDE2NEMzNC42MTU4IDExLjAxNjcgMzQuOTMyIDEyLjc5MDUgMzQuNjM1OCAxNC41MTQySDM0LjYzODNaTTEzLjU3NDEgMjEuNDQzMUwxMC4yMDY1IDE5LjQ5OTRDMTAuMTcwMiAxOS40ODE5IDEwLjE0NjUgMTkuNDQ2OCAxMC4xNDE1IDE5LjQwNjhWMTAuMTA3OUMxMC4xNDQgNS45Njc4MSAxMy41MDI4IDIuNjEyNzQgMTcuNjQyOSAyLjYxNTI0QzE5LjM5NDIgMi42MTUyNCAyMS4wODkyIDMuMjMwMjUgMjIuNDM1NSA0LjM1MDI4QzIyLjM3NDMgNC4zODI3OCAyMi4yNjkzIDQuNDQxNTMgMjIuMTk5MiA0LjQ4NDAzTDE0LjIzNDEgOS4wODQxM0MxMy44MjY2IDkuMzE1MzggMTMuNTc2NiA5Ljc0Nzg5IDEzLjU3OTEgMTAuMjE2N0wxMy41NzQxIDIxLjQ0MDZWMjEuNDQzMVpNMTUuNDAyOSAxNy41MDA2TDE5LjczNDIgMTQuOTk5M0wyNC4wNjU1IDE3LjQ5OTNWMjIuNTAwN0wxOS43MzQyIDI1LjAwMDdMMTUuNDAyOSAyMi41MDA3VjE3LjUwMDZaIiBmaWxsPSIjN0Q3RDg3Ii8+Cjwvc3ZnPgo="
},
"displayName": "Embeddings OpenAI",
"typeVersion": 1,
"nodeCategories": [
{
"id": 25,
"name": "AI"
},
{
"id": 26,
"name": "Langchain"
}
]
},
{
"id": 1153,
"icon": "file:openAiLight.svg",
"name": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"codex": {
"data": {
"resources": {
"primaryDocumentation": [
{
"url": "https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.lmchatopenai/"
}
]
},
"categories": [
"AI",
"Langchain"
],
"subcategories": {
"AI": [
"Language Models",
"Root Nodes"
],
"Language Models": [
"Chat Models (Recommended)"
]
}
}
},
"group": "[\"transform\"]",
"defaults": {
"name": "OpenAI Chat Model"
},
"iconData": {
"type": "file",
"fileBuffer": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTM2Ljg2NzEgMTYuMzcxOEMzNy43NzQ2IDEzLjY0OCAzNy40NjIxIDEwLjY2NDIgMzYuMDEwOCA4LjE4NjYxQzMzLjgyODIgNC4zODY1MyAyOS40NDA3IDIuNDMxNDkgMjUuMTU1NiAzLjM1MTUxQzIzLjI0OTMgMS4yMDM5NiAyMC41MTA1IC0wLjAxNzMxNDggMTcuNjM5MiAwLjAwMDE4NTUzM0MxMy4yNTkxIC0wLjAwOTgxNDY4IDkuMzcyNzMgMi44MTAyNSA4LjAyNTIgNi45Nzc4M0M1LjIxMTM5IDcuNTU0MSAyLjc4MjU4IDkuMzE1MzggMS4zNjEzIDExLjgxMTdDLTAuODM3NDkzIDE1LjYwMTggLTAuMzM2MjMyIDIwLjM3OTQgMi42MDEzMyAyMy42Mjk0QzEuNjkzODEgMjYuMzUzMiAyLjAwNjMyIDI5LjMzNzEgMy40NTc2IDMxLjgxNDZDNS42NDAxNSAzNS42MTQ3IDEwLjAyNzcgMzcuNTY5NyAxNC4zMTI4IDM2LjY0OTdDMTYuMjE3OSAzOC43OTczIDE4Ljk1NzkgNDAuMDE4NSAyMS44MjkyIDM5Ljk5OThDMjYuMjExOCA0MC4wMTEgMzAuMDk5NCAzNy4xODg1IDMxLjQ0NjkgMzMuMDE3MUMzNC4yNjA4IDMyLjQ0MDkgMzYuNjg5NiAzMC42Nzk2IDM4LjExMDggMjguMTgzM0M0MC4zMDcxIDI0LjM5MzIgMzkuODA0NiAxOS42MTk0IDM2Ljg2ODMgMTYuMzY5M0wzNi44NjcxIDE2LjM3MThaTTIxLjgzMTcgMzcuMzg2QzIwLjA3OCAzNy4zODg1IDE4LjM3OTIgMzYuNzc0NyAxNy4wMzI5IDM1LjY1MDlDMTcuMDk0MSAzNS42MTg0IDE3LjIwMDQgMzUuNTU5NyAxNy4yNjkxIDM1LjUxNzJMMjUuMjM0MyAzMC45MTcxQzI1LjY0MTggMzAuNjg1OCAyNS44OTE4IDMwLjI1MjEgMjUuODg5MyAyOS43ODMzVjE4LjU1NDNMMjkuMjU1NyAyMC40OTgxQzI5LjI5MTkgMjAuNTE1NiAyOS4zMTU3IDIwLjU1MDYgMjkuMzIwNyAyMC41OTA2VjI5Ljg4OTZDMjkuMzE1NyAzNC4wMjQ3IDI1Ljk2NjggMzcuMzc3MiAyMS44MzE3IDM3LjM4NlpNNS43MjY0IDMwLjUwNzFDNC44NDc2MyAyOC45ODk2IDQuNTMxMzcgMjcuMjEwOCA0LjgzMjYzIDI1LjQ4NDVDNC44OTEzOCAyNS41MTk1IDQuOTk1MTMgMjUuNTgzMiA1LjA2ODg4IDI1LjYyNTdMMTMuMDM0MSAzMC4yMjU4QzEzLjQzNzggMzAuNDYyMSAxMy45Mzc4IDMwLjQ2MjEgMTQuMzQyOCAzMC4yMjU4TDI0LjA2NjggMjQuNjEwN1YyOC40OTgzQzI0LjA2OTMgMjguNTM4MyAyNC4wNTA1IDI4LjU3NyAyNC4wMTkzIDI4LjYwMkwxNS45Njc5IDMzLjI1MDlDMTIuMzgxNSAzNS4zMTU5IDcuODAxNDQgMzQuMDg4NCA1LjcyNzY1IDMwLjUwNzFINS43MjY0Wk0zLjYzMDEgMTMuMTIwNUM0LjUwNTEyIDExLjYwMDQgNS44ODY0IDEwLjQzNzkgNy41MzE0NCA5LjgzNDE1QzcuNTMxNDQgOS45MDI5IDcuNTI3NjkgMTAuMDI0MiA3LjUyNzY5IDEwLjEwOTJWMTkuMzEwNkM3LjUyNTE5IDE5Ljc3ODEgNy43NzUxOSAyMC4yMTE5IDguMTgxNDUgMjAuNDQzMUwxNy45MDU0IDI2LjA1N0wxNC41MzkxIDI4LjAwMDhDMTQuNTA1MyAyOC4wMjMzIDE0LjQ2MjggMjguMDI3IDE0LjQyNTMgMjguMDEwOEw2LjM3MjY2IDIzLjM1ODJDMi43OTM4MyAyMS4yODU2IDEuNTY2MzEgMTYuNzA2OCAzLjYyODg1IDEzLjEyMTdMMy42MzAxIDEzLjEyMDVaTTMxLjI4ODIgMTkuNTU2OUwyMS41NjQyIDEzLjk0MTdMMjQuOTMwNiAxMS45OTkyQzI0Ljk2NDMgMTEuOTc2NyAyNS4wMDY4IDExLjk3MjkgMjUuMDQ0MyAxMS45ODkyTDMzLjA5NyAxNi42MzhDMzYuNjgyMSAxOC43MDkzIDM3LjkxMDggMjMuMjk1NyAzNS44Mzk1IDI2Ljg4MDhDMzQuOTYzMyAyOC4zOTgzIDMzLjU4MzIgMjkuNTYwOCAzMS45Mzk1IDMwLjE2NThWMjAuNjg5NEMzMS45NDMyIDIwLjIyMTkgMzEuNjk0NSAxOS43ODk0IDMxLjI4OTQgMTkuNTU2OUgzMS4yODgyWk0zNC42MzgzIDE0LjUxNDJDMzQuNTc5NSAxNC40NzggMzQuNDc1OCAxNC40MTU1IDM0LjQwMiAxNC4zNzNMMjYuNDM2OCA5Ljc3Mjg5QzI2LjAzMzEgOS41MzY2NCAyNS41MzMxIDkuNTM2NjQgMjUuMTI4MSA5Ljc3Mjg5TDE1LjQwNDEgMTUuMzg4VjExLjUwMDRDMTUuNDAxNiAxMS40NjA0IDE1LjQyMDQgMTEuNDIxNyAxNS40NTE2IDExLjM5NjdMMjMuNTAzIDYuNzUxNThDMjcuMDg5NCA0LjY4Mjc5IDMxLjY3NDUgNS45MTQwNiAzMy43NDIgOS41MDE2NEMzNC42MTU4IDExLjAxNjcgMzQuOTMyIDEyLjc5MDUgMzQuNjM1OCAxNC41MTQySDM0LjYzODNaTTEzLjU3NDEgMjEuNDQzMUwxMC4yMDY1IDE5LjQ5OTRDMTAuMTcwMiAxOS40ODE5IDEwLjE0NjUgMTkuNDQ2OCAxMC4xNDE1IDE5LjQwNjhWMTAuMTA3OUMxMC4xNDQgNS45Njc4MSAxMy41MDI4IDIuNjEyNzQgMTcuNjQyOSAyLjYxNTI0QzE5LjM5NDIgMi42MTUyNCAyMS4wODkyIDMuMjMwMjUgMjIuNDM1NSA0LjM1MDI4QzIyLjM3NDMgNC4zODI3OCAyMi4yNjkzIDQuNDQxNTMgMjIuMTk5MiA0LjQ4NDAzTDE0LjIzNDEgOS4wODQxM0MxMy44MjY2IDkuMzE1MzggMTMuNTc2NiA5Ljc0Nzg5IDEzLjU3OTEgMTAuMjE2N0wxMy41NzQxIDIxLjQ0MDZWMjEuNDQzMVpNMTUuNDAyOSAxNy41MDA2TDE5LjczNDIgMTQuOTk5M0wyNC4wNjU1IDE3LjQ5OTNWMjIuNTAwN0wxOS43MzQyIDI1LjAwMDdMMTUuNDAyOSAyMi41MDA3VjE3LjUwMDZaIiBmaWxsPSIjN0Q3RDg3Ii8+Cjwvc3ZnPgo="
},
"displayName": "OpenAI Chat Model",
"typeVersion": 1,
"nodeCategories": [
{
"id": 25,
"name": "AI"
},
{
"id": 26,
"name": "Langchain"
}
]
},
{
"id": 1191,
"icon": "fa:grip-lines-vertical",
"name": "@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter",
"codex": {
"data": {
"resources": {
"primaryDocumentation": [
{
"url": "https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.textsplitterrecursivecharactertextsplitter/"
}
]
},
"categories": [
"AI",
"Langchain"
],
"subcategories": {
"AI": [
"Text Splitters"
]
}
}
},
"group": "[\"transform\"]",
"defaults": {
"name": "Recursive Character Text Splitter"
},
"iconData": {
"icon": "grip-lines-vertical",
"type": "icon"
},
"displayName": "Recursive Character Text Splitter",
"typeVersion": 1,
"nodeCategories": [
{
"id": 25,
"name": "AI"
},
{
"id": 26,
"name": "Langchain"
}
]
},
{
"id": 1231,
"icon": "file:supabase.svg",
"name": "@n8n/n8n-nodes-langchain.vectorStoreSupabase",
"codex": {
"data": {
"resources": {
"primaryDocumentation": [
{
"url": "https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.vectorstoresupabase/"
}
]
},
"categories": [
"AI",
"Langchain"
],
"subcategories": {
"AI": [
"Vector Stores",
"Tools",
"Root Nodes"
],
"Tools": [
"Other Tools"
],
"Vector Stores": [
"Other Vector Stores"
]
}
}
},
"group": "[\"transform\"]",
"defaults": {
"name": "Supabase Vector Store"
},
"iconData": {
"type": "file",
"fileBuffer": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDkiIGhlaWdodD0iMTEzIiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSJ1cmwoI2EpIiBkPSJNNjMuNzA4IDExMC4yODRjLTIuODYgMy42MDEtOC42NTggMS42MjgtOC43MjctMi45N2wtMS4wMDctNjcuMjUxaDQ1LjIyYzguMTkgMCAxMi43NTggOS40NiA3LjY2NSAxNS44NzR6Ii8+PHBhdGggZmlsbD0idXJsKCNiKSIgZmlsbC1vcGFjaXR5PSIuMiIgZD0iTTYzLjcwOCAxMTAuMjg0Yy0yLjg2IDMuNjAxLTguNjU4IDEuNjI4LTguNzI3LTIuOTdsLTEuMDA3LTY3LjI1MWg0NS4yMmM4LjE5IDAgMTIuNzU4IDkuNDYgNy42NjUgMTUuODc0eiIvPjxwYXRoIGZpbGw9IiMzRUNGOEUiIGQ9Ik00NS4zMTcgMi4wNzFjMi44Ni0zLjYwMSA4LjY1Ny0xLjYyOCA4LjcyNiAyLjk3bC40NDIgNjcuMjUxSDkuODNjLTguMTkgMC0xMi43NTktOS40Ni03LjY2NS0xNS44NzV6Ii8+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJhIiB4MT0iNTMuOTc0IiB4Mj0iOTQuMTYzIiB5MT0iNTQuOTc0IiB5Mj0iNzEuODI5IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iIzI0OTM2MSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzNFQ0Y4RSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IGlkPSJiIiB4MT0iMzYuMTU2IiB4Mj0iNTQuNDg0IiB5MT0iMzAuNTc4IiB5Mj0iNjUuMDgxIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3AvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1vcGFjaXR5PSIwIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"
},
"displayName": "Supabase Vector Store",
"typeVersion": 1,
"nodeCategories": [
{
"id": 25,
"name": "AI"
},
{
"id": 26,
"name": "Langchain"
}
]
},
{
"id": 1235,
"icon": "file:extractFromFile.svg",
"name": "n8n-nodes-base.extractFromFile",
"codex": {
"data": {
"alias": [
"CSV",
"Spreadsheet",
"Excel",
"xls",
"xlsx",
"ods",
"tabular",
"decode",
"decoding",
"Move Binary Data",
"Binary",
"File",
"PDF",
"JSON",
"HTML",
"ICS",
"iCal",
"txt",
"Text",
"RTF",
"XML",
"64",
"Base64",
"Convert"
],
"resources": {
"primaryDocumentation": [
{
"url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.extractfromfile/"
}
]
},
"categories": [
"Core Nodes"
],
"nodeVersion": "1.0",
"codexVersion": "1.0",
"subcategories": {
"Core Nodes": [
"Files",
"Data Transformation"
]
}
}
},
"group": "[\"input\"]",
"defaults": {
"name": "Extract from File"
},
"iconData": {
"type": "file",
"fileBuffer": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTAuOTM3NSAyQzAuNDE5NzMzIDIgMCAyLjQxOTczIDAgMi45Mzc1VjM3LjMyMjFDMCAzNy44Mzk5IDAuNDE5NzMzIDM4LjI1OTYgMC45Mzc1IDM4LjI1OTZIMjYuMjE1NEMyNi43MzMyIDM4LjI1OTYgMjcuMTUyOSAzNy44Mzk5IDI3LjE1MjkgMzcuMzIyMUwyNy4xNTI5IDMwLjY3MTlMMTYuNzk2OSAzMC42NzE5QzE0Ljg5ODQgMzAuNjcxOSAxMy4zNTk0IDI5LjEzMjkgMTMuMzU5NCAyNy4yMzQ0VjI1LjM1OTRDMTMuMzU5NCAyMy40NjA5IDE0Ljg5ODQgMjEuOTIxOSAxNi43OTY5IDIxLjkyMTlIMjcuMTUyOUwyNy4xNTI5IDE1Ljc4MjFIMTQuMzA4M0MxMy43OTA2IDE1Ljc4MjEgMTMuMzcwOCAxNS4zNjI0IDEzLjM3MDggMTQuODQ0NlYySDAuOTM3NVoiIGZpbGw9IiMzNTNGNkUiLz4KPHBhdGggZD0iTTE2LjAyNzEgMkMxNS45NDA4IDIgMTUuODcwOCAyLjA2OTk2IDE1Ljg3MDggMi4xNTYyNVYxMi44MTM0QzE1Ljg3MDggMTMuMDcyMyAxNi4wODA3IDEzLjI4MjEgMTYuMzM5NiAxMy4yODIxSDI2Ljk5NjdDMjcuMDgzIDEzLjI4MjEgMjcuMTUyOSAxMy4yMTIyIDI3LjE1MjkgMTMuMTI1OUwyNy4xNTI5IDEyLjYxNzFDMjcuMTUyOSAxMi4zNjg4IDI3LjA1NDUgMTIuMTMwNyAyNi44NzkxIDExLjk1NUwxNy4yMjI1IDIuMjc1MzhDMTcuMDQ2NiAyLjA5OTA4IDE2LjgwNzkgMiAxNi41NTg4IDJIMTYuMDI3MVoiIGZpbGw9IiMzNTNGNkUiLz4KPHBhdGggZD0iTTI5Ljc2NDIgMzQuNjUwM0MyOS4wMzQgMzMuOTE2IDI5LjAzNzQgMzIuNzI4OCAyOS43NzE2IDMxLjk5ODZMMzMuNjE5NyAyOC4xNzE5TDE2Ljc5NjkgMjguMTcxOUMxNi4yNzkxIDI4LjE3MTkgMTUuODU5NCAyNy43NTIxIDE1Ljg1OTQgMjcuMjM0NFYyNS4zNTk0QzE1Ljg1OTQgMjQuODQxNiAxNi4yNzkxIDI0LjQyMTkgMTYuNzk2OSAyNC40MjE5TDMzLjU0MTIgMjQuNDIxOUwyOS43NzE2IDIwLjY3MzNDMjkuMDM3NCAxOS45NDMxIDI5LjAzNCAxOC43NTU5IDI5Ljc2NDIgMTguMDIxNkMzMC40OTQ0IDE3LjI4NzQgMzEuNjgxNiAxNy4yODQgMzIuNDE1OSAxOC4wMTQyTDM5LjQ0NzEgMjUuMDA2NEMzOS44MDEgMjUuMzU4MyA0MCAyNS44MzY4IDQwIDI2LjMzNTlDNDAgMjYuODM1IDM5LjgwMSAyNy4zMTM1IDM5LjQ0NzEgMjcuNjY1NUwzMi40MTU5IDM0LjY1NzZDMzEuNjgxNiAzNS4zODc4IDMwLjQ5NDQgMzUuMzg0NSAyOS43NjQyIDM0LjY1MDNaIiBmaWxsPSIjMzUzRjZFIi8+Cjwvc3ZnPgo="
},
"displayName": "Extract from File",
"typeVersion": 1,
"nodeCategories": [
{
"id": 9,
"name": "Core Nodes"
}
]
},
{
"id": 1236,
"icon": "file:aggregate.svg",
"name": "n8n-nodes-base.aggregate",
"codex": {
"data": {
"alias": [
"Aggregate",
"Combine",
"Flatten",
"Transform",
"Array",
"List",
"Item"
],
"details": "",
"resources": {
"generic": [],
"primaryDocumentation": [
{
"url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.aggregate/"
}
]
},
"categories": [
"Core Nodes"
],
"nodeVersion": "1.0",
"codexVersion": "1.0",
"subcategories": {
"Core Nodes": [
"Data Transformation"
]
}
}
},
"group": "[\"transform\"]",
"defaults": {
"name": "Aggregate"
},
"iconData": {
"type": "file",
"fileBuffer": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJub25lIj48ZyBmaWxsPSIjRkY2RDVBIiBjbGlwLXBhdGg9InVybCgjYSkiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTMyIDE0OGMwLTYuNjI3IDUuMzczLTEyIDEyLTEyaDE0NmM2LjYyNyAwIDEyIDUuMzczIDEyIDEydjI0YzAgNi42MjctNS4zNzMgMTItMTIgMTJINDRjLTYuNjI3IDAtMTItNS4zNzMtMTItMTJ6bTAgOTZjMC02LjYyNyA1LjM3My0xMiAxMi0xMmgxNDZjNi42MjcgMCAxMiA1LjM3MyAxMiAxMnYyNGMwIDYuNjI3LTUuMzczIDEyLTEyIDEySDQ0Yy02LjYyNyAwLTEyLTUuMzczLTEyLTEyem0wIDk2YzAtNi42MjcgNS4zNzMtMTIgMTItMTJoMTQ2YzYuNjI3IDAgMTIgNS4zNzMgMTIgMTJ2MjRjMCA2LjYyNy01LjM3MyAxMi0xMiAxMkg0NGMtNi42MjcgMC0xMi01LjM3My0xMi0xMnoiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjxwYXRoIGQ9Ik03NCA3NmMwIDYuNjI3IDUuMzczIDEyIDEyIDEyaDExNi4yMTdjMTcuNjczIDAgMzIgMTQuMzI3IDMyIDMydjU2YzAgMjYuOTc4IDEwLjI3MiA1MS41NTcgMjcuMTE5IDcwLjAzOSA1LjA1NSA1LjU0NSA1LjA1NSAxNC4zNzcgMCAxOS45MjItMTYuODQ3IDE4LjQ4Mi0yNy4xMTkgNDMuMDYxLTI3LjExOSA3MC4wMzl2NTZjMCAxNy42NzMtMTQuMzI3IDMyLTMyIDMySDg2Yy02LjYyNyAwLTEyIDUuMzczLTEyIDEydjI0YzAgNi42MjcgNS4zNzMgMTIgMTIgMTJoMTE2LjIxN2M0NC4xODMgMCA4MC0zNS44MTcgODAtODB2LTU2YzAtMzAuOTI4IDI1LjA3Mi01NiA1Ni01NmE1Ljc4MyA1Ljc4MyAwIDAgMCA1Ljc4My01Ljc4M3YtMzYuNDM0YTUuNzgzIDUuNzgzIDAgMCAwLTUuNzgzLTUuNzgzYy0zMC45MjggMC01Ni0yNS4wNzItNTYtNTZ2LTU2YzAtNDQuMTgzLTM1LjgxNy04MC04MC04MEg4NmMtNi42MjcgMC0xMiA1LjM3My0xMiAxMnoiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0zNzYgMjQ0YzAtNi42MjcgNS4zNzMtMTIgMTItMTJoMTEyYzYuNjI3IDAgMTIgNS4zNzMgMTIgMTJ2MjRjMCA2LjYyNy01LjM3MyAxMi0xMiAxMkgzODhjLTYuNjI3IDAtMTItNS4zNzMtMTItMTJ6IiBjbGlwLXJ1bGU9ImV2ZW5vZGQiLz48L2c+PGRlZnM+PGNsaXBQYXRoIGlkPSJhIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwaDUxMnY1MTJIMHoiLz48L2NsaXBQYXRoPjwvZGVmcz48L3N2Zz4="
},
"displayName": "Aggregate",
"typeVersion": 1,
"nodeCategories": [
{
"id": 9,
"name": "Core Nodes"
}
]
},
{
"id": 1243,
"icon": "file:binary.svg",
"name": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader",
"codex": {
"data": {
"resources": {
"primaryDocumentation": [
{
"url": "https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.documentdefaultdataloader/"
}
]
},
"categories": [
"AI",
"Langchain"
],
"subcategories": {
"AI": [
"Document Loaders"
]
}
}
},
"group": "[\"transform\"]",
"defaults": {
"name": "Default Data Loader"
},
"iconData": {
"type": "file",
"fileBuffer": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3NjgiIGhlaWdodD0iMTAyNCI+PHBhdGggZmlsbD0iIzdEN0Q4NyIgZD0iTTAgOTYwVjY0aDU3NmwxOTIgMTkydjcwNHptNzA0LTY0MEw1MTIgMTI4SDY0djc2OGg2NDB6TTMyMCA1MTJIMTI4VjI1NmgxOTJ6bS02NC0xOTJoLTY0djEyOGg2NHptMCA0NDhoNjR2NjRIMTI4di02NGg2NFY2NDBoLTY0di02NGgxMjh6bTI1Ni0zMjBoNjR2NjRIMzg0di02NGg2NFYzMjBoLTY0di02NGgxMjh6bTY0IDM4NEgzODRWNTc2aDE5MnptLTY0LTE5MmgtNjR2MTI4aDY0eiIvPjwvc3ZnPg=="
},
"displayName": "Default Data Loader",
"typeVersion": 1,
"nodeCategories": [
{
"id": 25,
"name": "AI"
},
{
"id": 26,
"name": "Langchain"
}
]
},
{
"id": 1247,
"icon": "fa:comments",
"name": "@n8n/n8n-nodes-langchain.chatTrigger",
"codex": {
"data": {
"resources": {
"primaryDocumentation": [
{
"url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-langchain.chattrigger/"
}
]
},
"categories": [
"Core Nodes",
"Langchain"
]
}
},
"group": "[\"trigger\"]",
"defaults": {
"name": "When chat message received"
},
"iconData": {
"icon": "comments",
"type": "icon"
},
"displayName": "Chat Trigger",
"typeVersion": 1,
"nodeCategories": [
{
"id": 9,
"name": "Core Nodes"
},
{
"id": 26,
"name": "Langchain"
}
]
},
{
"id": 1269,
"icon": "fa:database",
"name": "@n8n/n8n-nodes-langchain.toolVectorStore",
"codex": {
"data": {
"resources": {
"primaryDocumentation": [
{
"url": "https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.toolvectorstore/"
}
]
},
"categories": [
"AI",
"Langchain"
],
"subcategories": {
"AI": [
"Tools"
],
"Tools": [
"Other Tools"
]
}
}
},
"group": "[\"transform\"]",
"defaults": {
"name": "Answer questions with a vector store"
},
"iconData": {
"icon": "database",
"type": "icon"
},
"displayName": "Vector Store Question Answer Tool",
"typeVersion": 1,
"nodeCategories": [
{
"id": 25,
"name": "AI"
},
{
"id": 26,
"name": "Langchain"
}
]
}
]
},
"detail": {
"description": "Video Guide I prepared a detailed guide explaining how to set up and implement this scenario, enabling you to chat with your documents stored in Supabase using n8n.  Youtube Link Who is this for? This workflow is ideal for researchers, analysts, business owners, or anyone managing a large collection of documents. It's particularly beneficial for those who need quick contextual information retrieval from text-heavy files stored in Supabase, without needing additional services like Google Drive. What problem does this workflow solve? Manually retrieving and analyzing specific information from large document repositories is time-consuming and inefficient. This workflow automates the process by vectorizing documents and enabling AI-powered interactions, making it easy to query and retrieve context-based information from uploaded files. What this workflow does The workflow integrates Supabase with an AI-powered chatbot to process, store, and query text and PDF files. The steps include: - Fetching and comparing files to avoid duplicate processing. - Handling file downloads and extracting content based on the file type. - Converting documents into vectorized data for contextual information retrieval. - Storing and querying vectorized data from a Supabase vector store. 1. File Extraction and Processing: Automates handling of multiple file formats (e.g., PDFs, text files), and extracts document content. 2. Vectorized Embeddings Creation: Generates embeddings for processed data to enable AI-driven interactions. 3. Dynamic Data Querying: Allows users to query their document repository conversationally using a chatbot. Setup N8N Workflow 1. Fetch File List from Supabase: - Use Supabase to retrieve the stored file list from a specified bucket. - Add logic to manage empty folder placeholders returned by Supabase, avoiding incorrect processing. 2. Compare and Filter Files: - Aggregate the files retrieved from storage and compare them to the existing list in the Supabase files table. - Exclude duplicates and skip placeholder files to ensure only unprocessed files are handled. 3. Handle File Downloads: - Download new files using detailed storage configurations for public/private access. - Adjust the storage settings and GET requests to match your Supabase setup. 4. File Type Processing: - Use a Switch node to target specific file types (e.g., PDFs or text files). - Employ relevant tools to process the content: - For PDFs, extract embedded content. - For text files, directly process the text data. 5. Content Chunking: - Break large text data into smaller chunks using the Text Splitter node. - Define chunk size (default: 500 tokens) and overlap to retain necessary context across chunks. 6. Vector Embedding Creation: - Generate vectorized embeddings for the processed content using OpenAI's embedding tools. - Ensure metadata, such as file ID, is included for easy data retrieval. 7. Store Vectorized Data: - Save the vectorized information into a dedicated Supabase vector store. - Use the default schema and table provided by Supabase for seamless setup. 8. AI Chatbot Integration: - Add a chatbot node to handle user input and retrieve relevant document chunks. - Use metadata like file ID for targeted queries, especially when multiple documents are involved. Testing - Upload sample files to your Supabase bucket. - Verify if files are processed and stored successfully in the vector store. - Ask simple conversational questions about your documents using the chatbot (e.g., \"What does Chapter 1 say about the Roman Empire?\"). - Test for accuracy and contextual relevance of retrieved results."
}
}