Промт для Дипсика, чтобы создать приключенческую новеллу, в которой играешь главного героя

В сети представлено множество попыток превратить языковые модели в полноценных мастеров подземелий, способных часами водить игрока по запутанным текстовым лабиринтам. Буквально десятилетие назад это было настоящей роскошью, доступной лишь завсегдатаям узкопрофильных форумов, но сейчас рядовой обыватель требует мгновенного глубокого погружения в интерактивный сюжет. И всё же многие энтузиасты раз за разом сталкиваются с тем, что нейросеть быстро теряет нить повествования, превращая колоритный самобытный мир в скучную мешанину из случайных событий. Но чтобы не ошибиться в настройке движка, нужно грамотно прописать стартовые условия, задав жёсткие рамки для искусственного интеллекта.

Все топовые нейросети в одном месте

Стартовая настройка

Системный блок прописывается первым. Ведь именно он имеет решающее значение для удержания контекста. К первой группе обязательных команд относится определение роли модели, где мы прямо указываем Дипсику его функцию беспристрастного гейм-мастера. Далее следует блок правил поведения, строго ограничивающий самовольные действия искусственного интеллекта за игрока. Отдельно стоит упомянуть механику инвентаря и здоровья, без которых любая приключенческая новелла быстро теряет смысл и превращается в обычный рассказ. Последним в списке идёт формат выдачи ответов, заставляющий алгоритм всегда завершать сообщение выбором действий для пользователя. Это удобно. Дело в том, что строгая структура не даёт модели скатиться в бесконечные пространные описания.

Многие считают, что писать команды лучше на русском, но на самом деле английский синтаксис алгоритм понимает гораздо глубже. Обязательно ли переводить весь лор? Вовсе нет. Вполне достаточно задать базовый скелет на английском, а в конце добавить команду общаться исключительно на великом и могучем. Выглядит впечатляюще, когда машина послушно генерирует атмосферный добротный текст, опираясь на невидимый жёсткий каркас. Базовый промт звучит примерно так:

«Act as a Text Adventure Game Engine. You are the Game Master, and I am the main character. Do not write dialogue or perform actions on my behalf. At the end of each response, provide 3 numbered options for my next action, and wait for my input. Always reply in Russian»

Разумеется, это лишь фундамент, на который предстоит нарастить сюжетную основу.

Нереальный визуал и кинематографичное видео в пару кликов 🎬

Нужен крутой концепт-арт, реалистичная анимация или профессиональный апскейл? Теперь у вас есть единый доступ к лучшим визуальным нейросетям планеты: Midjourney, Runway, Kling и Sora. Улучшайте качество готовых роликов до максимума с помощью встроенных ИИ-инструментов. Никаких сложных настроек, мощного ПК или зарубежных карт. Всё работает прямо в браузере или в Telegram-боте!

Откройте новые горизонты для творчества. Жмите на ссылку, регистрируйтесь и создавайте шедевры 👉 https://clck.ru/3RNCRL

Сеттинг: викторианская эпоха или киберпанк

С чего начинается выбор? С определения жанра и стартовых условий. Тяготеет современный игрок обычно к тёмному фэнтези или мрачному футуристическому будущему. Не стоит перегружать первый же запрос избыточными деталями вроде родословной троюродного брата антагониста (алгоритм всё равно это забудет через пару ходов). Лучше отказаться от наляпистости в пользу нескольких ярких штрихов. Механика внедрения лора работает довольно просто. Сначала мы скармливаем модели описание эпохи, затем обозначаем локацию, а уже после этого вводим главного героя. И вот тут всплывут первые нюансы, требующие щепетильного подхода.

А вот для внедрения сюжета стоит использовать отдельное сообщение, продолжая начатый диалог. Настоящий кладезь для любителей детективов — это промт следующего содержания.

«Сеттинг: викторианский Лондон в стиле стимпанк. Главный герой — опальный детектив с механической рукой, потерявший память. Твоя задача — описать грязную подворотню, где герой приходит в себя, и дать ему первую зацепку в виде обрывка газеты. Жди моих действий»

Зрелище удручающее, когда машина забывает о травме персонажа, поэтому такие детали нужно вшивать прямо в свод правил. Да и самим пользователям гораздо комфортнее, когда изюминка персонажа регулярно обыгрывается в тексте.

Стоит ли усложнять правила?

Задача не из лёгких. Конечно, хочется сразу добавить сложную систему прокачки навыков, однако излишняя математика сильно бьёт по бюджету токенов. Не стоит забывать, что контекстное окно не безгранично. С воздухообменом дело обстоит сложнее — пардон, с памятью модели. Для обхода этого ограничения опытные промпт-инженеры используют инструментальный подход. Контекст, сжатый до коротких тегов, внедрённый в каждое системное сообщение, подкреплённый постоянными напоминаниями о статусе героя, спасает ситуацию от логического краха. К слову, львиная доля ошибок возникает именно из-за попыток заставить Дипсик самостоятельно считать очки опыта. Тем более, что текстовые модели вообще плохо справляются с математическими махинациями.

