Ai2、海洋監視AIエージェント構築の教訓を公開

エージェントの構造

soul・skills・configの三層設計
システムプロンプト行動境界を明示
モデルやハーネスは設定変更で差し替え
専用CLIでツール呼び出しを安定化

信頼性の担保

ユーザーごとの隔離セッションで分離
モデルでなくエージェント全体を評価
専門家ルーブリックで採点
回帰版は本番投入せず
詳細を読む

非営利AI研究機関のAi2は7月15日、海洋監視AIエージェント「Shippy」の構築で得た知見を技術ブログで公開しました。Shippyは違法漁業や海上の不審行動を分析官が把握するためのエージェントで、誤答が巡視船の誤誘導につながりかねないリスク領域で運用されます。開発チームが最重視したのはモデルの性能ではなく、正確さと信頼性を保つシステム設計だと強調しています。

同社はエージェントを「soul」「skills」「config」の三層でとらえています。soulはペルソナと行動境界を定めるシステムプロンプト、skillsは要求種別ごとの対応手順を記したマークダウンファイル、configは実行ハーネスや使用モデルなどの設定です。ハーネスにはオープンソースのOpenClaw、モデルにはClaude Opus 4.6を採用し、モデルやハーネスの変更は再ビルドではなく設定変更だけで済む構成にしています。

エージェント非決定的である一方、使うツールは予測可能にできます。ShippyはAPIを直接叩かず、専用のSkylight CLIを介して認証やページング、構造化出力を処理します。初期の試作でAPI呼び出しをモデルに任せた際は不正なページングや誤った絞り込みによる微妙なバグが続発したため、複雑さをCLIに閉じ込め、各層を独立してテストできるようにしました。

利用者のデータ分離も大きな課題でした。Skylightは70カ国以上の政府機関やNGOに使われており、ある担当者の会話や監視対象が他者に漏れてはなりません。同社はエージェント基盤「Mothership」を構築し、セッションごとに専用のKubernetesポッドを立ち上げ、利用者のトークンを実行時に注入してデータを本人の権限内に限定しています。

評価では、静的な質問でモデルを測る一般的なベンチマークではなく、実データに対してモデル・skills・サンドボックスを一体で採点する独自の仕組みを用います。専門家がシナリオと重み付きルーブリックを作成し、LLMが判定者として各基準を0〜1で評価、加重合計が閾値を超えるかで合否を決めます。skillsやモデル、データが変わるたびに再実行し、基準で後退した版はユーザーに届けない運用です。

今後はShippyがSkylightの地図を直接操作するUI制御、簡単な照会を小型モデルに振り分けるモデルルーティング、スレッドをまたいで文脈を保持するクロススレッド記憶を計画しています。Mothershipは汎用基盤として設計されており、野生生物保護のEarthRangerなど他分野への展開も視野に入れています。高リスク領域でエージェントをどう信頼できるものにするか、その実装知見が具体的に示された事例と言えるでしょう。