"알아서 해줘" — 에이전트가 나온 이유
챗봇에게 "올해 1분기 매출 보고서를 분석해서 PPT 초안 만들어줘"라고 하면 어떻게 될까요?
일반 LLM은 이렇게 말합니다: "파일을 직접 보내주시겠어요?"
에이전트는 이렇게 합니다:
- 보고서 파일 시스템에서 검색
- PDF 파싱 도구 실행
- 수치 분석
- 슬라이드 구조 계획
- PPT 파일 생성
- 결과 보고
목표만 주면 스스로 계획하고 실행합니다.
LLM vs 에이전트
| 구분 | 일반 LLM | AI 에이전트 |
|---|---|---|
| 입력 | 질문/요청 | 목표 |
| 실행 | 단일 응답 | 다단계 루프 |
| 도구 사용 | 없음 | 검색·코드·API 등 |
| 기억 | 현재 대화만 | 단기+장기 메모리 |
| 자율성 | 낮음 | 높음 |
에이전트의 4가지 핵심 구성 요소
1. 도구 (Tools)
에이전트가 외부 세계와 상호작용하는 수단입니다.
| 도구 유형 | 예시 |
|---|---|
| 검색 | 웹 검색, 벡터 DB 검색 |
| 실행 | Python 코드 실행, 터미널 |
| API | 날씨, 주식, 소셜미디어 |
| 파일 | 읽기, 쓰기, 파싱 |
| 통신 | 이메일, 슬랙 메시지 |
2. 메모리 (Memory)
3. 계획 (Planning)
복잡한 목표를 실행 가능한 단계로 분해합니다.
목표: "경쟁사 3곳의 가격 정책을 분석해서 보고서 작성"
계획:
1. 경쟁사 A 웹사이트 검색 및 가격 정보 수집
2. 경쟁사 B 웹사이트 검색 및 가격 정보 수집
3. 경쟁사 C 웹사이트 검색 및 가격 정보 수집
4. 수집된 데이터 비교 분석
5. 마크다운 보고서 작성
6. 결과 파일 저장
에이전트 실행 패턴: ReAct
에이전트의 가장 기본적인 실행 루프는 ReAct (Reason + Act) 패턴입니다.
에이전트 유형
단일 에이전트
하나의 에이전트가 모든 도구를 직접 사용합니다. 단순한 작업에 적합합니다.
멀티 에이전트
복잡한 작업을 역할별로 분리합니다. 각 에이전트가 전문화됩니다.
에이전트가 적합한 상황
에이전트가 필요한 경우:
- 웹 리서치 후 보고서 작성
- 코드 작성 → 실행 → 디버깅 반복
- 여러 API를 조합하는 자동화 워크플로우
- 조건에 따라 다른 경로를 선택하는 처리
에이전트가 불필요한 경우:
- 단순 질의응답
- 텍스트 요약/번역
- 형식이 고정된 데이터 변환
에이전트의 한계와 주의사항
정리
| 개념 | 내용 |
|---|---|
| AI 에이전트 | 목표를 받아 스스로 계획·실행하는 LLM 시스템 |
| 도구 | 에이전트가 외부와 상호작용하는 수단 |
| 메모리 | 단기(컨텍스트)·장기(벡터 DB) 정보 저장 |
| ReAct | 생각→행동→관찰 반복 루프 패턴 |
| 멀티 에이전트 | 역할별로 분리된 에이전트 협업 구조 |
다음 편에서는 LangChain/LangGraph 기초 — 파이썬으로 에이전트를 실제로 구현하는 프레임워크를 배웁니다.