Generative AI

モデル性能を高める 6 つのエージェント ハーネス機能

Reading Time: 3 minutes

優れた AI エージェントの構築は、適切なモデルを選択することだけでは実現しません。 ハーネスとは、モデルを取り巻くアーキテクチャのことです。 コンテキストのレンダリング、アクションの実行、状態の管理、およびタスク完了の判断方法は、モデルそのものと同じくらい、成果を左右します。 同一のモデルを使ってもハーネス設計だけで、ベンチマーク結果が 2 桁ポイント変わり、トークン コストにも大きな差が生じます。 

NVIDIA Labs Object-Oriented Agents (NOOA) は、このインサイトを基に構築されたオープンソースの研究プレビューです。 Python フレームワーク、メモリ システム、機能テスト、およびベンチマーク エージェントが備え、コードデータや評価結果をすべて公開しているため、コミュニティが結果を再現、検証、発展させることができます。

エージェントは、Python オブジェクトである

従来のエージェントの開発では、プロンプト テンプレート、ツール スキーマ、コールバック コード、ワークフロー グラフ全体にわたる複数の構成要素を調整する必要がありました。 NOOA は、よりシンプルなアプローチを採用しています。エージェントは単一の Python クラスです。 メソッドが、エージェントの機能であり、 フィールドが状態であり、ドキュメント ストリングが、プロンプトであり、 型アノテーション、強制されるコントラクトです。 本体が省略符号 (…) である標準的な Python メソッドは、LLM 駆動ループによって補完され 通常の本体を持つメソッドは決定論的な Python として実行されます。

class SupportAgent(Agent):
    """You are a support agent for a customer service system."""
 
    order_db: OrderDB  # object state: model-visible, passed by reference
 
    def is_refund_eligible(self, order: Order) -> bool:
        """Return whether an order is eligible for a refund."""
        return order.delivered and order.days_since_delivery <= 30
 
    @strategy(PredictStrategy())
    async def classify(self, message: str) -> TicketKind:
        """Classify the customer message into the best ticket kind."""
        ...
 
    async def triage(self, message: str, photo: Image | None,
                     order: Order | None) -> Ticket:
        """Triage a customer message and create a support ticket."""

その成果は、エージェント開発が従来のソフトウェア開発と同じになることです。 エージェントは、他のあらゆるコードベースで既に使用しているのと同じツールを使用して、人間または AI コーディング エージェントによって、差分、コードレビュー、単体テスト、トレース、バージョン管理、およびリファクタリングを行うことができます。

6 つのアイデア、1 つのインターフェイス

NOOA アーキテクチャは、エージェントの性能を高める 6 つのモデル向けインターフェイスの考え方を定義しています。

  1. タイプ入出力: エージェント型呼び出しは、タイプ入りの引数と検証済みの戻り値を持ち、フリーテキストではありません。
  2. リファレンス渡し: モデルは、ライブ Python オブジェクトで操作し、シリアル化されたダンプの代わりに、限定されたプレビューを表示します。
  3. コードによるアクション: モデルは、制御フローとインライン メソッド呼び出しを含む、Python を記述することで動作します。
  4. プログラマブルなループ設計: オーケストレーション ループは、通常の Python であり、開発者やモデル自体が書き込み可能です。
  5. 明示的なオブジェクトステート: 永続的なの型付きのステートは、会話履歴だけではなく、エージェント オブジェクト上に存在します。
  6. モデルから呼び出し可能なハーネス API: コンテキスト ブロックとイベント履歴は、モデルが検査および管理できる API です。

エージェントは、自らのメモリをキュレーションする

NOOA には、長期メモリ サブシステムが含まれています。 自動的なバックグラウンド 要約パイプラインではなく、メモリはエージェント自身がモデルから呼び出し可能なツールを通じてキュレーションしたものであり、業務の一部としてメモリを意図的に書き混み、クエリし、訂正します。一方で、現在のターンに関連する自発的なメモリを自動的にコンテキストに変換します。 レコードは、型、重要度、タグがあります。 「supports」、「contradicts」、「derived-from」などの型付きの関係により、レコードは平坦なログではなく知識グラフへと統合されます。 バックグラウンド リフレクション パスは、重複のマージ、関連レコードのリンク付け、エピソードからインサイトへと蒸留、不要情報の削除を行い、ストアを整理します。

エージェントは、再トレーニングすることなく、セッション全体で知識を蓄積します。 すべては、人間が読み取り可能な 1 つの SQLite ファイルに保存されており、チームは標準的な手法を使用して検査、バックアップ、およびレビューできます。 記憶は、現在のエージェントの状態を参照し、最新の知識を維持できます。 複数のエージェントが、個別の所有権を維持しながら、1 つのストアを共有できます。 次の ARC-AGI-3 評価では、このシステムは、ファイルベースのメモを使用した同じエージェントと比較して、RHAE を +11.8 ポイント向上させました。

