openai 0.22.1 → 0.23.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.
Files changed (158) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/README.md +1 -1
  4. data/lib/openai/models/realtime/audio_transcription.rb +60 -0
  5. data/lib/openai/models/realtime/client_secret_create_params.rb +18 -9
  6. data/lib/openai/models/realtime/client_secret_create_response.rb +11 -250
  7. data/lib/openai/models/realtime/conversation_item.rb +1 -1
  8. data/lib/openai/models/realtime/conversation_item_added.rb +14 -1
  9. data/lib/openai/models/realtime/conversation_item_done.rb +3 -0
  10. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rb +10 -8
  11. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rb +14 -5
  12. data/lib/openai/models/realtime/conversation_item_truncate_event.rb +2 -2
  13. data/lib/openai/models/realtime/input_audio_buffer_append_event.rb +10 -5
  14. data/lib/openai/models/realtime/models.rb +58 -0
  15. data/lib/openai/models/realtime/noise_reduction_type.rb +20 -0
  16. data/lib/openai/models/realtime/realtime_audio_config.rb +6 -427
  17. data/lib/openai/models/realtime/realtime_audio_config_input.rb +89 -0
  18. data/lib/openai/models/realtime/realtime_audio_config_output.rb +100 -0
  19. data/lib/openai/models/realtime/realtime_audio_formats.rb +121 -0
  20. data/lib/openai/models/realtime/realtime_audio_input_turn_detection.rb +131 -0
  21. data/lib/openai/models/realtime/realtime_client_event.rb +31 -23
  22. data/lib/openai/models/realtime/realtime_conversation_item_assistant_message.rb +43 -10
  23. data/lib/openai/models/realtime/realtime_conversation_item_function_call.rb +16 -7
  24. data/lib/openai/models/realtime/realtime_conversation_item_function_call_output.rb +15 -7
  25. data/lib/openai/models/realtime/realtime_conversation_item_system_message.rb +18 -6
  26. data/lib/openai/models/realtime/realtime_conversation_item_user_message.rb +62 -13
  27. data/lib/openai/models/realtime/realtime_response.rb +117 -107
  28. data/lib/openai/models/realtime/realtime_response_create_audio_output.rb +100 -0
  29. data/lib/openai/models/realtime/realtime_response_create_mcp_tool.rb +310 -0
  30. data/lib/openai/models/realtime/realtime_response_create_params.rb +225 -0
  31. data/lib/openai/models/realtime/realtime_response_status.rb +1 -1
  32. data/lib/openai/models/realtime/realtime_response_usage.rb +5 -2
  33. data/lib/openai/models/realtime/realtime_response_usage_input_token_details.rb +58 -8
  34. data/lib/openai/models/realtime/realtime_server_event.rb +21 -5
  35. data/lib/openai/models/realtime/realtime_session.rb +9 -125
  36. data/lib/openai/models/realtime/realtime_session_client_secret.rb +36 -0
  37. data/lib/openai/models/realtime/realtime_session_create_request.rb +50 -71
  38. data/lib/openai/models/realtime/realtime_session_create_response.rb +621 -219
  39. data/lib/openai/models/realtime/realtime_tools_config_union.rb +2 -53
  40. data/lib/openai/models/realtime/realtime_tracing_config.rb +7 -6
  41. data/lib/openai/models/realtime/realtime_transcription_session_audio.rb +19 -0
  42. data/lib/openai/models/realtime/realtime_transcription_session_audio_input.rb +90 -0
  43. data/lib/openai/models/realtime/realtime_transcription_session_audio_input_turn_detection.rb +131 -0
  44. data/lib/openai/models/realtime/realtime_transcription_session_client_secret.rb +38 -0
  45. data/lib/openai/models/realtime/realtime_transcription_session_create_request.rb +12 -270
  46. data/lib/openai/models/realtime/realtime_transcription_session_create_response.rb +78 -0
  47. data/lib/openai/models/realtime/realtime_transcription_session_input_audio_transcription.rb +66 -0
  48. data/lib/openai/models/realtime/realtime_transcription_session_turn_detection.rb +57 -0
  49. data/lib/openai/models/realtime/realtime_truncation.rb +8 -40
  50. data/lib/openai/models/realtime/realtime_truncation_retention_ratio.rb +34 -0
  51. data/lib/openai/models/realtime/response_cancel_event.rb +3 -1
  52. data/lib/openai/models/realtime/response_create_event.rb +18 -348
  53. data/lib/openai/models/realtime/response_done_event.rb +7 -0
  54. data/lib/openai/models/realtime/session_created_event.rb +20 -4
  55. data/lib/openai/models/realtime/session_update_event.rb +36 -12
  56. data/lib/openai/models/realtime/session_updated_event.rb +20 -4
  57. data/lib/openai/models/realtime/transcription_session_created.rb +8 -243
  58. data/lib/openai/models/realtime/transcription_session_update.rb +179 -3
  59. data/lib/openai/models/realtime/transcription_session_updated_event.rb +8 -243
  60. data/lib/openai/resources/realtime/client_secrets.rb +2 -3
  61. data/lib/openai/version.rb +1 -1
  62. data/lib/openai.rb +19 -1
  63. data/rbi/openai/models/realtime/audio_transcription.rbi +132 -0
  64. data/rbi/openai/models/realtime/client_secret_create_params.rbi +25 -11
  65. data/rbi/openai/models/realtime/client_secret_create_response.rbi +2 -587
  66. data/rbi/openai/models/realtime/conversation_item_added.rbi +14 -1
  67. data/rbi/openai/models/realtime/conversation_item_done.rbi +3 -0
  68. data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rbi +11 -8
  69. data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rbi +15 -5
  70. data/rbi/openai/models/realtime/conversation_item_truncate_event.rbi +2 -2
  71. data/rbi/openai/models/realtime/input_audio_buffer_append_event.rbi +10 -5
  72. data/rbi/openai/models/realtime/models.rbi +97 -0
  73. data/rbi/openai/models/realtime/noise_reduction_type.rbi +31 -0
  74. data/rbi/openai/models/realtime/realtime_audio_config.rbi +8 -956
  75. data/rbi/openai/models/realtime/realtime_audio_config_input.rbi +221 -0
  76. data/rbi/openai/models/realtime/realtime_audio_config_output.rbi +222 -0
  77. data/rbi/openai/models/realtime/realtime_audio_formats.rbi +329 -0
  78. data/rbi/openai/models/realtime/realtime_audio_input_turn_detection.rbi +262 -0
  79. data/rbi/openai/models/realtime/realtime_conversation_item_assistant_message.rbi +51 -10
  80. data/rbi/openai/models/realtime/realtime_conversation_item_function_call.rbi +16 -7
  81. data/rbi/openai/models/realtime/realtime_conversation_item_function_call_output.rbi +14 -7
  82. data/rbi/openai/models/realtime/realtime_conversation_item_system_message.rbi +16 -6
  83. data/rbi/openai/models/realtime/realtime_conversation_item_user_message.rbi +110 -12
  84. data/rbi/openai/models/realtime/realtime_response.rbi +287 -212
  85. data/rbi/openai/models/realtime/realtime_response_create_audio_output.rbi +250 -0
  86. data/rbi/openai/models/realtime/realtime_response_create_mcp_tool.rbi +616 -0
  87. data/rbi/openai/models/realtime/realtime_response_create_params.rbi +529 -0
  88. data/rbi/openai/models/realtime/realtime_response_usage.rbi +8 -2
  89. data/rbi/openai/models/realtime/realtime_response_usage_input_token_details.rbi +106 -7
  90. data/rbi/openai/models/realtime/realtime_server_event.rbi +4 -1
  91. data/rbi/openai/models/realtime/realtime_session.rbi +12 -262
  92. data/rbi/openai/models/realtime/realtime_session_client_secret.rbi +49 -0
  93. data/rbi/openai/models/realtime/realtime_session_create_request.rbi +112 -133
  94. data/rbi/openai/models/realtime/realtime_session_create_response.rbi +1229 -405
  95. data/rbi/openai/models/realtime/realtime_tools_config_union.rbi +1 -117
  96. data/rbi/openai/models/realtime/realtime_tracing_config.rbi +11 -10
  97. data/rbi/openai/models/realtime/realtime_transcription_session_audio.rbi +50 -0
  98. data/rbi/openai/models/realtime/realtime_transcription_session_audio_input.rbi +226 -0
  99. data/rbi/openai/models/realtime/realtime_transcription_session_audio_input_turn_detection.rbi +259 -0
  100. data/rbi/openai/models/realtime/realtime_transcription_session_client_secret.rbi +51 -0
  101. data/rbi/openai/models/realtime/realtime_transcription_session_create_request.rbi +25 -597
  102. data/rbi/openai/models/realtime/realtime_transcription_session_create_response.rbi +195 -0
  103. data/rbi/openai/models/realtime/realtime_transcription_session_input_audio_transcription.rbi +144 -0
  104. data/rbi/openai/models/realtime/realtime_transcription_session_turn_detection.rbi +94 -0
  105. data/rbi/openai/models/realtime/realtime_truncation.rbi +5 -56
  106. data/rbi/openai/models/realtime/realtime_truncation_retention_ratio.rbi +45 -0
  107. data/rbi/openai/models/realtime/response_cancel_event.rbi +3 -1
  108. data/rbi/openai/models/realtime/response_create_event.rbi +19 -786
  109. data/rbi/openai/models/realtime/response_done_event.rbi +7 -0
  110. data/rbi/openai/models/realtime/session_created_event.rbi +42 -9
  111. data/rbi/openai/models/realtime/session_update_event.rbi +57 -19
  112. data/rbi/openai/models/realtime/session_updated_event.rbi +42 -9
  113. data/rbi/openai/models/realtime/transcription_session_created.rbi +17 -591
  114. data/rbi/openai/models/realtime/transcription_session_update.rbi +425 -7
  115. data/rbi/openai/models/realtime/transcription_session_updated_event.rbi +14 -591
  116. data/rbi/openai/resources/realtime/client_secrets.rbi +5 -3
  117. data/sig/openai/models/realtime/audio_transcription.rbs +57 -0
  118. data/sig/openai/models/realtime/client_secret_create_response.rbs +1 -251
  119. data/sig/openai/models/realtime/models.rbs +57 -0
  120. data/sig/openai/models/realtime/noise_reduction_type.rbs +16 -0
  121. data/sig/openai/models/realtime/realtime_audio_config.rbs +12 -331
  122. data/sig/openai/models/realtime/realtime_audio_config_input.rbs +72 -0
  123. data/sig/openai/models/realtime/realtime_audio_config_output.rbs +72 -0
  124. data/sig/openai/models/realtime/realtime_audio_formats.rbs +128 -0
  125. data/sig/openai/models/realtime/realtime_audio_input_turn_detection.rbs +99 -0
  126. data/sig/openai/models/realtime/realtime_conversation_item_assistant_message.rbs +17 -2
  127. data/sig/openai/models/realtime/realtime_conversation_item_user_message.rbs +30 -1
  128. data/sig/openai/models/realtime/realtime_response.rbs +103 -82
  129. data/sig/openai/models/realtime/realtime_response_create_audio_output.rbs +84 -0
  130. data/sig/openai/models/realtime/realtime_response_create_mcp_tool.rbs +218 -0
  131. data/sig/openai/models/realtime/realtime_response_create_params.rbs +148 -0
  132. data/sig/openai/models/realtime/realtime_response_usage_input_token_details.rbs +50 -1
  133. data/sig/openai/models/realtime/realtime_session.rbs +16 -106
  134. data/sig/openai/models/realtime/realtime_session_client_secret.rbs +20 -0
  135. data/sig/openai/models/realtime/realtime_session_create_request.rbs +27 -43
  136. data/sig/openai/models/realtime/realtime_session_create_response.rbs +389 -187
  137. data/sig/openai/models/realtime/realtime_tools_config_union.rbs +1 -53
  138. data/sig/openai/models/realtime/realtime_transcription_session_audio.rbs +24 -0
  139. data/sig/openai/models/realtime/realtime_transcription_session_audio_input.rbs +72 -0
  140. data/sig/openai/models/realtime/realtime_transcription_session_audio_input_turn_detection.rbs +99 -0
  141. data/sig/openai/models/realtime/realtime_transcription_session_client_secret.rbs +20 -0
  142. data/sig/openai/models/realtime/realtime_transcription_session_create_request.rbs +11 -203
  143. data/sig/openai/models/realtime/realtime_transcription_session_create_response.rbs +69 -0
  144. data/sig/openai/models/realtime/realtime_transcription_session_input_audio_transcription.rbs +59 -0
  145. data/sig/openai/models/realtime/realtime_transcription_session_turn_detection.rbs +47 -0
  146. data/sig/openai/models/realtime/realtime_truncation.rbs +1 -28
  147. data/sig/openai/models/realtime/realtime_truncation_retention_ratio.rbs +21 -0
  148. data/sig/openai/models/realtime/response_create_event.rbs +6 -249
  149. data/sig/openai/models/realtime/session_created_event.rbs +14 -4
  150. data/sig/openai/models/realtime/session_update_event.rbs +14 -4
  151. data/sig/openai/models/realtime/session_updated_event.rbs +14 -4
  152. data/sig/openai/models/realtime/transcription_session_created.rbs +4 -254
  153. data/sig/openai/models/realtime/transcription_session_update.rbs +154 -4
  154. data/sig/openai/models/realtime/transcription_session_updated_event.rbs +4 -254
  155. metadata +59 -5
  156. data/lib/openai/models/realtime/realtime_client_secret_config.rb +0 -64
  157. data/rbi/openai/models/realtime/realtime_client_secret_config.rbi +0 -147
  158. data/sig/openai/models/realtime/realtime_client_secret_config.rbs +0 -60
