PDF proposal knowledge base with S3, OpenAI GPT-4o & Qdrant RAG agent
Needs changesNeeds changes. This template uses 1 thing(s) that n8n 3.0 removes: AI Agent v1 (old agent modes). 1 breaking item(s) found. Static check, last run 2026-10-19.
What to replace before upgrading
| Removed in 3.0 | Replace with |
|---|---|
| AI Agent v1 (old agent modes) AI Agent (v1.9) | Latest AI Agent node (Tools Agent). For SQL Agent, use a Postgres or MySQL tool with a recent AI Agent. |
Nodes used (11)
- Manual Trigger
n8n-nodes-base.manualTrigger - Loop Over Items (Split in Batches)
n8n-nodes-base.splitInBatches - Extract from File
n8n-nodes-base.extractFromFile - Qdrant Vector Store
@n8n/n8n-nodes-langchain.vectorStoreQdrant - AWS S3
n8n-nodes-base.awsS3 - Embeddings OpenAI
@n8n/n8n-nodes-langchain.embeddingsOpenAi - Default Data Loader
@n8n/n8n-nodes-langchain.documentDefaultDataLoader - Recursive Character Text Splitter
@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter - Chat Trigger
@n8n/n8n-nodes-langchain.chatTrigger - AI Agent
@n8n/n8n-nodes-langchain.agent - OpenAI Chat Model
@n8n/n8n-nodes-langchain.lmChatOpenAi
What it does
This template has a two part setup: 1. Ingest PDF files from S3, extract text, chunk, embed with OpenAI embeddings, and index into a Qdrant collection with metadata. 2. Provide a chat entry point that uses an Agent with OpenAI to retrieve from the same Qdrant collection as a tool and answer proposal knowledge questions. What it does - Lists objects in an S3 bucket, loops through keys, downloads each file, and extracts text from PDFs. - Chunks text and loads it into Qdrant with metadata for retrieval. - Exposes a chat trigger wired to an Agent using an OpenAI chat model. - Adds a retrieve as tool Qdrant node so the Agent can ground answers in the indexed corpus. Why it is useful - Simple pattern for building a proposal or knowledge base from PDFs stored in S3. - End to end path from ingestion to retrieval augmented answers. - Easy to swap models or collections, and to extend with more tools. Setup notes - Attach your own AWS credentials to the two S3 nodes and set your bucket name. - Attach your Qdrant credentials to both Qdrant nodes and set your collection. - Attach your OpenAI credentials to the embedding and chat nodes. - The sanitized template uses placeholders for bucket and collection names.