Skip to main content
POST
Utilisez l’API Responses pour envoyer du texte, des images, des fichiers et l’historique de conversation avec gpt-6-astra. Les exemples montrent également la recherche web, les appels de fonction personnalisés, les sorties structurées, le raisonnement et le Streaming.
La référence OpenAI Responses décrit le format complet de l’API ; les exemples présentés ici configurent ce format pour CometAPI.

Poursuivre une conversation

Pour une conversation uniquement textuelle, conservez les messages utilisateur et les réponses textuelles de l’assistant, puis ajoutez le message utilisateur suivant :
response.output_text est une propriété pratique du SDK qui combine le texte de l’assistant provenant de la réponse. Les conversations utilisant function calling nécessitent également leurs éléments d’appel d’outil et de résultat, comme décrit ci-dessous.

Utiliser la recherche web

Ajoutez un outil web_search pour rechercher des informations et inclure des citations de sources :
Examinez les éléments web_search_call renvoyés et les annotations d’URL du message lorsque votre application a besoin de résultats de recherche ou de citations. Les autres outils intégrés nécessitent leur propre configuration ; consultez le guide des outils OpenAI.

Appeler des fonctions personnalisées

Définissez les arguments de la fonction et laissez le modèle demander l’appel de la fonction :
Un appel de fonction apparaît sous la forme d’un élément de sortie function_call. Son champ arguments est une chaîne encodée en JSON. Exécutez votre fonction, puis construisez la requête suivante à partir de l’entrée d’origine et des éléments de sortie renvoyés, sans leurs champs id d’élément de réponse. Conservez les name, arguments et call_id de la fonction, puis ajoutez un élément function_call_output avec le call_id correspondant et votre résultat dans output.

Demander une sortie structurée

Utilisez text.format pour demander du JSON conforme à un schéma :
Vérifiez que la réponse est terminée et qu’elle n’a pas refusé la requête avant d’analyser le JSON. Une réponse qui atteint sa limite de Tokens de sortie peut être incomplète.

Configurer le raisonnement

Définissez reasoning.effort pour sélectionner l’effort de raisonnement du modèle :
Les exemples utilisent low pour les tâches générales et high pour l’exemple de raisonnement. max_output_tokens inclut à la fois les tokens de raisonnement et les tokens de sortie visibles.

Diffuser les réponses en continu

Définissez stream sur true pour recevoir des événements envoyés par le serveur :
Une réponse textuelle inclut des événements de cycle de vie tels que response.created, response.in_progress et response.completed. Le texte arrive dans des événements response.output_text.delta. Les événements d’outil et de raisonnement dépendent de la requête ; traitez donc les événements selon leur type plutôt que de supposer que chaque réponse suit la même séquence.

Autorisations

Authorization
string
header
requis

Bearer token authentication. Use your CometAPI key.

Corps

application/json
model
string
défaut:gpt-6-astra
requis

Model ID to use for this request. See the Models page for current options.

Exemple:

"gpt-6-astra"

input
requis

Text, image, or file inputs to the model, used to generate a response. Can be a simple string for text-only input, or an array of input items for multimodal content (images, files) and multi-turn conversations.

instructions
string

A system (or developer) message inserted into the model's context. When used with previous_response_id, instructions from the previous response are not carried over — this makes it easy to swap system messages between turns.

background
boolean

Whether to run the model response in the background. Background responses do not return output directly — you retrieve the result later via the response ID.

context_management
object[]

Context management configuration for this request. Controls how the model manages context when the conversation exceeds the context window.

conversation

The conversation this response belongs to. Items from the conversation are prepended to input for context. Input and output items are automatically added to the conversation after the response completes. Cannot be used with previous_response_id.

include
enum<string>[]

Additional output data to include in the response. Use this to request extra information that is not included by default.

Options disponibles:
web_search_call.action.sources,
code_interpreter_call.outputs,
computer_call_output.output.image_url,
file_search_call.results,
message.input_image.image_url,
message.output_text.logprobs,
reasoning.encrypted_content
max_output_tokens
integer

An upper bound for the number of tokens that can be generated for a response, including visible output tokens and reasoning tokens.

max_tool_calls
integer

The maximum number of total calls to built-in tools that can be processed in a response. This limit applies across all built-in tool calls, not per individual tool. Any further tool call attempts by the model will be ignored.

metadata
object

Set of up to 16 key-value pairs that can be attached to the response. Useful for storing additional information in a structured format. Keys have a maximum length of 64 characters; values have a maximum length of 512 characters.

parallel_tool_calls
boolean

Whether to allow the model to run tool calls in parallel.

previous_response_id
string

An ID for a stored response that is accessible to the selected model and request context. Cannot be combined with conversation. The conversation-history example sends prior input and output items explicitly.

prompt
object

Reference to a prompt template and its variables.

prompt_cache_key
string

