モデル・環境間の汎化
前章では、改善に使ったタスクと最終評価用タスクを分けた。本章ではさらに、ある対象モデル(target model)向けに改善したハーネス(harness)が、別のモデルや更新後のツールでも動くかを問う。プロンプトが特定モデルの指示解釈に依存したり、ワークフローが古いエラー形式を仮定したり、検証器(validator)が古いスキーマだけを許したりするためである。同じハーネスを移す場合と、同じ最適化器(optimizer)で作り直す場合を分けて考える。
何が変わったかを分ける
ハーネス性能を次の関数として考える。
\[ J(H;\theta,E,\mathcal{D},v), \]
ここで\(\theta\)は対象モデル、\(E\)はツールや実行環境を含む環境、\(\mathcal{D}\)はタスク分布、\(v\)はハーネスインターフェースの版である。一つだけ変えた評価と、複数を同時に変えた評価を区別する。
| 軸 | 変更例 | 主な失敗 |
|---|---|---|
| 対象モデル | モデル系統、規模、提供者 | 指示の解釈、ツール呼び出し形式、コンテキスト上限 |
| モデル版 | API更新、チェックポイント更新 | サンプリング、拒否、スキーマ準拠 |
| 環境 | ウェブサイト、データベース、シミュレータ | 観測、状態遷移、遅延 |
| ツール契約 | 名前、引数、返却値のスキーマ | 無効な呼び出し、無言の誤解析 |
| 権限 | 読み取り・書き込み・ネットワークの範囲 | 拒否、越権、代替動作の誤作動 |
| タスク分布 | ドメイン、難度、言語 | ベンチマーク固有の近道 |
| ハーネスインターフェース | フック、メモリのスキーマ、実行環境 | パッチの非互換性 |
対象横断は\(\theta\)を変え、同じ\(H\)を使う評価である。対象ごとに探索をやり直して得た\(H_\theta\)を比較する実験は複数対象最適化であり、成果物の転用ではない。
何が引き継がれたか
ハーネス最適化器の転用(transfer)には三種類ある。
- 成果物の転用: 同じハーネスを新しい対象・環境へ適用する
- 最適化器の転用: 同じ最適化器を使い、新しい対象向けハーネスを探索する
- 設計の転用: 一方で見つけたモジュールやパターンを別の最適化期間(campaign)の初期値にする
たとえば同じパッチを別モデルへそのまま適用するのが成果物の転用、別モデル向けに探索をやり直すのが最適化器の転用、パッチの方針だけを初期案として使うのが設計の転用である。
これらを混同すると、何が一般化したか分からない。学習済み編集器(learned editor)が新しい対象でパッチを生成できても、元のパッチ自体が転用できたわけではない。
既存研究は何を転用したか
複数モデルやドメインで改善したという結果だけでは、同じ成果物(artifact)が転用できたのか、最適化器を再実行したのか分からない。代表例を転用単位で整理する。
| 研究 | 転用したもの | 読み方 |
|---|---|---|
| RLPrompt (Deng ほか 2022年) | 転用元モデルで学習した離散プロンプト | RoBERTaとGPT-2間の成果物の転用。方向によって結果が異なる |
| ADAS (Hu ほか 2025年) | 発見したエージェント設計 | 別ドメイン・モデルへの設計の転用。プロンプトやアダプタの再調整を区別する |
| DGM (J. Zhang ほか 2026年) | コーディングエージェントのコードまたは探索法 | SWE-benchとPolyglot間の成果物の転用と再探索を分ける |
| Meta-Harness (Lee ほか 2026年) | コーディング提案器 | ドメインごとに別ハーネスを探索する最適化器の転用 |
| Harness-R1 (Shao ほか 2026年) | 学習済み編集器と共通フック | 共有実行環境内の対象横断。新しいツールAPIへの転用ではない |
| Self-Harness (H. Zhang ほか 2026年) | 最適化手順 | 対象モデルごとにハーネスを作り直す。発見したハーネス自体のモデル間転用とは別である |
プロンプト最適化器を複数モデルで実行した場合も、モデルごとに更新候補(candidate)を作り直せば成果物の転用ではない。同じアーキテクチャと呼ぶ場合も、転用先で許したプロンプト、アダプタ、検証器の変更を差分で示す。コード成果物はツールのパス、コンテナ、テストコマンド、リポジトリ構成へ依存するため、モデル横断だけを変えた実験は実行環境の可搬性を測っていない。
実行環境を変える
環境横断では、対象モデルを固定し、ツールと状態遷移を変える。
環境差を段階化する。
| 水準 | 変更 | 例 |
|---|---|---|
| パッチ水準 | バグ修正、マイナー版 | エラーメッセージの変化 |
| 契約互換 | 新しいフィールド、順序、遅延 | 任意のスキーマフィールド |
| 契約破壊 | ツール名、引数、認証 | API移行 |
| 振る舞い | ウェブサイトのポリシー(policy)、シミュレータの力学 | 同じアクションの結果が変化 |
| 敵対的 | プロンプトインジェクション、悪意あるツール出力 | 信頼できない観測 |
本書で検討した一次研究の範囲では、契約を破壊するツールAPIや権限変更まで体系的に評価した例は限られる。環境横断の汎化は未解決問題として残る。
組み合わせへの依存を測る
ハーネスと対象の効果は加法的とは限らない。同じ更新候補と現行版(incumbent)を対象×環境の行列で評価し、平均だけでなく最悪値と性能退行件数を報告する。あるモデルで大きく改善し、別モデルで悪化するなら、そのハーネスは対象固有である。
版の更新への耐性
提供者のモデルやツールAPIは同じ名前でも更新される。対象横断の研究ではモデル識別子(identifier, ID)だけでなく、チェックポイント、APIの日付、復号パラメータ、システム方策(system policy)を記録する。
新しい版では現行版と更新候補を同条件で再評価し、出力スキーマ、ツール呼び出し、遅延、拒否を分解する。言語やドメインを変える場合は評価器(evaluator)の品質も変わり得るため、人間が検証した部分集合またはドメイン固有の実行可能な検証器を置く。ハーネスを普遍的な成果物とみなさず、互換性行列を版のメタデータへ持たせる。
最小限の転用評価
一つの成果物 \(H^*\)の転用を調べる場合は、次を固定する。
- 転用元の対象・環境の開発用データ(development data)だけで\(H^*\)を確定する
- 更新候補の転用元、履歴、スコアを凍結する
- 転用先でプロンプトやコードを編集しないゼロショット転用を測る
- 必要なら、少量の転用先の昇格用検証データ(promotion validation)による適応後転用を別に測る
- 現行版 \(H_0\)も転用先で評価する
- 平均、最悪値、性能退行件数、無効件数を報告する
- 対象モデルと環境を同時に変えた事例を別に置く
ゼロショット転用と適応後転用を同じ表の列に入れない。
要点
対象横断、環境横断、タスク横断を別軸として評価する。同じ手法を各対象で再探索した結果は最適化器の転用であり、一つの成果物の転用ではない。本書で検討した一次研究にはモデル横断やドメイン横断の限定例がある一方、新しいツールAPI、実行環境、権限まで含む環境横断の証拠は限られる。