@@ -4,278 +4,28 @@ module OpenAI
4
4
  type transcription_session_updated_event =
5
5
  {
6
6
  event_id: String,
7
- session: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session,
7
+ session: OpenAI::Realtime::RealtimeTranscriptionSessionCreateResponse,
8
8
  type: :"transcription_session.updated"
9
9
  }
10
10
 
11
11
  class TranscriptionSessionUpdatedEvent < OpenAI::Internal::Type::BaseModel
12
12
  attr_accessor event_id: String
13
13
 
14
- attr_accessor session: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session
14
+ attr_accessor session: OpenAI::Realtime::RealtimeTranscriptionSessionCreateResponse
15
15
 
16
16
  attr_accessor type: :"transcription_session.updated"
17
17
 
18
18
  def initialize: (
19
19
  event_id: String,
20
- session: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session,
20
+ session: OpenAI::Realtime::RealtimeTranscriptionSessionCreateResponse,
21
21
  ?type: :"transcription_session.updated"
22
22
  ) -> void
23
23
 
24
24
  def to_hash: -> {
25
25
  event_id: String,
26
- session: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session,
26
+ session: OpenAI::Realtime::RealtimeTranscriptionSessionCreateResponse,
27
27
  type: :"transcription_session.updated"
28
28
  }
