Продолжение поста: https://joyreactor.cc/post/6295781
Выложил обновление программы. Новую версию и описание всех изменений можно взять тут:
https://github.com/Guljaca/RPG-AI-Assistant/releases
Новая логика описана тут:
https://github.com/Guljaca/RPG-AI-Assistant
Основные изменения:
- Теперь 10 шагов генерации (подробнее по ссылкам выше)
- Шаги можно отключать в настройках (требует тестирования)
- Генерация сообщения больше не прерывается, и не зависит от ошибок. Пользователь сам решает, что ему генерировать заново. Но если ошибка случилась, скрипт попытается прочитать сообщение нейронки и вытащить информацию другими способами. Даже если совсем ничего не выйдет, на последнем этапе нейронка придумает ответ на основе тех данных, что удалось собрать.
- Добавлена ассоциативная память: привязанная к каждому объекту и отправляемая в модель, только когда она этот проект запрашивает.
- Кратковременная память - сжатые предыдущие сообщения
- Шаги проверки сгенерированных сообщений на ошибки и логичную связанность с информацией.
- Шаг проверки сообщения игрока на обман системы, и не соответствие запроса имеющейся информации
- Теперь все промежуточные сообщения выводятся в Thinking, даже если модель не его не поддерживает.
Проверено на:
Qwen3.5-35b-a3b-uncensored-hauhaucs-aggressive
Qwen3.5-9B-Claude-4.6-OS-AV-H-UNCENSORED-THINK-D_AU-Q6_K-imat
Какую модель выбрать и как настроить:
QWEN3.5 9b (Часто ошибается с вызовом tools). Скорость генерации сообщения на VRAM ~4 минуты (очень примерная и зависит от сложности сцены и удачи проверок) на RTX 3060 12VRAM 32RAM. Но ошибки не критичны - скрипт попытается восстановить информацию последнего сообщения, если что. (tools позволяет модели отправлять результаты решения в программу.)
QWEN3.5 35b (Более стабильная работа). Скорость генерации сообщения (частично на RAM) 38 минут - Ух!
QWEN много думает. Попробуйте Gemma-4, если хочется увеличить скорость. Но у расцензуренной Gemma блокируется решим мышления, да и поддержка инструментов пока гораздо хуже.
gemma-4-26b-a4b-it-ultra-uncensored-heretic (Расцензуренная, а потому без Thinking) 4 минуты. Результат пока что-плохой. Лучше QWEN3.5 9b используйте. Он и думать может, и с инструментами работает, и расцензурен.
Советую в LM_studio включать K Cache Quantization Type 4Q_0 и V Cache Quantization Type 4Q_0. Это повысит скорость генерации в три раза. Ввод 16384 токенов (в LM_studio), вывод 4096 (в настройках программы).
Лучше загружать модель внутри LM_studio, и затем подключать в программе. Программа-то загрузит, но с какими настройками - мне не ведомо.
Ollama не поддерживается.
Идея программы и настройки:
Вся идея программы именно в сохранении логики повествования. Чтобы модель не писала чушь, не забывала о фактах, не смешивала персонажей, и обладала долговременной памятью. Скорость вывода сообщения не стоит в приоритете, но вы можете попробовать отключить промежуточные шаги для ее увеличения. В целом она больше подходит для того чтобы в фоне работать, пока вы другими делами занимаетесь.
Память настраивается в настройках. Числа указаны в количестве сообщений.
В режиме редактирования предметов есть редактор сессий - он нужен для того, чтобы пользователь сам вводил самые важные события истории, но полагаясь на автоматическую память. Она влияет только на выбранный чат.
Отладка:
В окно "Информация о промте" можно посмотреть промт, отправляемый модели на каждом этапе.
"Окно рассуждений" - тут можно читать процесс формирования решений. Если модель думает над чем-то слишком долго, вы можете отредактировать промты, чтобы увеличить скорость выдачи ответа.
В основном окне выводится отладочная информация для каждого этапа
В data/logs находятся логи каждого отправленного сообщения, где описано полное взаимодействие со скриптом.
В data/sessions находятся файлы сессий. Внутри них записана временная и локальная память. Открываются блокнотом.
"Системные промты" содержат основные промты для каждого этапа - отправляются в модель всегда
"Рассказчики" - содержит промты настроек вашего мира и общих правил
"Персонажи", "Локации", "Предметы" - содержат описания соответствующих объектов
"Этапы" - тут можно выбрать какой из промтов секции "Рассказчики" вы хотите добавить в каждый этап. Туда можно и системные промты впихнуть, но в лучшем случае это приведет к дублированию.
Если возникнут проблемы
Если возникнут пожелания или ошибки пишите тут. По хорошему надо что-то вроде discord сессий организовать, но я там ни в дуб ногой, да и не факт что это нужно.
Поставил тег программы. Заблокируйте его если вам не интересно, или подпишитесь чтобы следить за обновами.
В дальнейшем версии будут обновляться на Github - заглядывайте туда время от времени. Ну или хотя бы в первое время, пока я буду править баги, которые вполне могут быть серьезными.
Тут я буду сообщать только о крупных изменениях.