Skip to main content

ライフサイクルイベント

run_with_events(...)またはcontinue_with_events(...)を使うと、イベントを同期的に受け取れます。
現在、ランタイムは次のイベントを出力します。
  • run.started
  • model.request.started
  • model.response.completed
  • tool.started
  • tool.completed
  • run.paused
  • run.resumed
  • run.completed
  • run.stopped
コールバックは実行スレッド上で動きます。処理を短くするか、別のコンポーネントに委譲してください。

モデルの再試行

max_retriesは最初のリクエスト後の再試行回数です。RunStep.model_attemptsには、モデルの応答に成功するまでの試行回数が記録されます。

使用量

RunResult.usageには次の値が集計されます。
  • input_tokens
  • output_tokens
  • cached_tokens
  • total_tokens
  • モデルクライアントが値を設定した場合の cost
各RunStepにも、個別の使用量サマリー、リクエストID、プロバイダー、モデル、終了理由が含まれます。 組み込みのGatewayアダプター0.1は、Gatewayのcost_nanosやcost_centsをUsageSummary.costに割り当てません。正確な費用が必要な場合は、Gatewayのレスポンスまたは生成レコードを確認してください。

エラー

ランタイムのすべての失敗にはAgentErrorが使われます。
GatewayのPhaseoErrorはAgentErrorに変換されます。アプリケーションで元のGatewayステータスと本文が必要な場合は、phaseoクライアントを直接呼び出すか、これらのフィールドをエラー処理で保持する独自のModelClientを実装してください。 ローカルツール実行のエラーは、実行をすぐに終了せず、ツールの結果としてモデルに返されます。

ステップ数の上限

AgentDefinition::max_steps(...)でモデルターン数の既定の上限を設定できます。特定の実行だけ変更するには次のようにします。
上限に達すると、run.statusはstoppedになり、run.stop_reasonはmax_steps:<limit>になります。
最終更新日 2026年10月2日