추천 및 검색을 위한 LLM Agent 서베이: 차세대 Information Retrieval을 향하여
A Survey of Large Language Model Empowered Agents for Recommendation and Search: Towards Next-Generation Information Retrieval
TL;DR Highlight
LLM Agent가 추천 시스템과 검색 엔진을 어떻게 바꾸는지 체계적으로 정리한 최초의 종합 서베이
Who Should Read
추천 시스템이나 검색 엔진에 LLM을 도입하려는 ML 엔지니어 및 백엔드 개발자. AI 에이전트 기반 IR 시스템 아키텍처를 설계하거나 공부하고 싶은 사람.
Core Mechanics
- LLM Agent를 추천/검색에 활용하는 역할을 크게 4가지로 분류: User Interaction(대화형 인터페이스), Representation Optimization(유저/아이템 표현 개선), System Integration(추천 시스템의 두뇌 역할), Environment Simulation(유저 시뮬레이터)
- 검색 시스템에서는 5가지 역할로 분류: Task Decomposer(복잡한 검색 작업 분해), Query Rewriter(쿼리 개선), Action Executor(도구 호출), Results Synthesizer(결과 요약), User Simulator(사용자 행동 시뮬레이션)
- LLM Agent가 실제 유저 없이도 추천/검색 알고리즘을 테스트할 수 있는 유저 시뮬레이터로 동작 가능 — A/B 테스트 비용과 실제 UX 저하 없이 평가 가능
- Chain-of-Thought(CoT, 단계별 추론 기법)와 긴 컨텍스트 윈도우를 활용해 '여행 계획'처럼 복잡한 멀티스텝 검색 작업을 서브태스크로 쪼개서 처리
- Embodied Agent(물리적/사이버 환경과 실시간 상호작용하는 에이전트)가 차세대 추천/검색 패러다임으로 부상 — GUI 조작, 앱 탐색, 온디바이스 개인화까지 가능
- Hallucination, Bias, 배포 비용, 개인화, 멀티모달 처리 등 아직 해결 안 된 주요 과제들을 정리하고 미래 연구 방향 제시
Evidence
- CompWoB 벤치마크 실험에서 GPT-3.5-turbo, GPT-4가 단순 웹 작업은 평균 94.0% 성공률이지만, 복합 태스크에서는 24.9%로 급락
- Agent4Rec은 MovieLens-1M 데이터셋으로 초기화한 1,000개의 LLM 에이전트를 생성해 추천 알고리즘 평가에 활용, 에이전트 피드백을 반복 학습 데이터로 사용
- USimAgent(검색 유저 행동 시뮬레이터)이 쿼리 생성에서 기존 방법 대비 우수한 성능을 보이고, 클릭/정지 행동 예측에서는 기존 방법과 유사한 수준 달성
- iEvaLM 프레임워크가 2개의 공개 CRS(대화형 추천 시스템) 데이터셋에서 기존 평가 방법론 대비 성능 향상을 달성하고 추천 해석 가능성 평가 차원 추가
How to Apply
- 기존 추천 시스템에 LLM Agent를 'System Integration' 레이어로 추가할 때, RecMind나 InteRecAgent 패턴처럼 기존 ID 기반 추천 모델은 도구(tool)로 유지하고 LLM이 자연어 이해와 플래닝만 담당하게 분리하면 전체 재설계 없이 도입 가능
- A/B 테스트 없이 추천/검색 알고리즘을 빠르게 평가하고 싶다면, Agent4Rec처럼 유저 프로필·메모리·행동 모듈을 가진 LLM 기반 유저 시뮬레이터를 구성해 알고리즘 검증 파이프라인에 투입
- 복잡한 검색 쿼리(예: '3박4일 유럽 여행 플래닝')를 처리할 때, Task Decomposer 패턴을 적용해 LLM이 목적지 선정 → 일정 → 항공/호텔 → 예산 계산 순으로 서브태스크를 자동 분해하고 각각 적절한 외부 API를 호출하도록 에이전트를 설계
Code Example
# InteRecAgent 스타일: LLM을 추천 시스템의 인터페이스로 사용하는 패턴 예시
from openai import OpenAI
client = OpenAI()
# 전통적 추천 모델은 도구로 등록
tools = [
{
"type": "function",
"function": {
"name": "get_recommendations",
"description": "ID 기반 협업 필터링 모델로 후보 아이템 추출",
"parameters": {
"type": "object",
"properties": {
"user_id": {"type": "string"},
"top_k": {"type": "integer", "default": 10}
},
"required": ["user_id"]
}
}
},
{
"type": "function",
"function": {
"name": "rerank_by_context",
"description": "현재 대화 컨텍스트를 반영해 후보 아이템 재순위",
"parameters": {
"type": "object",
"properties": {
"items": {"type": "array"},
"user_context": {"type": "string"}
},
"required": ["items", "user_context"]
}
}
}
]
def recommendation_agent(user_id: str, user_message: str, history: list):
"""LLM Agent가 추천 도구를 호출해 개인화 추천 생성"""
system_prompt = """당신은 개인화 추천 어시스턴트입니다.
사용자의 요청을 분석하고, 적절한 추천 도구를 호출해 최적의 추천 결과를 제공하세요.
필요하면 여러 도구를 순차적으로 호출해 결과를 개선하세요."""
messages = [{"role": "system", "content": system_prompt}]
messages.extend(history)
messages.append({"role": "user", "content": user_message})
response = client.chat.completions.create(
model="gpt-4",
messages=messages,
tools=tools,
tool_choice="auto"
)
return response
# 유저 시뮬레이터 패턴 (Agent4Rec 스타일)
user_simulator_prompt = """
당신은 다음 프로필을 가진 유저를 시뮬레이션합니다:
- 나이: 28세
- 선호 장르: SF, 스릴러
- 최근 시청: [인셉션, 인터스텔라, 테넷]
- 성향: 복잡한 스토리 선호, 로맨스 비선호
추천 시스템이 다음 영화를 추천했습니다: {recommended_items}
실제 유저처럼 반응하세요:
1. 클릭할 항목과 이유
2. 별점 (1-5)
3. 추가 피드백
"""Terminology
Related Resources
Original Abstract (Expand)
Information technology has profoundly altered the way humans interact with information. The vast amount of content created, shared, and disseminated online has made it increasingly difficult to access relevant information. Over the past two decades, recommender systems and search (collectively referred to as information retrieval systems) have evolved significantly to address these challenges. Recent advances in large language models (LLMs) have demonstrated capabilities that surpass human performance in various language-related tasks and exhibit general understanding, reasoning, and decision-making abilities. This paper explores the transformative potential of LLM agents in enhancing recommender and search systems. We discuss the motivations and roles of LLM agents, and establish a classification framework to elaborate on the existing research. We highlight the immense potential of LLM agents in addressing current challenges in recommendation and search, providing insights into future research directions. This paper is the first to systematically review and classify the research on LLM agents in these domains, offering a novel perspective on leveraging this advanced AI technology for information retrieval. To help understand the existing works, we list the existing papers on LLM agent based recommendation and search at this link: https://github.com/tsinghua-fib-lab/LLM-Agent-for-Recommendation-and-Search.