Если заметили ошибку или битую ссылку в тексте — выделите этот фрагмент и нажмите Ctrl+Enter
Короткий адрес страницы: fornit.ru/96174 📋

Относится к сборнику статей теории МВАП

Попытка организовать автоматическое обучение Beast

Можно считать доказанной практическую бессмысленность попыток скорострельного воспитания искусственного существа на гомеостазе с помощью агентов AI.

Хотя код существа BeastJS не предназначен для полноценного воспитания субъективности, но в теоретических целях была сделана попытка наладить интерфейс между CursorAI и проектом с JS кодом через “мост” Node, что описано ниже.

Такой интерфейс был создан, проверен и было задание сделать несоклько условных рефлексов, а затем записать состояние Beast на локальный диск, чтобы загрузить в любой браузерный Пульт связи с Beast. Генерация 10 условных рефлексов заняла 5 минут из-за того, что код существу синхронизируется пульсом в 1 секунду, а для формирования условного рефлекса задана необходимость трех сочетания стимула и реакции. Тогда пульс был ускорен до 40 миллисекунд и задано сформировать 1000 условных рефлексов не как попало, а по важнейшим направлениям адаптивности (т.е. по различным отклонениям виталов от нормы). За 7 минут было сформировано 20 условных рефлексов и процесс был прерван по очевидной бесполезности.  Сам Cersor порассуждал о причинах таким образом:

Почему всё равно «долго до 1000»? Счётчик conditionalReflexCount растёт только когда движок добавляет новый условный рефлекс; повторы и слияния не дают +1 на каждый шаг. Поэтому узкое место — не скорость пульса, а то, сколько уникальных связей модель реально формирует за один проход сетки. Ускорение пульса ускоряет перебор шагов по времени, но не умножает число новых рефлексов.

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

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

Автоматическое «воспитание» Beast по заданиям оператора

Документ описывает, как в этом репозитории устроен процесс, когда оператор не кликает пульт вручную, а передаёт сценарий (в коде это ближе всего к «промпту»: явная программа действий и контекстов). Реализация опирается на мост (beast-bridge), BeastAPI в браузере и обучающие скрипты на Node.js.

1. Идея в двух предложениях

Beast живёт в одной вкладке Chromium, которую поднимает Puppeteer из моста. Любое действие оператора на пульте (стимул, витал, удержание Плохо/Норма/Хорошо, длительность пульса) дублируется вызовами window.BeastAPI.act(action, params).
«Промпт оператора» в автоматическом режиме — это заранее записанная последовательность таких действий плюс ожидания по пульсу (
cpuls), а не отдельный чат с моделью: сценарий лежит в .js файле и исполняется снаружи через HTTP.

2. Слои системы

Слой

Роль

beast-bridge/server.js

Раздаёт статику проекта, поднимает Chromium с index.html, ждёт готовности BeastAPI, отдаёт REST только с 127.0.0.1.

BeastAPI (beast/sys/beast_agent.js)

Единый контракт: getStateact, ожидания событий/условий. Действия эмулируют клики по кнопкам стимулов и вызовы уже существующих глобалов (виталы, B/N/W, сон, очистки памяти и т.д.).

Скриптобучения (beast-bridge/train-*.js)

«Оператор в коде»: цикл по фазам или по сетке, POST /api/act, опрос GET /api/state, при необходимости GET /api/memory для дампа.

Связка оператор → сценарий → API → тот же UI, что и у человека, снимает рассинхрон «другая вкладка — другое состояние»: обучение должно идти в окне моста, а не в ручном браузере.

3. HTTP API моста (кратко)

Полный перечень действий act смотрите в beast/sys/beast_agent.js (ветка switch (action)): стимулы, clearAllStimulisetVitalsetBadForHolding / setNormForHolding / setWellForHoldingsetPulseDelayMs, очистки памяти, сон, runAction и др.

4. Время: пульс, а не только секунды ОС

Внутри существа логика привязана к счётчику пульсов cpuls. Скрипты обучения после каждого шага ждут прироста cpuls (функции waitPulses в train-скриптах), а не просто sleep(1000) как замену одного пульса — иначе при ускоренном пульсе обучение «не успевает» за симуляцией.

Для ускорения прогона оператор (через сценарий) выставляет setPulseDelayMs (BEAST_TRAIN_PULSE_MS в переменных окружения), а в конце обычно возвращает комфортное значение (BEAST_RESTORE_PULSE_MS).

5. Два типа «промптов» в виде кода

5.1. Явная программа фаз (как план оператора)

Файл beast-bridge/train-conditional-reflexes.js.

Запуск из корня (при активном мосте):

npm.cmd run train-reflexes
или
node beast-bridge/train-conditional-reflexes.js [выходной.json]

5.2. Стратегическая сетка на тысячи условных рефлексов

Файл beast-bridge/train-reflexes-1000.js.

Запуск:

