Агент Зеро
Персональная и органическая структура искусственного интеллекта
- Agent Zero не является заранее определенной агентной структурой. Он спроектирован так, чтобы быть динамичным, органично развивающимся и обучающимся по мере его использования.
- Agent Zero полностью прозрачен, читаем, понятен, настраиваем и интерактивн.
- Агент Зеро использует компьютер как инструмент для выполнения своих (ваших) задач.
Теперь с адаптивным пользовательским интерфейсом, автозапоминанием и отражением:
Ключевые понятия
- Универсальный помощник
- Агент Ноль не запрограммирован заранее для выполнения конкретных задач (но может быть). Он предназначен для использования в качестве личного помощника общего назначения. Дайте ему задачу, и он будет собирать информацию, выполнять команды и код, сотрудничать с другими экземплярами агента и делать все возможное для ее выполнения.
- Он обладает постоянной памятью, позволяющей запоминать предыдущие решения, код, факты, инструкции и т. д., чтобы быстрее и надежнее решать задачи в будущем.
- Компьютер как инструмент
- Агент Зеро использует операционную систему как инструмент для выполнения своих задач. В нем нет заранее запрограммированных одноцелевых инструментов. Вместо этого он может написать свой собственный код и использовать терминал для создания и использования собственных инструментов по мере необходимости.
- Единственными инструментами по умолчанию в его арсенале являются онлайн-поиск, функции памяти, связь (с пользователем и другими агентами) и выполнение кода/терминала. Все остальное создается самим агентом или может быть расширено пользователем.
- Функциональность использования инструмента была разработана с нуля, чтобы обеспечить максимальную совместимость и надежность даже с очень маленькими моделями.
- Инструменты по умолчанию: Agent Zero включает в себя такие инструменты, как знания, содержимое веб-страницы, выполнение кода и общение.
- Создание пользовательских инструментов. Расширьте функциональность Agent Zero, создавая свои собственные инструменты.
- Инструменты: Инструменты — это новый тип инструментов, которые позволяют создавать собственные функции и процедуры, которые может вызывать Agent Zero.
- Мультиагентное сотрудничество
- У каждого агента есть вышестоящий агент, дающий ему задания и инструкции. Затем каждый агент отчитывается перед своим начальником.
- В случае первого агента в цепочке (Агент 0) вышестоящим является пользователь-человек; агент не видит разницы.
- Каждый агент может создать своего подчиненного агента, который поможет разбивать и решать подзадачи. Это помогает всем агентам поддерживать чистоту и сосредоточенность своего контекста.
- Полностью настраиваемый и расширяемый
- Почти ничего в этой структуре не запрограммировано жестко. Ничего не скрыто. Все может быть расширено или изменено пользователем.
- Все поведение определяется системным приглашением в файле Prompts/default/agent.system.md . Измените это приглашение и кардинально измените структуру.
- Структура никоим образом не направляет и не ограничивает агента. Не существует жестко заданных правил, которым должны следовать агенты.
- Каждое приглашение, каждый шаблон небольшого сообщения, отправленный агенту в его цикле связи, можно найти в папке Prompts/ и изменить.
- Каждый инструмент по умолчанию можно найти в папке python/tools/ и изменить или скопировать для создания новых предопределенных инструментов.
- Конечно, у него открытый исходный код (за исключением некоторых инструментов, таких как Perplexity, но в будущем они также будут заменены альтернативой с открытым исходным кодом).
- Общение является ключевым моментом
- Дайте вашему агенту подходящие системные подсказки и инструкции, и он сможет творить чудеса.
- Агенты могут общаться со своими начальниками и подчиненными, задавая вопросы, давая указания и указания. Проинструктируйте своих агентов в системной подсказке о том, как эффективно общаться.
- Интерфейс терминала является интерактивным и потоковым в режиме реального времени. Вы можете остановиться и вмешаться в любой момент. Если вы видите, что ваш агент движется в неправильном направлении, просто остановитесь и сразу скажите об этом.
- В этой структуре много свободы. Вы можете поручить своим агентам регулярно отчитываться перед начальством с просьбой разрешить продолжить. Вы можете поручить им использовать систему начисления баллов при принятии решения о делегировании подзадач. Начальники могут перепроверять результаты подчиненных и спорить. Возможности безграничны.
Хорошие функции, чтобы иметь
- Результат очень чистый, красочный, читабельный и интерактивный; ничего не скрыто.
- Тот же красочный вывод, который вы видите в терминале, автоматически сохраняется в файл HTML в папке logs/ для каждого сеанса.
- Вывод агента передается в потоковом режиме в режиме реального времени, что позволяет пользователю читать и вмешиваться в любое время.
- Программирование не требуется, только подсказки и коммуникативные навыки.
- Благодаря надежной системной подсказке платформа надежна даже при работе с небольшими моделями, включая точное использование инструментов.
Иметь в виду
Агент Зеро может быть опасен! При правильном обучении Agent Zero способен на многие вещи, даже потенциально опасные для вашего компьютера, данных или учетных записей. Всегда запускайте Agent Zero в изолированной среде (например, во встроенном докер-контейнере) и будьте осторожны со своими желаниями.
Агент Зеро не запрограммирован заранее; это основано на подсказках. Весь фреймворк содержит лишь минимальное количество кода и никак не управляет агентом. Все лежит в системной подсказке в папке Prompts/ . Здесь вы можете переписать все поведение фреймворка под свои нужды. Если ваш агент не может правильно общаться, использовать инструменты, рассуждать, использовать память, находить ответы — просто проинструктируйте его лучше.
Если вы не можете обеспечить идеальные условия, сообщите об этом своему агенту. Agent Zero предназначен для использования в изолированной виртуальной среде (в целях безопасности) с некоторыми предустановленными и настроенными инструментами. Если вы не можете предоставить все необходимые условия или API-ключи, просто измените системную подсказку и сообщите своему агенту, какая операционная система и инструменты находятся в его распоряжении. Ничего не запрограммировано жестко; если вы не расскажете своему агенту об определенном инструменте, он не узнает о нем и не попытается его использовать.
Известные проблемы
- Системная подсказка отстой. Вы можете добиться большего. Если да, помогите мне, пожалуйста :)
- Связь между агентами и терминалом в Docker-контейнере через SSH иногда может прерываться и прекращать выдачу выходных данных. Иногда это происходит из-за того, что агент запускает что-то вроде «server.serve_forever()», что приводит к зависанию терминала, иногда может возникнуть случайная ошибка. Перезапуск агента и/или Docker-контейнера помогает.
- Агент может сломать его операционную систему. Иногда агент может деактивировать виртуальную среду, удалить пакеты, изменить конфигурацию и т. д. Опять же, чтобы это исправить, достаточно удалить docker-контейнер и очистить рабочий_каталог/ .
Идеальная среда
- Docker-контейнер . Идеальной средой для запуска Agent Zero является встроенный Docker-контейнер. Агент может загрузить образ frdel/agent-zero-exe самостоятельно и запустить контейнер, вам нужно только запустить docker (как приложение Docker Desktop).
- Python : Python должен быть установлен в системе для запуска платформы.
- Доступ к Интернету . Агенту потребуется доступ к Интернету, чтобы использовать свой онлайн-инструмент знаний и выполнять команды и сценарии, требующие подключения. Если вам не нужно, чтобы ваш агент был в сети, вы можете изменить его подсказки в папке Prompts/ и сделать их полностью локальными.
Настраивать
Подробное руководство по настройке для Windows, macOS и Linux с видео можно найти в новой документации Agent Zero на этой странице.
Ознакомьтесь с документацией
Документация подробно описывает структуру и ее возможности. Это хорошее место для начала, если вы новичок в Agent Zero. Нажмите здесь, чтобы просмотреть документацию.
Скоро
- Предустановленные двоичные файлы и сценарии связывания
- Инструмент знаний с открытым исходным кодом и инструмент для очистки веб-страниц
- Уточнения взаимодействия с пользователем
- Переключаемые в контексте LLM
Журнал изменений [начиная с версии 0.7]
v0.7.1
- Постоянные чаты — сериализуются в /tmp/chats и автоматически загружаются в run_ui.py при запуске.
- Стек документации объединен в репозиторий
- Исправления ошибок
v0.7
- Автоматическая память
- Улучшения пользовательского интерфейса
- Инструменты
- Платформа расширений
- Подсказки к размышлению
- Исправления ошибок
Примечание
Изменения в файлах запуска с версии 0.6:
- Файл main.py заменен файлами запуска run_ui.py (webui) и run_cli.py (терминал).
- Конфигурация была перенесена в Initialize.py для файлов запуска веб-интерфейса и терминала.