[AI Agent] Multi Agent Preview (7주차)
Tool/Capability, Execution Pattern, Agent Archetype 관점에서 Agentic AI Design Pattern을 정리합니다
개요
AI Agent를 설계하기 위한 중요한 구분을 알아보고 계획을 세워봤는데요. 7주차부터 본격적으로 엔지니어링에 들어가보겠습니다. Multi Agent라고 7주차 내용을 만들었지만 구성하는 방식은 Single Agent와 크게 다르지 않기에 묶어서 정리하겠습니다.
Agentic AI design pattern

구성 요소를 하나하나 알아보겠습니다.
AI Agent의 구성 요소
위 문서의 AI Agent 읽어보시면
Tool / Capability
-> Agent가 할 수 있는 일
Execution Pattern
-> 그 일을 어떤 순서와 조건으로 수행하는지
Agent Archetype
-> tool과 pattern을 묶어 만든 역할
Multi-Agent
-> 여러 archetype을 조합해 협업시키는 구조Tool / Capability 구성 요소
Agent가 일반 LLM 호출과 달라지는 가장 큰 지점은 Tool입니다. LLM은 다음 행동을 결정하지만 실제 행동은 tool이 수행합니다.
Framework에서 Tool Calling / Function Calling이라고 합니다. Tool을 Prompt에 입력하고 모델을 호출하는 방식입니다. 모델이 직접 함수를 수행하고 결과를 받는게 아닌, 함수는 실행명만 전달받고 수행은 서버에서 실행됩니다.
AI Agent의 실행 깊이에 따라 서버가 다운되는 경우도 빈번합니다.
User request
-> LLM이 필요한 tool 판단
-> tool name + arguments 생성
-> runtime이 tool 실행
-> observation 반환
-> LLM이 다음 행동 또는 최종 답변 결정

OpenAI Agents SDK 기준으로도 tool은 여러 종류로 나뉩니다.
- 거의 대부분의 AI Agent 패턴에서 사용되는 패턴입니다.
| Capability | 설명 | 대표 Agent 유형 |
|---|---|---|
| Web Search | 최신 웹 정보 검색 | Researcher, News Analyst |
| File Search / Retrieval | 문서, 벡터 저장소, 사내 자료 검색 | RAG Agent, Knowledge Assistant |
| Code Interpreter | sandbox에서 코드 실행 | Data Analyst, Code Interpreter Agent |
| Computer Use / Browser | GUI나 웹 화면 조작 | Browser Operator, 업무 자동화 Agent |
| Function Calling | 사내 API, DB, 계산 함수 호출 | Customer Support, Booking Agent |
| MCP | 여러 tool과 data source를 표준 방식으로 연결 | IDE Agent, Enterprise Agent |
| Agents as Tools | 다른 Agent를 callable tool처럼 사용 | Orchestrator, Manager Agent |
하지만 주의해야할 점은 Tool 자체가 Agent를 만드는게 아닙니다. 항상 같은 순서로 tool을 호출하면 Workflow입니다. 관찰 결과에 따라 LLM이 다음 tool을 선택하고 반복하면 Agent에 가까워집니다.
Workflow:
입력 -> 검색 -> 요약 -> 검증 -> 답변
Agent:
입력 -> 검색이 필요한가? -> 어떤 검색을 할까?
-> 결과가 부족한가? -> 다른 tool을 쓸까?
-> 이제 답해도 되는가?2. 실행 패턴
Tool을 붙였다면 다음 질문은 실행 흐름입니다. 다양한 패턴이 존재하는데요. 단순한 프롬프트 기반의 처리부터 장기간의 반복 수행 에이전트까지 존재합니다.
| 패턴 | 핵심 | 적합한 경우 |
|---|---|---|
| Prompt Chaining | LLM 호출을 단계별로 연결 | 단계가 명확한 문서 처리 |
| Routing | 입력을 분류해 적절한 경로로 보냄 | 문의 유형, 문서 유형, task 유형이 나뉨 |
| Parallelization | 여러 작업을 동시에 실행 후 합침 | 독립 검토, 다중 출처 검색 |
| ReAct | 생각 -> 행동 -> 관찰 반복 | tool 결과에 따라 다음 행동이 바뀌는 경우 |
| Plan-and-Execute | 먼저 계획하고 단계별 실행 | 긴 리서치, 보고서 작성, 코드 수정 |
| Reflection / Evaluator | 생성 결과를 평가하고 개선 | 글쓰기, 코드 리뷰, 품질 개선 |
| Orchestrator-Workers | 중앙 조율자가 하위 작업을 분배 | 파일 여러 개 수정, 리서치 분업 |
| Graph / State Machine | 상태와 전이를 명시적으로 관리 | persistence, HITL, recovery가 필요한 업무 |

