Code Velocity
開発者ツール

エージェントツール:Claude最適化によるAIパフォーマンスの向上

·7 分で読めます·Anthropic·元の情報源
共有
Claude Codeを使用したAIエージェントツールの評価と最適化により、パフォーマンスが向上する様子を示すイラスト。

AIエージェントのパフォーマンスにおけるツールの重要な役割

急速に進化するAIの状況において、インテリジェントなエージェントの有効性は、それが使いこなすツールの品質と有用性に大きく依存します。AIモデルがますます高性能になり、複雑な多段階タスクを実行できるようになるにつれて、外部システムと「ツール」を介して相互作用する方法が最も重要になります。AI研究開発のリーダーであるAnthropicは、これらのツールを構築、評価、さらには最適化してエージェントのパフォーマンスを劇的に向上させる方法について、重要な洞察を共有しています。

このアプローチの中心にあるのは、大規模言語モデル (LLM) エージェントに膨大な機能へのアクセスを提供するように設計されたシステムであるモデルコンテキストプロトコル (MCP) です。しかし、ツールを提供するだけでは十分ではありません。それらは最大限に効果的でなければなりません。この記事では、Anthropicがエージェント型AIシステムを改善するために確立した技術を掘り下げ、ClaudeのようなAIモデルが自身のツールセットを協調的に洗練させる方法を強調しています。最初のコンセプトから最適化されたツールに至るまでの道のりには、プロトタイプ作成、厳格な評価、およびエージェント自身との協調的なフィードバックループが含まれます。

AIエージェントツールの理解:ソフトウェアの新たなパラダイム

従来、ソフトウェア開発は決定論的原理に基づいて動作します。つまり、同じ入力が与えられれば、関数は常に同じ出力を生成します。例えば、単純なgetWeather("NYC")呼び出しを考えてみてください。これは、常にニューヨーク市の天気を同じ方法で取得します。しかし、AnthropicのClaudeのようなAIエージェントは、非決定性システムとして動作します。これは、同じ初期条件であっても、その応答が異なる可能性があることを意味します。

この根本的な違いは、エージェント用のソフトウェアを設計する際にパラダイムシフトを必要とします。AIエージェント用のツールは、他の開発者向けの単なる関数やAPIではありません。それらは、インテリジェントでありながら、時には予測不能なエンティティのために設計されたインターフェースです。ユーザーが「今日は傘を持っていくべきですか?」と尋ねた場合、エージェントは天気ツールを呼び出したり、一般的な知識を使用したり、場所の明確化を求めたりするかもしれません。時には、エージェントがハルシネーションを起こしたり、ツールの正しい使用方法を理解できなかったりすることもあります。

したがって、目標は、エージェントが効果を発揮できる「表面積」を増やすことです。これは、堅牢であるだけでなく、エージェントにとって「人間工学的に」使いやすいツールを作成することを意味します。興味深いことに、Anthropicの経験によれば、エージェントの非決定性な性質を念頭に置いて設計されたツールは、人間にとっても驚くほど直感的で理解しやすいものになることが多いとのことです。このツール開発への視点は、Claude OpusClaude Sonnetのような洗練されたモデルの実世界アプリケーションにおける可能性を最大限に引き出す鍵となります。

効果的なAIツールの開発:プロトタイプから最適化まで

効果的なAIエージェントツールを作成するプロセスは、構築、テスト、洗練を繰り返す反復的なプロセスです。Anthropicは、迅速なプロトタイプ作成から始まり、包括的な評価へと進む実践的なアプローチを強調しています。

迅速なプロトタイプの構築

エージェントがツールとどのように相互作用するかを予測することは、実際の経験がなければ困難な場合があります。最初のステップは、プロトタイプを迅速に立ち上げることです。開発者がツール作成にClaude Codeのようなエージェントを活用している場合、基盤となるソフトウェアライブラリ、API、またはSDK(MCP SDKを含む)の構造化されたドキュメントを提供することが重要です。公式ドキュメントサイトによく見られるフラットな「llms.txt」ファイルは、特にLLMに優しいです。

これらのプロトタイプは、ローカルのMCPサーバーまたはデスクトップ拡張機能 (DXT) でラップして、Claude CodeまたはClaudeデスクトップアプリ内でのローカルテストを容易にすることができます。プログラムによるテストの場合、ツールはAnthropic API呼び出しに直接渡すこともできます。この初期段階では、開発者がツールを個人的にテストし、ユーザーフィードバックを収集し、ツールが処理することを意図しているユースケースやプロンプトについて直感を構築することが奨励されます。

包括的な評価の実施

プロトタイプが機能し始めると、次の重要なステップは、系統的な評価を通じてエージェントがこれらのツールをどの程度効果的に使用しているかを測定することです。これには、実世界のシナリオに基づいた多数の評価タスクを生成することが含まれます。

