프로젝트 소개

LLM Gamebook은 구조화된 스토리 경로 그래프를 따르면서 대규모 언어 모델(LLM)이 서사를 생성하는 인터랙티브 스토리 제작 프레임워크입니다. 이 시스템은 FastAPI 백엔드와 React 프론트엔드로 구성된 모노레포 아키텍처를 활용합니다. 주요 기술 구성 요소는 다음과 같습니다: - StoryEngine 및 EngineManager: LLM 에이전트 상호작용, 메시지 기록 및 인스턴스 풀링을 처리합니다. - StoryContext 및 SessionState: 프로젝트 정의와 엔티티 특성을 관리하며, 그래프 노드 전이를 통해 플레이어의 진행 상황을 추적합니다. - MessageBus: 엔진 라이프사이클과 세션 이벤트를 관리하기 위한 비동기 pub/sub 시스템입니다. - ProjectManager: YAML 파일로부터 스토리 정의를 로드하는 기능을 담당합니다. 스토리는 YAML을 통해 정의되며, 개발자는 엔티티 유형, 그래프 기반 스토리 아크, 장소, 캐릭터, 그리고 LLM이 상태 전이를 트리거하기 위해 호출할 수 있는 도구 함수를 지정할 수 있습니다. 기술 스택으로는 백엔드에 FastAPI, SQLModel (aiosqlite), 도구 호출을 위한 Pydantic AI, 프롬프트 템플릿을 위한 Jinja2가 사용되었으며, 프론트엔드는 React 19, TypeScript, Mantine UI로 구축되었습니다.