The base structured datatype containing multi-part content of a message.
A Content includes a role field designating the producer of the Content and a parts field containing multi-part data that contains the content of the message turn.
rolestring
Optional. The producer of the content. Must be either 'user' or 'model'.
Useful to set for multi-turn conversations, otherwise can be left blank or unset.
Required. Ordered Parts that constitute a single message. Parts may have different IANA MIME types.
| JSON representation |
|---|
{
"role": string,
"parts": [
{
object ( |
Part
A datatype containing media that is part of a multi-part Content message.
A Part consists of data which has an associated datatype. A Part can only contain one of the accepted types in Part.data.
A Part must have a fixed IANA MIME type identifying the type and subtype of the media if inlineData or fileData field is filled with raw bytes.
thoughtboolean
Optional. Indicates if the part is thought from the model.
Optional. An opaque signature for the thought so it can be reused in subsequent requests.
A base64-encoded string.
dataUnion type
data can be only one of the following:textstring
Optional. Text part (can be code).
Optional. Inlined bytes data.
Optional. URI based data.
Optional. A predicted [FunctionCall] returned from the model that contains a string representing the [FunctionDeclaration.name] with the parameters and their values.
Optional. The result output of a [FunctionCall] that contains a string representing the [FunctionDeclaration.name] and a structured JSON object containing any output from the function call. It is used as context to the model.
Optional. code generated by the model that is meant to be executed.
Optional. result of executing the [ExecutableCode].
metadataUnion type
metadata can be only one of the following:Optional. Video metadata. The metadata should only be specified while the video data is presented in inlineData or fileData.
| JSON representation |
|---|
{ "thought": boolean, "thoughtSignature": string, // data "text": string, "inlineData": { object ( |
Blob
Content blob.
mimeTypestring
Required. The IANA standard MIME type of the source data.
Required. Raw bytes.
A base64-encoded string.
| JSON representation |
|---|
{ "mimeType": string, "data": string } |
FileData
URI based data.
mimeTypestring
Required. The IANA standard MIME type of the source data.
fileUristring
Required. URI.
| JSON representation |
|---|
{ "mimeType": string, "fileUri": string } |
FunctionCall
A predicted [FunctionCall] returned from the model that contains a string representing the [FunctionDeclaration.name] and a structured JSON object containing the parameters and their values.
idstring
Optional. The unique id of the function call. If populated, the client to execute the functionCall and return the response with the matching id.
namestring
Optional. The name of the function to call. Matches [FunctionDeclaration.name].
Optional. The function parameters and values in JSON object format. See [FunctionDeclaration.parameters] for parameter details.
| JSON representation |
|---|
{ "id": string, "name": string, "args": { object } } |
FunctionResponse
The result output from a [FunctionCall] that contains a string representing the [FunctionDeclaration.name] and a structured JSON object containing any output from the function is used as context to the model. This should contain the result of a [FunctionCall] made based on model prediction.
idstring
Optional. The id of the function call this response is for. Populated by the client to match the corresponding function call id.
namestring
Required. The name of the function to call. Matches [FunctionDeclaration.name] and [FunctionCall.name].
Required. The function response in JSON object format. Use "output" key to specify function output and "error" key to specify error details (if any). If "output" and "error" keys are not specified, then whole "response" is treated as function output.
| JSON representation |
|---|
{ "id": string, "name": string, "response": { object } } |
ExecutableCode
code generated by the model that is meant to be executed, and the result returned to the model.
Generated when using the [CodeExecution] tool, in which the code will be automatically executed, and a corresponding [CodeExecutionResult] will also be generated.
Required. Programming language of the code.
codestring
Required. The code to be executed.
| JSON representation |
|---|
{
"language": enum ( |
Language
Supported programming languages for the generated code.
| Enums | |
|---|---|
LANGUAGE_UNSPECIFIED |
Unspecified language. This value should not be used. |
PYTHON |
Python >= 3.10, with numpy and simpy available. |
CodeExecutionResult
result of executing the [ExecutableCode].
Only generated when using the [CodeExecution] tool, and always follows a part containing the [ExecutableCode].
Required. Outcome of the code execution.
outputstring
Optional. Contains stdout when code execution is successful, stderr or other description otherwise.
| JSON representation |
|---|
{
"outcome": enum ( |
Outcome
Enumeration of possible outcomes of the code execution.
| Enums | |
|---|---|
OUTCOME_UNSPECIFIED |
Unspecified status. This value should not be used. |
OUTCOME_OK |
code execution completed successfully. |
OUTCOME_FAILED |
code execution finished but with a failure. stderr should contain the reason. |
OUTCOME_DEADLINE_EXCEEDED |
code execution ran for too long, and was cancelled. There may or may not be a partial output present. |
VideoMetadata
metadata describes the input video content.
Optional. The start offset of the video.
A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
Optional. The end offset of the video.
A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
fpsnumber
Optional. The frame rate of the video sent to the model. If not specified, the default value will be 1.0. The fps range is (0.0, 24.0].
| JSON representation |
|---|
{ "startOffset": string, "endOffset": string, "fps": number } |