openai 0.118.0 → 0.119.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 (127) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +10 -0
  3. data/README.md +1 -1
  4. data/lib/openai/client.rb +1 -1
  5. data/lib/openai/helpers/data_residency.rb +4 -1
  6. data/lib/openai/models/all_models.rb +1 -0
  7. data/lib/openai/models/beta/beta_compacted_response.rb +34 -1
  8. data/lib/openai/models/beta/beta_response.rb +34 -1
  9. data/lib/openai/models/beta/beta_response_input_item.rb +45 -1
  10. data/lib/openai/models/beta/beta_response_item.rb +45 -1
  11. data/lib/openai/models/beta/beta_response_output_item.rb +45 -1
  12. data/lib/openai/models/beta/beta_response_tool_search_output_item_param.rb +186 -13
  13. data/lib/openai/models/beta/beta_responses_client_event.rb +48 -1
  14. data/lib/openai/models/beta/beta_tool.rb +164 -13
  15. data/lib/openai/models/beta/response_compact_params.rb +44 -1
  16. data/lib/openai/models/beta/response_create_params.rb +44 -1
  17. data/lib/openai/models/beta/session_turn_error.rb +3 -0
  18. data/lib/openai/models/conversations/conversation_item.rb +45 -1
  19. data/lib/openai/models/image_edit_params.rb +72 -16
  20. data/lib/openai/models/image_generate_params.rb +160 -8
  21. data/lib/openai/models/image_model.rb +2 -0
  22. data/lib/openai/models/images_response.rb +55 -4
  23. data/lib/openai/models/realtime/realtime_audio_config_input.rb +14 -1
  24. data/lib/openai/models/realtime/realtime_session_create_response.rb +14 -1
  25. data/lib/openai/models/realtime/realtime_transcription_session_audio_input.rb +14 -1
  26. data/lib/openai/models/realtime/realtime_transcription_session_create_response.rb +14 -1
  27. data/lib/openai/models/realtime/realtime_translation_session.rb +14 -1
  28. data/lib/openai/models/realtime/realtime_translation_session_create_request.rb +14 -1
  29. data/lib/openai/models/realtime/realtime_translation_session_update_request.rb +14 -1
  30. data/lib/openai/models/responses/compacted_response.rb +37 -1
  31. data/lib/openai/models/responses/response.rb +34 -1
  32. data/lib/openai/models/responses/response_compact_params.rb +50 -1
  33. data/lib/openai/models/responses/response_create_params.rb +47 -1
  34. data/lib/openai/models/responses/response_input_item.rb +45 -1
  35. data/lib/openai/models/responses/response_item.rb +45 -1
  36. data/lib/openai/models/responses/response_output_item.rb +45 -1
  37. data/lib/openai/models/responses/response_tool_search_output_item_param.rb +186 -13
  38. data/lib/openai/models/responses/responses_client_event.rb +48 -1
  39. data/lib/openai/models/responses/tool.rb +164 -13
  40. data/lib/openai/models/responses_model.rb +1 -0
  41. data/lib/openai/resources/admin/organization/projects.rb +6 -6
  42. data/lib/openai/resources/admin/organization.rb +6 -6
  43. data/lib/openai/resources/beta/responses.rb +12 -3
  44. data/lib/openai/resources/images.rb +102 -18
  45. data/lib/openai/resources/responses.rb +12 -3
  46. data/lib/openai/version.rb +1 -1
  47. data/rbi/openai/models/all_models.rbi +1 -0
  48. data/rbi/openai/models/beta/beta_compacted_response.rbi +67 -1
  49. data/rbi/openai/models/beta/beta_response.rbi +62 -0
  50. data/rbi/openai/models/beta/beta_response_input_item.rbi +82 -1
  51. data/rbi/openai/models/beta/beta_response_item.rbi +82 -1
  52. data/rbi/openai/models/beta/beta_response_output_item.rbi +82 -1
  53. data/rbi/openai/models/beta/beta_response_tool_search_output_item_param.rbi +338 -13
  54. data/rbi/openai/models/beta/beta_responses_client_event.rbi +105 -0
  55. data/rbi/openai/models/beta/beta_tool.rbi +245 -13
  56. data/rbi/openai/models/beta/response_compact_params.rbi +81 -0
  57. data/rbi/openai/models/beta/response_create_params.rbi +81 -0
  58. data/rbi/openai/models/beta/session_turn_error.rbi +3 -0
  59. data/rbi/openai/models/conversations/conversation_item.rbi +84 -1
  60. data/rbi/openai/models/image_edit_params.rbi +76 -14
  61. data/rbi/openai/models/image_generate_params.rbi +218 -6
  62. data/rbi/openai/models/image_model.rbi +2 -0
  63. data/rbi/openai/models/images_response.rbi +90 -3
  64. data/rbi/openai/models/realtime/realtime_audio_config_input.rbi +17 -1
  65. data/rbi/openai/models/realtime/realtime_session_create_response.rbi +17 -1
  66. data/rbi/openai/models/realtime/realtime_transcription_session_audio_input.rbi +17 -1
  67. data/rbi/openai/models/realtime/realtime_transcription_session_create_response.rbi +17 -1
  68. data/rbi/openai/models/realtime/realtime_translation_session.rbi +19 -3
  69. data/rbi/openai/models/realtime/realtime_translation_session_create_request.rbi +19 -3
  70. data/rbi/openai/models/realtime/realtime_translation_session_update_request.rbi +19 -3
  71. data/rbi/openai/models/responses/compacted_response.rbi +67 -1
  72. data/rbi/openai/models/responses/response.rbi +62 -0
  73. data/rbi/openai/models/responses/response_compact_params.rbi +88 -0
  74. data/rbi/openai/models/responses/response_create_params.rbi +87 -0
  75. data/rbi/openai/models/responses/response_input_item.rbi +82 -1
  76. data/rbi/openai/models/responses/response_item.rbi +82 -1
  77. data/rbi/openai/models/responses/response_output_item.rbi +82 -1
  78. data/rbi/openai/models/responses/response_tool_search_output_item_param.rbi +340 -13
  79. data/rbi/openai/models/responses/responses_client_event.rbi +105 -0
  80. data/rbi/openai/models/responses/tool.rbi +248 -13
  81. data/rbi/openai/models/responses_model.rbi +1 -0
  82. data/rbi/openai/resources/admin/organization/projects.rbi +3 -3
  83. data/rbi/openai/resources/admin/organization.rbi +3 -3
  84. data/rbi/openai/resources/beta/responses.rbi +9 -0
  85. data/rbi/openai/resources/images.rbi +98 -14
  86. data/rbi/openai/resources/responses.rbi +11 -0
  87. data/sig/openai/models/all_models.rbs +2 -0
  88. data/sig/openai/models/beta/beta_compacted_response.rbs +42 -2
  89. data/sig/openai/models/beta/beta_response.rbs +40 -0
  90. data/sig/openai/models/beta/beta_response_input_item.rbs +51 -3
  91. data/sig/openai/models/beta/beta_response_item.rbs +51 -3
  92. data/sig/openai/models/beta/beta_response_output_item.rbs +51 -3
  93. data/sig/openai/models/beta/beta_response_tool_search_output_item_param.rbs +188 -15
  94. data/sig/openai/models/beta/beta_responses_client_event.rbs +56 -0
  95. data/sig/openai/models/beta/beta_tool.rbs +188 -15
  96. data/sig/openai/models/beta/response_compact_params.rbs +56 -0
  97. data/sig/openai/models/beta/response_create_params.rbs +56 -0
  98. data/sig/openai/models/beta/session_turn_error.rbs +4 -0
  99. data/sig/openai/models/conversations/conversation_item.rbs +51 -3
  100. data/sig/openai/models/image_edit_params.rbs +63 -12
  101. data/sig/openai/models/image_generate_params.rbs +150 -5
  102. data/sig/openai/models/image_model.rbs +4 -0
  103. data/sig/openai/models/images_response.rbs +59 -4
  104. data/sig/openai/models/realtime/realtime_audio_config_input.rbs +20 -1
  105. data/sig/openai/models/realtime/realtime_session_create_response.rbs +20 -1
  106. data/sig/openai/models/realtime/realtime_transcription_session_audio_input.rbs +20 -1
  107. data/sig/openai/models/realtime/realtime_transcription_session_create_response.rbs +20 -1
  108. data/sig/openai/models/realtime/realtime_translation_session.rbs +22 -3
  109. data/sig/openai/models/realtime/realtime_translation_session_create_request.rbs +22 -3
  110. data/sig/openai/models/realtime/realtime_translation_session_update_request.rbs +22 -3
  111. data/sig/openai/models/responses/compacted_response.rbs +42 -2
  112. data/sig/openai/models/responses/response.rbs +40 -0
  113. data/sig/openai/models/responses/response_compact_params.rbs +58 -0
  114. data/sig/openai/models/responses/response_create_params.rbs +56 -0
  115. data/sig/openai/models/responses/response_input_item.rbs +51 -3
  116. data/sig/openai/models/responses/response_item.rbs +51 -3
  117. data/sig/openai/models/responses/response_output_item.rbs +51 -3
  118. data/sig/openai/models/responses/response_tool_search_output_item_param.rbs +188 -15
  119. data/sig/openai/models/responses/responses_client_event.rbs +56 -0
  120. data/sig/openai/models/responses/tool.rbs +188 -15
  121. data/sig/openai/models/responses_model.rbs +2 -0
  122. data/sig/openai/resources/admin/organization/projects.rbs +2 -2
  123. data/sig/openai/resources/admin/organization.rbs +2 -2
  124. data/sig/openai/resources/beta/responses.rbs +3 -0
  125. data/sig/openai/resources/images.rbs +14 -0
  126. data/sig/openai/resources/responses.rbs +4 -0
  127. metadata +1 -1
