25

19:19 - 19:47

診断器:より高いレベルのフィードバック抽象化

この章では、いくつものフィードバックループを一つの仕組みとして扱う「診断器(diagnoser)」を見ます。発表者の考えでは、診断器は個別の画像編集エージェントではありません。各ループから来た情報を見て、どのエージェントの設定を直すべきかを判断する、上位レベル(meta-level)の層です。

まず、異なるフィードバックを受け取る

この仕組みの前提は、フィードバックの入口が一つではないことです。たとえば、次のようなループがあります。

  • モデルのループ:人間が付けた評価と本番データを使って、ドリフトや不一致を見つけます。
  • ドッグフーディング(dogfooding)のループ:社内のチームや店舗関係者が実際にアプリを使い、良い・悪いの反応や自由記述を送ります。
  • マーケットプレイスのループ:本番での品質や、カート追加から注文完了までの成果を見て、改善の手がかりにします。

診断器は何をするのか

発表で示された診断器は、これらの異なるループの上に置かれます。診断器の仕事は、単にフィードバックを集めることではありません。受け取った情報を調べ、システム全体を振り返り、問題の原因になっているエージェント、または複数のエージェントを特定します。

流れを順番に書くと、次のようになります。

  1. 複数のフィードバックループから入力を受け取ります。
  2. その入力を振り返り、どの部分で期待と結果が合わなかったかを考えます。
  3. 一つ、または複数の担当エージェントや設定に問題を局所化します。
  4. 特定した場所に合う設定修正(configuration-specific fix)を、調整の流れへ送ります。

この構造の利点は、フィードバックの入口ごとに別々の調整スクリプトを作らなくてよいことです。たとえば、アプリ内の自由記述とマーケットプレイスの指標は、形が大きく異なります。それでも診断器が共通の上位層として働けば、どの入口から問題が来ても、関係するエージェントと設定を探し、必要な修正へつなげられます。発表では、この内部のルーティング規則や設定の形式までは説明されていません。したがって、ここで重要なのは具体的なアルゴリズムではなく、複数のループをまとめて扱う設計の考え方です。

診断・調整・公開判定を分ける

診断器が行うことと、その後の作業は同じではありません。診断は「どこを直すべきか」を見つけます。調整(tuning)は、見つかったエージェントのプロンプトや設定を変更します。その変更をすぐ本番へ出すのではなく、ベンチマーク(benchmark)で再確認します。ガードレールを満たした変更だけを安全な候補として扱い、公開の判断につなげます。この分離があると、問題を見つける役割、修正を作る役割、修正を公開してよいか確認する役割を混同しません。

補足: 診断器が問題を見つけても、必ずシステム全体を作り直すとは限りません。関係する一つ、または複数のエージェントへ、対象を絞った設定修正を送るというのが、この発表で示された考え方です。

図で見る診断器

図: 「Closed Loop Feedback」の図では、3本のフィードバック経路が Diagnoser に集まります。診断器の ReflectRoute が、エージェント設定の出力を通して、調整するエージェントを選びます。つまり、診断器は各ループの横にある個別の部品ではなく、複数のループを見渡して修正先を振り分ける層です。図の場面は動画の19分27秒で確認できます。

この抽象化によって、モデル評価、社内利用、本番のマーケットプレイスという異なる信号を、同じ改善の流れに接続できます。診断器は自分で「良い画像」を生成する担当ではありません。どのエージェントのどの設定を調整する価値があるかを整理し、その修正を次の調整とベンチマークへ渡す担当です。

100% スペースキーとドラッグで移動 | Ctrl/Cmdとホイールで拡大縮小