runs
Creates, updates, deletes, gets or lists a runs
resource.
Overview
Name | runs |
Type | Resource |
Id | openai.assistants.runs |
Fields
Name | Datatype | Description |
---|---|---|
id | string | The identifier, which can be referenced in API endpoints. |
assistant_id | string | The ID of the assistant used for execution of this run. |
cancelled_at | integer | The Unix timestamp (in seconds) for when the run was cancelled. |
completed_at | integer | The Unix timestamp (in seconds) for when the run was completed. |
created_at | integer | The Unix timestamp (in seconds) for when the run was created. |
expires_at | integer | The Unix timestamp (in seconds) for when the run will expire. |
failed_at | integer | The Unix timestamp (in seconds) for when the run failed. |
incomplete_details | object | Details on why the run is incomplete. Will be null if the run is not incomplete. |
instructions | string | The instructions that the assistant used for this run. |
last_error | object | The last error associated with this run. Will be null if there are no errors. |
max_completion_tokens | integer | The maximum number of completion tokens specified to have been used over the course of the run. |
max_prompt_tokens | integer | The maximum number of prompt tokens specified to have been used over the course of the run. |
metadata | object | Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long. |
model | string | The model that the assistant used for this run. |
object | string | The object type, which is always thread.run . |
parallel_tool_calls | boolean | Whether to enable parallel function calling during tool use. |
required_action | object | Details on the action required to continue the run. Will be null if no action is required. |
response_format | `` | Specifies the format that the model must output. Compatible with GPT-4o, GPT-4 Turbo, and all GPT-3.5 Turbo models since gpt-3.5-turbo-1106 . Setting to { "type": "json_schema", "json_schema": {...} } enables Structured Outputs which ensures the model will match your supplied JSON schema. Learn more in the Structured Outputs guide. Setting to { "type": "json_object" } enables JSON mode, which ensures the message the model generates is valid JSON. Important: when using JSON mode, you must also instruct the model to produce JSON yourself via a system or user message. Without this, the model may generate an unending stream of whitespace until the generation reaches the token limit, resulting in a long-running and seemingly "stuck" request. Also note that the message content may be partially cut off if finish_reason="length" , which indicates the generation exceeded max_tokens or the conversation exceeded the max context length. |
started_at | integer | The Unix timestamp (in seconds) for when the run was started. |
status | string | The status of the run, which can be either queued , in_progress , requires_action , cancelling , cancelled , failed , completed , incomplete , or expired . |
temperature | number | The sampling temperature used for this run. If not set, defaults to 1. |
thread_id | string | The ID of the thread that was executed on as a part of this run. |
tool_choice | `` | Controls which (if any) tool is called by the model. none means the model will not call any tools and instead generates a message. auto is the default value and means the model can pick between generating a message or calling one or more tools. required means the model must call one or more tools before responding to the user. Specifying a particular tool like {"type": "file_search"} or {"type": "function", "function": {"name": "my_function"}} forces the model to call that tool. |
tools | array | The list of tools that the assistant used for this run. |
top_p | number | The nucleus sampling value used for this run. If not set, defaults to 1. |
truncation_strategy | object | Controls for how a thread will be truncated prior to the run. Use this to control the intial context window of the run. |
usage | object | Usage statistics related to the run. This value will be null if the run is not in a terminal state (i.e. in_progress , queued , etc.). |
Methods
Name | Accessible by | Required Params | Description |
---|---|---|---|
get_run | SELECT | run_id, thread_id | |
list_runs | SELECT | thread_id | |
create_run | INSERT | thread_id, data__assistant_id | |
modify_run | UPDATE | run_id, thread_id | |
cancel_run | EXEC | run_id, thread_id | |
submit_tool_ouputs_to_run | EXEC | run_id, thread_id, data__tool_outputs |
SELECT
examples
SELECT
id,
assistant_id,
cancelled_at,
completed_at,
created_at,
expires_at,
failed_at,
incomplete_details,
instructions,
last_error,
max_completion_tokens,
max_prompt_tokens,
metadata,
model,
object,
parallel_tool_calls,
required_action,
response_format,
started_at,
status,
temperature,
thread_id,
tool_choice,
tools,
top_p,
truncation_strategy,
usage
FROM openai.assistants.runs
WHERE thread_id = '{{ thread_id }}';
INSERT
example
Use the following StackQL query and manifest file to create a new runs
resource.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO openai.assistants.runs (
data__assistant_id,
data__model,
data__instructions,
data__additional_instructions,
data__additional_messages,
data__tools,
data__metadata,
data__temperature,
data__top_p,
data__stream,
data__max_prompt_tokens,
data__max_completion_tokens,
data__truncation_strategy,
data__tool_choice,
data__parallel_tool_calls,
data__response_format,
thread_id
)
SELECT
'{{ assistant_id }}',
'{{ model }}',
'{{ instructions }}',
'{{ additional_instructions }}',
'{{ additional_messages }}',
'{{ tools }}',
'{{ metadata }}',
'{{ temperature }}',
'{{ top_p }}',
'{{ stream }}',
'{{ max_prompt_tokens }}',
'{{ max_completion_tokens }}',
'{{ truncation_strategy }}',
'{{ tool_choice }}',
'{{ parallel_tool_calls }}',
'{{ response_format }}',
'{{ thread_id }}'
;
/*+ create */
INSERT INTO openai.assistants.runs (
data__assistant_id,
thread_id
)
SELECT
'{{ assistant_id }}',
'{{ thread_id }}'
;
- name: runs
props:
- name: thread_id
value: string
- name: data__assistant_id
value: string
- name: assistant_id
value: string
- name: model
value: string
- name: instructions
value: string
- name: additional_instructions
value: string
- name: additional_messages
value: array
props:
- name: role
value: string
- name: content
value: string
- name: attachments
value: array
props:
- name: file_id
value: string
- name: tools
value: array
props:
- name: type
value: string
- name: metadata
value: object
- name: tools
value: array
props:
- name: type
value: string
- name: metadata
value: object
- name: temperature
value: number
- name: top_p
value: number
- name: stream
value: boolean
- name: max_prompt_tokens
value: integer
- name: max_completion_tokens
value: integer
- name: truncation_strategy
props:
- name: type
value: string
- name: last_messages
value: integer
- name: tool_choice
value: string
- name: parallel_tool_calls
value: boolean
- name: response_format
value: string
UPDATE
example
Updates a runs
resource.
/*+ update */
UPDATE openai.assistants.runs
SET
metadata = '{{ metadata }}'
WHERE
run_id = '{{ run_id }}'
AND thread_id = '{{ thread_id }}';