RAG 시스템 구축하기 — AI 에이전트: 메모리, 계획, 그리고 다단계 추론
요약
RAG 시스템을 넘어 메모리, 계획, 다단계 추론 능력을 갖춘 AI 에이전트 구축 방법을 다룹니다. ReAct, 장기 메모리, 계획-실행-평가 패턴을 단계별로 구현하며 에이전트의 복잡도를 높이는 과정을 설명합니다.
핵심 포인트
- ReAct 패턴을 통한 행동 전 추론 능력 구현
- 세션 간 정보를 유지하는 장기 메모리(Long-term Memory) 구축
- 계획-실행-평가 구조를 통한 고도화된 작업 수행
- 에이전트의 복잡도에 따른 단계적 패턴 적용 가이드
이전 기사에서 우리는 LLM에게 자율적으로 도구를 호출할 수 있는 능력을 부여했습니다. 이제 우리는 과거의 상호작용을 기억하고, 앞을 계획하며, 자신의 출력을 스스로 평가하는 제대로 된 **AI 에이전트 (AI Agent)**를 구축할 것입니다.
무엇이 무언가를 "에이전트"로 만드는가?
도구 사용 (Tool Use) 능력을 갖춘 LLM은 강력하지만 상태가 없는 (stateless) 특성을 가집니다 — 즉, 각 실행은 새로 시작됩니다. 에이전트는 세 가지 능력을 추가합니다:
도구 사용 (Tool Use)만 있을 때:
질문 → LLM 결정 → 도구 → 답변
(실행 간 메모리 없음)
...
우리는 복잡도 순서대로 세 가지 패턴을 구현할 것입니다:
| 파일 | 패턴 | 추가되는 기능 |
|---|---|---|
09_agent_basic.py | ReAct | 각 행동 전 추론 (Reasoning) |
| ... |
패턴 1: ReAct — 09_agent_basic.py
ReAct (Reasoning + Acting)는 기초적인 에이전트 패턴입니다. 각 행동을 취하기 전에, 에이전트는 다음에 무엇을 할지에 대해 명시적으로 추론합니다.
# 09_agent_basic.py
import psycopg2
from google import genai
...
python 09_agent_basic.py
# [Step 1]
# → list_categories({})
...
패턴 2: 장기 메모리 (Long-term Memory) — 10_agent_memory.py
이제 에이전트는 세션 전반에 걸쳐 당신에 대해 학습한 내용을 유지합니다.
# 10_agent_memory.py (주요 추가 사항)
import json
from pathlib import Path
...
각 세션이 끝난 후, agent_memory.json은 사실과 선호 사항들로 채워지며 커집니다. 다음 실행 시 이를 자동으로 불러옵니다.
패턴 3: 계획-실행-평가 (Plan-Execute-Evaluate) — 11_agent_planner.py
가장 구조화된 패턴입니다. 에이전트는 먼저 명시적인 계획을 세우고, 이를 단계별로 실행한 다음, 목표가 달성되었는지 평가합니다.
# 11_agent_planner.py
PLANNER_SYSTEM = """당신은 계획 에이전트입니다. 작업이 주어지면 단계별 계획을 생성하세요.
...
각 패턴을 사용하는 시점
| 패턴 (Pattern) | 최적의 용도 (Best for) | 오버헤드 (Overhead) |
|---|---|---|
| ReAct | 범용 에이전트 (General-purpose agents), 대부분의 사용 사례 | 낮음 (Low) |
| ... | ... | ... |
| ReAct로 시작하세요. 개인화가 필요할 때 메모리 (Memory)를 추가하세요. 작업의 복잡성이 요구될 때 계획 (Planning)을 추가하세요. |
우리가 구축한 것
06: LLM이 도구 (Tool) 사용 여부를 결정함
07: LLM이 설명을 읽고 여러 도구 사이에서 라우팅 (Routing)함
08: LLM이 여러 단계에 걸쳐 도구를 사용함 (에이전트 루프 (Agentic loop))
...
다음 기사에서는 한 걸음 더 나아가 우리의 검색 함수를 MCP (Model Context Protocol) 서버로 노출할 것입니다. 이를 통해 우리의 Python 스크립트뿐만 아니라 어떤 LLM에서도 재사용할 수 있게 만들 것입니다.
전체 소스 코드: github.com/qameqame/pgvector-tutorial
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기