Passer directement au contenu principal

Ce navigateur n’est plus pris en charge.

Effectuez une mise à niveau vers Microsoft Edge pour tirer parti des dernières fonctionnalités, des mises à jour de sécurité et du support technique.

Télécharger Microsoft Edge Plus d’informations sur Internet Explorer et Microsoft Edge
microsoft-foundry.rest.security.o-auth2-auth

Assistants

Create an assistant

POST /openai/v1/assistants Déprécié

Creates an assistant from the supplied request.

Corps de la demande

The request body.

Content-Type: application/json
model string | enum obligatoire Déprécié

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.

Un des éléments suivants :
string Déprécié
enum Déprécié
gpt-5gpt-5-minigpt-5-nanogpt-5-2025-08-07gpt-5-mini-2025-08-07gpt-5-nano-2025-08-07gpt-4.1gpt-4.1-minigpt-4.1-nanogpt-4.1-2025-04-14gpt-4.1-mini-2025-04-14gpt-4.1-nano-2025-04-14o3-minio3-mini-2025-01-31o1o1-2024-12-17gpt-4ogpt-4o-2024-11-20gpt-4o-2024-08-06gpt-4o-2024-05-13gpt-4o-minigpt-4o-mini-2024-07-18gpt-4.5-previewgpt-4.5-preview-2025-02-27gpt-4-turbogpt-4-turbo-2024-04-09gpt-4-0125-previewgpt-4-turbo-previewgpt-4-1106-previewgpt-4-vision-previewgpt-4gpt-4-0314gpt-4-0613gpt-4-32kgpt-4-32k-0314gpt-4-32k-0613gpt-3.5-turbogpt-3.5-turbo-16kgpt-3.5-turbo-0613gpt-3.5-turbo-1106gpt-3.5-turbo-0125gpt-3.5-turbo-16k-0613
name string | null Déprécié
description string | null Déprécié
instructions string | null Déprécié
reasoning_effort string | enum | null Déprécié

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.

Un des éléments suivants :
string Déprécié
enum Déprécié
noneminimallowmediumhighxhighmax
tools OpenAI.AssistantTool[] Déprécié

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.CreateAssistantRequestToolResources | null Déprécié
code_interpreter OpenAI.CreateAssistantRequestToolResourcesCodeInterpreter Déprécié
file_ids string[] Déprécié
file_search OpenAI.CreateAssistantRequestToolResourcesFileSearch Déprécié
vector_store_ids string[] Déprécié
vector_stores OpenAI.CreateAssistantRequestToolResourcesFileSearchVectorStores[] Déprécié
metadata OpenAI.Metadata | null Déprécié

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.

[key: string] string Déprécié
temperature number | null Déprécié
top_p number | null Déprécié
response_format enum | OpenAI.ResponseFormatText | OpenAI.ResponseFormatJsonObject | OpenAI.ResponseFormatJsonSchema | null Déprécié

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.

Celui-ci peut avoir l'une des valeurs suivantes :
enum Déprécié
auto
type enum obligatoire Déprécié

The type of response format being defined. Always text.

text
type enum obligatoire Déprécié

The type of response format being defined. Always json_object.

json_object
type enum obligatoire Déprécié

The type of response format being defined. Always json_schema.

json_schema
json_schema OpenAI.ResponseFormatJsonSchemaJsonSchema obligatoire Déprécié
description string Déprécié
name string obligatoire Déprécié
schema OpenAI.ResponseFormatJsonSchemaSchema Déprécié

The schema for the response format, described as a JSON Schema object. Learn how to build JSON schemas here.

strict boolean | null Déprécié

Réponses

The request has succeeded.

Corps

Content-Type: application/json
id string obligatoire Déprécié

The identifier, which can be referenced in API endpoints.

object enum obligatoire Déprécié

The object type, which is always assistant.

assistant
created_at integer obligatoire Déprécié

The Unix timestamp (in seconds) for when the assistant was created.

name string | null obligatoire Déprécié
description string | null obligatoire Déprécié
model string obligatoire Déprécié

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.