同じモデルからより高い能力を引き出す

この 6 つの機能は、同じ汎用インターフェイスにより、いくつかの異なる分野で測定可能であり、高度な成果をもたらします。

ソフトウェア エンジニアリング
SWE-bench Verified では、NOOA は、提出時に GPT-5.5 で公開されている SOTA (79.2%) を上回る 82.2% に達し、Opus 4.6 では 79.8% に達しています。ベンチマーク固有のプロンプトなしの汎用的な 253 行のエージェントを使用しているため、一般的な 253 行のエージェントを使用しています。

サイバーセキュリティ
CyberGym L1 では、NOOA は GPT-5.5 で 86.8% の解決率を達成しています。 最もスコアを獲得したオープンソース エージェントであり、大部分の主要なクローズドソース システムを凌駕しています。 ネットワーク アクセスを断し、あらゆる軌道を対象にルールベースの「チート チェック」を行っているため、結果は公開されている脆弱性を調べることではなく、コード自体に対する推論から得られます。 サイバーセキュリティ固有の方針は使用されませんでした。

一般的な推論
ARC-AGI-3 では、単一の NOOA エージェントの平均 RHAE が GPT-5.5 (スキル: 仮説主導のベースライン以上で +8.5 ポイント、ファイルベースのメモリより +11.8 ポイント)、GPT-5.6-sol で 85.1% に達し、このベンチマークのスコア コスト Pareto フロンティアを全体的に見て、ゲーム 1 つあたり 20 ドル未満へと向上させています (17.85 ドルと 13.3 ドル、スコアカード: GPT-5.5GPT-5.6-sol)。 

同等以上の性能、ただしトークン数は半分、コンテキストの圧縮は行わない

ハーネス エンジニアリングは精度を上げるだけでなく、効率性も生み出します。 GPT-5.5 では、29 回の LLM コールと、タスクあたり最大 110 万トークンを生成した SWE-bench Verified で NOOA は 82.2% となっています。 比較ハーネスは、78.2% に達するには 66 回のコールと 220 万トークンが必要で、78.6% に達するには 29 回のコールと 130 万トークンが必要です。 同等以上の性能を約半分のコストで実現しています。

これを推進するメカニズムは 2 つあります。 

まず、「リファレンスで渡す」ことです。ツールの結果は、テキストとしてコンテキスト ウィンドウをラウンド トリップするのではなく、コードで直接構成された Python のライブ 変数となります。 モデルには、標準化された制限付きのプレビューが表示されます。その価値は実行環境でもそのまま残ります。 

第 2 に、この同じ特性により、NOOA はフロンティア モデルを使用した SWE-Bench の解決にコンテキスト コンパクト化を必要としないことがわかります。セッション数のピーク時は、20 万~ 400 万ウィンドウに対して、22 万~ 72k のプロンプト トークンとなります。 NOOA は、ツールの結果をコンテキスト ウィンドウにシリアル化するのではなく、参照によって渡すため、トランスクリプトは追加のみで、セッション全体を通じてキャッシュ有効なままです。 要約パスは必要なく、プリフィル キャッシュはタスク全体全体にわたって影響を及ぼします。

ARC-AGI-3 で 85.1% RHAE を達成し、1 ゲームあたり 20 ドル未満

ARC-AGI-3 は、エージェントを未知のグリッド ゲームに配置します。 ルール、目標、コントロールは、行動することで発見されなければなりません。 NOOA の例は、コンパニオン型の DreamTeam アーキテクチャのシングル エージェント ポートしたものです。6 つの特化型エージェントが、共有された実行可能な世界モデルを中心に調整し、1 つのエージェントと 45 行のスキルに 1 つに削減されます。 このゲームは、追加専用ファイルを通じて状態やアクションを交換する別々のハーネス プロセスで実行されています。 

このスキルにより、エージェントは、観測された状態をエンコードし、次の状態を予測する一連の Python プログラムのセットとして世界モデルを構築し、そのワークスペース内で世界モデルをエンコードします。 エージェントは、自社の予測値を実際の状況と比較し、不一致があった場合には自社のモデルや仮説を修正します。

2 時間の制限の下で競技モードを行う場合、GPT-5.5 フリートの平均 RHAE (スコアカード) は 50.2% に達します。 世界モデリング スキルは、仮説主導のベースラインと比較して 8.5 ポイント以上貢献し、メモリ サブシステムは、ファイル ベースのメモと比較して 11.8 ポイント以上貢献します。 GPT-5.6-sol の実績は、85.1% で、1 ゲームあたり約 13.3 ドル (スコアカード) となり、25 本のゲーム中、19 本の完全解決率となり、このベンチマークのスコア コスト パレートのフロンティアを上回ります。

