Workflow: Manual Ftp Automation

Workflow Details

Download Workflow
{
    "id": "YoUP55V241b9F2ze",
    "meta": {
        "instanceId": "35ec7a1e5284dd5dab4dac454bbb30405138d2784c99e56ef8887a4fa9cd1977",
        "templateCredsSetupCompleted": true
    },
    "name": "Qdrant Vector Database Embedding Pipeline",
    "tags": [],
    "nodes": [
        {
            "id": "934ffad4-c93e-40c1-b4fd-1c09b518a9c3",
            "name": "Qdrant Vector Store",
            "type": "@n8n\/n8n-nodes-langchain.vectorStoreQdrant",
            "position": [
                460,
                -460
            ],
            "parameters": {
                "mode": "insert",
                "options": [],
                "qdrantCollection": {
                    "__rl": true,
                    "mode": "list",
                    "value": "sv_lang_data",
                    "cachedResultName": "sv_lang_data"
                },
                "embeddingBatchSize": 100
            },
            "credentials": {
                "qdrantApi": {
                    "id": "vUb9tbEnXzu7uNUb",
                    "name": "QdrantApi svenska"
                }
            },
            "typeVersion": 1.100000000000000088817841970012523233890533447265625
        },
        {
            "id": "4127d85d-45c9-4536-a15d-08af9dfdcfa8",
            "name": "When clicking \u2018Test workflow\u2019",
            "type": "n8n-nodes-base.manualTrigger",
            "position": [
                -960,
                -460
            ],
            "parameters": [],
            "typeVersion": 1
        },
        {
            "id": "abb61b81-72e0-468e-855b-72402db828fc",
            "name": "Embeddings OpenAI",
            "type": "@n8n\/n8n-nodes-langchain.embeddingsOpenAi",
            "position": [
                400,
                -240
            ],
            "parameters": {
                "options": []
            },
            "credentials": {
                "openAiApi": {
                    "id": "kftHaZgVKiB9BmKU",
                    "name": "OpenAi account"
                }
            },
            "typeVersion": 1.1999999999999999555910790149937383830547332763671875
        },
        {
            "id": "e9ae24be-6da9-4c04-b891-7e450f505e02",
            "name": "Default Data Loader",
            "type": "@n8n\/n8n-nodes-langchain.documentDefaultDataLoader",
            "position": [
                780,
                -180
            ],
            "parameters": {
                "options": [],
                "dataType": "binary"
            },
            "typeVersion": 1
        },
        {
            "id": "9aff896d-4edb-494c-b84f-ede4e47db1e3",
            "name": "Character Text Splitter",
            "type": "@n8n\/n8n-nodes-langchain.textSplitterCharacterTextSplitter",
            "position": [
                800,
                20
            ],
            "parameters": {
                "separator": "\"chunk_id\""
            },
            "typeVersion": 1
        },
        {
            "id": "a083a47e-a835-4323-86a8-a2eaed226aaa",
            "name": "Sticky Note",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                -760,
                -680
            ],
            "parameters": {
                "color": 4,
                "width": 260,
                "height": 200,
                "content": "### Fetch JSON File List\n**Node:** FTP (all files)\n**Operation:** List\n**Path:** <file path>\n\nRecursively lists all .json files prepared for embedding."
            },
            "typeVersion": 1
        },
        {
            "id": "072ae9dc-c1cd-4ceb-954a-6b6b1b984e29",
            "name": "Sticky Note1",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                -460,
                -660
            ],
            "parameters": {
                "color": 5,
                "height": 180,
                "content": "### Iterate Over Files\n**Node:** Loop Over Items\n\nBatches each file path individually for processing."
            },
            "typeVersion": 1
        },
        {
            "id": "08d852f2-f1de-42ce-b882-1dc1343ed967",
            "name": "Sticky Note2",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                -160,
                -700
            ],
            "parameters": {
                "color": 4,
                "width": 420,
                "height": 220,
                "content": "### Download Each File\n**Node:** FTP (1 file download)\n\nDownloads the current file in binary form using:\n```\nPath = file_path\/{{ $json.name }}\n```"
            },
            "typeVersion": 1
        },
        {
            "id": "905c3d74-2817-4aa3-865d-51e972cbbb5a",
            "name": "Sticky Note3",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                920,
                -80
            ],
            "parameters": {
                "color": 3,
                "width": 320,
                "height": 400,
                "content": "### Parse JSON Document (Default Data Loader)\n**Node:** Default Data Loader\n**Loader Type**: binary\n- Converts JSON structure into a document format compatible with embedding.\n\n\n### Split into Smaller Chunks\n**Node:** Character Text Splitter\n**Split by:** \"chunk_id\" or custom logic based on chunk formatting\n\nOptional node if chunk size normalization is required before embedding."
            },
            "typeVersion": 1
        },
        {
            "id": "9fb8e5be-3ee1-42b4-a858-40bc6afcf457",
            "name": "List all the files",
            "type": "n8n-nodes-base.ftp",
            "position": [
                -700,
                -460
            ],
            "parameters": {
                "path": "Oracle\/AI\/embedding\/svenska",
                "operation": "list"
            },
            "credentials": {
                "ftp": {
                    "id": "JufoKeNjsIgbCBWe",
                    "name": "FTP account"
                }
            },
            "typeVersion": 1
        },
        {
            "id": "6f8d0390-5851-44ca-9712-0ae51f9a22ef",
            "name": "Loop over one item",
            "type": "n8n-nodes-base.splitInBatches",
            "position": [
                -400,
                -460
            ],
            "parameters": {
                "options": []
            },
            "typeVersion": 3
        },
        {
            "id": "1c89a4a9-ec68-4c48-b7bc-74f5b30d8ac2",
            "name": "Downloading item",
            "type": "n8n-nodes-base.ftp",
            "position": [
                -40,
                -440
            ],
            "parameters": {
                "path": "=Oracle\/AI\/embedding\/svenska\/{{ $json.name }}",
                "binaryPropertyName": "binary.data"
            },
            "credentials": {
                "ftp": {
                    "id": "JufoKeNjsIgbCBWe",
                    "name": "FTP account"
                }
            },
            "typeVersion": 1,
            "alwaysOutputData": true
        },
        {
            "id": "01ca4ee3-5f1c-4977-a7f9-88e46db580ad",
            "name": "Sticky Note4",
            "type": "n8n-nodes-base.stickyNote",
            "position": [
                360,
                -960
            ],
            "parameters": {
                "width": 480,
                "height": 460,
                "content": "### Store in Vector DB\n**Node:** Qdrant Vector Store\n**Batch Size:** 100\n\n**Collection:** <collection_name>\nSends cleaned text chunks to OpenAI to get embeddings (1536 dim for text-embedding-ada-002)\n\n#### collection settings in Qdrant cluster\n```\nPUT \/collections\/{collection_name}\n{\n    \"vectors\": {\n      \"size\": 1536,\n      \"distance\": \"Cosine\"\n    }\n}\n```\nEmbed Chunks\n**Node:** Embeddings OpenAI\nPushes the embedded chunks (with metadata) into Qdrant for semantic retrieval."
            },
            "typeVersion": 1
        }
    ],
    "active": false,
    "pinData": [],
    "settings": {
        "executionOrder": "v1"
    },
    "versionId": "c71fca63-26e9-4795-9a00-942dab6d07ce",
    "connections": {
        "Downloading item": {
            "main": [
                [
                    {
                        "node": "Qdrant Vector Store",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Embeddings OpenAI": {
            "ai_embedding": [
                [
                    {
                        "node": "Qdrant Vector Store",
                        "type": "ai_embedding",
                        "index": 0
                    }
                ]
            ]
        },
        "List all the files": {
            "main": [
                [
                    {
                        "node": "Loop over one item",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Loop over one item": {
            "main": [
                [],
                [
                    {
                        "node": "Downloading item",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Default Data Loader": {
            "ai_document": [
                [
                    {
                        "node": "Qdrant Vector Store",
                        "type": "ai_document",
                        "index": 0
                    }
                ]
            ]
        },
        "Qdrant Vector Store": {
            "main": [
                [
                    {
                        "node": "List all the files",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Character Text Splitter": {
            "ai_textSplitter": [
                [
                    {
                        "node": "Default Data Loader",
                        "type": "ai_textSplitter",
                        "index": 0
                    }
                ]
            ]
        },
        "When clicking \u2018Test workflow\u2019": {
            "main": [
                [
                    {
                        "node": "List all the files",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        }
    }
}
Back to Workflows

Related Workflows

New WooCommerce product to Slack
View
Code Schedule Create Webhook
View
Manual Postgres Automate Triggered
View
Check for valid Mautic contact email
View
Create Email Campaign From LinkedIn Post Interactions
View
Wait Splitout Create Webhook
View
Weather via Slack
View
Get a pipeline in CircleCI
View
Create_Unique_Jira_tickets_from_Splunk_alerts
View