Lesson 163 — Advanced

Multi-Agent Research Report System

Ek agent se report banwana tab tak chalta hai jab tak kaam chhota ho. Yeh project orchestration dikhata hai: alag roles (plan, research, write, review) ek fixed graph mein chalte hain aur ek shared state pass karte hain.

⏱ 30 min• Advanced• Resume ↔ JD Screening Agent

Project kya hai

WHAT

Ek system jo topic leta hai: plan banata hai, har section ke liye parallel research karta hai, draft likhta hai, critic se review karta hai, aur final report + sources deta hai. Har step ka state hota hai.

WHEN

Lambi research reports, market scans, comparative analyses — jab ek prompt mein sab karne par context bhar jaaye ya sections parallel ho sakein.

WHERE

LangGraph (L5.7) se graph, Python backend, cron/batch se schedule karke weekly digest bana sakte ho.

Pehla sawaal hamesha yeh ho: kya sach mein multi-agent chahiye? Ek agent + tools + good prompts aksar kaafi hota hai (L5.10). Multi-agent tab justified hai jab parallelism, context isolation ya hard quality gates chahiye.

Scope rule: v1 = planner + researcher + writer + critic (4 roles), ek topic, ek language. Portals, live web browsing, multi-format exports baad mein.

Roles aur shared state

State = single source of truth: Agents ko chat history pass mat karo — state object pass karo. Debugging mein state dump karke har step ka input/output dekh paoge (L6.4 ka lesson yahan kaam aata hai).

Graph — LangGraph skeleton

from typing import TypedDict, Annotated
from langgraph.graph import StateGraph, END
import operator

class ReportState(TypedDict):
    topic: str
    outline: list[dict]
    findings: Annotated[list[dict], operator.add]   # parallel researchers append
    draft: str
    critique: str
    revisions: int

def planner(state):   # topic -> outline
    ...
def researcher(state): # ek section ka kaam (parallel map)
    ...
def writer(state):     # outline + findings -> draft
    ...
def critic(state):     # draft -> critique / pass
    ...

g = StateGraph(ReportState)
g.add_node("plan", planner)
g.add_node("research", researcher)     # fan-out: outline ke har section par
g.add_node("write", writer)
g.add_node("critique", critic)
# routing: plan -> research -> write -> critique -> (pass | write again, max 2)
Checkpoints on rakho: LangGraph ka checkpointing crash ke baad wahi se resume karwata hai — research chhod kar dubara mat shuru karo. Revision loop par hard cap (jaise2) lagao, warna critic-writer ka jalaa chakka chalta rahega.

Kab single agent, kab multi

Interview mein yahi sawaal aata hai — isliye yeh decision table yaad rakho:

Honest benchmark: Same topic par single-agent vs multi-agent run karke reports compare karo (coverage, citations, time, cost) — apne numbers se defend karo, assumption se nahi.

Failure recovery

Idempotent steps: Re-run par researcher wahi section dobara na kare — section_id se dedupe karo. Crash recovery tabhi sasti hai jab steps idempotent hon.

Exercise

Question: Agents ke beech shared data kahan store hota hai? (ek shabd)

Question: Report se pehle outline banane wale agent ka naam? (ek shabd, English)

Question: Multi-agent se pehle aksar try kiya jaane wala simpler option? (do shabd, English)

Common mistakes

Desi example: Newsroom ka model

Editor plan banata hai, reporters parallel mein research karte hain, sub-editor check karta hai, phir page jaata hai. Ek banda sab nahi karta — aur har stage ka apna fixed output hota hai:

text
plan -> research (parallel, per section) -> draft -> critique
         |                                  ^
         +--- findings (sources ke saath) --+
Yeh arrows hi graph hain — chat mein andhere mein nahi, framework mein chalao.
Interview angle — yahan se sawaal aate hain
  • Q: Multi-agent system design karo — roles, state, routing batao. (planner/researcher/writer/critic + TypedDict state + revision cap)
  • Q: State pass karne ke fayde vs message passing? (debug, resume, no context-loss — L6 ka concept)
  • Q: Parallel researchers ke beech findings kaise merge karoge? (append reducer + section_id dedupe)
  • Q: Kab tum single-agent wapas chal jaoge? (cost/latency/quality data dekh kar — honest trade-off answer)
Lesson complete?

Roles, state aur recovery — teenon defined hain. LangGraph skeleton lo, ek topic par chalao, phir single-agent se compare karke numbers nikaalo.

Popular courses: Data Science Course in Lucknow · AI Course in Lucknow · Python Course in Lucknow · Power BI Course · Data Analytics Course