본문으로 건너뛰기

© 2026 Molayo

GitHub요약2026. 05. 22. 21:18

The-Swarm-Corporation/AdvancedResearch

요약

Anthropic의 오케스트레이터-워커 패턴을 기반으로 구축된 멀티 에이전트 연구 프레임워크입니다. 병렬 실행, LLM-as-judge 평가, 전문 보고서 생성 및 다양한 출력 형식을 지원합니다.

핵심 포인트

  • Anthropic의 멀티 에이전트 연구 패턴 구현
  • 병렬 실행 및 LLM-as-judge 평가 기능 포함
  • Exa Search API를 활용한 웹 검색 기능 지원
  • JSON 내보내기 및 배치 처리 기능 제공

Anthropic의 논문 "How we built our multi-agent research system"에서 소개된 오케스트레이터-워커 (orchestrator-worker) 패턴을 최첨단 멀티 에이전트 프레임워크인 swarms를 기반으로 구현한 강화된 버전입니다.

우리의 이 고급 연구 시스템 구현체는 병렬 실행 (parallel execution), LLM-as-judge 평가, 그리고 내보내기 (export) 기능이 포함된 전문적인 보고서 생성 기능을 활용합니다.

pip3 install -U advanced-research
# uv pip install -U advanced-research
# Exa Search API Key (웹 검색 기능을 위해 필요함)
EXA_API_KEY="your_exa_api_key_here"
# Anthropic API Key (Claude 모델용)
...

참고: 웹 검색 기능을 위해서는 최소한 EXA_API_KEY가 필요합니다. LLM 기능을 위해서는 ANTHROPIC_API_KEY 또는 OPENAI_API_KEY 중 하나가 필요합니다.

