Assistants
Update an assistant
Updates an assistant with the supplied changes.
Parametri del percorso
assistant_id
string
necessario
Deprecato
The ID of the assistant to modify.
Corpo della richiesta
The request body.
model
string | enum
Deprecato
ID of the model to use. You can use the List models API to see all of your available models, or see our Model overview for descriptions of them.
enum
Deprecato
reasoning_effort
string | enum | null
Deprecato
Constrains effort on reasoning for reasoning models. Currently supported values are none, minimal, low, medium, high, xhigh, and max. Reducing reasoning effort can result in faster responses and fewer tokens used on reasoning in a response. Not all reasoning models support every value. See the reasoning guide for model-specific support.
enum
Deprecato
tools
OpenAI.AssistantTool[]
Deprecato
A list of tool enabled on the assistant. There can be a maximum of 128 tools per assistant. Tools can be of types code_interpreter, file_search, or function.
tool_resources
OpenAI.ModifyAssistantRequestToolResources | null
Deprecato
code_interpreter
OpenAI.ModifyAssistantRequestToolResourcesCodeInterpreter
Deprecato
file_search
OpenAI.ModifyAssistantRequestToolResourcesFileSearch
Deprecato
metadata
OpenAI.Metadata | null
Deprecato
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, and querying for objects via API or the dashboard. Keys are strings with a maximum length of 64 characters. Values are strings with a maximum length of 512 characters.
response_format
enum | OpenAI.ResponseFormatText | OpenAI.ResponseFormatJsonObject | OpenAI.ResponseFormatJsonSchema | null
Deprecato
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.
enum
Deprecato
type
enum
necessario
Deprecato
The type of response format being defined. Always text.
type
enum
necessario
Deprecato
The type of response format being defined. Always json_object.
type
enum
necessario
Deprecato
The type of response format being defined. Always json_schema.
json_schema
OpenAI.ResponseFormatJsonSchemaJsonSchema
necessario
Deprecato
schema
OpenAI.ResponseFormatJsonSchemaSchema
Deprecato
The schema for the response format, described as a JSON Schema object. Learn how to build JSON schemas here.
Risposte
The request has succeeded.
Corpo
id
string
necessario
Deprecato
The identifier, which can be referenced in API endpoints.
object
enum
necessario
Deprecato
The object type, which is always assistant.
created_at
integer
necessario
Deprecato
The Unix timestamp (in seconds) for when the assistant was created.
model
string
necessario
Deprecato
ID of the model to use. You can use the List models API to see all of your available models, or see our Model overview for descriptions of them.
tools
OpenAI.AssistantTool[]
necessario
Deprecato
A list of tool enabled on the assistant. There can be a maximum of 128 tools per assistant. Tools can be of types code_interpreter, file_search, or function.
tool_resources
OpenAI.AssistantObjectToolResources | null
Deprecato
code_interpreter
OpenAI.AssistantObjectToolResourcesCodeInterpreter
Deprecato
file_search
OpenAI.AssistantObjectToolResourcesFileSearch
Deprecato
metadata
OpenAI.Metadata | null
necessario
Deprecato
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, and querying for objects via API or the dashboard. Keys are strings with a maximum length of 64 characters. Values are strings with a maximum length of 512 characters.
response_format
enum | OpenAI.ResponseFormatText | OpenAI.ResponseFormatJsonObject | OpenAI.ResponseFormatJsonSchema | null
Deprecato
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.
enum
Deprecato
type
enum
necessario
Deprecato
The type of response format being defined. Always text.
type
enum
necessario
Deprecato
The type of response format being defined. Always json_object.
type
enum
necessario
Deprecato
The type of response format being defined. Always json_schema.
json_schema
OpenAI.ResponseFormatJsonSchemaJsonSchema
necessario
Deprecato
schema
OpenAI.ResponseFormatJsonSchemaSchema
Deprecato
The schema for the response format, described as a JSON Schema object. Learn how to build JSON schemas here.
Richiedi
curl https://api.openai.com/v1/assistants/asst_abc123 \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "OpenAI-Beta: assistants=v2" \
-d '{
"instructions": "You are an HR bot, and you have access to files to answer employee questions about company policies. Always response with info from either of the files.",
"tools": [{"type": "file_search"}],
"model": "gpt-4o"
}'
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ.get("OPENAI_API_KEY"), # This is the default and can be omitted
)
assistant = client.beta.assistants.update(
assistant_id="assistant_id",
)
print(assistant.id)
import OpenAI from "openai";
const openai = new OpenAI();
async function main() {
const myUpdatedAssistant = await openai.beta.assistants.update(
"asst_abc123",
{
instructions:
"You are an HR bot, and you have access to files to answer employee questions about company policies. Always response with info from either of the files.",
name: "HR Helper",
tools: [{ type: "file_search" }],
model: "gpt-4o"
}
);
console.log(myUpdatedAssistant);
}
main();
import OpenAI from 'openai';
const client = new OpenAI({
apiKey: process.env['OPENAI_API_KEY'], // This is the default and can be omitted
});
const assistant = await client.beta.assistants.update('assistant_id');
console.log(assistant.id);
package main
import (
"context"
"fmt"
"github.com/openai/openai-go"
"github.com/openai/openai-go/option"
)
func main() {
client := openai.NewClient(
option.WithAPIKey("My API Key"),
)
assistant, err := client.Beta.Assistants.Update(
context.TODO(),
"assistant_id",
openai.BetaAssistantUpdateParams{},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v
", assistant.ID)
}
package com.openai.example;
import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.models.beta.assistants.Assistant;
import com.openai.models.beta.assistants.AssistantUpdateParams;
public final class Main {
private Main() {}
public static void main(String[] args) {
OpenAIClient client = OpenAIOkHttpClient.fromEnv();
Assistant assistant = client.beta().assistants().update("assistant_id");
}
}
require "openai"
openai = OpenAI::Client.new(api_key: "My API Key")
assistant = openai.beta.assistants.update("assistant_id")
puts(assistant)
Response
{
"id": "asst_123",
"object": "assistant",
"created_at": 1699009709,
"name": "HR Helper",
"description": null,
"model": "gpt-4o",
"instructions": "You are an HR bot, and you have access to files to answer employee questions about company policies. Always response with info from either of the files.",
"tools": [
{
"type": "file_search"
}
],
"tool_resources": {
"file_search": {
"vector_store_ids": []
}
},
"metadata": {},
"top_p": 1.0,
"temperature": 1.0,
"response_format": "auto"
}