AI Agent 노드 — 자율적으로 판단하는 워크플로우
Basic LLM Chain은 "시킨 것만 한다." AI Agent는 스스로 판단하여 도구를 선택하고 실행한다. 이것이 자동화의 진정한 미래다.
LLM Chain vs AI Agent
| 특성 | Basic LLM Chain | AI Agent |
|---|---|---|
| 동작 방식 | 프롬프트 → 응답 (1회) | 추론 → 도구 사용 → 추론 (반복) |
| 도구 사용 | ❌ | ✅ (검색, 계산, API 호출...) |
| 메모리 | ❌ | ✅ (대화 이력 기억) |
| 자율성 | 낮음 | 높음 |
| 비용 | 낮음 | 높음 (여러 번 추론) |
| 적합한 작업 | 요약, 번역, 분류 | 복잡한 질의응답, 조사, 분석 |
AI Agent의 동작 과정
사용자 질문: "서울의 오늘 날씨와 그에 맞는 옷차림을 추천해줘"
Agent 추론 1: "날씨 정보가 필요하다 → 날씨 API 도구 사용"
→ [Tool: Weather API 호출] → "서울, 15°C, 흐림"
Agent 추론 2: "15°C, 흐림에 맞는 옷차림을 추천해야 한다"
→ 최종 답변 생성
응답: "오늘 서울은 15°C, 흐린 날씨입니다. 얇은 재킷이나 가디건에
긴팔 셔츠를 추천합니다. 우산도 챙기세요!"
AI Agent 노드 아키텍처
┌──────────────┐
│ Chat Model │ (GPT-4o, Claude 등)
└──────┬───────┘
│
┌─────────┐ ┌──────┴───────┐ ┌──────────┐
│ Chat │──────▶ │ AI Agent │◀──────▶│ Memory │
│ Trigger │ │ Node │ │ Buffer │
└─────────┘ └──┬───┬───┬──┘ └──────────┘
│ │ │
┌─────┘ │ └─────┐
▼ ▼ ▼
┌────────┐ ┌────────┐ ┌────────┐
│ Tool 1 │ │ Tool 2 │ │ Tool 3 │
│(계산기)│ │(검색) │ │(DB조회)│
└────────┘ └────────┘ └────────┘
3가지 연결이 필요하다: 1. Chat Model: AI의 두뇌 (필수) 2. Tools: AI가 사용할 수 있는 도구들 (선택, 보통 1개 이상) 3. Memory: 대화 이력 저장 (선택)
Agent 설정하기
Step 1: AI Agent 노드 추가
Tab→ "AI Agent" 검색 → 추가- Agent Type 선택:
| Agent Type | 설명 |
|---|---|
| Conversational Agent | 대화형. 자연스러운 멀티턴 대화 |
| ReAct Agent | 추론-행동 반복. 복잡한 작업에 적합 |
| OpenAI Functions Agent | OpenAI Function Calling 활용 |
| Plan and Execute Agent | 계획 수립 → 순차 실행 |
Step 2: Chat Model 연결
AI Agent 노드의 Chat Model 입력에 모델 노드 연결:
[OpenAI Chat Model]
Model: gpt-4o
Temperature: 0.3
Step 3: System Message 설정
System Message:
당신은 유능한 비즈니스 분석 어시스턴트입니다.
사용자의 질문에 답하기 위해 주어진 도구를 적극 활용하세요.
답변은 한국어로, 간결하고 정확하게 제공하세요.
수치 데이터는 반드시 도구를 통해 확인한 후 답변하세요.
Tool 연결하기
도구(Tool)는 AI Agent가 자율적으로 선택하여 사용하는 기능이다.
내장 Tool 종류
| Tool | 설명 |
|---|---|
| Calculator | 수학 계산 |
| Code Tool | JavaScript/Python 코드 실행 |
| HTTP Request Tool | 외부 API 호출 |
| Vector Store Tool | 벡터 DB 검색 (RAG) |
| Workflow Tool | 다른 n8n 워크플로우 호출 |
| Wikipedia | 위키피디아 검색 |
| WolframAlpha | 과학/수학 계산 |
| SerpAPI | 웹 검색 |
HTTP Request Tool 설정
AI가 외부 API를 호출할 수 있게 하는 도구:
Name: weather_api
Description: 도시의 현재 날씨 정보를 조회합니다. 도시명을 영어로 입력하세요.
Method: GET
URL: https://api.openweathermap.org/data/2.5/weather?q={city}&appid=KEY&units=metric&lang=kr
Workflow Tool 설정
다른 n8n 워크플로우를 도구로 사용:
Name: customer_lookup
Description: 고객 ID로 고객 정보를 조회합니다. 고객 ID를 입력하세요.
Workflow: "고객 조회 워크플로우" (별도 워크플로우)
Memory 연결하기
Memory를 연결하면 AI Agent가 대화 이력을 기억한다.
Window Buffer Memory
가장 간단한 메모리. 최근 N개의 대화를 기억한다.
[Window Buffer Memory]
Context Window Length: 10 (최근 10개 대화)
PostgreSQL Chat Memory
대화 이력을 DB에 영구 저장. 세션 간 기억 유지.
[Postgres Chat Memory]
Session ID: {{ $json.sessionId }}
Table Name: chat_history
실전: 사내 질의응답 에이전트
[Chat Trigger]
→ [AI Agent]
├── Chat Model: GPT-4o
├── Tools:
│ ├── [HTTP Request: HR API (휴가, 급여 조회)]
│ ├── [HTTP Request: IT API (시스템 상태)]
│ └── [Workflow Tool: 회의실 예약]
└── Memory: PostgreSQL Chat Memory
System Message
당신은 회사의 AI 어시스턴트 "헬피"입니다.
역할:
- 사내 시스템 정보 조회 (휴가, 급여, IT 시스템)
- 회의실 예약 대행
- 사내 규정 안내
규칙:
1. 개인 급여 정보는 본인 확인 후에만 제공
2. 확인되지 않은 정보는 "확인 후 안내드리겠습니다"로 응답
3. 도구로 확인할 수 있는 정보는 반드시 도구를 사용하여 최신 데이터 제공
대화 예시
사용자: 내 남은 연차가 몇 일이야?
Agent: [HR API 호출: 사원번호로 조회]
Agent: 홍길동님의 남은 연차는 8일입니다. (전체 15일 중 7일 사용)
사용자: 내일 오후 2시에 4명이 회의할 건데 회의실 예약해줘
Agent: [회의실 예약 워크플로우 호출: 내일 14:00, 4명]
Agent: 내일(4/30) 오후 2시, 4인용 회의실 B가 예약되었습니다.
장소: 3층 B회의실, 예약번호: MTG-2026-0430-01
Agent 디버깅
AI Agent는 여러 단계를 거치므로 디버깅이 중요하다.
실행 로그 확인
AI Agent 노드의 출력에서 전체 추론 과정을 확인할 수 있다:
Step 1: Thinking "날씨 정보가 필요하다"
Step 2: Tool Call: weather_api(city="Seoul")
Step 3: Tool Result: {"temp": 15, "description": "흐림"}
Step 4: Thinking "15도 흐림에 맞는 옷차림을 추천"
Step 5: Final Answer: "..."
흔한 문제
| 문제 | 원인 | 해결 |
|---|---|---|
| 도구를 사용하지 않음 | Tool Description이 불명확 | 더 구체적인 설명 작성 |
| 잘못된 도구 선택 | 도구 간 역할이 겹침 | 각 도구의 용도를 명확히 구분 |
| 무한 루프 | Agent가 같은 도구를 반복 호출 | Max Iterations 설정 (기본 10) |
| 느린 응답 | 여러 도구를 순차 호출 | 필요한 도구만 연결 |
📝 정리
- [x] AI Agent: LLM이 도구를 자율적으로 선택·실행하는 지능형 노드
- [x] 3대 구성요소: Chat Model(두뇌) + Tools(도구) + Memory(기억)
- [x] Agent Type: Conversational(대화), ReAct(추론-행동), Plan-Execute(계획)
- [x] Tools: HTTP Request, Code, Workflow, Vector Store 등 다양한 도구 연결
- [x] Memory: Window Buffer(단기), PostgreSQL(영구) 대화 이력 저장
다음 편 예고
23편: Vector Store & RAG — AI에 회사 지식을 가르치자
LLM은 학습 데이터 이후의 정보를 모른다. RAG로 내 문서를 벡터화하여 AI가 검색·참조하게 하자.