3. Agent Archetype
실제로 자주 등장하는 Agent 유형을 보면 이해가 쉬워집니다.
Researcher Agent
Researcher Agent는 여러 출처를 조사하고 요약/추출한 뒤 근거를 남겨 답변하는 Agent입니다.
| 항목 | 내용 |
|---|---|
| 목표 | 사용자의 질문에 대해 근거 있는 조사 결과 제공 |
| 주요 tool | web search, file search, browser, retrieval |
| 실행 패턴 | ReAct, Plan-and-Execute, Routing |
| 산출물 | 출처 목록, 요약, 비교표, 결론 |
| 리스크 | 출처 hallucination, 오래된 정보, 편향된 검색, citation mismatch |
Claude.ai ChatGPT, Gemini를 보면 확인할 수 있죠.

Researcher Agent는 단순 RAG와 다릅니다.
RAG는 보통 정해진 문서 집합에서 검색 후 답변합니다. Researcher Agent는 검색 결과가 부족하면 다른 source를 찾고, 여러 문서를 비교하고, 상충되는 내용을 표시해야 합니다.
그리고 RAG에서 추출된 정보들로 다음 키워드를 생성해내는 방식이죠
질문
-> 검색 계획 수립
-> source A 검색
-> source B 검색
-> 상충 내용 확인
-> 추가 검색 여부 판단
-> 근거와 함께 답변Code Interpreter / Data Analyst Agent
Code Interpreter는 Agent에게 계산과 실행 능력을 주는 capability입니다. Data Analyst Agent 또는 Code Interpreter Agent라고 볼 수 있습니다.
| 항목 | 내용 |
|---|---|
| 목표 | 데이터 분석, 계산, 파일 처리, 차트 생성 |
| 주요 tool | sandboxed Python, file upload, chart generation |
| 실행 패턴 | write code -> run -> observe -> fix -> rerun |
| 산출물 | 계산 결과, 표, 그래프, 변환 파일 |
| 리스크 | 잘못된 코드, resource 과다 사용, 파일 권한, 결과 검증 부족 |
OpenAI Code Interpreter 문서는 모델이 sandbox 환경에서 Python을 작성하고 실행해 데이터 분석, 수학, 파일 처리, 그래프 생성을 수행할 수 있다고 설명합니다.