29
-
30
- type session =
31
- {
32
- id: String,
33
- audio: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio,
34
- expires_at: Integer,
35
- include: ::Array[OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::include_],
36
- object: String
37
- }
38
-
39
- class Session < OpenAI::Internal::Type::BaseModel
40
- attr_reader id: String?
41
-
42
- def id=: (String) -> String
43
-
44
- attr_reader audio: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio?
45
-
46
- def audio=: (
47
- OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio
48
- ) -> OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio
49
-
50
- attr_reader expires_at: Integer?
51
-
52
- def expires_at=: (Integer) -> Integer
53
-
54
- attr_reader include: ::Array[OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::include_]?
55
-
56
- def include=: (
57
- ::Array[OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::include_]
58
- ) -> ::Array[OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::include_]
59
-
60
- attr_reader object: String?
61
-
62
- def object=: (String) -> String
63
-
64
- def initialize: (
65
- ?id: String,
66
- ?audio: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio,
67
- ?expires_at: Integer,
68
- ?include: ::Array[OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::include_],
69
- ?object: String
70
- ) -> void
71
-
72
- def to_hash: -> {
73
- id: String,
74
- audio: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio,
75
- expires_at: Integer,
76
- include: ::Array[OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::include_],
77
- object: String
78
- }
79
-
80
- type audio =
81
- {
82
- input: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input
83
- }
84
-
85
- class Audio < OpenAI::Internal::Type::BaseModel
86
- attr_reader input: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input?
87
-
88
- def input=: (
89
- OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input
90
- ) -> OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input
91
-
92
- def initialize: (
93
- ?input: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input
94
- ) -> void
95
-
96
- def to_hash: -> {
97
- input: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input
98
- }
99
-
100
- type input =
101
- {
102
- format_: String,
103
- noise_reduction: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::NoiseReduction,
104
- transcription: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::Transcription,
105
- turn_detection: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::TurnDetection
106
- }
107
-
108
- class Input < OpenAI::Internal::Type::BaseModel
109
- attr_reader format_: String?
110
-
111
- def format_=: (String) -> String
112
-
113
- attr_reader noise_reduction: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::NoiseReduction?
114
-
115
- def noise_reduction=: (
116
- OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::NoiseReduction
117
- ) -> OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::NoiseReduction
118
-
119
- attr_reader transcription: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::Transcription?
120
-
121
- def transcription=: (
122
- OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::Transcription
123
- ) -> OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::Transcription
124
-
125
- attr_reader turn_detection: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::TurnDetection?
126
-
127
- def turn_detection=: (
128
- OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::TurnDetection
129
- ) -> OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::TurnDetection
130
-
131
- def initialize: (
132
- ?format_: String,
133
- ?noise_reduction: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::NoiseReduction,
134
- ?transcription: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::Transcription,
135
- ?turn_detection: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::TurnDetection
136
- ) -> void
137
-
138
- def to_hash: -> {
139
- format_: String,
140
- noise_reduction: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::NoiseReduction,
141
- transcription: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::Transcription,
142
- turn_detection: OpenAI::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::TurnDetection
143
- }
144
-
145
- type noise_reduction =
146
- {
147
- type: OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::NoiseReduction::type_
148
- }
149
-
150
- class NoiseReduction < OpenAI::Internal::Type::BaseModel
151
- attr_reader type: OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::NoiseReduction::type_?
152
-
153
- def type=: (
154
- OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::NoiseReduction::type_
155
- ) -> OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::NoiseReduction::type_
156
-
157
- def initialize: (
158
- ?type: OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::NoiseReduction::type_
159
- ) -> void
160
-
161
- def to_hash: -> {
162
- type: OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::NoiseReduction::type_
163
- }
164
-
165
- type type_ = :near_field | :far_field
166
-
167
- module Type
168
- extend OpenAI::Internal::Type::Enum
169
-
170
- NEAR_FIELD: :near_field
171
- FAR_FIELD: :far_field
172
-
173
- def self?.values: -> ::Array[OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::NoiseReduction::type_]
174
- end
175
- end
176
-
177
- type transcription =
178
- {
179
- language: String,
180
- model: OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::Transcription::model,
181
- prompt: String
182
- }
183
-
184
- class Transcription < OpenAI::Internal::Type::BaseModel
185
- attr_reader language: String?
186
-
187
- def language=: (String) -> String
188
-
189
- attr_reader model: OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::Transcription::model?
190
-
191
- def model=: (
192
- OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::Transcription::model
193
- ) -> OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::Transcription::model
194
-
195
- attr_reader prompt: String?
196
-
197
- def prompt=: (String) -> String
198
-
199
- def initialize: (
200
- ?language: String,
201
- ?model: OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::Transcription::model,
202
- ?prompt: String
203
- ) -> void
204
-
205
- def to_hash: -> {
206
- language: String,
207
- model: OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::Transcription::model,
208
- prompt: String
209
- }
210
-
211
- type model =
212
- :"gpt-4o-transcribe"
213
- | :"gpt-4o-mini-transcribe"
214
- | :"whisper-1"
215
-
216
- module Model
217
- extend OpenAI::Internal::Type::Enum
218
-
219
- GPT_4O_TRANSCRIBE: :"gpt-4o-transcribe"
220
- GPT_4O_MINI_TRANSCRIBE: :"gpt-4o-mini-transcribe"
221
- WHISPER_1: :"whisper-1"
222
-
223
- def self?.values: -> ::Array[OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::Audio::Input::Transcription::model]
224
- end
225
- end
226
-
227
- type turn_detection =
228
- {
229
- prefix_padding_ms: Integer,
230
- silence_duration_ms: Integer,
231
- threshold: Float,
232
- type: String
233
- }
234
-
235
- class TurnDetection < OpenAI::Internal::Type::BaseModel
236
- attr_reader prefix_padding_ms: Integer?
237
-
238
- def prefix_padding_ms=: (Integer) -> Integer
239
-
240
- attr_reader silence_duration_ms: Integer?
241
-
242
- def silence_duration_ms=: (Integer) -> Integer
243
-
244
- attr_reader threshold: Float?
245
-
246
- def threshold=: (Float) -> Float
247
-
248
- attr_reader type: String?
249
-
250
- def type=: (String) -> String
251
-
252
- def initialize: (
253
- ?prefix_padding_ms: Integer,
254
- ?silence_duration_ms: Integer,
255
- ?threshold: Float,
256
- ?type: String
257
- ) -> void
258
-
259
- def to_hash: -> {
260
- prefix_padding_ms: Integer,
261
- silence_duration_ms: Integer,
262
- threshold: Float,
263
- type: String
264
- }
265
- end
266
- end
267
- end
268
-
269
- type include_ = :"item.input_audio_transcription.logprobs"
270
-
271
- module Include
272
- extend OpenAI::Internal::Type::Enum
273
-
274
- ITEM_INPUT_AUDIO_TRANSCRIPTION_LOGPROBS: :"item.input_audio_transcription.logprobs"
275
-
276
- def self?.values: -> ::Array[OpenAI::Models::Realtime::TranscriptionSessionUpdatedEvent::Session::include_]
277
- end
278
- end
279
29
  end