Хотя и существуют способы заставить искусственный интеллект вести статистику, но они требуют скрупулёзного подхода. Сложно ли настроить инвентарь? Да, но результат того стоит. Поможет в этом следующая конструкция на английском языке.

«Maintain a persistent Status Block at the top of every response. Format: [HP: 100/100 | Inventory: rusty knife, 3 coins | Location: Dark Woods]. Update this block based on my actions»

Впрочем, здесь таится ложка дёгтя. ИИ периодически пытается подкинуть вам несуществующие предметы просто ради красного словца. Главное — вовремя пресекать такие вольности корректирующими командами в скобках.

Поведение неигровых персонажей

Колоритный антураж. Именно он творит чудеса, заставляя пользователя часами просиживать перед монитором. В представлении многих бомонд текстовых квестов держится исключительно на ветвящихся нелинейных диалогах. Ну и, конечно же, картонные собеседники быстро рушат всю тщательно выстроенную атмосферу. Чтобы избежать этого, не скупитесь на поведенческие маркеры для второстепенных героев. Например, вместо банальной просьбы создать торговца стоит использовать более изысканный промт:

«Трактирщик по имени Гарл недолюбливает чужаков, отвечает односложно, постоянно протирает старую кружку и скрывает тайну о местном культе»

Окунуться в такой проработанный мир всегда приятнее.

Буквально на глазах сцена оживает. Если вернуться к истокам жанра, то текстовый квест Colossal Cave Adventure был написан программистом в тысяча девятьсот семьдесят шестом году, однако на этом дело не закончилось, и современные нейросети вывели интерактив на грандиозный уровень. Внедрить в игру случайные события сейчас можно за пару миллисекунд. Достаточно добавить в системный промт строчку:

«With a twenty percent probability, generate a random encounter (enemy, trap, or merchant) when moving to a new area»

Безусловно, вероятность можно подстраивать под свои нужды. Спасательный круг для тех, кто устал от линейности — это промпты на генерацию непредсказуемых препятствий на пути героя.

В чём кроются ошибки?

Сбитые настройки памяти выдают себя сразу. Как только суровый стражник на воротах внезапно обращается к вашему брутальному воину в женском роде, становится понятно, что контекст утерян. Естественно, винить в этом саму модель не стоит. Вся суть в том, что Дипсик, как и любая другая языковая система, со временем просто забывает начальные инструкции, если их не дублировать. Выручит короткий скрытый промпт в квадратных скобках перед вашим очередным ходом:

«[Reminder: The player is a male knight. We are currently inside a burning tavern. The goblin is still attacking]»

Это же правило касается и глобальных целей квеста. Ведь без регулярных напоминаний программа начинает генерировать бесконечную мыльную оперу без логического финала.

Все топовые нейросети в одном месте

С одной стороны, полная свобода действий манит, с другой — алгоритм часто подыгрывает пользователю, лишая игру какого-либо вызова. Привык обыватель побеждать по щелчку пальцев. Если вы напишете «Я убиваю огромного дракона одним ударом», не настроенная должным образом нейросеть радостно согласится и выдаст вам гору сокровищ. Но есть и минусы в таком подходе — полностью пропадает азарт. Поэтому в базовый промт стоит внести лепту хардкора:

«Do not let me succeed automatically. If I attempt a difficult or dangerous action, introduce obstacles, require a skill check, or describe the failure and its consequences»

Кошелёк разработчика от этого не станет легче, а вот нервные клетки игрока в битвах с виртуальными монстрами точно пострадают. Само собой, баланс сложности нужно подбирать индивидуально под свой стиль прохождения.

Создание мира: пошаговая структура

Процесс не сложный, но довольно кропотливый. Опытные мастера разбивают генерацию новеллы на строгую временную последовательность. Сперва мы отправляем модели системный блок с правилами игры, жёстко закрепляя за ней роль ведущего. Затем, дождавшись подтверждения, загружаем увесистый подробный документ с описанием политической карты вымышленного мира. После этого просим сгенерировать стартовую локацию, и только на самом последнем этапе вводим свои первые игровые действия. К тому же, такой подход позволяет на ранних этапах отловить галлюцинации нейросети. Натыкаешься на логическую дыру — просто переписываешь последний запрос, не ломая весь выстроенный фундамент. Подводные камни здесь кроются лишь в лимитах контекста, за которыми нужно пристально следить.

Тщательная настройка команд требует времени, но результат определённо компенсирует все затраченные усилия. Грамотно прописанный электронный мастер не только проведёт вас по мрачным холодным подземельям или футуристическим мегаполисам, но и заставит искренне поверить в реальность происходящего. Не бойтесь экспериментировать с переменными, усложнять характер неигровых персонажей и подкидывать алгоритму нестандартные задачки. Пусть каждый сгенерированный квест бросает настоящий вызов вашему интеллекту, а созданная приключенческая новелла запомнится надолго. Удачи в покорении неисследованных текстовых миров.