중요한 점은 "코드를 생성한다"보다 "실행 결과를 관찰하고 다시 고친다"입니다.
질문: CSV에서 월별 매출 추이를 분석해줘
-> 파일 구조 확인
-> Python 코드 작성
-> 실행
-> 오류 발생 시 수정
-> 통계 계산
-> 그래프 생성
-> 해석 제공특히 엔지니어에게 Text To SQL, 로그 분석에 유용합니다. 모든 데이터를 넣는게 아닌 AI Agent가 스키마만 확인해서 쿼리를 실행하고 실행 결과만 분석하는거죠. 모든 데이터를 받기에는 컨텍스트 제한으로 인한 대규모 분석을 수행하기 어렵습니다.
Coding Agent
Coding Agent는 Code Interpreter와 비슷해 보이지만 다릅니다. Code Interpreter는 sandbox 안에서 코드를 실행해 문제를 풉니다. Coding Agent는 실제 코드베이스를 읽고 수정하고 테스트합니다.
Claude Code, Codex, Cursor 등 워낙 유명한 유형들 중 하나입니다.
| 항목 | Code Interpreter | Coding Agent |
|---|---|---|
| 주된 환경 | sandbox | 실제 repository |
| 주요 작업 | 계산, 분석, 파일 처리 | 코드 수정, 테스트, 리팩터링 |
| 위험 | 잘못된 계산, resource 사용 | 기존 코드 파손, test 실패, dependency 변경 |
| 필요한 장치 | sandbox, timeout | diff, test, git status, human review |
Coding Agent의 경우엔 필수적으로 변경 범위와 검증 방법이 설계되었습니다.
Explore -> Plan -> Implement -> Commit
요구사항 확인
-> 관련 파일 탐색
-> 수정 계획
-> 코드 변경
-> 테스트 실행
-> diff 요약
-> 필요 시 human review- Claude Code Agent Loop: https://code.claude.com/docs/en/agent-sdk/agent-loop
- Claude Code Best Practices: https://code.claude.com/docs/en/best-practices
- Claude Agent SDK Overview: https://code.claude.com/docs/en/agent-sdk
Orchestrator Agent
Orchestrator는 직접 모든 일을 하지 않고, 요청을 분해해 적절한 tool, workflow, agent에 맡깁니다. 주로 챗봇에서 다양한 Tool, 혹은 Agents간 연결을 위해 사용합니다.

| 항목 | 내용 |
|---|---|
| 목표 | 작업 분해, routing, 결과 합성 |
| 주요 tool | subagent 호출, workflow 호출, router, task queue |
| 실행 패턴 | Orchestrator-Workers, Router, Plan-and-Execute |
| 산출물 | 통합 결과, 실행 계획, 하위 작업 결과 요약 |
| 리스크 | 과도한 분해, 비용 증가, 책임 경계 불명확 |
Orchestrator는 Multi-Agent의 입구처럼 보이지만, 반드시 Multi-Agent는 아닙니다.
단일 Agent Orchestration:
Manager LLM이 search_tool, code_tool, eval_tool을 순서대로 호출
Multi-Agent Orchestration:
Manager Agent가 Research Agent, Code Agent, Review Agent를 호출정리
모든 AI Agent가 똑같은 구조를 따라가는 것은 아닙니다. 목적에 따라, 사용 사례에 따라 로직이 다른 것처럼 구성 요소도 모두 다릅니다.
Reference
- DeepLearning.AI,
Functions, Tools and Agents with LangChain: https://learn.deeplearning.ai/courses/functions-tools-agents-langchain/information - DeepLearning.AI,
AI Agents in LangGraph: https://www.deeplearning.ai/short-courses/ai-agents-in-langgraph/ - DeepLearning.AI,
Building Agentic RAG with LlamaIndex: https://learn.deeplearning.ai/courses/building-agentic-rag-with-llamaindex/information - DeepLearning.AI,
AI Agentic Design Patterns with AutoGen: https://www.deeplearning.ai/short-courses/ai-agentic-design-patterns-with-autogen/ - DeepLearning.AI,
Multi AI Agent Systems with crewAI: https://www.deeplearning.ai/short-courses/multi-ai-agent-systems-with-crewai/ - Anthropic,
Building effective agents: https://www.anthropic.com/engineering/building-effective-agents - OpenAI Agents SDK,
Tools: https://openai.github.io/openai-agents-js/guides/tools/ - OpenAI API,
Code Interpreter: https://platform.openai.com/docs/guides/tools-code-interpreter/ - LangChain,
Multi-agent: https://docs.langchain.com/oss/python/langchain/multi-agent - LangChain,
Handoffs: https://docs.langchain.com/oss/python/langchain/multi-agent/handoffs