SkillWeaver:スキルの発見と磨き上げによるWebエージェントの自己改善フレームワーク
エグゼクティブ・サマリー
本文書は、Webエージェントが未知のウェブサイト環境を自律的に探索し、再利用可能なスキルをPython API形式で抽出・蓄積することで自己改善を実現するフレームワーク「SkillWeaver」についてまとめたものである。
SkillWeaverは、(1) Skill Proposal(スキル提案)、(2) Skill Synthesis(スキル合成)、(3) Skill Honing(スキル磨き上げ)の3段階パイプラインで構成される。WebArenaベンチマークで31.8%、実世界ウェブサイトで39.8%の相対的成功率向上を達成し、さらに弱いエージェントへのスキル転送では最大54.3%の改善を示した。
1. 背景と課題
LLMベースのWebエージェントは、ウェブを人間のようにブラウズできる新しいフロンティアとして急速に台頭している。しかし、以下の課題が存在する:
- ウェブ環境は非常に複雑で多様なインタラクティブ要素を含む
- 新しいウェブサイトへの汎化が困難(サイト構造やタスク分布への過適合)
- 既存手法は暗黙的に行動軌跡にスキルを格納しており、手続き的知識の明示的な抽象化が不十分
人間の学習プロセスにヒントを得て、SkillWeaverは環境の探索→経験の階層的抽象化→スキルライブラリの構築という自己改善メカニズムを提案している。
2. SkillWeaverの3段階パイプライン
Stage I: Skill Proposal(スキル提案)
LLMにウェブページのスクリーンショット、名前、URL、アクセシビリティツリーを提供し、有用なスキルを提案させる。3種類のタスクを提案:
- 手続き的タスク:一連のアトミック操作で達成するワークフロー自動化
- ナビゲーション的タスク:サイト内の各セクション・ページを体系的に探索
- 情報取得タスク:ウェブページからの詳細データのスクレイピング
Stage II: Skill Synthesis(スキル合成)
スキルの実践→報酬モデルによる評価→成功軌跡からのAPI合成→静的解析によるバグ検出。生成されるAPIは、関数シグネチャ、docstring、使用ログ、コード本体を含む完全なPlaywright関数である。
Stage III: Skill Honing(スキル磨き上げ)
合成されたAPIの信頼性を確保するため、自動テストケース生成とデバッグを実施。LLMがパラメータ値を生成し、ユニットテストとして実行・修正する。
3. 実験結果
WebArena(シミュレーション環境)
- GPT-4o + Skills:成功率 22.6% → 29.8%(+32%相対向上)
- GPT-4o-mini + Skills:9.2% → 14.1%(+45%相対向上、最大133%のサイトも)
- 5サイト(Gitlab, Map, Shopping, CMS, Reddit)全てで安定した改善
実世界ウェブサイト(Online-Mind2Web)
- 4サイト(Drug, Flight, Cooking, Car)で評価
- 平均成功率 40.2% → 56.2%(+40%相対向上)
- 特にFlightサイトでは11.7% → 29.4%(+151%)と劇的な改善
4. 分析と知見
ウェブサイト間の汎化
事前探索で得たAPIライブラリを統合するだけで、未知のウェブサイトでも安定した性能向上を実現。スキルを外部メモリとしてコードファイルにカプセル化する手法が有効。
エージェント間の汎化
GPT-4oで合成したAPIをGPT-4o-miniに転送すると、40%〜133%の成功率向上。知識蒸留の軽量モジュールとしてのスキルの有用性を実証。
合成APIの品質
低〜中APIサポートのサイト(Reddit, Shopping)では、手動作成APIと同等以上の品質。高サポートのサイト(GitLab, Maps)ではまだ改善の余地あり。
複合APIの出現
探索反復を重ねると、複数の単純APIを呼び出す複合的APIが自発的に生成される。抽象化レベルの自動向上を示す興味深い創発現象。
5. 意義と今後の展望
SkillWeaverの主な貢献:
- パラメータ更新なしにスキルライブラリの拡張だけでエージェント能力を向上させる新パラダイム
- 強いエージェントの知識を弱いエージェントに効果的に転送するメカニズム
- 自律探索による手続き的知識の明示的なAPI化
今後はOperatorなどのより高度な推論エージェントとの統合、より複雑なマルチステップスキルの合成が期待される。