A key used to cache responses for similar requests, helping optimize cache hit rates. Replaces the deprecated user field for caching purposes.

prompt_cache_retention
enum<string>
obsolète

Legacy prompt-cache retention setting. Refer to the selected model documentation for prompt_cache_options and supported retention settings.

Options disponibles:
in_memory,
24h
reasoning
object

Reasoning configuration for the selected model.

safety_identifier
string

A stable identifier for your end-users, used to help detect policy violations. Should be a hashed username or email — do not send identifying information directly.

Maximum string length: 64
service_tier
enum<string>

Specifies the processing tier for the request. When set, the response will include the actual service_tier used.

  • auto: Uses the tier configured in project settings (default behavior).
  • default: Standard pricing and performance.
  • flex: Flexible processing with potential cost savings.
  • priority: Priority processing with faster response times.
Options disponibles:
auto,
default,
flex,
priority
store
boolean

Request response storage for later retrieval, when supported by the selected model and request context.

stream
boolean

If set to true, the response data will be streamed to the client as it is generated using server-sent events (SSE). Events include response.created, response.output_text.delta, response.completed, and more.

stream_options
object

Options for streaming responses. Only set this when stream is true.

temperature
number

Sampling temperature. Omit this field for GPT-6 Astra.

Plage requise: 0 <= x <= 2
text
object

Configuration for text output. Use this to request structured JSON output via JSON mode or JSON Schema.

tool_choice

Controls how the model selects which tool(s) to call.

  • auto (default): The model decides whether and which tools to call.
  • none: The model will not call any tools.
  • required: The model must call at least one tool.
  • An object specifying a particular tool to use.
tools
object[]

Tools available to the model. This page demonstrates web_search and custom function tools. Other tool types require their own configuration; see the official tool reference.

top_logprobs
integer

Number of token alternatives to include for models supporting log probabilities. Requires message.output_text.logprobs in include. Omit for GPT-6 Astra.

Plage requise: 0 <= x <= 20
top_p
number

Nucleus sampling threshold. Omit this field for GPT-6 Astra. For sampling overrides, adjust either top_p or temperature.

Plage requise: 0 <= x <= 1
truncation
enum<string>

The truncation strategy for handling inputs that exceed the model's context window.

  • auto: The model truncates the input by dropping items from the beginning of the conversation to fit.
  • disabled (default): The request fails with a 400 error if the input exceeds the context window.
Options disponibles:
auto,
disabled
user
string
obsolète

Deprecated. Use safety_identifier and prompt_cache_key instead. A stable identifier for your end-user.

Réponse

200 - application/json

The generated Response object.

id
string

Unique identifier for the response.

Exemple:

"resp_example"

object
enum<string>

The object type, always response.

Options disponibles:
response
Exemple:

"response"

created_at
integer

Unix timestamp (in seconds) of when the response was created.

Exemple:

1788763707

status
enum<string>

The status of the response.

Options disponibles:
completed,
in_progress,
failed,
cancelled,
queued,
incomplete
Exemple:

"completed"

background
boolean

Whether the response was run in the background.

Exemple:

false

completed_at
integer | null

Unix timestamp of when the response was completed, or null if still in progress.

Exemple:

1788763711

error
object | null

Error information if the response failed, or null on success.

incomplete_details
object | null

Details about why the response is incomplete, if applicable.

instructions
string | null

The system instructions used for this response.

max_output_tokens
integer | null

The maximum output token limit that was applied.

model
string

The model used for the response.

Exemple:

"gpt-6-astra"

output
object[]

An array of output items generated by the model. Each item can be a message, function call, or other output type.

parallel_tool_calls
boolean

Whether parallel tool calls were enabled.

previous_response_id
string | null

The ID of the previous response, if this is a multi-turn conversation.

reasoning
object

The reasoning configuration that was used.

service_tier
string

The service tier actually used to process the request.

store
boolean

Whether the response was stored.

temperature
number

The temperature value used.

text
object

The text configuration used.

tool_choice

The tool choice setting used.

tools
object[]

The tools that were available for this response.

top_p
number

The top_p value used.

truncation
string

The truncation strategy used.

usage
object

Token usage statistics for this response.

user
string | null

The user identifier, if provided.

metadata
object

The metadata attached to this response.

content_filters
array | null

Content filter results applied to the response, if any.

frequency_penalty
number

The frequency penalty applied to the request.

max_tool_calls
integer | null

Maximum number of tool calls allowed, if set.

presence_penalty
number

The presence penalty applied to the request.

prompt_cache_key
string | null

Cache key for prompt caching, if applicable.

prompt_cache_retention
string | null

Prompt cache retention policy, if applicable.

safety_identifier
string | null

Safety system identifier for the response, if applicable.

top_logprobs
integer

Number of top log probabilities returned per token position.

Dernière modification le 8 septembre 2026