@@ -441,9 +441,22 @@ module OpenAI
441
441
  }
442
442
 
443
443
  type noise_reduction =
444
- { ?type: OpenAI::Models::Realtime::noise_reduction_type }
444
+ {
445
+ ?strength: Float,
446
+ ?type: OpenAI::Models::Realtime::noise_reduction_type
447
+ }
445
448
 
446
449
  class NoiseReduction < OpenAI::Internal::Type::BaseModel
450
+ # Input noise suppression strength. Higher values apply more suppression. Defaults
451
+ # to 1 when noise reduction is first enabled. Omitting strength from a session
452
+ # update preserves the current strength.
453
+ attr_reader strength: Float?
454
+
455
+ # Input noise suppression strength. Higher values apply more suppression. Defaults
456
+ # to 1 when noise reduction is first enabled. Omitting strength from a session
457
+ # update preserves the current strength.
458
+ def strength=: (Float) -> Float
459
+
447
460
  # Type of noise reduction. `near_field` is for close-talking microphones such as
448
461
  # headphones, `far_field` is for far-field microphones such as laptop or
449
462
  # conference room microphones.
@@ -456,15 +469,21 @@ module OpenAI
456
469
  OpenAI::Models::Realtime::noise_reduction_type
457
470
  ) -> OpenAI::Models::Realtime::noise_reduction_type
