Docs

Request Path

fownerstring*required

The owner of the GitHub repository containing the function.

frepositorystring*required

The name of the GitHub repository containing the function.

fcommitstringoptional

The commit SHA of the GitHub repository containing the function.

Response Body

object
Properties
type"scalar.function"*required
input_mapsunionoptional

An expression or list of expressions which evaluate to a 2D array of Inputs. Each sub-array will be fed into Tasks which specify an index of this input map.

Variants
Expressionobject

An expression which evaluates to a 2D array of Inputs.

Properties
$jmespathstring*required

A JMESPath expression.

array

A list of expressions which each evaluate to a 1D array of Inputs.

Items
Expressionobject

An expression which evaluates to a 1D array of Inputs.

Properties
$jmespathstring*required

A JMESPath expression.

tasksarray*required

The list of tasks to be executed as part of the function. Each will first be compiled using the parent function's input.

Items
object

A scalar function task expression.

Properties
type"scalar.function"*required
ownerstring*required

The owner of the GitHub repository containing the function.

repositorystring*required

The name of the GitHub repository containing the function.

commitstring*required

The commit SHA of the GitHub repository containing the function.

skipobjectoptional

An expression which evaluates to a boolean indicating whether to skip this task.

Properties
$jmespathstring*required

A JMESPath expression.

mapnumbermin: 0max: 4294967295optional

If present, indicates that this task should be ran once for each entry in the specified input map (input map is a 2D array indexed by this value).

inputunion*required

A value provided as input to a function.

Variants
ImageRichContentPartobject

An image rich content part.

Properties
type"image_url"*required
image_urlobject*required

The URL of the image and its optional detail level.

Properties
urlstring*required

Either a URL of the image or the base64 encoded image data.

detailenumoptional

Specifies the detail level of the image.

Variants
"auto"
"low"
"high"
AudioRichContentPartobject

An audio rich content part.

Properties
type"input_audio"*required
input_audioobject*required

The audio data and its format.

Properties
datastring*required

Base64 encoded audio data.

formatenum*required

The format of the encoded audio data.

Variants
"wav"
"mp3"
VideoRichContentPartobject

A video rich content part.

Properties
typeenum*required
Variants
"video_url"
"input_video"
video_urlobject*required
Properties
urlstring*required

URL of the video.

FileRichContentPartobject

A file rich content part.

Properties
type"file"*required
fileobject*required

The file to be used as input, either as base64 data, an uploaded file ID, or a URL.

Properties
file_datastringoptional

The base64 encoded file data, used when passing the file to the model as a string.

file_idstringoptional

The ID of an uploaded file to use as input.

filenamestringoptional

The name of the file, used when passing the file to the model as a string.

file_urlstringoptional

The URL of the file, used when passing the file to the model as a URL.

record
Values
InputValueExpression
array
Items
InputValueExpression
string
number
boolean
Expressionobject

An expression which evaluates to an input value.

Properties
$jmespathstring*required

A JMESPath expression.

object

A vector function task expression.

Properties
type"vector.function"*required
ownerstring*required

The owner of the GitHub repository containing the function.

repositorystring*required

The name of the GitHub repository containing the function.

commitstring*required

The commit SHA of the GitHub repository containing the function.

skipobjectoptional

An expression which evaluates to a boolean indicating whether to skip this task.

Properties
$jmespathstring*required

A JMESPath expression.

mapnumbermin: 0max: 4294967295optional

If present, indicates that this task should be ran once for each entry in the specified input map (input map is a 2D array indexed by this value).

inputunion*required

A value provided as input to a function.

Variants
ImageRichContentPartobject

An image rich content part.

Properties
type"image_url"*required
image_urlobject*required

The URL of the image and its optional detail level.

Properties
urlstring*required

Either a URL of the image or the base64 encoded image data.

detailenumoptional

Specifies the detail level of the image.

Variants
"auto"
"low"
"high"
AudioRichContentPartobject

An audio rich content part.

Properties
type"input_audio"*required
input_audioobject*required

The audio data and its format.

Properties
datastring*required

Base64 encoded audio data.

formatenum*required

The format of the encoded audio data.

Variants
"wav"
"mp3"
VideoRichContentPartobject

A video rich content part.

Properties
typeenum*required
Variants
"video_url"
"input_video"
video_urlobject*required
Properties
urlstring*required

URL of the video.

FileRichContentPartobject

A file rich content part.

Properties
type"file"*required
fileobject*required

The file to be used as input, either as base64 data, an uploaded file ID, or a URL.

Properties
file_datastringoptional

The base64 encoded file data, used when passing the file to the model as a string.

file_idstringoptional

The ID of an uploaded file to use as input.

filenamestringoptional

The name of the file, used when passing the file to the model as a string.

file_urlstringoptional

The URL of the file, used when passing the file to the model as a URL.

record
Values
InputValueExpression
array
Items
InputValueExpression
string
number
boolean
Expressionobject

An expression which evaluates to an input value.

Properties
$jmespathstring*required

A JMESPath expression.

object

A vector completion task expression.

Properties
type"vector.completion"*required
skipobjectoptional

An expression which evaluates to a boolean indicating whether to skip this task.

Properties
$jmespathstring*required

A JMESPath expression.

mapnumbermin: 0max: 4294967295optional

If present, indicates that this task should be ran once for each entry in the specified input map (input map is a 2D array indexed by this value).

messagesunion*required

A list of messages exchanged in a chat conversation.

Variants
MessageExpressionsarray

A list of messages exchanged in a chat conversation.

Items
DeveloperMessageExpressionobject

Developer-provided instructions that the model should follow, regardless of messages sent by the user.

Properties
role"developer"*required
contentunion*required

