Об этом проекте

LLM Gamebook — это фреймворк для создания интерактивных историй, в которых повествование генерируется большими языковыми моделями (LLM) при соблюдении структурированного графа сюжетных путей. Он использует архитектуру monorepo, состоящую из бэкенда на 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 на фронтенде.