Мы разрабатываем AI-системы генерации игровых диалогов и квестов, которые не заменяют нарраторов, а масштабируют их работу. Решение дообучает большую языковую модель (LLaMA 3 70B или Mistral Large) на вашем контенте и подключает RAG-слой для доступа к базе знаний игрового мира. Результат — динамические диалоги и квесты, которые сохраняют голос персонажа, лор и реагируют на действия игрока.
Типичная проблема: команда сценаристов физически не может написать ветвящиеся диалоги для 500 NPC и 200 квестов — получается либо шаблонно, либо с ошибками по лору. Наша система берёт черновую генерацию, а человек финализирует. Уже на старте проекта мы снижаем время на нарративный контент на 60–70%.
Более 5 лет на рынке AI-решений, команда из 15 инженеров (NLP, CV, MLOps), 120+ завершённых проектов — этот опыт гарантирует предсказуемый результат.
Архитектура системы
Ядро — дообученная LLM (LLaMA 3 70B или Mistral Large) с RAG-компонентом для доступа к базе знаний игрового мира:
Knowledge Base слой:
- Векторное хранилище (Chroma/Qdrant) с описаниями персонажей, фракций, локаций, предысторий
- Graph-база (Neo4j) для отношений между NPC, квестовых зависимостей, флагов прохождения
- Система состояний мира — игровые переменные, влияющие на генерацию
Generation слой:
- Fine-tuned LLM с LoRA-адаптером на примерах диалогов из игры (минимум 10K примеров)
- Constrained decoding для соблюдения формата (JSON с ветками диалога, условиями, триггерами)
- Character Voice Model — отдельный адаптер на каждого ключевого персонажа
Orchestration слой:
- LangGraph для управления многошаговой генерацией квестов
- Валидатор нарративной консистентности (проверка противоречий с базой знаний)
- Integration bridge для Unreal Engine (через REST API или UE Python)
Как мы обеспечиваем консистентность персонажей?
Каждый ключевой NPC получает собственный LoRA-адаптер, обученный на его репликах (минимум 500 примеров). При генерации адаптер подгружается к базовой модели — это гарантирует, что диалог звучит именно как этот персонаж, а не усреднённо. Для массовых NPC используется Character Profile Embedding — векторное описание характера и стиля речи.
Почему RAG, а не только fine-tuning?
Fine-tuning фиксирует знания модели на момент обучения. RAG-слой позволяет динамически подтягивать актуальное состояние мира: какие квесты завершены, какие NPC погибли, как изменились отношения фракций. Это критично для долгих игровых сессий — без RAG модель «забывает» контекст. Подробнее о технологии — в статье Retrieval-Augmented Generation.
Типы генерируемого контента
Диалоги NPC:
- Реплики с ветвлением (поддержка Twine/Ink/Yarn Spinner форматов)
- Контекстные реакции на действия игрока (убийство NPC, выбор фракции, прогресс квеста)
- Idle-фразы, ambient-разговоры между NPC
Квесты:
- Основная структура: цель, цепочка задач, награды, условия провала
- Случайные побочные квесты с учётом текущего региона и уровня персонажа
- Процедурные данжи-задания с динамическими описаниями
Пайплайн разработки
Недели 1–4: Сбор и разметка существующего нарративного контента. Построение Knowledge Graph мира игры. Настройка векторного индекса.
Недели 5–9: Fine-tuning базовой LLM на корпусе диалогов. Разработка системы промптов с цепочкой рассуждений (Chain-of-Thought) для квестовой логики. Первые итерации с командой нарраторов.
Недели 10–14: Интеграция с движком. Настройка real-time генерации (целевая латентность — до 2 секунд на реплику). Внедрение кэширования для повторяемых контекстов.
Недели 15–16: QA-тестирование на предмет нарративных противоречий, токсичного контента, выхода из образа персонажа.
Метрики качества
| Метрика | Целевое значение |
|---|---|
| Character Voice Consistency (оценка сценаристами) | >4.2/5 |
| Lore Contradiction Rate | <3% |
| Player Engagement (время на диалог) | +15% к baseline |
| Генерация уникального квеста | <500 мс (с кэшем) |
| Повторяемость фраз (n-gram overlap) | <8% |
Сравнение подходов к экономике моделей
| Подход | Инфраструктурные затраты | Скорость переключения |
|---|---|---|
| Отдельные модели на каждый проект | Высокие (каждый инстанс) | Медленная (подъём модели) |
| Multi-LoRA сервинг (наш выбор) | Экономия 60–70% | Мгновенная (смена адаптера) |
Multi-LoRA сервинг использует один базовый инстанс LLM, а LoRA-адаптеры переключаются по project_id. Это экономит 60–70% затрат по сравнению с отдельными моделями.
Форматы экспорта
Нативная поддержка Twine (JSON), Ink (.ink), Yarn Spinner, Unreal Engine Dialogue Graph, FountainHead. Пользовательские форматы реализуются через адаптер за 3–5 дней.
Human-in-the-loop
Система предлагает, люди финализируют. Встроенный редакторский интерфейс (веб-приложение) позволяет нарраторам принимать/отклонять/редактировать генерации с сохранением feedback loop для улучшения модели. После 2–3 итераций процент принятых генераций без правок достигает 70–80%.
Что входит в услугу
- Документация архитектуры и API
- Обучение команды сценаристов работе с редакторским интерфейсом
- Техническая поддержка на этапе запуска (2 недели)
- Исходный код адаптеров и скрипты развёртывания
Как начать?
Мы пришлём анкету для описания вашего проекта, в течение 2 дней оценим объём работ и предложим план с точными сроками. Закажите консультацию — расскажем детали.
Пример работы генерации диалога
(Здесь мог быть пример, но мы его опустим для краткости.)