Simple content.

Variants
SimpleContentTextstring

Plain text content.

SimpleContentPartExpressionsarray

An array of simple content parts.

Items
object
Properties
type"text"*required
textunion*required
Variants
string

The text content.

Expressionobject

An expression which evaluates to the text content.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to a simple content part.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to simple content.

Properties
$jmespathstring*required

A JMESPath expression.

nameunionoptional

An optional name for the participant. Provides the model information to differentiate between participants of the same role.

Variants
MessageNamestring

An optional name for the participant. Provides the model information to differentiate between participants of the same role.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

SystemMessageExpressionobject

Developer-provided instructions that the model should follow, regardless of messages sent by the user.

Properties
role"system"*required
contentunion*required

Simple content.

Variants
SimpleContentTextstring

Plain text content.

SimpleContentPartExpressionsarray

An array of simple content parts.

Items
object
Properties
type"text"*required
textunion*required
Variants
string

The text content.

Expressionobject

An expression which evaluates to the text content.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to a simple content part.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to simple content.

Properties
$jmespathstring*required

A JMESPath expression.

nameunionoptional

An optional name for the participant. Provides the model information to differentiate between participants of the same role.

Variants
MessageNamestring

An optional name for the participant. Provides the model information to differentiate between participants of the same role.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

UserMessageExpressionobject

Messages sent by an end user, containing prompts or additional context information.

Properties
role"user"*required
contentunion*required

Rich content.

Variants
RichContentTextstring

Plain text content.

RichContentPartExpressionsarray

An array of rich content parts.

Items
TextRichContentPartExpressionobject

A text rich content part.

Properties
type"text"*required
textunion*required

The text content.

Variants
string

The text content.

Expressionobject

An expression which evaluates to the text content.

Properties
$jmespathstring*required

A JMESPath expression.

ImageRichContentPartExpressionobject

An image rich content part.

Properties
type"image_url"*required
image_urlunion*required

The URL of the image and its optional detail level.

Variants
object

The URL of the image and its optional detail level.

Properties
urlstring*required

Either a URL of the image or the base64 encoded image data.

detailenumoptional

Specifies the detail level of the image.

Variants
"auto"
"low"
"high"
Expressionobject

An expression which evaluates to the image URL definition.

Properties
$jmespathstring*required

A JMESPath expression.

AudioRichContentPartExpressionobject

An audio rich content part.

Properties
type"input_audio"*required
input_audiounion*required

The audio data and its format.

Variants
object

The audio data and its format.

Properties
datastring*required

Base64 encoded audio data.

formatenum*required

The format of the encoded audio data.

Variants
"wav"
"mp3"
Expressionobject

An expression which evaluates to the audio definition.

Properties
$jmespathstring*required

A JMESPath expression.

VideoRichContentPartExpressionobject

A video rich content part.

Properties
typeenum*required
Variants
"video_url"
"input_video"
video_urlunion*required

The video URL definition.

Variants
object
Properties
urlstring*required

URL of the video.

Expressionobject

An expression which evaluates to the video URL definition.

Properties
$jmespathstring*required

A JMESPath expression.

FileRichContentPartExpressionobject

A file rich content part.

Properties
type"file"*required
fileunion*required

The file to be used as input, either as base64 data, an uploaded file ID, or a URL.

Variants
object

The file to be used as input, either as base64 data, an uploaded file ID, or a URL.

Properties
file_datastringoptional

The base64 encoded file data, used when passing the file to the model as a string.

file_idstringoptional

The ID of an uploaded file to use as input.

filenamestringoptional

The name of the file, used when passing the file to the model as a string.

file_urlstringoptional

The URL of the file, used when passing the file to the model as a URL.

Expressionobject

An expression which evaluates to the file definition.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to a rich content part.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to rich content.

Properties
$jmespathstring*required

A JMESPath expression.

nameunionoptional

An optional name for the participant. Provides the model information to differentiate between participants of the same role.

Variants
MessageNamestring

An optional name for the participant. Provides the model information to differentiate between participants of the same role.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

ToolMessageExpressionobject

Messages sent by tools in response to tool calls made by the assistant.

Properties
role"tool"*required
contentunion*required

Rich content.

Variants
RichContentTextstring

Plain text content.

RichContentPartExpressionsarray

An array of rich content parts.

Items
TextRichContentPartExpressionobject

A text rich content part.

Properties
type"text"*required
textunion*required

The text content.

Variants
string

The text content.

Expressionobject

An expression which evaluates to the text content.

Properties
$jmespathstring*required

A JMESPath expression.

ImageRichContentPartExpressionobject

An image rich content part.

Properties
type"image_url"*required
image_urlunion*required

The URL of the image and its optional detail level.

Variants
object

The URL of the image and its optional detail level.

Properties
urlstring*required

Either a URL of the image or the base64 encoded image data.

detailenumoptional

Specifies the detail level of the image.

Variants
"auto"
"low"
"high"
Expressionobject

An expression which evaluates to the image URL definition.

Properties
$jmespathstring*required

A JMESPath expression.

AudioRichContentPartExpressionobject

An audio rich content part.

Properties
type"input_audio"*required
input_audiounion*required

The audio data and its format.

Variants
object

The audio data and its format.

Properties
datastring*required

Base64 encoded audio data.

formatenum*required

The format of the encoded audio data.

Variants
"wav"
"mp3"
Expressionobject

An expression which evaluates to the audio definition.

Properties
$jmespathstring*required

A JMESPath expression.

VideoRichContentPartExpressionobject

A video rich content part.

Properties
typeenum*required
Variants
"video_url"
"input_video"
video_urlunion*required

The video URL definition.

Variants
object
Properties
urlstring*required

