Skip to main content

Anniversary starting prices are live.

See Pricing
ZENERA LABS
Zenera Labs Engineering PortfolioInternally developed · LangGraph system

Deep Research Multi-Agent System

Planning, retrieval, critique and citation-aware synthesis — autonomous evidence-backed research reports.

Advanced AI / RAGMulti-Agent SystemsResearch Automation

Built by subhraneel · AI Engineer

Deep research system — planning stage with sub-questions
01See It In Action

The system, up close

Real captures from the running system — the demo, screenshots and architecture come first, then the deep dive.

Demo

Watch the pipeline unfold in real time — from intent extraction through critique and synthesis, with SSE progress in the frontend.

The complete research pipeline — planning, retrieval, critique, follow-up and synthesis

The main demo shows the complete research flow end to end.

Screenshots

1 / 3

Deep research system — planning stage with sub-questions
Deep research system — planning stage with sub-questions

Architecture

Multi-agent research architecture: user question through intent, planning, tasks, search/fetch, analyst, critique and synthesis to the final report
START → intent → planning → tasks → search & fetch → analyst → critique → (follow-up loop) → synthesis → END.
02The Problem

Why this needed to be built

Complex research questions demand more than a single chatbot answer — they need structured, evidence-backed reports with traceable sources.

Manual research doesn't scale, and black-box answers can't be validated, cited or trusted for analyst and knowledge-work contexts.

03The Zenera Solution

What we built, and how it changes the workflow

We built a multi-agent deep research system with LangGraph that autonomously transforms complex research questions into structured, evidence-backed reports with claim-level traceability.

The system decomposes a question into research tasks, searches and fetches sources with Exa and Firecrawl, scores and organizes evidence by quality, analyzes each sub-question, and runs a critique agent that flags unsupported claims, missing evidence, contradictions and research gaps.

When research is insufficient, it performs bounded follow-up research before synthesizing the final report. Every claim links back to specific evidence IDs and source URLs, and live progress is streamed to a Next.js frontend over SSE.

04Key Capabilities

What it can do

A focused set of capabilities that define the system — no marketable filler, only what actually runs.

01

Intent understanding

Extracts target URL, entity, objective, domain, scope, constraints and expected output from the question.

02

Planning agent

Decomposes the objective into researchable sub-questions and a research strategy.

03

Task generation

Converts each sub-question into a concrete research task with an executable search query.

04

Search & fetch

Exa for search, Firecrawl for page content, plus direct fetch of a provided target URL as primary evidence.

05

Evidence store

Normalizes, deduplicates and queries evidence with quality scores (relevance 35%, freshness 25%, author 20%, content 20%).

06

Analyst agent

Answers each sub-question from the top-N evidence by quality score with inline citations.

07

Critique agent

Checks unsupported claims, missing evidence, weak sources, contradictions and research gaps; generates real follow-up queries.

08

Synthesis agent

Produces a final report with claim-level evidence IDs, references, confidence scores, limitations and executive summary.

09

Real-time streaming

SSE events broadcast intent, planning, tasks, search, analysis, critique, follow-up and synthesis as they happen.

05How It Works

The end-to-end workflow

The system processing path, in order.

  1. 1

    Understand intent

    Extract target URL, entity, objective, domain, scope, constraints and expected output.

  2. 2

    Plan

    Decompose the objective into sub-questions and a research strategy.

  3. 3

    Generate tasks

    Turn sub-questions into concrete research tasks with search queries.

  4. 4

    Search & fetch

    Run Exa search, fetch top pages with Firecrawl, and store quality-scored evidence.

  5. 5

    Analyze

    Answer each sub-question from the top-N evidence items with inline citations.

  6. 6

    Critique

    Review all analyses for unsupported claims, missing evidence, weak sources, contradictions and gaps.

  7. 7

    Follow up

    If research is insufficient and loops remain, run follow-up searches, append evidence and re-analyze.

  8. 8

    Synthesize

    Produce the final structured report with traceable claims, references and confidence scores.

06Technology

Stack & tech choices

Orchestration
LangGraph 1.2.11, RetryPolicy (3 attempts) on graph nodes
Backend
Python, FastAPI, Pydantic 2.13, Uvicorn
LLM
gpt-4o-mini via litellm 1.96.2 with structured response_format
Search & retrieval
Exa (exa-py), Firecrawl (firecrawl-py)
Frontend
Next.js 16.3.1, React 19, Tailwind v4, @microsoft/fetch-event-source (SSE)
Testing
pytest — 70 tests in ~5s, fully mocked
07Validation

Tested, verified and honestly scoped

Validation & tests

A 70-test suite (all mocked — no real API calls) verifies every node, the evidence store, source scoring and the full chat pipeline.

  • Intent (6) — URL detection, objective/domain/scope extraction
  • Planning (4) and task generation (4) — sub-question decomposition
  • Search & fetch (5) — Exa + Firecrawl integration points
  • Analyst (5) — evidence-grounded answers with citations
  • Critique (6) — quality review and routing decisions
  • Follow-up search (3) — incremental evidence append without data loss
  • Synthesis (4) — report generation with traceable claims
  • Evidence store (14) — ingest, query, dedup and indexing (pure logic)
  • Source scoring (15) — scoring components and composite math (pure logic)
  • Chat endpoint (4) — async integration tests for POST /chat
  • Retry on parse errors — nodes self-retry with a 3-attempt policy

Security & hardening

  • API keys read only from the environment (EXA_API_KEY, FIRECRAWL_API_KEY, LLM keys)
  • Pydantic output models constrain every LLM response; invalid responses are rejected and retried
  • Unsupported evidence IDs are stripped during synthesis post-processing
  • Evidence is deduplicated and deterministically keyed (source_url + task_id hash)

Honest limitations

Deep Research Multi-Agent System is an internally developed engineering prototype. We state limitations rather than overclaim production readiness.

  • Requires real API keys for live unrestricted research (Exa, Firecrawl, LLM)
  • Bounded to a single follow-up research iteration by design
  • Report quality is bounded by search coverage and source quality scoring
  • Synthesis export is currently JSON/Markdown; PDF/DOCX formatters are a future step
09Future Extensions

Where this can go next

Realistic next steps we've scoped — not aspirational marketing copy.

  • PDF and DOCX report export formatters
  • Parallel fan-out across research tasks
  • Pluggable search and fetch backends
  • Human-in-the-loop review at the critique stage
  • Deeper evidence deduplication and per-claim confidence tuning

Have a similar workflow?
Zenera Labs can build a custom version for your business.

This is one of subhraneel's internally developed systems. Tell us about your requirement and we'll scope a tailored build around it.