458
471
 
472
+ # @param strength
473
+ # Input noise suppression strength. Higher values apply more suppression. Defaults
474
+ # to 1 when noise reduction is first enabled. Omitting strength from a session
475
+ # update preserves the current strength.
459
476
  # @param type
460
477
  # Type of noise reduction. `near_field` is for close-talking microphones such as
461
478
  # headphones, `far_field` is for far-field microphones such as laptop or
462
479
  # conference room microphones.
463
480
  def initialize: (
481
+ ?strength: Float,
464
482
  ?type: OpenAI::Models::Realtime::noise_reduction_type
465
483
  ) -> void
466
484
 
467
485
  def to_hash: -> {
486
+ ?strength: Float,
468
487
  ?type: OpenAI::Models::Realtime::noise_reduction_type
469
488
  }
470
489
  end
@@ -123,9 +123,22 @@ module OpenAI
123
123
  }
124
124
 
125
125
  type noise_reduction =
126
- { ?type: OpenAI::Models::Realtime::noise_reduction_type }
126
+ {
127
+ ?strength: Float,
128
+ ?type: OpenAI::Models::Realtime::noise_reduction_type
129
+ }
127
130
 
128
131
  class NoiseReduction < OpenAI::Internal::Type::BaseModel
132
+ # Input noise suppression strength. Higher values apply more suppression. Defaults
133
+ # to 1 when noise reduction is first enabled. Omitting strength from a session
134
+ # update preserves the current strength.
135
+ attr_reader strength: Float?
136
+
137
+ # Input noise suppression strength. Higher values apply more suppression. Defaults
138
+ # to 1 when noise reduction is first enabled. Omitting strength from a session
139
+ # update preserves the current strength.
140
+ def strength=: (Float) -> Float
141
+
129
142
  # Type of noise reduction. `near_field` is for close-talking microphones such as
130
143
  # headphones, `far_field` is for far-field microphones such as laptop or
131
144
  # conference room microphones.
@@ -138,15 +151,21 @@ module OpenAI
138
151
  OpenAI::Models::Realtime::noise_reduction_type
139
152
  ) -> OpenAI::Models::Realtime::noise_reduction_type
140
153
 
154
+ # @param strength
155
+ # Input noise suppression strength. Higher values apply more suppression. Defaults
156
+ # to 1 when noise reduction is first enabled. Omitting strength from a session
157
+ # update preserves the current strength.
141
158
  # @param type
142
159
  # Type of noise reduction. `near_field` is for close-talking microphones such as
143
160
  # headphones, `far_field` is for far-field microphones such as laptop or
144
161
  # conference room microphones.
145
162
  def initialize: (
163
+ ?strength: Float,
146
164
  ?type: OpenAI::Models::Realtime::noise_reduction_type
147
165
  ) -> void
148
166
 
149
167
  def to_hash: -> {
168
+ ?strength: Float,
150
169
  ?type: OpenAI::Models::Realtime::noise_reduction_type
151
170
  }
152
171
  end
@@ -165,9 +165,22 @@ module OpenAI
165
165
  }
166
166
 
167
167
  type noise_reduction =
168
- { ?type: OpenAI::Models::Realtime::noise_reduction_type }
168
+ {
169
+ ?strength: Float,
170
+ ?type: OpenAI::Models::Realtime::noise_reduction_type
171
+ }
169
172
 
170
173
  class NoiseReduction < OpenAI::Internal::Type::BaseModel
