google.internal.GmPart$stream

One `Part` of a content. Exactly one payload field is set; the rest are stripped before serialization.

Reference version

Signature

class google.internal.GmPart$stream

One Part of a content. Exactly one payload field is set; the rest are stripped before serialization.

thoughtSignature is the exception: it is a SIBLING of the payload field, not a payload of its own. Gemini 3 issues one with every functionCall it emits and REQUIRES it back when that call is replayed in contents — a bare replayed functionCall is rejected with HTTP 400 ("Function call is missing a thought_signature in functionCall parts"), which breaks every multi-turn tool loop on the 3.x models. See _gm_encode_call_id.

Source:<builtin>/google/ns_internal/gemini.bamlbytes 0–0

Fields

text

string | null

thoughtSignature

string | null