280
30
  end
281
31
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: openai
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.22.1
4
+ version: 0.23.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - OpenAI
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-09-05 00:00:00.000000000 Z
11
+ date: 2025-09-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: connection_pool
@@ -388,6 +388,7 @@ files:
388
388
  - lib/openai/models/moderation_multi_modal_input.rb
389
389
  - lib/openai/models/moderation_text_input.rb
390
390
  - lib/openai/models/other_file_chunking_strategy_object.rb
391
+ - lib/openai/models/realtime/audio_transcription.rb
391
392
  - lib/openai/models/realtime/client_secret_create_params.rb
392
393
  - lib/openai/models/realtime/client_secret_create_response.rb
393
394
  - lib/openai/models/realtime/conversation_created_event.rb
@@ -418,11 +419,16 @@ files:
418
419
  - lib/openai/models/realtime/mcp_list_tools_completed.rb
419
420
  - lib/openai/models/realtime/mcp_list_tools_failed.rb
420
421
  - lib/openai/models/realtime/mcp_list_tools_in_progress.rb
422
+ - lib/openai/models/realtime/models.rb
423
+ - lib/openai/models/realtime/noise_reduction_type.rb
421
424
  - lib/openai/models/realtime/output_audio_buffer_clear_event.rb
422
425
  - lib/openai/models/realtime/rate_limits_updated_event.rb