174
+ # Input noise suppression strength. Higher values apply more suppression. Defaults
175
+ # to 1 when noise reduction is first enabled. Omitting strength from a session
176
+ # update preserves the current strength.
177
+ attr_reader strength: Float?
178
+
179
+ # Input noise suppression strength. Higher values apply more suppression. Defaults
180
+ # to 1 when noise reduction is first enabled. Omitting strength from a session
181
+ # update preserves the current strength.
182
+ def strength=: (Float) -> Float
183
+
171
184
  # Type of noise reduction. `near_field` is for close-talking microphones such as
172
185
  # headphones, `far_field` is for far-field microphones such as laptop or
173
186
  # conference room microphones.
@@ -180,15 +193,21 @@ module OpenAI
180
193
  OpenAI::Models::Realtime::noise_reduction_type
181
194
  ) -> OpenAI::Models::Realtime::noise_reduction_type
182
195
 
196
+ # @param strength
197
+ # Input noise suppression strength. Higher values apply more suppression. Defaults
198
+ # to 1 when noise reduction is first enabled. Omitting strength from a session
199
+ # update preserves the current strength.
183
200
  # @param type
184
201
  # Type of noise reduction. `near_field` is for close-talking microphones such as
185
202
  # headphones, `far_field` is for far-field microphones such as laptop or
186
203
  # conference room microphones.
187
204
  def initialize: (
205
+ ?strength: Float,
188
206
  ?type: OpenAI::Models::Realtime::noise_reduction_type
189
207
  ) -> void
190
208
 
191
209
  def to_hash: -> {
210
+ ?strength: Float,
192
211
  ?type: OpenAI::Models::Realtime::noise_reduction_type
193
212
  }
194
213
  end
@@ -115,7 +115,10 @@ module OpenAI
115
115
  }
116
116
 
117
117
  type noise_reduction =
118
- { type: OpenAI::Models::Realtime::noise_reduction_type }
118
+ {
119
+ type: OpenAI::Models::Realtime::noise_reduction_type,
120
+ ?strength: Float
121
+ }
119
122
 
120
123
  class NoiseReduction < OpenAI::Internal::Type::BaseModel
121
124
  # Type of noise reduction. `near_field` is for close-talking microphones such as
@@ -123,16 +126,32 @@ module OpenAI
123
126
  # conference room microphones.
124
127
  attr_accessor type: OpenAI::Models::Realtime::noise_reduction_type
125
128
 
129
+ # Input noise suppression strength. Higher values apply more suppression. Defaults
130
+ # to 1 when noise reduction is first enabled. Omitting strength from a session
131
+ # update preserves the current strength.
132
+ attr_reader strength: Float?
133
+
134
+ # Input noise suppression strength. Higher values apply more suppression. Defaults
135
+ # to 1 when noise reduction is first enabled. Omitting strength from a session
136
+ # update preserves the current strength.
137
+ def strength=: (Float) -> Float
138
+
126
139
  # @param type
127
140
  # Type of noise reduction. `near_field` is for close-talking microphones such as
128
141
  # headphones, `far_field` is for far-field microphones such as laptop or
129
142
  # conference room microphones.
143
+ # @param strength
144
+ # Input noise suppression strength. Higher values apply more suppression. Defaults
145
+ # to 1 when noise reduction is first enabled. Omitting strength from a session
146
+ # update preserves the current strength.
130
147
  def initialize: (
131
- type: OpenAI::Models::Realtime::noise_reduction_type
148
+ type: OpenAI::Models::Realtime::noise_reduction_type,
149
+ ?strength: Float
132
150
  ) -> void
133
151
 
134
152
  def to_hash: -> {
135
- type: OpenAI::Models::Realtime::noise_reduction_type
153
+ type: OpenAI::Models::Realtime::noise_reduction_type,
154
+ ?strength: Float
136
155
  }
137
156
  end
138
157
 
@@ -94,7 +94,10 @@ module OpenAI
94
94
  }
95
95
 
96
96
  type noise_reduction =
97
- { type: OpenAI::Models::Realtime::noise_reduction_type }
97
+ {
98
+ type: OpenAI::Models::Realtime::noise_reduction_type,
99
+ ?strength: Float
100
+ }
98
101
 
99
102
  class NoiseReduction < OpenAI::Internal::Type::BaseModel
100
103
  # Type of noise reduction. `near_field` is for close-talking microphones such as
@@ -102,16 +105,32 @@ module OpenAI
102
105
  # conference room microphones.
103
106
  attr_accessor type: OpenAI::Models::Realtime::noise_reduction_type
104
107
 
108
+ # Input noise suppression strength. Higher values apply more suppression. Defaults
109
+ # to 1 when noise reduction is first enabled. Omitting strength from a session
110
+ # update preserves the current strength.
111
+ attr_reader strength: Float?
112
+
113
+ # Input noise suppression strength. Higher values apply more suppression. Defaults
114
+ # to 1 when noise reduction is first enabled. Omitting strength from a session
115
+ # update preserves the current strength.
116
+ def strength=: (Float) -> Float
117
+
105
118
  # @param type
