본문으로 건너뛰기
r/LLMDevs조회 2

장기 실행 에이전트를 위한 상태 중심 아키텍처: 텍스트 컨텍스트에서 DB 변이로의 전환

긴 대화 맥락에서 AI의 일관성 결여를 해결하기 위해 LLM을 텍스트 생성기가 아닌 구조화된 데이터베이스 변이 도구로 활용하는 아키텍처를 제안한다.

실용적 조언

  • 중요도가 낮은 배경 로직이나 NPC 계획에는 Gemini 1.5 Flash 같은 빠르고 저렴한 모델을 사용하여 비용을 절감하라.
  • 상태 변경 시 전체 데이터를 다시 쓰지 말고 JSON Diff 형식을 사용하여 토큰 효율성을 높여라.
  • 사용자 대기 시간을 줄이기 위해 세계관 추론 단계는 최대한 병렬로 처리하라.

섹션별 상세

01
대화 기록(Transcript)을 진실의 원천으로 삼는 기존 방식의 한계를 지적했다. 수십 턴이 지나면 모델이 인벤토리를 잊거나 죽은 NPC를 살려내는 등 인과관계가 붕괴되는 현상이 발생한다. 이를 해결하기 위해 모든 정규 실행 상태를 PostgreSQL과 Prisma를 통해 구조화된 테이블 및 JSON 블롭 형태로 저장하여 관리한다.
02
단일 프롬프트 대신 전문화된 다중 에이전트 파이프라인을 구축했다. 시나리오 생성, 세계 시스템 추론, NPC 계획, 행동 결정, 서사 렌더링으로 역할을 분리하여 운영한다. 각 역할은 입력된 사용자 의도를 분석하여 상태 변경 사항을 계산하고, 최종적으로 서사 모델이 이 변경된 데이터를 바탕으로 묘사 텍스트를 생성하는 구조이다.
03
서사 텍스트 생성보다 상태 변경을 우선시하는 '선 상태 변경 후 서사' 원칙을 적용했다. 사용자의 행동이 입력되면 먼저 데이터베이스 트랜잭션을 통해 수치화된 상태(코인, 피로도 등)를 업데이트한다. 이후 업데이트된 DB 차분(Diff) 데이터를 서사 모델에 전달하여 발생한 사건을 설명하는 산문을 작성하게 함으로써 논리적 모순을 원천 차단한다.
04
아키텍처 도입에 따른 지연 시간(Latency)과 일관성 사이의 트레이드오프를 분석했다. 한 턴에 3~4번의 LLM 호출이 발생하여 지연 시간이 증가하지만, NPC 추론 등을 병렬화하고 UI 스트리밍을 활용하여 이를 완화했다. Gemini 1.5 Flash와 같은 경량 모델을 활용하여 비용과 속도 효율성을 높이는 전략을 병행한다.

용어 해설

슬라이딩 윈도우(Sliding Window)
LLM의 컨텍스트 제한 내에서 최신 대화 내용만 유지하고 오래된 내용은 삭제하는 방식이다. 대화가 길어지면 과거의 중요한 상태나 설정이 소실되어 일관성이 깨지는 문제가 발생한다.
상태 관리(State Management)
애플리케이션의 현재 데이터 상태를 체계적으로 저장하고 업데이트하는 프로세스이다. AI 에이전트 시스템에서 텍스트 대화 기록 대신 구조화된 데이터베이스를 통해 일관성을 유지하는 핵심 기법이다.
JSON 차분(JSON Diff)
두 JSON 객체 간의 변경 사항만을 추출한 데이터 형식이다. LLM이 전체 상태를 다시 생성하는 대신 변경된 부분만 출력하게 함으로써 토큰 사용량을 줄이고 데이터베이스 업데이트 효율을 높인다.

언급된 도구

PostgreSQL추천

구조화된 정규 상태 데이터 저장

Prisma추천

데이터베이스 ORM 및 상태 로드/잠금 관리

Gemini 1.5 Flash추천

배경 로직 및 NPC 계획을 위한 경량 추론 모델

OpenRouter중립

다양한 LLM 모델 접근 및 호출 관리

AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 04. 08.수집 2026. 04. 08.출처 타입 REDDIT

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.