原文翻訳:baoyu.io/blog/code-exec…4
この要約も非常に良x.com/omarsar0/statu…hdiORG Anthropic がまた素晴らしいガイドをリリースしました。 今回のトピックは、ツールをよりインテリジェントに使用し、トークンを大幅に節約できる、より効率的な AI エージェントを構築する方法です。 AI開発者であれば、この記事は絶対に見逃せません! これは主に、AI エージェントがツールを呼び出すときに直面する 3 つの主要な課題、つまりトークン コスト、レイテンシー、およびツールの組み合わせの効率に対処します。 どのように実現するのでしょうか?簡単に言うと、「コード実行」と「モデル記述コード」(MCP)を組み合わせるのです。AIエージェントがツールを直接「呼び出す」のではなく、これらのツールをコードAPIとして「偽装」することで、AIエージェントがプログラマーのようにコードを記述してツールを利用できるようにします。 このガイドから得られる重要なポイントは次のとおりです。 1. トークン効率の「ブラックホール」:AIエージェントが、考えられるすべてのツール定義を即座に脳(コンテキストウィンドウ)に詰め込み、タスクの各ステップで中間結果をプッシュバックすると想像してみてください。これはトークンのオーバーヘッドが爆発的に増加し、複雑なマルチツールタスクでは15万トークンを超えることもあります。 2. 「コードをAPIとして」戦略:この新しいアプローチでは、ツールを直接呼び出すことを避けます。代わりに、「モデルで記述されたコード」(MCP)ツールキットをコードAPI(TypeScriptモジュールなど)にパッケージ化します。AIエージェントはこれらのAPIを「インポート」し、プログラマーのようにプログラム的に呼び出すことができます。その効果は即座に現れ、15万トークンを必要とするタスクが瞬時に2,000トークンに圧縮され、98.7%もの節約を実現しました。 3. ツールの「漸進的発見」:AIエージェントは、すべてのツールを一度にロードするのではなく、「オンデマンド使用」を学習します。つまり、ファイルシステムを検索したり、`search_tools`関数を呼び出して、必要な場合にのみ現在のタスクに関連するツール定義をロードします。これにより、「コンテキスト腐敗」とトークン過負荷の問題が完全に解決されます。 4. 「ローカルデータ処理」:結果を大規模言語モデル(LLM)に渡す前に、コード実行環境でデータを処理(フィルタリング、変換、要約など)します。例えば、AIエージェントは10,000行のテーブルを閲覧する必要はありません。コード環境は、AIエージェントに渡す前に、まず最も重要な5行をフィルタリングします。 5. 制御フローの改善:AIエージェントがツールに段階的に「指示」する(例:「Aを実行、次にBを実行」)のではなく、コード内のネイティブループ、条件分岐、エラー処理を使用してプロセスを直接管理する方が効果的です。これにより、レイテンシが短縮され、トークンの使用量が削減されます。 6. プライバシー保護:機密データは、より大きなモデルの「ビュー」(コンテキスト)に入ることなく、ワークフロー全体に渡されます。モデルは、「返す」または「記録する」ように明示的に指定された値のみを参照します。また、個人を特定できる情報(PII)を自動的に匿名化するオプションもあります。 7. 状態の永続性:AIエージェントは中間結果をファイルに保存し、「中断されたダウンロードを再開」することができます。これにより、長時間実行される「大規模なタスク」を処理し、進行状況を追跡することができます。 8. 再利用可能な「スキルパック」:AIエージェントは、記述した効果的なコードを「再利用可能な関数」(SKILL.MDファイルと共に)として保存できます。時間の経過とともに、強力で高度な「スキルライブラリ」を蓄積できます。 この方法はより複雑でまだ完璧ではありませんが、構築する AI エージェントの効率と精度を確実に向上させることができます。