WebSwarm: 깊고 넓은 웹 검색을 위한 재귀적 Multi-Agent Orchestration
WebSwarm: Recursive Multi-Agent Orchestration for Deep-and-Wide Web Search
TL;DR Highlight
복잡한 웹 검색을 재귀적으로 분해하고 각 노드에 적합한 검색 모드를 동적으로 할당하는 멀티에이전트 프레임워크
Who Should Read
웹 검색 에이전트나 리서치 자동화 파이프라인을 구축 중인 개발자. 단일 ReAct 에이전트의 한계(컨텍스트 제한, 깊이-넓이 동시 처리 불가)를 느끼고 멀티에이전트로 전환을 고민하는 백엔드 엔지니어.
Core Mechanics
- 기존 멀티에이전트 시스템은 루트 레벨에서만 태스크를 분해해서 깊은 중첩 구조를 못 다룬다. WebSwarm은 중간 증거가 쌓일수록 동적으로 새 서브태스크를 생성하는 재귀적 위임 방식을 씀.
- WebSwarm은 각 검색 노드에 4가지 모드(atom: 단순 사실 조회, deep: 반복 가설-검증, wide: 병렬 분산 수집, entity_collect: 집합 완전 열거)를 할당해서 태스크 유형에 맞는 전략을 씀.
- 웹 정보 구조를 미리 탐색(Web-Probing)해서 정보가 집중된 허브 페이지가 있는지 분산되어 있는지 파악하고, 이에 맞게 노드 확장 방향을 결정함. 잘못된 차원으로 분해하는 걸 방지.
- 같은 부모 노드 아래 동질적인(homogeneous) 형제 노드들이 있을 때, 먼저 실행한 scout 노드의 검색 경험(효과적인 쿼리 패턴, 신뢰할 수 있는 출처, 피해야 할 dead-end)을 추출해서 나머지 노드에 주입함.
- 재귀 위임 트리에서 자식 노드가 결과를 부모에게 반환하면, 부모는 그 증거를 바탕으로 추가 확장/수정/종료를 결정함. 정적 계획이 아니라 증거 기반 동적 확장.
- GLM-4.5를 backbone으로 사용하고, Qwen3-32B 및 Qwen3.5-35B 모델에서도 동일하게 성능 향상이 확인되어 특정 모델에 종속되지 않음.
Evidence
- BrowseComp-Plus(깊은 팩트 검색)에서 ReAct 대비 +17.50 accuracy points 향상, 최강 멀티에이전트 베이스라인 대비 +3.50 points 향상 (68.00 vs 50.50).
- WideSearch-EN(넓은 정보 수집)에서 ReAct 대비 Row F1 +10.91, Item F1 +9.76 향상. 모든 멀티에이전트 베이스라인도 상회.
- Hard 난이도 샘플에서 BrowseComp-Plus 기준 ReAct 0.0 → WebSwarm 35.7, WideSearch-EN 기준 24.5 → 55.8로 어려운 태스크일수록 격차가 극명함.
- Web-Probing 제거 시 웹툴 호출 수가 WideSearch에서 137.03 → 239.90으로 75% 증가, DeepWideSearch에서 203.73 → 331.39로 63% 증가. Item F1은 거의 동일해서 Web-Probing이 효율 개선에 핵심임을 확인.
How to Apply
- 복잡한 리서치 에이전트를 설계할 때 단일 ReAct 루프 대신, 태스크를 atom/deep/wide/entity_collect 4가지 유형으로 분류하고 각각 다른 서브에이전트를 라우팅하는 오케스트레이터 패턴을 적용해볼 수 있다.
- Wide 검색(여러 엔티티의 속성을 병렬로 수집)을 구현할 때, 첫 N개 노드를 scout로 먼저 실행하고 그 검색 궤적에서 '효과적인 쿼리 패턴'과 '신뢰할 출처'를 추출해서 나머지 노드의 프롬프트에 주입하면 일관성과 성공률이 올라간다.
- 정보 수집 전 Web-Probing 단계를 추가해서 데이터가 허브 페이지에 집중되어 있는지(→ 소수 노드로 추출) vs 분산되어 있는지(→ 조직 차원에 따라 분해)를 먼저 판단하면 불필요한 병렬 요청을 크게 줄일 수 있다.
Code Example
# WebSwarm Root Agent System Prompt 핵심 구조 (논문 Figure 8 기반)
ROOT_AGENT_PROMPT = """
You are a research orchestrator. Resolve the task by dispatching subtasks to verb agents.
## Available Verbs
- atom: Single-entity attribute lookup. Entity is named, answer is a small set of attributes.
- deep: Target entity is UNKNOWN. Must uncover from indirect constraints via hypothesis-verify loop.
- wide: Same kind of info collected over a GROUP of items (fan-out / table-fill).
- entity_collect: Enumerate a COMPLETE entity set with high precision and recall.
## Decision Heuristics
- One named entity + a few attributes → atom
- Many items × per-item attributes → wide
- Output IS the set itself → entity_collect
- Constraint-intersection puzzle, target unnamed → deep
## Rules
- Call exactly ONE tool per turn: solve_subtask(task, verb) or submit_answer(answer)
- Each subtask must be FULLY self-contained (include all dates, scopes, exclusions)
- Do NOT rely on internal knowledge; only on verb agents' returned results
- Zero-assumption principle: treat unknown lists/rankings as unknown; let verb agents discover them
"""
# Web-Probing Agent Prompt 핵심 구조 (논문 Figure 9 기반)
WEB_PROBING_PROMPT = """
You are an information topology scout.
Determine ONE of three topologies:
1. centralized - 1-3 hub pages cover ALL required data
2. centralized_with_gaps - hub pages cover most data but have identifiable gaps
3. distributed - no hub covers majority; info scattered across many independent pages
Workflow:
1. Search for aggregate/hub sources (prioritize Wikipedia 'List of...' pages)
2. Fetch promising pages and check coverage column by column
3. Output topology + organization dimension (if distributed)
"""
# Subtask Experience Extraction Prompt 핵심 구조 (논문 Figure 10 기반)
EXPERIENCE_EXTRACTION_PROMPT = """
Analyze scout execution traces and extract TRANSFERABLE PROCESS SKILL:
- Which queries/domains worked well or poorly
- Which URLs were authoritative
- Which dead ends to skip
- Any constraint that affects all siblings
Rules:
- Output ONLY process advice (not factual claims about specific answers)
- <= 150 words, plain English
- If no useful skill found, output exactly: NONE
"""Terminology
관련 논문
중요할 때 기억하라: Long-Horizon 에이전트를 위한 Proactive Memory Agent
LLM 에이전트가 긴 작업 중 중요한 정보를 잊어버리는 문제를 별도의 메모리 에이전트가 '적절한 타이밍에' 끼어들어 해결하는 방법
웹 앱을 리버스 엔지니어링해서 AI Agent 도구로 자동 변환하기
로그인된 웹 앱의 API 호출을 브라우저에서 감시해 자동으로 MCP 도구로 변환하는 에이전트를 만들었다. 소스 코드나 공식 API 문서 없이도 Jira, Spotify 같은 서비스에 AI 어시스턴트를 붙일 수 있다.
FableCut – AI 에이전트가 조작할 수 있는 브라우저 기반 비디오 에디터 (zero deps)
타임라인 전체를 JSON 파일 하나로 표현하고 MCP/REST로 AI 에이전트가 직접 편집할 수 있는 브라우저 비디오 에디터로, Claude 같은 AI가 프롬프트 하나로 영상을 자동 컷편집하고 결과를 실시간으로 UI에 반영해준다.
노이즈 가득한 실행 로그에서 근본 원인 찾기: Agent 최적화를 위한 구조적 Trajectory 분석과 인과 추출
Agent 실패 로그를 인과 그래프로 분석해 진짜 근본 원인만 골라내고, 해당 모듈 프롬프트만 정밀하게 수정하는 자동 최적화 프레임워크
Microsoft, AI 에이전트를 위한 시각화 언어 Flint 공개
Microsoft가 LLM/AI 에이전트가 차트를 쉽게 생성할 수 있도록 설계된 고수준 시각화 DSL(도메인 특화 언어) Flint를 오픈소스로 공개했다. 에이전트가 복잡한 시각적 세부사항 대신 의미론적 명세만 다루면 되도록 추상화 계층을 제공하는 게 핵심이다.
크게 생각하고, 작게 검색하라: Hierarchical Search Agent에서 모델 용량은 어디에 집중해야 하는가?
멀티에이전트 검색 시스템에서 큰 모델은 질문 분해에, 작은 모델은 실제 검색 실행에 쓰는 게 정답이다.
Related Resources
Original Abstract (Expand)
Large language model (LLM)-based web search agents are transforming information seeking from simple factoid question answering into complex, deep-and-wide search and research-oriented tasks. A single ReAct-style agent is constrained by one long trajectory and limited context, making it difficult to handle depth and coverage simultaneously. Existing multi-agent systems improve search coverage through parallel execution and aggregation, but still exhibit clear limitations in recursive depth, collaboration adaptability, and evidence-grounded expansion. We propose WebSwarm, a progressive recursive delegation framework that jointly constructs task decomposition, recursive expansion, and agent collaboration during inference. WebSwarm dynamically instantiates agentic search nodes, each coupling a local objective with a search mode that specifies how the node should organize search and collaboration. Each node can either solve its objective itself or further delegate child nodes; after solving, it returns evidence and results upward, enabling parent nodes to further expand, revise, or aggregate the search process. To guide this process, WebSwarm first probes how task-relevant information is organized on the web to ground subsequent node expansion, and reuses process-level experience across homogeneous sibling nodes. Experiments on BrowseComp-Plus, WideSearch, DeepWideSearch, and GISA show that WebSwarm consistently outperforms single-agent and multi-agent baselines on deep, wide, and interleaved deep-and-wide tasks. Further analyses of ablation, task difficulty, web tool efficiency, and model generalization explain WebSwarm's effectiveness and provide insights for multi-agent search systems.