AIエージェントを本番環境で動かすと、プロンプトの調整に膨大な時間を取られます。実行ログを目視で確認し、失敗パターンを見つけ、プロンプトを書き換え、再デプロイする。この手作業のサイクルを自動化するオープンソースツールが登場しました。

この記事でわかること

  • HALOが解決するエージェント運用の課題
  • 実行トレースから改善案を自動生成する仕組み
  • AppWorldベンチマークで示された改善効果
  • インストールから実行までの手順

AIエージェントの「ハーネス問題」とは

https://github.com/context-labs/HALO

AIエージェントの性能は、モデル単体の賢さだけでは決まりません。プロンプト、ツール定義、エラーハンドリングなど、モデルを取り囲む「ハーネス」と呼ばれる実行環境が結果を大きく左右します。

しかし、ハーネスの改善は手探りになりがちです。エージェントが失敗したとき、原因がモデルにあるのかハーネスにあるのかを切り分けるのが難しいためです。1件の失敗ログだけを見て修正すると、別のケースで新たな問題が生じることもあります。

Context Labsが公開したHALO(Hierarchical Agent Loop Optimization)は、この問題に正面から取り組むツールです。エージェントの実行トレースを大量に集めて分析し、ハーネスレベルの改善点を自動で特定します。

HALOの動作原理

HALOの仕組みは4つのステップで構成されています。

第1ステップでは、エージェントの実行トレースを収集します。HALOはOpenTelemetry互換のトレーシングを採用しており、既存のエージェントに計測コードを追加するだけで記録を取れます。

第2ステップでは、収集したトレースをHALO-RLMエンジンに投入します。RLMはRecursive Language Modelsの略で、プリンストン大学のAlex Zhang氏が提唱した再帰的言語モデルの手法です(参考)。GitHubで4,000以上のスターを獲得しています。

第3ステップで、エンジンがトレースを分解し、複数の実行にまたがる共通の失敗パターンを抽出します。単発のエラーではなく、システム的な問題を見つける点が重要です。分析結果はレポートとして出力されます。

第4ステップでは、レポートをCursorやClaude Codeなどのコーディングエージェントに渡し、ハーネスのコードを修正します。修正後に再デプロイしてトレースを集め直せば、改善サイクルが回り続けます。

なぜ汎用エージェントではなくRLMなのか

Claude Codeのような汎用エージェントでトレースを分析すれば済む話に見えますが、実際にはうまくいきません。

開発チームの検証では、汎用エージェントは少数のトレースに含まれる特定のエラーに過剰適合する傾向が見られました。個別の失敗への対処は得意でも、ハーネス全体に共通する構造的な問題を見抜くのが苦手です。

トレースは非常に長くなります。数十回、数百回の実行ログを横断して傾向を掴むには、専用の分析ツールキットが必要です。HALOはRLMをベースにした専用エンジンを構築することで、この課題を解決しました。

AppWorldベンチマークでの実測結果

HALOの効果はAppWorldベンチマークで検証されています。AppWorldは、SpotifyやVenmo、ファイルシステム、電話帳など複数のアプリを横断して操作するタスク群です。

検証ではGemini 3 FlashとClaude Sonnet 4.6の2モデルで、HALOによるハーネス最適化の効果を測定しました。開発用データで改善を繰り返し、テスト用データで過学習していないことを確認する設計です。

Gemini 3 Flashでは、開発セットのSGC(タスク成功率)が36.8%から52.6%に上昇しました。テストセットでも37.5%から48.2%へ10.7ポイント改善しています。Sonnet 4.6では開発セットが73.7%から89.5%へ、テストセットが62.5%から73.2%へそれぞれ向上しました。

HALOが検出した具体的な問題には、ツール呼び出しのハルシネーション、ツール引数の冗長な定義、拒否ループ、意味的正確性の欠如が含まれます。いずれもプロンプトの編集で直接修正でき、元のトレースファイルからも独立に検証可能だったと報告されています。

背景にある「Mismanaged Geniuses仮説」

HALOの設計思想には、Alex Zhang氏らが提唱した「Mismanaged Geniuses仮説」(MGH)が影響しています(参考)。

MGHの主張は明快です。現在のフロンティアLLMはすでに十分に賢いが、それを使う「足場」(スキャフォールド)の設計が追いついていないために性能が引き出せていない、というものです。モデルのスケーリングを続けるよりも、モデルの使い方を最適化するほうが効率的に性能を伸ばせるという見方です。

HALOはこの仮説を実践に落とし込んだツールと言えます。モデルを差し替えるのではなく、ハーネスの改善だけでベンチマークスコアを大幅に引き上げた結果は、MGHを裏付ける実証例です。

インストールと基本的な使い方

HALOはPyPIからインストールできます。

pip install halo-engine
halo --help

トレースファイルを用意したら、以下のコマンドで分析を実行します。

export OPENAI_API_KEY=...
halo path_to_your_traces.jsonl -p "Diagnose errors you find and suggest fixes"

OpenAI Agents SDKとの統合デモがリポジトリに含まれており、トレーシングの組み込み方法を確認できます。現時点ではOpenTelemetry互換のトレース形式に対応しています。

ライセンスはMITで、商用利用にも制限はありません。

まとめ

AIエージェントの運用で手間がかかるのは、モデル選定よりもハーネスの継続的な改善です。HALOは実行トレースの自動分析によって、この改善サイクルを高速化します。モデルを変えずにベンチマークスコアが10ポイント以上向上した実績は、ハーネス最適化の可能性を示しています。本番環境でAIエージェントを運用している開発者にとって、試す価値のあるツールです。