世界を動かす技術を、日本語で。

研究:自己生成エージェントのスキルは無意味である

2026年2月17日原文(arxiv.org)

概要

SkillsBench は、LLMエージェントのスキル活用効果を評価するための新しいベンチマーク。 86タスク・11ドメインで、 スキル有無・自己生成スキル の3条件を比較。 Curated Skills (厳選スキル)は平均16.2ポイントのパス率向上を実現。 自己生成スキル は平均で効果なし、モデルによるスキル自作の限界を示唆。 小規模モデル+スキルで、大規模モデル単体に匹敵する性能を確認。

SkillsBench: LLMエージェントにおけるスキル活用の効果測定

  • SkillsBench :86タスク・11ドメインから成る新ベンチマークの構築
  • 各タスク: スキルなし/厳選スキル/自己生成スキル の3条件で評価
  • 7つのエージェント-モデル構成 で合計7,308の実行経路を検証
  • Curated Skills (厳選されたスキル):
    • 平均パス率を16.2ポイント向上
    • ドメインごとに効果のばらつき
      • 例) ソフトウェアエンジニアリング :+4.5ポイント
      • ヘルスケア :+51.9ポイント
    • 84タスク中16タスクでは逆にパフォーマンス低下も観測
  • 自己生成スキル :平均で効果なし
    • LLMモデル自体によるスキル作成の不安定さを示唆
  • Focused Skills (2~3モジュールの絞り込みスキル):
    • 包括的なドキュメントよりも高い効果
  • 小規模モデル+スキル
    • スキルなしの大規模モデルと同等のパフォーマンスを実現

SkillsBenchの意義と今後の課題

  • LLMエージェントの実運用に向けたスキル設計指針 の提供
  • スキル導入効果のドメイン依存性 の明示
  • 自己生成スキルの限界、今後の自動スキル生成手法の課題提起
  • ベンチマークの標準化 による、今後のスキル研究の基盤整備

Hackerたちの意見

一般的なルールとして、LLMで自動化する層が増えるほど、次の層はどんどん悪くなるみたい。LLMの出力を新しいLLMの入力に流すと、物事がすぐに崩れたり、失われたりするのがわかるよね。アイデアがあって、実装計画もある程度できてるなら、LLMにコーディングを任せれば、メンテナンスしやすくていいものができる。基本的にはあなた次第。層を一つ減らして、アイデアは持ってるけど、実装計画はLLMに考えさせると、実装も含めて、理想からは程遠くなる。さらに層を減らして、LLMに全部やらせると、もうめちゃくちゃになる。

この原則は、フィードバックがない場合にのみ当てはまると思う。そう、オープンループ制御の層を何層も通ると、各層で精度が下がるけど、各レベルにメトリクスがあって自己調整できるなら、状況はそこまで深刻じゃないと思う。

人は、zipファイルの圧縮の例をよく引き合いに出すよね。圧縮を続けると劣化するってやつ。同じことがjpegやmp3にも言える。でも、私は「電話ゲーム」(中国のささやきとも呼ばれる)の例えを使うのが好き。自然言語がどれだけ危ういか、そしてどれだけ早く劣化するかを際立たせると思う。多くの人が、私たちがコミュニケーションを取る能力に対してあまり感心していないと思う。

LLMに同じ画像を正確に再現させようとする画像のシーケンスみたいなもので、数十回の反復の後に何かグロテスクな崩壊が起きるんだ。テキストやコードでも同じことが起こる。「意味の崩壊」って呼んでる。数年後、LLMがSharePointサイトを読み込んで要約を作り、その要約の要約を作る…みたいなことを続けると、最終的にはグロテスクなスラリーができあがると思う。ある時点で、意味のあるものをプロセスに注入するために新鮮な人間の入力が必要になるんじゃないかな。

「自己生成スキル:スキルは提供されないが、エージェントはタスクを解決する前に関連する手続き知識を生成するよう促される。これにより、LLMの潜在的なドメイン知識の影響が分離される。」これは有用な結果だけど、これが「LLMがスキルを生成する」と考える人たちの意図とは必ずしも一致しないことに注意が必要だね。LLMに、何かを達成するために苦労した経験から得た教訓を表すスキルを書かせる方が一般的だと思うし、彼らが言ってることとはかなり違う。ニュースメディアや人気のSNSアカウントは、適切な注意を払って報道するだろうし、誰も誤解しないと思うよ。

