エージェントのプロンプトを最適化する

最適化は、品質フライホイール の最終段階です。評価と失敗のクラスタリングによってシステム上の問題を特定したら、Optimizer サービスを使用して、エージェントのシステム指示やツール記述をプログラムで調整できます。この自動プロセスでは、障害の正確なポイントを特定し、評価データセットに最適なプロンプトが見つかるまで、ターゲットを絞った更新を繰り返し提案します。

最適化フライホイール

エージェントの調整は通常、次の 3 ステップのループで行われます。

  1. 失敗の分析: エージェントがユーザー ID を確認できない「損失クラスタ」など、特定の動作のギャップを特定します。
  2. 改善案の提案: Optimizer は、システム指示の「パッチ」(例: 「予約を確認する前に、必ずマイレージ プログラムの番号を尋ねる」)を生成します。
  3. 改善の検証: システムは自動的に並行比較評価を実行し、新しい指示によって回帰を引き起こすことなくスコアが向上することを確認します。

SDK を使用してプログラムで最適化する

Agent Platform SDK を使用して、最適化ジョブを直接トリガーできます。Optimizer は、GEPAMIPRO などの高度な手法を使用して、テストケースから新しいルールを導き出します。

# Automatically refine the system prompt to fix identified issues
optimize_result = client.optimizer.optimize(
    targets=["system_prompt"],    # Specify which resource to optimize
    benchmark=eval_result,       # Use results from a previous evaluation run
    tests=eval_dataset,          # The test cases the agent should pass
    optimization_params={
        "method": "gepa",        # Use the GEPA optimization method
        "num_steps": 5           # Number of iterations to perform
    }
)

# Preview the optimized instruction
print("Optimized Instruction:", optimize_result.instruction)

CLI を使用して最適化する

ローカル開発では、adk optimize コマンドを使用して、ターミナルからエージェント コードを直接更新できます。

  1. ローカル エージェント モジュールをターゲットにして、最適化コマンドを実行します。 sh adk optimize . --target instruction --eval_set my_test_suite
  2. ターミナルで提案された変更を確認します。
  3. y と入力して、最適化された指示を agent.py ファイルに適用します。

コンソールでのビジュアル最適化

コンソールでは、ビジュアル分析情報を使用して最適化をトリガーできます。 Google Cloud

  1. コンソールで、[Agent Platform > Agents > Evaluation] ページに移動します。 Google Cloud

    [評価] に移動

  2. 失敗した評価実行を選択します。

  3. 特定の損失クラスタ (「無効なツール パラメータ形式」など)を選択します。

  4. [Optimizer で修正] ボタンをクリックします。

  5. システム指示の [Before/After] の差分を確認し、[Accept] をクリックしてエージェントを更新します。