評価タスクの生成

評価タスクは、実際のユーザーのクエリから着想を得て、現実的なデータソースを利用する必要があります。ツールの複雑さを適切にストレステストできない単純な「サンドボックス」環境を避けることが重要です。強力な評価タスクは、多くの場合、ソリューションを達成するためにエージェントが複数のツール呼び出しを行うことを必要とします。

タスクの種類強力な例弱い例
会議のスケジュール設定「来週、JaneとAcme社の最新プロジェクトについて話し合う会議をスケジュールしてください。前回のプロジェクト計画会議の議事録を添付し、会議室を予約してください。」「来週、jane@acme.corpと会議をスケジュールしてください。」
カスタマーサービス「顧客ID 9182から、一度の購入試行で3回請求されたとの報告がありました。関連するすべてのログエントリを検索し、他の顧客も同じ問題の影響を受けたかどうかを判断してください。」「支払いログから'purchase_complete'と'customer_id=9182'を検索してください。」
維持分析「顧客のSarah Chenが解約リクエストを提出しました。解約防止策を準備してください。以下を判断してください:(1)なぜ解約するのか、(2)最も魅力的な解約防止策は何か、(3)オファーを行う前に注意すべきリスク要因は何か。」「顧客ID 45892による解約リクエストを見つけてください。」

各プロンプトには、検証可能な応答または結果がペアになっている必要があります。検証子は、単純な文字列比較から、応答を判断するためにエージェントを動員するより高度な評価まで多岐にわたります。マイナーな書式設定の違いのために有効な応答を却下するほど厳しすぎる検証子を避けることが重要です。オプションとして、開発者は予想されるツール呼び出しを指定できますが、エージェントが解決策への複数の有効な経路を見つける可能性があるため、特定の戦略に過度に指定したり過度に適合させたりしないように注意して行う必要があります。

評価のプログラム的実行

Anthropicは、単純なエージェント型ループ(例:LLM APIとツール呼び出しを交互に行うwhileループ)内で直接LLM API呼び出しを使用して、評価をプログラム的に実行することを推奨しています。各評価エージェントには、単一のタスクプロンプトとツールが与えられます。これらのエージェントのシステムプロンプトでは、ツール呼び出しと応答ブロックの前に、構造化された応答ブロック(検証用)、推論、フィードバックブロックを出力するように指示することが有益です。これにより、思考の連鎖 (CoT) の行動が促進され、LLMの実効的な知性が向上します。Claudeの「インターリーブ思考」機能は、同様の機能を箱から出してすぐに提供し、エージェントが特定のツール選択を行う理由に関する洞察を提供します。

トップレベルの精度を超えて、総実行時間、ツール呼び出し回数、トークン消費量、ツールエラーなどのメトリックを収集することが重要です。ツール呼び出しを追跡することで、一般的なエージェントのワークフローが明らかになり、ツールの統合や洗練の機会を示唆することができます。

AIによるツールの最適化:Claudeの協調的アプローチ

評価結果の分析は重要な段階です。エージェント自身もこのプロセスにおいて貴重なパートナーとなり、問題を発見し、フィードバックを提供することができます。しかし、彼らのフィードバックは常に明示的であるとは限りません。彼らが省略するものも、彼らが含めるものと同じくらい多くを物語ることがあります。開発者はエージェントの推論 (CoT) を精査し、生のトランスクリプト(ツール呼び出しと応答を含む)を確認し、ツール呼び出しのメトリックを分析する必要があります。たとえば、冗長なツール呼び出しは、ページネーションやトークン制限の調整の必要性を示唆する可能性があり、無効なパラメータによる頻繁なエラーは、ツールの説明が不明確であることを示す可能性があります。

Anthropicの注目すべき例として、Claudeのウェブ検索ツールにおいて、不要な「2025」をクエリに追加して結果に偏りを与えていたことが挙げられます。Claudeを正しい方向に導くためには、ツールの説明を改善することが鍵でした。

Anthropicの手法の最も革新的な側面は、エージェントが自分自身の結果を分析し、自分のツールを改善できるようにすることです。評価トランスクリプトを結合し、Claude Codeにフィードすることで、開発者は複雑な相互作用を分析し、ツールをリファクタリングするClaudeの専門知識を活用できます。Claudeは、数多くの変更後も、ツールの実装と説明の間の一貫性を確保することに優れています。この強力なフィードバックループは、Anthropic自身のツール開発に関するアドバイスの多くが、エージェント支援による最適化というこのプロセスを通じて生成され、洗練されてきたことを意味しており、ソフトウェア開発におけるエージェント型ワークフローの増加傾向を反映しています。

