NVIDIAがオープンソース化したNOOA – エージェント=Pythonクラスという設計思想

NVIDIAがオープンソースのAIエージェントフレームワーク「NOOA(NVIDIA Object-Oriented Agents)」をApache 2.0ライセンスで公開しました。2026年7月30日リリース、現在v0.0.8 alphaです。

面白いのはその設計思想。「エージェント=1つのPythonクラス」という、シンプルかつ大胆なアプローチです。

何が新しいのか?

既存のエージェントフレームワークでは、プロンプトテンプレート、ツール定義、コールバック、ワークフローグラフが別々のファイルや抽象化レイヤーに散らばっています。NOOAはこれを1つのPythonクラスに統合します:

  • メソッド = エージェントが取れるアクション
  • フィールド = エージェントの状態(ステート)
  • docstring = プロンプト
  • 型アノテーション = 実行時に検証される契約

メソッドの本体が ...(省略記号)なら、実行時にLLMが補完します。通常のPythonコードが書いてあれば、そのまま確定的な処理として動きます。この2つを同一クラス内で自由に混ぜられるのがポイントです。

コード例

NVIDIA公式ブログで紹介されているSupportAgentの例を見ると、通常のPythonメソッド(確定的処理)と ... のメソッド(LLMが実行時に処理)が、すべて1つのクラスに収まっています。通常のメソッドでは返却値ロジックをそのまま書き、LLMに任せたいメソッドでは本体を ... にするだけです。

ベンチマーク結果

  • SWE-bench Verified: 82.2% — GitHubのリアルなissue解決
  • CyberGym L1: 86.8% — セキュリティタスクの自律実行
  • ARC-AGI-3 (mean RHAE): 85.1% — 抽象推論・汎用知能

特に注目はトークン効率です。比較したオープンソースハーネスの約半分のトークンで同等以上の精度を達成しているとのこと(NVIDIA自己報告、独立検証はこれから)。

6つの設計アイデア

NVIDIAはNOOAのアーキテクチャで、モデルパフォーマンスを引き上げる6つのインターフェース概念を挙げています:

  1. 型付き入出力 — フリーテキストではなく、型付き引数と検証済み戻り値
  2. 参照渡し — シリアライズされたダンプではなく、ライブオブジェクトを制限付きプレビューで操作
  3. コードとしてのアクション — モデルはPythonコードを書くことで行動する
  4. プログラマブルループ — オーケストレーションループも通常のPythonコード
  5. 明示的オブジェクト状態 — 会話履歴ではなく、オブジェクト上に永続的で型付きの状態
  6. モデル呼び出し可能なハーネスAPI — コンテキストブロックやイベント履歴をモデルが直接操作

独自の記憶システム

NOOAには長期記憶サブシステムも組み込まれています。バックグラウンドで自動要約するのではなく、エージェント自身が意図的に記憶を書き込み・照会・修正します。記憶は型、重要度、タグを持ち、「supports」「contradicts」「derived-from」といった型付きリレーションでナレッジグラフを形成。すべて人間が読めるSQLiteファイルに保存されます。

ARC-AGI-3の評価では、ファイルベースのメモを使った場合より+11.8ポイント向上したとのこと。

アーキテクチャ設計の視点から

E&Eアーキテクチャー設計の経験がある方にとって、NOOAの設計は非常に共感できるものがあるはずです。

自動車のE&Eアーキテクチャーでも「関心の分離」「状態管理の明示化」「型安全性」「テスト容易性」は核心テーマです。NOOAはこれらをAIエージェントの世界で実現しています。エージェントの振る舞いがバラバラの設定ファイルやコールバックチェーンではなく、1つのクラス定義から始まるというのは、まさにソフトウェアエンジニアリングの基本原則をAIに持ち込んだ設計です。

「ハーネス設計だけで、ベンチマークスコアが2桁違う」というNVIDIAの主張は、アーキテクチャ設計の重要性を改めて示しています。モデルが良くなっても、それを取り巻く構造設計で大きく結果が変わる − これはE&Eの世界でも同じですね。

注意点

  • alpha版(v0.0.8)— 本番環境では使えません
  • セキュリティ — ASTチェックはサンドボックス代替ではありません。コンテナまたはVMで実行すること
  • Python 3.12〜3.13が必要
  • インストールは pip install nooa
  • GitHub: NVIDIA-NeMo/labs-OO-Agents

まとめ

NOOAは「AIエージェントを普通のソフトウェア開発のように扱う」という方向性を体現したフレームワークです。エージェントのロジックがPythonクラスに統合されることで、コードレビュー、ユニットテスト、バージョン管理、リファクタリング − 人間もAIコーディングエージェントも、既存のツールチェーンでそのまま開発できるようになります。

アーキテクチャ設計の良し悪しが、同じモデルでも結果を大きく変える。それはまさに、E&E設計で日々向き合っている真理と同じです。


📌 参考情報(すべて公式ソース):
NVIDIA Technical Blog(公式)
・ライセンス: Apache 2.0 / GitHub: NVIDIA-NeMo/labs-OO-Agents
・pip install nooa (v0.0.8 alpha, Python 3.12-3.13)