URL of the video.

Expressionobject

An expression which evaluates to the video URL definition.

Properties
$jmespathstring*required

A JMESPath expression.

FileRichContentPartExpressionobject

A file rich content part.

Properties
type"file"*required
fileunion*required

The file to be used as input, either as base64 data, an uploaded file ID, or a URL.

Variants
object

The file to be used as input, either as base64 data, an uploaded file ID, or a URL.

Properties
file_datastringoptional

The base64 encoded file data, used when passing the file to the model as a string.

file_idstringoptional

The ID of an uploaded file to use as input.

filenamestringoptional

The name of the file, used when passing the file to the model as a string.

file_urlstringoptional

The URL of the file, used when passing the file to the model as a URL.

Expressionobject

An expression which evaluates to the file definition.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to a rich content part.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to rich content.

Properties
$jmespathstring*required

A JMESPath expression.

tool_call_idunion*required

The ID of the tool call that this message is responding to.

Variants
ToolMessageToolCallIdstring

The ID of the tool call that this message is responding to.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

AssistantMessageExpressionobject

Messages sent by the model in response to user messages.

Properties
role"assistant"*required
contentunionoptional

Rich content.

Variants
RichContentTextstring

Plain text content.

RichContentPartExpressionsarray

An array of rich content parts.

Items
TextRichContentPartExpressionobject

A text rich content part.

Properties
type"text"*required
textunion*required

The text content.

Variants
string

The text content.

Expressionobject

An expression which evaluates to the text content.

Properties
$jmespathstring*required

A JMESPath expression.

ImageRichContentPartExpressionobject

An image rich content part.

Properties
type"image_url"*required
image_urlunion*required

The URL of the image and its optional detail level.

Variants
object

The URL of the image and its optional detail level.

Properties
urlstring*required

Either a URL of the image or the base64 encoded image data.

detailenumoptional

Specifies the detail level of the image.

Variants
"auto"
"low"
"high"
Expressionobject

An expression which evaluates to the image URL definition.

Properties
$jmespathstring*required

A JMESPath expression.

AudioRichContentPartExpressionobject

An audio rich content part.

Properties
type"input_audio"*required
input_audiounion*required

The audio data and its format.

Variants
object

The audio data and its format.

Properties
datastring*required

Base64 encoded audio data.

formatenum*required

The format of the encoded audio data.

Variants
"wav"
"mp3"
Expressionobject

An expression which evaluates to the audio definition.

Properties
$jmespathstring*required

A JMESPath expression.

VideoRichContentPartExpressionobject

A video rich content part.

Properties
typeenum*required
Variants
"video_url"
"input_video"
video_urlunion*required

The video URL definition.

Variants
object
Properties
urlstring*required

URL of the video.

Expressionobject

An expression which evaluates to the video URL definition.

Properties
$jmespathstring*required

A JMESPath expression.

FileRichContentPartExpressionobject

A file rich content part.

Properties
type"file"*required
fileunion*required

The file to be used as input, either as base64 data, an uploaded file ID, or a URL.

Variants
object

The file to be used as input, either as base64 data, an uploaded file ID, or a URL.

Properties
file_datastringoptional

The base64 encoded file data, used when passing the file to the model as a string.

file_idstringoptional

The ID of an uploaded file to use as input.

filenamestringoptional

The name of the file, used when passing the file to the model as a string.

file_urlstringoptional

The URL of the file, used when passing the file to the model as a URL.

Expressionobject

An expression which evaluates to the file definition.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to a rich content part.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to rich content.

Properties
$jmespathstring*required

A JMESPath expression.

nameunionoptional

An optional name for the participant. Provides the model information to differentiate between participants of the same role.

Variants
MessageNamestring

An optional name for the participant. Provides the model information to differentiate between participants of the same role.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

refusalunionoptional

The refusal message by the assistant.

Variants
AssistantMessageRefusalstring

The refusal message by the assistant.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

tool_callsunionoptional

Tool calls made by the assistant.

Variants
array

Tool calls made by the assistant.

Items
AssistantMessageToolCallFunctionExpressionobject

A function tool call made by the assistant.

Properties
type"function"*required
idunion*required

The unique identifier for the tool call.

Variants
AssistantMessageToolCallIdstring

The unique identifier for the tool call.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

functionobject*required

The name and arguments of the function called.

Properties
nameunion*required

The name of the function called.

Variants
AssistantMessageToolCallFunctionNamestring

The name of the function called.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

argumentsunion*required

The arguments passed to the function.

Variants
AssistantMessageToolCallFunctionArgumentsstring

The arguments passed to the function.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to a tool call.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to an array of tool calls.

Properties
$jmespathstring*required

A JMESPath expression.

reasoningunionoptional

The reasoning provided by the assistant.

Variants
AssistantMessageReasoningstring

The reasoning provided by the assistant.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to a message.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to an array of messages.

Properties
$jmespathstring*required

A JMESPath expression.

toolsunionoptional

A list of tools that the assistant can call. These are readonly and will only be useful for explaining prior tool calls or otherwise influencing behavior.

Variants
ToolExpressionsarray

A list of tools that the assistant can call.

Items
FunctionToolExpressionobject

A function tool that the assistant can call.

Properties
type"function"*required
functionobject*required

The definition of a function tool.

Properties
nameunion*required

The name of the function.

Variants
FunctionToolNamestring

The name of the function.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

descriptionunionoptional

The description of the function.

Variants
FunctionToolDescriptionstring

The description of the function.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

parametersunionoptional

The JSON schema defining the parameters of the function.

Variants
record
Values
JsonValueNullnull

Null

JsonValueBooleanboolean

Boolean

JsonValueNumbernumber

Number

