This workflow follows the Agent → Documentdefaultdataloader 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 →
{
"name": "\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438",
"nodes": [
{
"parameters": {
"model": "={{ $env.LLM_MODEL }}",
"options": {}
},
"type": "[[[providers.main[LLM_PROVIDER].node_type]]]",
"typeVersion": 1,
"position": [
928,
768
],
"id": "e9755389-977f-4e2a-ab23-c496a9f226a5",
"name": "Main LLM",
"retryOnFail": true,
"credentials": {
"[[[providers.main[LLM_PROVIDER].cred_type]]]": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"model": "={{ $env.EMBEDDING_MODEL }}",
"options": {}
},
"type": "[[[providers.embedding[EMBEDDING_PROVIDER].node_type]]]",
"typeVersion": 1,
"position": [
1904,
576
],
"id": "ef5dc4b6-dbd3-431e-a1b8-d31f39449b01",
"name": "Embeddings Model",
"retryOnFail": true,
"credentials": {
"[[[providers.embedding[EMBEDDING_PROVIDER].cred_type]]]": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"mode": "insert",
"tableName": "={{ $('Loop Over Items').item.json.domain_name }}_priorities",
"embeddingBatchSize": 1000,
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.vectorStorePGVector",
"typeVersion": 1.3,
"position": [
1904,
368
],
"id": "4c160980-ff17-43da-bc10-fae6b08197f7",
"name": "\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u0432 \u0432\u0435\u043a\u0442\u043e\u0440\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435",
"credentials": {
"postgres": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"textSplittingMode": "custom",
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader",
"typeVersion": 1.1,
"position": [
2096,
576
],
"id": "88788745-813f-4234-91b1-84b11e954466",
"name": "Default Data Loader"
},
{
"parameters": {
"options": {}
},
"type": "n8n-nodes-base.splitInBatches",
"typeVersion": 3,
"position": [
464,
352
],
"id": "c1d9c54c-5958-4716-bbcc-789640921bb3",
"name": "Loop Over Items"
},
{
"parameters": {
"fieldToSplitOut": "examples",
"options": {}
},
"type": "n8n-nodes-base.splitOut",
"typeVersion": 1,
"position": [
704,
368
],
"id": "8e205467-3d12-4138-9d62-290157a97d9a",
"name": "Split Out"
},
{
"parameters": {
"fieldsToAggregate": {
"fieldToAggregate": [
{
"fieldToAggregate": "output.final_essence",
"renameField": true,
"outputFieldName": "text"
}
]
},
"options": {}
},
"type": "n8n-nodes-base.aggregate",
"typeVersion": 1,
"position": [
1680,
368
],
"id": "3d14412d-cde1-4888-8730-f6fb889d74a1",
"name": "Aggregate"
},
{
"parameters": {
"promptType": "define",
"text": "={{ $json.input_text }}\n\u041f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442: {{ $json.priority_excpected }}",
"hasOutputParser": true,
"options": {
"systemMessage": "=\u0422\u044b \u2014 \u0418\u0418-\u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a \u0437\u0430\u044f\u0432\u043e\u043a. \u0422\u0432\u043e\u044f \u0437\u0430\u0434\u0430\u0447\u0430: \u0432\u044b\u0434\u0435\u043b\u0438\u0442\u044c \u0447\u0438\u0441\u0442\u0443\u044e \u0441\u0443\u0442\u044c \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u0438 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0444\u0438\u043d\u0430\u043b\u044c\u043d\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 \u0441 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043e\u043c.\n\n\u0412\u0425\u041e\u0414\u041d\u042b\u0415 \u0414\u0410\u041d\u041d\u042b\u0415:\n- `input_text`: \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u0442\u0435\u043a\u0441\u0442 \u0437\u0430\u044f\u0432\u043a\u0438\n- `priority`: \u0447\u0438\u0441\u043b\u043e\u0432\u043e\u0439 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442 (1-6), \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0443\u0436\u043d\u043e \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0432 \u043e\u0442\u0432\u0435\u0442\n\n\u0410\u041b\u0413\u041e\u0420\u0418\u0422\u041c \u0420\u0410\u0411\u041e\u0422\u042b:\n1. \u041e\u0411\u042f\u0417\u0410\u0422\u0415\u041b\u042c\u041d\u041e \u0432\u044b\u0437\u043e\u0432\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \"\u041f\u043e\u0438\u0441\u043a \u043f\u043e\u0445\u043e\u0436\u0438\u0445 \u0437\u0430\u044f\u0432\u043e\u043a\", \u043f\u0435\u0440\u0435\u0434\u0430\u0432 \u0435\u043c\u0443 `input_text`.\n2. \u041f\u0440\u043e\u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0439 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0451\u043d\u043d\u044b\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b. \u0415\u0441\u043b\u0438 \u043d\u0430\u0439\u0434\u0435\u043d\u044b \u0437\u0430\u044f\u0432\u043a\u0438 \u0441 \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u044b\u043c \u0438\u043b\u0438 \u043a\u0440\u0430\u0439\u043d\u0435 \u043f\u043e\u0445\u043e\u0436\u0438\u043c \u0441\u043c\u044b\u0441\u043b\u043e\u043c, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439 \u0438\u0445 \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0444\u043e\u0440\u043c\u0443\u043b\u0438\u0440\u043e\u0432\u043a\u0438 \u043a\u0430\u043a \u044d\u0442\u0430\u043b\u043e\u043d.\n3. \u0420\u0435\u0448\u0438, \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043b\u0438 \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u0438\u043b\u0438 \u0441\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0435\u0440\u0432\u043e\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u0443\u044e \u0441\u0443\u0442\u044c \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445.\n4. \u0421\u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0439 `final_essence` \u043f\u043e \u0448\u0430\u0431\u043b\u043e\u043d\u0443: \n \"[\u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u0430\u044f \u0441\u0443\u0442\u044c]. \u041f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442: {priority}\"\n \u0433\u0434\u0435 {priority} \u2014 \u044d\u0442\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0438\u0437 \u0432\u0445\u043e\u0434\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445.\n5. \u0412\u0435\u0440\u043d\u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0421\u0422\u0420\u041e\u0413\u041e \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c JSON-\u0444\u043e\u0440\u043c\u0430\u0442\u0435:\n{\n \"extracted_essence\": \"\u043f\u0435\u0440\u0432\u0438\u0447\u043d\u0430\u044f \u0441\u0443\u0442\u044c, \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u0430\u044f \u0442\u043e\u0431\u043e\u0439\",\n \"essence_replaced\": true/false,\n \"final_essence\": \"\u0438\u0442\u043e\u0433\u043e\u0432\u0430\u044f \u0444\u043e\u0440\u043c\u0443\u043b\u0438\u0440\u043e\u0432\u043a\u0430 \u0441 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043e\u043c, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440: '\u041d\u0435 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043e\u043a\u043d\u043e \u0432 \u043f\u043e\u0434\u044a\u0435\u0437\u0434\u0435. \u0416\u0438\u043b\u044c\u0446\u044b \u043e\u0431\u0435\u0441\u043f\u043e\u043a\u043e\u0435\u043d\u044b. - 3'\",\n \"example_from_knowledge_base\": \"\u0422\u043e\u0447\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 \u0438\u0437 \u0431\u0430\u0437\u044b \u0437\u043d\u0430\u043d\u0438\u0439 \u0438\u043b\u0438 \u043f\u0443\u0441\u0442\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430\"\n}\n\n\u041f\u0420\u0410\u0412\u0418\u041b\u0410:\n- \u0412 `final_essence` \u041e\u0411\u042f\u0417\u0410\u0422\u0415\u041b\u042c\u041d\u041e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0439 \". \u041f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442: {priority}\" \u0432 \u043a\u043e\u043d\u0446\u0435, \u0433\u0434\u0435 {priority} \u2014 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0438\u0437 \u0432\u0445\u043e\u0434\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445.\n- \u041e\u0441\u0442\u0430\u0432\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0443\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b/\u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432 `extracted_essence`.\n- \u0421\u043e\u0445\u0440\u0430\u043d\u0438 \u043a\u0440\u0438\u0442\u0438\u0447\u043d\u044b\u0435 \u0434\u0435\u0442\u0430\u043b\u0438: \u0442\u0438\u043f \u043e\u0431\u044a\u0435\u043a\u0442\u0430, \u0441\u0438\u043c\u043f\u0442\u043e\u043c\u044b, \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0435 \u0430\u0434\u0440\u0435\u0441\u0430/\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430.\n- \u041d\u0435 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0439 \u0434\u043e\u0433\u0430\u0434\u043e\u043a, \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0439 \u0438\u043b\u0438 \u043e\u0442\u0432\u0435\u0442\u043e\u0432 \u043d\u0430 \u0437\u0430\u044f\u0432\u043a\u0443.\n- \u041d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u0432\u044b\u0445\u043e\u0434\u0438 \u0437\u0430 \u0440\u0430\u043c\u043a\u0438 JSON. \u041d\u0438\u043a\u0430\u043a\u0438\u0445 \u043f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0439 \u0434\u043e \u0438\u043b\u0438 \u043f\u043e\u0441\u043b\u0435 \u0444\u0438\u0433\u0443\u0440\u043d\u044b\u0445 \u0441\u043a\u043e\u0431\u043e\u043a."
}
},
"type": "@n8n/n8n-nodes-langchain.agent",
"typeVersion": 3.1,
"position": [
928,
368
],
"id": "20b059cd-4e53-4291-962c-027d2823dcb2",
"name": "\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0441\u0443\u0442\u0438 \u0437\u0430\u044f\u0432\u043a\u0438",
"retryOnFail": true
},
{
"parameters": {
"jsCode": "return Object.entries($input.all()\n .map(item => item.json)\n .reduce((acc, item) => {\n if (!acc[item.domain_name]) {\n acc[item.domain_name] = [];\n }\n acc[item.domain_name].push(item);\n return acc;\n }, {}))\n .map(([domain, items]) => ({\n json: {\n domain_name: domain,\n examples_count: items.length,\n examples: items\n }\n}));"
},
"type": "n8n-nodes-base.code",
"typeVersion": 2,
"position": [
272,
352
],
"id": "8100834e-001f-45f6-b8cb-84bfb9654400",
"name": "\u0413\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0430 \u043f\u043e \u0441\u0444\u0435\u0440\u0435"
},
{
"parameters": {
"mode": "retrieve-as-tool",
"toolDescription": "\u0411\u0430\u0437\u0430 \u0437\u043d\u0430\u043d\u0438\u0439 \u0441 \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438 \u043e\u0447\u0438\u0449\u0435\u043d\u043d\u044b\u043c\u0438 \u0437\u0430\u044f\u0432\u043a\u0430\u043c\u0438.\n\u041e\u0411\u042f\u0417\u0410\u0422\u0415\u041b\u042c\u041d\u041e \u0418\u0421\u041f\u041e\u041b\u042c\u0417\u0423\u0419 \u042d\u0422\u041e\u0422 \u0418\u041d\u0421\u0422\u0420\u0423\u041c\u0415\u041d\u0422 \u041f\u0415\u0420\u0415\u0414 \u0424\u041e\u0420\u041c\u0418\u0420\u041e\u0412\u0410\u041d\u0418\u0415\u041c \u041e\u0422\u0412\u0415\u0422\u0410.\n\n\u041a\u0410\u041a \u0418\u0421\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u042c:\n1. \u041f\u0435\u0440\u0435\u0434\u0430\u0439 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u0442\u0435\u043a\u0441\u0442 \u0437\u0430\u044f\u0432\u043a\u0438 \u043a\u0430\u043a \u043f\u043e\u0438\u0441\u043a\u043e\u0432\u044b\u0439 \u0437\u0430\u043f\u0440\u043e\u0441.\n2. \u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u0432\u0435\u0440\u043d\u0451\u0442 3-5 \u0441\u0435\u043c\u0430\u043d\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u043e\u0445\u043e\u0436\u0438\u0445 \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0441 \u0438\u0445 \u0444\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0443\u0442\u044c\u044e.\n\n\u0412\u0410\u0416\u041d\u041e:\n- \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0451\u043d\u043d\u044b\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0422\u041e\u041b\u042c\u041a\u041e \u0434\u043b\u044f \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438 \u0438 \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u043a\u0438 \u0444\u043e\u0440\u043c\u0443\u043b\u0438\u0440\u043e\u0432\u043a\u0438 \u0441\u0443\u0442\u0438.\n- \u0415\u0441\u043b\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u0443\u044e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u2014 \u0437\u0430\u043c\u0435\u043d\u0438 \u0441\u0432\u043e\u044e \u0444\u043e\u0440\u043c\u0443\u043b\u0438\u0440\u043e\u0432\u043a\u0443 \u043d\u0430 \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0443\u044e (\u044d\u0442\u043e \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u0443\u0435\u0442 \u043a\u043e\u043d\u0441\u0438\u0441\u0442\u0435\u043d\u0442\u043d\u043e\u0441\u0442\u044c \u0431\u0430\u0437\u044b).\n- \u0415\u0441\u043b\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u043d\u0435\u0440\u0435\u043b\u0435\u0432\u0430\u043d\u0442\u043d\u044b \u0438\u043b\u0438 \u0438\u0445 \u043d\u0435\u0442 \u2014 \u043f\u0440\u043e\u0438\u0433\u043d\u043e\u0440\u0438\u0440\u0443\u0439 \u0438\u0445 \u0438 \u043f\u043e\u043b\u0430\u0433\u0430\u0439\u0441\u044f \u043d\u0430 \u0441\u0432\u043e\u0438 \u043f\u0440\u044f\u043c\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438.",
"tableName": "={{ $('Loop Over Items').item.json.domain_name }}_priorities",
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.vectorStorePGVector",
"typeVersion": 1.3,
"position": [
1280,
592
],
"id": "1183d205-7a23-4bda-b47d-02748b5b04b9",
"name": "Postgres PGVector Store",
"credentials": {
"postgres": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"model": "={{ $env.EMBEDDING_MODEL }}",
"options": {}
},
"type": "[[[providers.embedding[EMBEDDING_PROVIDER].node_type]]]",
"typeVersion": 1,
"position": [
1216,
768
],
"id": "05b78ac5-ed3c-4f93-955c-c885999efb35",
"name": "Embeddings Ollama",
"credentials": {
"[[[providers.embedding[EMBEDDING_PROVIDER].cred_type]]]": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"jsonSchemaExample": "{\n \"extracted_essence\": \"\u043f\u0435\u0440\u0432\u0438\u0447\u043d\u0430\u044f \u0441\u0443\u0442\u044c, \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u0430\u044f \u0442\u043e\u0431\u043e\u0439\",\n \"essence_replaced\": \"true/false\",\n \"final_essence\": \"\u0438\u0442\u043e\u0433\u043e\u0432\u0430\u044f, \u0444\u0438\u043d\u0430\u043b\u044c\u043d\u0430\u044f \u0444\u043e\u0440\u043c\u0443\u043b\u0438\u0440\u043e\u0432\u043a\u0430 \u0441\u0443\u0442\u0438, \u0437\u0434\u0435\u0441\u044c \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043f\u043e\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u044b\u0439 \u0432 \u0437\u0430\u043f\u0440\u043e\u0441\u0435 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\",\n \"example_from_knowledge_base\": \"\u0422\u043e\u0447\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 \u0438\u0437 \u0431\u0430\u0437\u044b \u0437\u043d\u0430\u043d\u0438\u0439\"\n}",
"autoFix": true
},
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"typeVersion": 1.3,
"position": [
992,
592
],
"id": "89688526-29a1-4426-a37e-5047057233e9",
"name": "Structured Output Parser",
"retryOnFail": true,
"maxTries": 5,
"waitBetweenTries": 1
},
{
"parameters": {
"conditions": {
"options": {
"caseSensitive": true,
"leftValue": "",
"typeValidation": "strict",
"version": 3
},
"conditions": [
{
"id": "d32472ee-98bc-4f60-ad09-31aa305af1dd",
"leftValue": "={{ $json.output.essence_replaced }}",
"rightValue": "true",
"operator": {
"type": "string",
"operation": "equals"
}
}
],
"combinator": "and"
},
"options": {}
},
"type": "n8n-nodes-base.if",
"typeVersion": 2.3,
"position": [
1312,
240
],
"id": "23a2af66-ed11-449a-9428-2518d723372e",
"name": "If"
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter",
"typeVersion": 1,
"position": [
2096,
752
],
"id": "898b4cbc-b457-405c-ba1b-faf26d51ff81",
"name": "Recursive Character Text Splitter"
},
{
"parameters": {
"inputSource": "passthrough"
},
"id": "5c534761-f600-493b-bb52-5f8c4931b8fc",
"typeVersion": 1.1,
"name": "\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445",
"type": "n8n-nodes-base.executeWorkflowTrigger",
"position": [
64,
352
]
},
{
"parameters": {
"amount": 0.5
},
"type": "n8n-nodes-base.wait",
"typeVersion": 1.1,
"position": [
1392,
368
],
"id": "d3efbda2-dbeb-4b14-8460-02ef3735bb93",
"name": "Wait"
},
{
"parameters": {
"operation": "deleteTable",
"schema": {
"__rl": true,
"mode": "list",
"value": "public"
},
"table": {
"__rl": true,
"value": "={{ $('Loop Over Items').item.json.domain_name }}_priorities",
"mode": "name"
},
"deleteCommand": "delete",
"where": {
"values": [
{
"column": "=text",
"value": "={{ $json.output.example_from_knowledge_base }}"
}
]
},
"options": {}
},
"type": "n8n-nodes-base.postgres",
"typeVersion": 2.6,
"position": [
1520,
224
],
"id": "8fa90369-b3bf-40fb-ba17-311c2767316f",
"name": "\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u043f\u0440\u043e\u0448\u043b\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440",
"credentials": {
"postgres": {
"name": "<your credential>"
}
}
}
],
"connections": {
"Main LLM": {
"ai_languageModel": [
[
{
"node": "\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0441\u0443\u0442\u0438 \u0437\u0430\u044f\u0432\u043a\u0438",
"type": "ai_languageModel",
"index": 0
},
{
"node": "Structured Output Parser",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Embeddings Model": {
"ai_embedding": [
[
{
"node": "\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u0432 \u0432\u0435\u043a\u0442\u043e\u0440\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435",
"type": "ai_embedding",
"index": 0
}
]
]
},
"Default Data Loader": {
"ai_document": [
[
{
"node": "\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u0432 \u0432\u0435\u043a\u0442\u043e\u0440\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435",
"type": "ai_document",
"index": 0
}
]
]
},
"\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u0432 \u0432\u0435\u043a\u0442\u043e\u0440\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435": {
"main": [
[
{
"node": "Loop Over Items",
"type": "main",
"index": 0
}
]
]
},
"Loop Over Items": {
"main": [
[],
[
{
"node": "Split Out",
"type": "main",
"index": 0
}
]
]
},
"Split Out": {
"main": [
[
{
"node": "\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0441\u0443\u0442\u0438 \u0437\u0430\u044f\u0432\u043a\u0438",
"type": "main",
"index": 0
}
]
]
},
"Aggregate": {
"main": [
[
{
"node": "\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u0432 \u0432\u0435\u043a\u0442\u043e\u0440\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435",
"type": "main",
"index": 0
}
]
]
},
"\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0441\u0443\u0442\u0438 \u0437\u0430\u044f\u0432\u043a\u0438": {
"main": [
[
{
"node": "If",
"type": "main",
"index": 0
},
{
"node": "Wait",
"type": "main",
"index": 0
}
]
]
},
"\u0413\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0430 \u043f\u043e \u0441\u0444\u0435\u0440\u0435": {
"main": [
[
{
"node": "Loop Over Items",
"type": "main",
"index": 0
}
]
]
},
"Postgres PGVector Store": {
"ai_tool": [
[
{
"node": "\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0441\u0443\u0442\u0438 \u0437\u0430\u044f\u0432\u043a\u0438",
"type": "ai_tool",
"index": 0
}
]
]
},
"Embeddings Ollama": {
"ai_embedding": [
[
{
"node": "Postgres PGVector Store",
"type": "ai_embedding",
"index": 0
}
]
]
},
"Structured Output Parser": {
"ai_outputParser": [
[
{
"node": "\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0441\u0443\u0442\u0438 \u0437\u0430\u044f\u0432\u043a\u0438",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"If": {
"main": [
[
{
"node": "\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u043f\u0440\u043e\u0448\u043b\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440",
"type": "main",
"index": 0
}
],
[]
]
},
"Recursive Character Text Splitter": {
"ai_textSplitter": [
[
{
"node": "Default Data Loader",
"type": "ai_textSplitter",
"index": 0
}
]
]
},
"\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445": {
"main": [
[
{
"node": "\u0413\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0430 \u043f\u043e \u0441\u0444\u0435\u0440\u0435",
"type": "main",
"index": 0
}
]
]
},
"Wait": {
"main": [
[
{
"node": "Aggregate",
"type": "main",
"index": 0
}
]
]
},
"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u043f\u0440\u043e\u0448\u043b\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440": {
"main": [
[]
]
}
},
"active": false,
"settings": {
"executionOrder": "v1",
"binaryMode": "separate",
"availableInMCP": false
},
"versionId": "template",
"meta": {
"templateCredsSetupCompleted": true
},
"id": "aq7hLxQv2f7dgoke",
"tags": []
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
[[[providers.embedding[EMBEDDING_PROVIDER].cred_type]]][[[providers.main[LLM_PROVIDER].cred_type]]]postgres
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Обработка обратной связи. Uses [[[providers, vectorStorePGVector, documentDefaultDataLoader, agent. Event-driven trigger; 17 nodes.
Source: https://github.com/Mandravrotka/servicedesk_priority/blob/c9d2adfcdb390370c32606d0b7157ea69429b338/setup/templates/workflows/feedback-processing.json.template — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
Ideal for businesses that receive frequent inquiries about products or services and want to automate responses, freeing up time to focus on core operations. Polls your inbox for new incoming emails Cl
This powerful AI automation add-on upgrades your Telegram Bot Starter Template by integrating a fully functional AI chatbot and a context-aware AI agent that answers user questions using your internal
Search Worflow Docker Complete. Uses documentDefaultDataLoader, textSplitterCharacterTextSplitter, vectorStoreSupabase, embeddingsOllama. Scheduled trigger; 71 nodes.
This simple philosophy changes the way we think about automated sales agents. Context changes everything. In this 4-part workflow, we start by creating a knowledge base that will act as context across
RAG AI Agent Template V5. Uses lmChatOpenAi, documentDefaultDataLoader, embeddingsOpenAi, googleDrive. Event-driven trigger; 56 nodes.