動のウェブサイトアシスタントとDeepSeek AI、PineconeベクターDB、およびサイトベースドルーティング
上級
これはSupport Chatbot, AI RAG分野の自動化ワークフローで、33個のノードを含みます。主にSwitch, Webhook, Agent, RespondToWebhook, EmbeddingsCohereなどのノードを使用。 DeepSeek AI、Pineconeベクトルデータベース、サイトルーティングに基づく動のウェブサイトアシスタントの統合
前提条件
- •HTTP Webhookエンドポイント(n8nが自動生成)
- •PostgreSQLデータベース接続情報
- •Pinecone API Key
使用ノード (33)
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"meta": {
"instanceId": "10695d6c896719a133e4565c83ff18ae1c33cae9d0ca63f232efd9b2ddd0b904"
},
"nodes": [
{
"id": "97996cba-36f9-455e-b02d-c054c9e82f38",
"name": "Postgres チャットメモリ",
"type": "@n8n/n8n-nodes-langchain.memoryPostgresChat",
"position": [
-980,
2440
],
"parameters": {
"tableName": "n8n_chat_histories_test_3",
"sessionKey": "={{ $('Webhook').item.json.query.userId }}",
"sessionIdType": "customKey"
},
"credentials": {
"postgres": {
"id": "22GVfrWGc7ERSw5X",
"name": "Postgres account"
}
},
"typeVersion": 1.3
},
{
"id": "5ae9982c-055e-421a-a47e-320a90f43249",
"name": "OpenRouter Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
"position": [
-1100,
2440
],
"parameters": {
"model": "deepseek/deepseek-chat-v3-0324:free",
"options": {}
},
"credentials": {
"openRouterApi": {
"id": "ryoz2T1DqlynMwW5",
"name": "shahzaib-N"
}
},
"typeVersion": 1
},
{
"id": "208cfefe-77c5-4762-a61c-4dcd31c2e741",
"name": "Pinecone ベクトルストア5",
"type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
"position": [
-860,
2440
],
"parameters": {
"mode": "retrieve-as-tool",
"topK": 6,
"options": {
"pineconeNamespace": "Service_Packages_Overview"
},
"pineconeIndex": {
"__rl": true,
"mode": "id",
"value": "asjdnkjanfkjadnfkan;"
},
"toolDescription": "vector store for: Service Packages Overview"
},
"credentials": {
"pineconeApi": {
"id": "9tbw5SFHSJUFSD9o",
"name": "PineconeApi account"
}
},
"typeVersion": 1.3
},
{
"id": "cbd466c8-1170-4b1a-83c3-5a61ad5ff34a",
"name": "埋め込み Cohere",
"type": "@n8n/n8n-nodes-langchain.embeddingsCohere",
"position": [
-780,
2640
],
"parameters": {},
"credentials": {
"cohereApi": {
"id": "qvaYjXr0djdpaMEQ",
"name": "CohereApi account"
}
},
"typeVersion": 1
},
{
"id": "295ee1d6-1083-4ab0-ae19-608504a78ca9",
"name": "Pinecone ベクトルストア6",
"type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
"position": [
-580,
2440
],
"parameters": {
"mode": "retrieve-as-tool",
"topK": 6,
"options": {
"pineconeNamespace": "services"
},
"pineconeIndex": {
"__rl": true,
"mode": "id",
"value": "askclnalkdnclkdsnckj"
},
"toolDescription": "vector store for: services"
},
"credentials": {
"pineconeApi": {
"id": "9tbw5SFHSJUFSD9o",
"name": "PineconeApi account"
}
},
"typeVersion": 1.3
},
{
"id": "38ff953c-e660-4486-9b6b-754b58ad758c",
"name": "埋め込み Cohere6",
"type": "@n8n/n8n-nodes-langchain.embeddingsCohere",
"position": [
-500,
2640
],
"parameters": {},
"credentials": {
"cohereApi": {
"id": "qvaYjXr0djdpaMEQ",
"name": "CohereApi account"
}
},
"typeVersion": 1
},
{
"id": "2b6ed992-91ce-4d77-8a2c-c452b3ede109",
"name": "Pinecone ベクトルストア7",
"type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
"position": [
-300,
2440
],
"parameters": {
"mode": "retrieve-as-tool",
"options": {
"pineconeNamespace": "terms_of_use"
},
"pineconeIndex": {
"__rl": true,
"mode": "id",
"value": "adlkfncldkanv;kjhv"
},
"toolDescription": "vector store for: terms of use"
},
"credentials": {
"pineconeApi": {
"id": "9tbw5SFHSJUFSD9o",
"name": "PineconeApi account"
}
},
"typeVersion": 1.3
},
{
"id": "fe4fe472-0e5d-4af2-a28d-91c6aab1b1a6",
"name": "埋め込み Cohere7",
"type": "@n8n/n8n-nodes-langchain.embeddingsCohere",
"position": [
-220,
2640
],
"parameters": {},
"credentials": {
"cohereApi": {
"id": "qvaYjXr0djdpaMEQ",
"name": "CohereApi account"
}
},
"typeVersion": 1
},
{
"id": "69a71207-a8e3-4b5f-a0ee-fb4873f5bccb",
"name": "Pinecone ベクトルストア9",
"type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
"position": [
-20,
2440
],
"parameters": {
"mode": "retrieve-as-tool",
"topK": 6,
"options": {
"pineconeNamespace": "Privacy_Policy"
},
"pineconeIndex": {
"__rl": true,
"mode": "id",
"value": "lknljoglhgiuyouih"
},
"toolDescription": "vector store for: Privacy Policy"
},
"credentials": {
"pineconeApi": {
"id": "9tbw5SFHSJUFSD9o",
"name": "PineconeApi account"
}
},
"typeVersion": 1.3
},
{
"id": "525c394f-d6a7-407a-b8f9-b2a8b820e4d4",
"name": "埋め込み Cohere9",
"type": "@n8n/n8n-nodes-langchain.embeddingsCohere",
"position": [
60,
2640
],
"parameters": {},
"credentials": {
"cohereApi": {
"id": "qvaYjXr0djdpaMEQ",
"name": "CohereApi account"
}
},
"typeVersion": 1
},
{
"id": "aba9feb6-827f-4cd4-bb11-19af16978f77",
"name": "Pinecone ベクトルストア10",
"type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
"position": [
260,
2440
],
"parameters": {
"mode": "retrieve-as-tool",
"topK": 6,
"options": {
"pineconeNamespace": "refund_policy"
},
"pineconeIndex": {
"__rl": true,
"mode": "id",
"value": "jansckja;scjkadnpkfpioghpf:mv"
},
"toolDescription": "vector store for: refund policy"
},
"credentials": {
"pineconeApi": {
"id": "9tbw5SFHSJUFSD9o",
"name": "PineconeApi account"
}
},
"typeVersion": 1.3
},
{
"id": "9201e8ed-0f3c-472c-9ffe-6c5e2179cbb6",
"name": "埋め込み Cohere10",
"type": "@n8n/n8n-nodes-langchain.embeddingsCohere",
"position": [
340,
2640
],
"parameters": {},
"credentials": {
"cohereApi": {
"id": "qvaYjXr0djdpaMEQ",
"name": "CohereApi account"
}
},
"typeVersion": 1
},
{
"id": "d25920de-37ba-45b2-ba62-c83a5eeb8bc2",
"name": "Webhook トリガー",
"type": "n8n-nodes-base.webhook",
"position": [
-1700,
1260
],
"webhookId": "f22b5848-6722-45fb-ba0c-b874f5813b5c",
"parameters": {
"path": "f22b5848-6722-45fb-ba0c-b874f5813b5c",
"options": {},
"responseMode": "responseNode"
},
"typeVersion": 2
},
{
"id": "2e8dee88-b656-4790-8db1-ec5b52aff867",
"name": "Respond to Webhook トリガー",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
620,
2220
],
"parameters": {
"options": {},
"respondWith": "json",
"responseBody": "={{ { \"answer\": $json.output } }}"
},
"typeVersion": 1.4
},
{
"id": "d0bda629-f093-4fe3-84ad-7dbdd4d45aba",
"name": "スイッチ",
"type": "n8n-nodes-base.switch",
"position": [
-1240,
1260
],
"parameters": {
"rules": {
"values": [
{
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "46166ed8-0317-4827-bac9-ae10f04a6218",
"operator": {
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.query.site }}",
"rightValue": "test_site"
}
]
}
},
{
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "719a0de5-0614-443d-aa51-b9ef46ce337d",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.query.site }}",
"rightValue": "test_site2"
}
]
}
},
{
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "35ab59a1-e2c2-4e67-ad0f-535e1749e6a0",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.query.site }}",
"rightValue": "test_site3"
}
]
}
}
]
},
"options": {}
},
"typeVersion": 3.2
},
{
"id": "34822c85-60bf-4dba-8a6b-a770a48d4c46",
"name": "Postgres チャットメモリ1",
"type": "@n8n/n8n-nodes-langchain.memoryPostgresChat",
"position": [
-340,
680
],
"parameters": {
"tableName": "n8n_chat_histories_test_1",
"sessionKey": "={{ $('Webhook').item.json.query.userId }}",
"sessionIdType": "customKey"
},
"credentials": {
"postgres": {
"id": "22GVfrWGc7ERSw5X",
"name": "Postgres account"
}
},
"typeVersion": 1.3
},
{
"id": "d2cd2051-13c5-46d5-8ecd-c68c77489882",
"name": "OpenRouter Chat Model1",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
"position": [
-460,
680
],
"parameters": {
"model": "deepseek/deepseek-chat-v3-0324:free",
"options": {}
},
"credentials": {
"openRouterApi": {
"id": "PlemUHT1rnkQIP6x",
"name": "api-2"
}
},
"typeVersion": 1
},
{
"id": "45a7d772-1480-4cd0-b254-40c8c440223b",
"name": "Pinecone ベクトルストア8",
"type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
"position": [
-220,
700
],
"parameters": {
"mode": "retrieve-as-tool",
"topK": 6,
"options": {
"pineconeNamespace": "ghost_wr"
},
"pineconeIndex": {
"__rl": true,
"mode": "id",
"value": "amfdnadifakdlncacadf"
},
"toolDescription": "vector store for: Service Packages Overview"
},
"credentials": {
"pineconeApi": {
"id": "9tbw5SFHSJUFSD9o",
"name": "PineconeApi account"
}
},
"typeVersion": 1.3
},
{
"id": "936e564c-a4af-4a45-b537-5b361af8d0e7",
"name": "埋め込み Cohere8",
"type": "@n8n/n8n-nodes-langchain.embeddingsCohere",
"position": [
-140,
880
],
"parameters": {},
"credentials": {
"cohereApi": {
"id": "qvaYjXr0djdpaMEQ",
"name": "CohereApi account"
}
},
"typeVersion": 1
},
{
"id": "9ea078f3-48a9-4811-ba34-1f89430e7889",
"name": "Respond to Webhook トリガー1",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
700,
660
],
"parameters": {
"options": {},
"respondWith": "json",
"responseBody": "={{ { \"answer\": $json.output } }}"
},
"typeVersion": 1.4
},
{
"id": "2836fd6c-c51b-4102-9e9a-35b90ce16c00",
"name": "AI エージェント for groton",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-580,
2220
],
"parameters": {
"text": "={{ $('Webhook').item.json.query.query }}",
"options": {
"systemMessage": "=🧑💼 System Prompt: Max — Test Site 2 Assistant\n\nYou are Max, a knowledgeable and professional virtual assistant for {{ $json.query.site }}, currently responding for the “{{ $json.query.page }}” page.\n\n🧠 Purpose\nHelp users with accurate answers specifically related to the services, pricing packages, page-specific offers, publishing policies, and processes listed on {{ $json.query.site }}, using connected Pinecone vector stores as the sole source of truth.\n\n📌 Responsibilities\nOnly respond to questions that fall under the following categories using the appropriate vector store:\n\n📘 Services\nUse the services store\nIncludes all Test Site 2 services such as:\n\nGhostwriting (fiction, nonfiction, memoirs, etc.)\n\nBook editing and proofreading\n\nPublishing on platforms like Amazon, Kindle, Kobo, B&N\n\nBook cover design, illustrations, and typesetting\n\nAuthor collaboration process\n\nMarketing & promotion plans\n\n💼 Packages & Page-Specific Offers\nUse the packages store\nIncludes:\n\nSix pricing tiers from Basic to Bestseller\n\nDetails about included deliverables\n\nPage-specific promotions or discounts (if found)\n\nExtras like cover design, ISBN/barcode, video trailers, domain/hosting, and rights\n\n📝 If the current page (“{{ $json.query.page }}”) has unique offers, bundles, or content, prioritize referencing that information. Highlight sales, limited-time discounts, or features exclusive to that page when present in the data.\n\n📜 Terms & Return Policy\nUse the terms_policy store\nCovers:\n\nModification rights and service refusal\n\nPre-payment expectations\n\nRefund ambiguity or lack of policy\n\nDisclaimers and legal obligations\n\n🔐 Privacy & Confidentiality\nUse the privacy store\nIncludes data handling practices, client confidentiality, information security, and storage protocols throughout the writing and publishing lifecycle.\n\n📞 Contact Information\nUse the contact store\nLists official contact details including:\n\nEmail\n\nPhone\n\nLive chat availability\n\nContact form URL\n\n✅ Guidelines for Response\n\nUnderstand the user's intent and match their question to the correct topic and the current page (\"{{ $json.query.page }}\").\n\nUse only verified vector store content — do not assume or invent.\n\nIf the information is unavailable, reply:\n\n\"I'm unable to find that information in the current records.\"\n\nBe brief, informative, and helpful.\n\n📄 Response Format Rules\n\nUse only plain text (no HTML). You may format with:\n\nbold for emphasis\n\nNumbered or bulleted lists\n\nBlank lines between sections for readability\n\n❌ Do Not Answer\n\n“Can you write a book for me now?”\n\n“What’s your favorite book genre?”\n\n“Who owns Test Site 2?” (unless found in the data)\n\n🖊️ Always end your replies with:\n— max\n\n",
"returnIntermediateSteps": false
},
"promptType": "define"
},
"typeVersion": 2
},
{
"id": "74fbb2ac-dad5-4294-967a-501b32854f79",
"name": "AI エージェント1 ghostwritingpartner",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-420,
460
],
"parameters": {
"text": "={{ $('Webhook').item.json.query.query }}",
"options": {
"systemMessage": "=🧑💼 System Prompt: Max — Test Site Assistant\n\nYou are Max, a knowledgeable and professional virtual assistant for {{ $json.query.site }}, currently responding for the “{{ $json.query.page }}” page.\n\n🧠 Purpose\nHelp users with accurate answers specifically related to the services, pricing packages, page-specific offers, publishing policies, and processes listed on {{ $json.query.site }}, using connected Pinecone vector stores as the sole source of truth.\n\n📌 Responsibilities\nOnly respond to questions that fall under the following categories using the appropriate vector store:\n\n📘 Services\nUse the services store\nIncludes all Test Site services such as:\n\nGhostwriting (fiction, nonfiction, memoirs, etc.)\n\nBook editing and proofreading\n\nPublishing on platforms like Amazon, Kindle, Kobo, B&N\n\nBook cover design, illustrations, and typesetting\n\nAuthor collaboration process\n\nMarketing & promotion plans\n\n💼 Packages & Page-Specific Offers\nUse the packages store\nIncludes:\n\nSix pricing tiers from Basic to Bestseller\n\nDetails about included deliverables\n\nPage-specific promotions or discounts (if found)\n\nExtras like cover design, ISBN/barcode, video trailers, domain/hosting, and rights\n\n📝 If the current page (“{{ $json.query.page }}”) has unique offers, bundles, or content, prioritize referencing that information. Highlight sales, limited-time discounts, or features exclusive to that page when present in the data.\n\n📜 Terms & Return Policy\nUse the terms_policy store\nCovers:\n\nModification rights and service refusal\n\nPre-payment expectations\n\nRefund ambiguity or lack of policy\n\nDisclaimers and legal obligations\n\n🔐 Privacy & Confidentiality\nUse the privacy store\nIncludes data handling practices, client confidentiality, information security, and storage protocols throughout the writing and publishing lifecycle.\n\n📞 Contact Information\nUse the contact store\nLists official contact details including:\n\nEmail\n\nPhone\n\nLive chat availability\n\nContact form URL\n\n✅ Guidelines for Response\n\nUnderstand the user's intent and match their question to the correct topic and the current page (\"{{ $json.query.page }}\").\n\nUse only verified vector store content — do not assume or invent.\n\nIf the information is unavailable, reply:\n\n\"I'm unable to find that information in the current records.\"\n\nBe brief, informative, and helpful.\n\n📄 Response Format Rules\n\nUse only plain text (no HTML). You may format with:\n\nbold for emphasis\n\nNumbered or bulleted lists\n\nBlank lines between sections for readability\n\n❌ Do Not Answer\n\n“Can you write a book for me now?”\n\n“What’s your favorite book genre?”\n\n“Who owns Test Site?” (unless found in the data)\n\n🖊️ Always end your replies with:\n— max\n\n",
"returnIntermediateSteps": false
},
"promptType": "define"
},
"typeVersion": 2
},
{
"id": "cb9e515f-1781-423a-a184-27be2517e312",
"name": "Postgres チャットメモリ2",
"type": "@n8n/n8n-nodes-langchain.memoryPostgresChat",
"position": [
-300,
1740
],
"parameters": {
"tableName": "n8n_chat_histories_test_2",
"sessionKey": "={{ $('Webhook').item.json.query.userId }}",
"sessionIdType": "customKey"
},
"credentials": {
"postgres": {
"id": "22GVfrWGc7ERSw5X",
"name": "Postgres account"
}
},
"typeVersion": 1.3
},
{
"id": "a0a2092b-48fc-4926-956a-088c18f2b220",
"name": "OpenRouter Chat Model2",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
"position": [
-420,
1740
],
"parameters": {
"model": "deepseek/deepseek-chat-v3-0324:free",
"options": {}
},
"credentials": {
"openRouterApi": {
"id": "O16KUlJBPximP3Xr",
"name": "api-1"
}
},
"typeVersion": 1
},
{
"id": "83930ae9-cddb-4fcc-9138-7714395d8d07",
"name": "Pinecone ベクトルストア11",
"type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
"position": [
-180,
1740
],
"parameters": {
"mode": "retrieve-as-tool",
"topK": 6,
"options": {
"pineconeNamespace": "ebook_wr"
},
"pineconeIndex": {
"__rl": true,
"mode": "id",
"value": "adlmcdalkndanfca"
},
"toolDescription": "vector store for: Service Packages Overview"
},
"credentials": {
"pineconeApi": {
"id": "9tbw5SFHSJUFSD9o",
"name": "PineconeApi account"
}
},
"typeVersion": 1.3
},
{
"id": "b847ae7b-7ca9-4641-9768-dbe834f837c8",
"name": "埋め込み Cohere11",
"type": "@n8n/n8n-nodes-langchain.embeddingsCohere",
"position": [
-100,
1940
],
"parameters": {},
"credentials": {
"cohereApi": {
"id": "qvaYjXr0djdpaMEQ",
"name": "CohereApi account"
}
},
"typeVersion": 1
},
{
"id": "51d4651e-2dfd-4839-8ca8-2774c8e4cee0",
"name": "Respond to Webhook トリガー2",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
740,
1720
],
"parameters": {
"options": {},
"respondWith": "json",
"responseBody": "={{ { \"answer\": $json.output } }}"
},
"typeVersion": 1.4
},
{
"id": "62918bc7-7168-40ae-abfa-9dbea1e90d50",
"name": "AI エージェント ebook-wr",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-380,
1520
],
"parameters": {
"text": "={{ $('Webhook').item.json.query.query }}",
"options": {
"systemMessage": "=🧑💼 System Prompt: Max — Test Site 2 Assistant\n\nYou are Max, a knowledgeable and professional virtual assistant for {{ $json.query.site }}, currently responding for the “{{ $json.query.page }}” page.\n\n🧠 Purpose\nHelp users with accurate answers specifically related to the services, pricing packages, page-specific offers, publishing policies, and processes listed on {{ $json.query.site }}, using connected Pinecone vector stores as the sole source of truth.\n\n📌 Responsibilities\nOnly respond to questions that fall under the following categories using the appropriate vector store:\n\n📘 Services\nUse the services store\nIncludes all Test Site 2 services such as:\n\nGhostwriting (fiction, nonfiction, memoirs, etc.)\n\nBook editing and proofreading\n\nPublishing on platforms like Amazon, Kindle, Kobo, B&N\n\nBook cover design, illustrations, and typesetting\n\nAuthor collaboration process\n\nMarketing & promotion plans\n\n💼 Packages & Page-Specific Offers\nUse the packages store\nIncludes:\n\nSix pricing tiers from Basic to Bestseller\n\nDetails about included deliverables\n\nPage-specific promotions or discounts (if found)\n\nExtras like cover design, ISBN/barcode, video trailers, domain/hosting, and rights\n\n📝 If the current page (“{{ $json.query.page }}”) has unique offers, bundles, or content, prioritize referencing that information. Highlight sales, limited-time discounts, or features exclusive to that page when present in the data.\n\n📜 Terms & Return Policy\nUse the terms_policy store\nCovers:\n\nModification rights and service refusal\n\nPre-payment expectations\n\nRefund ambiguity or lack of policy\n\nDisclaimers and legal obligations\n\n🔐 Privacy & Confidentiality\nUse the privacy store\nIncludes data handling practices, client confidentiality, information security, and storage protocols throughout the writing and publishing lifecycle.\n\n📞 Contact Information\nUse the contact store\nLists official contact details including:\n\nEmail\n\nPhone\n\nLive chat availability\n\nContact form URL\n\n✅ Guidelines for Response\n\nUnderstand the user's intent and match their question to the correct topic and the current page (\"{{ $json.query.page }}\").\n\nUse only verified vector store content — do not assume or invent.\n\nIf the information is unavailable, reply:\n\n\"I'm unable to find that information in the current records.\"\n\nBe brief, informative, and helpful.\n\n📄 Response Format Rules\n\nUse only plain text (no HTML). You may format with:\n\nbold for emphasis\n\nNumbered or bulleted lists\n\nBlank lines between sections for readability\n\n❌ Do Not Answer\n\n“Can you write a book for me now?”\n\n“What’s your favorite book genre?”\n\n“Who owns Test Site 2?” (unless found in the data)\n\n🖊️ Always end your replies with:\n— max\n\n",
"returnIntermediateSteps": false
},
"promptType": "define"
},
"typeVersion": 2
},
{
"id": "5a9f31eb-64be-4ec5-88cb-6659b8f0c0a4",
"name": "付箋",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1760,
1200
],
"parameters": {
"height": 220,
"content": "## accepts user input"
},
"typeVersion": 1
},
{
"id": "e1eb851e-63f7-4f88-9891-232e99e9e9b7",
"name": "付箋1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1320,
1160
],
"parameters": {
"height": 260,
"content": "## switch to specific agent according to site"
},
"typeVersion": 1
},
{
"id": "7815d1ed-9ee8-4759-9852-cf83dcfcf2ae",
"name": "付箋2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-560,
220
],
"parameters": {
"width": 660,
"height": 800,
"content": "## 🧠 **AI Agent**\n\nThis node processes the user’s query using:\n- llm from openrouter\n- Pinecone vector search for context-aware answers\n- SQL memory to maintain user-specific context\n- Custom system prompt based on `site` and `page` input values\n\n👉 Dynamically tailors responses per incoming website/page.\n"
},
"typeVersion": 1
},
{
"id": "ea7cf4f1-43c6-477f-b97a-6ffbd1344c1c",
"name": "付箋3",
"type": "n8n-nodes-base.stickyNote",
"position": [
580,
560
],
"parameters": {
"width": 340,
"height": 260,
"content": "### sends response back to chat"
},
"typeVersion": 1
},
{
"id": "eec68593-92f4-4065-9481-dc63aca01156",
"name": "付箋4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1200,
1500
],
"parameters": {
"width": 2180,
"height": 1540,
"content": "## same goes for remaining agents as above"
},
"typeVersion": 1
}
],
"pinData": {},
"connections": {
"Switch": {
"main": [
[
{
"node": "AI Agent1 ghostwritingpartner",
"type": "main",
"index": 0
}
],
[
{
"node": "AI Agent ebook-wr",
"type": "main",
"index": 0
}
],
[
{
"node": "AI Agent for groton",
"type": "main",
"index": 0
}
]
]
},
"Webhook": {
"main": [
[
{
"node": "Switch",
"type": "main",
"index": 0
}
]
]
},
"AI Agent ebook-wr": {
"main": [
[
{
"node": "Respond to Webhook2",
"type": "main",
"index": 0
}
]
]
},
"Embeddings Cohere": {
"ai_embedding": [
[
{
"node": "Pinecone Vector Store5",
"type": "ai_embedding",
"index": 0
}
]
]
},
"Embeddings Cohere6": {
"ai_embedding": [
[
{
"node": "Pinecone Vector Store6",
"type": "ai_embedding",
"index": 0
}
]
]
},
"Embeddings Cohere7": {
"ai_embedding": [
[
{
"node": "Pinecone Vector Store7",
"type": "ai_embedding",
"index": 0
}
]
]
},
"Embeddings Cohere8": {
"ai_embedding": [
[
{
"node": "Pinecone Vector Store8",
"type": "ai_embedding",
"index": 0
}
]
]
},
"Embeddings Cohere9": {
"ai_embedding": [
[
{
"node": "Pinecone Vector Store9",
"type": "ai_embedding",
"index": 0
}
]
]
},
"AI Agent for groton": {
"main": [
[
{
"node": "Respond to Webhook",
"type": "main",
"index": 0
}
]
]
},
"Embeddings Cohere10": {
"ai_embedding": [
[
{
"node": "Pinecone Vector Store10",
"type": "ai_embedding",
"index": 0
}
]
]
},
"Embeddings Cohere11": {
"ai_embedding": [
[
{
"node": "Pinecone Vector Store11",
"type": "ai_embedding",
"index": 0
}
]
]
},
"Postgres Chat Memory": {
"ai_memory": [
[
{
"node": "AI Agent for groton",
"type": "ai_memory",
"index": 0
}
]
]
},
"5ae9982c-055e-421a-a47e-320a90f43249": {
"ai_languageModel": [
[
{
"node": "AI Agent for groton",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Postgres Chat Memory1": {
"ai_memory": [
[
{
"node": "AI Agent1 ghostwritingpartner",
"type": "ai_memory",
"index": 0
}
]
]
},
"Postgres Chat Memory2": {
"ai_memory": [
[
{
"node": "AI Agent ebook-wr",
"type": "ai_memory",
"index": 0
}
]
]
},
"d2cd2051-13c5-46d5-8ecd-c68c77489882": {
"ai_languageModel": [
[
{
"node": "AI Agent1 ghostwritingpartner",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"a0a2092b-48fc-4926-956a-088c18f2b220": {
"ai_languageModel": [
[
{
"node": "AI Agent ebook-wr",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Pinecone Vector Store5": {
"ai_tool": [
[
{
"node": "AI Agent for groton",
"type": "ai_tool",
"index": 0
}
]
]
},
"Pinecone Vector Store6": {
"ai_tool": [
[
{
"node": "AI Agent for groton",
"type": "ai_tool",
"index": 0
}
]
]
},
"Pinecone Vector Store7": {
"ai_tool": [
[
{
"node": "AI Agent for groton",
"type": "ai_tool",
"index": 0
}
]
]
},
"Pinecone Vector Store8": {
"ai_tool": [
[
{
"node": "AI Agent1 ghostwritingpartner",
"type": "ai_tool",
"index": 0
}
]
]
},
"Pinecone Vector Store9": {
"ai_tool": [
[
{
"node": "AI Agent for groton",
"type": "ai_tool",
"index": 0
}
]
]
},
"Pinecone Vector Store10": {
"ai_tool": [
[
{
"node": "AI Agent for groton",
"type": "ai_tool",
"index": 0
}
]
]
},
"Pinecone Vector Store11": {
"ai_tool": [
[
{
"node": "AI Agent ebook-wr",
"type": "ai_tool",
"index": 0
}
]
]
},
"AI Agent1 ghostwritingpartner": {
"main": [
[
{
"node": "Respond to Webhook1",
"type": "main",
"index": 0
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
上級 - サポートチャットボット, AI RAG検索拡張
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
一般のなデジタルデバイスサポートアシスタント
GPT-4-miniとPineconeを使ってどんなデバイスでもAIに尖るアシスタントを作成
Set
Webhook
Manual Trigger
+
Set
Webhook
Manual Trigger
18 ノードJah coozi
サポートチャットボット
内部ドキュメントチャット
Ollama、Supabaseベクトルデータベース、Google Driveを使って内部ドキュメントと対話
Set
Switch
Webhook
+
Set
Switch
Webhook
29 ノードLakindu Siriwardana
内部Wiki
n8n ローカルAIエージェントRAGテンプレート
Ollama AI、スマートRAGエージェント、PGVectorを使用したローカル文書Q&Aシステム
Set
Switch
Webhook
+
Set
Switch
Webhook
41 ノードJadai kongolo
内部Wiki
Supabaseを使ってあなたのWebサイト向けのRAGチャットボットを構築
サイトのQ&Aチャットボットを構築:RAG、OpenAI GPT-4o-mini、Supabase ベクター データベース
Form Trigger
Html Extract
Http Request
+
Form Trigger
Html Extract
Http Request
18 ノードInfyOm Technologies
サポートチャットボット
Telegram AIサポートチャットボット(マルチモーダル入力)
GPT-4とSupabase RAGを使って多言語Telegramサポートボットを作成
If
Set
Code
+
If
Set
Code
51 ノードEzema Kingsley Chibuzo
サポートチャットボット
dian-memo_03のエクスポート
AI音声とテキストノート - LINEメッセージ、Supabaseベクトルデータベース、Gmailの統合
If
Set
Code
+
If
Set
Code
30 ノードkote2
AI RAG検索拡張