JsonValueStringstring

String

JsonValueExpressionArrayarray

Array (values may be expressions)

Items
JsonValueExpression

A JSON value.

JsonValueExpressionObjectrecord

Object (values may be expressions)

Values
JsonValueExpression

A JSON value.

Expressionobject

An expression which evaluates to a JSON value.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to a JSON schema object.

Properties
$jmespathstring*required

A JMESPath expression.

strictunionoptional

Whether to enforce strict adherence to the parameter schema.

Variants
FunctionToolStrictboolean

Whether to enforce strict adherence to the parameter schema.

Expressionobject

An expression which evaluates to a boolean.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to a tool.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to an array of tools.

Properties
$jmespathstring*required

A JMESPath expression.

responsesunion*required

A list of possible assistant responses which the LLMs in the Ensemble will vote on. The output scores will be of the same length, each corresponding to one response. The winner is the response with the highest score.

Variants
VectorResponseExpressionsarray

A list of possible assistant responses which the LLMs in the Ensemble will vote on. The output scores will be of the same length, each corresponding to one response. The winner is the response with the highest score.

Items
RichContentTextstring

Plain text content.

RichContentPartsarray

An array of rich content parts.

Items
TextRichContentPartobject

A text rich content part.

Properties
type"text"*required
textstring*required

The text content.

ImageRichContentPartobject

An image rich content part.

Properties
type"image_url"*required
image_urlobject*required

The URL of the image and its optional detail level.

Properties
urlstring*required

Either a URL of the image or the base64 encoded image data.

detailenumoptional

Specifies the detail level of the image.

Variants
"auto"
"low"
"high"
AudioRichContentPartobject

An audio rich content part.

Properties
type"input_audio"*required
input_audioobject*required

The audio data and its format.

Properties
datastring*required

Base64 encoded audio data.

formatenum*required

The format of the encoded audio data.

Variants
"wav"
"mp3"
VideoRichContentPartobject

A video rich content part.

Properties
typeenum*required
Variants
"video_url"
"input_video"
video_urlobject*required
Properties
urlstring*required

URL of the video.

FileRichContentPartobject

A file rich content part.

Properties
type"file"*required
fileobject*required

The file to be used as input, either as base64 data, an uploaded file ID, or a URL.

Properties
file_datastringoptional

The base64 encoded file data, used when passing the file to the model as a string.

file_idstringoptional

The ID of an uploaded file to use as input.

filenamestringoptional

The name of the file, used when passing the file to the model as a string.

file_urlstringoptional

The URL of the file, used when passing the file to the model as a URL.

Expressionobject

An expression which evaluates to a possible assistant response.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to an array of possible assistant responses.

Properties
$jmespathstring*required

A JMESPath expression.

outputobject*required

An expression which evaluates to a single number. This is the output of the scalar function. Will be provided with the outputs of all tasks.

Properties
$jmespathstring*required

A JMESPath expression.

descriptionstring*required

The description of the scalar function.

changelogstringoptional

When present, describes changes from the previous version or versions.

input_schemaunion*required

An input schema defining the structure of function inputs.

Variants
ObjectInputSchemaobject

An object input schema.

Properties
type"object"*required
descriptionstringoptional

The description of the object input.

propertiesrecord*required

The properties of the object input.

Values
InputSchema
requiredarrayoptional

The required properties of the object input.

Items
string
ArrayInputSchemaobject

An array input schema.

Properties
type"array"*required
descriptionstringoptional

The description of the array input.

minItemsnumbermin: 0max: 4294967295optional

The minimum number of items in the array input.

maxItemsnumbermin: 0max: 4294967295optional

The maximum number of items in the array input.

items*required
StringInputSchemaobject

A string input schema.

Properties
type"string"*required
descriptionstringoptional

The description of the string input.

enumarrayoptional

The enumeration of allowed string values.

Items
string
NumberInputSchemaobject

A number input schema.

Properties
type"number"*required
descriptionstringoptional

The description of the number input.

minimumnumberoptional

The minimum allowed value for the number input.

maximumnumberoptional

The maximum allowed value for the number input.

IntegerInputSchemaobject

An integer input schema.

Properties
type"integer"*required
descriptionstringoptional

The description of the integer input.

minimumnumbermin: 0max: 4294967295optional

The minimum allowed value for the integer input.

maximumnumbermin: 0max: 4294967295optional

The maximum allowed value for the integer input.

BooleanInputSchemaobject

A boolean input schema.

Properties
type"boolean"*required
descriptionstringoptional

The description of the boolean input.

ImageInputSchemaobject

An image input schema.

Properties
type"image"*required
descriptionstringoptional

The description of the image input.

AudioInputSchemaobject

An audio input schema.

Properties
type"audio"*required
descriptionstringoptional

The description of the audio input.

VideoInputSchemaobject

A video input schema.

Properties
type"video"*required
descriptionstringoptional

The description of the video input.

FileInputSchemaobject

A file input schema.

Properties
type"file"*required
descriptionstringoptional

The description of the file input.

AnyOfInputSchemaobject

A union of schemas - input must match at least one.

Properties
anyOfarray*required

The possible schemas that the input can match.

Items
InputSchema
ownerstring*required

The owner of the GitHub repository containing the function.

repositorystring*required

The name of the GitHub repository containing the function.

commitstring*required

The commit SHA of the GitHub repository containing the function.

object
Properties
type"vector.function"*required
input_mapsunionoptional

An expression or list of expressions which evaluate to a 2D array of Inputs. Each sub-array will be fed into Tasks which specify an index of this input map.

Variants
Expressionobject

An expression which evaluates to a 2D array of Inputs.

Properties
$jmespathstring*required

A JMESPath expression.

