tracing モジュールからアクセスします。
メッセージ
-
フラット形式 (後方互換性があり、プレーンテキストを扱いやすい形式) :
Message(role="assistant", content="Hi there") -
明示的なパート形式 (より表現力が高く、ツール呼び出し、推論とテキストの混在、
インラインメディアをサポートします) :
Message(role="assistant", parts=[TextPart(content="Let me check"), ToolCallPart(id="c1", name="get_weather", arguments='{...}')])
parts が空でない場合は、それが正規の表現になります。空の場合は、
シリアライザーがフラットなフィールドから単一の TextPart (role="tool" の場合は
ToolCallResponsePart) を生成します。
Message は Pydantic モデルです。構築時に、以下の任意のフィールドをキーワード引数として指定できます。
フィールド
Message.user
Message.system
Message.assistant
tool_calls を渡します。両方を指定した場合、テキストが先頭の TextPart として出力され、
その後に各 ToolCallPart が続きます。これにより、チャット ビューではこれらがインラインでレンダリングされます。
Message.tool_result
output には string、dict、list、スカラー値、または None を指定できます。
内部の ToolCallResponsePart は、string 以外の値を JSON エンコードします。
MessagePart
TextPart
TextPart は Pydantic モデルです。インスタンスを作成する際に、以下の任意のフィールドをキーワード引数として指定できます。
フィールド
ReasoningPart
ReasoningPart は Pydantic モデルです。インスタンスの生成時に、以下の任意のフィールドをキーワード引数として指定できます。
フィールド
ToolCallPart
arguments は、通信上では string として扱われます (GenAI semconv に準拠) 。
JSONString アノテーションにより、呼び出し元は構築時または代入時に dict / list / スカラー値を
渡すことができ、SDK がそれを JSON エンコードします。
エンコード済みの string は、変更されずにそのまま渡されます。
ToolCallPart は Pydantic モデルです。構築時に、以下の各フィールドをキーワード引数として指定できます。
フィールド
ToolCallResponsePart
response は、ワイヤー上では文字列として送受信されます。ToolCallPart.arguments と同様に、JSONString として扱えます。
ToolCallResponsePart は Pydantic モデルです。インスタンスを作成する際に、以下の任意のフィールドをキーワード引数として指定できます。
フィールド
BlobPart
BlobPart は Pydantic モデルです。インスタンスを作成する際に、以下の各フィールドをキーワード引数として指定できます。
フィールド
UriPart
UriPart は Pydantic モデルです。インスタンスを作成する際に、以下の各フィールドをキーワード引数として指定できます。
フィールド
FilePart
FilePart は Pydantic モデルです。インスタンスを作成する際に、以下の各フィールドをキーワード引数として指定できます。
フィールド
使用方法
Usage は Pydantic モデルです。インスタンスを生成する際に、以下の各フィールドをキーワード引数として指定できます。
フィールド
推論
Reasoning は Pydantic モデルです。インスタンスを作成する際に、以下の任意のフィールドをキーワード引数として指定できます。
フィールド
MediaAttachment
MediaAttachment は Pydantic モデルです。インスタンスを作成する際に、以下の各フィールドをキーワード引数として指定できます。
フィールド