openai 0.13.1 → 0.14.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 +8 -0
- data/README.md +1 -1
- data/lib/openai/models/image_edit_completed_event.rb +198 -0
- data/lib/openai/models/image_edit_params.rb +36 -1
- data/lib/openai/models/image_edit_partial_image_event.rb +135 -0
- data/lib/openai/models/image_edit_stream_event.rb +21 -0
- data/lib/openai/models/image_gen_completed_event.rb +198 -0
- data/lib/openai/models/image_gen_partial_image_event.rb +135 -0
- data/lib/openai/models/image_gen_stream_event.rb +21 -0
- data/lib/openai/models/image_generate_params.rb +13 -1
- data/lib/openai/models/images_response.rb +3 -0
- data/lib/openai/models/responses/response_output_refusal.rb +2 -2
- data/lib/openai/models/responses/tool.rb +30 -1
- data/lib/openai/models.rb +12 -0
- data/lib/openai/resources/images.rb +140 -2
- data/lib/openai/version.rb +1 -1
- data/lib/openai.rb +6 -0
- data/rbi/openai/models/image_edit_completed_event.rbi +346 -0
- data/rbi/openai/models/image_edit_params.rbi +51 -0
- data/rbi/openai/models/image_edit_partial_image_event.rbi +249 -0
- data/rbi/openai/models/image_edit_stream_event.rbi +22 -0
- data/rbi/openai/models/image_gen_completed_event.rbi +339 -0
- data/rbi/openai/models/image_gen_partial_image_event.rbi +243 -0
- data/rbi/openai/models/image_gen_stream_event.rbi +22 -0
- data/rbi/openai/models/image_generate_params.rbi +12 -0
- data/rbi/openai/models/responses/response_output_refusal.rbi +2 -2
- data/rbi/openai/models/responses/tool.rbi +61 -0
- data/rbi/openai/models.rbi +12 -0
- data/rbi/openai/resources/images.rbi +225 -0
- data/sig/openai/models/image_edit_completed_event.rbs +150 -0
- data/sig/openai/models/image_edit_params.rbs +21 -0
- data/sig/openai/models/image_edit_partial_image_event.rbs +105 -0
- data/sig/openai/models/image_edit_stream_event.rbs +12 -0
- data/sig/openai/models/image_gen_completed_event.rbs +150 -0
- data/sig/openai/models/image_gen_partial_image_event.rbs +105 -0
- data/sig/openai/models/image_gen_stream_event.rbs +12 -0
- data/sig/openai/models/image_generate_params.rbs +5 -0
- data/sig/openai/models/responses/tool.rbs +16 -0
- data/sig/openai/models.rbs +12 -0
- data/sig/openai/resources/images.rbs +38 -0
- metadata +20 -2
@@ -0,0 +1,22 @@
|
|
1
|
+
# typed: strong
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
# Emitted when a partial image is available during image editing streaming.
|
6
|
+
module ImageEditStreamEvent
|
7
|
+
extend OpenAI::Internal::Type::Union
|
8
|
+
|
9
|
+
Variants =
|
10
|
+
T.type_alias do
|
11
|
+
T.any(
|
12
|
+
OpenAI::ImageEditPartialImageEvent,
|
13
|
+
OpenAI::ImageEditCompletedEvent
|
14
|
+
)
|
15
|
+
end
|
16
|
+
|
17
|
+
sig { override.returns(T::Array[OpenAI::ImageEditStreamEvent::Variants]) }
|
18
|
+
def self.variants
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,339 @@
|
|
1
|
+
# typed: strong
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
class ImageGenCompletedEvent < OpenAI::Internal::Type::BaseModel
|
6
|
+
OrHash =
|
7
|
+
T.type_alias do
|
8
|
+
T.any(OpenAI::ImageGenCompletedEvent, OpenAI::Internal::AnyHash)
|
9
|
+
end
|
10
|
+
|
11
|
+
# Base64-encoded image data, suitable for rendering as an image.
|
12
|
+
sig { returns(String) }
|
13
|
+
attr_accessor :b64_json
|
14
|
+
|
15
|
+
# The background setting for the generated image.
|
16
|
+
sig { returns(OpenAI::ImageGenCompletedEvent::Background::TaggedSymbol) }
|
17
|
+
attr_accessor :background
|
18
|
+
|
19
|
+
# The Unix timestamp when the event was created.
|
20
|
+
sig { returns(Integer) }
|
21
|
+
attr_accessor :created_at
|
22
|
+
|
23
|
+
# The output format for the generated image.
|
24
|
+
sig do
|
25
|
+
returns(OpenAI::ImageGenCompletedEvent::OutputFormat::TaggedSymbol)
|
26
|
+
end
|
27
|
+
attr_accessor :output_format
|
28
|
+
|
29
|
+
# The quality setting for the generated image.
|
30
|
+
sig { returns(OpenAI::ImageGenCompletedEvent::Quality::TaggedSymbol) }
|
31
|
+
attr_accessor :quality
|
32
|
+
|
33
|
+
# The size of the generated image.
|
34
|
+
sig { returns(OpenAI::ImageGenCompletedEvent::Size::TaggedSymbol) }
|
35
|
+
attr_accessor :size
|
36
|
+
|
37
|
+
# The type of the event. Always `image_generation.completed`.
|
38
|
+
sig { returns(Symbol) }
|
39
|
+
attr_accessor :type
|
40
|
+
|
41
|
+
# For `gpt-image-1` only, the token usage information for the image generation.
|
42
|
+
sig { returns(OpenAI::ImageGenCompletedEvent::Usage) }
|
43
|
+
attr_reader :usage
|
44
|
+
|
45
|
+
sig { params(usage: OpenAI::ImageGenCompletedEvent::Usage::OrHash).void }
|
46
|
+
attr_writer :usage
|
47
|
+
|
48
|
+
# Emitted when image generation has completed and the final image is available.
|
49
|
+
sig do
|
50
|
+
params(
|
51
|
+
b64_json: String,
|
52
|
+
background: OpenAI::ImageGenCompletedEvent::Background::OrSymbol,
|
53
|
+
created_at: Integer,
|
54
|
+
output_format: OpenAI::ImageGenCompletedEvent::OutputFormat::OrSymbol,
|
55
|
+
quality: OpenAI::ImageGenCompletedEvent::Quality::OrSymbol,
|
56
|
+
size: OpenAI::ImageGenCompletedEvent::Size::OrSymbol,
|
57
|
+
usage: OpenAI::ImageGenCompletedEvent::Usage::OrHash,
|
58
|
+
type: Symbol
|
59
|
+
).returns(T.attached_class)
|
60
|
+
end
|
61
|
+
def self.new(
|
62
|
+
# Base64-encoded image data, suitable for rendering as an image.
|
63
|
+
b64_json:,
|
64
|
+
# The background setting for the generated image.
|
65
|
+
background:,
|
66
|
+
# The Unix timestamp when the event was created.
|
67
|
+
created_at:,
|
68
|
+
# The output format for the generated image.
|
69
|
+
output_format:,
|
70
|
+
# The quality setting for the generated image.
|
71
|
+
quality:,
|
72
|
+
# The size of the generated image.
|
73
|
+
size:,
|
74
|
+
# For `gpt-image-1` only, the token usage information for the image generation.
|
75
|
+
usage:,
|
76
|
+
# The type of the event. Always `image_generation.completed`.
|
77
|
+
type: :"image_generation.completed"
|
78
|
+
)
|
79
|
+
end
|
80
|
+
|
81
|
+
sig do
|
82
|
+
override.returns(
|
83
|
+
{
|
84
|
+
b64_json: String,
|
85
|
+
background:
|
86
|
+
OpenAI::ImageGenCompletedEvent::Background::TaggedSymbol,
|
87
|
+
created_at: Integer,
|
88
|
+
output_format:
|
89
|
+
OpenAI::ImageGenCompletedEvent::OutputFormat::TaggedSymbol,
|
90
|
+
quality: OpenAI::ImageGenCompletedEvent::Quality::TaggedSymbol,
|
91
|
+
size: OpenAI::ImageGenCompletedEvent::Size::TaggedSymbol,
|
92
|
+
type: Symbol,
|
93
|
+
usage: OpenAI::ImageGenCompletedEvent::Usage
|
94
|
+
}
|
95
|
+
)
|
96
|
+
end
|
97
|
+
def to_hash
|
98
|
+
end
|
99
|
+
|
100
|
+
# The background setting for the generated image.
|
101
|
+
module Background
|
102
|
+
extend OpenAI::Internal::Type::Enum
|
103
|
+
|
104
|
+
TaggedSymbol =
|
105
|
+
T.type_alias do
|
106
|
+
T.all(Symbol, OpenAI::ImageGenCompletedEvent::Background)
|
107
|
+
end
|
108
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
109
|
+
|
110
|
+
TRANSPARENT =
|
111
|
+
T.let(
|
112
|
+
:transparent,
|
113
|
+
OpenAI::ImageGenCompletedEvent::Background::TaggedSymbol
|
114
|
+
)
|
115
|
+
OPAQUE =
|
116
|
+
T.let(
|
117
|
+
:opaque,
|
118
|
+
OpenAI::ImageGenCompletedEvent::Background::TaggedSymbol
|
119
|
+
)
|
120
|
+
AUTO =
|
121
|
+
T.let(:auto, OpenAI::ImageGenCompletedEvent::Background::TaggedSymbol)
|
122
|
+
|
123
|
+
sig do
|
124
|
+
override.returns(
|
125
|
+
T::Array[OpenAI::ImageGenCompletedEvent::Background::TaggedSymbol]
|
126
|
+
)
|
127
|
+
end
|
128
|
+
def self.values
|
129
|
+
end
|
130
|
+
end
|
131
|
+
|
132
|
+
# The output format for the generated image.
|
133
|
+
module OutputFormat
|
134
|
+
extend OpenAI::Internal::Type::Enum
|
135
|
+
|
136
|
+
TaggedSymbol =
|
137
|
+
T.type_alias do
|
138
|
+
T.all(Symbol, OpenAI::ImageGenCompletedEvent::OutputFormat)
|
139
|
+
end
|
140
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
141
|
+
|
142
|
+
PNG =
|
143
|
+
T.let(
|
144
|
+
:png,
|
145
|
+
OpenAI::ImageGenCompletedEvent::OutputFormat::TaggedSymbol
|
146
|
+
)
|
147
|
+
WEBP =
|
148
|
+
T.let(
|
149
|
+
:webp,
|
150
|
+
OpenAI::ImageGenCompletedEvent::OutputFormat::TaggedSymbol
|
151
|
+
)
|
152
|
+
JPEG =
|
153
|
+
T.let(
|
154
|
+
:jpeg,
|
155
|
+
OpenAI::ImageGenCompletedEvent::OutputFormat::TaggedSymbol
|
156
|
+
)
|
157
|
+
|
158
|
+
sig do
|
159
|
+
override.returns(
|
160
|
+
T::Array[OpenAI::ImageGenCompletedEvent::OutputFormat::TaggedSymbol]
|
161
|
+
)
|
162
|
+
end
|
163
|
+
def self.values
|
164
|
+
end
|
165
|
+
end
|
166
|
+
|
167
|
+
# The quality setting for the generated image.
|
168
|
+
module Quality
|
169
|
+
extend OpenAI::Internal::Type::Enum
|
170
|
+
|
171
|
+
TaggedSymbol =
|
172
|
+
T.type_alias do
|
173
|
+
T.all(Symbol, OpenAI::ImageGenCompletedEvent::Quality)
|
174
|
+
end
|
175
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
176
|
+
|
177
|
+
LOW = T.let(:low, OpenAI::ImageGenCompletedEvent::Quality::TaggedSymbol)
|
178
|
+
MEDIUM =
|
179
|
+
T.let(:medium, OpenAI::ImageGenCompletedEvent::Quality::TaggedSymbol)
|
180
|
+
HIGH =
|
181
|
+
T.let(:high, OpenAI::ImageGenCompletedEvent::Quality::TaggedSymbol)
|
182
|
+
AUTO =
|
183
|
+
T.let(:auto, OpenAI::ImageGenCompletedEvent::Quality::TaggedSymbol)
|
184
|
+
|
185
|
+
sig do
|
186
|
+
override.returns(
|
187
|
+
T::Array[OpenAI::ImageGenCompletedEvent::Quality::TaggedSymbol]
|
188
|
+
)
|
189
|
+
end
|
190
|
+
def self.values
|
191
|
+
end
|
192
|
+
end
|
193
|
+
|
194
|
+
# The size of the generated image.
|
195
|
+
module Size
|
196
|
+
extend OpenAI::Internal::Type::Enum
|
197
|
+
|
198
|
+
TaggedSymbol =
|
199
|
+
T.type_alias { T.all(Symbol, OpenAI::ImageGenCompletedEvent::Size) }
|
200
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
201
|
+
|
202
|
+
SIZE_1024X1024 =
|
203
|
+
T.let(
|
204
|
+
:"1024x1024",
|
205
|
+
OpenAI::ImageGenCompletedEvent::Size::TaggedSymbol
|
206
|
+
)
|
207
|
+
SIZE_1024X1536 =
|
208
|
+
T.let(
|
209
|
+
:"1024x1536",
|
210
|
+
OpenAI::ImageGenCompletedEvent::Size::TaggedSymbol
|
211
|
+
)
|
212
|
+
SIZE_1536X1024 =
|
213
|
+
T.let(
|
214
|
+
:"1536x1024",
|
215
|
+
OpenAI::ImageGenCompletedEvent::Size::TaggedSymbol
|
216
|
+
)
|
217
|
+
AUTO = T.let(:auto, OpenAI::ImageGenCompletedEvent::Size::TaggedSymbol)
|
218
|
+
|
219
|
+
sig do
|
220
|
+
override.returns(
|
221
|
+
T::Array[OpenAI::ImageGenCompletedEvent::Size::TaggedSymbol]
|
222
|
+
)
|
223
|
+
end
|
224
|
+
def self.values
|
225
|
+
end
|
226
|
+
end
|
227
|
+
|
228
|
+
class Usage < OpenAI::Internal::Type::BaseModel
|
229
|
+
OrHash =
|
230
|
+
T.type_alias do
|
231
|
+
T.any(
|
232
|
+
OpenAI::ImageGenCompletedEvent::Usage,
|
233
|
+
OpenAI::Internal::AnyHash
|
234
|
+
)
|
235
|
+
end
|
236
|
+
|
237
|
+
# The number of tokens (images and text) in the input prompt.
|
238
|
+
sig { returns(Integer) }
|
239
|
+
attr_accessor :input_tokens
|
240
|
+
|
241
|
+
# The input tokens detailed information for the image generation.
|
242
|
+
sig do
|
243
|
+
returns(OpenAI::ImageGenCompletedEvent::Usage::InputTokensDetails)
|
244
|
+
end
|
245
|
+
attr_reader :input_tokens_details
|
246
|
+
|
247
|
+
sig do
|
248
|
+
params(
|
249
|
+
input_tokens_details:
|
250
|
+
OpenAI::ImageGenCompletedEvent::Usage::InputTokensDetails::OrHash
|
251
|
+
).void
|
252
|
+
end
|
253
|
+
attr_writer :input_tokens_details
|
254
|
+
|
255
|
+
# The number of image tokens in the output image.
|
256
|
+
sig { returns(Integer) }
|
257
|
+
attr_accessor :output_tokens
|
258
|
+
|
259
|
+
# The total number of tokens (images and text) used for the image generation.
|
260
|
+
sig { returns(Integer) }
|
261
|
+
attr_accessor :total_tokens
|
262
|
+
|
263
|
+
# For `gpt-image-1` only, the token usage information for the image generation.
|
264
|
+
sig do
|
265
|
+
params(
|
266
|
+
input_tokens: Integer,
|
267
|
+
input_tokens_details:
|
268
|
+
OpenAI::ImageGenCompletedEvent::Usage::InputTokensDetails::OrHash,
|
269
|
+
output_tokens: Integer,
|
270
|
+
total_tokens: Integer
|
271
|
+
).returns(T.attached_class)
|
272
|
+
end
|
273
|
+
def self.new(
|
274
|
+
# The number of tokens (images and text) in the input prompt.
|
275
|
+
input_tokens:,
|
276
|
+
# The input tokens detailed information for the image generation.
|
277
|
+
input_tokens_details:,
|
278
|
+
# The number of image tokens in the output image.
|
279
|
+
output_tokens:,
|
280
|
+
# The total number of tokens (images and text) used for the image generation.
|
281
|
+
total_tokens:
|
282
|
+
)
|
283
|
+
end
|
284
|
+
|
285
|
+
sig do
|
286
|
+
override.returns(
|
287
|
+
{
|
288
|
+
input_tokens: Integer,
|
289
|
+
input_tokens_details:
|
290
|
+
OpenAI::ImageGenCompletedEvent::Usage::InputTokensDetails,
|
291
|
+
output_tokens: Integer,
|
292
|
+
total_tokens: Integer
|
293
|
+
}
|
294
|
+
)
|
295
|
+
end
|
296
|
+
def to_hash
|
297
|
+
end
|
298
|
+
|
299
|
+
class InputTokensDetails < OpenAI::Internal::Type::BaseModel
|
300
|
+
OrHash =
|
301
|
+
T.type_alias do
|
302
|
+
T.any(
|
303
|
+
OpenAI::ImageGenCompletedEvent::Usage::InputTokensDetails,
|
304
|
+
OpenAI::Internal::AnyHash
|
305
|
+
)
|
306
|
+
end
|
307
|
+
|
308
|
+
# The number of image tokens in the input prompt.
|
309
|
+
sig { returns(Integer) }
|
310
|
+
attr_accessor :image_tokens
|
311
|
+
|
312
|
+
# The number of text tokens in the input prompt.
|
313
|
+
sig { returns(Integer) }
|
314
|
+
attr_accessor :text_tokens
|
315
|
+
|
316
|
+
# The input tokens detailed information for the image generation.
|
317
|
+
sig do
|
318
|
+
params(image_tokens: Integer, text_tokens: Integer).returns(
|
319
|
+
T.attached_class
|
320
|
+
)
|
321
|
+
end
|
322
|
+
def self.new(
|
323
|
+
# The number of image tokens in the input prompt.
|
324
|
+
image_tokens:,
|
325
|
+
# The number of text tokens in the input prompt.
|
326
|
+
text_tokens:
|
327
|
+
)
|
328
|
+
end
|
329
|
+
|
330
|
+
sig do
|
331
|
+
override.returns({ image_tokens: Integer, text_tokens: Integer })
|
332
|
+
end
|
333
|
+
def to_hash
|
334
|
+
end
|
335
|
+
end
|
336
|
+
end
|
337
|
+
end
|
338
|
+
end
|
339
|
+
end
|
@@ -0,0 +1,243 @@
|
|
1
|
+
# typed: strong
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
class ImageGenPartialImageEvent < OpenAI::Internal::Type::BaseModel
|
6
|
+
OrHash =
|
7
|
+
T.type_alias do
|
8
|
+
T.any(OpenAI::ImageGenPartialImageEvent, OpenAI::Internal::AnyHash)
|
9
|
+
end
|
10
|
+
|
11
|
+
# Base64-encoded partial image data, suitable for rendering as an image.
|
12
|
+
sig { returns(String) }
|
13
|
+
attr_accessor :b64_json
|
14
|
+
|
15
|
+
# The background setting for the requested image.
|
16
|
+
sig do
|
17
|
+
returns(OpenAI::ImageGenPartialImageEvent::Background::TaggedSymbol)
|
18
|
+
end
|
19
|
+
attr_accessor :background
|
20
|
+
|
21
|
+
# The Unix timestamp when the event was created.
|
22
|
+
sig { returns(Integer) }
|
23
|
+
attr_accessor :created_at
|
24
|
+
|
25
|
+
# The output format for the requested image.
|
26
|
+
sig do
|
27
|
+
returns(OpenAI::ImageGenPartialImageEvent::OutputFormat::TaggedSymbol)
|
28
|
+
end
|
29
|
+
attr_accessor :output_format
|
30
|
+
|
31
|
+
# 0-based index for the partial image (streaming).
|
32
|
+
sig { returns(Integer) }
|
33
|
+
attr_accessor :partial_image_index
|
34
|
+
|
35
|
+
# The quality setting for the requested image.
|
36
|
+
sig { returns(OpenAI::ImageGenPartialImageEvent::Quality::TaggedSymbol) }
|
37
|
+
attr_accessor :quality
|
38
|
+
|
39
|
+
# The size of the requested image.
|
40
|
+
sig { returns(OpenAI::ImageGenPartialImageEvent::Size::TaggedSymbol) }
|
41
|
+
attr_accessor :size
|
42
|
+
|
43
|
+
# The type of the event. Always `image_generation.partial_image`.
|
44
|
+
sig { returns(Symbol) }
|
45
|
+
attr_accessor :type
|
46
|
+
|
47
|
+
# Emitted when a partial image is available during image generation streaming.
|
48
|
+
sig do
|
49
|
+
params(
|
50
|
+
b64_json: String,
|
51
|
+
background: OpenAI::ImageGenPartialImageEvent::Background::OrSymbol,
|
52
|
+
created_at: Integer,
|
53
|
+
output_format:
|
54
|
+
OpenAI::ImageGenPartialImageEvent::OutputFormat::OrSymbol,
|
55
|
+
partial_image_index: Integer,
|
56
|
+
quality: OpenAI::ImageGenPartialImageEvent::Quality::OrSymbol,
|
57
|
+
size: OpenAI::ImageGenPartialImageEvent::Size::OrSymbol,
|
58
|
+
type: Symbol
|
59
|
+
).returns(T.attached_class)
|
60
|
+
end
|
61
|
+
def self.new(
|
62
|
+
# Base64-encoded partial image data, suitable for rendering as an image.
|
63
|
+
b64_json:,
|
64
|
+
# The background setting for the requested image.
|
65
|
+
background:,
|
66
|
+
# The Unix timestamp when the event was created.
|
67
|
+
created_at:,
|
68
|
+
# The output format for the requested image.
|
69
|
+
output_format:,
|
70
|
+
# 0-based index for the partial image (streaming).
|
71
|
+
partial_image_index:,
|
72
|
+
# The quality setting for the requested image.
|
73
|
+
quality:,
|
74
|
+
# The size of the requested image.
|
75
|
+
size:,
|
76
|
+
# The type of the event. Always `image_generation.partial_image`.
|
77
|
+
type: :"image_generation.partial_image"
|
78
|
+
)
|
79
|
+
end
|
80
|
+
|
81
|
+
sig do
|
82
|
+
override.returns(
|
83
|
+
{
|
84
|
+
b64_json: String,
|
85
|
+
background:
|
86
|
+
OpenAI::ImageGenPartialImageEvent::Background::TaggedSymbol,
|
87
|
+
created_at: Integer,
|
88
|
+
output_format:
|
89
|
+
OpenAI::ImageGenPartialImageEvent::OutputFormat::TaggedSymbol,
|
90
|
+
partial_image_index: Integer,
|
91
|
+
quality: OpenAI::ImageGenPartialImageEvent::Quality::TaggedSymbol,
|
92
|
+
size: OpenAI::ImageGenPartialImageEvent::Size::TaggedSymbol,
|
93
|
+
type: Symbol
|
94
|
+
}
|
95
|
+
)
|
96
|
+
end
|
97
|
+
def to_hash
|
98
|
+
end
|
99
|
+
|
100
|
+
# The background setting for the requested image.
|
101
|
+
module Background
|
102
|
+
extend OpenAI::Internal::Type::Enum
|
103
|
+
|
104
|
+
TaggedSymbol =
|
105
|
+
T.type_alias do
|
106
|
+
T.all(Symbol, OpenAI::ImageGenPartialImageEvent::Background)
|
107
|
+
end
|
108
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
109
|
+
|
110
|
+
TRANSPARENT =
|
111
|
+
T.let(
|
112
|
+
:transparent,
|
113
|
+
OpenAI::ImageGenPartialImageEvent::Background::TaggedSymbol
|
114
|
+
)
|
115
|
+
OPAQUE =
|
116
|
+
T.let(
|
117
|
+
:opaque,
|
118
|
+
OpenAI::ImageGenPartialImageEvent::Background::TaggedSymbol
|
119
|
+
)
|
120
|
+
AUTO =
|
121
|
+
T.let(
|
122
|
+
:auto,
|
123
|
+
OpenAI::ImageGenPartialImageEvent::Background::TaggedSymbol
|
124
|
+
)
|
125
|
+
|
126
|
+
sig do
|
127
|
+
override.returns(
|
128
|
+
T::Array[
|
129
|
+
OpenAI::ImageGenPartialImageEvent::Background::TaggedSymbol
|
130
|
+
]
|
131
|
+
)
|
132
|
+
end
|
133
|
+
def self.values
|
134
|
+
end
|
135
|
+
end
|
136
|
+
|
137
|
+
# The output format for the requested image.
|
138
|
+
module OutputFormat
|
139
|
+
extend OpenAI::Internal::Type::Enum
|
140
|
+
|
141
|
+
TaggedSymbol =
|
142
|
+
T.type_alias do
|
143
|
+
T.all(Symbol, OpenAI::ImageGenPartialImageEvent::OutputFormat)
|
144
|
+
end
|
145
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
146
|
+
|
147
|
+
PNG =
|
148
|
+
T.let(
|
149
|
+
:png,
|
150
|
+
OpenAI::ImageGenPartialImageEvent::OutputFormat::TaggedSymbol
|
151
|
+
)
|
152
|
+
WEBP =
|
153
|
+
T.let(
|
154
|
+
:webp,
|
155
|
+
OpenAI::ImageGenPartialImageEvent::OutputFormat::TaggedSymbol
|
156
|
+
)
|
157
|
+
JPEG =
|
158
|
+
T.let(
|
159
|
+
:jpeg,
|
160
|
+
OpenAI::ImageGenPartialImageEvent::OutputFormat::TaggedSymbol
|
161
|
+
)
|
162
|
+
|
163
|
+
sig do
|
164
|
+
override.returns(
|
165
|
+
T::Array[
|
166
|
+
OpenAI::ImageGenPartialImageEvent::OutputFormat::TaggedSymbol
|
167
|
+
]
|
168
|
+
)
|
169
|
+
end
|
170
|
+
def self.values
|
171
|
+
end
|
172
|
+
end
|
173
|
+
|
174
|
+
# The quality setting for the requested image.
|
175
|
+
module Quality
|
176
|
+
extend OpenAI::Internal::Type::Enum
|
177
|
+
|
178
|
+
TaggedSymbol =
|
179
|
+
T.type_alias do
|
180
|
+
T.all(Symbol, OpenAI::ImageGenPartialImageEvent::Quality)
|
181
|
+
end
|
182
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
183
|
+
|
184
|
+
LOW =
|
185
|
+
T.let(:low, OpenAI::ImageGenPartialImageEvent::Quality::TaggedSymbol)
|
186
|
+
MEDIUM =
|
187
|
+
T.let(
|
188
|
+
:medium,
|
189
|
+
OpenAI::ImageGenPartialImageEvent::Quality::TaggedSymbol
|
190
|
+
)
|
191
|
+
HIGH =
|
192
|
+
T.let(:high, OpenAI::ImageGenPartialImageEvent::Quality::TaggedSymbol)
|
193
|
+
AUTO =
|
194
|
+
T.let(:auto, OpenAI::ImageGenPartialImageEvent::Quality::TaggedSymbol)
|
195
|
+
|
196
|
+
sig do
|
197
|
+
override.returns(
|
198
|
+
T::Array[OpenAI::ImageGenPartialImageEvent::Quality::TaggedSymbol]
|
199
|
+
)
|
200
|
+
end
|
201
|
+
def self.values
|
202
|
+
end
|
203
|
+
end
|
204
|
+
|
205
|
+
# The size of the requested image.
|
206
|
+
module Size
|
207
|
+
extend OpenAI::Internal::Type::Enum
|
208
|
+
|
209
|
+
TaggedSymbol =
|
210
|
+
T.type_alias do
|
211
|
+
T.all(Symbol, OpenAI::ImageGenPartialImageEvent::Size)
|
212
|
+
end
|
213
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
214
|
+
|
215
|
+
SIZE_1024X1024 =
|
216
|
+
T.let(
|
217
|
+
:"1024x1024",
|
218
|
+
OpenAI::ImageGenPartialImageEvent::Size::TaggedSymbol
|
219
|
+
)
|
220
|
+
SIZE_1024X1536 =
|
221
|
+
T.let(
|
222
|
+
:"1024x1536",
|
223
|
+
OpenAI::ImageGenPartialImageEvent::Size::TaggedSymbol
|
224
|
+
)
|
225
|
+
SIZE_1536X1024 =
|
226
|
+
T.let(
|
227
|
+
:"1536x1024",
|
228
|
+
OpenAI::ImageGenPartialImageEvent::Size::TaggedSymbol
|
229
|
+
)
|
230
|
+
AUTO =
|
231
|
+
T.let(:auto, OpenAI::ImageGenPartialImageEvent::Size::TaggedSymbol)
|
232
|
+
|
233
|
+
sig do
|
234
|
+
override.returns(
|
235
|
+
T::Array[OpenAI::ImageGenPartialImageEvent::Size::TaggedSymbol]
|
236
|
+
)
|
237
|
+
end
|
238
|
+
def self.values
|
239
|
+
end
|
240
|
+
end
|
241
|
+
end
|
242
|
+
end
|
243
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# typed: strong
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
# Emitted when a partial image is available during image generation streaming.
|
6
|
+
module ImageGenStreamEvent
|
7
|
+
extend OpenAI::Internal::Type::Union
|
8
|
+
|
9
|
+
Variants =
|
10
|
+
T.type_alias do
|
11
|
+
T.any(
|
12
|
+
OpenAI::ImageGenPartialImageEvent,
|
13
|
+
OpenAI::ImageGenCompletedEvent
|
14
|
+
)
|
15
|
+
end
|
16
|
+
|
17
|
+
sig { override.returns(T::Array[OpenAI::ImageGenStreamEvent::Variants]) }
|
18
|
+
def self.variants
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -60,6 +60,12 @@ module OpenAI
|
|
60
60
|
end
|
61
61
|
attr_accessor :output_format
|
62
62
|
|
63
|
+
# The number of partial images to generate. This parameter is used for streaming
|
64
|
+
# responses that return partial images. Value must be between 0 and 3. When set to
|
65
|
+
# 0, the response will be a single image sent in one streaming event.
|
66
|
+
sig { returns(T.nilable(Integer)) }
|
67
|
+
attr_accessor :partial_images
|
68
|
+
|
63
69
|
# The quality of the image that will be generated.
|
64
70
|
#
|
65
71
|
# - `auto` (default value) will automatically select the best quality for the
|
@@ -116,6 +122,7 @@ module OpenAI
|
|
116
122
|
output_compression: T.nilable(Integer),
|
117
123
|
output_format:
|
118
124
|
T.nilable(OpenAI::ImageGenerateParams::OutputFormat::OrSymbol),
|
125
|
+
partial_images: T.nilable(Integer),
|
119
126
|
quality: T.nilable(OpenAI::ImageGenerateParams::Quality::OrSymbol),
|
120
127
|
response_format:
|
121
128
|
T.nilable(OpenAI::ImageGenerateParams::ResponseFormat::OrSymbol),
|
@@ -155,6 +162,10 @@ module OpenAI
|
|
155
162
|
# The format in which the generated images are returned. This parameter is only
|
156
163
|
# supported for `gpt-image-1`. Must be one of `png`, `jpeg`, or `webp`.
|
157
164
|
output_format: nil,
|
165
|
+
# The number of partial images to generate. This parameter is used for streaming
|
166
|
+
# responses that return partial images. Value must be between 0 and 3. When set to
|
167
|
+
# 0, the response will be a single image sent in one streaming event.
|
168
|
+
partial_images: nil,
|
158
169
|
# The quality of the image that will be generated.
|
159
170
|
#
|
160
171
|
# - `auto` (default value) will automatically select the best quality for the
|
@@ -199,6 +210,7 @@ module OpenAI
|
|
199
210
|
output_compression: T.nilable(Integer),
|
200
211
|
output_format:
|
201
212
|
T.nilable(OpenAI::ImageGenerateParams::OutputFormat::OrSymbol),
|
213
|
+
partial_images: T.nilable(Integer),
|
202
214
|
quality: T.nilable(OpenAI::ImageGenerateParams::Quality::OrSymbol),
|
203
215
|
response_format:
|
204
216
|
T.nilable(OpenAI::ImageGenerateParams::ResponseFormat::OrSymbol),
|
@@ -12,7 +12,7 @@ module OpenAI
|
|
12
12
|
)
|
13
13
|
end
|
14
14
|
|
15
|
-
# The refusal
|
15
|
+
# The refusal explanation from the model.
|
16
16
|
sig { returns(String) }
|
17
17
|
attr_accessor :refusal
|
18
18
|
|
@@ -23,7 +23,7 @@ module OpenAI
|
|
23
23
|
# A refusal from the model.
|
24
24
|
sig { params(refusal: String, type: Symbol).returns(T.attached_class) }
|
25
25
|
def self.new(
|
26
|
-
# The refusal
|
26
|
+
# The refusal explanation from the model.
|
27
27
|
refusal:,
|
28
28
|
# The type of the refusal. Always `refusal`.
|
29
29
|
type: :refusal
|