SkillWeaver: 자기 발견 및 정제를 통한 자기 개선 에이전트 프레임워크
SkillWeaver란 무엇인가요?
SkillWeaver는 웹 로봇과 같은 웹 에이전트가 스스로技能(스킬)을 발견하고 연마함으로써 자기 주도적으로 개선할 수 있도록 해주는 프레임워크로, 웹 에이전트가 자율적 탐색과 스킬 합성을 통해 스스로 향상될 수 있게 합니다. 웹사이트와의 상호작용을 재사용 가능한 스킬(API)로 추상화하고, 웹 에이전트가 새로운 웹사이트에서 이러한 스킬을 자율적으로 발견·연습·정제하도록 하며, 반복적인 탐색을 통해 API 라이브러리를 지속적으로 확장하여 에이전트의 역량을 강화합니다. SkillWeaver는 웹 브라우징 작업 자동화, 복잡한 디지털 환경에서의 적응력 향상 등 다양한 시나리오에 활용될 수 있습니다. 또한 개발자가 자신만의 AGI 프레임워크를 설계·구현·테스트하는 데도 도움을 줍니다.

SkillWeaver 기능 특징
자율적 스킬 발견 및 연습: 새로운 웹사이트에 직면했을 때, 에이전트가 잠재적 스킬을 자율적으로 발견하고 실습을 통해 이를 안정적인 API로 정제할 수 있습니다.
반복적 탐색과 역량 향상: 새로운 스킬을 지속적으로 탐색하고 추가함으로써, 에이전트는 가볍고 플러그 앤 플레이 방식의 API 라이브러리를 계속 확장하여 자신의 능력을 크게 향상시킵니다.
스킬 전이와 공유: 성능이 뛰어난 에이전트가 합성한 API를 능력이 낮은 에이전트에게 전달할 수 있어, 학습 과정을 가속화하고 공유 지식 베이스의 발전을 촉진합니다.
고효율 성능 향상: 실험에 따르면 SkillWeaver는 WebArena 플랫폼과 실제 웹사이트에서 각각 31.8%와 39.8%의 성공률 향상을 달성했습니다.
복잡한 환경 적응: SkillWeaver는 에이전트가 실제 웹사이트의 높은 다양성과 복잡성에 더 잘 적응할 수 있도록 합니다.
SkillWeaver 활용 시나리오
웹 작업 자동화: 웹 브라우징, 검색, 필터링 등의 작업을 자동 완료하고, 웹페이지에서 이커머스 상품 정보, 사용자 리뷰 등 정보를 추출합니다.
복잡한 작업 조합: 여러 개의 단순한 스킬을 조합하여 다단계 작업과 같은 복잡한 작업을 구성합니다.
에이전트 간 지식 공유: 에이전트끼리 스킬을 공유하여 전체 효율성을 높입니다.
복잡한 웹 환경 적응: 복잡하고 변화가 많은 웹 환경에서도 높은 효율을 유지합니다.
재사용 가능한 스킬 라이브러리 생성: 가볍고 재사용 가능한 스킬 라이브러리를 생성하여 후속 작업에서 손쉽게 호출할 수 있도록 합니다.
의사 결정 능력 향상: 스킬 합성을 통해 에이전트의 의사 결정 및 추론 능력을 향상시킵니다.
자동화된 테스트 및 디버깅: 스킬의 신뢰성과 안정성을 보장합니다.
일반화 능력: 합성된 스킬은 서로 다른 웹사이트에서 범용적으로 사용할 수 있습니다.
로우코드 개발: 개발자가 자동화 작업을 빠르게 구축하고 배포할 수 있도록 도와 코드 작성 부담을 줄여줍니다.

SkillWeaver 설치 및 사용
설치:가상 환경 생성
conda create -n skillweaver python=3.10 conda activate skillweaver pip install -r requirements.txt playwright install
그런 다음 Openai API를 설정합니다:
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/
대본 기획 도우미▸
AI 앱
AI 뉴스 