array

A list of expressions which each evaluate to a 1D array of Inputs.

Items
Expressionobject

An expression which evaluates to a 1D array of Inputs.

Properties
$jmespathstring*required

A JMESPath expression.

tasksarray*required

The list of tasks to be executed as part of the function. Each will first be compiled using the parent function's input.

Items
object

A scalar function task expression.

Properties
type"scalar.function"*required
ownerstring*required

The owner of the GitHub repository containing the function.

repositorystring*required

The name of the GitHub repository containing the function.

commitstring*required

The commit SHA of the GitHub repository containing the function.

skipobjectoptional

An expression which evaluates to a boolean indicating whether to skip this task.

Properties
$jmespathstring*required

A JMESPath expression.

mapnumbermin: 0max: 4294967295optional

If present, indicates that this task should be ran once for each entry in the specified input map (input map is a 2D array indexed by this value).

inputunion*required

A value provided as input to a function.

Variants
ImageRichContentPartobject

An image rich content part.

Properties
type"image_url"*required
image_urlobject*required

The URL of the image and its optional detail level.

Properties
urlstring*required

Either a URL of the image or the base64 encoded image data.

detailenumoptional

Specifies the detail level of the image.

Variants
"auto"
"low"
"high"
AudioRichContentPartobject

An audio rich content part.

Properties
type"input_audio"*required
input_audioobject*required

The audio data and its format.

Properties
datastring*required

Base64 encoded audio data.

formatenum*required

The format of the encoded audio data.

Variants
"wav"
"mp3"
VideoRichContentPartobject

A video rich content part.

Properties
typeenum*required
Variants
"video_url"
"input_video"
video_urlobject*required
Properties
urlstring*required

URL of the video.

FileRichContentPartobject

A file rich content part.

Properties
type"file"*required
fileobject*required

The file to be used as input, either as base64 data, an uploaded file ID, or a URL.

Properties
file_datastringoptional

The base64 encoded file data, used when passing the file to the model as a string.

file_idstringoptional

The ID of an uploaded file to use as input.

filenamestringoptional

The name of the file, used when passing the file to the model as a string.

file_urlstringoptional

The URL of the file, used when passing the file to the model as a URL.

record
Values
InputValueExpression
array
Items
InputValueExpression
string
number
boolean
Expressionobject

An expression which evaluates to an input value.

Properties
$jmespathstring*required

A JMESPath expression.

object

A vector function task expression.

Properties
type"vector.function"*required
ownerstring*required

The owner of the GitHub repository containing the function.

repositorystring*required

The name of the GitHub repository containing the function.

commitstring*required

The commit SHA of the GitHub repository containing the function.

skipobjectoptional

An expression which evaluates to a boolean indicating whether to skip this task.

Properties
$jmespathstring*required

A JMESPath expression.

mapnumbermin: 0max: 4294967295optional

If present, indicates that this task should be ran once for each entry in the specified input map (input map is a 2D array indexed by this value).

inputunion*required

A value provided as input to a function.

Variants
ImageRichContentPartobject

An image rich content part.

Properties
type"image_url"*required
image_urlobject*required

The URL of the image and its optional detail level.

Properties
urlstring*required

Either a URL of the image or the base64 encoded image data.

detailenumoptional

Specifies the detail level of the image.

Variants
"auto"
"low"
"high"
AudioRichContentPartobject

An audio rich content part.

Properties
type"input_audio"*required
input_audioobject*required

The audio data and its format.

Properties
datastring*required

Base64 encoded audio data.

formatenum*required

The format of the encoded audio data.

Variants
"wav"
"mp3"
VideoRichContentPartobject

A video rich content part.

Properties
typeenum*required
Variants
"video_url"
"input_video"
video_urlobject*required
Properties
urlstring*required

URL of the video.

FileRichContentPartobject

A file rich content part.

Properties
type"file"*required
fileobject*required

The file to be used as input, either as base64 data, an uploaded file ID, or a URL.

Properties
file_datastringoptional

The base64 encoded file data, used when passing the file to the model as a string.

file_idstringoptional

The ID of an uploaded file to use as input.

filenamestringoptional

The name of the file, used when passing the file to the model as a string.

file_urlstringoptional

The URL of the file, used when passing the file to the model as a URL.

record
Values
InputValueExpression
array
Items
InputValueExpression
string
number
boolean
Expressionobject

An expression which evaluates to an input value.

Properties
$jmespathstring*required

A JMESPath expression.

object

A vector completion task expression.

Properties
type"vector.completion"*required
skipobjectoptional

An expression which evaluates to a boolean indicating whether to skip this task.

Properties
$jmespathstring*required

A JMESPath expression.

mapnumbermin: 0max: 4294967295optional

If present, indicates that this task should be ran once for each entry in the specified input map (input map is a 2D array indexed by this value).

messagesunion*required

A list of messages exchanged in a chat conversation.

Variants
MessageExpressionsarray

A list of messages exchanged in a chat conversation.

Items
DeveloperMessageExpressionobject

Developer-provided instructions that the model should follow, regardless of messages sent by the user.

Properties
role"developer"*required
contentunion*required

Simple content.

Variants
SimpleContentTextstring

Plain text content.

SimpleContentPartExpressionsarray

An array of simple content parts.

Items
object
Properties
type"text"*required
textunion*required
Variants
string

The text content.

Expressionobject

An expression which evaluates to the text content.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to a simple content part.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to simple content.

Properties
$jmespathstring*required

A JMESPath expression.

nameunionoptional

An optional name for the participant. Provides the model information to differentiate between participants of the same role.

Variants
MessageNamestring

An optional name for the participant. Provides the model information to differentiate between participants of the same role.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

