RAG内でドキュメントのアップデート機能を有効化
上級
これはAI分野の自動化ワークフローで、29個のノードを含みます。主にSet, Wait, GoogleDrive, HttpRequest, ManualTriggerなどのノードを使用、AI技術を活用したスマート自動化を実現。 Google Drive、Qdrant、Gemini Chatを使ってRAGシステムを構築し、継続のに更新
前提条件
- •Google Drive API認証情報
- •ターゲットAPIの認証情報が必要な場合あり
- •OpenAI API Key
- •Qdrantサーバー接続情報
- •Google Gemini API Key
使用ノード (29)
カテゴリー
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"id": "cN4nA1LigjoreUYv",
"meta": {
"instanceId": "a4bfc93e975ca233ac45ed7c9227d84cf5a2329310525917adaf3312e10d5462",
"templateCredsSetupCompleted": true
},
"name": "Enables updates to documents in RAG",
"tags": [
{
"id": "oFVn9SpkmyjWZwco",
"name": "Qdrant",
"createdAt": "2024-12-04T16:52:58.409Z",
"updatedAt": "2024-12-04T16:52:58.409Z"
}
],
"nodes": [
{
"id": "23afa2cc-7085-474f-aa9e-b110ef17208c",
"name": "ワークフローをテストクリック時",
"type": "n8n-nodes-base.manualTrigger",
"position": [
-400,
220
],
"parameters": {},
"typeVersion": 1
},
{
"id": "71115f33-f461-4942-9df1-e554e6432054",
"name": "Embeddings OpenAI1",
"type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
"position": [
940,
480
],
"parameters": {
"options": {}
},
"credentials": {
"openAiApi": {
"id": "4zwP0MSr8zkNvvV9",
"name": "OpenAi account"
}
},
"typeVersion": 1.1
},
{
"id": "81d855d2-a883-4e74-ae2a-1a4e722af4d7",
"name": "Default Data Loader1",
"type": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader",
"position": [
1080,
480
],
"parameters": {
"options": {
"metadata": {
"metadataValues": [
{
"name": "file_id",
"value": "={{ $('Download files').item.json.id }}"
},
{
"name": "file_name",
"value": "={{ $('Download files').item.json.name }}"
}
]
}
},
"dataType": "binary",
"binaryMode": "specificField"
},
"typeVersion": 1
},
{
"id": "4e5539a5-0f3a-4de9-ba69-0eb7d9c00804",
"name": "Qdrant Vector Store",
"type": "@n8n/n8n-nodes-langchain.vectorStoreQdrant",
"position": [
1000,
240
],
"parameters": {
"mode": "insert",
"options": {},
"qdrantCollection": {
"__rl": true,
"mode": "list",
"value": "negozio-emporio-verde",
"cachedResultName": "negozio-emporio-verde"
}
},
"credentials": {
"qdrantApi": {
"id": "iyQ6MQiVaF3VMBmt",
"name": "QdrantApi account (Hetzner)"
}
},
"typeVersion": 1
},
{
"id": "8f944f0e-51a0-470e-9735-1ed539522acb",
"name": "コレクション作成",
"type": "n8n-nodes-base.httpRequest",
"position": [
-140,
-200
],
"parameters": {
"url": "http://QDRANTURL/collections/COLLECTION",
"method": "PUT",
"options": {},
"jsonBody": "{\n \"vectors\": {\n \"size\": 1536,\n \"distance\": \"Cosine\" \n },\n \"shard_number\": 1, \n \"replication_factor\": 1, \n \"write_consistency_factor\": 1 \n}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth",
"headerParameters": {
"parameters": [
{
"name": "Content-Type",
"value": "application/json"
}
]
}
},
"credentials": {
"httpHeaderAuth": {
"id": "qhny6r5ql9wwotpn",
"name": "Qdrant API (Hetzner)"
}
},
"typeVersion": 4.2
},
{
"id": "25c035aa-7a07-47cf-8878-44ac2eab0c3d",
"name": "Recursive Character Text Splitter",
"type": "@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter",
"position": [
1060,
680
],
"parameters": {
"options": {},
"chunkSize": 500,
"chunkOverlap": 50
},
"typeVersion": 1
},
{
"id": "2ade51da-1711-4f71-8bd9-ebd3b6494b0b",
"name": "アイテムをループ処理",
"type": "n8n-nodes-base.splitInBatches",
"position": [
420,
220
],
"parameters": {
"options": {}
},
"typeVersion": 3
},
{
"id": "74a224b0-8755-41ef-bb55-22e83b7d762d",
"name": "待機",
"type": "n8n-nodes-base.wait",
"position": [
1380,
240
],
"webhookId": "3d477cc3-8182-43e9-ae61-23e8ce308887",
"parameters": {},
"typeVersion": 1.1
},
{
"id": "1c0d5b8c-e53e-47d3-aaac-ddccae80f280",
"name": "Embeddings OpenAI2",
"type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
"position": [
620,
1220
],
"parameters": {
"options": {}
},
"credentials": {
"openAiApi": {
"id": "4zwP0MSr8zkNvvV9",
"name": "OpenAi account"
}
},
"typeVersion": 1.1
},
{
"id": "f838f548-52dd-4aaf-aa97-9a8029018a1a",
"name": "Default Data Loader",
"type": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader",
"position": [
820,
1260
],
"parameters": {
"options": {
"metadata": {
"metadataValues": [
{
"name": "file_id",
"value": "={{ $('Download file').item.json.file_id }}"
},
{
"name": "file_name",
"value": "={{ $binary.data.fileName}}"
}
]
}
},
"dataType": "binary",
"binaryMode": "specificField"
},
"typeVersion": 1
},
{
"id": "07bb3ae1-145f-4784-8409-d3bc73d5522c",
"name": "Recursive Character Text Splitter1",
"type": "@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter",
"position": [
860,
1460
],
"parameters": {
"options": {},
"chunkSize": 500,
"chunkOverlap": 50
},
"typeVersion": 1
},
{
"id": "dfa7b994-13b7-490f-82b7-5ae4ea1e2e7f",
"name": "単一ファイル削除",
"type": "n8n-nodes-base.httpRequest",
"position": [
360,
720
],
"parameters": {
"url": "http://QDRANTURL/collections/COLLECTION/points/delete",
"method": "POST",
"options": {},
"jsonBody": "={\n \"filter\": {\n \"must\": [\n {\n \"key\": \"metadata.file_id\",\n \"match\": { \"value\": \"{{$json.file_id}}\" }\n }\n ]\n }\n}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth",
"headerParameters": {
"parameters": [
{
"name": "Content-Type",
"value": "application/json"
}
]
}
},
"credentials": {
"httpHeaderAuth": {
"id": "qhny6r5ql9wwotpn",
"name": "Qdrant API (Hetzner)"
}
},
"typeVersion": 4.2
},
{
"id": "44bf5e40-3947-4288-a7ba-7797ea6ad266",
"name": "付箋3",
"type": "n8n-nodes-base.stickyNote",
"position": [
140,
-280
],
"parameters": {
"color": 6,
"width": 880,
"height": 220,
"content": "# STEP 1\n\n## Create Qdrant Collection\nChange:\n- QDRANTURL\n- COLLECTION"
},
"typeVersion": 1
},
{
"id": "56e6534e-e191-4756-8bcf-d9ff8fc88b5f",
"name": "付箋",
"type": "n8n-nodes-base.stickyNote",
"position": [
-160,
700
],
"parameters": {
"height": 360,
"content": "# STEP 3\n\n## FILE ID\nSet Google Drive File ID to update\n"
},
"typeVersion": 1
},
{
"id": "f7098791-889a-4e9a-bd8f-f3b52dfc8839",
"name": "コレクション消去",
"type": "n8n-nodes-base.httpRequest",
"position": [
-140,
220
],
"parameters": {
"url": "http://QDRANTURL/collections/COLLECTION/points/delete",
"method": "POST",
"options": {},
"jsonBody": "{\n \"filter\": {}\n}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth",
"headerParameters": {
"parameters": [
{
"name": "Content-Type",
"value": "application/json"
}
]
}
},
"credentials": {
"httpHeaderAuth": {
"id": "qhny6r5ql9wwotpn",
"name": "Qdrant API (Hetzner)"
}
},
"typeVersion": 4.2
},
{
"id": "d75a193e-e0cd-469a-8222-1ff183e2aa83",
"name": "ファイル取得",
"type": "n8n-nodes-base.googleDrive",
"position": [
120,
220
],
"parameters": {
"filter": {
"driveId": {
"__rl": true,
"mode": "list",
"value": "My Drive",
"cachedResultUrl": "https://drive.google.com/drive/my-drive",
"cachedResultName": "My Drive"
},
"folderId": {
"__rl": true,
"mode": "list",
"value": "1RO5ByPhq2yvYLmbapTNC_kKdU5lZd4W5",
"cachedResultUrl": "https://drive.google.com/drive/folders/1RO5ByPhq2yvYLmbapTNC_kKdU5lZd4W5",
"cachedResultName": "Test Negozio"
}
},
"options": {},
"resource": "fileFolder"
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "HEy5EuZkgPZVEa9w",
"name": "Google Drive account (n3w.it)"
}
},
"typeVersion": 3
},
{
"id": "4e5d5bd2-2aae-4d3b-978e-3ed29b641bb3",
"name": "ファイル一括ダウンロード",
"type": "n8n-nodes-base.googleDrive",
"position": [
700,
240
],
"parameters": {
"fileId": {
"__rl": true,
"mode": "id",
"value": "={{ $json.id }}"
},
"options": {
"googleFileConversion": {
"conversion": {
"docsToFormat": "text/plain"
}
}
},
"operation": "download"
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "HEy5EuZkgPZVEa9w",
"name": "Google Drive account (n3w.it)"
}
},
"typeVersion": 3
},
{
"id": "074333a4-fbcc-42ce-aa05-212d545fdcb1",
"name": "ファイルダウンロード",
"type": "n8n-nodes-base.googleDrive",
"position": [
360,
980
],
"parameters": {
"fileId": {
"__rl": true,
"mode": "id",
"value": "={{ $json.file_id }}"
},
"options": {
"googleFileConversion": {
"conversion": {
"docsToFormat": "text/plain"
}
}
},
"operation": "download"
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "HEy5EuZkgPZVEa9w",
"name": "Google Drive account (n3w.it)"
}
},
"typeVersion": 3
},
{
"id": "e4ee0aa9-e140-44b9-b581-6d98cb2857a9",
"name": "チャットメッセージ受信時",
"type": "@n8n/n8n-nodes-langchain.chatTrigger",
"position": [
-560,
1600
],
"webhookId": "97d60090-1717-4195-bf27-2e3c3105b7f8",
"parameters": {
"options": {}
},
"typeVersion": 1.1
},
{
"id": "db644cc4-da46-4e9e-a092-f91762ca1c6b",
"name": "Question and Answer Chain",
"type": "@n8n/n8n-nodes-langchain.chainRetrievalQa",
"position": [
-240,
1600
],
"parameters": {
"options": {}
},
"typeVersion": 1.5
},
{
"id": "9e7ebe5e-a854-44dc-8cb3-ec1663121b93",
"name": "Google Gemini Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
-300,
1800
],
"parameters": {
"options": {},
"modelName": "models/gemini-1.5-flash"
},
"credentials": {
"googlePalmApi": {
"id": "0p34rXqIqy8WuoPg",
"name": "Google Gemini(PaLM) Api account"
}
},
"typeVersion": 1
},
{
"id": "d7e29bec-2b8c-400c-b6d7-a82d7a2865a7",
"name": "Vector Store Retriever",
"type": "@n8n/n8n-nodes-langchain.retrieverVectorStore",
"position": [
-80,
1820
],
"parameters": {},
"typeVersion": 1
},
{
"id": "e490e747-5395-4460-bdea-0781145f30b1",
"name": "Qdrant Vector Store1",
"type": "@n8n/n8n-nodes-langchain.vectorStoreQdrant",
"position": [
-60,
2020
],
"parameters": {
"options": {},
"qdrantCollection": {
"__rl": true,
"mode": "list",
"value": "ocr_mistral_test",
"cachedResultName": "ocr_mistral_test"
}
},
"credentials": {
"qdrantApi": {
"id": "iyQ6MQiVaF3VMBmt",
"name": "QdrantApi account (Hetzner)"
}
},
"typeVersion": 1.1
},
{
"id": "65261873-4ca5-4e23-bc65-220f971eb5b4",
"name": "付箋1",
"type": "n8n-nodes-base.stickyNote",
"position": [
240,
1600
],
"parameters": {
"width": 500,
"height": 120,
"content": "## STEP 4\nTest the RAG"
},
"typeVersion": 1
},
{
"id": "ffbaabd0-7fd7-41db-bb71-4cccadf3e9c8",
"name": "Embeddings OpenAI",
"type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
"position": [
-180,
2160
],
"parameters": {
"options": {}
},
"credentials": {
"openAiApi": {
"id": "4zwP0MSr8zkNvvV9",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "23053690-c978-4b05-be26-e94f88c9d92f",
"name": "付箋4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-480,
100
],
"parameters": {
"color": 4,
"width": 620,
"height": 520,
"content": "# STEP 2\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n## Documents vectorization with Qdrant and Google Drive\nChange:\n- QDRANTURL\n- COLLECTION"
},
"typeVersion": 1
},
{
"id": "153a5098-56d1-4b7c-bb12-e6054db927a0",
"name": "Edit Fields3",
"type": "n8n-nodes-base.set",
"position": [
-100,
880
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "b413a226-0641-4ed8-9951-d17b6a6a9a4b",
"name": "file_id",
"type": "string",
"value": "DRIVEFILE_ID"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "796f3ad4-e041-4af6-b3a5-72b3c3730c49",
"name": "単一ファイル更新",
"type": "@n8n/n8n-nodes-langchain.vectorStoreQdrant",
"position": [
700,
980
],
"parameters": {
"mode": "insert",
"options": {},
"qdrantCollection": {
"__rl": true,
"mode": "list",
"value": "negozio-emporio-verde",
"cachedResultName": "negozio-emporio-verde"
}
},
"credentials": {
"qdrantApi": {
"id": "iyQ6MQiVaF3VMBmt",
"name": "QdrantApi account (Hetzner)"
}
},
"typeVersion": 1
},
{
"id": "058c4929-ff59-41ca-8131-178e9038b354",
"name": "付箋2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-200,
-580
],
"parameters": {
"color": 3,
"width": 840,
"height": 220,
"content": "# Enables full or incremental updates to documents in RAG system using Qdrant \nThis workflow automates the creation and management of a Retrieval-Augmented Generation (RAG) system using Qdrant as a vector store and Google Drive as the document source. It **enables full or incremental updates to documents** in the Qdrant vector database and integrates with a chatbot using Google Gemini for question answering."
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "630e34d7-6558-49c3-b861-520b33fd0f91",
"connections": {
"74a224b0-8755-41ef-bb55-22e83b7d762d": {
"main": [
[
{
"node": "2ade51da-1711-4f71-8bd9-ebd3b6494b0b",
"type": "main",
"index": 0
}
]
]
},
"d75a193e-e0cd-469a-8222-1ff183e2aa83": {
"main": [
[
{
"node": "2ade51da-1711-4f71-8bd9-ebd3b6494b0b",
"type": "main",
"index": 0
}
]
]
},
"153a5098-56d1-4b7c-bb12-e6054db927a0": {
"main": [
[
{
"node": "074333a4-fbcc-42ce-aa05-212d545fdcb1",
"type": "main",
"index": 0
},
{
"node": "dfa7b994-13b7-490f-82b7-5ae4ea1e2e7f",
"type": "main",
"index": 0
}
]
]
},
"074333a4-fbcc-42ce-aa05-212d545fdcb1": {
"main": [
[
{
"node": "796f3ad4-e041-4af6-b3a5-72b3c3730c49",
"type": "main",
"index": 0
}
]
]
},
"4e5d5bd2-2aae-4d3b-978e-3ed29b641bb3": {
"main": [
[
{
"node": "4e5539a5-0f3a-4de9-ba69-0eb7d9c00804",
"type": "main",
"index": 0
}
]
]
},
"2ade51da-1711-4f71-8bd9-ebd3b6494b0b": {
"main": [
[],
[
{
"node": "4e5d5bd2-2aae-4d3b-978e-3ed29b641bb3",
"type": "main",
"index": 0
}
]
]
},
"f7098791-889a-4e9a-bd8f-f3b52dfc8839": {
"main": [
[
{
"node": "d75a193e-e0cd-469a-8222-1ff183e2aa83",
"type": "main",
"index": 0
}
]
]
},
"ffbaabd0-7fd7-41db-bb71-4cccadf3e9c8": {
"ai_embedding": [
[
{
"node": "e490e747-5395-4460-bdea-0781145f30b1",
"type": "ai_embedding",
"index": 0
}
]
]
},
"71115f33-f461-4942-9df1-e554e6432054": {
"ai_embedding": [
[
{
"node": "4e5539a5-0f3a-4de9-ba69-0eb7d9c00804",
"type": "ai_embedding",
"index": 0
}
]
]
},
"1c0d5b8c-e53e-47d3-aaac-ddccae80f280": {
"ai_embedding": [
[
{
"node": "796f3ad4-e041-4af6-b3a5-72b3c3730c49",
"type": "ai_embedding",
"index": 0
}
]
]
},
"f838f548-52dd-4aaf-aa97-9a8029018a1a": {
"ai_document": [
[
{
"node": "796f3ad4-e041-4af6-b3a5-72b3c3730c49",
"type": "ai_document",
"index": 0
}
]
]
},
"4e5539a5-0f3a-4de9-ba69-0eb7d9c00804": {
"main": [
[
{
"node": "74a224b0-8755-41ef-bb55-22e83b7d762d",
"type": "main",
"index": 0
}
]
]
},
"81d855d2-a883-4e74-ae2a-1a4e722af4d7": {
"ai_document": [
[
{
"node": "4e5539a5-0f3a-4de9-ba69-0eb7d9c00804",
"type": "ai_document",
"index": 0
}
]
]
},
"e490e747-5395-4460-bdea-0781145f30b1": {
"ai_vectorStore": [
[
{
"node": "d7e29bec-2b8c-400c-b6d7-a82d7a2865a7",
"type": "ai_vectorStore",
"index": 0
}
]
]
},
"d7e29bec-2b8c-400c-b6d7-a82d7a2865a7": {
"ai_retriever": [
[
{
"node": "db644cc4-da46-4e9e-a092-f91762ca1c6b",
"type": "ai_retriever",
"index": 0
}
]
]
},
"9e7ebe5e-a854-44dc-8cb3-ec1663121b93": {
"ai_languageModel": [
[
{
"node": "db644cc4-da46-4e9e-a092-f91762ca1c6b",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"e4ee0aa9-e140-44b9-b581-6d98cb2857a9": {
"main": [
[
{
"node": "db644cc4-da46-4e9e-a092-f91762ca1c6b",
"type": "main",
"index": 0
}
]
]
},
"25c035aa-7a07-47cf-8878-44ac2eab0c3d": {
"ai_textSplitter": [
[
{
"node": "81d855d2-a883-4e74-ae2a-1a4e722af4d7",
"type": "ai_textSplitter",
"index": 0
}
]
]
},
"23afa2cc-7085-474f-aa9e-b110ef17208c": {
"main": [
[
{
"node": "f7098791-889a-4e9a-bd8f-f3b52dfc8839",
"type": "main",
"index": 0
}
]
]
},
"07bb3ae1-145f-4784-8409-d3bc73d5522c": {
"ai_textSplitter": [
[
{
"node": "f838f548-52dd-4aaf-aa97-9a8029018a1a",
"type": "ai_textSplitter",
"index": 0
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
上級 - 人工知能
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
Qdrantを使った完全なRAGシステム、自動出典引用付き
Qdrant、Gemini、OpenAIを使った自動引用機能付きRAGシステムの構築
Set
Code
Wait
+
Set
Code
Wait
29 ノードDavide
人工知能
Mistral OCR を基にした完全な RAG パイソンデモ(PDF から始める)
Mistral OCR、Qdrant、Gemini AIを組み合わせてPDFドキュメントRAGシステムを構築
Set
Code
Wait
+
Set
Code
Wait
34 ノードDavide
人工知能
Qdrant を使った完全な RAG システム、ドキュメントの自動更新機能付き
OpenAI、Google Gemini、Qdrant および Google Drive を使用して、自更新 RAG システムを構築
Set
Wait
Google Drive
+
Set
Wait
Google Drive
32 ノードDavide
AI RAG検索拡張
試験問題生成
GoogleドキュメントとGeminiを基にしたAI駆動の自動試験問題・解答生成
Code
Google Docs
Http Request
+
Code
Google Docs
Http Request
37 ノードDavide
その他
AIで動くTelegramアシスタント完全入門ガイド(PDF、Brave検索、Google スイート)
Gemini、RAG PDF検索、Google Suiteを用いて多機能Telegramボットを構築
Set
Code
Wait
+
Set
Code
Wait
79 ノードIssam AGGOUR
人工知能
AI スマートアシスタント: Supabase ストレージと Google Drive ファイルとの対話
AIワンチャットボット:SupabaseストレージとGoogle Driveのファイルと対話
If
Set
Wait
+
If
Set
Wait
62 ノードMark Shcherbakov
エンジニアリング
ワークフロー情報
難易度
上級
ノード数29
カテゴリー1
ノードタイプ15
作成者
Davide
@n3witaliaFull-stack Web Developer based in Italy specialising in Marketing & AI-powered automations. For business enquiries, send me an email at info@n3w.it or add me on Linkedin.com/in/davideboizza
外部リンク
n8n.ioで表示 →
このワークフローを共有