423
426
  - lib/openai/models/realtime/realtime_audio_config.rb
427
+ - lib/openai/models/realtime/realtime_audio_config_input.rb
428
+ - lib/openai/models/realtime/realtime_audio_config_output.rb
429
+ - lib/openai/models/realtime/realtime_audio_formats.rb
430
+ - lib/openai/models/realtime/realtime_audio_input_turn_detection.rb
424
431
  - lib/openai/models/realtime/realtime_client_event.rb
425
- - lib/openai/models/realtime/realtime_client_secret_config.rb
426
432
  - lib/openai/models/realtime/realtime_conversation_item_assistant_message.rb
427
433
  - lib/openai/models/realtime/realtime_conversation_item_function_call.rb
428
434
  - lib/openai/models/realtime/realtime_conversation_item_function_call_output.rb
@@ -438,20 +444,32 @@ files:
438
444
  - lib/openai/models/realtime/realtime_mcp_tool_execution_error.rb
439
445
  - lib/openai/models/realtime/realtime_mcphttp_error.rb
440
446
  - lib/openai/models/realtime/realtime_response.rb
447
+ - lib/openai/models/realtime/realtime_response_create_audio_output.rb
448
+ - lib/openai/models/realtime/realtime_response_create_mcp_tool.rb
449
+ - lib/openai/models/realtime/realtime_response_create_params.rb
441
450
  - lib/openai/models/realtime/realtime_response_status.rb
442
451
  - lib/openai/models/realtime/realtime_response_usage.rb
