LLM 기반 Agent의 부상과 가능성: 서베이
The rise and potential of large language model based agents: a survey
TL;DR Highlight
한 종합 서베이가 LLM 기반 AI 에이전트의 구조, 능력, 응용, 한계를 단일 논문에서 정리했다.
Who Should Read
AI 에이전트 시스템을 설계하거나 도입을 검토 중인 백엔드/ML 엔지니어. LLM을 단순 챗봇이 아닌 자율 행동 시스템으로 발전시키고 싶은 개발자.
Core Mechanics
- LLM 에이전트는 크게 '인지(Perception) → 두뇌(Brain) → 행동(Action)' 세 모듈로 구성됨. 인지는 텍스트/이미지 등 입력, 두뇌는 LLM이 담당, 행동은 API 호출·코드 실행 등
- 메모리 구조를 단기(컨텍스트 윈도우), 장기(외부 벡터DB), 파라메트릭(모델 가중치에 내재) 세 가지로 분류해서 설계 가이드 제시
- 에이전트가 도구(Tool)를 쓰는 방식: 검색, 계산기, 코드 실행, 외부 API 호출로 LLM의 지식 한계를 보완
- 멀티 에이전트 시스템에서 협업·경쟁·역할분담 구조를 쓰면 단일 에이전트보다 복잡한 태스크 처리 가능
- 에이전트 적용 도메인: 소프트웨어 개발(코드 생성·디버깅), 과학 연구, 게임, 웹 자동화, 로보틱스 등 광범위
- 현재 에이전트의 주요 한계: 장기 플래닝 실패, 환각(hallucination), 보안 취약점(프롬프트 인젝션), 고비용 추론
Evidence
- 서베이 논문 특성상 단일 수치보다 광범위한 연구 정리가 목적 — 100개 이상의 LLM 에이전트 관련 논문을 체계적으로 분류·분석
- ReAct, Reflexion, AutoGPT, BabyAGI, HuggingGPT 등 주요 에이전트 프레임워크를 비교 분석하여 아키텍처 패턴 정리
- 에이전트 벤치마크로 ALFWorld, WebShop, HotpotQA 등 다양한 환경에서의 성능 트렌드를 비교
How to Apply
- 새 에이전트 시스템 설계 시, 논문의 Perception-Brain-Action 프레임을 청사진으로 쓰면 됨: 입력 모달리티 정의 → LLM 선택 → 사용할 도구 목록 확정 순서로 설계
- 장기 태스크를 에이전트에 맡기려면 단기 메모리(컨텍스트)만 쓰지 말고 외부 벡터DB를 장기 메모리로 연결하는 구조를 채택할 것
- 복잡한 워크플로우는 단일 에이전트 대신 역할을 나눈 멀티 에이전트(예: Planner 에이전트 + Executor 에이전트 + Critic 에이전트)로 분리하면 성능 향상 기대 가능
Code Example
# ReAct 패턴 기반 에이전트 프롬프트 예시 (논문에서 소개된 핵심 패턴)
SYSTEM_PROMPT = """
You are an agent. For each step, follow this format:
Thought: [현재 상황 분석 및 다음 행동 계획]
Action: [사용할 도구 이름]
Action Input: [도구에 전달할 입력값]
Observation: [도구 실행 결과 — 시스템이 채워줌]
위 사이클을 반복하다가 최종 답을 알면:
Final Answer: [최종 답변]
"""
# LangChain으로 간단 구현
from langchain.agents import initialize_agent, AgentType
from langchain.tools import Tool
from langchain.chat_models import ChatOpenAI
llm = ChatOpenAI(model="gpt-4", temperature=0)
tools = [
Tool(name="Search", func=search_fn, description="인터넷 검색이 필요할 때"),
Tool(name="Calculator", func=calc_fn, description="수학 계산이 필요할 때"),
Tool(name="CodeExecutor", func=exec_fn, description="Python 코드 실행이 필요할 때"),
]
agent = initialize_agent(
tools=tools,
llm=llm,
agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION,
verbose=True
)
result = agent.run("2024년 AI 에이전트 관련 논문 수를 조사하고 전년 대비 증가율을 계산해줘")Terminology
관련 논문
OpenKnowledge – Obsidian/Notion의 오픈소스 AI-first 대안
Git 기반 동기화와 Claude/Codex/Cursor 연동을 내장한 로컬 우선 마크다운 에디터로, AI 에이전트의 두 번째 뇌(LLM Wiki)로 활용할 수 있는 오픈소스 도구다.
Unfireable Safety Kernel: AI 에이전트를 위한 Execution-Time AI Alignment
AI 에이전트가 자신의 안전장치를 우회할 수 없도록, 에이전트 프로세스 바깥에 수학적으로 증명된 강제 통제 게이트를 배치하는 아키텍처
RubyLLM: 주요 AI 프로바이더를 모두 지원하는 Ruby 프레임워크
OpenAI, Claude, Gemini 등 주요 AI 프로바이더를 단일 인터페이스로 통합한 Ruby 프레임워크로, Rails 통합과 에이전트 기능까지 지원해 Ruby 개발자가 AI 기능을 빠르게 붙일 수 있다.
Qwen-AgentWorld: 범용 에이전트를 위한 Language World Model
Alibaba Qwen 팀이 AI 에이전트가 행동 결과를 미리 시뮬레이션할 수 있는 'Language World Model'을 공개했다. 에이전트 훈련과 실행 경로 검증에 새로운 패러다임을 제시하는 연구다.
SHERLOC: Code Repair Agent를 위한 구조화된 Diagnostic Localization 프레임워크
버그 위치만 알려주는 게 아니라 '왜, 어떻게 고쳐야 하는지'까지 진단 리포트를 생성해서 코드 수정 에이전트의 성능을 높이는 training-free 프레임워크
peerd – 브라우저에서 완전히 실행되는 AI Agent Harness
백엔드 서버 없이 Chrome/Firefox 확장 프로그램으로만 동작하는 AI 에이전트 실행 환경으로, 브라우저 탭을 직접 조작하고 WASM Linux VM까지 구동할 수 있어 프라이버시와 보안을 동시에 챙길 수 있다.