npm.cmd run train-reflexes-1000
или
node beast-bridge/train-reflexes-1000.js [файл.json]

Итог по умолчанию пишется в saves/train_1000_<timestamp>.json (или путь из аргумента).

6. Как операторский замысел попадает в систему

  1. Смысловой уровень — что закрепляем (какие пары, в каком базовом состоянии, при каких виталах).
  2. Формализация — правка CURRICULUM / пресетов / сетки в соответствующем .js или новый скрипт по образцу.
  3. Параметрысреды — принеобходимости BEAST_TRAIN_PULSE_MSBEAST_TRAIN_WAIT_PULSESBEAST_MAX_STEPS, хост/портмоста (BEAST_BRIDGE_HOSTBEAST_BRIDGE_PORT).
  4. Исполнение — мост уже запущен; клиент обучения только шлёт HTTP.
  5. Фиксация опыта — GET /api/memory в конце (или отдельно save-memory), чтобы сохранить тот же формат, что и ручное сохранение.

Так «промпт» здесь — это исполняемый сценарий и его комментарии, согласованный с возможностями BeastAPI, а не текст в отдельном промпт-файле для LLM.

7. Замечания по наблюдению и отладке

8. Связанные материалы в репозитории

9. Пошаговая инструкция оператора: Node и мост в PowerShell

Ниже — минимальный путь от нуля до работающего моста на Windows в PowerShell. Пути к проекту подставьте свои (ниже для примера корень A:BEAST).

9.1. Установить Node.js

  1. Откройте в браузере официальный сайт: https://nodejs.org/.
  2. Скачайте LTS-установщик для Windows (.msi) и запустите его.
  3. В мастере установки оставьте опцию добавления Node в PATH (обычно включена по умолчанию).
  4. Закройте и снова откройте окно PowerShell (или Cursor), чтобы подтянулся обновлённый PATH.

9.2. Проверить Node и npm в PowerShell

  1. Откройте PowerShell (или встроенный терминал Cursor).
  2. Выполните:

node -v

Должна отобразиться версия (например v22.x или v24.x).

  1. Команда npm -v в чистом PowerShell иногда падает с ошибкой «выполнение сценариев отключено» — это касается именно npm.ps1. Обход:
    • вызывайте npm.cmd вместо npmили
    • вызывайте скрипты напрямую через node (см. ниже).

9.3. Зависимости проекта

  1. Перейдите в корень репозитория Beast:

Set-Location A:BEAST

  1. Установите пакеты (один раз или после изменения package.json):

npm.cmd install

Будет загружен Puppeteer и при необходимости Chromium для управления браузером.

9.4. Запустить мост

  1. В том же каталоге проекта выполните одну из команд:

npm.cmd run bridge

илибез npm:

node beast-bridgeserver.js

  1. Дождитесь в консоли сообщения о готовности BeastAPI (и при не-headless режиме — появления окна Chromium с пультом).
  2. Чтобы всегда видеть окно браузера (не headless), перед запуском задайте переменную и снова запустите мост:

4.  $env:BEAST_HEADLESS = "0"

npm.cmd run bridge

Либо используйте скрипт из package.jsonnpm.cmd run bridge:headed (через cross-env).

  1. Оставьте этот процесс запущенным — мост и вкладка Beast для API должны жить, пока идёт обучение или ручное управление через API.

9.5. Проверить, что мост отвечает

В втором окне PowerShell (мост в первом не останавливайте):

Invoke-WebRequest -Uri "http://127.0.0.1:8765/api/health" -UseBasicParsing | Select-Object -ExpandProperty Content

Ожидается JSON с "bridgeReady":true. Если порту 8765 мешает другая программа, задайте другой порт через переменные окружения BEAST_BRIDGE_PORT (и при необходимости BEAST_BRIDGE_HOST) перед запуском server.js и используйте тот же порт в скриптах обучения.

9.6. Запуск обучения после моста

Когда bridgeReady истинно, в отдельном терминале из корня проекта:

Set-Location A:BEAST

node beast-bridgetrain-reflexes-1000.js

иличерез npm.cmd run train-reflexes-1000. Лог и файл дампа — как в разделах 5 и 7 выше.

 

Итак, показано, что можно считать практически бессмысленными попытки скорострельного воспитания искусственного существа на гомеостазе с помощью агентов AI. Несмотря на техническую реализацию «моста» между Cursor AI и кодом BeastJS, результаты продемонстрировали глубокий разрыв между скоростью прохождения сигналов и биологической логикой формирования адаптивности.

1. Иллюзия скорости (Проблема «Пульса»)

2. Отсутствие интеллектуальной добавленной стоимости

3. Нарушение биологической достоверности

4. Технический итог (Инфраструктура)

 

Вывод: Практический результат подтвердил, что воспитание искусственного существа — это процесс, требующий соблюдения временных и логических зависимостей среды, которые невозможно заменить простым ускорением вычислений или передачей контроля AI-агенту.

 


26 Mar 2026

Список топиков