106
119
  # Type of noise reduction. `near_field` is for close-talking microphones such as
107
120
  # headphones, `far_field` is for far-field microphones such as laptop or
108
121
  # conference room microphones.
122
+ # @param strength
123
+ # Input noise suppression strength. Higher values apply more suppression. Defaults
124
+ # to 1 when noise reduction is first enabled. Omitting strength from a session
125
+ # update preserves the current strength.
109
126
  def initialize: (
110
- type: OpenAI::Models::Realtime::noise_reduction_type
127
+ type: OpenAI::Models::Realtime::noise_reduction_type,
128
+ ?strength: Float
111
129
  ) -> void
112
130
 
113
131
  def to_hash: -> {
114
- type: OpenAI::Models::Realtime::noise_reduction_type
132
+ type: OpenAI::Models::Realtime::noise_reduction_type,
133
+ ?strength: Float
115
134
  }
116
135
  end
117
136
 
@@ -86,7 +86,10 @@ module OpenAI
86
86
  }
87
87
 
88
88
  type noise_reduction =
89
- { type: OpenAI::Models::Realtime::noise_reduction_type }
89
+ {
90
+ type: OpenAI::Models::Realtime::noise_reduction_type,
91
+ ?strength: Float
92
+ }
90
93
 
91
94
  class NoiseReduction < OpenAI::Internal::Type::BaseModel
92
95
  # Type of noise reduction. `near_field` is for close-talking microphones such as
@@ -94,16 +97,32 @@ module OpenAI
94
97
  # conference room microphones.
95
98
  attr_accessor type: OpenAI::Models::Realtime::noise_reduction_type
96
99
 
100
+ # Input noise suppression strength. Higher values apply more suppression. Defaults
101
+ # to 1 when noise reduction is first enabled. Omitting strength from a session
102
+ # update preserves the current strength.
103
+ attr_reader strength: Float?
104
+
105
+ # Input noise suppression strength. Higher values apply more suppression. Defaults
106
+ # to 1 when noise reduction is first enabled. Omitting strength from a session
107
+ # update preserves the current strength.
108
+ def strength=: (Float) -> Float
109
+
97
110
  # @param type
98
111
  # Type of noise reduction. `near_field` is for close-talking microphones such as
99
112
  # headphones, `far_field` is for far-field microphones such as laptop or
100
113
  # conference room microphones.
114
+ # @param strength
115
+ # Input noise suppression strength. Higher values apply more suppression. Defaults
116
+ # to 1 when noise reduction is first enabled. Omitting strength from a session
117
+ # update preserves the current strength.
101
118
  def initialize: (
102
- type: OpenAI::Models::Realtime::noise_reduction_type
119
+ type: OpenAI::Models::Realtime::noise_reduction_type,
120
+ ?strength: Float
103
121
  ) -> void
104
122
 
105
123
  def to_hash: -> {
106
- type: OpenAI::Models::Realtime::noise_reduction_type
124
+ type: OpenAI::Models::Realtime::noise_reduction_type,
125
+ ?strength: Float
107
126
  }
108
127
  end
109
128
 
@@ -7,7 +7,8 @@ module OpenAI
7
7
  created_at: Integer,
8
8
  ?object: :"response.compaction",
9
9
  output: ::Array[OpenAI::Models::Responses::response_output_item],
10
- usage: OpenAI::Responses::ResponseUsage
10
+ usage: OpenAI::Responses::ResponseUsage,
11
+ ?image: OpenAI::Responses::CompactedResponse::Image
11
12
  }
12
13
 
13
14
  class CompactedResponse < OpenAI::Internal::Type::BaseModel
@@ -28,6 +29,12 @@ module OpenAI
28
29
  # tokens.
29
30
  attr_accessor usage: OpenAI::Responses::ResponseUsage
30
31
 
32
+ attr_reader image: OpenAI::Responses::CompactedResponse::Image?
33
+
34
+ def image=: (
35
+ OpenAI::Responses::CompactedResponse::Image
36
+ ) -> OpenAI::Responses::CompactedResponse::Image
37
+
31
38
  # @param id
32
39
  # The unique identifier for the compacted response.
33
40
  # @param created_at
@@ -45,6 +52,7 @@ module OpenAI
45
52
  created_at: Integer,
46
53
  output: ::Array[OpenAI::Models::Responses::response_output_item],
47
54
  usage: OpenAI::Responses::ResponseUsage,
55
+ ?image: OpenAI::Responses::CompactedResponse::Image,
48
56
  ?object: :"response.compaction"
49
57
  ) -> void
50
58
 
@@ -53,8 +61,40 @@ module OpenAI
53
61
  created_at: Integer,
54
62
  ?object: :"response.compaction",
55
63
  output: ::Array[OpenAI::Models::Responses::response_output_item],
56
- usage: OpenAI::Responses::ResponseUsage
64
+ usage: OpenAI::Responses::ResponseUsage,
65
+ ?image: OpenAI::Responses::CompactedResponse::Image
57
66
  }