instructions string | null obligatoire Déprécié
tools OpenAI.AssistantTool[] obligatoire Déprécié

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 Déprécié
code_interpreter OpenAI.AssistantObjectToolResourcesCodeInterpreter Déprécié
file_ids string[] Déprécié
file_search OpenAI.AssistantObjectToolResourcesFileSearch Déprécié
vector_store_ids string[] Déprécié
metadata OpenAI.Metadata | null obligatoire Déprécié

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.

[key: string] string Déprécié
temperature number | null Déprécié
top_p number | null Déprécié
response_format enum | OpenAI.ResponseFormatText | OpenAI.ResponseFormatJsonObject | OpenAI.ResponseFormatJsonSchema | null Déprécié

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.

Celui-ci peut avoir l'une des valeurs suivantes :
enum Déprécié
auto
type enum obligatoire Déprécié

The type of response format being defined. Always text.

text
type enum obligatoire Déprécié

The type of response format being defined. Always json_object.

json_object
type enum obligatoire Déprécié

The type of response format being defined. Always json_schema.

json_schema
json_schema OpenAI.ResponseFormatJsonSchemaJsonSchema obligatoire Déprécié
description string Déprécié
name string obligatoire Déprécié
schema OpenAI.ResponseFormatJsonSchemaSchema Déprécié

The schema for the response format, described as a JSON Schema object. Learn how to build JSON schemas here.

strict boolean | null Déprécié

Client error

Corps

Content-Type: application/json
error OpenAI.Error obligatoire Déprécié
code string | null obligatoire Déprécié
message string obligatoire Déprécié
param string | null Déprécié
type string Déprécié
misalignment OpenAI.MisalignmentErrorDetailsResource Déprécié
review_target string | null Déprécié
error_type string | enum Déprécié
Un des éléments suivants :
string Déprécié
enum Déprécié
potentially_unintended_data_transferpotentially_unintended_data_accesspotentially_unintended_destructive_activityother
detailed_explanation string Déprécié

The public explanation for this block.

steer OpenAI._MisalignmentSteer Déprécié
message string obligatoire Déprécié

The public continuation instruction.

details OpenAI.Error[] Déprécié
additionalInfo object Déprécié
debugInfo object Déprécié

Server error

Corps

Content-Type: application/json
error OpenAI.Error obligatoire Déprécié
code string | null obligatoire Déprécié
message string obligatoire Déprécié
param string | null Déprécié
type string Déprécié
misalignment OpenAI.MisalignmentErrorDetailsResource Déprécié
review_target string | null Déprécié
error_type string | enum Déprécié
Un des éléments suivants :
string Déprécié
enum Déprécié
potentially_unintended_data_transferpotentially_unintended_data_accesspotentially_unintended_destructive_activityother
detailed_explanation string Déprécié

The public explanation for this block.

steer OpenAI._MisalignmentSteer Déprécié
message string obligatoire Déprécié

The public continuation instruction.

details OpenAI.Error[] Déprécié
additionalInfo object Déprécié
debugInfo object Déprécié

Requête

curl "https://api.openai.com/v1/assistants" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -H "OpenAI-Beta: assistants=v2" \
  -d '{
    "instructions": "You are a personal math tutor. When asked a question, write and run Python code to answer the question.",
    "name": "Math Tutor",
    "tools": [{"type": "code_interpreter"}],
    "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.create(
    model="gpt-4o",
)
print(assistant.id)
import OpenAI from "openai";

const openai = new OpenAI();

async function main() {
  const myAssistant = await openai.beta.assistants.create({
    instructions:
      "You are a personal math tutor. When asked a question, write and run Python code to answer the question.",
    name: "Math Tutor",
    tools: [{ type: "code_interpreter" }],
    model: "gpt-4o",
  });

  console.log(myAssistant);
}

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.create({ model: 'gpt-4o' });

console.log(assistant.id);
package main

