{
"title": "functions.InlineFunction",
"description": "An inline function definition without metadata.\n\nUsed when embedding function logic directly in requests rather than\nreferencing a remote function. Lacks description and input\nschema fields.",
"anyOf": [
{
"title": "Scalar",
"description": "Produces a single score in [0, 1].",
"type": "object",
"properties": {
"tasks": {
"description": "The list of tasks to execute. Tasks with a `map` expression are\nexpanded into multiple instances. Each instance is compiled with\n`map` set to the current integer index.\nReceives: `input`, `map` (if mapped).",
"type": "array",
"items": {
"$ref": "functions.TaskExpression"
}
},
"type": {
"type": "string",
"enum": [
"scalar.function"
]
}
}
},
{
"title": "Vector",
"description": "Produces a vector of scores that sums to 1.",
"type": "object",
"properties": {
"input_merge": {
"description": "Expression transforming an array of inputs computed by `input_split`\ninto a single Input object for the Function.\nReceives: `input` (as an array).\nOnly required if the request uses a strategy that needs input splitting.",
"anyOf": [
{
"$ref": "functions.expression.Expression"
},
{
"type": "null"
}
]
},
"input_split": {
"description": "Expression transforming input into an input array of the output_length\nWhen the Function is executed with any input from the array,\nThe output_length should be 1.\nReceives: `input`.\nOnly required if the request uses a strategy that needs input splitting.",
"anyOf": [
{
"$ref": "functions.expression.Expression"
},
{
"type": "null"
}
]
},
"tasks": {
"description": "The list of tasks to execute. Tasks with a `map` expression are\nexpanded into multiple instances. Each instance is compiled with\n`map` set to the current integer index.\nReceives: `input`, `map` (if mapped).",
"type": "array",
"items": {
"$ref": "functions.TaskExpression"
}
},
"type": {
"type": "string",
"enum": [
"vector.function"
]
}
}
}
]
}