SystemMessageExpressionobject

Developer-provided instructions that the model should follow, regardless of messages sent by the user.

Properties
role"system"*required
contentunion*required

Simple content.

Variants
SimpleContentTextstring

Plain text content.

SimpleContentPartExpressionsarray

An array of simple content parts.

Items
object
Properties
type"text"*required
textunion*required
Variants
string

The text content.

Expressionobject

An expression which evaluates to the text content.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to a simple content part.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to simple content.

Properties
$jmespathstring*required

A JMESPath expression.

nameunionoptional

An optional name for the participant. Provides the model information to differentiate between participants of the same role.

Variants
MessageNamestring

An optional name for the participant. Provides the model information to differentiate between participants of the same role.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

UserMessageExpressionobject

Messages sent by an end user, containing prompts or additional context information.

Properties
role"user"*required
contentunion*required

Rich content.

Variants
RichContentTextstring

Plain text content.

RichContentPartExpressionsarray

An array of rich content parts.

Items
TextRichContentPartExpressionobject

A text rich content part.

Properties
type"text"*required
textunion*required

The text content.

Variants
string

The text content.

Expressionobject

An expression which evaluates to the text content.

Properties
$jmespathstring*required

A JMESPath expression.

ImageRichContentPartExpressionobject

An image rich content part.

Properties
type"image_url"*required
image_urlunion*required

The URL of the image and its optional detail level.

Variants
object

The URL of the image and its optional detail level.

Properties
urlstring*required

Either a URL of the image or the base64 encoded image data.

detailenumoptional

Specifies the detail level of the image.

Variants
"auto"
"low"
"high"
Expressionobject

An expression which evaluates to the image URL definition.

Properties
$jmespathstring*required

A JMESPath expression.

AudioRichContentPartExpressionobject

An audio rich content part.

Properties
type"input_audio"*required
input_audiounion*required

The audio data and its format.

Variants
object

The audio data and its format.

Properties
datastring*required

Base64 encoded audio data.

formatenum*required

The format of the encoded audio data.

Variants
"wav"
"mp3"
Expressionobject

An expression which evaluates to the audio definition.

Properties
$jmespathstring*required

A JMESPath expression.

VideoRichContentPartExpressionobject

A video rich content part.

Properties
typeenum*required
Variants
"video_url"
"input_video"
video_urlunion*required

The video URL definition.

Variants
object
Properties
urlstring*required

URL of the video.

Expressionobject

An expression which evaluates to the video URL definition.

Properties
$jmespathstring*required

A JMESPath expression.

FileRichContentPartExpressionobject

A file rich content part.

Properties
type"file"*required
fileunion*required

The file to be used as input, either as base64 data, an uploaded file ID, or a URL.

Variants
object

The file to be used as input, either as base64 data, an uploaded file ID, or a URL.

Properties
file_datastringoptional

The base64 encoded file data, used when passing the file to the model as a string.

file_idstringoptional

The ID of an uploaded file to use as input.

filenamestringoptional

The name of the file, used when passing the file to the model as a string.

file_urlstringoptional

The URL of the file, used when passing the file to the model as a URL.

Expressionobject

An expression which evaluates to the file definition.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to a rich content part.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to rich content.

Properties
$jmespathstring*required

A JMESPath expression.

nameunionoptional

An optional name for the participant. Provides the model information to differentiate between participants of the same role.

Variants
MessageNamestring

An optional name for the participant. Provides the model information to differentiate between participants of the same role.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

ToolMessageExpressionobject

Messages sent by tools in response to tool calls made by the assistant.

Properties
role"tool"*required
contentunion*required

Rich content.

Variants
RichContentTextstring

Plain text content.

RichContentPartExpressionsarray

An array of rich content parts.

Items
TextRichContentPartExpressionobject

A text rich content part.

Properties
type"text"*required
textunion*required

The text content.

Variants
string

The text content.

Expressionobject

An expression which evaluates to the text content.

Properties
$jmespathstring*required

A JMESPath expression.

ImageRichContentPartExpressionobject

An image rich content part.

Properties
type"image_url"*required
image_urlunion*required

The URL of the image and its optional detail level.

Variants
object

The URL of the image and its optional detail level.

Properties
urlstring*required

Either a URL of the image or the base64 encoded image data.

detailenumoptional

Specifies the detail level of the image.

Variants
"auto"
"low"
"high"
Expressionobject

An expression which evaluates to the image URL definition.

Properties
$jmespathstring*required

A JMESPath expression.

AudioRichContentPartExpressionobject

An audio rich content part.

Properties
type"input_audio"*required
input_audiounion*required

The audio data and its format.

Variants
object

The audio data and its format.

Properties
datastring*required

Base64 encoded audio data.

formatenum*required

The format of the encoded audio data.

Variants
"wav"
"mp3"
Expressionobject

An expression which evaluates to the audio definition.

Properties
$jmespathstring*required

A JMESPath expression.

VideoRichContentPartExpressionobject

A video rich content part.

Properties
typeenum*required
Variants
"video_url"
"input_video"
video_urlunion*required

The video URL definition.

Variants
object
Properties
urlstring*required

URL of the video.

Expressionobject

An expression which evaluates to the video URL definition.

Properties
$jmespathstring*required

A JMESPath expression.

FileRichContentPartExpressionobject

A file rich content part.

Properties
type"file"*required
fileunion*required

The file to be used as input, either as base64 data, an uploaded file ID, or a URL.

Variants
object

The file to be used as input, either as base64 data, an uploaded file ID, or a URL.

Properties
file_datastringoptional

The base64 encoded file data, used when passing the file to the model as a string.

file_idstringoptional

The ID of an uploaded file to use as input.

