openai 0.71.0 → 0.73.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +18 -0
- data/README.md +1 -1
- data/lib/openai/models/admin/organization/organization_spend_limit.rb +151 -0
- data/lib/openai/models/admin/organization/organization_spend_limit_deleted.rb +33 -0
- data/lib/openai/models/admin/organization/projects/project_spend_limit.rb +155 -0
- data/lib/openai/models/admin/organization/projects/project_spend_limit_deleted.rb +35 -0
- data/lib/openai/models/admin/organization/projects/spend_limit_delete_params.rb +26 -0
- data/lib/openai/models/admin/organization/projects/spend_limit_retrieve_params.rb +26 -0
- data/lib/openai/models/admin/organization/projects/spend_limit_update_params.rb +77 -0
- data/lib/openai/models/admin/organization/spend_limit_delete_params.rb +18 -0
- data/lib/openai/models/admin/organization/spend_limit_retrieve_params.rb +18 -0
- data/lib/openai/models/admin/organization/spend_limit_update_params.rb +67 -0
- data/lib/openai/models/audio/transcription.rb +10 -1
- data/lib/openai/models/audio/transcription_create_params.rb +24 -5
- data/lib/openai/models/audio/transcription_language.rb +20 -0
- data/lib/openai/models/audio/transcription_text_done_event.rb +10 -1
- data/lib/openai/models/audio_model.rb +1 -0
- data/lib/openai/models/beta/beta_response.rb +12 -6
- data/lib/openai/models/beta/beta_response_error.rb +1 -0
- data/lib/openai/models/beta/beta_response_text_config.rb +4 -2
- data/lib/openai/models/beta/beta_responses_client_event.rb +12 -6
- data/lib/openai/models/beta/response_create_params.rb +12 -6
- data/lib/openai/models/beta/responses/input_token_count_params.rb +12 -4
- data/lib/openai/models/chat/completion_create_params.rb +8 -6
- data/lib/openai/models/realtime/audio_transcription.rb +35 -8
- data/lib/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rb +10 -1
- data/lib/openai/models/reasoning.rb +8 -2
- data/lib/openai/models/responses/input_token_count_params.rb +4 -2
- data/lib/openai/models/responses/response.rb +4 -4
- data/lib/openai/models/responses/response_create_params.rb +4 -4
- data/lib/openai/models/responses/response_error.rb +1 -0
- data/lib/openai/models/responses/response_text_config.rb +4 -2
- data/lib/openai/models/responses/responses_client_event.rb +4 -4
- data/lib/openai/models/webhooks/live_call_incoming_webhook_event.rb +121 -0
- data/lib/openai/models/webhooks/realtime_call_incoming_webhook_event.rb +6 -3
- data/lib/openai/models/webhooks/unwrap_webhook_event.rb +9 -2
- data/lib/openai/resources/admin/organization/projects/spend_limit.rb +95 -0
- data/lib/openai/resources/admin/organization/projects.rb +4 -0
- data/lib/openai/resources/admin/organization/spend_limit.rb +86 -0
- data/lib/openai/resources/admin/organization.rb +4 -0
- data/lib/openai/resources/audio/transcriptions.rb +12 -4
- data/lib/openai/resources/beta/responses.rb +4 -4
- data/lib/openai/resources/chat/completions.rb +4 -4
- data/lib/openai/resources/responses.rb +4 -4
- data/lib/openai/resources/webhooks.rb +1 -1
- data/lib/openai/version.rb +1 -1
- data/lib/openai.rb +14 -0
- data/rbi/openai/models/admin/organization/organization_spend_limit.rbi +278 -0
- data/rbi/openai/models/admin/organization/organization_spend_limit_deleted.rbi +48 -0
- data/rbi/openai/models/admin/organization/projects/project_spend_limit.rbi +280 -0
- data/rbi/openai/models/admin/organization/projects/project_spend_limit_deleted.rbi +49 -0
- data/rbi/openai/models/admin/organization/projects/spend_limit_delete_params.rbi +44 -0
- data/rbi/openai/models/admin/organization/projects/spend_limit_retrieve_params.rbi +44 -0
- data/rbi/openai/models/admin/organization/projects/spend_limit_update_params.rbi +149 -0
- data/rbi/openai/models/admin/organization/spend_limit_delete_params.rbi +34 -0
- data/rbi/openai/models/admin/organization/spend_limit_retrieve_params.rbi +34 -0
- data/rbi/openai/models/admin/organization/spend_limit_update_params.rbi +141 -0
- data/rbi/openai/models/audio/transcription.rbi +19 -0
- data/rbi/openai/models/audio/transcription_create_params.rbi +31 -3
- data/rbi/openai/models/audio/transcription_language.rbi +33 -0
- data/rbi/openai/models/audio/transcription_text_done_event.rbi +19 -0
- data/rbi/openai/models/audio_model.rbi +2 -0
- data/rbi/openai/models/beta/beta_response.rbi +18 -15
- data/rbi/openai/models/beta/beta_response_error.rbi +5 -0
- data/rbi/openai/models/beta/beta_response_text_config.rbi +6 -3
- data/rbi/openai/models/beta/beta_responses_client_event.rbi +18 -15
- data/rbi/openai/models/beta/response_create_params.rbi +18 -15
- data/rbi/openai/models/beta/responses/input_token_count_params.rbi +18 -6
- data/rbi/openai/models/chat/completion_create_params.rbi +12 -15
- data/rbi/openai/models/realtime/audio_transcription.rbi +50 -9
- data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rbi +19 -0
- data/rbi/openai/models/reasoning.rbi +12 -3
- data/rbi/openai/models/responses/input_token_count_params.rbi +6 -3
- data/rbi/openai/models/responses/response.rbi +6 -12
- data/rbi/openai/models/responses/response_create_params.rbi +6 -12
- data/rbi/openai/models/responses/response_error.rbi +5 -0
- data/rbi/openai/models/responses/response_text_config.rbi +6 -3
- data/rbi/openai/models/responses/responses_client_event.rbi +6 -12
- data/rbi/openai/models/webhooks/live_call_incoming_webhook_event.rbi +222 -0
- data/rbi/openai/models/webhooks/realtime_call_incoming_webhook_event.rbi +7 -3
- data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +1 -0
- data/rbi/openai/resources/admin/organization/projects/spend_limit.rbi +78 -0
- data/rbi/openai/resources/admin/organization/projects.rbi +7 -0
- data/rbi/openai/resources/admin/organization/spend_limit.rbi +57 -0
- data/rbi/openai/resources/admin/organization.rbi +3 -0
- data/rbi/openai/resources/audio/transcriptions.rbi +20 -2
- data/rbi/openai/resources/beta/responses.rbi +4 -4
- data/rbi/openai/resources/chat/completions.rbi +8 -6
- data/rbi/openai/resources/responses.rbi +4 -4
- data/rbi/openai/resources/webhooks.rbi +1 -0
- data/sig/openai/models/admin/organization/organization_spend_limit.rbs +94 -0
- data/sig/openai/models/admin/organization/organization_spend_limit_deleted.rbs +28 -0
- data/sig/openai/models/admin/organization/projects/project_spend_limit.rbs +96 -0
- data/sig/openai/models/admin/organization/projects/project_spend_limit_deleted.rbs +30 -0
- data/sig/openai/models/admin/organization/projects/spend_limit_delete_params.rbs +29 -0
- data/sig/openai/models/admin/organization/projects/spend_limit_retrieve_params.rbs +29 -0
- data/sig/openai/models/admin/organization/projects/spend_limit_update_params.rbs +67 -0
- data/sig/openai/models/admin/organization/spend_limit_delete_params.rbs +19 -0
- data/sig/openai/models/admin/organization/spend_limit_retrieve_params.rbs +19 -0
- data/sig/openai/models/admin/organization/spend_limit_update_params.rbs +60 -0
- data/sig/openai/models/audio/transcription.rbs +9 -0
- data/sig/openai/models/audio/transcription_create_params.rbs +14 -0
- data/sig/openai/models/audio/transcription_language.rbs +15 -0
- data/sig/openai/models/audio/transcription_text_done_event.rbs +9 -0
- data/sig/openai/models/audio_model.rbs +2 -0
- data/sig/openai/models/beta/beta_response.rbs +8 -12
- data/sig/openai/models/beta/beta_response_error.rbs +2 -0
- data/sig/openai/models/beta/beta_responses_client_event.rbs +8 -12
- data/sig/openai/models/beta/response_create_params.rbs +8 -12
- data/sig/openai/models/chat/completion_create_params.rbs +8 -12
- data/sig/openai/models/realtime/audio_transcription.rbs +18 -0
- data/sig/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rbs +9 -0
- data/sig/openai/models/responses/response.rbs +8 -12
- data/sig/openai/models/responses/response_create_params.rbs +8 -12
- data/sig/openai/models/responses/response_error.rbs +2 -0
- data/sig/openai/models/responses/responses_client_event.rbs +8 -12
- data/sig/openai/models/webhooks/live_call_incoming_webhook_event.rbs +90 -0
- data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +1 -0
- data/sig/openai/resources/admin/organization/projects/spend_limit.rbs +31 -0
- data/sig/openai/resources/admin/organization/projects.rbs +2 -0
- data/sig/openai/resources/admin/organization/spend_limit.rbs +26 -0
- data/sig/openai/resources/admin/organization.rbs +2 -0
- data/sig/openai/resources/audio/transcriptions.rbs +4 -0
- data/sig/openai/resources/beta/responses.rbs +4 -4
- data/sig/openai/resources/chat/completions.rbs +4 -4
- data/sig/openai/resources/responses.rbs +4 -4
- data/sig/openai/resources/webhooks.rbs +1 -0
- metadata +44 -2
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
module Admin
|
|
6
|
+
module Organization
|
|
7
|
+
class SpendLimitUpdateParams < OpenAI::Internal::Type::BaseModel
|
|
8
|
+
extend OpenAI::Internal::Type::RequestParameters::Converter
|
|
9
|
+
include OpenAI::Internal::Type::RequestParameters
|
|
10
|
+
|
|
11
|
+
OrHash =
|
|
12
|
+
T.type_alias do
|
|
13
|
+
T.any(
|
|
14
|
+
OpenAI::Admin::Organization::SpendLimitUpdateParams,
|
|
15
|
+
OpenAI::Internal::AnyHash
|
|
16
|
+
)
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
# The currency for the threshold amount. Currently, only `USD` is supported.
|
|
20
|
+
sig do
|
|
21
|
+
returns(
|
|
22
|
+
OpenAI::Admin::Organization::SpendLimitUpdateParams::Currency::OrSymbol
|
|
23
|
+
)
|
|
24
|
+
end
|
|
25
|
+
attr_accessor :currency
|
|
26
|
+
|
|
27
|
+
# The time interval for evaluating spend against the threshold. Currently, only
|
|
28
|
+
# `month` is supported.
|
|
29
|
+
sig do
|
|
30
|
+
returns(
|
|
31
|
+
OpenAI::Admin::Organization::SpendLimitUpdateParams::Interval::OrSymbol
|
|
32
|
+
)
|
|
33
|
+
end
|
|
34
|
+
attr_accessor :interval
|
|
35
|
+
|
|
36
|
+
# The hard spend limit amount, in cents.
|
|
37
|
+
sig { returns(Integer) }
|
|
38
|
+
attr_accessor :threshold_amount
|
|
39
|
+
|
|
40
|
+
sig do
|
|
41
|
+
params(
|
|
42
|
+
currency:
|
|
43
|
+
OpenAI::Admin::Organization::SpendLimitUpdateParams::Currency::OrSymbol,
|
|
44
|
+
interval:
|
|
45
|
+
OpenAI::Admin::Organization::SpendLimitUpdateParams::Interval::OrSymbol,
|
|
46
|
+
threshold_amount: Integer,
|
|
47
|
+
request_options: OpenAI::RequestOptions::OrHash
|
|
48
|
+
).returns(T.attached_class)
|
|
49
|
+
end
|
|
50
|
+
def self.new(
|
|
51
|
+
# The currency for the threshold amount. Currently, only `USD` is supported.
|
|
52
|
+
currency:,
|
|
53
|
+
# The time interval for evaluating spend against the threshold. Currently, only
|
|
54
|
+
# `month` is supported.
|
|
55
|
+
interval:,
|
|
56
|
+
# The hard spend limit amount, in cents.
|
|
57
|
+
threshold_amount:,
|
|
58
|
+
request_options: {}
|
|
59
|
+
)
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
sig do
|
|
63
|
+
override.returns(
|
|
64
|
+
{
|
|
65
|
+
currency:
|
|
66
|
+
OpenAI::Admin::Organization::SpendLimitUpdateParams::Currency::OrSymbol,
|
|
67
|
+
interval:
|
|
68
|
+
OpenAI::Admin::Organization::SpendLimitUpdateParams::Interval::OrSymbol,
|
|
69
|
+
threshold_amount: Integer,
|
|
70
|
+
request_options: OpenAI::RequestOptions
|
|
71
|
+
}
|
|
72
|
+
)
|
|
73
|
+
end
|
|
74
|
+
def to_hash
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
# The currency for the threshold amount. Currently, only `USD` is supported.
|
|
78
|
+
module Currency
|
|
79
|
+
extend OpenAI::Internal::Type::Enum
|
|
80
|
+
|
|
81
|
+
TaggedSymbol =
|
|
82
|
+
T.type_alias do
|
|
83
|
+
T.all(
|
|
84
|
+
Symbol,
|
|
85
|
+
OpenAI::Admin::Organization::SpendLimitUpdateParams::Currency
|
|
86
|
+
)
|
|
87
|
+
end
|
|
88
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
89
|
+
|
|
90
|
+
USD =
|
|
91
|
+
T.let(
|
|
92
|
+
:USD,
|
|
93
|
+
OpenAI::Admin::Organization::SpendLimitUpdateParams::Currency::TaggedSymbol
|
|
94
|
+
)
|
|
95
|
+
|
|
96
|
+
sig do
|
|
97
|
+
override.returns(
|
|
98
|
+
T::Array[
|
|
99
|
+
OpenAI::Admin::Organization::SpendLimitUpdateParams::Currency::TaggedSymbol
|
|
100
|
+
]
|
|
101
|
+
)
|
|
102
|
+
end
|
|
103
|
+
def self.values
|
|
104
|
+
end
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
# The time interval for evaluating spend against the threshold. Currently, only
|
|
108
|
+
# `month` is supported.
|
|
109
|
+
module Interval
|
|
110
|
+
extend OpenAI::Internal::Type::Enum
|
|
111
|
+
|
|
112
|
+
TaggedSymbol =
|
|
113
|
+
T.type_alias do
|
|
114
|
+
T.all(
|
|
115
|
+
Symbol,
|
|
116
|
+
OpenAI::Admin::Organization::SpendLimitUpdateParams::Interval
|
|
117
|
+
)
|
|
118
|
+
end
|
|
119
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
120
|
+
|
|
121
|
+
MONTH =
|
|
122
|
+
T.let(
|
|
123
|
+
:month,
|
|
124
|
+
OpenAI::Admin::Organization::SpendLimitUpdateParams::Interval::TaggedSymbol
|
|
125
|
+
)
|
|
126
|
+
|
|
127
|
+
sig do
|
|
128
|
+
override.returns(
|
|
129
|
+
T::Array[
|
|
130
|
+
OpenAI::Admin::Organization::SpendLimitUpdateParams::Interval::TaggedSymbol
|
|
131
|
+
]
|
|
132
|
+
)
|
|
133
|
+
end
|
|
134
|
+
def self.values
|
|
135
|
+
end
|
|
136
|
+
end
|
|
137
|
+
end
|
|
138
|
+
end
|
|
139
|
+
end
|
|
140
|
+
end
|
|
141
|
+
end
|
|
@@ -13,6 +13,20 @@ module OpenAI
|
|
|
13
13
|
sig { returns(String) }
|
|
14
14
|
attr_accessor :text
|
|
15
15
|
|
|
16
|
+
# The languages detected in the audio. Returned by `gpt-transcribe`. An empty
|
|
17
|
+
# array indicates that no language could be reliably detected.
|
|
18
|
+
sig do
|
|
19
|
+
returns(T.nilable(T::Array[OpenAI::Audio::TranscriptionLanguage]))
|
|
20
|
+
end
|
|
21
|
+
attr_reader :languages
|
|
22
|
+
|
|
23
|
+
sig do
|
|
24
|
+
params(
|
|
25
|
+
languages: T::Array[OpenAI::Audio::TranscriptionLanguage::OrHash]
|
|
26
|
+
).void
|
|
27
|
+
end
|
|
28
|
+
attr_writer :languages
|
|
29
|
+
|
|
16
30
|
# The log probabilities of the tokens in the transcription. Only returned with the
|
|
17
31
|
# models `gpt-4o-transcribe` and `gpt-4o-mini-transcribe` if `logprobs` is added
|
|
18
32
|
# to the `include` array.
|
|
@@ -50,6 +64,7 @@ module OpenAI
|
|
|
50
64
|
sig do
|
|
51
65
|
params(
|
|
52
66
|
text: String,
|
|
67
|
+
languages: T::Array[OpenAI::Audio::TranscriptionLanguage::OrHash],
|
|
53
68
|
logprobs: T::Array[OpenAI::Audio::Transcription::Logprob::OrHash],
|
|
54
69
|
usage:
|
|
55
70
|
T.any(
|
|
@@ -61,6 +76,9 @@ module OpenAI
|
|
|
61
76
|
def self.new(
|
|
62
77
|
# The transcribed text.
|
|
63
78
|
text:,
|
|
79
|
+
# The languages detected in the audio. Returned by `gpt-transcribe`. An empty
|
|
80
|
+
# array indicates that no language could be reliably detected.
|
|
81
|
+
languages: nil,
|
|
64
82
|
# The log probabilities of the tokens in the transcription. Only returned with the
|
|
65
83
|
# models `gpt-4o-transcribe` and `gpt-4o-mini-transcribe` if `logprobs` is added
|
|
66
84
|
# to the `include` array.
|
|
@@ -74,6 +92,7 @@ module OpenAI
|
|
|
74
92
|
override.returns(
|
|
75
93
|
{
|
|
76
94
|
text: String,
|
|
95
|
+
languages: T::Array[OpenAI::Audio::TranscriptionLanguage],
|
|
77
96
|
logprobs: T::Array[OpenAI::Audio::Transcription::Logprob],
|
|
78
97
|
usage: OpenAI::Audio::Transcription::Usage::Variants
|
|
79
98
|
}
|
|
@@ -20,7 +20,7 @@ module OpenAI
|
|
|
20
20
|
sig { returns(OpenAI::Internal::FileInput) }
|
|
21
21
|
attr_accessor :file
|
|
22
22
|
|
|
23
|
-
# ID of the model to use. The options are `gpt-4o-transcribe`,
|
|
23
|
+
# ID of the model to use. The options are `gpt-transcribe`, `gpt-4o-transcribe`,
|
|
24
24
|
# `gpt-4o-mini-transcribe`, `gpt-4o-mini-transcribe-2025-12-15`, `whisper-1`
|
|
25
25
|
# (which is powered by our open source Whisper V2 model), and
|
|
26
26
|
# `gpt-4o-transcribe-diarize`.
|
|
@@ -65,6 +65,14 @@ module OpenAI
|
|
|
65
65
|
end
|
|
66
66
|
attr_writer :include
|
|
67
67
|
|
|
68
|
+
# Words or phrases to guide transcription of the input audio. Supported by
|
|
69
|
+
# `gpt-transcribe`.
|
|
70
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
71
|
+
attr_reader :keywords
|
|
72
|
+
|
|
73
|
+
sig { params(keywords: T::Array[String]).void }
|
|
74
|
+
attr_writer :keywords
|
|
75
|
+
|
|
68
76
|
# Optional list of speaker names that correspond to the audio samples provided in
|
|
69
77
|
# `known_speaker_references[]`. Each entry should be a short identifier (for
|
|
70
78
|
# example `customer` or `agent`). Up to 4 speakers are supported.
|
|
@@ -94,6 +102,15 @@ module OpenAI
|
|
|
94
102
|
sig { params(language: String).void }
|
|
95
103
|
attr_writer :language
|
|
96
104
|
|
|
105
|
+
# Possible languages of the input audio, in
|
|
106
|
+
# [ISO-639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format.
|
|
107
|
+
# Supported by `gpt-transcribe`.
|
|
108
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
109
|
+
attr_reader :languages
|
|
110
|
+
|
|
111
|
+
sig { params(languages: T::Array[String]).void }
|
|
112
|
+
attr_writer :languages
|
|
113
|
+
|
|
97
114
|
# An optional text to guide the model's style or continue a previous audio
|
|
98
115
|
# segment. The
|
|
99
116
|
# [prompt](https://platform.openai.com/docs/guides/speech-to-text#prompting)
|
|
@@ -168,9 +185,11 @@ module OpenAI
|
|
|
168
185
|
)
|
|
169
186
|
),
|
|
170
187
|
include: T::Array[OpenAI::Audio::TranscriptionInclude::OrSymbol],
|
|
188
|
+
keywords: T::Array[String],
|
|
171
189
|
known_speaker_names: T::Array[String],
|
|
172
190
|
known_speaker_references: T::Array[String],
|
|
173
191
|
language: String,
|
|
192
|
+
languages: T::Array[String],
|
|
174
193
|
prompt: String,
|
|
175
194
|
response_format: OpenAI::AudioResponseFormat::OrSymbol,
|
|
176
195
|
temperature: Float,
|
|
@@ -185,7 +204,7 @@ module OpenAI
|
|
|
185
204
|
# The audio file object (not file name) to transcribe, in one of these formats:
|
|
186
205
|
# flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, or webm.
|
|
187
206
|
file:,
|
|
188
|
-
# ID of the model to use. The options are `gpt-4o-transcribe`,
|
|
207
|
+
# ID of the model to use. The options are `gpt-transcribe`, `gpt-4o-transcribe`,
|
|
189
208
|
# `gpt-4o-mini-transcribe`, `gpt-4o-mini-transcribe-2025-12-15`, `whisper-1`
|
|
190
209
|
# (which is powered by our open source Whisper V2 model), and
|
|
191
210
|
# `gpt-4o-transcribe-diarize`.
|
|
@@ -204,6 +223,9 @@ module OpenAI
|
|
|
204
223
|
# `gpt-4o-mini-transcribe`, and `gpt-4o-mini-transcribe-2025-12-15`. This field is
|
|
205
224
|
# not supported when using `gpt-4o-transcribe-diarize`.
|
|
206
225
|
include: nil,
|
|
226
|
+
# Words or phrases to guide transcription of the input audio. Supported by
|
|
227
|
+
# `gpt-transcribe`.
|
|
228
|
+
keywords: nil,
|
|
207
229
|
# Optional list of speaker names that correspond to the audio samples provided in
|
|
208
230
|
# `known_speaker_references[]`. Each entry should be a short identifier (for
|
|
209
231
|
# example `customer` or `agent`). Up to 4 speakers are supported.
|
|
@@ -218,6 +240,10 @@ module OpenAI
|
|
|
218
240
|
# [ISO-639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) (e.g. `en`)
|
|
219
241
|
# format will improve accuracy and latency.
|
|
220
242
|
language: nil,
|
|
243
|
+
# Possible languages of the input audio, in
|
|
244
|
+
# [ISO-639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format.
|
|
245
|
+
# Supported by `gpt-transcribe`.
|
|
246
|
+
languages: nil,
|
|
221
247
|
# An optional text to guide the model's style or continue a previous audio
|
|
222
248
|
# segment. The
|
|
223
249
|
# [prompt](https://platform.openai.com/docs/guides/speech-to-text#prompting)
|
|
@@ -260,9 +286,11 @@ module OpenAI
|
|
|
260
286
|
)
|
|
261
287
|
),
|
|
262
288
|
include: T::Array[OpenAI::Audio::TranscriptionInclude::OrSymbol],
|
|
289
|
+
keywords: T::Array[String],
|
|
263
290
|
known_speaker_names: T::Array[String],
|
|
264
291
|
known_speaker_references: T::Array[String],
|
|
265
292
|
language: String,
|
|
293
|
+
languages: T::Array[String],
|
|
266
294
|
prompt: String,
|
|
267
295
|
response_format: OpenAI::AudioResponseFormat::OrSymbol,
|
|
268
296
|
temperature: Float,
|
|
@@ -277,7 +305,7 @@ module OpenAI
|
|
|
277
305
|
def to_hash
|
|
278
306
|
end
|
|
279
307
|
|
|
280
|
-
# ID of the model to use. The options are `gpt-4o-transcribe`,
|
|
308
|
+
# ID of the model to use. The options are `gpt-transcribe`, `gpt-4o-transcribe`,
|
|
281
309
|
# `gpt-4o-mini-transcribe`, `gpt-4o-mini-transcribe-2025-12-15`, `whisper-1`
|
|
282
310
|
# (which is powered by our open source Whisper V2 model), and
|
|
283
311
|
# `gpt-4o-transcribe-diarize`.
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
module Audio
|
|
6
|
+
class TranscriptionLanguage < OpenAI::Internal::Type::BaseModel
|
|
7
|
+
OrHash =
|
|
8
|
+
T.type_alias do
|
|
9
|
+
T.any(
|
|
10
|
+
OpenAI::Audio::TranscriptionLanguage,
|
|
11
|
+
OpenAI::Internal::AnyHash
|
|
12
|
+
)
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
# The code of a language detected in the audio.
|
|
16
|
+
sig { returns(String) }
|
|
17
|
+
attr_accessor :code
|
|
18
|
+
|
|
19
|
+
# A language detected in transcribed audio.
|
|
20
|
+
sig { params(code: String).returns(T.attached_class) }
|
|
21
|
+
def self.new(
|
|
22
|
+
# The code of a language detected in the audio.
|
|
23
|
+
code:
|
|
24
|
+
)
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
sig { override.returns({ code: String }) }
|
|
28
|
+
def to_hash
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
@@ -20,6 +20,20 @@ module OpenAI
|
|
|
20
20
|
sig { returns(Symbol) }
|
|
21
21
|
attr_accessor :type
|
|
22
22
|
|
|
23
|
+
# The languages detected in the audio. Returned by `gpt-transcribe`. An empty
|
|
24
|
+
# array indicates that no language could be reliably detected.
|
|
25
|
+
sig do
|
|
26
|
+
returns(T.nilable(T::Array[OpenAI::Audio::TranscriptionLanguage]))
|
|
27
|
+
end
|
|
28
|
+
attr_reader :languages
|
|
29
|
+
|
|
30
|
+
sig do
|
|
31
|
+
params(
|
|
32
|
+
languages: T::Array[OpenAI::Audio::TranscriptionLanguage::OrHash]
|
|
33
|
+
).void
|
|
34
|
+
end
|
|
35
|
+
attr_writer :languages
|
|
36
|
+
|
|
23
37
|
# The log probabilities of the individual tokens in the transcription. Only
|
|
24
38
|
# included if you
|
|
25
39
|
# [create a transcription](https://platform.openai.com/docs/api-reference/audio/create-transcription)
|
|
@@ -63,6 +77,7 @@ module OpenAI
|
|
|
63
77
|
sig do
|
|
64
78
|
params(
|
|
65
79
|
text: String,
|
|
80
|
+
languages: T::Array[OpenAI::Audio::TranscriptionLanguage::OrHash],
|
|
66
81
|
logprobs:
|
|
67
82
|
T::Array[
|
|
68
83
|
OpenAI::Audio::TranscriptionTextDoneEvent::Logprob::OrHash
|
|
@@ -74,6 +89,9 @@ module OpenAI
|
|
|
74
89
|
def self.new(
|
|
75
90
|
# The text that was transcribed.
|
|
76
91
|
text:,
|
|
92
|
+
# The languages detected in the audio. Returned by `gpt-transcribe`. An empty
|
|
93
|
+
# array indicates that no language could be reliably detected.
|
|
94
|
+
languages: nil,
|
|
77
95
|
# The log probabilities of the individual tokens in the transcription. Only
|
|
78
96
|
# included if you
|
|
79
97
|
# [create a transcription](https://platform.openai.com/docs/api-reference/audio/create-transcription)
|
|
@@ -91,6 +109,7 @@ module OpenAI
|
|
|
91
109
|
{
|
|
92
110
|
text: String,
|
|
93
111
|
type: Symbol,
|
|
112
|
+
languages: T::Array[OpenAI::Audio::TranscriptionLanguage],
|
|
94
113
|
logprobs:
|
|
95
114
|
T::Array[OpenAI::Audio::TranscriptionTextDoneEvent::Logprob],
|
|
96
115
|
usage: OpenAI::Audio::TranscriptionTextDoneEvent::Usage
|
|
@@ -9,6 +9,8 @@ module OpenAI
|
|
|
9
9
|
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
10
10
|
|
|
11
11
|
WHISPER_1 = T.let(:"whisper-1", OpenAI::AudioModel::TaggedSymbol)
|
|
12
|
+
GPT_TRANSCRIBE =
|
|
13
|
+
T.let(:"gpt-transcribe", OpenAI::AudioModel::TaggedSymbol)
|
|
12
14
|
GPT_4O_TRANSCRIBE =
|
|
13
15
|
T.let(:"gpt-4o-transcribe", OpenAI::AudioModel::TaggedSymbol)
|
|
14
16
|
GPT_4O_MINI_TRANSCRIBE =
|
|
@@ -204,10 +204,7 @@ module OpenAI
|
|
|
204
204
|
# hit rates. Replaces the `user` field.
|
|
205
205
|
# [Learn more](https://platform.openai.com/docs/guides/prompt-caching).
|
|
206
206
|
sig { returns(T.nilable(String)) }
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
sig { params(prompt_cache_key: String).void }
|
|
210
|
-
attr_writer :prompt_cache_key
|
|
207
|
+
attr_accessor :prompt_cache_key
|
|
211
208
|
|
|
212
209
|
# The prompt-caching options that were applied to the response. Supported for
|
|
213
210
|
# `gpt-5.6` and later models.
|
|
@@ -271,10 +268,7 @@ module OpenAI
|
|
|
271
268
|
# identifying information.
|
|
272
269
|
# [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#safety-identifiers).
|
|
273
270
|
sig { returns(T.nilable(String)) }
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
sig { params(safety_identifier: String).void }
|
|
277
|
-
attr_writer :safety_identifier
|
|
271
|
+
attr_accessor :safety_identifier
|
|
278
272
|
|
|
279
273
|
# Specifies the processing type used for serving the request.
|
|
280
274
|
#
|
|
@@ -452,7 +446,7 @@ module OpenAI
|
|
|
452
446
|
T.nilable(OpenAI::Beta::BetaResponse::Moderation::OrHash),
|
|
453
447
|
previous_response_id: T.nilable(String),
|
|
454
448
|
prompt: T.nilable(OpenAI::Beta::BetaResponsePrompt::OrHash),
|
|
455
|
-
prompt_cache_key: String,
|
|
449
|
+
prompt_cache_key: T.nilable(String),
|
|
456
450
|
prompt_cache_options:
|
|
457
451
|
OpenAI::Beta::BetaResponse::PromptCacheOptions::OrHash,
|
|
458
452
|
prompt_cache_retention:
|
|
@@ -460,7 +454,7 @@ module OpenAI
|
|
|
460
454
|
OpenAI::Beta::BetaResponse::PromptCacheRetention::OrSymbol
|
|
461
455
|
),
|
|
462
456
|
reasoning: T.nilable(OpenAI::Beta::BetaResponse::Reasoning::OrHash),
|
|
463
|
-
safety_identifier: String,
|
|
457
|
+
safety_identifier: T.nilable(String),
|
|
464
458
|
service_tier:
|
|
465
459
|
T.nilable(OpenAI::Beta::BetaResponse::ServiceTier::OrSymbol),
|
|
466
460
|
status: OpenAI::Beta::BetaResponseStatus::OrSymbol,
|
|
@@ -691,7 +685,7 @@ module OpenAI
|
|
|
691
685
|
moderation: T.nilable(OpenAI::Beta::BetaResponse::Moderation),
|
|
692
686
|
previous_response_id: T.nilable(String),
|
|
693
687
|
prompt: T.nilable(OpenAI::Beta::BetaResponsePrompt),
|
|
694
|
-
prompt_cache_key: String,
|
|
688
|
+
prompt_cache_key: T.nilable(String),
|
|
695
689
|
prompt_cache_options:
|
|
696
690
|
OpenAI::Beta::BetaResponse::PromptCacheOptions,
|
|
697
691
|
prompt_cache_retention:
|
|
@@ -699,7 +693,7 @@ module OpenAI
|
|
|
699
693
|
OpenAI::Beta::BetaResponse::PromptCacheRetention::TaggedSymbol
|
|
700
694
|
),
|
|
701
695
|
reasoning: T.nilable(OpenAI::Beta::BetaResponse::Reasoning),
|
|
702
|
-
safety_identifier: String,
|
|
696
|
+
safety_identifier: T.nilable(String),
|
|
703
697
|
service_tier:
|
|
704
698
|
T.nilable(
|
|
705
699
|
OpenAI::Beta::BetaResponse::ServiceTier::TaggedSymbol
|
|
@@ -2014,7 +2008,10 @@ module OpenAI
|
|
|
2014
2008
|
)
|
|
2015
2009
|
end
|
|
2016
2010
|
|
|
2017
|
-
# Controls which reasoning items are rendered back to the model on later turns.
|
|
2011
|
+
# Controls which reasoning items are rendered back to the model on later turns. If
|
|
2012
|
+
# omitted or set to `auto`, the model determines the context mode. The `gpt-5.6`
|
|
2013
|
+
# model family defaults to `all_turns`; earlier models default to `current_turn`.
|
|
2014
|
+
#
|
|
2018
2015
|
# When returned on a response, this is the effective reasoning context mode used
|
|
2019
2016
|
# for the response.
|
|
2020
2017
|
sig do
|
|
@@ -2121,7 +2118,10 @@ module OpenAI
|
|
|
2121
2118
|
).returns(T.attached_class)
|
|
2122
2119
|
end
|
|
2123
2120
|
def self.new(
|
|
2124
|
-
# Controls which reasoning items are rendered back to the model on later turns.
|
|
2121
|
+
# Controls which reasoning items are rendered back to the model on later turns. If
|
|
2122
|
+
# omitted or set to `auto`, the model determines the context mode. The `gpt-5.6`
|
|
2123
|
+
# model family defaults to `all_turns`; earlier models default to `current_turn`.
|
|
2124
|
+
#
|
|
2125
2125
|
# When returned on a response, this is the effective reasoning context mode used
|
|
2126
2126
|
# for the response.
|
|
2127
2127
|
context: nil,
|
|
@@ -2178,7 +2178,10 @@ module OpenAI
|
|
|
2178
2178
|
def to_hash
|
|
2179
2179
|
end
|
|
2180
2180
|
|
|
2181
|
-
# Controls which reasoning items are rendered back to the model on later turns.
|
|
2181
|
+
# Controls which reasoning items are rendered back to the model on later turns. If
|
|
2182
|
+
# omitted or set to `auto`, the model determines the context mode. The `gpt-5.6`
|
|
2183
|
+
# model family defaults to `all_turns`; earlier models default to `current_turn`.
|
|
2184
|
+
#
|
|
2182
2185
|
# When returned on a response, this is the effective reasoning context mode used
|
|
2183
2186
|
# for the response.
|
|
2184
2187
|
module Context
|
|
@@ -70,6 +70,11 @@ module OpenAI
|
|
|
70
70
|
:invalid_prompt,
|
|
71
71
|
OpenAI::Beta::BetaResponseError::Code::TaggedSymbol
|
|
72
72
|
)
|
|
73
|
+
DATA_RESIDENCY_MISMATCH =
|
|
74
|
+
T.let(
|
|
75
|
+
:data_residency_mismatch,
|
|
76
|
+
OpenAI::Beta::BetaResponseError::Code::TaggedSymbol
|
|
77
|
+
)
|
|
73
78
|
BIO_POLICY =
|
|
74
79
|
T.let(
|
|
75
80
|
:bio_policy,
|
|
@@ -54,7 +54,8 @@ module OpenAI
|
|
|
54
54
|
|
|
55
55
|
# Constrains the verbosity of the model's response. Lower values will result in
|
|
56
56
|
# more concise responses, while higher values will result in more verbose
|
|
57
|
-
# responses. Currently supported values are `low`, `medium`, and `high`.
|
|
57
|
+
# responses. Currently supported values are `low`, `medium`, and `high`. The
|
|
58
|
+
# default is `medium`.
|
|
58
59
|
sig do
|
|
59
60
|
returns(
|
|
60
61
|
T.nilable(OpenAI::Beta::BetaResponseTextConfig::Verbosity::OrSymbol)
|
|
@@ -98,7 +99,8 @@ module OpenAI
|
|
|
98
99
|
format_: nil,
|
|
99
100
|
# Constrains the verbosity of the model's response. Lower values will result in
|
|
100
101
|
# more concise responses, while higher values will result in more verbose
|
|
101
|
-
# responses. Currently supported values are `low`, `medium`, and `high`.
|
|
102
|
+
# responses. Currently supported values are `low`, `medium`, and `high`. The
|
|
103
|
+
# default is `medium`.
|
|
102
104
|
verbosity: nil
|
|
103
105
|
)
|
|
104
106
|
end
|
|
@@ -124,7 +126,8 @@ module OpenAI
|
|
|
124
126
|
|
|
125
127
|
# Constrains the verbosity of the model's response. Lower values will result in
|
|
126
128
|
# more concise responses, while higher values will result in more verbose
|
|
127
|
-
# responses. Currently supported values are `low`, `medium`, and `high`.
|
|
129
|
+
# responses. Currently supported values are `low`, `medium`, and `high`. The
|
|
130
|
+
# default is `medium`.
|
|
128
131
|
module Verbosity
|
|
129
132
|
extend OpenAI::Internal::Type::Enum
|
|
130
133
|
|
|
@@ -238,10 +238,7 @@ module OpenAI
|
|
|
238
238
|
# hit rates. Replaces the `user` field.
|
|
239
239
|
# [Learn more](https://platform.openai.com/docs/guides/prompt-caching).
|
|
240
240
|
sig { returns(T.nilable(String)) }
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
sig { params(prompt_cache_key: String).void }
|
|
244
|
-
attr_writer :prompt_cache_key
|
|
241
|
+
attr_accessor :prompt_cache_key
|
|
245
242
|
|
|
246
243
|
# Options for prompt caching. Supported for `gpt-5.6` and later models. By
|
|
247
244
|
# default, OpenAI automatically chooses one implicit cache breakpoint. You can add
|
|
@@ -325,10 +322,7 @@ module OpenAI
|
|
|
325
322
|
# identifying information.
|
|
326
323
|
# [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#safety-identifiers).
|
|
327
324
|
sig { returns(T.nilable(String)) }
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
sig { params(safety_identifier: String).void }
|
|
331
|
-
attr_writer :safety_identifier
|
|
325
|
+
attr_accessor :safety_identifier
|
|
332
326
|
|
|
333
327
|
# Specifies the processing type used for serving the request.
|
|
334
328
|
#
|
|
@@ -612,7 +606,7 @@ module OpenAI
|
|
|
612
606
|
parallel_tool_calls: T.nilable(T::Boolean),
|
|
613
607
|
previous_response_id: T.nilable(String),
|
|
614
608
|
prompt: T.nilable(OpenAI::Beta::BetaResponsePrompt::OrHash),
|
|
615
|
-
prompt_cache_key: String,
|
|
609
|
+
prompt_cache_key: T.nilable(String),
|
|
616
610
|
prompt_cache_options:
|
|
617
611
|
OpenAI::Beta::BetaResponsesClientEvent::ResponseCreate::PromptCacheOptions::OrHash,
|
|
618
612
|
prompt_cache_retention:
|
|
@@ -623,7 +617,7 @@ module OpenAI
|
|
|
623
617
|
T.nilable(
|
|
624
618
|
OpenAI::Beta::BetaResponsesClientEvent::ResponseCreate::Reasoning::OrHash
|
|
625
619
|
),
|
|
626
|
-
safety_identifier: String,
|
|
620
|
+
safety_identifier: T.nilable(String),
|
|
627
621
|
service_tier:
|
|
628
622
|
T.nilable(
|
|
629
623
|
OpenAI::Beta::BetaResponsesClientEvent::ResponseCreate::ServiceTier::OrSymbol
|
|
@@ -938,7 +932,7 @@ module OpenAI
|
|
|
938
932
|
parallel_tool_calls: T.nilable(T::Boolean),
|
|
939
933
|
previous_response_id: T.nilable(String),
|
|
940
934
|
prompt: T.nilable(OpenAI::Beta::BetaResponsePrompt),
|
|
941
|
-
prompt_cache_key: String,
|
|
935
|
+
prompt_cache_key: T.nilable(String),
|
|
942
936
|
prompt_cache_options:
|
|
943
937
|
OpenAI::Beta::BetaResponsesClientEvent::ResponseCreate::PromptCacheOptions,
|
|
944
938
|
prompt_cache_retention:
|
|
@@ -949,7 +943,7 @@ module OpenAI
|
|
|
949
943
|
T.nilable(
|
|
950
944
|
OpenAI::Beta::BetaResponsesClientEvent::ResponseCreate::Reasoning
|
|
951
945
|
),
|
|
952
|
-
safety_identifier: String,
|
|
946
|
+
safety_identifier: T.nilable(String),
|
|
953
947
|
service_tier:
|
|
954
948
|
T.nilable(
|
|
955
949
|
OpenAI::Beta::BetaResponsesClientEvent::ResponseCreate::ServiceTier::OrSymbol
|
|
@@ -2198,7 +2192,10 @@ module OpenAI
|
|
|
2198
2192
|
)
|
|
2199
2193
|
end
|
|
2200
2194
|
|
|
2201
|
-
# Controls which reasoning items are rendered back to the model on later turns.
|
|
2195
|
+
# Controls which reasoning items are rendered back to the model on later turns. If
|
|
2196
|
+
# omitted or set to `auto`, the model determines the context mode. The `gpt-5.6`
|
|
2197
|
+
# model family defaults to `all_turns`; earlier models default to `current_turn`.
|
|
2198
|
+
#
|
|
2202
2199
|
# When returned on a response, this is the effective reasoning context mode used
|
|
2203
2200
|
# for the response.
|
|
2204
2201
|
sig do
|
|
@@ -2310,7 +2307,10 @@ module OpenAI
|
|
|
2310
2307
|
).returns(T.attached_class)
|
|
2311
2308
|
end
|
|
2312
2309
|
def self.new(
|
|
2313
|
-
# Controls which reasoning items are rendered back to the model on later turns.
|
|
2310
|
+
# Controls which reasoning items are rendered back to the model on later turns. If
|
|
2311
|
+
# omitted or set to `auto`, the model determines the context mode. The `gpt-5.6`
|
|
2312
|
+
# model family defaults to `all_turns`; earlier models default to `current_turn`.
|
|
2313
|
+
#
|
|
2314
2314
|
# When returned on a response, this is the effective reasoning context mode used
|
|
2315
2315
|
# for the response.
|
|
2316
2316
|
context: nil,
|
|
@@ -2371,7 +2371,10 @@ module OpenAI
|
|
|
2371
2371
|
def to_hash
|
|
2372
2372
|
end
|
|
2373
2373
|
|
|
2374
|
-
# Controls which reasoning items are rendered back to the model on later turns.
|
|
2374
|
+
# Controls which reasoning items are rendered back to the model on later turns. If
|
|
2375
|
+
# omitted or set to `auto`, the model determines the context mode. The `gpt-5.6`
|
|
2376
|
+
# model family defaults to `all_turns`; earlier models default to `current_turn`.
|
|
2377
|
+
#
|
|
2375
2378
|
# When returned on a response, this is the effective reasoning context mode used
|
|
2376
2379
|
# for the response.
|
|
2377
2380
|
module Context
|