Обновление
Обновление установки до нового релиза и изменения при переходе с версии 2.1.0 на 2.2.0.
Обновление заменяет образы PentAGI и, если релиз их изменил, файлы compose. Ваши .env и тома данных сохраняются, а миграции базы данных выполняются при запуске PentAGI.
Перед началом
-
Прочитайте примечания к выпуску всех версий новее вашей; с 2.1.0 в них есть инструкции по обновлению.
-
Создайте резервную копию базы данных. Ни установщик, ни PentAGI не делают этого, а откат миграций невозможен без потери данных. При использовании значений по умолчанию для
PENTAGI_иPOSTGRES_ USER PENTAGI_:POSTGRES_ DB docker exec pgvector pg_dump -U postgres -Fc pentagidb > pentagi-backup.dumpТакже сохраните копии
.envи файлов compose: установщик заменяет файлы compose без создания резервной копии. -
Завершите flowflow — флоуОдин запуск PentAGI: цель, задачи, созданные на основе ваших сообщений, и все действия агентов в процессе., которые вам больше не нужны. Работающий sandboxsandbox — песочницаИзолированный Docker-контейнер, в котором агенты запускают свои инструменты. В интерфейсе он отображается как Terminal. повторно используется в том виде, в котором он был создан, с настройками релиза, создавшего его.
-
При переходе с версии 2.1.0 внесите изменения из раздела С версии 2.1.0 до 2.2.0 в
.envи файлы рядом с ним перед запуском нового релиза. Если включён вход через Google или GitHub, сейчас очиститеOAUTH_иGOOGLE_ CLIENT_ ID OAUTH_; в разделе объясняется, почему.GITHUB_ CLIENT_ ID
Docker Compose
-
Скачайте файлы compose нового релиза рядом с вашим
.env:docker-compose.ymlи файл каждого дополнительного стека, который вы запускаете. Контейнер PentAGI получает только те переменные, которые перечислены в его файле compose, поэтому новые настройки в.envне будут действовать при использовании старого файла.cd ~/pentagi curl -O https://raw.githubusercontent.com/vxcontrol/pentagi/main/docker-compose.yml # and the file of each optional stack you run, for example: curl -O https://raw.githubusercontent.com/vxcontrol/pentagi/main/docker-compose-langfuse.yml -
Загрузите образы и перезапустите сервисы, используя те же файлы
-f, с которыми вы запускаете стек. Безpullкомандаup -dсохраняет образы, уже находящиеся на хосте.docker compose pull && docker compose up -d -
Обновите образ sandbox на Docker-хосте, который запускает flow, так как
docker compose pullэтого не делает. Flow, созданные впоследствии, будут использовать его.docker pull vxcontrol/kali-linux
Тег образа latest следует за основной веткой. Чтобы оставаться на одном релизе, установите PENTAGI_ в .env.
Установщик
- Скачайте установщик нового релиза из раздела Быстрый старт и запустите его с вашим
.env. Установщик версии 2.1.0 не может обновить сам себя. - Чтобы заменить файлы compose, измените настройку так, чтобы в меню появился пункт Apply Changes, выберите его и ответьте
y, когда установщик перечислит устаревшие файлы. - В меню обслуживания выполните Update PentAGI для загрузки новых образов и Update Worker Image, когда это будет предложено. Сам по себе Update PentAGI сохраняет старые файлы compose.
С версии 2.1.0 до 2.2.0
Файлы
- Файл compose монтирует
example.bedrock.provider.ymlрядом с собой. Установщик создаёт его; при ручной установке создайте его самостоятельно, пустого файла достаточно:touch example.bedrock.provider.yml. - Замените
docker-compose-langfuse.yml, если вы используете Langfuse: файл версии 2.1.0 указывает на образminio/, который больше не публикуется, поэтомуminio docker compose pullзавершится ошибкой с ним. Если ваш.envустанавливаетMINIO_, удалите эту строку.IMAGE=minio/ minio:… - Для knowledge graphknowledge graph — граф знанийГраф хостов, сервисов, уязвимостей и доступа между ними, который PentAGI строит во время теста при включении этой опциональной функции. Он показывает связи между находками. поместите
examples/из репозитория вneo4j ./— Graphiti требуется его плагин APOC — и ознакомьтесь с разделом Память и знания для настроек моделей.neo4j GRAPHITI_больше не читается.MODEL_ NAME - При первом запуске выполняются восемь миграций базы данных.
docker compose logs pentagiпоказывает «Database schema updated successfully», когда они завершены.
Вход и доступ
- Всем пользователям необходимо войти снова: сеансы версии 2.1.0 отклоняются. API-токены продолжают работать, а скрипты выходят из системы с помощью
POST /.api/ v1/ auth/ logout - API-токен получает ошибку 403 на REST-маршрутах
/,users /иroles /: управляйте учётными записями, ролями и токенами из сеанса браузера с выполненным входом.tokens - Вход через Google и GitHub теперь выполняет вход с проверенной провайдером электронной почтой в существующую учётную запись с этим адресом, включая локальные учётные записи, с ролью этой учётной записи. Версия 2.1.0 не может изменить электронную почту учётной записи, поэтому, если вход включён, выполните обновление с пустыми значениями
OAUTH_иGOOGLE_ CLIENT_ ID OAUTH_, переместитеGITHUB_ CLIENT_ ID [email protected]на адрес, который вы контролируете, в разделе Settings → Account, а затем снова включите вход. Функция Reset Admin Password установщика находит администратора только по[email protected]. - За обратным прокси-сервером установите
TRUSTED_, иначе все пользователи будут использовать один и тот же адрес прокси-сервера, и одна серия неудачных попыток входа заблокирует всех на 15 минут — см. Сетевой доступ.PROXIES
Sandboxes
- При использовании
DOCKER_— шаблонаINSIDE=true .envверсии 2.1.0 и значения по умолчанию установщика — версия 2.1.0 монтировала сокет Docker хоста в каждый sandbox. Версия 2.2.0 предоставляет агентам доступ к Docker только через отдельный демон, настроенный вDOCKER_; без него доступа нет, а в журнале отображаетсяINSIDE_ HOST sandbox DISABLED. При использованииDOCKER_оставьтеINSIDE_ HOST DOCKER_пустым, иначе шаблонныйSOCKET= /все ещё будет монтироваться. См. Worker node.var/ run/ docker.sock - Завершите flow, запущенные на версии 2.1.0: их sandboxes сохраняют старое монтирование сокета и возможности до завершения flow.
- Оставьте
TENANT_пустым: на существующей установке это направляет PentAGI на новую, пустую схему.ID
Модели и промпты
- Пользовательскому провайдеру требуется
LLM_: с пустым ключом он отключён, поэтому для сервера без аутентификации установите любое непустое значение.SERVER_ KEY LLM_удалён. Пользовательский провайдер отправляетSERVER_ LEGACY_ REASONING reasoning_и преобразует бюджетeffort reasoning.max_в уровень усилий; на моделях Kimi K2, GLM до версии 5.2 и MiniMax M бюджет теперь вызывает сбой вызова, поэтому удалите его из этих агентов.tokens - В файлах конфигурации провайдера запись агента, оставляющая
max_,tokens temperature,top_илиp nпустыми, теперь получает значения по умолчанию для типа провайдера вместо отправки пустых значений. - Встроенные модели по умолчанию изменились для каждого провайдера, кроме Bedrock; провайдеры, сохранённые в Settings → Providers, сохраняют свои модели. Пять конфигураций, поставляемых с образом, изменили модели —
openrouter,deepinfra,ollama-cloud,moonshotиdeepseek. ЕслиLLM_илиSERVER_ CONFIG_ PATH OLLAMA_указывает на одну из них вSERVER_ CONFIG_ PATH /, сохраните файл версии 2.1.0 на хосте и смонтируйте его как пользовательскую конфигурацию или конфигурацию Ollama.opt/ pentagi/ conf/ - При использовании
EMBEDDING_на сервере, отличном от OpenAI, установитеURL EMBEDDING_:KEY OPEN_туда больше не отправляется.AI_ KEY - Агенты выполняют поиск через один инструмент
web_. Пользовательские промпты сsearch {{.GoogleToolName}}и другими переменными для каждого движка игнорируются с предупреждением в журнале, пока они не начнут использовать{{.WebSearchToolName}}; адаптируйте пользовательские промпты searcher и pentester под новые значения по умолчанию.
Другие изменения
- В течение двух минут после запуска и затем каждые три часа PentAGI сообщает свою версию и краткую информацию об установке в
update.pentagi.com; раздел Проверка обновлений перечисляет отправляемые данные, аUPDATE_отключает эту функцию.CHECK_ INTERVAL=0 - Профилировщик больше не прослушивает порт 7777, если не установлен
PPROF_.ADDR - Новые необязательные настройки включают резервирование провайдера с
LLM_,FALLBACK_ PROVIDER DOCKER_для нескольких экземпляров,PORTS_ BASE DOCKER_иIMAGE_ SELECTION_ MODE DOCKER_, внутренний поисковый движокALLOWED_ IMAGES WEB_, а также ключи Mistral, xAI, MiniMax и Firecrawl.SEARCH_ INTERNAL_ ENABLED
Резервное копирование и откат
PentAGI никогда не выполняет миграции в обратном направлении, а ручное выполнение удаляет данные, поэтому способ вернуться к версии 2.1.0 — это резервная копия. Остановите службы, использующие базу данных, пересоздайте её и восстановите дамп:
docker compose stop pentagi pgexporter
docker exec pgvector dropdb -U postgres pentagidb
docker exec pgvector createdb -U postgres pentagidb
docker exec -i pgvector pg_restore -U postgres -d pentagidb < pentagi-backup.dumpЗатем верните сохранённые .env и файлы compose, установите PENTAGI_ и запустите стек. Сохраните новый docker-compose-langfuse.yml: образ MinIO из файла версии 2.1.0 больше нельзя загрузить.
Последнее обновление:
Worker node
Запускайте контейнеры agent на выделенном защищённом сервере отдельно от основного хоста PentAGI.
Устранение неполадок
Решения распространённых проблем PentAGI — flow, который завершается ошибкой при первом вызове модели, ошибки парсера tool call, предупреждения установщика на macOS и зависание небольших моделей.