filenamestringoptional

The name of the file, used when passing the file to the model as a string.

file_urlstringoptional

The URL of the file, used when passing the file to the model as a URL.

Expressionobject

An expression which evaluates to the file definition.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to a rich content part.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to rich content.

Properties
$jmespathstring*required

A JMESPath expression.

tool_call_idunion*required

The ID of the tool call that this message is responding to.

Variants
ToolMessageToolCallIdstring

The ID of the tool call that this message is responding to.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

AssistantMessageExpressionobject

Messages sent by the model in response to user messages.

Properties
role"assistant"*required
contentunionoptional

Rich content.

Variants
RichContentTextstring

Plain text content.

RichContentPartExpressionsarray

An array of rich content parts.

Items
TextRichContentPartExpressionobject

A text rich content part.

Properties
type"text"*required
textunion*required

The text content.

Variants
string

The text content.

Expressionobject

An expression which evaluates to the text content.

Properties
$jmespathstring*required

A JMESPath expression.

ImageRichContentPartExpressionobject

An image rich content part.

Properties
type"image_url"*required
image_urlunion*required

The URL of the image and its optional detail level.

Variants
object

The URL of the image and its optional detail level.

Properties
urlstring*required

Either a URL of the image or the base64 encoded image data.

detailenumoptional

Specifies the detail level of the image.

Variants
"auto"
"low"
"high"
Expressionobject

An expression which evaluates to the image URL definition.

Properties
$jmespathstring*required

A JMESPath expression.

AudioRichContentPartExpressionobject

An audio rich content part.

Properties
type"input_audio"*required
input_audiounion*required

The audio data and its format.

Variants
object

The audio data and its format.

Properties
datastring*required

Base64 encoded audio data.

formatenum*required

The format of the encoded audio data.

Variants
"wav"
"mp3"
Expressionobject

An expression which evaluates to the audio definition.

Properties
$jmespathstring*required

A JMESPath expression.

VideoRichContentPartExpressionobject

A video rich content part.

Properties
typeenum*required
Variants
"video_url"
"input_video"
video_urlunion*required

The video URL definition.

Variants
object
Properties
urlstring*required

URL of the video.

Expressionobject

An expression which evaluates to the video URL definition.

Properties
$jmespathstring*required

A JMESPath expression.

FileRichContentPartExpressionobject

A file rich content part.

Properties
type"file"*required
fileunion*required

The file to be used as input, either as base64 data, an uploaded file ID, or a URL.

Variants
object

The file to be used as input, either as base64 data, an uploaded file ID, or a URL.

Properties
file_datastringoptional

The base64 encoded file data, used when passing the file to the model as a string.

file_idstringoptional

The ID of an uploaded file to use as input.

filenamestringoptional

The name of the file, used when passing the file to the model as a string.

file_urlstringoptional

The URL of the file, used when passing the file to the model as a URL.

Expressionobject

An expression which evaluates to the file definition.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to a rich content part.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to rich content.

Properties
$jmespathstring*required

A JMESPath expression.

nameunionoptional

An optional name for the participant. Provides the model information to differentiate between participants of the same role.

Variants
MessageNamestring

An optional name for the participant. Provides the model information to differentiate between participants of the same role.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

refusalunionoptional

The refusal message by the assistant.

Variants
AssistantMessageRefusalstring

The refusal message by the assistant.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

tool_callsunionoptional

Tool calls made by the assistant.

Variants
array

Tool calls made by the assistant.

Items
AssistantMessageToolCallFunctionExpressionobject

A function tool call made by the assistant.

Properties
type"function"*required
idunion*required

The unique identifier for the tool call.

Variants
AssistantMessageToolCallIdstring

The unique identifier for the tool call.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

functionobject*required

The name and arguments of the function called.

Properties
nameunion*required

The name of the function called.

Variants
AssistantMessageToolCallFunctionNamestring

The name of the function called.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

argumentsunion*required

The arguments passed to the function.

Variants
AssistantMessageToolCallFunctionArgumentsstring

The arguments passed to the function.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to a tool call.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to an array of tool calls.

Properties
$jmespathstring*required

A JMESPath expression.

reasoningunionoptional

The reasoning provided by the assistant.

Variants
AssistantMessageReasoningstring

The reasoning provided by the assistant.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to a message.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to an array of messages.

Properties
$jmespathstring*required

A JMESPath expression.

toolsunionoptional

A list of tools that the assistant can call. These are readonly and will only be useful for explaining prior tool calls or otherwise influencing behavior.

Variants
ToolExpressionsarray

A list of tools that the assistant can call.

Items
FunctionToolExpressionobject

A function tool that the assistant can call.

Properties
type"function"*required
functionobject*required

The definition of a function tool.

Properties
nameunion*required

The name of the function.

Variants
FunctionToolNamestring

The name of the function.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

descriptionunionoptional

The description of the function.

Variants
FunctionToolDescriptionstring

The description of the function.

Expressionobject

An expression which evaluates to a string.

Properties
$jmespathstring*required

A JMESPath expression.

parametersunionoptional

The JSON schema defining the parameters of the function.

Variants
record
Values
JsonValueNullnull

Null

JsonValueBooleanboolean

Boolean

JsonValueNumbernumber

Number

JsonValueStringstring

String

JsonValueExpressionArrayarray

Array (values may be expressions)

Items
JsonValueExpression

A JSON value.

JsonValueExpressionObjectrecord

Object (values may be expressions)

Values
JsonValueExpression

A JSON value.

Expressionobject

An expression which evaluates to a JSON value.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to a JSON schema object.

Properties
$jmespathstring*required

A JMESPath expression.

strictunionoptional

Whether to enforce strict adherence to the parameter schema.

