openai 0.13.0 → 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 +21 -0
- data/README.md +1 -1
- data/lib/openai/helpers/structured_output/json_schema_converter.rb +34 -10
- data/lib/openai/models/eval_create_params.rb +50 -5
- data/lib/openai/models/evals/create_eval_completions_run_data_source.rb +50 -5
- data/lib/openai/models/evals/run_cancel_response.rb +48 -5
- data/lib/openai/models/evals/run_create_params.rb +50 -5
- data/lib/openai/models/evals/run_create_response.rb +48 -5
- data/lib/openai/models/evals/run_list_response.rb +48 -5
- data/lib/openai/models/evals/run_retrieve_response.rb +48 -5
- data/lib/openai/models/graders/label_model_grader.rb +48 -5
- data/lib/openai/models/graders/score_model_grader.rb +48 -5
- 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/helpers/structured_output/json_schema_converter.rbi +4 -0
- data/rbi/openai/models/eval_create_params.rbi +76 -7
- data/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi +76 -7
- data/rbi/openai/models/evals/run_cancel_response.rbi +70 -5
- data/rbi/openai/models/evals/run_create_params.rbi +76 -7
- data/rbi/openai/models/evals/run_create_response.rbi +70 -5
- data/rbi/openai/models/evals/run_list_response.rbi +70 -5
- data/rbi/openai/models/evals/run_retrieve_response.rbi +70 -5
- data/rbi/openai/models/graders/label_model_grader.rbi +74 -7
- data/rbi/openai/models/graders/score_model_grader.rbi +74 -7
- 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/eval_create_params.rbs +29 -0
- data/sig/openai/models/evals/create_eval_completions_run_data_source.rbs +29 -0
- data/sig/openai/models/evals/run_cancel_response.rbs +33 -0
- data/sig/openai/models/evals/run_create_params.rbs +33 -0
- data/sig/openai/models/evals/run_create_response.rbs +33 -0
- data/sig/openai/models/evals/run_list_response.rbs +33 -0
- data/sig/openai/models/evals/run_retrieve_response.rbs +33 -0
- data/sig/openai/models/graders/label_model_grader.rbs +29 -0
- data/sig/openai/models/graders/score_model_grader.rbs +29 -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,249 @@
|
|
1
|
+
# typed: strong
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
class ImageEditPartialImageEvent < OpenAI::Internal::Type::BaseModel
|
6
|
+
OrHash =
|
7
|
+
T.type_alias do
|
8
|
+
T.any(OpenAI::ImageEditPartialImageEvent, 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 edited image.
|
16
|
+
sig do
|
17
|
+
returns(OpenAI::ImageEditPartialImageEvent::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 edited image.
|
26
|
+
sig do
|
27
|
+
returns(OpenAI::ImageEditPartialImageEvent::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 edited image.
|
36
|
+
sig { returns(OpenAI::ImageEditPartialImageEvent::Quality::TaggedSymbol) }
|
37
|
+
attr_accessor :quality
|
38
|
+
|
39
|
+
# The size of the requested edited image.
|
40
|
+
sig { returns(OpenAI::ImageEditPartialImageEvent::Size::TaggedSymbol) }
|
41
|
+
attr_accessor :size
|
42
|
+
|
43
|
+
# The type of the event. Always `image_edit.partial_image`.
|
44
|
+
sig { returns(Symbol) }
|
45
|
+
attr_accessor :type
|
46
|
+
|
47
|
+
# Emitted when a partial image is available during image editing streaming.
|
48
|
+
sig do
|
49
|
+
params(
|
50
|
+
b64_json: String,
|
51
|
+
background: OpenAI::ImageEditPartialImageEvent::Background::OrSymbol,
|
52
|
+
created_at: Integer,
|
53
|
+
output_format:
|
54
|
+
OpenAI::ImageEditPartialImageEvent::OutputFormat::OrSymbol,
|
55
|
+
partial_image_index: Integer,
|
56
|
+
quality: OpenAI::ImageEditPartialImageEvent::Quality::OrSymbol,
|
57
|
+
size: OpenAI::ImageEditPartialImageEvent::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 edited image.
|
65
|
+
background:,
|
66
|
+
# The Unix timestamp when the event was created.
|
67
|
+
created_at:,
|
68
|
+
# The output format for the requested edited image.
|
69
|
+
output_format:,
|
70
|
+
# 0-based index for the partial image (streaming).
|
71
|
+
partial_image_index:,
|
72
|
+
# The quality setting for the requested edited image.
|
73
|
+
quality:,
|
74
|
+
# The size of the requested edited image.
|
75
|
+
size:,
|
76
|
+
# The type of the event. Always `image_edit.partial_image`.
|
77
|
+
type: :"image_edit.partial_image"
|
78
|
+
)
|
79
|
+
end
|
80
|
+
|
81
|
+
sig do
|
82
|
+
override.returns(
|
83
|
+
{
|
84
|
+
b64_json: String,
|
85
|
+
background:
|
86
|
+
OpenAI::ImageEditPartialImageEvent::Background::TaggedSymbol,
|
87
|
+
created_at: Integer,
|
88
|
+
output_format:
|
89
|
+
OpenAI::ImageEditPartialImageEvent::OutputFormat::TaggedSymbol,
|
90
|
+
partial_image_index: Integer,
|
91
|
+
quality: OpenAI::ImageEditPartialImageEvent::Quality::TaggedSymbol,
|
92
|
+
size: OpenAI::ImageEditPartialImageEvent::Size::TaggedSymbol,
|
93
|
+
type: Symbol
|
94
|
+
}
|
95
|
+
)
|
96
|
+
end
|
97
|
+
def to_hash
|
98
|
+
end
|
99
|
+
|
100
|
+
# The background setting for the requested edited image.
|
101
|
+
module Background
|
102
|
+
extend OpenAI::Internal::Type::Enum
|
103
|
+
|
104
|
+
TaggedSymbol =
|
105
|
+
T.type_alias do
|
106
|
+
T.all(Symbol, OpenAI::ImageEditPartialImageEvent::Background)
|
107
|
+
end
|
108
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
109
|
+
|
110
|
+
TRANSPARENT =
|
111
|
+
T.let(
|
112
|
+
:transparent,
|
113
|
+
OpenAI::ImageEditPartialImageEvent::Background::TaggedSymbol
|
114
|
+
)
|
115
|
+
OPAQUE =
|
116
|
+
T.let(
|
117
|
+
:opaque,
|
118
|
+
OpenAI::ImageEditPartialImageEvent::Background::TaggedSymbol
|
119
|
+
)
|
120
|
+
AUTO =
|
121
|
+
T.let(
|
122
|
+
:auto,
|
123
|
+
OpenAI::ImageEditPartialImageEvent::Background::TaggedSymbol
|
124
|
+
)
|
125
|
+
|
126
|
+
sig do
|
127
|
+
override.returns(
|
128
|
+
T::Array[
|
129
|
+
OpenAI::ImageEditPartialImageEvent::Background::TaggedSymbol
|
130
|
+
]
|
131
|
+
)
|
132
|
+
end
|
133
|
+
def self.values
|
134
|
+
end
|
135
|
+
end
|
136
|
+
|
137
|
+
# The output format for the requested edited image.
|
138
|
+
module OutputFormat
|
139
|
+
extend OpenAI::Internal::Type::Enum
|
140
|
+
|
141
|
+
TaggedSymbol =
|
142
|
+
T.type_alias do
|
143
|
+
T.all(Symbol, OpenAI::ImageEditPartialImageEvent::OutputFormat)
|
144
|
+
end
|
145
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
146
|
+
|
147
|
+
PNG =
|
148
|
+
T.let(
|
149
|
+
:png,
|
150
|
+
OpenAI::ImageEditPartialImageEvent::OutputFormat::TaggedSymbol
|
151
|
+
)
|
152
|
+
WEBP =
|
153
|
+
T.let(
|
154
|
+
:webp,
|
155
|
+
OpenAI::ImageEditPartialImageEvent::OutputFormat::TaggedSymbol
|
156
|
+
)
|
157
|
+
JPEG =
|
158
|
+
T.let(
|
159
|
+
:jpeg,
|
160
|
+
OpenAI::ImageEditPartialImageEvent::OutputFormat::TaggedSymbol
|
161
|
+
)
|
162
|
+
|
163
|
+
sig do
|
164
|
+
override.returns(
|
165
|
+
T::Array[
|
166
|
+
OpenAI::ImageEditPartialImageEvent::OutputFormat::TaggedSymbol
|
167
|
+
]
|
168
|
+
)
|
169
|
+
end
|
170
|
+
def self.values
|
171
|
+
end
|
172
|
+
end
|
173
|
+
|
174
|
+
# The quality setting for the requested edited image.
|
175
|
+
module Quality
|
176
|
+
extend OpenAI::Internal::Type::Enum
|
177
|
+
|
178
|
+
TaggedSymbol =
|
179
|
+
T.type_alias do
|
180
|
+
T.all(Symbol, OpenAI::ImageEditPartialImageEvent::Quality)
|
181
|
+
end
|
182
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
183
|
+
|
184
|
+
LOW =
|
185
|
+
T.let(:low, OpenAI::ImageEditPartialImageEvent::Quality::TaggedSymbol)
|
186
|
+
MEDIUM =
|
187
|
+
T.let(
|
188
|
+
:medium,
|
189
|
+
OpenAI::ImageEditPartialImageEvent::Quality::TaggedSymbol
|
190
|
+
)
|
191
|
+
HIGH =
|
192
|
+
T.let(
|
193
|
+
:high,
|
194
|
+
OpenAI::ImageEditPartialImageEvent::Quality::TaggedSymbol
|
195
|
+
)
|
196
|
+
AUTO =
|
197
|
+
T.let(
|
198
|
+
:auto,
|
199
|
+
OpenAI::ImageEditPartialImageEvent::Quality::TaggedSymbol
|
200
|
+
)
|
201
|
+
|
202
|
+
sig do
|
203
|
+
override.returns(
|
204
|
+
T::Array[OpenAI::ImageEditPartialImageEvent::Quality::TaggedSymbol]
|
205
|
+
)
|
206
|
+
end
|
207
|
+
def self.values
|
208
|
+
end
|
209
|
+
end
|
210
|
+
|
211
|
+
# The size of the requested edited image.
|
212
|
+
module Size
|
213
|
+
extend OpenAI::Internal::Type::Enum
|
214
|
+
|
215
|
+
TaggedSymbol =
|
216
|
+
T.type_alias do
|
217
|
+
T.all(Symbol, OpenAI::ImageEditPartialImageEvent::Size)
|
218
|
+
end
|
219
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
220
|
+
|
221
|
+
SIZE_1024X1024 =
|
222
|
+
T.let(
|
223
|
+
:"1024x1024",
|
224
|
+
OpenAI::ImageEditPartialImageEvent::Size::TaggedSymbol
|
225
|
+
)
|
226
|
+
SIZE_1024X1536 =
|
227
|
+
T.let(
|
228
|
+
:"1024x1536",
|
229
|
+
OpenAI::ImageEditPartialImageEvent::Size::TaggedSymbol
|
230
|
+
)
|
231
|
+
SIZE_1536X1024 =
|
232
|
+
T.let(
|
233
|
+
:"1536x1024",
|
234
|
+
OpenAI::ImageEditPartialImageEvent::Size::TaggedSymbol
|
235
|
+
)
|
236
|
+
AUTO =
|
237
|
+
T.let(:auto, OpenAI::ImageEditPartialImageEvent::Size::TaggedSymbol)
|
238
|
+
|
239
|
+
sig do
|
240
|
+
override.returns(
|
241
|
+
T::Array[OpenAI::ImageEditPartialImageEvent::Size::TaggedSymbol]
|
242
|
+
)
|
243
|
+
end
|
244
|
+
def self.values
|
245
|
+
end
|
246
|
+
end
|
247
|
+
end
|
248
|
+
end
|
249
|
+
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 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
|