443
452
  - lib/openai/models/realtime/realtime_response_usage_input_token_details.rb
444
453
  - lib/openai/models/realtime/realtime_response_usage_output_token_details.rb
445
454
  - lib/openai/models/realtime/realtime_server_event.rb
446
455
  - lib/openai/models/realtime/realtime_session.rb
456
+ - lib/openai/models/realtime/realtime_session_client_secret.rb
447
457
  - lib/openai/models/realtime/realtime_session_create_request.rb
448
458
  - lib/openai/models/realtime/realtime_session_create_response.rb
449
459
  - lib/openai/models/realtime/realtime_tool_choice_config.rb
450
460
  - lib/openai/models/realtime/realtime_tools_config.rb
451
461
  - lib/openai/models/realtime/realtime_tools_config_union.rb
452
462
  - lib/openai/models/realtime/realtime_tracing_config.rb
463
+ - lib/openai/models/realtime/realtime_transcription_session_audio.rb
464
+ - lib/openai/models/realtime/realtime_transcription_session_audio_input.rb
465
+ - lib/openai/models/realtime/realtime_transcription_session_audio_input_turn_detection.rb
466
+ - lib/openai/models/realtime/realtime_transcription_session_client_secret.rb
453
467
  - lib/openai/models/realtime/realtime_transcription_session_create_request.rb
468
+ - lib/openai/models/realtime/realtime_transcription_session_create_response.rb
469
+ - lib/openai/models/realtime/realtime_transcription_session_input_audio_transcription.rb
470
+ - lib/openai/models/realtime/realtime_transcription_session_turn_detection.rb
454
471
  - lib/openai/models/realtime/realtime_truncation.rb
472
+ - lib/openai/models/realtime/realtime_truncation_retention_ratio.rb
455
473
  - lib/openai/models/realtime/response_audio_delta_event.rb
456
474
  - lib/openai/models/realtime/response_audio_done_event.rb
457
475
  - lib/openai/models/realtime/response_audio_transcript_delta_event.rb
@@ -1052,6 +1070,7 @@ files:
1052
1070
  - rbi/openai/models/moderation_multi_modal_input.rbi
1053
1071
  - rbi/openai/models/moderation_text_input.rbi
1054
1072
  - rbi/openai/models/other_file_chunking_strategy_object.rbi
1073
+ - rbi/openai/models/realtime/audio_transcription.rbi
1055
1074
  - rbi/openai/models/realtime/client_secret_create_params.rbi
1056
1075
  - rbi/openai/models/realtime/client_secret_create_response.rbi
1057
1076
  - rbi/openai/models/realtime/conversation_created_event.rbi
@@ -1082,11 +1101,16 @@ files:
1082
1101
  - rbi/openai/models/realtime/mcp_list_tools_completed.rbi
1083
1102
  - rbi/openai/models/realtime/mcp_list_tools_failed.rbi
1084
1103
  - rbi/openai/models/realtime/mcp_list_tools_in_progress.rbi
1104
+ - rbi/openai/models/realtime/models.rbi
1105
+ - rbi/openai/models/realtime/noise_reduction_type.rbi
1085
1106
  - rbi/openai/models/realtime/output_audio_buffer_clear_event.rbi
1086
1107
  - rbi/openai/models/realtime/rate_limits_updated_event.rbi
1087
1108
  - rbi/openai/models/realtime/realtime_audio_config.rbi
1109
+ - rbi/openai/models/realtime/realtime_audio_config_input.rbi
1110
+ - rbi/openai/models/realtime/realtime_audio_config_output.rbi
1111
+ - rbi/openai/models/realtime/realtime_audio_formats.rbi
1112
+ - rbi/openai/models/realtime/realtime_audio_input_turn_detection.rbi
1088
1113
  - rbi/openai/models/realtime/realtime_client_event.rbi
1089
- - rbi/openai/models/realtime/realtime_client_secret_config.rbi
1090
1114
  - rbi/openai/models/realtime/realtime_conversation_item_assistant_message.rbi
1091
1115
  - rbi/openai/models/realtime/realtime_conversation_item_function_call.rbi
1092
1116
  - rbi/openai/models/realtime/realtime_conversation_item_function_call_output.rbi
@@ -1102,20 +1126,32 @@ files:
1102
1126
  - rbi/openai/models/realtime/realtime_mcp_tool_execution_error.rbi
1103
1127
  - rbi/openai/models/realtime/realtime_mcphttp_error.rbi
1104
1128
  - rbi/openai/models/realtime/realtime_response.rbi
1129
+ - rbi/openai/models/realtime/realtime_response_create_audio_output.rbi
1130
+ - rbi/openai/models/realtime/realtime_response_create_mcp_tool.rbi
1131
+ - rbi/openai/models/realtime/realtime_response_create_params.rbi
1105
1132
  - rbi/openai/models/realtime/realtime_response_status.rbi
1106
1133
  - rbi/openai/models/realtime/realtime_response_usage.rbi
1107
1134
  - rbi/openai/models/realtime/realtime_response_usage_input_token_details.rbi
