ResearchGPT is a production-grade autonomous research system designed to synthesize complex information across documents and the web using a 6-agent pipeline. It performs deep research, data extraction, parallel reasoning, and synthesis with automated knowledge graph generation.
Built with FastAPI, React, MongoDB Vector Search, and Ollama, powered by grok-3 / grok-3-mini (with Gemini Flash fallback).
The core of ResearchGPT is a deliberate, sequential agentic pipeline that maximizes reasoning depth while minimizing context window fatigue and hallucinations.
- Takes raw user queries and decomposes them into a structured
ResearchPlan. - Determines research scope, required domains, search strategies, and analytical depth.
- Injects insights from past user sessions (Memory Agent feedback loop).
- Executes multi-source parallel searches across MongoDB Vector Search, Full-Text Search, arXiv, and Semantic Scholar.
- Ranks, deduplicates, and fuses results using Reciprocal Rank Fusion (RRF).
- Fetches raw PDF content and local
Nomicembeddings for precise semantic matching.
- Reads raw retrieved documents and extracts structured
Findings. - Identifies core claims, methodologies, limitations, and recurring themes.
- Runs in highly parallelized batches using bounded concurrency with
grok-3-mini.
- Contradiction Detection: Cross-references all claims to detect consensus and conflict.
- Evidence Graph: Constructs a node-link graph mapping documents to themes and claims.
- Gap Analysis: Evaluates findings against the original
ResearchPlanto identify what's missing.
- Synthesizes all data into 4 simultaneous output formats:
- Narrative Literature Review (Markdown with inline citations)
- Actionable Research Gaps
- Comparative Analysis Matrix (JSON/Table)
- Document-Theme Citation Matrix (Boolean grid)
- Summarizes the completed research session.
- Extracts new nodes and edges for the global topic knowledge graph.
- Updates the user's persistent "Expertise Vector" stored in MongoDB.
Frontend (Client)
- React 18 + Vite
- TypeScript + Tailwind CSS
- Zustand (State management)
- React Router DOM
- Glassmorphism aesthetic
Backend (ML Service)
- Python 3.11 + FastAPI
- Anthropic / xAI / Google LLM Routers (Exponential Backoff + Fallbacks)
nomic-embed-textvia Ollama (Local Embeddings)- Asyncio (Parallel agent execution)
Infrastructure & Data
- MongoDB Atlas (Vector Search & Document Store)
- WebSockets (Real-time agent streaming to UI)
-
Launch MongoDB & Ollama Ensure MongoDB Atlas URI is set and Ollama is running
nomic-embed-text. -
Start Backend ML Service
cd ml_service uvicorn main:app --reload --port 8000 -
Start Frontend
cd frontend npm run dev
ResearchGPT — Built for deliberate, autonomous intelligence.