An intelligent AI-powered document management and chat platform with RAG capabilities that enables users to upload documents, scrape web content, and engage in context-aware conversations powered by advanced vector embeddings and retrieval-augmented generation.

PROJECT OVERVIEW

Numo AI Document Assistant is a comprehensive AI-powered platform that combines document management, intelligent chat capabilities, and advanced retrieval-augmented generation (RAG) technology. The platform enables users to upload various document types, process web content, and engage in intelligent conversations with context-aware AI assistance.

KEY FEATURES

  • RAG-Powered Chat Interface - Advanced AI chat system that uses retrieval-augmented generation to provide contextually relevant responses based on uploaded documents
  • Document Processing & Embeddings - Automatic text extraction, chunking, and vector embedding generation for uploaded PDFs and text files
  • Web Content Scraping - Intelligent web scraping functionality that extracts and processes content from URLs for knowledge base integration
  • Vector Similarity Search - PostgreSQL with pgvector extension for efficient semantic search across document embeddings
  • Real-Time Streaming Responses - Server-sent events (SSE) for real-time AI response streaming
  • Multi-Document Chat Groups - Organize conversations and documents into chat groups for better context management
  • Admin Dashboard - Comprehensive admin interface for user management, activity logs, and system monitoring
  • Secure Authentication - JWT-based authentication with Google OAuth integration

TECHNICAL ARCHITECTURE

The platform is built with a modern full-stack architecture featuring a React frontend with Redux Toolkit for state management, and a Node.js/Express backend with PostgreSQL database. The AI capabilities are powered by OpenAI's GPT-4o model for responses and text-embedding-3-small for generating vector embeddings. LangChain is used for document chunking and text processing, while pgvector enables efficient similarity search across document embeddings.

DOCUMENT PROCESSING PIPELINE

  1. Users upload documents (PDFs, text files) or provide URLs for web scraping
  2. Documents are processed to extract text content
  3. Text is chunked using LangChain with configurable chunk size (512 tokens) and overlap (100 tokens)
  4. Each chunk is converted to vector embeddings using OpenAI's embedding model
  5. Embeddings are stored in PostgreSQL with pgvector extension for efficient similarity search
  6. During chat interactions, user queries are embedded and matched against stored document chunks
  7. Relevant context is retrieved and injected into AI prompts for contextually accurate responses

The platform also includes advanced features like PDF generation using Puppeteer, image processing capabilities, email notifications, and comprehensive error handling with rate limiting and security measures.

THE REQUIREMENT

The client needed a sophisticated AI-powered document assistant platform that could intelligently process, store, and retrieve information from various document sources to enable context-aware conversations. The solution required seamless integration of document management, AI chat capabilities, and advanced search functionality.

PRIMARY REQUIREMENTS

  • Document Management System - Ability to upload, store, and manage various document types (PDFs, text files) with automatic text extraction and processing
  • AI-Powered Chat Interface - Intelligent chat system that can answer questions based on uploaded documents using retrieval-augmented generation (RAG) technology
  • Vector Embedding & Search - Implementation of vector embeddings for semantic search across documents using pgvector with 1536-dimensional embeddings and inner product similarity metric
  • Web Content Integration - Capability to scrape and process web content from URLs and integrate it into the knowledge base
  • Real-Time Streaming - Real-time AI response streaming using server-sent events for better user experience
  • Multi-User Support - Secure user authentication and authorization with role-based access control (admin and regular users)
  • Chat Organization - Ability to organize conversations into chat groups with multiple document attachments per group

SPECIFIC TECHNICAL REQUIREMENTS

  1. Use OpenAI GPT-4o model for AI responses and text-embedding-3-small for generating embeddings with float encoding format
  2. Implement LangChain text splitter with chunk size of 512 tokens and chunk overlap of 100 tokens
  3. Configure pgvector with inner product metric (vector_ip_ops) and 1536 dimensions for vector storage
  4. Associate vector embeddings with both group IDs and file IDs for flexible retrieval (per group or per file)
  5. Support multiple file formats including PDF, text files, and web-scraped content
  6. Implement secure file upload with validation, size limits, and proper storage management
  7. Provide admin dashboard for user management, activity monitoring, and system administration
  8. Ensure responsive UI with modern design using Tailwind CSS
  9. Implement comprehensive error handling, rate limiting, and security measures
  10. Support both traditional email/password authentication and OAuth (Google) authentication

PERFORMANCE & SCALABILITY REQUIREMENTS

  • Efficient vector similarity search with sub-second response times
  • Support for concurrent users and multiple chat sessions
  • Optimized the document processing pipeline for handling large files
  • Proper caching mechanisms for frequently accessed data
  • Rate limiting to prevent abuse and ensure system stability

USER EXPERIENCE REQUIREMENTS

  • Intuitive chat interface similar to modern AI assistants
  • Real-time response streaming for immediate feedback
  • Easy document upload and management
  • Clear organization of chat groups and conversations
  • Responsive design that works on desktop and mobile devices
  • Comprehensive error messages and user feedback

CORE FEATURES

  • icon AI-powered chat with RAG-based knowledge retrieval
  • icon Document and web content ingestion with automatic text extraction
  • icon Vector embeddings and semantic search using pgvector
  • icon Real-time AI response streaming (SSE)
  • icon Multi-document chat groups for organized conversations
  • icon Admin dashboard with user and activity management
  • icon Configurable document chunking and processing
  • icon PDF and image generation and management
  • icon Email notifications, error handling, and rate limiting
  • icon Responsive UI built with React and Tailwind CSS

Our Similar Projects