핵심 요약
LLM 기반 NPC는 대화가 길어질수록 특정 문구나 행동을 반복하는 '모드 붕괴' 현상을 보이며 몰입감을 해친다. 이는 모델이 훈련 과정에서 성공적이었던 패턴에 고착되고 세션 전체의 발화 이력을 관리하지 못하기 때문에 발생한다. 이를 해결하기 위해 저자는 특정 문구 사용 횟수를 제한하는 '노벨티 가드(Novelty Guards)'와 상황별 구체적 행동을 정의한 '액션 어휘집' 시스템을 제안한다. 또한 프롬프트의 마지막 부분에 제약 사항을 배치하는 '최신성 편향' 원리를 적용하여 반복률을 60%에서 10% 수준으로 낮추는 성과를 거두었다.
배경
LLM 추론 및 토큰 예측 원리에 대한 이해, 기본적인 프롬프트 엔지니어링 지식, JSON 기반의 시스템 설정 구조 이해
대상 독자
LLM 기반 게임 에이전트 및 NPC 대화 시스템을 개발하는 엔지니어와 작가
의미 / 영향
이 기술은 LLM NPC의 고질적인 문제인 반복성을 해결하여 게임의 몰입도를 획기적으로 높일 수 있다. 특히 고가의 모델을 재학습시키지 않고도 시스템적인 가이드와 프롬프트 구조 최적화만으로 캐릭터의 생동감을 제어할 수 있다는 점에서 실용성이 매우 높다.
섹션별 상세
{
"novelty_rules": {
"catchphrase_limits": {
"let me tell you": 4,
"my good friend": 5,
"back in my day": 4
},
"action_limits": {
"takes a swig": 3,
"takes a long": 4,
"eyes unfocused": 3
},
"variety_prompts": [
"Note: Vary your approach this turn. Your catchphrases work best when they land occasionally, not constantly.",
"Note: Show a different facet of your character here.",
"Note: Find a fresh angle for this moment."
]
}
}특정 문구와 행동의 사용 횟수를 제한하고 한도 초과 시 다양성을 유도하는 노벨티 가드 설정 예시
{
"action_vocabulary": {
"drunk": [
"(sloshing whiskey onto the carpet, not noticing)",
"(gripping the armrest to steady himself)",
"(squinting as if the room is too bright)",
"(fumbling with his glass, nearly dropping it)"
],
"defensive": [
"(straightening his tie with trembling fingers)",
"(stepping back, bumping into the sideboard)",
"(glancing toward the door)"
]
}
}캐릭터의 감정 상태에 따라 선택할 수 있는 구체적인 행동 묘사 어휘집 구성
실무 Takeaway
- LLM NPC의 반복 문제를 해결하려면 단순한 프롬프트 수정을 넘어 문구 사용 횟수를 추적하고 제한하는 시스템적 노벨티 가드를 구축해야 한다.
- 모델이 일반적인 묘사를 반복하지 않도록 감정 상태별로 구체적인 행동 리스트를 제공하는 액션 어휘집을 활용하여 묘사의 밀도를 높여야 한다.
- 프롬프트 엔지니어링 시 핵심 제약 사항을 가장 마지막에 배치하여 모델의 최신성 편향을 활용함으로써 지시 이행률을 극대화할 수 있다.
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.