1108
1135
  - rbi/openai/models/realtime/realtime_response_usage_output_token_details.rbi
1109
1136
  - rbi/openai/models/realtime/realtime_server_event.rbi
1110
1137
  - rbi/openai/models/realtime/realtime_session.rbi
1138
+ - rbi/openai/models/realtime/realtime_session_client_secret.rbi
1111
1139
  - rbi/openai/models/realtime/realtime_session_create_request.rbi
1112
1140
  - rbi/openai/models/realtime/realtime_session_create_response.rbi
1113
1141
  - rbi/openai/models/realtime/realtime_tool_choice_config.rbi
1114
1142
  - rbi/openai/models/realtime/realtime_tools_config.rbi
1115
1143
  - rbi/openai/models/realtime/realtime_tools_config_union.rbi
1116
1144
  - rbi/openai/models/realtime/realtime_tracing_config.rbi
1145
+ - rbi/openai/models/realtime/realtime_transcription_session_audio.rbi
1146
+ - rbi/openai/models/realtime/realtime_transcription_session_audio_input.rbi
1147
+ - rbi/openai/models/realtime/realtime_transcription_session_audio_input_turn_detection.rbi
1148
+ - rbi/openai/models/realtime/realtime_transcription_session_client_secret.rbi
1117
1149
  - rbi/openai/models/realtime/realtime_transcription_session_create_request.rbi
1150
+ - rbi/openai/models/realtime/realtime_transcription_session_create_response.rbi
1151
+ - rbi/openai/models/realtime/realtime_transcription_session_input_audio_transcription.rbi
1152
+ - rbi/openai/models/realtime/realtime_transcription_session_turn_detection.rbi
1118
1153
  - rbi/openai/models/realtime/realtime_truncation.rbi
1154
+ - rbi/openai/models/realtime/realtime_truncation_retention_ratio.rbi
1119
1155
  - rbi/openai/models/realtime/response_audio_delta_event.rbi
1120
1156
  - rbi/openai/models/realtime/response_audio_done_event.rbi
1121
1157
  - rbi/openai/models/realtime/response_audio_transcript_delta_event.rbi
@@ -1706,6 +1742,7 @@ files:
1706
1742
  - sig/openai/models/moderation_multi_modal_input.rbs
1707
1743
  - sig/openai/models/moderation_text_input.rbs
1708
1744
  - sig/openai/models/other_file_chunking_strategy_object.rbs
1745
+ - sig/openai/models/realtime/audio_transcription.rbs
1709
1746
  - sig/openai/models/realtime/client_secret_create_params.rbs
1710
1747
  - sig/openai/models/realtime/client_secret_create_response.rbs
1711
1748
  - sig/openai/models/realtime/conversation_created_event.rbs
@@ -1736,11 +1773,16 @@ files:
1736
1773
  - sig/openai/models/realtime/mcp_list_tools_completed.rbs
1737
1774
  - sig/openai/models/realtime/mcp_list_tools_failed.rbs
1738
1775
  - sig/openai/models/realtime/mcp_list_tools_in_progress.rbs
1776
+ - sig/openai/models/realtime/models.rbs
1777
+ - sig/openai/models/realtime/noise_reduction_type.rbs
1739
1778
  - sig/openai/models/realtime/output_audio_buffer_clear_event.rbs
1740
1779
  - sig/openai/models/realtime/rate_limits_updated_event.rbs
1741
1780
  - sig/openai/models/realtime/realtime_audio_config.rbs
1781
+ - sig/openai/models/realtime/realtime_audio_config_input.rbs
1782
+ - sig/openai/models/realtime/realtime_audio_config_output.rbs
1783
+ - sig/openai/models/realtime/realtime_audio_formats.rbs
1784
+ - sig/openai/models/realtime/realtime_audio_input_turn_detection.rbs
1742
1785
  - sig/openai/models/realtime/realtime_client_event.rbs
1743
- - sig/openai/models/realtime/realtime_client_secret_config.rbs
1744
1786
  - sig/openai/models/realtime/realtime_conversation_item_assistant_message.rbs
1745
1787
  - sig/openai/models/realtime/realtime_conversation_item_function_call.rbs
1746
1788
  - sig/openai/models/realtime/realtime_conversation_item_function_call_output.rbs
@@ -1756,20 +1798,32 @@ files:
1756
1798
  - sig/openai/models/realtime/realtime_mcp_tool_execution_error.rbs
1757
1799
  - sig/openai/models/realtime/realtime_mcphttp_error.rbs
1758
1800
  - sig/openai/models/realtime/realtime_response.rbs
1801
+ - sig/openai/models/realtime/realtime_response_create_audio_output.rbs
1802
+ - sig/openai/models/realtime/realtime_response_create_mcp_tool.rbs
1803
+ - sig/openai/models/realtime/realtime_response_create_params.rbs
1759
1804
  - sig/openai/models/realtime/realtime_response_status.rbs
1760
1805
  - sig/openai/models/realtime/realtime_response_usage.rbs
1761
1806
  - sig/openai/models/realtime/realtime_response_usage_input_token_details.rbs