67
+
68
+ type image =
69
+ {
70
+ context_compression: OpenAI::Models::Responses::CompactedResponse::Image::context_compression
71
+ }
72
+
73
+ class Image < OpenAI::Internal::Type::BaseModel
74
+ # Effective image context optimization policy.
75
+ attr_accessor context_compression: OpenAI::Models::Responses::CompactedResponse::Image::context_compression
76
+
77
+ # @param context_compression
78
+ # Effective image context optimization policy.
79
+ def initialize: (
80
+ context_compression: OpenAI::Models::Responses::CompactedResponse::Image::context_compression
81
+ ) -> void
82
+
83
+ def to_hash: -> {
84
+ context_compression: OpenAI::Models::Responses::CompactedResponse::Image::context_compression
85
+ }
86
+
87
+ type context_compression = :enabled | :disabled
88
+
89
+ module ContextCompression
90
+ extend OpenAI::Internal::Type::Enum
91
+
92
+ ENABLED: :enabled
93
+ DISABLED: :disabled
94
+
95
+ def self?.values: -> ::Array[OpenAI::Models::Responses::CompactedResponse::Image::context_compression]
96
+ end
97
+ end
58
98
  end
59
99
  end
60
100
  end
@@ -21,6 +21,7 @@ module OpenAI
21
21
  ?background: bool?,
22
22
  ?completed_at: Float?,
23
23
  ?conversation: OpenAI::Responses::Response::Conversation?,
24
+ ?image: OpenAI::Responses::Response::Image,
24
25
  ?max_output_tokens: Integer?,
25
26
  ?max_tool_calls: Integer?,
26
27
  ?moderation: OpenAI::Responses::Response::Moderation?,
@@ -146,6 +147,12 @@ module OpenAI
146
147
  # from this response were automatically added to this conversation.
147
148
  attr_accessor conversation: OpenAI::Responses::Response::Conversation?
148
149
 
150
+ attr_reader image: OpenAI::Responses::Response::Image?
151
+
152
+ def image=: (
153
+ OpenAI::Responses::Response::Image
154
+ ) -> OpenAI::Responses::Response::Image
155
+
149
156
  # An upper bound for the number of tokens that can be generated for a response,
150
157
  # including visible output tokens and
151
158
  # [reasoning tokens](https://developers.openai.com/api/docs/guides/reasoning).
@@ -576,6 +583,7 @@ module OpenAI
576
583
  ?background: bool?,
577
584
  ?completed_at: Float?,
578
585
  ?conversation: OpenAI::Responses::Response::Conversation?,
586
+ ?image: OpenAI::Responses::Response::Image,
579
587
  ?max_output_tokens: Integer?,
580
588
  ?max_tool_calls: Integer?,
581
589
  ?moderation: OpenAI::Responses::Response::Moderation?,
@@ -617,6 +625,7 @@ module OpenAI
617
625
  ?background: bool?,
618
626
  ?completed_at: Float?,
619
627
  ?conversation: OpenAI::Responses::Response::Conversation?,
628
+ ?image: OpenAI::Responses::Response::Image,
620
629
  ?max_output_tokens: Integer?,
621
630
  ?max_tool_calls: Integer?,
622
631
  ?moderation: OpenAI::Responses::Response::Moderation?,
@@ -768,6 +777,37 @@ module OpenAI
768
777
  def to_hash: -> { id: String }
769
778
  end
770
779
 
780
+ type image =
781
+ {
782
+ context_compression: OpenAI::Models::Responses::Response::Image::context_compression
783
+ }
784
+
785
+ class Image < OpenAI::Internal::Type::BaseModel
786
+ # Effective image context optimization policy.
787
+ attr_accessor context_compression: OpenAI::Models::Responses::Response::Image::context_compression
788
+
789
+ # @param context_compression
790
+ # Effective image context optimization policy.
791
+ def initialize: (
792
+ context_compression: OpenAI::Models::Responses::Response::Image::context_compression
793
+ ) -> void
794
+
795
+ def to_hash: -> {
796
+ context_compression: OpenAI::Models::Responses::Response::Image::context_compression
797
+ }
798
+
799
+ type context_compression = :enabled | :disabled
800
+
801
+ module ContextCompression
802
+ extend OpenAI::Internal::Type::Enum
803
+
804
+ ENABLED: :enabled
805
+ DISABLED: :disabled
806
+
807
+ def self?.values: -> ::Array[OpenAI::Models::Responses::Response::Image::context_compression]
808
+ end
809
+ end
810
+
771
811
  type moderation =
