feat(api): add o3 and o4-mini model IDs

This commit is contained in:
stainless-app[bot]
2025-04-16 16:42:15 +00:00
committed by meorphis
parent 9c50a1eb9f
commit 3fabca6b5c
7 changed files with 294 additions and 34 deletions

View File

@@ -37,6 +37,18 @@ const ChatModelGPT4_1Mini2025_04_14 = shared.ChatModelGPT4_1Mini2025_04_14
// Equals "gpt-4.1-nano-2025-04-14"
const ChatModelGPT4_1Nano2025_04_14 = shared.ChatModelGPT4_1Nano2025_04_14
// Equals "o4-mini"
const ChatModelO4Mini = shared.ChatModelO4Mini
// Equals "o4-mini-2025-04-16"
const ChatModelO4Mini2025_04_16 = shared.ChatModelO4Mini2025_04_16
// Equals "o3"
const ChatModelO3 = shared.ChatModelO3
// Equals "o3-2025-04-16"
const ChatModelO3_2025_04_16 = shared.ChatModelO3_2025_04_16
// Equals "o3-mini"
const ChatModelO3Mini = shared.ChatModelO3Mini
@@ -279,21 +291,40 @@ type Metadata = shared.Metadata
// This is an alias to an internal type.
type Reasoning = shared.Reasoning
// **computer_use_preview only**
// **Deprecated:** use `summary` instead.
//
// A summary of the reasoning performed by the model. This can be useful for
// debugging and understanding the model's reasoning process. One of `concise` or
// `detailed`.
// debugging and understanding the model's reasoning process. One of `auto`,
// `concise`, or `detailed`.
//
// This is an alias to an internal type.
type ReasoningGenerateSummary = shared.ReasoningGenerateSummary
// Equals "auto"
const ReasoningGenerateSummaryAuto = shared.ReasoningGenerateSummaryAuto
// Equals "concise"
const ReasoningGenerateSummaryConcise = shared.ReasoningGenerateSummaryConcise
// Equals "detailed"
const ReasoningGenerateSummaryDetailed = shared.ReasoningGenerateSummaryDetailed
// A summary of the reasoning performed by the model. This can be useful for
// debugging and understanding the model's reasoning process. One of `auto`,
// `concise`, or `detailed`.
//
// This is an alias to an internal type.
type ReasoningSummary = shared.ReasoningSummary
// Equals "auto"
const ReasoningSummaryAuto = shared.ReasoningSummaryAuto
// Equals "concise"
const ReasoningSummaryConcise = shared.ReasoningSummaryConcise
// Equals "detailed"
const ReasoningSummaryDetailed = shared.ReasoningSummaryDetailed
// **o-series models only**
//
// Configuration options for

View File

