Muhammad Ahmad Faizan
Back to Portfolio
AI

Multi-Agent Research Assistant

Coordinated agents that decompose complex research tasks across specialized roles with a dark-themed React frontend.

PythonLangGraphCrewAIGroqFastAPINext.jsTailwindCSS

Overview

Built a multi-agent research system where specialized AI agents collaborate to tackle complex research tasks. The system decomposes a research question into sub-tasks, assigns them to agents with distinct roles (Researcher, Analyst, Writer, Reviewer), coordinates their outputs through a managed workflow, and produces a synthesized report.

Business Problem

Deep research tasks require multiple cognitive passes: gathering information, analyzing findings, synthesizing insights, and reviewing for quality. A single LLM call produces shallow results. Manual research is slow. The challenge was to build an agent orchestration system that mirrors how human research teams operate.

Solution

Used LangGraph for stateful workflow orchestration with CrewAI for role-based agent coordination. The system implements a four-stage pipeline: a Researcher agent gathers information, an Analyst evaluates and extracts insights, a Writer synthesizes the report, and a Reviewer checks quality. Each agent gets context from prior stages. Built a dark-themed React frontend for real-time output streaming.

Architecture

Multi-Agent Research Assistant — Architecture Research Question Task Decomposition Researcher Agent Gathers information Analyst Agent Extracts insights Writer Agent Synthesizes report Reviewer Agent Quality check LangGraph Orchestrator Stateful Workflow Synthesized Research Report

Key Features

  • Role-based agent decomposition with specialized Research, Analysis, Writing, and Review agents
  • Stateful orchestration via LangGraph with full inter-agent context passing
  • Real-time streaming of agent outputs to the React frontend via WebSockets
  • Parallel execution of independent research subtasks
  • Iterative refinement loop where reviewer feedback triggers re-generation
  • Dark-themed React frontend with collapsible agent output panels

Gallery

Landing page that shows detailed information about the RAG Knowledge Assistant project, including overview, architecture, and key features.

Landing page that shows detailed information about the RAG Knowledge Assistant project, including overview, architecture, and key features.

Showing searchbar and CTA button to start a query

Showing searchbar and CTA button to start a query

Human in the Loop and subquestions

Human in the Loop and subquestions

Analysing and Searching

Analysing and Searching

Showing the final answer with citations.

Showing the final answer with citations.

Tech Stack

PythonLangGraphCrewAIGroqFastAPINext.jsTailwindCSSWebSocketsDocker

Engineering Challenges

Agent Coordination State Management

Managing context passing between four agents in a directed acyclic graph required careful state schema design. Each agent's output needed to be structured and parseable by downstream agents without information loss.

Async Orchestration with Real-time Streaming

Coordinating parallel agent execution while streaming partial results to the frontend required non-trivial async patterns. Used asyncio tasks with shared state queues and WebSocket broadcasting.

Quality Control Loops

The reviewer agent occasionally flagged issues that required regeneration, but unbounded retry loops could cause infinite execution. Implemented a max 2-retry policy with progressive context enrichment between attempts.

Lessons Learned

  • Structured agent outputs (typed schemas) dramatically improve inter-agent communication quality
  • Real-time streaming is essential for user trust — showing intermediate agent work keeps users engaged during long-running research tasks
  • Locking retry budgets prevents runaway costs while still allowing meaningful quality improvement cycles

Results

The system produces research reports that consistently outperform single-LLM outputs in breadth, depth, and factual accuracy, as evaluated by domain experts across 20 test scenarios. Average completion time for a complex research topic is 45 seconds.

Related Projects

Let's Build Something Similar

Have a project in mind? Let's discuss how we can architect and build it together.

Discuss Your Project