Эта научная статья вводит агентов открытый Python-фреймворк для автономных языковых агентов

Научная статья о Python-фреймворке для языковых агентов

В задачах, таких как обслуживание клиентов, консультации, программирование, письмо, преподавание и т. д., языковые агенты могут сократить человеческие усилия и являются потенциальным первым шагом к искусственному общему интеллекту (ИОИ). Недавние демонстрации потенциала языковых агентов, включая AutoGPT и BabyAGI, вызвали большое внимание исследователей, разработчиков и широкой аудитории.

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

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

Исследователи из AIWaves Inc., Университета Чжэцзян и ETH Цюрих представляют AGENTS – свободную библиотеку и фреймворк языковых агентов с открытым исходным кодом для поддержки языковых агентов, работающих на основе LLM. Целью AGENTS является сделать настройку, настройку и развертывание языковых агентов максимально простыми – даже для непрофессионалов, при этом они остаются легко расширяемыми для программистов и исследователей. Библиотека также предлагает основные возможности, перечисленные ниже, которые в совокупности делают ее гибкой платформой для языковых агентов:

Долгосрочная память: AGENTS включают компоненты памяти, позволяющие языковым агентам регулярно обновлять рабочую память краткосрочного хранения с помощью черновика, а также сохранять и извлекать долгосрочную память с использованием VectorDB и семантического поиска. Пользователи могут решить, предоставить ли агенту долгосрочную память, краткосрочную память или обе, просто заполнив поле в конфигурационном файле.

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

Взаимодействие между несколькими агентами: AGENTS позволяют настраиваемые системы с несколькими агентами и возможности одного агента, которые могут быть полезны для конкретных приложений, таких как игры, социальные эксперименты, разработка программного обеспечения и т. д. Функция “динамического планирования” в AGENTS является одним новым дополнением для многоагентного общения. Динамическое планирование позволяет установить контролирующего агента, который служит “модератором” и выбирает, какой агент будет выполнять следующее действие на основе их ролей и недавней истории, вместо того чтобы планировать порядок действий агентов с помощью жестко закодированных правил. При использовании динамического планирования возможно более гибкое и естественное общение между несколькими агентами. Определяя правило контроллера в конфигурационном файле с использованием обычного языка, разработчики могут быстро изменить поведение контроллера.

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

Управляемость: С использованием символьного плана, известного как стандартные рабочие процедуры (SOP), AGENTS предлагают революционную парадигму разработки управляемых агентов. SOP – это граф с несколькими состояниями, который описывает различные ситуации, с которыми агент может столкнуться в процессе выполнения задачи, и правила перехода между состояниями. SOP в AGENTS – это тщательно записанная коллекция подробных инструкций, которые определяют, как агент или группа агентов должны выполнять определенную деятельность или процедуру. Это аналог SOP в реальном мире. LLM может создавать SOP, которые пользователь может изменять при настройке и настройке агента. После развертывания агент будет функционировать в соответствии с инструкциями и стандартами, установленными для каждого состояния, и динамически изменять свое текущее состояние в ответ на взаимодействия с внешним миром, людьми или другими агентами. С появлением символьного плана теперь можно обеспечить тонкую настройку поведения агента, улучшить его стабильность и предсказуемость, облегчить настройку и оптимизацию агента.

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