SkillWeaver: самоусовершенствующийся фреймворк агентов, обнаруживающих и оттачивающих навыки 51

小编 ·

SkillWeaver: самоусовершенствующийся фреймворк агентов, обнаруживающих и оттачивающих навыки

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

SkillWeaver: самоусовершенствующийся фреймворк агентов, обнаруживающих и оттачивающих навыки

Что такое SkillWeaver?

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

SkillWeaver:能够通过自我发现和精炼技能实现自我改进的的智能体框架.webp

Функциональные возможности SkillWeaver

  • Автономное обнаружение и отработка навыков: при столкновении с новым веб-сайтом агент способен самостоятельно обнаруживать потенциальные навыки и путём практики оттачивать их в устойчивые API.

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

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

  • Эффективное повышение производительности: эксперименты показывают, что применение SkillWeaver на платформе WebArena и реальных веб-сайтах обеспечивает повышение успешности на 31,8% и 39,8% соответственно.

  • Адаптация к сложным средам: SkillWeaver позволяет агентам лучше адаптироваться к высокой разнообразности и сложности реальных веб-сайтов.

Сценарии применения SkillWeaver

  • Автоматизация веб-задач: автоматическое выполнение задач веб-браузинга, поиска, фильтрации и т. д., извлечение информации с веб-страниц, такой как сведения о товарах в электронной коммерции, отзывы пользователей и прочее.

  • Комбинирование сложных задач: объединение нескольких простых навыков в сложные задачи, такие как многошаговые операции.

  • Межагентный обмен знаниями: совместное использование навыков между агентами для повышения общей эффективности.

  • Адаптация к сложной веб-среде: сохранение высокой эффективности в сложных и изменчивых условиях веб-сайтов.

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

  • Повышение способности к принятию решений: усиление возможностей принятия решений и рассуждений агента посредством синтеза навыков.

  • Автоматическое тестирование и отладка: обеспечение надёжности и стабильности навыков.

  • Способность к обобщению: синтезированные навыки могут использоваться на различных веб-сайтах.

  • Low-code разработка: помощь разработчикам в быстром создании и развёртывании задач автоматизации, сокращая объём написания кода.

SkillWeaver应用场景.webp

Установка и использование SkillWeaver

Установка:Создайте виртуальное окружение

conda create -n skillweaver python=3.10
conda activate skillweaver
pip install -r requirements.txt
playwright install

Затем настройте API Openai:

export OPENAI_API_KEY=

Пример кода

Ниже приведён простой пример, демонстрирующий использование SkillWeaver для создания агента, принимающего участие в задаче поиска с участием человека:

from skillweaver import Schema
from skillweaver.llms import OpenAI
# Создание холста AGI
skillweb = Schema(llm=OpenAI(openai_api_key="*****"))  # Установка глобальной переменной
# Добавление и предоставление доступа к навыкам, используемым в schema
search, human = skillweb.load_skills(['SearchRetreival', 'HumanInputObserver'])
# Соединение двух агентов; здесь можно указать пользовательскую логику обработки
skillweb.schedule([human, search])
# Запуск
skillweb.run()

Адрес на Github:https://github.com/OSU-NLP-Group/SkillWeaver

Домашняя страница проекта:https://osu-nlp-group.github.io/SkillWeaver/