2147 lines
368 KiB
Plaintext
2147 lines
368 KiB
Plaintext
{
|
||
"cells": [
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "4c897bc9",
|
||
"metadata": {},
|
||
"source": [
|
||
"# DeepAgent 기반의 Research Agent\n",
|
||
"\n",
|
||
"## 주요 특징\n",
|
||
"\n",
|
||
"1. **Multi-SubAgent 시스템**: 세 가지 전문화된 SubAgent (researcher, explorer, synthesizer)\n",
|
||
"2. **CompiledSubAgent 패턴**: Researcher는 자율적 DeepAgent로 \"넓게 탐색 → 깊게 파기\" 패턴 수행\n",
|
||
"3. **Skills System**: Progressive Disclosure를 통한 스킬 관리\n",
|
||
"4. **Filesystem Backend**: 연구 결과의 영구 저장\n",
|
||
"\n",
|
||
"## 아키텍처 개요\n",
|
||
"\n",
|
||
"```\n",
|
||
"Main Orchestrator (create_deep_agent)\n",
|
||
" │\n",
|
||
" ├── researcher (CompiledSubAgent - 자율적 DeepAgent)\n",
|
||
" │ └── 자체 계획 루프 + 반성 + 컨텍스트 관리\n",
|
||
" │\n",
|
||
" ├── explorer (Simple SubAgent)\n",
|
||
" │ └── 빠른 읽기 전용 탐색\n",
|
||
" │\n",
|
||
" └── synthesizer (Simple SubAgent)\n",
|
||
" └── 연구 결과 통합\n",
|
||
"```"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 1,
|
||
"id": "fecc3e39",
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"import sys\n",
|
||
"from pathlib import Path\n",
|
||
"\n",
|
||
"from dotenv import load_dotenv\n",
|
||
"\n",
|
||
"load_dotenv(\".env\", override=True)\n",
|
||
"\n",
|
||
"# 프로젝트 루트를 Python 경로에 추가 (노트북에서 모듈 import를 위해)\n",
|
||
"PROJECT_ROOT = Path.cwd()\n",
|
||
"if str(PROJECT_ROOT) not in sys.path:\n",
|
||
" sys.path.insert(0, str(PROJECT_ROOT))"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 2,
|
||
"id": "9163556f",
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"1. tavily_search: 주어진 쿼리로 웹을 검색한다.\n",
|
||
"\n",
|
||
"Tavily를 사용해 관련 URL을 찾고, 전체 웹페이지 콘텐츠를 마크다운으로 가져와 반환한다.\n",
|
||
"\n",
|
||
"Args:\n",
|
||
" query: 실행할 검색 쿼리\n",
|
||
" max_results: 반환할 최대 결과 수 (기본값: 1)\n",
|
||
" topic: 주제 필터 - 'general', 'news', 또는 'finance' (기본값: 'general')\n",
|
||
"\n",
|
||
"Returns:\n",
|
||
" 전체 웹페이지 콘텐츠가 포함된 포맷팅된 검색 결과\n",
|
||
"2. think_tool: 연구 진행 상황과 의사결정을 위한 전략적 성찰 도구.\n",
|
||
"\n",
|
||
"각 검색 후 결과를 분석하고 다음 단계를 체계적으로 계획하기 위해 이 도구를 사용한다.\n",
|
||
"이는 품질 높은 의사결정을 위해 연구 워크플로우에 의도적인 멈춤을 만든다.\n",
|
||
"\n",
|
||
"사용 시점:\n",
|
||
"- 검색 결과를 받은 후: 어떤 핵심 정보를 찾았는가?\n",
|
||
"- 다음 단계를 결정하기 전: 포괄적으로 답변할 수 있을 만큼 충분한가?\n",
|
||
"- 연구 공백을 평가할 때: 아직 누락된 구체적인 정보는 무엇인가?\n",
|
||
"- 연구를 마무리하기 전: 지금 완전한 답변을 제공할 수 있는가?\n",
|
||
"\n",
|
||
"성찰에 포함해야 할 내용:\n",
|
||
"1. 현재 발견의 분석 - 어떤 구체적인 정보를 수집했는가?\n",
|
||
"2. 공백 평가 - 어떤 중요한 정보가 아직 누락되어 있는가?\n",
|
||
"3. 품질 평가 - 좋은 답변을 위한 충분한 증거/예시가 있는가?\n",
|
||
"4. 전략적 결정 - 검색을 계속해야 하는가, 답변을 제공해야 하는가?\n",
|
||
"\n",
|
||
"Args:\n",
|
||
" reflection: 연구 진행 상황, 발견, 공백, 다음 단계에 대한 상세한 성찰\n",
|
||
"\n",
|
||
"Returns:\n",
|
||
" 의사결정을 위해 성찰이 기록되었다는 확인\n"
|
||
]
|
||
}
|
||
],
|
||
"source": [
|
||
"# 연구 도구 살펴보기\n",
|
||
"from research_agent.tools import tavily_search, think_tool\n",
|
||
"\n",
|
||
"print(f\"1. tavily_search: {tavily_search.description}\")\n",
|
||
"print(f\"2. think_tool: {think_tool.description}\")"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "7ba3ee5b",
|
||
"metadata": {},
|
||
"source": [
|
||
"---\n",
|
||
"\n",
|
||
"## 자율적 연구 에이전트 (Autonomous Researcher)\n",
|
||
"\n",
|
||
"### 핵심 개념: CompiledSubAgent vs Simple SubAgent\n",
|
||
"\n",
|
||
"| 유형 | 구조 | 특징 |\n",
|
||
"|------|------|------|\n",
|
||
"| **Simple SubAgent** | `{name, description, system_prompt, tools}` | 단일 응답, 미들웨어에서 컴파일 |\n",
|
||
"| **CompiledSubAgent** | `{name, description, runnable}` | 자체 DeepAgent, 다중 턴 실행 |\n",
|
||
"\n",
|
||
"### 자율적 연구 워크플로우: \"넓게 탐색 → 깊게 파기\"\n",
|
||
"\n",
|
||
"```\n",
|
||
"┌─────────────────────────────────────────────────────────────────┐\n",
|
||
"│ AUTONOMOUS RESEARCH LOOP │\n",
|
||
"├─────────────────────────────────────────────────────────────────┤\n",
|
||
"│ Phase 1: Exploratory Search (1-2회) │\n",
|
||
"│ └── 광범위한 검색으로 연구 환경 파악 │\n",
|
||
"│ └── think_tool로 유망한 방향 2-3개 식별 │\n",
|
||
"│ │\n",
|
||
"│ Phase 2: Directed Research (방향당 1-2회) │\n",
|
||
"│ └── 각 방향에 대한 집중 검색 │\n",
|
||
"│ └── think_tool로 인사이트 평가 │\n",
|
||
"│ │\n",
|
||
"│ Phase 3: Synthesis │\n",
|
||
"│ └── 모든 발견을 구조화된 형태로 통합 │\n",
|
||
"└─────────────────────────────────────────────────────────────────┘\n",
|
||
"```\n",
|
||
"\n",
|
||
"### 에이전트 연구 기법\n",
|
||
"\n",
|
||
"[Anthropic 에서 제시한 프롬프팅 기법](https://youtu.be/XSZP9GhhuAc?si=zowpViL-2j-vI9hA)을 활용합니다:\n",
|
||
"\n",
|
||
"1. **에이전트처럼 생각하기**: 질문을 꼼꼼히 읽고, 넓게 시작해서 좁혀가기\n",
|
||
"2. **하드 리밋 설정**: 검색 도구 2-5회, 최대 5-6회로 제한\n",
|
||
"3. **생각의 과정 드러내기**: 각 검색 후 `think_tool`로 결과 분석"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 3,
|
||
"id": "4487f04d",
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"# 프롬프트 및 유틸리티 임포트\n",
|
||
"from research_agent.prompts import (\n",
|
||
" EXPLORER_INSTRUCTIONS,\n",
|
||
" RESEARCH_WORKFLOW_INSTRUCTIONS,\n",
|
||
" SUBAGENT_DELEGATION_INSTRUCTIONS,\n",
|
||
" SYNTHESIZER_INSTRUCTIONS,\n",
|
||
")\n",
|
||
"from research_agent.researcher.prompts import AUTONOMOUS_RESEARCHER_INSTRUCTIONS\n",
|
||
"from research_agent.utils import format_messages, show_prompt"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 4,
|
||
"id": "a6570183",
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #000080; text-decoration-color: #000080\">╭──────────────────────────────────────────────────── </span><span style=\"color: #008000; text-decoration-color: #008000; font-weight: bold\">Prompt</span><span style=\"color: #000080; text-decoration-color: #000080\"> ─────────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> You are an autonomous research agent. Your job is to thoroughly research a topic by following a <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> \"breadth-first, then depth\" approach. <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> For context, today's date is {date}. <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">## Your Capabilities</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> You have access to: <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> - **tavily_search**: Web search with full content extraction <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> - **think_tool**: Reflection and strategic planning <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> - **write_todos**: Self-planning and progress tracking <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">## Autonomous Research Workflow</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">### Phase 1: Exploratory Search (1-2 searches)</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> **Goal**: Get the lay of the land <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> Start with broad searches to understand: <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> - Key concepts and terminology in the field <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> - Major players, sources, and authorities <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> - Recent trends and developments <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> - Potential sub-topics worth exploring <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> After each search, **ALWAYS** use think_tool to: <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> ``` <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> \"What did I learn? Key concepts are: ... <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> What are 2-3 promising directions for deeper research? <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> 1. Direction A: [reason] <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> 2. Direction B: [reason] <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> 3. Direction C: [reason] <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> Do I need more exploration, or can I proceed to Phase 2?\" <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> ``` <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">### Phase 2: Directed Research (1-2 searches per direction)</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> **Goal**: Deep dive into promising directions <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> For each promising direction identified in Phase 1: <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> 1. Formulate a specific, focused search query <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> 2. Execute tavily_search with the focused query <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> 3. Use think_tool to assess: <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> ``` <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> \"Direction: [name] <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> What new insights did this reveal? <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> - Insight 1: ... <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> - Insight 2: ... <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> Is this direction yielding valuable information? [Yes/No] <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> Should I continue deeper or move to the next direction?\" <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> ``` <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">### Phase 3: Synthesis</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> **Goal**: Combine all findings into a coherent response <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> After completing directed research: <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> 1. Review all gathered information <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> 2. Identify patterns and connections <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> 3. Note where sources agree or disagree <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> 4. Structure your findings clearly <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">## Self-Management with write_todos</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> At the start, create a research plan: <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> ``` <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> 1. [Explore] Broad search to understand the research landscape <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> 2. [Analyze] Review findings and identify 2-3 promising directions <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> 3. [Deep Dive] Research Direction A: [topic <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> ... (truncated) <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[34m╭─\u001b[0m\u001b[34m───────────────────────────────────────────────────\u001b[0m\u001b[34m \u001b[0m\u001b[1;32mPrompt\u001b[0m\u001b[34m \u001b[0m\u001b[34m────────────────────────────────────────────────────\u001b[0m\u001b[34m─╮\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m You are an autonomous research agent. Your job is to thoroughly research a topic by following a \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \"breadth-first, then depth\" approach. \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m For context, today's date is {date}. \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[1;35m## Your Capabilities\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m You have access to: \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m - **tavily_search**: Web search with full content extraction \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m - **think_tool**: Reflection and strategic planning \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m - **write_todos**: Self-planning and progress tracking \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[1;35m## Autonomous Research Workflow\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[1;36m#\u001b[0m\u001b[1;36m## Phase 1: Exploratory Search (1-2 searches)\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m **Goal**: Get the lay of the land \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m Start with broad searches to understand: \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m - Key concepts and terminology in the field \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m - Major players, sources, and authorities \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m - Recent trends and developments \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m - Potential sub-topics worth exploring \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m After each search, **ALWAYS** use think_tool to: \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m ``` \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \"What did I learn? Key concepts are: ... \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m What are 2-3 promising directions for deeper research? \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m 1. Direction A: [reason] \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m 2. Direction B: [reason] \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m 3. Direction C: [reason] \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m Do I need more exploration, or can I proceed to Phase 2?\" \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m ``` \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[1;36m#\u001b[0m\u001b[1;36m## Phase 2: Directed Research (1-2 searches per direction)\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m **Goal**: Deep dive into promising directions \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m For each promising direction identified in Phase 1: \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m 1. Formulate a specific, focused search query \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m 2. Execute tavily_search with the focused query \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m 3. Use think_tool to assess: \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m ``` \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \"Direction: [name] \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m What new insights did this reveal? \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m - Insight 1: ... \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m - Insight 2: ... \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m Is this direction yielding valuable information? [Yes/No] \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m Should I continue deeper or move to the next direction?\" \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m ``` \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[1;36m#\u001b[0m\u001b[1;36m## Phase 3: Synthesis\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m **Goal**: Combine all findings into a coherent response \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m After completing directed research: \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m 1. Review all gathered information \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m 2. Identify patterns and connections \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m 3. Note where sources agree or disagree \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m 4. Structure your findings clearly \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[1;35m## Self-Management with write_todos\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m At the start, create a research plan: \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m ``` \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m 1. [Explore] Broad search to understand the research landscape \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m 2. [Analyze] Review findings and identify 2-3 promising directions \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m 3. [Deep Dive] Research Direction A: [topic \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m ... (truncated) \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
}
|
||
],
|
||
"source": [
|
||
"show_prompt(AUTONOMOUS_RESEARCHER_INSTRUCTIONS[:2000] + \"\\n\\n... (truncated)\")"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "4e55b2c0",
|
||
"metadata": {},
|
||
"source": [
|
||
"## SubAgent 구조 비교\n",
|
||
"\n",
|
||
"아래에서 Simple SubAgent와 CompiledSubAgent의 차이를 살펴봅니다."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 5,
|
||
"id": "y5y5vinhb9",
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"=== SubAgent 구조 비교 ===\n",
|
||
"\n",
|
||
"1. Researcher (CompiledSubAgent)\n",
|
||
" - name: researcher\n",
|
||
" - has 'runnable': True\n",
|
||
" - runnable type: CompiledStateGraph\n",
|
||
" - description: Autonomous deep research agent with self-planning and 'bread...\n",
|
||
"\n",
|
||
"2. Explorer (Simple SubAgent)\n",
|
||
" - name: explorer\n",
|
||
" - has 'system_prompt': True\n",
|
||
" - has 'runnable': False\n",
|
||
"\n",
|
||
"3. Synthesizer (Simple SubAgent)\n",
|
||
" - name: synthesizer\n",
|
||
" - has 'system_prompt': True\n",
|
||
" - has 'runnable': False\n"
|
||
]
|
||
}
|
||
],
|
||
"source": [
|
||
"# SubAgent 구조 비교\n",
|
||
"from research_agent.agent import ALL_SUBAGENTS, SIMPLE_SUBAGENTS\n",
|
||
"from research_agent.researcher import get_researcher_subagent\n",
|
||
"\n",
|
||
"print(\"=== SubAgent 구조 비교 ===\\n\")\n",
|
||
"\n",
|
||
"# 1. Researcher (CompiledSubAgent)\n",
|
||
"researcher = ALL_SUBAGENTS[0]\n",
|
||
"print(\"1. Researcher (CompiledSubAgent)\")\n",
|
||
"print(f\" - name: {researcher['name']}\")\n",
|
||
"print(f\" - has 'runnable': {'runnable' in researcher}\")\n",
|
||
"print(f\" - runnable type: {type(researcher.get('runnable')).__name__}\")\n",
|
||
"print(f\" - description: {researcher['description'][:60]}...\")\n",
|
||
"print()\n",
|
||
"\n",
|
||
"# 2. Explorer (Simple SubAgent)\n",
|
||
"explorer = ALL_SUBAGENTS[1]\n",
|
||
"print(\"2. Explorer (Simple SubAgent)\")\n",
|
||
"print(f\" - name: {explorer['name']}\")\n",
|
||
"print(f\" - has 'system_prompt': {'system_prompt' in explorer}\")\n",
|
||
"print(f\" - has 'runnable': {'runnable' in explorer}\")\n",
|
||
"print()\n",
|
||
"\n",
|
||
"# 3. Synthesizer (Simple SubAgent)\n",
|
||
"synthesizer = ALL_SUBAGENTS[2]\n",
|
||
"print(\"3. Synthesizer (Simple SubAgent)\")\n",
|
||
"print(f\" - name: {synthesizer['name']}\")\n",
|
||
"print(f\" - has 'system_prompt': {'system_prompt' in synthesizer}\")\n",
|
||
"print(f\" - has 'runnable': {'runnable' in synthesizer}\")"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "ab6e3639",
|
||
"metadata": {},
|
||
"source": [
|
||
"---\n",
|
||
"\n",
|
||
"## Research Orchestrator 에이전트\n",
|
||
"\n",
|
||
"`research_agent.agent` 모듈에서 이미 구성된 에이전트를 가져옵니다.\n",
|
||
"\n",
|
||
"### 구성 요소:\n",
|
||
"- **모델**: `gpt-4.1` (temperature=0.0)\n",
|
||
"- **백엔드**: CompositeBackend (FileSystem + State)\n",
|
||
"- **SubAgents**: researcher (CompiledSubAgent), explorer, synthesizer\n",
|
||
"- **미들웨어**: SkillsMiddleware (Progressive Disclosure)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 6,
|
||
"id": "62da8411",
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"=== Research Agent 구성 ===\n",
|
||
"Model: gpt-4.1\n",
|
||
"SubAgents: ['researcher', 'explorer', 'synthesizer']\n",
|
||
"Agent type: CompiledStateGraph\n"
|
||
]
|
||
}
|
||
],
|
||
"source": [
|
||
"# research_agent 모듈에서 구성된 에이전트 가져오기\n",
|
||
"from research_agent.agent import ALL_SUBAGENTS, agent, model\n",
|
||
"\n",
|
||
"print(\"=== Research Agent 구성 ===\")\n",
|
||
"print(f\"Model: {model.model_name}\")\n",
|
||
"print(f\"SubAgents: {[s['name'] for s in ALL_SUBAGENTS]}\")\n",
|
||
"print(f\"Agent type: {type(agent).__name__}\")"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "1whxhn2gnai",
|
||
"metadata": {},
|
||
"source": [
|
||
"---\n",
|
||
"\n",
|
||
"## 연구 실행\n",
|
||
"\n",
|
||
"에이전트에게 연구 요청을 보내고 결과를 확인합니다.\n",
|
||
"\n",
|
||
"자율적 연구 에이전트는:\n",
|
||
"1. 오케스트레이터가 `task(researcher)` 호출\n",
|
||
"2. Researcher가 자체적으로 Phase 1-2-3 수행\n",
|
||
"3. 구조화된 결과를 오케스트레이터에 반환"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 7,
|
||
"id": "613634c2",
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"Messages: 28 개\n",
|
||
"Files: []\n"
|
||
]
|
||
}
|
||
],
|
||
"source": [
|
||
"# 연구 요청 실행\n",
|
||
"result = agent.invoke(\n",
|
||
" {\n",
|
||
" \"messages\": [\n",
|
||
" {\n",
|
||
" \"role\": \"user\",\n",
|
||
" \"content\": \"Research context engineering approaches used to build AI agents. Speak in Korean.\",\n",
|
||
" }\n",
|
||
" ],\n",
|
||
" },\n",
|
||
")\n",
|
||
"\n",
|
||
"print(f\"Messages: {len(result['messages'])} 개\")\n",
|
||
"print(f\"Files: {list(result.get('files', {}).keys())}\")"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "5zanhuabnb4",
|
||
"metadata": {},
|
||
"source": [
|
||
"### 메시지 흐름 확인\n",
|
||
"\n",
|
||
"에이전트 실행 과정의 메시지를 시각화합니다."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 8,
|
||
"id": "36652467",
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #000080; text-decoration-color: #000080\">╭───────────────────────────────────────────────────── Human ─────────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">│</span> Research context engineering approaches used to build AI agents. Speak in Korean. <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
|
||
"<span style=\"color: #000080; text-decoration-color: #000080\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[34m╭─\u001b[0m\u001b[34m────────────────────────────────────────────────────\u001b[0m\u001b[34m Human \u001b[0m\u001b[34m────────────────────────────────────────────────────\u001b[0m\u001b[34m─╮\u001b[0m\n",
|
||
"\u001b[34m│\u001b[0m Research context engineering approaches used to build AI agents. Speak in Korean. \u001b[34m│\u001b[0m\n",
|
||
"\u001b[34m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╭────────────────────────────────────────────────────── AI ───────────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Tool Call: write_todos <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Args: { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"todos\": [ <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"사용자 요청을 /research_request.md에 저장\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"in_progress\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 도출하고, 연구 계획을 수립\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"pending\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 수집\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"pending\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"수집된 자료를 종합 및 인용 정리\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"pending\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"pending\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"pending\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> } <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ] <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> } <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ID: call_6XvIJLkJZHBkfZXpcXsvf7dV <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[37m╭─\u001b[0m\u001b[37m─────────────────────────────────────────────────────\u001b[0m\u001b[37m AI \u001b[0m\u001b[37m──────────────────────────────────────────────────────\u001b[0m\u001b[37m─╮\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Tool Call: write_todos \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Args: { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"todos\": [ \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"사용자 요청을 /research_request.md에 저장\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"in_progress\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 도출하고, 연구 계획을 수립\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"pending\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 수집\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"pending\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"수집된 자료를 종합 및 인용 정리\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"pending\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"pending\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"pending\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m } \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ] \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m } \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ID: call_6XvIJLkJZHBkfZXpcXsvf7dV \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #808000; text-decoration-color: #808000\">╭────────────────────────────────────────────────── Tool Output ──────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> Updated todo list to [{'content': '사용자 요청을 /research_request.md에 저장', 'status': 'in_progress'}, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> {'content': 'AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 도출하고, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 연구 계획을 수립', 'status': 'pending'}, {'content': '연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 수집', 'status': 'pending'}, {'content': '수집된 자료를 종합 및 인용 정리', 'status': 'pending'}, {'content': <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> '최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)', 'status': 'pending'}, {'content': <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> '/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증', 'status': 'pending'}] <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[33m╭─\u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m Tool Output \u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m─╮\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m Updated todo list to [{'content': '사용자 요청을 /research_request.md에 저장', 'status': 'in_progress'}, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m {'content': 'AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 도출하고, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 연구 계획을 수립', 'status': 'pending'}, {'content': '연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 수집', 'status': 'pending'}, {'content': '수집된 자료를 종합 및 인용 정리', 'status': 'pending'}, {'content': \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m '최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)', 'status': 'pending'}, {'content': \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m '/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증', 'status': 'pending'}] \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╭────────────────────────────────────────────────────── AI ───────────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Tool Call: write_file <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Args: { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"file_path\": \"/research_request.md\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법을 연구해 주세요. (한국어로 작성)\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> } <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ID: call_Q4zD3BuMuFPlFpE8aMh3OI07 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[37m╭─\u001b[0m\u001b[37m─────────────────────────────────────────────────────\u001b[0m\u001b[37m AI \u001b[0m\u001b[37m──────────────────────────────────────────────────────\u001b[0m\u001b[37m─╮\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Tool Call: write_file \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Args: { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"file_path\": \"/research_request.md\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법을 연구해 주세요. (한국어로 작성)\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m } \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ID: call_Q4zD3BuMuFPlFpE8aMh3OI07 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #808000; text-decoration-color: #808000\">╭────────────────────────────────────────────────── Tool Output ──────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> Cannot write to /research_request.md because it already exists. Read and then make an edit, or write to a new <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> path. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[33m╭─\u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m Tool Output \u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m─╮\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m Cannot write to /research_request.md because it already exists. Read and then make an edit, or write to a new \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m path. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╭────────────────────────────────────────────────────── AI ───────────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Tool Call: read_file <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Args: { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"file_path\": \"/research_request.md\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"offset\": 0, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"limit\": 100 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> } <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ID: call_1p5tGIyXJXFoti1qnGTt3YKj <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[37m╭─\u001b[0m\u001b[37m─────────────────────────────────────────────────────\u001b[0m\u001b[37m AI \u001b[0m\u001b[37m──────────────────────────────────────────────────────\u001b[0m\u001b[37m─╮\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Tool Call: read_file \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Args: { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"file_path\": \"/research_request.md\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"offset\": 0, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"limit\": 100 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m } \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ID: call_1p5tGIyXJXFoti1qnGTt3YKj \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #808000; text-decoration-color: #808000\">╭────────────────────────────────────────────────── Tool Output ──────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 1 연구 주제: AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 조사하라. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 2 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 3 세부 요구사항: <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 4 - Context Engineering이란 무엇인지 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 5 - 연구 에이전트형 AI 시스템에서의 Context Engineering 적용 사례 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 6 - 파일시스템 기반 컨텍스트 관리 시스템에서의 Context Engineering 적용 사례 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 7 - 최신 연구 동향 및 실제 적용 예시 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 8 - 참고문헌 및 인용 포함 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 9 - 결과물은 한국어로 작성할 것 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[33m╭─\u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m Tool Output \u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m─╮\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 1 연구 주제: AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 조사하라. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 2 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 3 세부 요구사항: \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 4 - Context Engineering이란 무엇인지 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 5 - 연구 에이전트형 AI 시스템에서의 Context Engineering 적용 사례 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 6 - 파일시스템 기반 컨텍스트 관리 시스템에서의 Context Engineering 적용 사례 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 7 - 최신 연구 동향 및 실제 적용 예시 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 8 - 참고문헌 및 인용 포함 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 9 - 결과물은 한국어로 작성할 것 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╭────────────────────────────────────────────────────── AI ───────────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Tool Call: write_todos <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Args: { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"todos\": [ <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"사용자 요청을 /research_request.md에 저장\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"completed\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 도출하고, 연구 계획을 수립\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"in_progress\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 수집\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"pending\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"수집된 자료를 종합 및 인용 정리\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"pending\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"pending\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"pending\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> } <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ] <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> } <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ID: call_ZgYJXf0FdGzv3Q2fLUcVtB9E <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[37m╭─\u001b[0m\u001b[37m─────────────────────────────────────────────────────\u001b[0m\u001b[37m AI \u001b[0m\u001b[37m──────────────────────────────────────────────────────\u001b[0m\u001b[37m─╮\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Tool Call: write_todos \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Args: { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"todos\": [ \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"사용자 요청을 /research_request.md에 저장\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"completed\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 도출하고, 연구 계획을 수립\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"in_progress\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 수집\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"pending\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"수집된 자료를 종합 및 인용 정리\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"pending\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"pending\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"pending\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m } \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ] \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m } \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ID: call_ZgYJXf0FdGzv3Q2fLUcVtB9E \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #808000; text-decoration-color: #808000\">╭────────────────────────────────────────────────── Tool Output ──────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> Updated todo list to [{'content': '사용자 요청을 /research_request.md에 저장', 'status': 'completed'}, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> {'content': 'AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 도출하고, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 연구 계획을 수립', 'status': 'in_progress'}, {'content': '연구 계획에 따라 연구를 하위 에이전트에 위임하여 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 자료를 수집', 'status': 'pending'}, {'content': '수집된 자료를 종합 및 인용 정리', 'status': 'pending'}, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> {'content': '최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)', 'status': 'pending'}, {'content': <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> '/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증', 'status': 'pending'}] <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[33m╭─\u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m Tool Output \u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m─╮\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m Updated todo list to [{'content': '사용자 요청을 /research_request.md에 저장', 'status': 'completed'}, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m {'content': 'AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 도출하고, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 연구 계획을 수립', 'status': 'in_progress'}, {'content': '연구 계획에 따라 연구를 하위 에이전트에 위임하여 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 자료를 수집', 'status': 'pending'}, {'content': '수집된 자료를 종합 및 인용 정리', 'status': 'pending'}, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m {'content': '최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)', 'status': 'pending'}, {'content': \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m '/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증', 'status': 'pending'}] \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╭────────────────────────────────────────────────────── AI ───────────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Tool Call: think_tool <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Args: { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"reflection\": \"/research_request.md의 요구사항을 분석한 결과, 다음과 같은 세부 질문이 도출된다: 1) Context <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Engineering의 정의와 주요 개념, 2) 연구 에이전트형 AI 시스템에서의 적용 사례, 3) 파일시스템 기반 컨텍스트 관리 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 시스템에서의 적용 사례, 4) 최신 연구 동향 및 실제 적용 예시, 5) 참고문헌 및 인용. 이 네 가지 세부 질문은 상호 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 독립적이므로, 한 명의 연구 하위 에이전트가 포괄적으로 조사하는 것이 효율적이다. 연구 결과는 한국어로 요약 및 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 인용 정리해야 한다. 다음 단계는 이 네 가지 세부 질문을 포함한 연구 지침을 하위 에이전트에 전달하여 자료를 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 수집하는 것이다.\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> } <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ID: call_afsX9xT6yi6lky31hgfAVFty <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[37m╭─\u001b[0m\u001b[37m─────────────────────────────────────────────────────\u001b[0m\u001b[37m AI \u001b[0m\u001b[37m──────────────────────────────────────────────────────\u001b[0m\u001b[37m─╮\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Tool Call: think_tool \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Args: { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"reflection\": \"/research_request.md의 요구사항을 분석한 결과, 다음과 같은 세부 질문이 도출된다: 1) Context \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Engineering의 정의와 주요 개념, 2) 연구 에이전트형 AI 시스템에서의 적용 사례, 3) 파일시스템 기반 컨텍스트 관리 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 시스템에서의 적용 사례, 4) 최신 연구 동향 및 실제 적용 예시, 5) 참고문헌 및 인용. 이 네 가지 세부 질문은 상호 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 독립적이므로, 한 명의 연구 하위 에이전트가 포괄적으로 조사하는 것이 효율적이다. 연구 결과는 한국어로 요약 및 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 인용 정리해야 한다. 다음 단계는 이 네 가지 세부 질문을 포함한 연구 지침을 하위 에이전트에 전달하여 자료를 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 수집하는 것이다.\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m } \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ID: call_afsX9xT6yi6lky31hgfAVFty \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #808000; text-decoration-color: #808000\">╭────────────────────────────────────────────────── Tool Output ──────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 성찰 기록됨: /research_request.md의 요구사항을 분석한 결과, 다음과 같은 세부 질문이 도출된다: 1) Context <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> Engineering의 정의와 주요 개념, 2) 연구 에이전트형 AI 시스템에서의 적용 사례, 3) 파일시스템 기반 컨텍스트 관리 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 시스템에서의 적용 사례, 4) 최신 연구 동향 및 실제 적용 예시, 5) 참고문헌 및 인용. 이 네 가지 세부 질문은 상호 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 독립적이므로, 한 명의 연구 하위 에이전트가 포괄적으로 조사하는 것이 효율적이다. 연구 결과는 한국어로 요약 및 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 인용 정리해야 한다. 다음 단계는 이 네 가지 세부 질문을 포함한 연구 지침을 하위 에이전트에 전달하여 자료를 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 수집하는 것이다. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[33m╭─\u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m Tool Output \u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m─╮\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 성찰 기록됨: /research_request.md의 요구사항을 분석한 결과, 다음과 같은 세부 질문이 도출된다: 1) Context \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m Engineering의 정의와 주요 개념, 2) 연구 에이전트형 AI 시스템에서의 적용 사례, 3) 파일시스템 기반 컨텍스트 관리 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 시스템에서의 적용 사례, 4) 최신 연구 동향 및 실제 적용 예시, 5) 참고문헌 및 인용. 이 네 가지 세부 질문은 상호 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 독립적이므로, 한 명의 연구 하위 에이전트가 포괄적으로 조사하는 것이 효율적이다. 연구 결과는 한국어로 요약 및 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 인용 정리해야 한다. 다음 단계는 이 네 가지 세부 질문을 포함한 연구 지침을 하위 에이전트에 전달하여 자료를 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 수집하는 것이다. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╭────────────────────────────────────────────────────── AI ───────────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Tool Call: write_todos <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Args: { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"todos\": [ <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"사용자 요청을 /research_request.md에 저장\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"completed\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 도출하고, 연구 계획을 수립\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"completed\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 수집\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"in_progress\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"수집된 자료를 종합 및 인용 정리\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"pending\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"pending\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"pending\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> } <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ] <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> } <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ID: call_59oKa1px2Dk8EGKgQTeA11Qe <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[37m╭─\u001b[0m\u001b[37m─────────────────────────────────────────────────────\u001b[0m\u001b[37m AI \u001b[0m\u001b[37m──────────────────────────────────────────────────────\u001b[0m\u001b[37m─╮\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Tool Call: write_todos \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Args: { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"todos\": [ \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"사용자 요청을 /research_request.md에 저장\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"completed\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 도출하고, 연구 계획을 수립\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"completed\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 수집\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"in_progress\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"수집된 자료를 종합 및 인용 정리\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"pending\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"pending\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"pending\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m } \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ] \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m } \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ID: call_59oKa1px2Dk8EGKgQTeA11Qe \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #808000; text-decoration-color: #808000\">╭────────────────────────────────────────────────── Tool Output ──────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> Updated todo list to [{'content': '사용자 요청을 /research_request.md에 저장', 'status': 'completed'}, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> {'content': 'AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 도출하고, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 연구 계획을 수립', 'status': 'completed'}, {'content': '연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 수집', 'status': 'in_progress'}, {'content': '수집된 자료를 종합 및 인용 정리', 'status': 'pending'}, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> {'content': '최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)', 'status': 'pending'}, {'content': <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> '/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증', 'status': 'pending'}] <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[33m╭─\u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m Tool Output \u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m─╮\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m Updated todo list to [{'content': '사용자 요청을 /research_request.md에 저장', 'status': 'completed'}, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m {'content': 'AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 도출하고, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 연구 계획을 수립', 'status': 'completed'}, {'content': '연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 수집', 'status': 'in_progress'}, {'content': '수집된 자료를 종합 및 인용 정리', 'status': 'pending'}, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m {'content': '최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)', 'status': 'pending'}, {'content': \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m '/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증', 'status': 'pending'}] \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╭────────────────────────────────────────────────────── AI ───────────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Tool Call: task <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Args: { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"description\": \"아래의 세부 질문을 모두 포함하여 AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링(context <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> engineering) 접근법에 대해 포괄적으로 조사해 주세요. 결과는 한국어로 요약하고, 각 주장이나 사례에는 신뢰할 수 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 있는 참고문헌(논문, 공식 문서, 기술 블로그 등)을 인용 번호와 함께 명시해 주세요.\\n\\n세부 질문:\\n1. Context <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Engineering이란 무엇이며, 주요 개념과 원리는 무엇인가?\\n2. 연구 에이전트형 AI 시스템(예: LLM 기반 연구 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 에이전트)에서의 Context Engineering 적용 사례와 구체적 방법론은?\\n3. 파일시스템 기반 컨텍스트 관리 시스템에서의 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Context Engineering 적용 사례와 특징은?\\n4. 최신 연구 동향 및 실제 적용 예시(2022~2024년 기준)는?\\n5. 참고문헌 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 및 인용 정리\\n\\n최종 결과는 각 항목별로 명확하게 구분하여 정리해 주세요.\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"subagent_type\": \"researcher\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> } <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ID: call_yJFP5CbEQVSYNNAalm8c15tv <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[37m╭─\u001b[0m\u001b[37m─────────────────────────────────────────────────────\u001b[0m\u001b[37m AI \u001b[0m\u001b[37m──────────────────────────────────────────────────────\u001b[0m\u001b[37m─╮\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Tool Call: task \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Args: { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"description\": \"아래의 세부 질문을 모두 포함하여 AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링(context \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m engineering) 접근법에 대해 포괄적으로 조사해 주세요. 결과는 한국어로 요약하고, 각 주장이나 사례에는 신뢰할 수 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 있는 참고문헌(논문, 공식 문서, 기술 블로그 등)을 인용 번호와 함께 명시해 주세요.\\n\\n세부 질문:\\n1. Context \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Engineering이란 무엇이며, 주요 개념과 원리는 무엇인가?\\n2. 연구 에이전트형 AI 시스템(예: LLM 기반 연구 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 에이전트)에서의 Context Engineering 적용 사례와 구체적 방법론은?\\n3. 파일시스템 기반 컨텍스트 관리 시스템에서의 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Context Engineering 적용 사례와 특징은?\\n4. 최신 연구 동향 및 실제 적용 예시(2022~2024년 기준)는?\\n5. 참고문헌 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 및 인용 정리\\n\\n최종 결과는 각 항목별로 명확하게 구분하여 정리해 주세요.\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"subagent_type\": \"researcher\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m } \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ID: call_yJFP5CbEQVSYNNAalm8c15tv \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #808000; text-decoration-color: #808000\">╭────────────────────────────────────────────────── Tool Output ──────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> ## 주요 조사 결과 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> --- <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> ### 1. Context Engineering이란 무엇이며, 주요 개념과 원리는 무엇인가? <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 컨텍스트 엔지니어링(Context Engineering)은 AI, 특히 LLM(대형 언어 모델) 기반 에이전트가 복잡한 문제를 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 효과적으로 해결할 수 있도록, 동적으로 관련 맥락(문맥, 정보, 과거 상호작용 등)을 수집·가공·관리·제공하는 기술 및 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 설계 방법론을 의미합니다. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - 기존의 프롬프트 엔지니어링이 “질문을 잘 던지는 기술”에 집중했다면, 컨텍스트 엔지니어링은 AI가 상황을 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 인식하고, 적절한 시점에 관련성 높은 정보를 동적으로 제공받아 판단·추론할 수 있도록 시스템을 설계하는 데 초점을 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 둡니다. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - Shopify CEO 토비아스 뤼트케와 OpenAI의 안드레이 카파시 등은 “LLM이 신뢰할 만한 수준으로 과제를 수행하도록 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 모든 문맥을 제공하는 예술이자 과학”이라고 정의합니다. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - 핵심 원리는 “관련성 있는 정보”를 “적절한 시점”에 “적절한 형식”으로 제공하는 것, 즉 동적 컨텍스트 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 검색·생성·처리·관리가 중심입니다[1][2]. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> --- <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> ### 2. 연구 에이전트형 AI 시스템(예: LLM 기반 연구 에이전트)에서의 Context Engineering 적용 사례와 구체적 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 방법론 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - 실제 LLM 기반 연구 에이전트(예: Inngest의 AI Research Assistant)는 다음과 같은 컨텍스트 엔지니어링 방법론을 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 적용합니다: <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - **다양한 데이터 소스 병렬 수집**: arXiv, GitHub, 웹 검색, PDF 등 여러 출처에서 관련 정보를 병렬로 수집. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - **컨텍스트 압축 및 증강**: 수집된 정보를 여러 특화 LLM(예: GPT-4, Claude, Gemini, Mistral 등)로 분산 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 처리하여 요약·분류·팩트체크 등 역할을 분담, 최종적으로 가장 관련성 높은 정보만을 추출. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - **오케스트레이터-워커 패턴**: 중앙 오케스트레이터가 각 워커(특화 LLM)에 작업을 분배하고, 결과를 종합해 최종 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 응답을 생성. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - **컨텍스트 푸시 vs. 풀**: 대규모 코드베이스 등에서는 LLM이 필요한 정보를 동적으로 “pull”하는 방식(툴 호출 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 등)이 효과적임. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - **실시간 컨텍스트 파이프라인**: 외부 API의 속도·신뢰성·레이트리밋을 고려한 내구성 있는 워크플로우 설계[3]. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - 실제 적용 분야로는 연구 논문 요약, 최신 기술 동향 분석, 코드베이스 탐색, 고객지원, 의료 데이터 분석 등 다양한 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 영역이 있습니다[2][3]. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> --- <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> ### 3. 파일시스템 기반 컨텍스트 관리 시스템에서의 Context Engineering 적용 사례와 특징 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - 파일시스템 기반 컨텍스트 관리에서는 “시스템 컨텍스트 다이어그램(System Context Diagram)” 등 시각적 도구를 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 활용해, 시스템 내부와 외부 엔터티(사용자, 외부 시스템 등) 간의 정보 흐름과 상호작용을 구조적으로 설계합니다. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - 주요 특징: <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - **블랙박스 모델링**: 시스템 내부를 블랙박스로 보고, 외부와의 데이터 흐름(입출력, 트리거 등)을 명확히 정의. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - **데이터 흐름의 시각화**: 도서관 대출, 생산계획, 회원관리 등 실제 업무 시나리오에서 파일 기반 정보의 흐름과 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 컨텍스트를 다이어그램으로 표현. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - **컨텍스트의 계층적 관리**: 요구사항 분석, 리소스 관리, 문제 구조 분석 등 다양한 단계에서 컨텍스트를 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 계층적으로 분해·관리. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - **실제 적용 예시**: 도서관 대출 시스템, 생산·자재관리, 전자상거래 플랫폼 등에서 컨텍스트 다이어그램을 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 활용해 정보 흐름과 상호작용을 최적화[4]. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> --- <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> ### 4. 최신 연구 동향 및 실제 적용 예시(2022~2024년 기준) <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - 2022~2024년 사이, 컨텍스트 엔지니어링은 LLM 기반 에이전트의 성능 향상과 신뢰성 확보의 핵심 기술로 부상. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - Shopify, OpenAI, Anthropic 등 주요 기업과 연구자들이 “프롬프트 엔지니어링”에서 “컨텍스트 엔지니어링”으로 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 패러다임 전환을 주도. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - 실제 적용 예시: <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - **Shopify**: 고객지원 챗봇, 콘텐츠 생성, 헬스케어 등에서 컨텍스트 엔지니어링을 통해 사용자 맞춤형 응답 및 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 서비스 품질 향상. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - **Inngest**: 오픈소스 AI Research Assistant에서 병렬 데이터 수집, 컨텍스트 증강, 오케스트레이터-워커 패턴 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 등 실무적 방법론을 공개. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - **연구 논문**: LLM의 컨텍스트 윈도우 확장, 컨텍스트 압축/증강, 멀티에이전트 협력 등 다양한 주제로 arXiv, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> ResearchGate 등에서 활발히 논의[2][3][5]. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - 도전과제: 정보 과다/부족의 균형, 윤리적 데이터 관리, 편향 방지, 실시간성·신뢰성 확보 등[2][3]. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> --- <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> ### 5. 참고문헌 및 인용 정리 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> ## Source Agreement Analysis <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - **High agreement**: 컨텍스트 엔지니어링의 정의, 프롬프트 엔지니어링과의 차이, LLM 기반 에이전트에서의 중요성, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 오케스트레이터-워커 패턴, 데이터 소스 병렬 수집 및 증강의 필요성. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> - **Disagreement/Uncertainty**: 구체적 구현 방식(컨텍스트 푸시 vs. 풀), 각 산업별 최적화 전략, 최신 논문의 일부 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 세부 내용(일부 논문 접근 제한). <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> --- <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> ## Sources <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> [1] [사이언스칼럼] AI 에이전트 시대의 새로운 화두: 컨텍스트 엔지니어링 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> https://v.daum.net/v/5Q868Bo9so?f=p <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> [2] The Art of Context Engineering: Revolutionizing AI Interactions for Optimal Performance (Shopify 사례 및 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 원리) <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> https://praella.com/no/blogs/shopify-news/the-art-of-context-engineering-revolutionizing-ai-interactions-for-op <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> timal-performance <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> [3] Context Engineering in Practice: Building an AI Research Assistant (Inngest, OpenAI, Anthropic 등 실제 적용 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 사례) <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> https://www.inngest.com/blog/context-engineering-in-practice <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> [4] 시스템 컨텍스트 다이어그램이란? (파일시스템 기반 컨텍스트 관리 사례) <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> https://www.processon.io/ko/blog/how-to-make-a-system-context-diagram <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> [5] Context Engineering 2.0: The Context of Context Engineering (연구 논문, ResearchGate) <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> https://www.researchgate.net/publication/397088090_Context_Engineering_20_The_Context_of_Context_Engineering <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> --- <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> ※ 각 인용번호는 본문 내 으로 표기하였으며, 실제 사례와 방법론은 2~4번 참고문헌에서 구체적으로 확인할 수 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 있습니다. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[33m╭─\u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m Tool Output \u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m─╮\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m ## 주요 조사 결과 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m --- \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m ### 1. Context Engineering이란 무엇이며, 주요 개념과 원리는 무엇인가? \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 컨텍스트 엔지니어링(Context Engineering)은 AI, 특히 LLM(대형 언어 모델) 기반 에이전트가 복잡한 문제를 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 효과적으로 해결할 수 있도록, 동적으로 관련 맥락(문맥, 정보, 과거 상호작용 등)을 수집·가공·관리·제공하는 기술 및 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 설계 방법론을 의미합니다. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - 기존의 프롬프트 엔지니어링이 “질문을 잘 던지는 기술”에 집중했다면, 컨텍스트 엔지니어링은 AI가 상황을 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 인식하고, 적절한 시점에 관련성 높은 정보를 동적으로 제공받아 판단·추론할 수 있도록 시스템을 설계하는 데 초점을 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 둡니다. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - Shopify CEO 토비아스 뤼트케와 OpenAI의 안드레이 카파시 등은 “LLM이 신뢰할 만한 수준으로 과제를 수행하도록 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 모든 문맥을 제공하는 예술이자 과학”이라고 정의합니다. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - 핵심 원리는 “관련성 있는 정보”를 “적절한 시점”에 “적절한 형식”으로 제공하는 것, 즉 동적 컨텍스트 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 검색·생성·처리·관리가 중심입니다[1][2]. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m --- \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m ### 2. 연구 에이전트형 AI 시스템(예: LLM 기반 연구 에이전트)에서의 Context Engineering 적용 사례와 구체적 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 방법론 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - 실제 LLM 기반 연구 에이전트(예: Inngest의 AI Research Assistant)는 다음과 같은 컨텍스트 엔지니어링 방법론을 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 적용합니다: \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - **다양한 데이터 소스 병렬 수집**: arXiv, GitHub, 웹 검색, PDF 등 여러 출처에서 관련 정보를 병렬로 수집. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - **컨텍스트 압축 및 증강**: 수집된 정보를 여러 특화 LLM(예: GPT-4, Claude, Gemini, Mistral 등)로 분산 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 처리하여 요약·분류·팩트체크 등 역할을 분담, 최종적으로 가장 관련성 높은 정보만을 추출. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - **오케스트레이터-워커 패턴**: 중앙 오케스트레이터가 각 워커(특화 LLM)에 작업을 분배하고, 결과를 종합해 최종 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 응답을 생성. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - **컨텍스트 푸시 vs. 풀**: 대규모 코드베이스 등에서는 LLM이 필요한 정보를 동적으로 “pull”하는 방식(툴 호출 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 등)이 효과적임. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - **실시간 컨텍스트 파이프라인**: 외부 API의 속도·신뢰성·레이트리밋을 고려한 내구성 있는 워크플로우 설계[3]. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - 실제 적용 분야로는 연구 논문 요약, 최신 기술 동향 분석, 코드베이스 탐색, 고객지원, 의료 데이터 분석 등 다양한 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 영역이 있습니다[2][3]. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m --- \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m ### 3. 파일시스템 기반 컨텍스트 관리 시스템에서의 Context Engineering 적용 사례와 특징 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - 파일시스템 기반 컨텍스트 관리에서는 “시스템 컨텍스트 다이어그램(System Context Diagram)” 등 시각적 도구를 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 활용해, 시스템 내부와 외부 엔터티(사용자, 외부 시스템 등) 간의 정보 흐름과 상호작용을 구조적으로 설계합니다. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - 주요 특징: \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - **블랙박스 모델링**: 시스템 내부를 블랙박스로 보고, 외부와의 데이터 흐름(입출력, 트리거 등)을 명확히 정의. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - **데이터 흐름의 시각화**: 도서관 대출, 생산계획, 회원관리 등 실제 업무 시나리오에서 파일 기반 정보의 흐름과 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 컨텍스트를 다이어그램으로 표현. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - **컨텍스트의 계층적 관리**: 요구사항 분석, 리소스 관리, 문제 구조 분석 등 다양한 단계에서 컨텍스트를 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 계층적으로 분해·관리. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - **실제 적용 예시**: 도서관 대출 시스템, 생산·자재관리, 전자상거래 플랫폼 등에서 컨텍스트 다이어그램을 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 활용해 정보 흐름과 상호작용을 최적화[4]. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m --- \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m ### 4. 최신 연구 동향 및 실제 적용 예시(2022~2024년 기준) \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - 2022~2024년 사이, 컨텍스트 엔지니어링은 LLM 기반 에이전트의 성능 향상과 신뢰성 확보의 핵심 기술로 부상. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - Shopify, OpenAI, Anthropic 등 주요 기업과 연구자들이 “프롬프트 엔지니어링”에서 “컨텍스트 엔지니어링”으로 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 패러다임 전환을 주도. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - 실제 적용 예시: \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - **Shopify**: 고객지원 챗봇, 콘텐츠 생성, 헬스케어 등에서 컨텍스트 엔지니어링을 통해 사용자 맞춤형 응답 및 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 서비스 품질 향상. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - **Inngest**: 오픈소스 AI Research Assistant에서 병렬 데이터 수집, 컨텍스트 증강, 오케스트레이터-워커 패턴 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 등 실무적 방법론을 공개. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - **연구 논문**: LLM의 컨텍스트 윈도우 확장, 컨텍스트 압축/증강, 멀티에이전트 협력 등 다양한 주제로 arXiv, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m ResearchGate 등에서 활발히 논의[2][3][5]. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - 도전과제: 정보 과다/부족의 균형, 윤리적 데이터 관리, 편향 방지, 실시간성·신뢰성 확보 등[2][3]. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m --- \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m ### 5. 참고문헌 및 인용 정리 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m ## Source Agreement Analysis \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - **High agreement**: 컨텍스트 엔지니어링의 정의, 프롬프트 엔지니어링과의 차이, LLM 기반 에이전트에서의 중요성, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 오케스트레이터-워커 패턴, 데이터 소스 병렬 수집 및 증강의 필요성. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m - **Disagreement/Uncertainty**: 구체적 구현 방식(컨텍스트 푸시 vs. 풀), 각 산업별 최적화 전략, 최신 논문의 일부 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 세부 내용(일부 논문 접근 제한). \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m --- \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m ## Sources \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m [1] [사이언스칼럼] AI 에이전트 시대의 새로운 화두: 컨텍스트 엔지니어링 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m https://v.daum.net/v/5Q868Bo9so?f=p \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m [2] The Art of Context Engineering: Revolutionizing AI Interactions for Optimal Performance (Shopify 사례 및 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 원리) \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m https://praella.com/no/blogs/shopify-news/the-art-of-context-engineering-revolutionizing-ai-interactions-for-op \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m timal-performance \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m [3] Context Engineering in Practice: Building an AI Research Assistant (Inngest, OpenAI, Anthropic 등 실제 적용 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 사례) \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m https://www.inngest.com/blog/context-engineering-in-practice \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m [4] 시스템 컨텍스트 다이어그램이란? (파일시스템 기반 컨텍스트 관리 사례) \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m https://www.processon.io/ko/blog/how-to-make-a-system-context-diagram \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m [5] Context Engineering 2.0: The Context of Context Engineering (연구 논문, ResearchGate) \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m https://www.researchgate.net/publication/397088090_Context_Engineering_20_The_Context_of_Context_Engineering \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m --- \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m ※ 각 인용번호는 본문 내 으로 표기하였으며, 실제 사례와 방법론은 2~4번 참고문헌에서 구체적으로 확인할 수 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 있습니다. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╭────────────────────────────────────────────────────── AI ───────────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Tool Call: write_todos <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Args: { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"todos\": [ <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"사용자 요청을 /research_request.md에 저장\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"completed\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 도출하고, 연구 계획을 수립\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"completed\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 수집\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"completed\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"수집된 자료를 종합 및 인용 정리\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"in_progress\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"pending\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"pending\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> } <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ] <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> } <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ID: call_TAI8wS1P3dq0bzG8HhrVbkwi <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[37m╭─\u001b[0m\u001b[37m─────────────────────────────────────────────────────\u001b[0m\u001b[37m AI \u001b[0m\u001b[37m──────────────────────────────────────────────────────\u001b[0m\u001b[37m─╮\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Tool Call: write_todos \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Args: { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"todos\": [ \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"사용자 요청을 /research_request.md에 저장\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"completed\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 도출하고, 연구 계획을 수립\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"completed\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 수집\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"completed\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"수집된 자료를 종합 및 인용 정리\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"in_progress\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"pending\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"pending\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m } \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ] \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m } \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ID: call_TAI8wS1P3dq0bzG8HhrVbkwi \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #808000; text-decoration-color: #808000\">╭────────────────────────────────────────────────── Tool Output ──────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> Updated todo list to [{'content': '사용자 요청을 /research_request.md에 저장', 'status': 'completed'}, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> {'content': 'AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 도출하고, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 연구 계획을 수립', 'status': 'completed'}, {'content': '연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 수집', 'status': 'completed'}, {'content': '수집된 자료를 종합 및 인용 정리', 'status': 'in_progress'}, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> {'content': '최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)', 'status': 'pending'}, {'content': <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> '/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증', 'status': 'pending'}] <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[33m╭─\u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m Tool Output \u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m─╮\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m Updated todo list to [{'content': '사용자 요청을 /research_request.md에 저장', 'status': 'completed'}, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m {'content': 'AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 도출하고, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 연구 계획을 수립', 'status': 'completed'}, {'content': '연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 수집', 'status': 'completed'}, {'content': '수집된 자료를 종합 및 인용 정리', 'status': 'in_progress'}, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m {'content': '최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)', 'status': 'pending'}, {'content': \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m '/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증', 'status': 'pending'}] \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╭────────────────────────────────────────────────────── AI ───────────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Tool Call: task <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Args: { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"description\": \"아래 조사 결과를 바탕으로, 보고서 작성 가이드라인에 따라 한국어로 최종 보고서를 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> /final_report.md에 작성하세요. 각 항목별로 명확하게 구분하고, 본문 내 인용번호와 함께 참고문헌을 마지막에 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 정리하세요.\\n\\n---\\n\\n1. Context Engineering이란 무엇이며, 주요 개념과 원리는 무엇인가?\\n2. 연구 에이전트형 AI <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 시스템(예: LLM 기반 연구 에이전트)에서의 Context Engineering 적용 사례와 구체적 방법론은?\\n3. 파일시스템 기반 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 컨텍스트 관리 시스템에서의 Context Engineering 적용 사례와 특징은?\\n4. 최신 연구 동향 및 실제 적용 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 예시(2022~2024년 기준)는?\\n5. 참고문헌 및 인용 정리\\n\\n아래 조사 결과를 참고하여, 각 항목별로 충분히 상세하고 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 전문적으로 작성할 것. 인용번호는 [1], [2] 형식으로 표기. 마지막에 Sources 섹션에 각 인용의 URL과 제목을 정리.\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"subagent_type\": \"synthesizer\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> } <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ID: call_fGpEAzkvXkGUs9cj4OhTLMxJ <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[37m╭─\u001b[0m\u001b[37m─────────────────────────────────────────────────────\u001b[0m\u001b[37m AI \u001b[0m\u001b[37m──────────────────────────────────────────────────────\u001b[0m\u001b[37m─╮\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Tool Call: task \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Args: { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"description\": \"아래 조사 결과를 바탕으로, 보고서 작성 가이드라인에 따라 한국어로 최종 보고서를 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m /final_report.md에 작성하세요. 각 항목별로 명확하게 구분하고, 본문 내 인용번호와 함께 참고문헌을 마지막에 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 정리하세요.\\n\\n---\\n\\n1. Context Engineering이란 무엇이며, 주요 개념과 원리는 무엇인가?\\n2. 연구 에이전트형 AI \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 시스템(예: LLM 기반 연구 에이전트)에서의 Context Engineering 적용 사례와 구체적 방법론은?\\n3. 파일시스템 기반 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 컨텍스트 관리 시스템에서의 Context Engineering 적용 사례와 특징은?\\n4. 최신 연구 동향 및 실제 적용 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 예시(2022~2024년 기준)는?\\n5. 참고문헌 및 인용 정리\\n\\n아래 조사 결과를 참고하여, 각 항목별로 충분히 상세하고 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 전문적으로 작성할 것. 인용번호는 [1], [2] 형식으로 표기. 마지막에 Sources 섹션에 각 인용의 URL과 제목을 정리.\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"subagent_type\": \"synthesizer\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m } \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ID: call_fGpEAzkvXkGUs9cj4OhTLMxJ \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #808000; text-decoration-color: #808000\">╭────────────────────────────────────────────────── Tool Output ──────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> /final_report.md에 요청하신 가이드라인에 따라 최신 연구와 사례를 통합한 보고서를 작성 및 반영하였습니다. 각 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 항목별로 명확히 구분하고, 본문 내 인용번호와 함께 참고문헌을 마지막에 정리하였습니다. 필요시 추가 요약, 비교, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 또는 특정 항목의 보강 요청도 가능합니다. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[33m╭─\u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m Tool Output \u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m─╮\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m /final_report.md에 요청하신 가이드라인에 따라 최신 연구와 사례를 통합한 보고서를 작성 및 반영하였습니다. 각 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 항목별로 명확히 구분하고, 본문 내 인용번호와 함께 참고문헌을 마지막에 정리하였습니다. 필요시 추가 요약, 비교, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 또는 특정 항목의 보강 요청도 가능합니다. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╭────────────────────────────────────────────────────── AI ───────────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Tool Call: write_todos <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Args: { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"todos\": [ <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"사용자 요청을 /research_request.md에 저장\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"completed\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 도출하고, 연구 계획을 수립\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"completed\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 수집\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"completed\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"수집된 자료를 종합 및 인용 정리\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"completed\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"completed\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"in_progress\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> } <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ] <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> } <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ID: call_Lc56khjP4czcluE3HWa72jCB <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[37m╭─\u001b[0m\u001b[37m─────────────────────────────────────────────────────\u001b[0m\u001b[37m AI \u001b[0m\u001b[37m──────────────────────────────────────────────────────\u001b[0m\u001b[37m─╮\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Tool Call: write_todos \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Args: { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"todos\": [ \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"사용자 요청을 /research_request.md에 저장\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"completed\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 도출하고, 연구 계획을 수립\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"completed\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 수집\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"completed\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"수집된 자료를 종합 및 인용 정리\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"completed\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"completed\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"in_progress\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m } \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ] \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m } \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ID: call_Lc56khjP4czcluE3HWa72jCB \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #808000; text-decoration-color: #808000\">╭────────────────────────────────────────────────── Tool Output ──────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> Updated todo list to [{'content': '사용자 요청을 /research_request.md에 저장', 'status': 'completed'}, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> {'content': 'AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 도출하고, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 연구 계획을 수립', 'status': 'completed'}, {'content': '연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 수집', 'status': 'completed'}, {'content': '수집된 자료를 종합 및 인용 정리', 'status': 'completed'}, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> {'content': '최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)', 'status': 'completed'}, {'content': <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> '/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증', 'status': 'in_progress'}] <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[33m╭─\u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m Tool Output \u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m─╮\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m Updated todo list to [{'content': '사용자 요청을 /research_request.md에 저장', 'status': 'completed'}, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m {'content': 'AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 도출하고, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 연구 계획을 수립', 'status': 'completed'}, {'content': '연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 수집', 'status': 'completed'}, {'content': '수집된 자료를 종합 및 인용 정리', 'status': 'completed'}, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m {'content': '최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)', 'status': 'completed'}, {'content': \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m '/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증', 'status': 'in_progress'}] \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╭────────────────────────────────────────────────────── AI ───────────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Tool Call: read_file <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Args: { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"file_path\": \"/final_report.md\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"offset\": 0, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"limit\": 100 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> } <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ID: call_w5XeR9VIkAgPidWvjHsUkvde <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[37m╭─\u001b[0m\u001b[37m─────────────────────────────────────────────────────\u001b[0m\u001b[37m AI \u001b[0m\u001b[37m──────────────────────────────────────────────────────\u001b[0m\u001b[37m─╮\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Tool Call: read_file \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Args: { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"file_path\": \"/final_report.md\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"offset\": 0, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"limit\": 100 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m } \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ID: call_w5XeR9VIkAgPidWvjHsUkvde \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #808000; text-decoration-color: #808000\">╭────────────────────────────────────────────────── Tool Output ──────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 1 # AI 에이전트 구축을 위한 컨텍스트 엔지니어링 접근법 연구 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 2 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 3 ## 1. Context Engineering이란 무엇이며, 주요 개념과 원리는 무엇인가? <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 4 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 5 Context Engineering(컨텍스트 엔지니어링)은 AI 에이전트, 특히 멀티에이전트 시스템에서 각 에이전트가 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 최적의 의사결정을 내릴 수 있도록 필요한 정보(컨텍스트)를 설계, 관리, 전달하는 일련의 전략과 기술을 의미한다. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 이는 단순히 프롬프트를 설계하는 수준을 넘어, 시스템 전체의 집단적 지식, 이전 결정, 도구 피드백, 외부 데이터 등 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 다양한 맥락 정보를 동적으로 조합·제공함으로써, 에이전트 간 협업의 정확성과 일관성을 극대화하는 것이 핵심 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 원리다[1][4]. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 6 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 7 컨텍스트의 유형은 크게 ① 명령(프롬프트, 규칙, 예시), ② 지식(도메인 정보, 검색 데이터, 메모리), ③ 도구 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 피드백(API 결과, 런타임 신호)로 구분된다. 효과적인 컨텍스트 엔지니어링을 위해서는 정보의 저장(외부 메모리, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 파일시스템), 선택(RAG, 유사도 검색), 압축(요약, 필터링), 격리(역할별 컨텍스트 분리) 등 다양한 전략이 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 활용된다[4]. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 8 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 9 ## 2. 연구 에이전트형 AI 시스템(예: LLM 기반 연구 에이전트)에서의 Context Engineering 적용 사례와 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 구체적 방법론 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 10 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 11 연구 에이전트형 AI 시스템에서는 복잡한 연구 과제를 해결하기 위해 여러 특화 에이전트가 협업하는 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 멀티에이전트 구조가 주로 채택된다. 대표적으로 Anthropic의 멀티에이전트 연구 시스템은 Opus 4 리드 에이전트가 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> Sonnet 4 서브에이전트들을 조율하여, 각 서브에이전트가 실시간 데이터 수집, 통계 분석, 전문가 의견 요약 등 역할을 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 분담하고, 리드 에이전트가 결과를 통합·검증하는 방식으로 동작한다. 이 시스템은 단일 에이전트 대비 90% 이상의 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 성능 향상을 보였으며, 컨텍스트 엔지니어링이 성능 차이의 80%를 설명하는 핵심 요인으로 분석되었다[1]. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 12 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 13 구체적 방법론으로는 ① 각 에이전트의 역할과 책임을 명확히 정의하고, ② 시스템 전체의 결정 및 가정(예: <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 분석 범위, 데이터 기준)을 공유 메모리나 프롬프트에 명시적으로 삽입하며, ③ 이전 단계의 핵심 결정만을 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 요약·전달하여 정보 과부하를 방지한다. 또한, 에이전트 간 충돌 방지를 위해 일관된 포맷, 스타일, 인용 규칙 등을 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 컨텍스트에 포함시키고, 중복 작업이나 모순된 결과가 발생하지 않도록 동적 메모리 참조 및 역할 기반 정보 격리를 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 적용한다[1][4][5]. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 14 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 15 ## 3. 파일시스템 기반 컨텍스트 관리 시스템에서의 Context Engineering 적용 사례와 특징 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 16 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 17 파일시스템 기반 컨텍스트 관리 시스템은 에이전트가 외부 메모리(파일, DB, shared memory 등)에 정보를 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 저장·조회함으로써, 컨텍스트 윈도우 한계를 극복하고 장기적 일관성을 유지하는 데 중점을 둔다. 예를 들어, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 멀티에이전트 시스템에서 각 에이전트가 자신의 결정, 중간 산출물, 외부 데이터 등을 파일시스템에 기록하고, 필요 시 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 유사도 검색(RAG)이나 메타데이터 필터링을 통해 관련 정보를 동적으로 불러와 컨텍스트로 활용한다[4]. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 18 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 19 이러한 구조는 ① 정보의 영속성(장기 기억), ② 역할별/에이전트별 컨텍스트 격리, ③ 동적 정보 선택 및 압축, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> ④ 시스템 전체의 투명성(감사·재현성) 등에서 강점을 가진다. 실제로 Vellum, LangChain 등 최신 플랫폼은 외부 메모리 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 연동, 프롬프트 체이닝, 컨텍스트 필터링, 버전 관리 등 파일시스템 기반 컨텍스트 엔지니어링을 위한 다양한 도구를 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 제공하고 있다[4]. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 20 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 21 ## 4. 최신 연구 동향 및 실제 적용 예시(2022~2024년 기준) <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 22 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 23 2022~2024년 사이, 컨텍스트 엔지니어링은 멀티에이전트 시스템의 신뢰성, 확장성, 비용 효율성 확보의 핵심 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 기술로 부상하였다. Anthropic, Cognition, Vellum 등은 멀티에이전트 시스템에서의 컨텍스트 결손이 실패의 주요 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 원인임을 지적하며, 컨텍스트 설계·관리 전략의 중요성을 강조한다[1][3][5][6]. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 24 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 25 실제 적용 예시로는 ① Anthropic의 멀티에이전트 연구 시스템(리드/서브에이전트 구조, 공유 메모리 기반 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 컨텍스트 관리), ② Vellum의 Corpus-in-Context, RAG 파이프라인, 프롬프트 버전 관리, 외부 메모리 연동, ③ <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> LangChain의 컨텍스트 엔지니어링 프레임워크(정보 저장/선택/압축/격리), ④ Cognition의 실패 사례 분석(컨텍스트 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 결손, 역할 충돌, 정보 과부하 등)이 있다. 또한, 최근 연구들은 토큰 사용량 최적화, 에이전트 간 충돌 방지, 동적 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 에이전트 라우팅, 시스템 감사·재현성 확보 등 실무적 과제에 대한 구체적 솔루션을 제시하고 있다[1][4][5][6]. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 26 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 27 ## 5. 참고문헌 및 인용 정리 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 28 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 29 [1] Anthropic. (2025). How We Built Our Multi-Agent Research System. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> https://www.anthropic.com/engineering/built-multi-agent-research-system <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 30 [2] Kubiya. (2024). Single Agent vs Multi Agent AI: Which Is Better? <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> https://www.kubiya.ai/blog/single-agent-vs-multi-agent-in-ai <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 31 [3] Cognition AI. (2024). Don’t Build Multi-Agents. https://cognition.ai/blog/dont-build-multi-agents <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 32 [4] LangChain. (2024). Context Engineering for Agents. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> https://blog.langchain.com/context-engineering-for-agents/ <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 33 [5] Anna A Grigoryan (2025). Why Do Multi-Agent LLM Systems Fail? <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> https://thegrigorian.medium.com/why-do-multi-agent-llm-systems-fail-14dc34e0f3cb <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 34 [6] Arxiv. (2025). Why Do Multi-Agent LLM Systems Fail? https://arxiv.org/abs/2503.13657 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 35 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[33m╭─\u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m Tool Output \u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m─╮\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 1 # AI 에이전트 구축을 위한 컨텍스트 엔지니어링 접근법 연구 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 2 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 3 ## 1. Context Engineering이란 무엇이며, 주요 개념과 원리는 무엇인가? \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 4 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 5 Context Engineering(컨텍스트 엔지니어링)은 AI 에이전트, 특히 멀티에이전트 시스템에서 각 에이전트가 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 최적의 의사결정을 내릴 수 있도록 필요한 정보(컨텍스트)를 설계, 관리, 전달하는 일련의 전략과 기술을 의미한다. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 이는 단순히 프롬프트를 설계하는 수준을 넘어, 시스템 전체의 집단적 지식, 이전 결정, 도구 피드백, 외부 데이터 등 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 다양한 맥락 정보를 동적으로 조합·제공함으로써, 에이전트 간 협업의 정확성과 일관성을 극대화하는 것이 핵심 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 원리다[1][4]. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 6 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 7 컨텍스트의 유형은 크게 ① 명령(프롬프트, 규칙, 예시), ② 지식(도메인 정보, 검색 데이터, 메모리), ③ 도구 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 피드백(API 결과, 런타임 신호)로 구분된다. 효과적인 컨텍스트 엔지니어링을 위해서는 정보의 저장(외부 메모리, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 파일시스템), 선택(RAG, 유사도 검색), 압축(요약, 필터링), 격리(역할별 컨텍스트 분리) 등 다양한 전략이 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 활용된다[4]. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 8 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 9 ## 2. 연구 에이전트형 AI 시스템(예: LLM 기반 연구 에이전트)에서의 Context Engineering 적용 사례와 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 구체적 방법론 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 10 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 11 연구 에이전트형 AI 시스템에서는 복잡한 연구 과제를 해결하기 위해 여러 특화 에이전트가 협업하는 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 멀티에이전트 구조가 주로 채택된다. 대표적으로 Anthropic의 멀티에이전트 연구 시스템은 Opus 4 리드 에이전트가 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m Sonnet 4 서브에이전트들을 조율하여, 각 서브에이전트가 실시간 데이터 수집, 통계 분석, 전문가 의견 요약 등 역할을 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 분담하고, 리드 에이전트가 결과를 통합·검증하는 방식으로 동작한다. 이 시스템은 단일 에이전트 대비 90% 이상의 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 성능 향상을 보였으며, 컨텍스트 엔지니어링이 성능 차이의 80%를 설명하는 핵심 요인으로 분석되었다[1]. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 12 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 13 구체적 방법론으로는 ① 각 에이전트의 역할과 책임을 명확히 정의하고, ② 시스템 전체의 결정 및 가정(예: \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 분석 범위, 데이터 기준)을 공유 메모리나 프롬프트에 명시적으로 삽입하며, ③ 이전 단계의 핵심 결정만을 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 요약·전달하여 정보 과부하를 방지한다. 또한, 에이전트 간 충돌 방지를 위해 일관된 포맷, 스타일, 인용 규칙 등을 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 컨텍스트에 포함시키고, 중복 작업이나 모순된 결과가 발생하지 않도록 동적 메모리 참조 및 역할 기반 정보 격리를 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 적용한다[1][4][5]. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 14 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 15 ## 3. 파일시스템 기반 컨텍스트 관리 시스템에서의 Context Engineering 적용 사례와 특징 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 16 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 17 파일시스템 기반 컨텍스트 관리 시스템은 에이전트가 외부 메모리(파일, DB, shared memory 등)에 정보를 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 저장·조회함으로써, 컨텍스트 윈도우 한계를 극복하고 장기적 일관성을 유지하는 데 중점을 둔다. 예를 들어, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 멀티에이전트 시스템에서 각 에이전트가 자신의 결정, 중간 산출물, 외부 데이터 등을 파일시스템에 기록하고, 필요 시 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 유사도 검색(RAG)이나 메타데이터 필터링을 통해 관련 정보를 동적으로 불러와 컨텍스트로 활용한다[4]. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 18 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 19 이러한 구조는 ① 정보의 영속성(장기 기억), ② 역할별/에이전트별 컨텍스트 격리, ③ 동적 정보 선택 및 압축, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m ④ 시스템 전체의 투명성(감사·재현성) 등에서 강점을 가진다. 실제로 Vellum, LangChain 등 최신 플랫폼은 외부 메모리 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 연동, 프롬프트 체이닝, 컨텍스트 필터링, 버전 관리 등 파일시스템 기반 컨텍스트 엔지니어링을 위한 다양한 도구를 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 제공하고 있다[4]. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 20 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 21 ## 4. 최신 연구 동향 및 실제 적용 예시(2022~2024년 기준) \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 22 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 23 2022~2024년 사이, 컨텍스트 엔지니어링은 멀티에이전트 시스템의 신뢰성, 확장성, 비용 효율성 확보의 핵심 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 기술로 부상하였다. Anthropic, Cognition, Vellum 등은 멀티에이전트 시스템에서의 컨텍스트 결손이 실패의 주요 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 원인임을 지적하며, 컨텍스트 설계·관리 전략의 중요성을 강조한다[1][3][5][6]. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 24 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 25 실제 적용 예시로는 ① Anthropic의 멀티에이전트 연구 시스템(리드/서브에이전트 구조, 공유 메모리 기반 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 컨텍스트 관리), ② Vellum의 Corpus-in-Context, RAG 파이프라인, 프롬프트 버전 관리, 외부 메모리 연동, ③ \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m LangChain의 컨텍스트 엔지니어링 프레임워크(정보 저장/선택/압축/격리), ④ Cognition의 실패 사례 분석(컨텍스트 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 결손, 역할 충돌, 정보 과부하 등)이 있다. 또한, 최근 연구들은 토큰 사용량 최적화, 에이전트 간 충돌 방지, 동적 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 에이전트 라우팅, 시스템 감사·재현성 확보 등 실무적 과제에 대한 구체적 솔루션을 제시하고 있다[1][4][5][6]. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 26 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 27 ## 5. 참고문헌 및 인용 정리 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 28 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 29 [1] Anthropic. (2025). How We Built Our Multi-Agent Research System. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m https://www.anthropic.com/engineering/built-multi-agent-research-system \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 30 [2] Kubiya. (2024). Single Agent vs Multi Agent AI: Which Is Better? \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m https://www.kubiya.ai/blog/single-agent-vs-multi-agent-in-ai \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 31 [3] Cognition AI. (2024). Don’t Build Multi-Agents. https://cognition.ai/blog/dont-build-multi-agents \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 32 [4] LangChain. (2024). Context Engineering for Agents. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m https://blog.langchain.com/context-engineering-for-agents/ \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 33 [5] Anna A Grigoryan (2025). Why Do Multi-Agent LLM Systems Fail? \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m https://thegrigorian.medium.com/why-do-multi-agent-llm-systems-fail-14dc34e0f3cb \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 34 [6] Arxiv. (2025). Why Do Multi-Agent LLM Systems Fail? https://arxiv.org/abs/2503.13657 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 35 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╭────────────────────────────────────────────────────── AI ───────────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Tool Call: read_file <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Args: { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"file_path\": \"/research_request.md\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"offset\": 0, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"limit\": 100 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> } <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ID: call_blmgCqeo812n68sY7m1ascbh <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[37m╭─\u001b[0m\u001b[37m─────────────────────────────────────────────────────\u001b[0m\u001b[37m AI \u001b[0m\u001b[37m──────────────────────────────────────────────────────\u001b[0m\u001b[37m─╮\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Tool Call: read_file \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Args: { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"file_path\": \"/research_request.md\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"offset\": 0, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"limit\": 100 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m } \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ID: call_blmgCqeo812n68sY7m1ascbh \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #808000; text-decoration-color: #808000\">╭────────────────────────────────────────────────── Tool Output ──────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 1 연구 주제: AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 조사하라. <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 2 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 3 세부 요구사항: <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 4 - Context Engineering이란 무엇인지 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 5 - 연구 에이전트형 AI 시스템에서의 Context Engineering 적용 사례 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 6 - 파일시스템 기반 컨텍스트 관리 시스템에서의 Context Engineering 적용 사례 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 7 - 최신 연구 동향 및 실제 적용 예시 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 8 - 참고문헌 및 인용 포함 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 9 - 결과물은 한국어로 작성할 것 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[33m╭─\u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m Tool Output \u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m─╮\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 1 연구 주제: AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 조사하라. \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 2 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 3 세부 요구사항: \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 4 - Context Engineering이란 무엇인지 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 5 - 연구 에이전트형 AI 시스템에서의 Context Engineering 적용 사례 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 6 - 파일시스템 기반 컨텍스트 관리 시스템에서의 Context Engineering 적용 사례 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 7 - 최신 연구 동향 및 실제 적용 예시 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 8 - 참고문헌 및 인용 포함 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 9 - 결과물은 한국어로 작성할 것 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╭────────────────────────────────────────────────────── AI ───────────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Tool Call: write_todos <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> Args: { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"todos\": [ <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"사용자 요청을 /research_request.md에 저장\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"completed\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 도출하고, 연구 계획을 수립\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"completed\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 수집\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"completed\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"수집된 자료를 종합 및 인용 정리\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"completed\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"completed\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> }, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> { <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"content\": \"/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증\", <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> \"status\": \"completed\" <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> } <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ] <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> } <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ID: call_LXLb7OSu9fyLYBC6bORfZzsk <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[37m╭─\u001b[0m\u001b[37m─────────────────────────────────────────────────────\u001b[0m\u001b[37m AI \u001b[0m\u001b[37m──────────────────────────────────────────────────────\u001b[0m\u001b[37m─╮\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Tool Call: write_todos \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m Args: { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"todos\": [ \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"사용자 요청을 /research_request.md에 저장\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"completed\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 도출하고, 연구 계획을 수립\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"completed\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 수집\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"completed\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"수집된 자료를 종합 및 인용 정리\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"completed\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"completed\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m }, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m { \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"content\": \"/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증\", \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \"status\": \"completed\" \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m } \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ] \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m } \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ID: call_LXLb7OSu9fyLYBC6bORfZzsk \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #808000; text-decoration-color: #808000\">╭────────────────────────────────────────────────── Tool Output ──────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> Updated todo list to [{'content': '사용자 요청을 /research_request.md에 저장', 'status': 'completed'}, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> {'content': 'AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 도출하고, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 연구 계획을 수립', 'status': 'completed'}, {'content': '연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> 수집', 'status': 'completed'}, {'content': '수집된 자료를 종합 및 인용 정리', 'status': 'completed'}, <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> {'content': '최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)', 'status': 'completed'}, {'content': <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">│</span> '/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증', 'status': 'completed'}] <span style=\"color: #808000; text-decoration-color: #808000\">│</span>\n",
|
||
"<span style=\"color: #808000; text-decoration-color: #808000\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[33m╭─\u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m Tool Output \u001b[0m\u001b[33m─────────────────────────────────────────────────\u001b[0m\u001b[33m─╮\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m Updated todo list to [{'content': '사용자 요청을 /research_request.md에 저장', 'status': 'completed'}, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m {'content': 'AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법에 대해 연구할 구체적인 질문을 도출하고, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 연구 계획을 수립', 'status': 'completed'}, {'content': '연구 계획에 따라 연구를 하위 에이전트에 위임하여 자료를 \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m 수집', 'status': 'completed'}, {'content': '수집된 자료를 종합 및 인용 정리', 'status': 'completed'}, \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m {'content': '최종 보고서를 /final_report.md에 작성 (한국어, 인용 포함)', 'status': 'completed'}, {'content': \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m│\u001b[0m '/research_request.md와 비교하여 모든 요구사항이 충족되었는지 검증', 'status': 'completed'}] \u001b[33m│\u001b[0m\n",
|
||
"\u001b[33m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╭────────────────────────────────────────────────────── AI ───────────────────────────────────────────────────────╮</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 요청하신 \"AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법\"에 대한 최신 연구와 실제 사례를 종합하여, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 아래와 같이 보고서를 작성하였습니다. <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> --- <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> # AI 에이전트 구축을 위한 컨텍스트 엔지니어링 접근법 연구 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ## 1. Context Engineering이란 무엇이며, 주요 개념과 원리는 무엇인가? <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 컨텍스트 엔지니어링(Context Engineering)은 AI 에이전트, 특히 멀티에이전트 시스템에서 각 에이전트가 최적의 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 의사결정을 내릴 수 있도록 필요한 정보(컨텍스트)를 설계, 관리, 전달하는 일련의 전략과 기술을 의미합니다. 이는 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 단순히 프롬프트를 설계하는 수준을 넘어, 시스템 전체의 집단적 지식, 이전 결정, 도구 피드백, 외부 데이터 등 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 다양한 맥락 정보를 동적으로 조합·제공함으로써, 에이전트 간 협업의 정확성과 일관성을 극대화하는 것이 핵심 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 원리입니다[1][4]. <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 컨텍스트의 유형은 크게 ① 명령(프롬프트, 규칙, 예시), ② 지식(도메인 정보, 검색 데이터, 메모리), ③ 도구 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 피드백(API 결과, 런타임 신호)로 구분됩니다. 효과적인 컨텍스트 엔지니어링을 위해서는 정보의 저장(외부 메모리, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 파일시스템), 선택(RAG, 유사도 검색), 압축(요약, 필터링), 격리(역할별 컨텍스트 분리) 등 다양한 전략이 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 활용됩니다[4]. <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ## 2. 연구 에이전트형 AI 시스템(예: LLM 기반 연구 에이전트)에서의 Context Engineering 적용 사례와 구체적 방법론 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 연구 에이전트형 AI 시스템에서는 복잡한 연구 과제를 해결하기 위해 여러 특화 에이전트가 협업하는 멀티에이전트 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 구조가 주로 채택됩니다. 대표적으로 Anthropic의 멀티에이전트 연구 시스템은 Opus 4 리드 에이전트가 Sonnet 4 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 서브에이전트들을 조율하여, 각 서브에이전트가 실시간 데이터 수집, 통계 분석, 전문가 의견 요약 등 역할을 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 분담하고, 리드 에이전트가 결과를 통합·검증하는 방식으로 동작합니다. 이 시스템은 단일 에이전트 대비 90% 이상의 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 성능 향상을 보였으며, 컨텍스트 엔지니어링이 성능 차이의 80%를 설명하는 핵심 요인으로 분석되었습니다[1]. <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 구체적 방법론으로는 ① 각 에이전트의 역할과 책임을 명확히 정의하고, ② 시스템 전체의 결정 및 가정(예: 분석 범위, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 데이터 기준)을 공유 메모리나 프롬프트에 명시적으로 삽입하며, ③ 이전 단계의 핵심 결정만을 요약·전달하여 정보 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 과부하를 방지합니다. 또한, 에이전트 간 충돌 방지를 위해 일관된 포맷, 스타일, 인용 규칙 등을 컨텍스트에 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 포함시키고, 중복 작업이나 모순된 결과가 발생하지 않도록 동적 메모리 참조 및 역할 기반 정보 격리를 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 적용합니다[1][4][5]. <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ## 3. 파일시스템 기반 컨텍스트 관리 시스템에서의 Context Engineering 적용 사례와 특징 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 파일시스템 기반 컨텍스트 관리 시스템은 에이전트가 외부 메모리(파일, DB, shared memory 등)에 정보를 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 저장·조회함으로써, 컨텍스트 윈도우 한계를 극복하고 장기적 일관성을 유지하는 데 중점을 둡니다. 예를 들어, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 멀티에이전트 시스템에서 각 에이전트가 자신의 결정, 중간 산출물, 외부 데이터 등을 파일시스템에 기록하고, 필요 시 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 유사도 검색(RAG)이나 메타데이터 필터링을 통해 관련 정보를 동적으로 불러와 컨텍스트로 활용합니다[4]. <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 이러한 구조는 ① 정보의 영속성(장기 기억), ② 역할별/에이전트별 컨텍스트 격리, ③ 동적 정보 선택 및 압축, ④ 시스템 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 전체의 투명성(감사·재현성) 등에서 강점을 가집니다. 실제로 Vellum, LangChain 등 최신 플랫폼은 외부 메모리 연동, <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 프롬프트 체이닝, 컨텍스트 필터링, 버전 관리 등 파일시스템 기반 컨텍스트 엔지니어링을 위한 다양한 도구를 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 제공하고 있습니다[4]. <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ## 4. 최신 연구 동향 및 실제 적용 예시(2022~2024년 기준) <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 2022~2024년 사이, 컨텍스트 엔지니어링은 멀티에이전트 시스템의 신뢰성, 확장성, 비용 효율성 확보의 핵심 기술로 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 부상하였습니다. Anthropic, Cognition, Vellum 등은 멀티에이전트 시스템에서의 컨텍스트 결손이 실패의 주요 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 원인임을 지적하며, 컨텍스트 설계·관리 전략의 중요성을 강조합니다[1][3][5][6]. <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 실제 적용 예시로는 ① Anthropic의 멀티에이전트 연구 시스템(리드/서브에이전트 구조, 공유 메모리 기반 컨텍스트 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 관리), ② Vellum의 Corpus-in-Context, RAG 파이프라인, 프롬프트 버전 관리, 외부 메모리 연동, ③ LangChain의 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 컨텍스트 엔지니어링 프레임워크(정보 저장/선택/압축/격리), ④ Cognition의 실패 사례 분석(컨텍스트 결손, 역할 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 충돌, 정보 과부하 등)이 있습니다. 또한, 최근 연구들은 토큰 사용량 최적화, 에이전트 간 충돌 방지, 동적 에이전트 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 라우팅, 시스템 감사·재현성 확보 등 실무적 과제에 대한 구체적 솔루션을 제시하고 있습니다[1][4][5][6]. <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> ## 5. 참고문헌 및 인용 정리 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> [1] Anthropic. (2025). How We Built Our Multi-Agent Research System. <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> https://www.anthropic.com/engineering/built-multi-agent-research-system <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> [2] Kubiya. (2024). Single Agent vs Multi Agent AI: Which Is Better? <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> https://www.kubiya.ai/blog/single-agent-vs-multi-agent-in-ai <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> [3] Cognition AI. (2024). Don’t Build Multi-Agents. https://cognition.ai/blog/dont-build-multi-agents <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> [4] LangChain. (2024). Context Engineering for Agents. <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> https://blog.langchain.com/context-engineering-for-agents/ <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> [5] Anna A Grigoryan (2025). Why Do Multi-Agent LLM Systems Fail? <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> https://thegrigorian.medium.com/why-do-multi-agent-llm-systems-fail-14dc34e0f3cb <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> [6] Arxiv. (2025). Why Do Multi-Agent LLM Systems Fail? https://arxiv.org/abs/2503.13657 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> --- <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 모든 요구사항(정의, 적용 사례, 파일시스템 기반 사례, 최신 동향, 인용, 한국어 작성)이 충족되었습니다. 추가 <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span> 설명이나 특정 사례의 심화가 필요하시면 말씀해 주세요. <span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">│</span>\n",
|
||
"<span style=\"color: #c0c0c0; text-decoration-color: #c0c0c0\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
|
||
"</pre>\n"
|
||
],
|
||
"text/plain": [
|
||
"\u001b[37m╭─\u001b[0m\u001b[37m─────────────────────────────────────────────────────\u001b[0m\u001b[37m AI \u001b[0m\u001b[37m──────────────────────────────────────────────────────\u001b[0m\u001b[37m─╮\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 요청하신 \"AI 에이전트 구축에 사용되는 컨텍스트 엔지니어링 접근법\"에 대한 최신 연구와 실제 사례를 종합하여, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 아래와 같이 보고서를 작성하였습니다. \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m --- \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m # AI 에이전트 구축을 위한 컨텍스트 엔지니어링 접근법 연구 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ## 1. Context Engineering이란 무엇이며, 주요 개념과 원리는 무엇인가? \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 컨텍스트 엔지니어링(Context Engineering)은 AI 에이전트, 특히 멀티에이전트 시스템에서 각 에이전트가 최적의 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 의사결정을 내릴 수 있도록 필요한 정보(컨텍스트)를 설계, 관리, 전달하는 일련의 전략과 기술을 의미합니다. 이는 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 단순히 프롬프트를 설계하는 수준을 넘어, 시스템 전체의 집단적 지식, 이전 결정, 도구 피드백, 외부 데이터 등 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 다양한 맥락 정보를 동적으로 조합·제공함으로써, 에이전트 간 협업의 정확성과 일관성을 극대화하는 것이 핵심 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 원리입니다[1][4]. \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 컨텍스트의 유형은 크게 ① 명령(프롬프트, 규칙, 예시), ② 지식(도메인 정보, 검색 데이터, 메모리), ③ 도구 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 피드백(API 결과, 런타임 신호)로 구분됩니다. 효과적인 컨텍스트 엔지니어링을 위해서는 정보의 저장(외부 메모리, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 파일시스템), 선택(RAG, 유사도 검색), 압축(요약, 필터링), 격리(역할별 컨텍스트 분리) 등 다양한 전략이 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 활용됩니다[4]. \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ## 2. 연구 에이전트형 AI 시스템(예: LLM 기반 연구 에이전트)에서의 Context Engineering 적용 사례와 구체적 방법론 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 연구 에이전트형 AI 시스템에서는 복잡한 연구 과제를 해결하기 위해 여러 특화 에이전트가 협업하는 멀티에이전트 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 구조가 주로 채택됩니다. 대표적으로 Anthropic의 멀티에이전트 연구 시스템은 Opus 4 리드 에이전트가 Sonnet 4 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 서브에이전트들을 조율하여, 각 서브에이전트가 실시간 데이터 수집, 통계 분석, 전문가 의견 요약 등 역할을 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 분담하고, 리드 에이전트가 결과를 통합·검증하는 방식으로 동작합니다. 이 시스템은 단일 에이전트 대비 90% 이상의 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 성능 향상을 보였으며, 컨텍스트 엔지니어링이 성능 차이의 80%를 설명하는 핵심 요인으로 분석되었습니다[1]. \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 구체적 방법론으로는 ① 각 에이전트의 역할과 책임을 명확히 정의하고, ② 시스템 전체의 결정 및 가정(예: 분석 범위, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 데이터 기준)을 공유 메모리나 프롬프트에 명시적으로 삽입하며, ③ 이전 단계의 핵심 결정만을 요약·전달하여 정보 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 과부하를 방지합니다. 또한, 에이전트 간 충돌 방지를 위해 일관된 포맷, 스타일, 인용 규칙 등을 컨텍스트에 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 포함시키고, 중복 작업이나 모순된 결과가 발생하지 않도록 동적 메모리 참조 및 역할 기반 정보 격리를 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 적용합니다[1][4][5]. \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ## 3. 파일시스템 기반 컨텍스트 관리 시스템에서의 Context Engineering 적용 사례와 특징 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 파일시스템 기반 컨텍스트 관리 시스템은 에이전트가 외부 메모리(파일, DB, shared memory 등)에 정보를 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 저장·조회함으로써, 컨텍스트 윈도우 한계를 극복하고 장기적 일관성을 유지하는 데 중점을 둡니다. 예를 들어, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 멀티에이전트 시스템에서 각 에이전트가 자신의 결정, 중간 산출물, 외부 데이터 등을 파일시스템에 기록하고, 필요 시 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 유사도 검색(RAG)이나 메타데이터 필터링을 통해 관련 정보를 동적으로 불러와 컨텍스트로 활용합니다[4]. \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 이러한 구조는 ① 정보의 영속성(장기 기억), ② 역할별/에이전트별 컨텍스트 격리, ③ 동적 정보 선택 및 압축, ④ 시스템 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 전체의 투명성(감사·재현성) 등에서 강점을 가집니다. 실제로 Vellum, LangChain 등 최신 플랫폼은 외부 메모리 연동, \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 프롬프트 체이닝, 컨텍스트 필터링, 버전 관리 등 파일시스템 기반 컨텍스트 엔지니어링을 위한 다양한 도구를 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 제공하고 있습니다[4]. \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ## 4. 최신 연구 동향 및 실제 적용 예시(2022~2024년 기준) \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 2022~2024년 사이, 컨텍스트 엔지니어링은 멀티에이전트 시스템의 신뢰성, 확장성, 비용 효율성 확보의 핵심 기술로 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 부상하였습니다. Anthropic, Cognition, Vellum 등은 멀티에이전트 시스템에서의 컨텍스트 결손이 실패의 주요 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 원인임을 지적하며, 컨텍스트 설계·관리 전략의 중요성을 강조합니다[1][3][5][6]. \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 실제 적용 예시로는 ① Anthropic의 멀티에이전트 연구 시스템(리드/서브에이전트 구조, 공유 메모리 기반 컨텍스트 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 관리), ② Vellum의 Corpus-in-Context, RAG 파이프라인, 프롬프트 버전 관리, 외부 메모리 연동, ③ LangChain의 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 컨텍스트 엔지니어링 프레임워크(정보 저장/선택/압축/격리), ④ Cognition의 실패 사례 분석(컨텍스트 결손, 역할 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 충돌, 정보 과부하 등)이 있습니다. 또한, 최근 연구들은 토큰 사용량 최적화, 에이전트 간 충돌 방지, 동적 에이전트 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 라우팅, 시스템 감사·재현성 확보 등 실무적 과제에 대한 구체적 솔루션을 제시하고 있습니다[1][4][5][6]. \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m ## 5. 참고문헌 및 인용 정리 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m [1] Anthropic. (2025). How We Built Our Multi-Agent Research System. \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m https://www.anthropic.com/engineering/built-multi-agent-research-system \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m [2] Kubiya. (2024). Single Agent vs Multi Agent AI: Which Is Better? \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m https://www.kubiya.ai/blog/single-agent-vs-multi-agent-in-ai \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m [3] Cognition AI. (2024). Don’t Build Multi-Agents. https://cognition.ai/blog/dont-build-multi-agents \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m [4] LangChain. (2024). Context Engineering for Agents. \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m https://blog.langchain.com/context-engineering-for-agents/ \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m [5] Anna A Grigoryan (2025). Why Do Multi-Agent LLM Systems Fail? \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m https://thegrigorian.medium.com/why-do-multi-agent-llm-systems-fail-14dc34e0f3cb \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m [6] Arxiv. (2025). Why Do Multi-Agent LLM Systems Fail? https://arxiv.org/abs/2503.13657 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m --- \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 모든 요구사항(정의, 적용 사례, 파일시스템 기반 사례, 최신 동향, 인용, 한국어 작성)이 충족되었습니다. 추가 \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m│\u001b[0m 설명이나 특정 사례의 심화가 필요하시면 말씀해 주세요. \u001b[37m│\u001b[0m\n",
|
||
"\u001b[37m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001b[0m\n"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
}
|
||
],
|
||
"source": [
|
||
"format_messages(result[\"messages\"])"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "73a94881",
|
||
"metadata": {},
|
||
"source": [
|
||
"## 수행 한 LangSmith 결과물\n",
|
||
"\n",
|
||
"> https://smith.langchain.com/public/68a0a3a8-d6b3-4c07-a8a3-445d8c6cf663/r"
|
||
]
|
||
}
|
||
],
|
||
"metadata": {
|
||
"kernelspec": {
|
||
"display_name": "deepagent-context-engineering (3.13.9)",
|
||
"language": "python",
|
||
"name": "python3"
|
||
},
|
||
"language_info": {
|
||
"codemirror_mode": {
|
||
"name": "ipython",
|
||
"version": 3
|
||
},
|
||
"file_extension": ".py",
|
||
"mimetype": "text/x-python",
|
||
"name": "python",
|
||
"nbconvert_exporter": "python",
|
||
"pygments_lexer": "ipython3",
|
||
"version": "3.13.9"
|
||
}
|
||
},
|
||
"nbformat": 4,
|
||
"nbformat_minor": 5
|
||
}
|