高品質なエージェントツール開発のための主要原則

Anthropicは、広範な実験とエージェント主導の最適化を通じて、AIエージェント向けの高品質なツールを作成するためのいくつかの主要原則を特定しました。

  1. 戦略的なツール選択: どのツールを実装し、そして何よりも、どのツールを実装しないかを賢明に選択します。不必要なツールでエージェントを過負荷にすると、混乱や非効率につながる可能性があります。
  2. 明確な名前空間: 効果的な名前空間を通じて、各ツールの明確な境界と機能を定義します。これにより、エージェントは各機能の正確なスコープと目的を理解するのに役立ちます。
  3. 意味のあるコンテキストの返却: ツールは、冗長または余分な情報なしに、エージェントに簡潔で関連性のあるコンテキストを返す必要があり、情報に基づいた意思決定を可能にします。
  4. トークン効率の最適化: トークン効率が良いようにツールの応答を最適化します。LLMのインタラクションでは、コストと処理速度の両方においてすべてのトークンが重要です。
  5. 正確なプロンプトエンジニアリング: ツールの説明と仕様を綿密にプロンプトエンジニアリングします。明確で曖昧さのない指示は、エージェントがツールを正しく解釈して利用するために不可欠です。

これらの原則に従い、反復的でエージェント支援型の開発サイクルを採用することで、開発者は堅牢で効率的、かつ非常に効果的なツールを構築でき、AIエージェントのパフォーマンスと機能を大幅に向上させ、これらのインテリジェントシステムが達成できることの限界を押し広げることができます。

よくある質問

What is the Model Context Protocol (MCP) and how does it relate to AI agents?
The Model Context Protocol (MCP) is a framework designed to empower large language model (LLM) agents by providing them with access to potentially hundreds of tools, enabling them to solve complex real-world tasks. It defines a standardized way for agents to interact with external systems and data sources, transforming how AI agents can leverage deterministic software. Rather than agents relying solely on their internal knowledge, MCP allows them to use specialized tools, much like a human uses various applications or references to complete tasks, thus significantly expanding their capabilities and effectiveness across diverse domains.
Why is designing tools specifically for non-deterministic AI agents different from traditional software development?
Traditional software development typically involves creating contracts between deterministic systems, where a given input always yields the same predictable output. AI agents, however, are non-deterministic, meaning their responses can vary even with identical starting conditions. This fundamental difference requires rethinking tool design. Instead of assuming precise, static interactions, tools for AI agents must be robust enough to handle varied agentic reasoning, potential misunderstandings, or even hallucinations. The goal is to make tools 'ergonomic' for agents, facilitating their diverse problem-solving strategies, which often results in surprisingly intuitive tools for human users too.
What are the critical steps in evaluating the performance of AI agent tools?
Evaluating AI agent tools involves a systematic approach starting with generating a diverse set of real-world evaluation tasks. These tasks should be complex enough to stress-test tools, potentially requiring multiple tool calls. Next, the evaluation is run programmatically, typically using agentic loops that simulate how an agent would interact with the tools. Key metrics collected include accuracy, total runtime, number of tool calls, token consumption, and tool errors. Finally, analyzing results involves having agents provide reasoning and feedback, reviewing raw transcripts, and identifying patterns in tool usage or errors to pinpoint areas for improvement in tool descriptions, schemas, or implementations.
How can AI agents like Claude optimize their own tools?
Anthropic demonstrates that AI agents, particularly models like Claude Code, can play a pivotal role in optimizing the very tools they use. This is achieved by feeding the agent transcripts and results from tool evaluations. Claude can then analyze these interactions, identify inefficiencies, inconsistencies, or areas where tool descriptions are unclear, and suggest refactorings. For instance, it can ensure that tool implementations and descriptions remain self-consistent after changes or recommend adjustments to parameters for better token efficiency. This collaborative approach leverages the agent's analytical capabilities to continuously improve the quality and ergonomics of its toolset, leading to enhanced performance.
What are the key principles for writing high-quality tools for AI agents?
Several core principles guide the creation of effective tools for AI agents. Firstly, judiciously choosing which tools to implement (and which to omit) is crucial for agent clarity and efficiency. Secondly, namespacing tools clearly defines their functional boundaries, reducing ambiguity for the agent. Thirdly, tools should return meaningful and concise context to agents, aiding their decision-making. Fourthly, optimizing tool responses for token efficiency is vital for managing costs and processing speed in LLM interactions. Lastly, meticulous prompt-engineering of tool descriptions and specifications ensures agents accurately understand and utilize each tool's purpose and capabilities, minimizing errors and maximizing effectiveness.

最新情報を入手

最新のAIニュースをメールでお届けします。

共有