うん、タスクを試みて、その試みから学んだ教訓の後にLLMがスキルを生成することに興味がある。初めてタスクを試みる前ではないよ。この結果はちょっと馬鹿げてて、現実のスキルが「自動生成」される方法から離れてる気がする。

これよりもひどいことがあるよ。「評価されるタスク」は、指示のマークダウンファイル1つと、不透明な検証者だけに限られてるんだ(13-14ページ)。既存のコードベースやリファクタリング、そういうのは全く関係ない。要するに、「問題定義」が広い意味で文脈に合わないってこと。だから、エージェントに自分のスキルを生成させるために与えられたプロンプトを見ると、こうなってる:> 重要:まずスキルを生成してください。このタスクを解決する前に、以下のステップに従ってください。1. タスクの要件を分析し、必要なドメイン知識、API、または技術を特定します。2. このタスクを解決するために役立つ1〜5のモジュラーなスキル文書を書きます。各スキルは:特定のツール、ライブラリ、API、または技術に焦点を当てること;該当する場合はインストール/セットアップ手順を含むこと;コード例や使用パターンを提供すること;類似のタスクに再利用可能であること。3. 各スキルを環境/skills/ディレクトリに説明的な名前でマークダウンファイルとして保存します。4. その後、作成したスキルを参考にしてタスクを解決します。自己生成されたスキルを充実させたり抽出したりするための「探求」は全くできないんだ。ウェブ検索もできないし、既存のコードベースを探ってベストプラクティスや重要なファイルを探すこともできない。タスクの説明に関する自分の妄想の中だけでしか動けない。スキルが生成された後にセッションを再起動してないみたいだし、4番目の項目からもそれがわかるよね?だから、スキルを生成するために使われた文脈をただ吐き出してるだけ。だから、空っぽのコードベースのエージェントは「もっと計画を立てる」だけじゃ良くならないよ。他の文脈、特にそのただの雰囲気でコーディングされたコードベースに新しい機能を求める場合には、誤解を招く結果だね。

いわゆる「スキル」の目的は、エージェントがその文脈に引き込んで行動できるような短いハウツーリマインダーであることだよ。もし知識がすでにモデルの中にあるなら、推論フェーズで自然に現れるだろうから、スキルとして書くことにはあまりメリットがない。特にそれが非常に関連性が高くて、表に出しにくい場合を除いてはね。

LLMが、何かを達成するために苦労した教訓を表すスキルを書くのはもっと一般的だと思う(願わくば)し、彼らが言っていることとはかなり違う。先週、Claudeに問題解決を手伝ってもらうためにスキルを作ってもらったんだけど、かなり良い出来だったよ。いくつかの問題はあったけど(Claudeは逸話的データを過剰に指定する傾向がある)、正しい方向への強い一歩だと思う。それに、「スキル」は私の意見では広すぎる。私には(Claudeが書いた)個人的なデータを使ってトレーニングを分析するためのスキルがある。再訪する予定のドメインについてかなり長いやり取りを使うと、自己生成されたスキルの余地は十分にあると思う、特にClaudeに何をしないべきかを伝えるときにはね。

うん、私の最も役立つAIツールのいくつかは、「ロールプレイセッション」で作られたスキルだよ。基本的にはエージェントに頭の中を吐き出して、質問をさせてタスクを達成する方法を見つけさせる。そして、最終的には実際の問題解決セッションから得られた証拠に基づいて、もっと厳密で洗練されたスキルにまとめるんだ。

これは、必ずしも人々が「LLMがスキルを生成する」と考えるときに思い描いていることではないことに注意することが重要です。この論文を読んでいると、そうは思えません。エージェントを労働力に導入してスキルを使うように指示するのではなく、タスクを与えるべきです。これは明らかに思えるけど、全員にとってそうとは限らないかも。(それに、研究者にとっては、事前プロンプトのスキル作成が機能しないことが確認されるのは嬉しいことだね。もし機能していたら面白かったけど。)

私は「タスクを完了する際にLLMにスキルを追加させても、通常通りに推論させるのと比べて意味のある改善にはならない」というふうに解釈したんだけど、これが論文の根本的な主張みたいだね。

Hacker Newsで議論の続きを見る