コンテンツにスキップ

結果

Runner.run メソッドを呼び出すと、以下のいずれかが返されます:

これらはどちらも RunResultBase を継承しており、ほとんどの有用な情報はここに含まれています。

最終出力

final_output プロパティには、最後に実行されたエージェントの最終出力が格納されます。これは以下のいずれかです:

  • 最後のエージェントに output_type が定義されていない場合は str
  • エージェントに output_type が定義されている場合は、last_agent.output_type 型のオブジェクト

Note

final_output の型は Any です。ハンドオフのため、静的に型を決定することはできません。ハンドオフが発生した場合、どのエージェントが最後になるか分からないため、出力型の集合を静的に知ることができません。

次のターンへの入力

result.to_input_list() を使うことで、実行結果を入力リストに変換できます。これは、あなたが提供した元の入力と、エージェント実行中に生成されたアイテムを連結したものです。これにより、あるエージェント実行の出力を別の実行に渡したり、ループで実行して毎回新しいユーザー入力を追加したりするのが簡単になります。

最後のエージェント

last_agent プロパティには、最後に実行されたエージェントが格納されます。アプリケーションによっては、次回ユーザーが何か入力した際にこれが役立つことがよくあります。たとえば、フロントラインのトリアージエージェントが言語特化エージェントにハンドオフする場合、最後のエージェントを保存しておき、次回ユーザーがエージェントにメッセージを送る際に再利用できます。

新しいアイテム

new_items プロパティには、実行中に生成された新しいアイテムが格納されます。これらのアイテムは RunItem です。RunItem は LLM によって生成された raw アイテムをラップします。

  • MessageOutputItem は LLM からのメッセージを示します。raw アイテムは生成されたメッセージです。
  • HandoffCallItem は LLM がハンドオフツールを呼び出したことを示します。raw アイテムは LLM からのツールコールアイテムです。
  • HandoffOutputItem はハンドオフが発生したことを示します。raw アイテムはハンドオフツールコールへのツールレスポンスです。また、アイテムからソース/ターゲットエージェントにもアクセスできます。
  • ToolCallItem は LLM がツールを呼び出したことを示します。
  • ToolCallOutputItem はツールが呼び出されたことを示します。raw アイテムはツールレスポンスです。また、アイテムからツール出力にもアクセスできます。
  • ReasoningItem は LLM からの推論アイテムを示します。raw アイテムは生成された推論です。

その他の情報

ガードレール結果

input_guardrail_results および output_guardrail_results プロパティには、ガードレールの結果(存在する場合)が格納されます。ガードレール結果には、ログや保存に役立つ有用な情報が含まれることがあるため、これらを利用できるようにしています。

raw レスポンス

raw_responses プロパティには、LLM によって生成された ModelResponse が格納されます。

元の入力

input プロパティには、run メソッドに提供した元の入力が格納されます。ほとんどの場合これは必要ありませんが、必要な場合のために利用可能です。