どちらのフリートも 1 ゲームあたり 20 ドル未満です。 これらのフリートは、階層型のサンドボックス化の下で実行されます。これには、プロセス内セル ガード、実行時ごとの OS 権限のドロップ、ゲーム ID のエンドツーエンドの匿名化、およびカーネルによるセル単位のサンドボックスが含まれます。 両社に対するレッド チームの監査 (GPT-5.5 のライブ ランニングで 18 件の合格証、GPT-5.6-sole の実行で 9 件のスキャナーによる監査) を行いました。その結果、いかなるルールにも漏えいがないことがわかりました。 本番環境でのデプロイのために、NOOA は NVIDIA OpenShell のセキュア ランタイムと組み合わせます。

NOOA を脆弱性発見に適用する

脆弱性の発見は、エージェント フレームワークにとって要求の厳しいテストです。 エージェントは、大規模なコードベースから候補バグを見つけ、その脆弱なコードをクラッシュさせるような入力を生成することで、そのバグが本物であることを証明しなければなりません。 証明のステップは容赦がありません。 クラッシュは正しいものでなければならず、再現しないと、その検出結果は価値がありません。 NOOA は、この種のワークフローを構築しやすくします。 決定論的なチェックとモデル推論は、1 つのタイプ付きオブジェクト上で実行されるため、各検証ステップは、モデルが従う場合としない場合があります。プロンプト命令の代わりに、強制的なコードとして実行されます。

最近の NVIDIA の社内調査では、検証パイプラインを単一の NOOA オブジェクトとして実装しました。 このモデルは、エージェント独自のメソッドを呼び出す Python を記述および実行します。これにより、探索とチェックを、固定されたツール メニューを通じてルーティングするのではなく、1 か所で処理します。 これらの方法のうち 3 つは、決定論的なゲートです。 1 つ目の方法は、検証ツールの生出力を、明確な衝突または衝突なしの判断に変換します。 2 回目では、そのクラッシュが報告された脆弱性と一致することを確認します。 3 つ目は、入力内容を再実行して再現する確認を行います。 このゲートは通常の型付きメソッドであり、別々のプロセス間で渡される自由形式のテキストではないため、検出結果はコードにそのように記載されている場合にのみ認められ、実行全体は検査やテストが可能な単一のトレースです。

実際の脆弱性の再発見のベンチマークである CyberGym L1 では、NOOA 拡張型研究ハーネスが、ネットワーク アクセスなしで、コモディティ モデルによるタスクの 86.8% を解決しました。

オープン エージェント エコシステムへの研究プレビュー

エージェント エコシステムは、広範なオープンシステムや専用システム全体にわたるオーケストレーション、ツール、メモリ、モデル インターフェイス、評価への貢献を通じて、急速に進化しました。 NOOA は、ソフトウェア エンジニアリング、サイバーセキュリティ、推論ベンチマークの分野で最先端の成果に達する、オブジェクト指向のエージェント フレームワークの形でオープンエージェントの研究を可能にします。 NVIDIA は、フレームワーク、テスト、ベンチマーク エージェント、評価手法を一般に公開しています。 

オープンな実装が重要なのは、チームがそのアプローチを信頼するのではなく、検査できるためです。 開発チームは、単一のストア内で人間が読むような状態を持つ、透明性が高く、検査可能なエージェントを構築でき、クエリ可能なイベント履歴、そしてチームが構築できる既存のセキュリティ レビュー、アクセス制御、および可観測性の実践をサポートする標準的なインターフェイスを基盤に構築できます。

NOOA は、オープンな実験的なサーフェスとして利用できます。既存のハーネスの代替ではありません。 レポートに記載されている手法は、あらゆるプロジェクトが採用、改善できるように、文書化されています。 

今すぐ始める

  • 技術レポートを読む。 
  • フレームワーク、機能テスト、ベンチマーク エージェントを含むコードを入手します。
  • フリート ランナーを使用して世界モデル ソルバーの examples/arc_agi_3 を実行します。
  • NVIDIA OpenShell で安全にデプロイします。

翻訳に関する免責事項

この記事は、「Six Agent Harness Capabilities for Higher Model Performance」の抄訳で、お客様の利便性のために機械翻訳によって翻訳されたものです。NVIDIA では、翻訳の正確さを期すために注意を払っておりますが、翻訳の正確性については保証いたしません。翻訳された記事の内容の正確性に関して疑問が生じた場合は、原典である英語の記事を参照してください。

Tags