Skip to main content

Document Q&A system with OpenAI GPT, Pinecone Vector DB & Google Drive integration

Workflow preview

Document Q&A system with OpenAI GPT, Pinecone Vector DB & Google Drive integration preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

Overview

This workflow contains community nodes that are only compatible with the self-hosted version of n8n.

๐Ÿค– AI-Powered Document QA System using Webhook, Pinecone + OpenAI + n8n

This project demonstrates how to build a Retrieval-Augmented Generation (RAG) system using n8n, and create a simple Question Answer system using Webhook to connect with User Interface (created using Lovable):

๐Ÿงพ Downloads the pdf file format documents from Google Drive (contract document, user manual, HR policy document etc...)

๐Ÿ“š Converts them into vector embeddings using OpenAI

๐Ÿ” Stores and searches them in Pinecone Vector DB

๐Ÿ’ฌ Allows natural language querying of contracts using AI Agents

๐Ÿ“‚ Flow 1: Document Loading & RAG Setup

This flow automates:

Reading documents from a Google Drive folder

Vectorizing using text-embedding-3-small

Uploading vectors into Pinecone for later semantic search

๐Ÿงฑ Workflow Structure

A [Manual Trigger] --> B[Google Drive Search] B --> C[Google Drive Download] C --> D[Pinecone Vector Store] D --> E[Default Data Loader] E --> F[Recursive Character Text Splitter] E --> G[OpenAI Embedding]

๐Ÿชœ Steps

Manual Trigger: Kickstarts the workflow on demand for loading new documents.

Google Drive Search & Download

Node: Google Drive (Search: file/folder)

Downloads PDF documents

Apply Recursive Text Splitter: Breaks long documents into overlapping chunks

Settings: Chunk Size: 1000 Chunk Overlap: 100

OpenAI Embedding

Model: text-embedding-3-small Used for creating document vectors

Pinecone Vector Store

Host: url Index: index Batch Size: 200

Pinecone Settings:

Type: Dense Region: us-east-1 Mode: Insert Documents

๐Ÿ’ฌ Flow 2: Chat-Based Q&A Agent

This flow enables chat-style querying of stored documents using OpenAI-powered agents with vector memory.

๐Ÿงฑ Workflow Diagram

A[Webhook (chat message)] --> B[AI Agent] B --> C[OpenAI Chat Model] B --> D[Simple Memory] B --> E[Answer with Vector Store] E --> F[Pinecone Vector Store] F --> G[Embeddings OpenAI]

๐Ÿชœ Components

Chat (Trigger): Receives incoming chat queries

AI Agent Node

Handles query flow using:

Chat Model: OpenAI GPT

Memory: Simple Memory

Tool: Question Answer with Vector Store

Pinecone Vector Store: Connected via same embedding index as Flow 1

Embeddings: Ensures document chunks are retrievable using vector similarity

Response Node: Returns final AI response to user via webhook

๐ŸŒ Flow 3: UI-Based Query with Lovable

This flow uses a web UI built using Lovable to query contracts directly from a form interface.

๐Ÿ“ฅ Webhook Setup for Lovable

Webhook Node

Method: POST URL:url Response: Using 'Respond to Webhook' Node

๐Ÿงฑ Workflow Logic

A[Webhook (Lovable Form)] --> B[AI Agent] B --> C[OpenAI Chat Model] B --> D[Simple Memory] B --> E[Answer with Vector Store] E --> F[Pinecone Vector Store] F --> G[Embeddings OpenAI] B --> H[Respond to Webhook]

๐Ÿ’ก Lovable UI

Users can submit:

Full Name Email Department Freeform Query: User can enter any freeform query. image.png Data is sent via webhook to n8n and responded with the answer from contract content.

๐Ÿ” Use Cases

Contract Querying for Legal/HR teams

Procurement & Vendor Agreement QA

Customer Support Automation (based on terms)

RAG Systems for private document knowledge

โš™๏ธ Tools & Tech Stack

image.png

๐Ÿ“Œ Final Notes Pinecone Index: package1536

Dimension: 1536

Chunk Size: 1000, Overlap: 100

Embedding Model: text-embedding-3-small

Feel free to fork the workflow or request the full JSON export. Looking forward to your suggestions and improvements!