import (
    "context"
    "fmt"

    "github.com/openai/openai-go"
    "github.com/openai/openai-go/option"
    "github.com/openai/openai-go/shared"
)

func main() {
    client := openai.NewClient(
        option.WithAPIKey("My API Key"),
    )
    assistant, err := client.Beta.Assistants.New(context.TODO(), openai.BetaAssistantNewParams{
        Model: shared.ChatModelGPT4o,
    })
    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.ChatModel;
import com.openai.models.beta.assistants.Assistant;
import com.openai.models.beta.assistants.AssistantCreateParams;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        OpenAIClient client = OpenAIOkHttpClient.fromEnv();

        AssistantCreateParams params = AssistantCreateParams.builder()
            .model(ChatModel.GPT_4O)
            .build();
        Assistant assistant = client.beta().assistants().create(params);
    }
}
require "openai"

openai = OpenAI::Client.new(api_key: "My API Key")

assistant = openai.beta.assistants.create(model: :"gpt-4o")

puts(assistant)

Response

{
  "id": "asst_abc123",
  "object": "assistant",
  "created_at": 1698984975,
  "name": "Math Tutor",
  "description": null,
  "model": "gpt-4o",
  "instructions": "You are a personal math tutor. When asked a question, write and run Python code to answer the question.",
  "tools": [
    {
      "type": "code_interpreter"
    }
  ],
  "metadata": {},
  "top_p": 1.0,
  "temperature": 1.0,
  "response_format": "auto"
}

Requête

curl https://api.openai.com/v1/assistants \
  -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.",
    "tools": [{"type": "file_search"}],
    "tool_resources": {"file_search": {"vector_store_ids": ["vs_123"]}},
    "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.create(
    model="gpt-4o",
)
print(assistant.id)
import OpenAI from "openai";

const openai = new OpenAI();

async function main() {
  const myAssistant = await openai.beta.assistants.create({
    instructions:
      "You are an HR bot, and you have access to files to answer employee questions about company policies.",
    name: "HR Helper",
    tools: [{ type: "file_search" }],
    tool_resources: {
      file_search: {
        vector_store_ids: ["vs_123"]
      }
    },
    model: "gpt-4o"
  });

  console.log(myAssistant);
}

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.create({ model: 'gpt-4o' });

console.log(assistant.id);
package main

import (
    "context"
    "fmt"

    "github.com/openai/openai-go"
    "github.com/openai/openai-go/option"
    "github.com/openai/openai-go/shared"
)

func main() {
    client := openai.NewClient(
        option.WithAPIKey("My API Key"),
    )
    assistant, err := client.Beta.Assistants.New(context.TODO(), openai.BetaAssistantNewParams{
        Model: shared.ChatModelGPT4o,
    })
    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.ChatModel;
import com.openai.models.beta.assistants.Assistant;
import com.openai.models.beta.assistants.AssistantCreateParams;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        OpenAIClient client = OpenAIOkHttpClient.fromEnv();

        AssistantCreateParams params = AssistantCreateParams.builder()
            .model(ChatModel.GPT_4O)
            .build();
        Assistant assistant = client.beta().assistants().create(params);
    }
}
require "openai"

openai = OpenAI::Client.new(api_key: "My API Key")

assistant = openai.beta.assistants.create(model: :"gpt-4o")

puts(assistant)

Response

{
  "id": "asst_abc123",
  "object": "assistant",
  "created_at": 1699009403,
  "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.",
  "tools": [
    {
      "type": "file_search"
    }
  ],
  "tool_resources": {
    "file_search": {
      "vector_store_ids": ["vs_123"]
    }
  },
  "metadata": {},
  "top_p": 1.0,
  "temperature": 1.0,
  "response_format": "auto"
}
fr-fr
Vos choix en matière de confidentialité
  • Clause d’exclusion de responsabilité sur l’IA
  • Versions antérieures
  • Blog
  • Collaboration
  • Confidentialité
  • Confidentialité de la santé des consommateurs
  • Conditions d’utilisation
  • Accessibilité
  • Marques
  • © Microsoft 2026