Variants
FunctionToolStrictboolean

Whether to enforce strict adherence to the parameter schema.

Expressionobject

An expression which evaluates to a boolean.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to a tool.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to an array of tools.

Properties
$jmespathstring*required

A JMESPath expression.

responsesunion*required

A list of possible assistant responses which the LLMs in the Ensemble will vote on. The output scores will be of the same length, each corresponding to one response. The winner is the response with the highest score.

Variants
VectorResponseExpressionsarray

A list of possible assistant responses which the LLMs in the Ensemble will vote on. The output scores will be of the same length, each corresponding to one response. The winner is the response with the highest score.

Items
RichContentTextstring

Plain text content.

RichContentPartsarray

An array of rich content parts.

Items
TextRichContentPartobject

A text rich content part.

Properties
type"text"*required
textstring*required

The text content.

ImageRichContentPartobject

An image rich content part.

Properties
type"image_url"*required
image_urlobject*required

The URL of the image and its optional detail level.

Properties
urlstring*required

Either a URL of the image or the base64 encoded image data.

detailenumoptional

Specifies the detail level of the image.

Variants
"auto"
"low"
"high"
AudioRichContentPartobject

An audio rich content part.

Properties
type"input_audio"*required
input_audioobject*required

The audio data and its format.

Properties
datastring*required

Base64 encoded audio data.

formatenum*required

The format of the encoded audio data.

Variants
"wav"
"mp3"
VideoRichContentPartobject

A video rich content part.

Properties
typeenum*required
Variants
"video_url"
"input_video"
video_urlobject*required
Properties
urlstring*required

URL of the video.

FileRichContentPartobject

A file rich content part.

Properties
type"file"*required
fileobject*required

The file to be used as input, either as base64 data, an uploaded file ID, or a URL.

Properties
file_datastringoptional

The base64 encoded file data, used when passing the file to the model as a string.

file_idstringoptional

The ID of an uploaded file to use as input.

filenamestringoptional

The name of the file, used when passing the file to the model as a string.

file_urlstringoptional

The URL of the file, used when passing the file to the model as a URL.

Expressionobject

An expression which evaluates to a possible assistant response.

Properties
$jmespathstring*required

A JMESPath expression.

Expressionobject

An expression which evaluates to an array of possible assistant responses.

Properties
$jmespathstring*required

A JMESPath expression.

outputobject*required

An expression which evaluates to an array of numbers. This is the output of the vector function. Will be provided with the outputs of all tasks.

Properties
$jmespathstring*required

A JMESPath expression.

input_splitobject*required

An expression transforming input into an array of inputs. When the Function is executed with any input from the array, the output_length should be 1.

Properties
$jmespathstring*required

A JMESPath expression.

input_mergeobject*required

An expression transforming an array of inputs (computed by input_split) into a single Input object for the Function.

Properties
$jmespathstring*required

A JMESPath expression.

descriptionstring*required

The description of the vector function.

changelogstringoptional

When present, describes changes from the previous version or versions.

input_schemaunion*required

An input schema defining the structure of function inputs.

Variants
ObjectInputSchemaobject

An object input schema.

Properties
type"object"*required
descriptionstringoptional

The description of the object input.

propertiesrecord*required

The properties of the object input.

Values
InputSchema
requiredarrayoptional

The required properties of the object input.

Items
string
ArrayInputSchemaobject

An array input schema.

Properties
type"array"*required
descriptionstringoptional

The description of the array input.

minItemsnumbermin: 0max: 4294967295optional

The minimum number of items in the array input.

maxItemsnumbermin: 0max: 4294967295optional

The maximum number of items in the array input.

items*required
StringInputSchemaobject

A string input schema.

Properties
type"string"*required
descriptionstringoptional

The description of the string input.

enumarrayoptional

The enumeration of allowed string values.

Items
string
NumberInputSchemaobject

A number input schema.

Properties
type"number"*required
descriptionstringoptional

The description of the number input.

minimumnumberoptional

The minimum allowed value for the number input.

maximumnumberoptional

The maximum allowed value for the number input.

IntegerInputSchemaobject

An integer input schema.

Properties
type"integer"*required
descriptionstringoptional

The description of the integer input.

minimumnumbermin: 0max: 4294967295optional

The minimum allowed value for the integer input.

maximumnumbermin: 0max: 4294967295optional

The maximum allowed value for the integer input.

BooleanInputSchemaobject

A boolean input schema.

Properties
type"boolean"*required
descriptionstringoptional

The description of the boolean input.

ImageInputSchemaobject

An image input schema.

Properties
type"image"*required
descriptionstringoptional

The description of the image input.

AudioInputSchemaobject

An audio input schema.

Properties
type"audio"*required
descriptionstringoptional

The description of the audio input.

VideoInputSchemaobject

A video input schema.

Properties
type"video"*required
descriptionstringoptional

The description of the video input.

FileInputSchemaobject

A file input schema.

Properties
type"file"*required
descriptionstringoptional

The description of the file input.

AnyOfInputSchemaobject

A union of schemas - input must match at least one.

Properties
anyOfarray*required

The possible schemas that the input can match.

Items
InputSchema
output_lengthunion*required

The length of the output vector.

Variants
numbermin: 0max: 4294967295

The fixed length of the output vector.

Expressionobject

An expression which evaluates to the length of the output vector. Will only be provided with the function input. The output length must be determinable from the input alone.

Properties
$jmespathstring*required

A JMESPath expression.

ownerstring*required

The owner of the GitHub repository containing the function.

repositorystring*required

The name of the GitHub repository containing the function.

commitstring*required

The commit SHA of the GitHub repository containing the function.

Objective Artificial Intelligence, Inc.