1762
1807
  - sig/openai/models/realtime/realtime_response_usage_output_token_details.rbs
1763
1808
  - sig/openai/models/realtime/realtime_server_event.rbs
1764
1809
  - sig/openai/models/realtime/realtime_session.rbs
1810
+ - sig/openai/models/realtime/realtime_session_client_secret.rbs
1765
1811
  - sig/openai/models/realtime/realtime_session_create_request.rbs
1766
1812
  - sig/openai/models/realtime/realtime_session_create_response.rbs
1767
1813
  - sig/openai/models/realtime/realtime_tool_choice_config.rbs
1768
1814
  - sig/openai/models/realtime/realtime_tools_config.rbs
1769
1815
  - sig/openai/models/realtime/realtime_tools_config_union.rbs
1770
1816
  - sig/openai/models/realtime/realtime_tracing_config.rbs
1817
+ - sig/openai/models/realtime/realtime_transcription_session_audio.rbs
1818
+ - sig/openai/models/realtime/realtime_transcription_session_audio_input.rbs
1819
+ - sig/openai/models/realtime/realtime_transcription_session_audio_input_turn_detection.rbs
1820
+ - sig/openai/models/realtime/realtime_transcription_session_client_secret.rbs
1771
1821
  - sig/openai/models/realtime/realtime_transcription_session_create_request.rbs
1822
+ - sig/openai/models/realtime/realtime_transcription_session_create_response.rbs
1823
+ - sig/openai/models/realtime/realtime_transcription_session_input_audio_transcription.rbs
1824
+ - sig/openai/models/realtime/realtime_transcription_session_turn_detection.rbs
1772
1825
  - sig/openai/models/realtime/realtime_truncation.rbs
1826
+ - sig/openai/models/realtime/realtime_truncation_retention_ratio.rbs
1773
1827
  - sig/openai/models/realtime/response_audio_delta_event.rbs
1774
1828
  - sig/openai/models/realtime/response_audio_done_event.rbs
1775
1829
  - sig/openai/models/realtime/response_audio_transcript_delta_event.rbs
@@ -1,64 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module OpenAI
4
- module Models
5
- module Realtime
6
- class RealtimeClientSecretConfig < OpenAI::Internal::Type::BaseModel
7
- # @!attribute expires_after
8
- # Configuration for the ephemeral token expiration.
9
- #
10
- # @return [OpenAI::Models::Realtime::RealtimeClientSecretConfig::ExpiresAfter, nil]
11
- optional :expires_after, -> { OpenAI::Realtime::RealtimeClientSecretConfig::ExpiresAfter }
12
-
13
- # @!method initialize(expires_after: nil)
14
- # Some parameter documentations has been truncated, see
15
- # {OpenAI::Models::Realtime::RealtimeClientSecretConfig} for more details.
16
- #
17
- # Configuration options for the generated client secret.
18
- #
19
- # @param expires_after [OpenAI::Models::Realtime::RealtimeClientSecretConfig::ExpiresAfter] Configuration for the ephemeral token expiration.
20
-
21
- # @see OpenAI::Models::Realtime::RealtimeClientSecretConfig#expires_after
22
- class ExpiresAfter < OpenAI::Internal::Type::BaseModel
23
- # @!attribute anchor
24
- # The anchor point for the ephemeral token expiration. Only `created_at` is
25
- # currently supported.
26
- #
27
- # @return [Symbol, OpenAI::Models::Realtime::RealtimeClientSecretConfig::ExpiresAfter::Anchor]
28
- required :anchor, enum: -> { OpenAI::Realtime::RealtimeClientSecretConfig::ExpiresAfter::Anchor }
29
-
30
- # @!attribute seconds
31
- # The number of seconds from the anchor point to the expiration. Select a value
32
- # between `10` and `7200`.
33
- #
34
- # @return [Integer, nil]
35
- optional :seconds, Integer
36
-
37
- # @!method initialize(anchor:, seconds: nil)
38
- # Some parameter documentations has been truncated, see
39
- # {OpenAI::Models::Realtime::RealtimeClientSecretConfig::ExpiresAfter} for more
40
- # details.
41
- #
42
- # Configuration for the ephemeral token expiration.
43
- #
44
- # @param anchor [Symbol, OpenAI::Models::Realtime::RealtimeClientSecretConfig::ExpiresAfter::Anchor] The anchor point for the ephemeral token expiration. Only `created_at` is curren
45
- #
46
- # @param seconds [Integer] The number of seconds from the anchor point to the expiration. Select a value be
47
-
48
- # The anchor point for the ephemeral token expiration. Only `created_at` is
49
- # currently supported.
50
- #
51
- # @see OpenAI::Models::Realtime::RealtimeClientSecretConfig::ExpiresAfter#anchor
52
- module Anchor
53
- extend OpenAI::Internal::Type::Enum
54
-
55
- CREATED_AT = :created_at
56
-
57
- # @!method self.values
58
- # @return [Array<Symbol>]
59
- end
60
- end
61
- end
62
- end
63
- end
64
- end