@@ -174,9 +174,25 @@ type ChatCompletion struct {
Model string `json:"model,required"`
// The object type, which is always `chat.completion`.
Object constant.ChatCompletion `json:"object,required"`
// The service tier used for processing the request.
// Specifies the latency tier to use for processing the request. This parameter is
// relevant for customers subscribed to the scale tier service:
//
// Any of "scale", "default".
// - If set to 'auto', and the Project is Scale tier enabled, the system will
// utilize scale tier credits until they are exhausted.
// - If set to 'auto', and the Project is not Scale tier enabled, the request will
// be processed using the default service tier with a lower uptime SLA and no
// latency guarentee.
// - If set to 'default', the request will be processed using the default service
// tier with a lower uptime SLA and no latency guarentee.
// - If set to 'flex', the request will be processed with the Flex Processing
// service tier.
// [Learn more](https://platform.openai.com/docs/guides/flex-processing).
// - When not set, the default behavior is 'auto'.
//
// When this parameter is set, the response body will include the `service_tier`
// utilized.
//
// Any of "auto", "default", "flex".
ServiceTier ChatCompletionServiceTier `json:"service_tier,nullable"`
// This fingerprint represents the backend configuration that the model runs with.
//
@@ -260,12 +276,29 @@ func (r *ChatCompletionChoiceLogprobs) UnmarshalJSON(data []byte) error {
return apijson.UnmarshalRoot(data, r)
}
// The service tier used for processing the request.
// Specifies the latency tier to use for processing the request. This parameter is
// relevant for customers subscribed to the scale tier service:
//
// - If set to 'auto', and the Project is Scale tier enabled, the system will
// utilize scale tier credits until they are exhausted.
// - If set to 'auto', and the Project is not Scale tier enabled, the request will
// be processed using the default service tier with a lower uptime SLA and no
// latency guarentee.
// - If set to 'default', the request will be processed using the default service
// tier with a lower uptime SLA and no latency guarentee.
// - If set to 'flex', the request will be processed with the Flex Processing
// service tier.
// [Learn more](https://platform.openai.com/docs/guides/flex-processing).
// - When not set, the default behavior is 'auto'.
//
// When this parameter is set, the response body will include the `service_tier`
// utilized.
type ChatCompletionServiceTier string
const (
ChatCompletionServiceTierScale ChatCompletionServiceTier = "scale"
ChatCompletionServiceTierAuto ChatCompletionServiceTier = "auto"
ChatCompletionServiceTierDefault ChatCompletionServiceTier = "default"
ChatCompletionServiceTierFlex ChatCompletionServiceTier = "flex"
)
// Messages sent by the model in response to user messages.
@@ -472,10 +505,10 @@ type ChatCompletionAudioParam struct {
// Specifies the output audio format. Must be one of `wav`, `mp3`, `flac`, `opus`,
// or `pcm16`.
//
// Any of "wav", "mp3", "flac", "opus", "pcm16".
// Any of "wav", "aac", "mp3", "flac", "opus", "pcm16".
Format ChatCompletionAudioParamFormat `json:"format,omitzero,required"`
// The voice the model uses to respond. Supported voices are `alloy`, `ash`,
// `ballad`, `coral`, `echo`, `sage`, and `shimmer`.
// `ballad`, `coral`, `echo`, `fable`, `nova`, `onyx`, `sage`, and `shimmer`.
Voice ChatCompletionAudioParamVoice `json:"voice,omitzero,required"`
paramObj
}
@@ -494,6 +527,7 @@ type ChatCompletionAudioParamFormat string
const (
ChatCompletionAudioParamFormatWAV ChatCompletionAudioParamFormat = "wav"
ChatCompletionAudioParamFormatAAC ChatCompletionAudioParamFormat = "aac"
ChatCompletionAudioParamFormatMP3 ChatCompletionAudioParamFormat = "mp3"
ChatCompletionAudioParamFormatFLAC ChatCompletionAudioParamFormat = "flac"
ChatCompletionAudioParamFormatOpus ChatCompletionAudioParamFormat = "opus"
@@ -501,7 +535,7 @@ const (
)
// The voice the model uses to respond. Supported voices are `alloy`, `ash`,
// `ballad`, `coral`, `echo`, `sage`, and `shimmer`.
// `ballad`, `coral`, `echo`, `fable`, `nova`, `onyx`, `sage`, and `shimmer`.
type ChatCompletionAudioParamVoice string
const (
@@ -535,9 +569,25 @@ type ChatCompletionChunk struct {
Model string `json:"model,required"`
// The object type, which is always `chat.completion.chunk`.
Object constant.ChatCompletionChunk `json:"object,required"`
// The service tier used for processing the request.
// Specifies the latency tier to use for processing the request. This parameter is
// relevant for customers subscribed to the scale tier service:
//
// Any of "scale", "default".
// - If set to 'auto', and the Project is Scale tier enabled, the system will
// utilize scale tier credits until they are exhausted.
// - If set to 'auto', and the Project is not Scale tier enabled, the request will
// be processed using the default service tier with a lower uptime SLA and no
// latency guarentee.
// - If set to 'default', the request will be processed using the default service
// tier with a lower uptime SLA and no latency guarentee.
// - If set to 'flex', the request will be processed with the Flex Processing
// service tier.
// [Learn more](https://platform.openai.com/docs/guides/flex-processing).
// - When not set, the default behavior is 'auto'.
//
// When this parameter is set, the response body will include the `service_tier`
// utilized.
//
// Any of "auto", "default", "flex".
ServiceTier ChatCompletionChunkServiceTier `json:"service_tier,nullable"`
// This fingerprint represents the backend configuration that the model runs with.
// Can be used in conjunction with the `seed` request parameter to understand when
@@ -736,12 +786,29 @@ func (r *ChatCompletionChunkChoiceLogprobs) UnmarshalJSON(data []byte) error {
return apijson.UnmarshalRoot(data, r)
}
// The service tier used for processing the request.
// Specifies the latency tier to use for processing the request. This parameter is
// relevant for customers subscribed to the scale tier service:
//
// - If set to 'auto', and the Project is Scale tier enabled, the system will
// utilize scale tier credits until they are exhausted.
// - If set to 'auto', and the Project is not Scale tier enabled, the request will
// be processed using the default service tier with a lower uptime SLA and no
// latency guarentee.
// - If set to 'default', the request will be processed using the default service
// tier with a lower uptime SLA and no latency guarentee.
// - If set to 'flex', the request will be processed with the Flex Processing
// service tier.
// [Learn more](https://platform.openai.com/docs/guides/flex-processing).
// - When not set, the default behavior is 'auto'.
//
// When this parameter is set, the response body will include the `service_tier`
// utilized.
type ChatCompletionChunkServiceTier string
const (
ChatCompletionChunkServiceTierScale ChatCompletionChunkServiceTier = "scale"
ChatCompletionChunkServiceTierAuto ChatCompletionChunkServiceTier = "auto"
ChatCompletionChunkServiceTierDefault ChatCompletionChunkServiceTier = "default"
ChatCompletionChunkServiceTierFlex ChatCompletionChunkServiceTier = "flex"
)
func TextContentPart(text string) ChatCompletionContentPartUnionParam {
@@ -2026,7 +2093,7 @@ type ChatCompletionNewParams struct {
// [images](https://platform.openai.com/docs/guides/vision), and
// [audio](https://platform.openai.com/docs/guides/audio).
Messages []ChatCompletionMessageParamUnion `json:"messages,omitzero,required"`
// Model ID used to generate the response, like `gpt-4o` or `o1`. OpenAI offers a
// Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI offers a
// wide range of models with different capabilities, performance characteristics,
// and price points. Refer to the
// [model guide](https://platform.openai.com/docs/models) to browse and compare
@@ -2050,7 +2117,7 @@ type ChatCompletionNewParams struct {
//
// This value is now deprecated in favor of `max_completion_tokens`, and is not
// compatible with
// [o1 series models](https://platform.openai.com/docs/guides/reasoning).
// [o-series models](https://platform.openai.com/docs/guides/reasoning).
MaxTokens param.Opt[int64] `json:"max_tokens,omitzero"`
// How many chat completion choices to generate for each input message. Note that
// you will be charged based on the number of generated tokens across all of the
@@ -2145,13 +2212,18 @@ type ChatCompletionNewParams struct {
// latency guarentee.
// - If set to 'default', the request will be processed using the default service
// tier with a lower uptime SLA and no latency guarentee.
// - If set to 'flex', the request will be processed with the Flex Processing
// service tier.
// [Learn more](https://platform.openai.com/docs/guides/flex-processing).
// - When not set, the default behavior is 'auto'.
//
// When this parameter is set, the response body will include the `service_tier`
// utilized.
//
// Any of "auto", "default".
// Any of "auto", "default", "flex".
ServiceTier ChatCompletionNewParamsServiceTier `json:"service_tier,omitzero"`
// Not supported with latest reasoning models `o3` and `o4-mini`.
//
// Up to 4 sequences where the API will stop generating further tokens. The
// returned text will not contain the stop sequence.
Stop ChatCompletionNewParamsStopUnion `json:"stop,omitzero"`
@@ -2342,6 +2414,9 @@ func (u ChatCompletionNewParamsResponseFormatUnion) GetType() *string {
// latency guarentee.
// - If set to 'default', the request will be processed using the default service
// tier with a lower uptime SLA and no latency guarentee.
// - If set to 'flex', the request will be processed with the Flex Processing
// service tier.
// [Learn more](https://platform.openai.com/docs/guides/flex-processing).
// - When not set, the default behavior is 'auto'.
//
// When this parameter is set, the response body will include the `service_tier`
@@ -2351,6 +2426,7 @@ type ChatCompletionNewParamsServiceTier string
const (
ChatCompletionNewParamsServiceTierAuto ChatCompletionNewParamsServiceTier = "auto"
ChatCompletionNewParamsServiceTierDefault ChatCompletionNewParamsServiceTier = "default"
ChatCompletionNewParamsServiceTierFlex ChatCompletionNewParamsServiceTier = "flex"
)
// Only one field can be non-zero.

View File

@@ -338,6 +338,8 @@ type CompletionNewParams struct {
// As an example, you can pass `{"50256": -100}` to prevent the <|endoftext|> token
// from being generated.
LogitBias map[string]int64 `json:"logit_bias,omitzero"`
// Not supported with latest reasoning models `o3` and `o4-mini`.
//
// Up to 4 sequences where the API will stop generating further tokens. The
// returned text will not contain the stop sequence.
Stop CompletionNewParamsStopUnion `json:"stop,omitzero"`

View File

@@ -37,6 +37,18 @@ const ChatModelGPT4_1Mini2025_04_14 = shared.ChatModelGPT4_1Mini2025_04_14
// Equals "gpt-4.1-nano-2025-04-14"
const ChatModelGPT4_1Nano2025_04_14 = shared.ChatModelGPT4_1Nano2025_04_14
// Equals "o4-mini"
const ChatModelO4Mini = shared.ChatModelO4Mini
// Equals "o4-mini-2025-04-16"
const ChatModelO4Mini2025_04_16 = shared.ChatModelO4Mini2025_04_16
// Equals "o3"
const ChatModelO3 = shared.ChatModelO3
// Equals "o3-2025-04-16"
const ChatModelO3_2025_04_16 = shared.ChatModelO3_2025_04_16
// Equals "o3-mini"
const ChatModelO3Mini = shared.ChatModelO3Mini
@@ -279,21 +291,40 @@ type Metadata = shared.Metadata
// This is an alias to an internal type.
type Reasoning = shared.Reasoning
// **computer_use_preview only**
// **Deprecated:** use `summary` instead.
//
// A summary of the reasoning performed by the model. This can be useful for
// debugging and understanding the model's reasoning process. One of `concise` or
// `detailed`.
// debugging and understanding the model's reasoning process. One of `auto`,
// `concise`, or `detailed`.
//
// This is an alias to an internal type.
type ReasoningGenerateSummary = shared.ReasoningGenerateSummary
// Equals "auto"
const ReasoningGenerateSummaryAuto = shared.ReasoningGenerateSummaryAuto
// Equals "concise"
const ReasoningGenerateSummaryConcise = shared.ReasoningGenerateSummaryConcise
// Equals "detailed"
const ReasoningGenerateSummaryDetailed = shared.ReasoningGenerateSummaryDetailed
// A summary of the reasoning performed by the model. This can be useful for
// debugging and understanding the model's reasoning process. One of `auto`,
// `concise`, or `detailed`.
//
// This is an alias to an internal type.
type ReasoningSummary = shared.ReasoningSummary
// Equals "auto"
const ReasoningSummaryAuto = shared.ReasoningSummaryAuto
// Equals "concise"
const ReasoningSummaryConcise = shared.ReasoningSummaryConcise
// Equals "detailed"
const ReasoningSummaryDetailed = shared.ReasoningSummaryDetailed
// **o-series models only**
//
// Configuration options for

View File

@@ -578,7 +578,7 @@ type Response struct {
// Keys are strings with a maximum length of 64 characters. Values are strings with
// a maximum length of 512 characters.
Metadata shared.Metadata `json:"metadata,required"`
// Model ID used to generate the response, like `gpt-4o` or `o1`. OpenAI offers a
// Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI offers a
// wide range of models with different capabilities, performance characteristics,
// and price points. Refer to the
// [model guide](https://platform.openai.com/docs/models) to browse and compare
@@ -639,6 +639,26 @@ type Response struct {
// Configuration options for
// [reasoning models](https://platform.openai.com/docs/guides/reasoning).
Reasoning shared.Reasoning `json:"reasoning,nullable"`
// Specifies the latency tier to use for processing the request. This parameter is
// relevant for customers subscribed to the scale tier service:
//
// - If set to 'auto', and the Project is Scale tier enabled, the system will
// utilize scale tier credits until they are exhausted.
// - If set to 'auto', and the Project is not Scale tier enabled, the request will
// be processed using the default service tier with a lower uptime SLA and no
// latency guarentee.
// - If set to 'default', the request will be processed using the default service
// tier with a lower uptime SLA and no latency guarentee.
// - If set to 'flex', the request will be processed with the Flex Processing
// service tier.
// [Learn more](https://platform.openai.com/docs/guides/flex-processing).
// - When not set, the default behavior is 'auto'.
//
// When this parameter is set, the response body will include the `service_tier`
// utilized.
//
// Any of "auto", "default", "flex".
ServiceTier ResponseServiceTier `json:"service_tier,nullable"`
// The status of the response generation. One of `completed`, `failed`,
// `in_progress`, or `incomplete`.
//
@@ -686,6 +706,7 @@ type Response struct {
MaxOutputTokens respjson.Field
PreviousResponseID respjson.Field
Reasoning respjson.Field
ServiceTier respjson.Field
Status respjson.Field
Text respjson.Field
Truncation respjson.Field
@@ -778,6 +799,31 @@ func (r *ResponseToolChoiceUnion) UnmarshalJSON(data []byte) error {
return apijson.UnmarshalRoot(data, r)
}
// Specifies the latency tier to use for processing the request. This parameter is
// relevant for customers subscribed to the scale tier service:
//
// - If set to 'auto', and the Project is Scale tier enabled, the system will
// utilize scale tier credits until they are exhausted.
// - If set to 'auto', and the Project is not Scale tier enabled, the request will
// be processed using the default service tier with a lower uptime SLA and no
// latency guarentee.
// - If set to 'default', the request will be processed using the default service
// tier with a lower uptime SLA and no latency guarentee.
// - If set to 'flex', the request will be processed with the Flex Processing
// service tier.
// [Learn more](https://platform.openai.com/docs/guides/flex-processing).
// - When not set, the default behavior is 'auto'.
//
// When this parameter is set, the response body will include the `service_tier`
// utilized.
type ResponseServiceTier string
const (
ResponseServiceTierAuto ResponseServiceTier = "auto"
ResponseServiceTierDefault ResponseServiceTier = "default"
ResponseServiceTierFlex ResponseServiceTier = "flex"
)
// The truncation strategy to use for the model response.
//
// - `auto`: If the context of this response and previous ones exceeds the model's
@@ -7509,7 +7555,7 @@ type ResponseNewParams struct {
// - [Conversation state](https://platform.openai.com/docs/guides/conversation-state)
// - [Function calling](https://platform.openai.com/docs/guides/function-calling)
Input ResponseNewParamsInputUnion `json:"input,omitzero,required"`
// Model ID used to generate the response, like `gpt-4o` or `o1`. OpenAI offers a
// Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI offers a
// wide range of models with different capabilities, performance characteristics,
// and price points. Refer to the
// [model guide](https://platform.openai.com/docs/models) to browse and compare
@@ -7570,6 +7616,26 @@ type ResponseNewParams struct {
// Keys are strings with a maximum length of 64 characters. Values are strings with
// a maximum length of 512 characters.
Metadata shared.Metadata `json:"metadata,omitzero"`
// Specifies the latency tier to use for processing the request. This parameter is
// relevant for customers subscribed to the scale tier service:
//
// - If set to 'auto', and the Project is Scale tier enabled, the system will
// utilize scale tier credits until they are exhausted.
// - If set to 'auto', and the Project is not Scale tier enabled, the request will
// be processed using the default service tier with a lower uptime SLA and no
// latency guarentee.
// - If set to 'default', the request will be processed using the default service
// tier with a lower uptime SLA and no latency guarentee.
// - If set to 'flex', the request will be processed with the Flex Processing
// service tier.
// [Learn more](https://platform.openai.com/docs/guides/flex-processing).
// - When not set, the default behavior is 'auto'.
//
// When this parameter is set, the response body will include the `service_tier`
// utilized.
//
// Any of "auto", "default", "flex".
ServiceTier ResponseNewParamsServiceTier `json:"service_tier,omitzero"`
// The truncation strategy to use for the model response.
//
// - `auto`: If the context of this response and previous ones exceeds the model's
@@ -7646,6 +7712,31 @@ func (u *ResponseNewParamsInputUnion) asAny() any {
return nil
}
// Specifies the latency tier to use for processing the request. This parameter is
// relevant for customers subscribed to the scale tier service:
//
// - If set to 'auto', and the Project is Scale tier enabled, the system will
// utilize scale tier credits until they are exhausted.
// - If set to 'auto', and the Project is not Scale tier enabled, the request will
// be processed using the default service tier with a lower uptime SLA and no
// latency guarentee.
// - If set to 'default', the request will be processed using the default service
// tier with a lower uptime SLA and no latency guarentee.
// - If set to 'flex', the request will be processed with the Flex Processing
// service tier.
// [Learn more](https://platform.openai.com/docs/guides/flex-processing).
// - When not set, the default behavior is 'auto'.
//
// When this parameter is set, the response body will include the `service_tier`
// utilized.
type ResponseNewParamsServiceTier string
const (
ResponseNewParamsServiceTierAuto ResponseNewParamsServiceTier = "auto"
ResponseNewParamsServiceTierDefault ResponseNewParamsServiceTier = "default"
ResponseNewParamsServiceTierFlex ResponseNewParamsServiceTier = "flex"
)
// Only one field can be non-zero.
//
// Use [param.IsOmitted] to confirm if a field is set.

View File

@@ -42,8 +42,10 @@ func TestResponseNewWithOptionalParams(t *testing.T) {
PreviousResponseID: openai.String("previous_response_id"),
Reasoning: shared.ReasoningParam{
Effort: shared.ReasoningEffortLow,
GenerateSummary: shared.ReasoningGenerateSummaryConcise,
GenerateSummary: shared.ReasoningGenerateSummaryAuto,
Summary: shared.ReasoningSummaryAuto,
},
ServiceTier: responses.ResponseNewParamsServiceTierAuto,
Store: openai.Bool(true),
Temperature: openai.Float(1),
Text: responses.ResponseTextConfigParam{

View File

@@ -27,6 +27,10 @@ const (
ChatModelGPT4_1_2025_04_14 ChatModel = "gpt-4.1-2025-04-14"
ChatModelGPT4_1Mini2025_04_14 ChatModel = "gpt-4.1-mini-2025-04-14"
ChatModelGPT4_1Nano2025_04_14 ChatModel = "gpt-4.1-nano-2025-04-14"
ChatModelO4Mini ChatModel = "o4-mini"
ChatModelO4Mini2025_04_16 ChatModel = "o4-mini-2025-04-16"
ChatModelO3 ChatModel = "o3"
ChatModelO3_2025_04_16 ChatModel = "o3-2025-04-16"
ChatModelO3Mini ChatModel = "o3-mini"
ChatModelO3Mini2025_01_31 ChatModel = "o3-mini-2025-01-31"
ChatModelO1 ChatModel = "o1"
@@ -422,13 +426,15 @@ type Reasoning struct {
//
// Any of "low", "medium", "high".
Effort ReasoningEffort `json:"effort,nullable"`
// **computer_use_preview only**
// **Deprecated:** use `summary` instead.
//
// A summary of the reasoning performed by the model. This can be useful for
// debugging and understanding the model's reasoning process. One of `concise` or
// `detailed`.
// debugging and understanding the model's reasoning process. One of `auto`,
// `concise`, or `detailed`.
//
// Any of "concise", "detailed".
// Any of "auto", "concise", "detailed".
//
// Deprecated: deprecated
GenerateSummary ReasoningGenerateSummary `json:"generate_summary,nullable"`
// A summary of the reasoning performed by the model. This can be useful for
// debugging and understanding the model's reasoning process. One of `auto`,
@@ -440,6 +446,7 @@ type Reasoning struct {
JSON struct {
Effort respjson.Field
GenerateSummary respjson.Field
Summary respjson.Field
ExtraFields map[string]respjson.Field
raw string
} `json:"-"`
@@ -460,18 +467,30 @@ func (r Reasoning) ToParam() ReasoningParam {
return param.Override[ReasoningParam](r.RawJSON())
}
// **computer_use_preview only**
// **Deprecated:** use `summary` instead.
//
// A summary of the reasoning performed by the model. This can be useful for
// debugging and understanding the model's reasoning process. One of `concise` or
// `detailed`.
// debugging and understanding the model's reasoning process. One of `auto`,
// `concise`, or `detailed`.
type ReasoningGenerateSummary string
const (
ReasoningGenerateSummaryAuto ReasoningGenerateSummary = "auto"
ReasoningGenerateSummaryConcise ReasoningGenerateSummary = "concise"
ReasoningGenerateSummaryDetailed ReasoningGenerateSummary = "detailed"
)
// A summary of the reasoning performed by the model. This can be useful for
// debugging and understanding the model's reasoning process. One of `auto`,
// `concise`, or `detailed`.
type ReasoningSummary string
const (
ReasoningSummaryAuto ReasoningSummary = "auto"
ReasoningSummaryConcise ReasoningSummary = "concise"
ReasoningSummaryDetailed ReasoningSummary = "detailed"
)
// **o-series models only**
//
// Configuration options for
@@ -486,14 +505,22 @@ type ReasoningParam struct {
//
// Any of "low", "medium", "high".
Effort ReasoningEffort `json:"effort,omitzero"`
// **computer_use_preview only**
// **Deprecated:** use `summary` instead.
//
// A summary of the reasoning performed by the model. This can be useful for
// debugging and understanding the model's reasoning process. One of `concise` or
// `detailed`.
// debugging and understanding the model's reasoning process. One of `auto`,
// `concise`, or `detailed`.
//
// Any of "concise", "detailed".
// Any of "auto", "concise", "detailed".
//
// Deprecated: deprecated
GenerateSummary ReasoningGenerateSummary `json:"generate_summary,omitzero"`
// A summary of the reasoning performed by the model. This can be useful for
// debugging and understanding the model's reasoning process. One of `auto`,
// `concise`, or `detailed`.
//
// Any of "auto", "concise", "detailed".
Summary ReasoningSummary `json:"summary,omitzero"`
paramObj
}