Personalized Large Language Models 서베이: 진행 현황과 미래 방향
A Survey of Personalized Large Language Models: Progress and Future Directions
TL;DR Highlight
LLM을 개인화하는 세 가지 기술(Prompting, Adaptation, Alignment)을 체계적으로 정리한 종합 서베이.
Who Should Read
챗봇, 추천 시스템, 교육/헬스케어 AI에 개인화 기능을 붙이려는 ML 엔지니어나 AI 프로덕트 개발자. 특히 유저별 맞춤 응답 품질을 올리고 싶은데 어떤 접근법을 써야 할지 감을 못 잡는 상황에 딱 맞음.
Core Mechanics
- LLM 개인화 기술을 3단계로 분류: 입력 수준(Personalized Prompting), 모델 수준(Personalized Adaptation), 목적함수 수준(Personalized Alignment)으로 체계화
- Prompting 방식 4가지: 유저 프로필 요약 주입(Profile-Augmented), 메모리에서 관련 기록 검색(Retrieval-Augmented), 소프트 임베딩 주입(Soft-Fused), 개인화 전후 대조(Contrastive) - 각각 장단점이 다름
- Fine-tuning 기반 개인화는 'One PEFT(적은 파라미터만 학습하는 기법) All Users'(공유 어댑터)와 'One PEFT Per User'(유저별 어댑터)로 나뉘고, 후자는 성능은 좋지만 스토리지·프라이버시 비용이 큼
- Personalized Alignment는 RLHF를 다목적으로 확장한 MORLHF나 학습 없이 추론 시점에 여러 정책 모델을 합치는 방식(Weight Merging, Model Ensemble)으로 구현 가능
- 쿼리 타입을 Extraction(명시적 사실 추출), Abstraction(암묵적 선호 추론), Generalization(외부 지식 결합 생성) 3가지로 구분하면 어떤 기술을 쓸지 결정하기 쉬움
- 성능-프라이버시-효율의 삼각 트레이드오프가 핵심 병목: 강한 개인화 = 프라이버시 위험 or 높은 계산 비용, 세 가지 동시 최적화는 아직 미해결 연구 과제
Evidence
- LaMP 벤치마크 기준, 개인화 없는 기본 LLM 대비 RAG 기반 개인화 적용 시 ROUGE-L, F1 등 주요 지표에서 일관된 성능 향상 확인(논문 내 Table 7 다수 실험 결과 집계)
- PRISM 데이터셋: 75개국 1,500명 참가자의 선호도와 21개 LLM 응답을 매핑한 대규모 정렬 데이터셋 구축
- ALOE 데이터셋: 3,310개 다양한 유저 페르소나를 생성·확장해 개인화 alignment 학습 데이터 구성
- MULTIFACETED COLLECTION 데이터셋: 19만7천 개의 시스템 메시지로 다양한 유저 가치관 커버, 재학습 없이 유저별 선호 적응 가능성 검증
How to Apply
- 유저 데이터가 텍스트 히스토리(과거 리뷰, 대화)인 경우: Profile-Augmented Prompting(GPT-3.5/4로 유저 요약 생성 후 프롬프트에 주입)을 먼저 시도하고, 컨텍스트 길이 한계에 걸리면 Retrieval-Augmented(FAISS나 BM25로 관련 기록만 검색)로 전환
- 유저별 톤/스타일 차별화가 핵심인 글쓰기 보조 서비스라면: LLaMA-2-7B 기반 One PEFT Per User(LoRA) + OPPU 방식으로 글로벌 LoRA 먼저 학습 후 유저별 LoRA 추가 튜닝하는 2단계 파이프라인 적용
- 재학습 비용 없이 선호 다양성을 처리해야 하는 경우: 추론 시점에 여러 정책 모델을 유저 선호 가중치로 합치는 Personalized Soups 또는 MOD 방식 적용 - 새 유저가 와도 기존 모델 재학습 불필요
Code Example
# Profile-Augmented Prompting 예시 (OpenAI API 사용)
import openai
def build_user_profile_summary(user_history: list[str]) -> str:
"""유저 히스토리에서 프로필 요약 생성"""
history_text = "\n".join(user_history)
response = openai.chat.completions.create(
model="gpt-4o-mini",
messages=[
{"role": "system", "content": "다음 유저의 과거 활동을 분석해서 선호도, 관심사, 글쓰기 스타일을 3-5문장으로 요약하세요."},
{"role": "user", "content": f"유저 히스토리:\n{history_text}"}
]
)
return response.choices[0].message.content
def personalized_response(query: str, user_history: list[str]) -> str:
"""유저 프로필을 주입한 개인화 응답 생성"""
profile = build_user_profile_summary(user_history)
system_prompt = f"""당신은 개인화된 AI 어시스턴트입니다.
유저 프로필:
{profile}
위 프로필을 참고해서 유저의 스타일과 선호도에 맞게 응답하세요."""
response = openai.chat.completions.create(
model="gpt-4o-mini",
messages=[
{"role": "system", "content": system_prompt},
{"role": "user", "content": query}
]
)
return response.choices[0].message.content
# 사용 예시
user_history = [
"간결하고 기술적인 설명을 선호합니다.",
"Python과 데이터 분석에 관심이 많아요.",
"복잡한 개념을 코드 예시로 설명해주면 좋겠어요."
]
result = personalized_response("머신러닝 과적합이 뭔가요?", user_history)
print(result)Terminology
Related Resources
Original Abstract (Expand)
Large Language Models (LLMs) excel in handling general knowledge tasks, yet they struggle with user-specific personalization, such as understanding individual emotions, writing styles, and preferences. Personalized Large Language Models (PLLMs) tackle these challenges by leveraging individual user data, such as user profiles, historical dialogues, content, and interactions, to deliver responses that are contextually relevant and tailored to each user's specific needs. This is a highly valuable research topic, as PLLMs can significantly enhance user satisfaction and have broad applications in conversational agents, recommendation systems, emotion recognition, medical assistants, and more. This survey reviews recent advancements in PLLMs from three technical perspectives: prompting for personalized context (input level), finetuning for personalized adapters (model level), and alignment for personalized preferences (objective level). To provide deeper insights, we also discuss current limitations and outline several promising directions for future research. Updated information about this survey can be found at the https://github.com/JiahongLiu21/Awesome-Personalized-Large-Language-Models.