772
812
  {
773
813
  input: OpenAI::Models::Responses::Response::Moderation::input,
@@ -4,6 +4,7 @@ module OpenAI
4
4
  type response_compact_params =
5
5
  {
6
6
  model: OpenAI::Models::Responses::ResponseCompactParams::model?,
7
+ ?image: OpenAI::Responses::ResponseCompactParams::Image,
7
8
  ?input: OpenAI::Models::Responses::ResponseCompactParams::input?,
8
9
  ?instructions: String?,
9
10
  ?previous_response_id: String?,
@@ -25,6 +26,14 @@ module OpenAI
25
26
  # compare available models.
26
27
  attr_accessor model: OpenAI::Models::Responses::ResponseCompactParams::model?
27
28
 
29
+ # Request level image options.
30
+ attr_reader image: OpenAI::Responses::ResponseCompactParams::Image?
31
+
32
+ # Request level image options.
33
+ def image=: (
34
+ OpenAI::Responses::ResponseCompactParams::Image
35
+ ) -> OpenAI::Responses::ResponseCompactParams::Image
36
+
28
37
  # Text, image, or file inputs to the model, used to generate a response
29
38
  attr_accessor input: OpenAI::Models::Responses::ResponseCompactParams::input?
30
39
 
@@ -81,6 +90,8 @@ module OpenAI
81
90
  # price points. Refer to the
82
91
  # [model guide](https://developers.openai.com/api/docs/models) to browse and
83
92
  # compare available models.
93
+ # @param image
94
+ # Request level image options.
84
95
  # @param input
85
96
  # Text, image, or file inputs to the model, used to generate a response
86
97
  # @param instructions
@@ -126,6 +137,7 @@ module OpenAI
126
137
  # the parameter.
127
138
  def initialize: (
128
139
  model: OpenAI::Models::Responses::ResponseCompactParams::model?,
140
+ ?image: OpenAI::Responses::ResponseCompactParams::Image,
129
141
  ?input: OpenAI::Models::Responses::ResponseCompactParams::input?,
130
142
  ?instructions: String?,
131
143
  ?previous_response_id: String?,
@@ -138,6 +150,7 @@ module OpenAI
138
150
 
139
151
  def to_hash: -> {
140
152
  model: OpenAI::Models::Responses::ResponseCompactParams::model?,
153
+ ?image: OpenAI::Responses::ResponseCompactParams::Image,
141
154
  ?input: OpenAI::Models::Responses::ResponseCompactParams::input?,
142
155
  ?instructions: String?,
143
156
  ?previous_response_id: String?,
@@ -259,6 +272,7 @@ module OpenAI
259
272
  | :"gpt-daybreak-red-latest"
260
273
  | :"gpt-5.6-cyber"
261
274
  | :"gpt-rosalind-research"
275
+ | :"gpt-6-rosalind"
262
276
  | String
263
277
 
264
278
  module Model
@@ -376,6 +390,50 @@ module OpenAI
376
390
  GPT_DAYBREAK_RED_LATEST: :"gpt-daybreak-red-latest"
377
391
  GPT_5_6_CYBER: :"gpt-5.6-cyber"
378
392
  GPT_ROSALIND_RESEARCH: :"gpt-rosalind-research"
393
+ GPT_6_ROSALIND: :"gpt-6-rosalind"
394
+ end
395
+
396
+ type image =
397
+ {
398
+ ?context_compression: OpenAI::Models::Responses::ResponseCompactParams::Image::context_compression
399
+ }
400
+
401
+ class Image < OpenAI::Internal::Type::BaseModel
402
+ # Controls image context optimization. Defaults to `auto`, which uses the model,
403
+ # transport, and input to select a policy. Use `enabled` to require compression
404
+ # support or `disabled` to turn it off.
405
+ attr_reader context_compression: OpenAI::Models::Responses::ResponseCompactParams::Image::context_compression?
406
+
407
+ # Controls image context optimization. Defaults to `auto`, which uses the model,
408
+ # transport, and input to select a policy. Use `enabled` to require compression
409
+ # support or `disabled` to turn it off.
410
+ def context_compression=: (
411
+ OpenAI::Models::Responses::ResponseCompactParams::Image::context_compression
412
+ ) -> OpenAI::Models::Responses::ResponseCompactParams::Image::context_compression
413
+
414
+ # @param context_compression
415
+ # Controls image context optimization. Defaults to `auto`, which uses the model,
416
+ # transport, and input to select a policy. Use `enabled` to require compression
417
+ # support or `disabled` to turn it off.
418
+ def initialize: (
419
+ ?context_compression: OpenAI::Models::Responses::ResponseCompactParams::Image::context_compression
420
+ ) -> void
421
+
422
+ def to_hash: -> {
423
+ ?context_compression: OpenAI::Models::Responses::ResponseCompactParams::Image::context_compression
424
+ }
425
+
426
+ type context_compression = :auto | :enabled | :disabled
427
+
428
+ module ContextCompression
429
+ extend OpenAI::Internal::Type::Enum
430
+
431
+ AUTO: :auto
432
+ ENABLED: :enabled
433
+ DISABLED: :disabled
434
+
435
+ def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseCompactParams::Image::context_compression]
436
+ end
379
437
  end
380
438
 
381
439
  type input =
@@ -7,6 +7,7 @@ module OpenAI
7
7
  ?background: bool?,
8
8
  ?context_management: ::Array[OpenAI::Responses::ResponseCreateParams::ContextManagement]?,
9
9
  ?conversation: OpenAI::Models::Responses::ResponseCreateParams::conversation?,
10
+ ?image: OpenAI::Responses::ResponseCreateParams::Image,
10
11
  ?include: ::Array[OpenAI::Models::Responses::response_includable]?,
11
12
  ?input: OpenAI::Models::Responses::ResponseCreateParams::input,
12
13
  ?instructions: String?,
@@ -62,6 +63,14 @@ module OpenAI
62
63
  # response completes.
63
64
  attr_accessor conversation: OpenAI::Models::Responses::ResponseCreateParams::conversation?
64
65
 
66
+ # Request level image options.
67
+ attr_reader image: OpenAI::Responses::ResponseCreateParams::Image?
68
+
69
+ # Request level image options.
70
+ def image=: (
71
+ OpenAI::Responses::ResponseCreateParams::Image
72
+ ) -> OpenAI::Responses::ResponseCreateParams::Image
73
+
65
74
  # Specify additional output data to include in the model response. Currently
66
75
  # supported values are:
67
76
  #
@@ -390,6 +399,8 @@ module OpenAI
390
399
  # prepended to `input_items` for this response request. Input items and output
391
400
  # items from this response are automatically added to this conversation after this
392
401
  # response completes.
402
+ # @param image
403
+ # Request level image options.
393
404
  # @param include
394
405
  # Specify additional output data to include in the model response. Currently
395
406
  # supported values are:
@@ -600,6 +611,7 @@ module OpenAI
600
611
  ?background: bool?,
601
612
  ?context_management: ::Array[OpenAI::Responses::ResponseCreateParams::ContextManagement]?,
602
613
  ?conversation: OpenAI::Models::Responses::ResponseCreateParams::conversation?,
614
+ ?image: OpenAI::Responses::ResponseCreateParams::Image,
603
615
  ?include: ::Array[OpenAI::Models::Responses::response_includable]?,
604
616
  ?input: OpenAI::Models::Responses::ResponseCreateParams::input,
605
617
  ?instructions: String?,
@@ -636,6 +648,7 @@ module OpenAI
636
648
  ?background: bool?,
637
649
  ?context_management: ::Array[OpenAI::Responses::ResponseCreateParams::ContextManagement]?,
638
650
  ?conversation: OpenAI::Models::Responses::ResponseCreateParams::conversation?,
651
+ ?image: OpenAI::Responses::ResponseCreateParams::Image,
639
652
  ?include: ::Array[OpenAI::Models::Responses::response_includable]?,
640
653
  ?input: OpenAI::Models::Responses::ResponseCreateParams::input,
641
654
  ?instructions: String?,
@@ -757,6 +770,49 @@ module OpenAI
757
770
  def self?.variants: -> ::Array[OpenAI::Models::Responses::ResponseCreateParams::conversation]
758
771
  end
759
772
 
773
+ type image =
774
+ {
775
+ ?context_compression: OpenAI::Models::Responses::ResponseCreateParams::Image::context_compression
776
+ }
777
+
778
+ class Image < OpenAI::Internal::Type::BaseModel
779
+ # Controls image context optimization. Defaults to `auto`, which uses the model,
780
+ # transport, and input to select a policy. Use `enabled` to require compression
781
+ # support or `disabled` to turn it off.
782
+ attr_reader context_compression: OpenAI::Models::Responses::ResponseCreateParams::Image::context_compression?
783
+
784
+ # Controls image context optimization. Defaults to `auto`, which uses the model,
785
+ # transport, and input to select a policy. Use `enabled` to require compression
786
+ # support or `disabled` to turn it off.
787
+ def context_compression=: (
788
+ OpenAI::Models::Responses::ResponseCreateParams::Image::context_compression
789
+ ) -> OpenAI::Models::Responses::ResponseCreateParams::Image::context_compression
790
+
791
+ # @param context_compression
792
+ # Controls image context optimization. Defaults to `auto`, which uses the model,
793
+ # transport, and input to select a policy. Use `enabled` to require compression
794
+ # support or `disabled` to turn it off.
795
+ def initialize: (
796
+ ?context_compression: OpenAI::Models::Responses::ResponseCreateParams::Image::context_compression
797
+ ) -> void
798
+
799
+ def to_hash: -> {
800
+ ?context_compression: OpenAI::Models::Responses::ResponseCreateParams::Image::context_compression
801
+ }
802
+
803
+ type context_compression = :auto | :enabled | :disabled
804
+
805
+ module ContextCompression
806
+ extend OpenAI::Internal::Type::Enum
807
+
808
+ AUTO: :auto
809
+ ENABLED: :enabled
810
+ DISABLED: :disabled
811
+
812
+ def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseCreateParams::Image::context_compression]
813
+ end
814
+ end
815
+
760
816
  type input = String | OpenAI::Models::Responses::response_input
761
817
 
762
818
  module Input