from advanced_research import AdvancedResearch
# 연구 시스템 초기화
research_system = AdvancedResearch(
...
from advanced_research import AdvancedResearch
# 내보내기 기능을 활성화하여 초기화
research_system = AdvancedResearch(
...
from advanced_research import AdvancedResearch
# 사용자 정의 설정으로 초기화
research_system = AdvancedResearch(
...
from advanced_research import AdvancedResearch
# 시스템 초기화
research_system = AdvancedResearch(
...
from advanced_research import AdvancedResearch
# 특정 출력 타입으로 초기화
research_system = AdvancedResearch(
...
작업 (Task)코드 (Code)문서 (Documentation)
기본 연구 (Basic Research)AdvancedResearch().run("query")기본 사용법 (Basic Usage) →
결과 내보내기 (Export Results)AdvancedResearch(export_on=True)내보내기 설정 (Export Config) →
배치 처리 (Batch Processing)system.batched_run([queries])배치 처리 (Batch Processing) →
사용자 정의 모델 (Custom Models)AdvancedResearch(director_model_name="model")고급 설정 (Advanced Config) →
출력 형식 (Output Formats)AdvancedResearch(output_type="json")출력 타입 (Output Types) →

Advanced Research 시스템의 모든 기능을 보여주는 즉시 실행 가능한 예제들입니다:

예제 (Example)설명 (Description)파일 (File)
기본 사용법 (Basic Usage)최소한의 설정으로 수행하는 간단한 연구examples/basic_usage.py
내보내기 기능 (Export Functionality)연구 결과를 JSON 파일로 저장examples/export_example.py
고급 설정 (Advanced Configuration)커스텀 모델, 토큰, 그리고 다중 루프 (multiple loops)examples/advanced_config.py
커스텀 모델 (Custom Models)다양한 AI 모델 설정examples/custom_models.py
출력 형식 (Output Formats)JSON, 마크다운 (markdown), 그리고 대화 기록 (conversation history)examples/output_formats.py
배치 처리 (Batch Processing)여러 쿼리를 효율적으로 처리examples/batch_processing.py
다중 루프 연구 (Multi-Loop Research)정교화 과정을 포함한 반복적 연구examples/multi_loop_research.py
세션 관리 (Session Management)대화 추적 및 지속성 유지examples/session_management.py
채팅 인터페이스 (Chat Interface)대화형 웹 기반 채팅 데모examples/chat_demo.py

빠른 시작 예제 (Quick Start Examples):

# 기본 연구 (Basic research)
python examples/basic_usage.py
# 내보내기 기능 포함 (With export functionality)
...
기능 (Feature)설명 (Description)
오케스트레이터-워커 아키텍처 (Orchestrator-Worker Architecture)Director Agent가 연구 전략을 조정하는 동안, 특화된 워커 에이전트(worker agents)들이 Exa API 통합을 통해 집중적인 검색 작업을 수행합니다.
고급 웹 검색 통합 (Advanced Web Search Integration)구조화된 JSON 응답, 콘텐츠 요약, 그리고 지능적인 결과 추출을 위해 exa_search를 활용하여 포괄적인 연구를 수행합니다.
고성능 병렬 실행 (High-Performance Parallel Execution)ThreadPoolExecutor를 활용하여 여러 특화된 에이전트를 동시에 실행함으로써, 복잡한 쿼리에 대한 시간을 크게 단축합니다.
유연한 설정 (Flexible Configuration)커스터마이징 가능한 모델 선택 (Claude, GPT), 토큰 제한, 루프 횟수, 그리고 출력 형식 옵션.
대화 관리 (Conversation Management)지속적인 대화 관리를 위해 swarms 프레임워크의 Conversation 클래스를 사용하여 내장된 대화 기록 추적 기능을 제공합니다.
내보내기 기능 (Export Functionality)자동 타임스탬프, 고유 세션 ID(unique session IDs), 그리고 포괄적인 대화 기록을 포함한 JSON 내보내기.

| 다양한 출력 형식 |
JSON, markdown, 그리고 전체 대화 기록 형식을 포함한 다양한 출력 유형을 지원합니다. |
| 세션 관리 |
고유 세션 ID(unique session IDs), 배치 처리(batch processing) 기능, 그리고 단계별 연구 실행 제어를 지원합니다.

시스템은 병렬 실행을 포함한 간소화된 오케스트레이터-워커(orchestrator-worker) 패턴을 따릅니다:

[사용자 쿼리 + 설정]
│
▼
...

세션 초기화 (Session Initialization): AdvancedResearch는 대화 추적을 포함한 고유한 연구 세션을 생성합니다.
디렉터 에이전트 계획 (Director Agent Planning): 디렉터 에이전트가 쿼리를 분석하고 연구 전략을 계획합니다.
병렬 워커 실행 (Parallel Worker Execution): 여러 워커 에이전트가 Exa API를 사용하여 동시 검색을 수행합니다.
결과 집계 (Results Aggregation): 워커의 출력물들이 결합되고 종합적인 결과로 합성됩니다.
출력 처리 (Output Processing): 지정된 출력 유형(JSON, markdown 등)에 따라 결과가 형식을 갖춥니다.
내보내기 및 전달 (Export & Delivery): 타임스탬프가 찍힌 파일과 대화 기록을 포함한 선택적 JSON 내보내기를 지원합니다.

이 구현체는 오픈 소스 swarms 생태계의 일부입니다. 여러분의 기여를 환영합니다!

  • 저장소 포크 (Fork)
  • 기능 브랜치 생성 (git checkout -b feature/amazing-research-feature)
  • 변경 사항 커밋 (git commit -m 'Add amazing feature')
  • 브랜치로 푸시 (git push origin feature/amazing-research-feature)
  • 풀 리퀘스트 (Pull Request) 오픈
# 개발 환경 클론 및 설정
git clone https://github.com/The-Swarm-Corporation/AdvancedResearch.git
cd AdvancedResearch
...

이 프로젝트는 MIT 라이선스(MIT License) 하에 라이선스가 부여됩니다. 자세한 내용은 LICENSE 파일을 참조하세요.

만약 귀하의 연구에 이 작업물을 사용한다면, 원본 논문과 이 구현체 모두를 인용해 주세요:

@misc{anthropic2024researchsystem,
title={How we built our multi-agent research system},
author={Anthropic},
...

포괄적인 API 문서, 예제 및 고급 사용법은 다음과 같습니다:

  • 원문 논문 - Anthropic의 "How we built our multi-agent research system"
  • Swarms Framework - 기반이 되는 멀티 에이전트 AI 오케스트레이션 (Orchestration) 프레임워크

Issues: GitHub Issues
Discussions: GitHub Discussions
Community: Discord 참여

프로덕션급 에이전트 애플리케이션 (Agentic Applications)을 위해 Swarms 프레임워크로 구축되었습니다

AI 자동 생성 콘텐츠

본 콘텐츠는 GitHub AI Tools의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0