SkillWeaver: un framework de agentes que se auto-mejora mediante el descubrimiento y refinamiento de habilidades 49

小编 ·

SkillWeaver: un framework de agentes que se auto-mejora mediante el descubrimiento y refinamiento de habilidades

SkillWeaver es un framework que permite a los agentes web (como robots web) auto-mejorarse descubriendo y refinando habilidades. Permite a los agentes web explorar de forma autónoma y sintetizar habilidades para su propio progreso. Abstrae las interacciones con sitios web en habilidades reutilizables (APIs) y permite a los agentes descubrir, practicar y refinar de forma autónoma esas habilidades en nuevos sitios, expandiendo iterativamente la biblioteca de APIs para reforzar sus capacidades. SkillWeaver puede aplicarse en numerosos escenarios, como la automatización de tareas de navegación web, entre otros.

SkillWeaver: un framework de agentes que se auto-mejora mediante el descubrimiento y refinamiento de habilidades

¿Qué es SkillWeaver?

SkillWeaver es un marco que permite a los agentes web (como los robots web) mejorarse a sí mismos mediante el descubrimiento y perfeccionamiento de habilidades, permitiendo a los agentes web lograr su propio avance a través de la exploración autónoma y la síntesis de habilidades. Abstrae las interacciones con sitios web como habilidades reutilizables (API), y permite a los agentes web descubrir, practicar y refinar de forma autónoma estas habilidades en nuevos sitios web, ampliando continuamente la biblioteca de API mediante exploración iterativa, con el fin de mejorar las capacidades del agente. SkillWeaver puede aplicarse en múltiples escenarios, como la automatización de tareas de navegación web y la mejora de la adaptabilidad del agente en entornos digitales complejos. Además, también puede ayudar a los desarrolladores a diseñar, implementar y probar sus propios marcos de AGI.

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

Características de SkillWeaver

  • Descubrimiento y práctica autónoma de habilidades: al enfrentarse a nuevos sitios web, el agente es capaz de descubrir de forma autónoma habilidades potenciales y refinar estas habilidades en API robustas mediante la práctica.

  • Exploración iterativa y mejora de capacidades: mediante la exploración continua y la adición de nuevas habilidades, el agente amplía continuamente su biblioteca de API ligeras y plug-and-play, mejorando significativamente sus propias capacidades.

  • Transferencia y compartición de habilidades: las API sintetizadas por agentes con buen rendimiento pueden transmitirse a agentes con capacidades más limitadas, acelerando así el proceso de aprendizaje y promoviendo el desarrollo de una base de conocimiento compartida.

  • Mejora eficiente del rendimiento: los experimentos demuestran que la aplicación de SkillWeaver en la plataforma WebArena y en sitios web reales logra un aumento en la tasa de éxito del 31,8% y del 39,8%, respectivamente.

  • Adaptación a entornos complejos: SkillWeaver permite a los agentes adaptarse mejor a la alta diversidad y complejidad de los sitios web del mundo real.

Escenarios de aplicación de SkillWeaver

  • Automatización de tareas web: completar automáticamente tareas de navegación web, búsqueda y filtrado, extrayendo información de las páginas web, como información de productos de e-commerce, comentarios de usuarios, etc.

  • Composición de tareas complejas: combinar múltiples habilidades simples en tareas complejas, como operaciones de varios pasos.

  • Compartición de conocimiento entre agentes: compartir habilidades entre agentes para mejorar la eficiencia general.

  • Adaptación a entornos web complejos: mantener la eficiencia en entornos web complejos y cambiantes.

  • Generación de bibliotecas de habilidades reutilizables: generar bibliotecas de habilidades ligeras y reutilizables, lo que facilita su invocación en tareas posteriores.

  • Mejora de la capacidad de decisión: mejorar la capacidad de decisión y razonamiento del agente mediante la síntesis de habilidades.

  • Pruebas y depuración automatizadas: garantizar la fiabilidad y estabilidad de las habilidades.

  • Capacidad de generalización: las habilidades sintetizadas pueden ser genéricas en diferentes sitios web.

  • Desarrollo con poco código: ayudar a los desarrolladores a construir y desplegar rápidamente tareas automatizadas, reduciendo la escritura de código.

SkillWeaver应用场景.webp

Instalación y uso de SkillWeaver

Instalación:Crear un entorno virtual

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

Luego configurar la clave de la API de Openai:

export OPENAI_API_KEY=

Código de ejemplo

A continuación se muestra un ejemplo sencillo que muestra cómo usar SkillWeaver para crear un agente de entrada humana que ejecute una tarea de búsqueda:

from skillweaver import Schema
from skillweaver.llms import OpenAI
# Crear el lienzo AGI
skillweb = Schema(llm=OpenAI(openai_api_key="*****"))  # Establecer variable global
# Añadir y exponer las habilidades utilizadas en el schema
search, human = skillweb.load_skills(['SearchRetreival', 'HumanInputObserver'])
# Conectar los dos agentes, y se puede especificar aquí la lógica de procesamiento personalizada
skillweb.schedule([human, search])
# Ejecutar
skillweb.run()

Dirección de Github:https://github.com/OSU-NLP-Group/SkillWeaver

Página principal del proyecto:https://osu-nlp-group.github.io/SkillWeaver/