openai 0.50.0 → 0.51.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a3dfc5832c4d71969816eee2e272e0714ad59da2dfbee1bbf78c3c095be91ebd
4
- data.tar.gz: 29c3aa6e6eec246d040e86a932ea0ff6c0f7f587b67c74048f4789175a8cfd5b
3
+ metadata.gz: f54d6873508436a7ccfd29e41959daf2d674ce2b8cc1acd7dfaad857047cd97f
4
+ data.tar.gz: e0831943ff8b7715276e4e37e97236c93d835926eb45abc53c9153d27d74ca2c
5
5
  SHA512:
6
- metadata.gz: 1ce8497fead914ea87953e71f634910442ed063313a2ac7e7f468e2e202622d259f5768d27e6847a3a51ea1d56c2ce80cc78bd0b037f14a5eb3f3bbfb458db42
7
- data.tar.gz: 61961677f3f87008f0dba2c4a54b2ba7b1f9829fff8cb70e6742c94ee69bca93556431e369e88e7ab9a03a8255d6ecf58060e66d0c076dc4f47f46f7f3e21599
6
+ metadata.gz: 7473cc28a620f11a6f0b4af493cbf0c30e4db5b87fbcbe2317b03bba4346962637f47ed58c6ecda6e629cf0a980e3e2f6d960267ebf4213059275bf0f686832e
7
+ data.tar.gz: 28a38eb6efe67d18aa5eadf4ec8ffee010075683d17f739370adafe73c049b81f8bcf93f4b737b7627d1fa2c91f62c00798a23bb466d9ef4081fc3df3247d362
data/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.51.0 (2026-02-24)
4
+
5
+ Full Changelog: [v0.50.0...v0.51.0](https://github.com/openai/openai-ruby/compare/v0.50.0...v0.51.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** add phase ([656f591](https://github.com/openai/openai-ruby/commit/656f5917f52cfbe388f9d706ab372b958301985e))
10
+
11
+
12
+ ### Bug Fixes
13
+
14
+ * **api:** fix phase enum ([c055d7b](https://github.com/openai/openai-ruby/commit/c055d7b2fe06a49ad64db6dc880e30f41d42e22d))
15
+ * **api:** phase docs ([766b70c](https://github.com/openai/openai-ruby/commit/766b70cc83834acf57f1d2c31ea5026ff0d70b7f))
16
+
3
17
  ## 0.50.0 (2026-02-24)
4
18
 
5
19
  Full Changelog: [v0.49.1...v0.50.0](https://github.com/openai/openai-ruby/compare/v0.49.1...v0.50.0)
data/README.md CHANGED
@@ -15,7 +15,7 @@ To use this gem, install via Bundler by adding the following to your application
15
15
  <!-- x-release-please-start-version -->
16
16
 
17
17
  ```ruby
18
- gem "openai", "~> 0.50.0"
18
+ gem "openai", "~> 0.51.0"
19
19
  ```
20
20
 
21
21
  <!-- x-release-please-end -->
@@ -18,13 +18,24 @@ module OpenAI
18
18
  # @return [Symbol, OpenAI::Models::Responses::EasyInputMessage::Role]
19
19
  required :role, enum: -> { OpenAI::Responses::EasyInputMessage::Role }
20
20
 
21
+ # @!attribute phase
22
+ # The phase of an assistant message.
23
+ #
24
+ # Use `commentary` for an intermediate assistant message and `final_answer` for
25
+ # the final assistant message. For follow-up requests with models like
26
+ # `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages.
27
+ # Omitting it can degrade performance. Not used for user messages.
28
+ #
29
+ # @return [Symbol, OpenAI::Models::Responses::EasyInputMessage::Phase, nil]
30
+ optional :phase, enum: -> { OpenAI::Responses::EasyInputMessage::Phase }, nil?: true
31
+
21
32
  # @!attribute type
22
33
  # The type of the message input. Always `message`.
23
34
  #
24
35
  # @return [Symbol, OpenAI::Models::Responses::EasyInputMessage::Type, nil]
25
36
  optional :type, enum: -> { OpenAI::Responses::EasyInputMessage::Type }
26
37
 
27
- # @!method initialize(content:, role:, type: nil)
38
+ # @!method initialize(content:, role:, phase: nil, type: nil)
28
39
  # Some parameter documentations has been truncated, see
29
40
  # {OpenAI::Models::Responses::EasyInputMessage} for more details.
30
41
  #
@@ -38,6 +49,8 @@ module OpenAI
38
49
  #
39
50
  # @param role [Symbol, OpenAI::Models::Responses::EasyInputMessage::Role] The role of the message input. One of `user`, `assistant`, `system`, or
40
51
  #
52
+ # @param phase [Symbol, OpenAI::Models::Responses::EasyInputMessage::Phase, nil] The phase of an assistant message.
53
+ #
41
54
  # @param type [Symbol, OpenAI::Models::Responses::EasyInputMessage::Type] The type of the message input. Always `message`.
42
55
 
43
56
  # Text, image, or audio input to the model, used to generate a response. Can also
@@ -74,6 +87,24 @@ module OpenAI
74
87
  # @return [Array<Symbol>]
75
88
  end
76
89
 
90
+ # The phase of an assistant message.
91
+ #
92
+ # Use `commentary` for an intermediate assistant message and `final_answer` for
93
+ # the final assistant message. For follow-up requests with models like
94
+ # `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages.
95
+ # Omitting it can degrade performance. Not used for user messages.
96
+ #
97
+ # @see OpenAI::Models::Responses::EasyInputMessage#phase
98
+ module Phase
99
+ extend OpenAI::Internal::Type::Enum
100
+
101
+ COMMENTARY = :commentary
102
+ FINAL_ANSWER = :final_answer
103
+
104
+ # @!method self.values
105
+ # @return [Array<Symbol>]
106
+ end
107
+
77
108
  # The type of the message input. Always `message`.
78
109
  #
79
110
  # @see OpenAI::Models::Responses::EasyInputMessage#type
@@ -42,7 +42,13 @@ module OpenAI
42
42
  # @return [String, nil]
43
43
  optional :previous_response_id, String, nil?: true
44
44
 
45
- # @!method initialize(model:, input: nil, instructions: nil, previous_response_id: nil, request_options: {})
45
+ # @!attribute prompt_cache_key
46
+ # A key to use when reading from or writing to the prompt cache.
47
+ #
48
+ # @return [String, nil]
49
+ optional :prompt_cache_key, String, nil?: true
50
+
51
+ # @!method initialize(model:, input: nil, instructions: nil, previous_response_id: nil, prompt_cache_key: nil, request_options: {})
46
52
  # Some parameter documentations has been truncated, see
47
53
  # {OpenAI::Models::Responses::ResponseCompactParams} for more details.
48
54
  #
@@ -54,6 +60,8 @@ module OpenAI
54
60
  #
55
61
  # @param previous_response_id [String, nil] The unique ID of the previous response to the model. Use this to create multi-tu
56
62
  #
63
+ # @param prompt_cache_key [String, nil] A key to use when reading from or writing to the prompt cache.
64
+ #
57
65
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
58
66
 
59
67
  # Model ID used to generate the response, like `gpt-5` or `o3`. OpenAI offers a
@@ -36,7 +36,18 @@ module OpenAI
36
36
  # @return [Symbol, :message]
37
37
  required :type, const: :message
38
38
 
39
- # @!method initialize(id:, content:, status:, role: :assistant, type: :message)
39
+ # @!attribute phase
40
+ # The phase of an assistant message.
41
+ #
42
+ # Use `commentary` for an intermediate assistant message and `final_answer` for
43
+ # the final assistant message. For follow-up requests with models like
44
+ # `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages.
45
+ # Omitting it can degrade performance. Not used for user messages.
46
+ #
47
+ # @return [Symbol, OpenAI::Models::Responses::ResponseOutputMessage::Phase, nil]
48
+ optional :phase, enum: -> { OpenAI::Responses::ResponseOutputMessage::Phase }, nil?: true
49
+
50
+ # @!method initialize(id:, content:, status:, phase: nil, role: :assistant, type: :message)
40
51
  # Some parameter documentations has been truncated, see
41
52
  # {OpenAI::Models::Responses::ResponseOutputMessage} for more details.
42
53
  #
@@ -48,6 +59,8 @@ module OpenAI
48
59
  #
49
60
  # @param status [Symbol, OpenAI::Models::Responses::ResponseOutputMessage::Status] The status of the message input. One of `in_progress`, `completed`, or
50
61
  #
62
+ # @param phase [Symbol, OpenAI::Models::Responses::ResponseOutputMessage::Phase, nil] The phase of an assistant message.
63
+ #
51
64
  # @param role [Symbol, :assistant] The role of the output message. Always `assistant`.
52
65
  #
53
66
  # @param type [Symbol, :message] The type of the output message. Always `message`.
@@ -82,6 +95,24 @@ module OpenAI
82
95
  # @!method self.values
83
96
  # @return [Array<Symbol>]
84
97
  end
98
+
99
+ # The phase of an assistant message.
100
+ #
101
+ # Use `commentary` for an intermediate assistant message and `final_answer` for
102
+ # the final assistant message. For follow-up requests with models like
103
+ # `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages.
104
+ # Omitting it can degrade performance. Not used for user messages.
105
+ #
106
+ # @see OpenAI::Models::Responses::ResponseOutputMessage#phase
107
+ module Phase
108
+ extend OpenAI::Internal::Type::Enum
109
+
110
+ COMMENTARY = :commentary
111
+ FINAL_ANSWER = :final_answer
112
+
113
+ # @!method self.values
114
+ # @return [Array<Symbol>]
115
+ end
85
116
  end
86
117
  end
87
118
  end
@@ -473,7 +473,7 @@ module OpenAI
473
473
  # For ZDR-compatible compaction details, see
474
474
  # [Compaction (advanced)](https://platform.openai.com/docs/guides/conversation-state#compaction-advanced).
475
475
  #
476
- # @overload compact(model:, input: nil, instructions: nil, previous_response_id: nil, request_options: {})
476
+ # @overload compact(model:, input: nil, instructions: nil, previous_response_id: nil, prompt_cache_key: nil, request_options: {})
477
477
  #
478
478
  # @param model [Symbol, String, OpenAI::Models::Responses::ResponseCompactParams::Model, nil] Model ID used to generate the response, like `gpt-5` or `o3`. OpenAI offers a wi
479
479
  #
@@ -483,6 +483,8 @@ module OpenAI
483
483
  #
484
484
  # @param previous_response_id [String, nil] The unique ID of the previous response to the model. Use this to create multi-tu
485
485
  #
486
+ # @param prompt_cache_key [String, nil] A key to use when reading from or writing to the prompt cache.
487
+ #
486
488
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
487
489
  #
488
490
  # @return [OpenAI::Models::Responses::CompactedResponse]
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module OpenAI
4
- VERSION = "0.50.0"
4
+ VERSION = "0.51.0"
5
5
  end
@@ -22,6 +22,19 @@ module OpenAI
22
22
  sig { returns(OpenAI::Responses::EasyInputMessage::Role::OrSymbol) }
23
23
  attr_accessor :role
24
24
 
25
+ # The phase of an assistant message.
26
+ #
27
+ # Use `commentary` for an intermediate assistant message and `final_answer` for
28
+ # the final assistant message. For follow-up requests with models like
29
+ # `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages.
30
+ # Omitting it can degrade performance. Not used for user messages.
31
+ sig do
32
+ returns(
33
+ T.nilable(OpenAI::Responses::EasyInputMessage::Phase::OrSymbol)
34
+ )
35
+ end
36
+ attr_accessor :phase
37
+
25
38
  # The type of the message input. Always `message`.
26
39
  sig do
27
40
  returns(
@@ -44,6 +57,8 @@ module OpenAI
44
57
  params(
45
58
  content: OpenAI::Responses::EasyInputMessage::Content::Variants,
46
59
  role: OpenAI::Responses::EasyInputMessage::Role::OrSymbol,
60
+ phase:
61
+ T.nilable(OpenAI::Responses::EasyInputMessage::Phase::OrSymbol),
47
62
  type: OpenAI::Responses::EasyInputMessage::Type::OrSymbol
48
63
  ).returns(T.attached_class)
49
64
  end
@@ -54,6 +69,13 @@ module OpenAI
54
69
  # The role of the message input. One of `user`, `assistant`, `system`, or
55
70
  # `developer`.
56
71
  role:,
72
+ # The phase of an assistant message.
73
+ #
74
+ # Use `commentary` for an intermediate assistant message and `final_answer` for
75
+ # the final assistant message. For follow-up requests with models like
76
+ # `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages.
77
+ # Omitting it can degrade performance. Not used for user messages.
78
+ phase: nil,
57
79
  # The type of the message input. Always `message`.
58
80
  type: nil
59
81
  )
@@ -64,6 +86,8 @@ module OpenAI
64
86
  {
65
87
  content: OpenAI::Responses::EasyInputMessage::Content::Variants,
66
88
  role: OpenAI::Responses::EasyInputMessage::Role::OrSymbol,
89
+ phase:
90
+ T.nilable(OpenAI::Responses::EasyInputMessage::Phase::OrSymbol),
67
91
  type: OpenAI::Responses::EasyInputMessage::Type::OrSymbol
68
92
  }
69
93
  )
@@ -134,6 +158,41 @@ module OpenAI
134
158
  end
135
159
  end
136
160
 
161
+ # The phase of an assistant message.
162
+ #
163
+ # Use `commentary` for an intermediate assistant message and `final_answer` for
164
+ # the final assistant message. For follow-up requests with models like
165
+ # `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages.
166
+ # Omitting it can degrade performance. Not used for user messages.
167
+ module Phase
168
+ extend OpenAI::Internal::Type::Enum
169
+
170
+ TaggedSymbol =
171
+ T.type_alias do
172
+ T.all(Symbol, OpenAI::Responses::EasyInputMessage::Phase)
173
+ end
174
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
175
+
176
+ COMMENTARY =
177
+ T.let(
178
+ :commentary,
179
+ OpenAI::Responses::EasyInputMessage::Phase::TaggedSymbol
180
+ )
181
+ FINAL_ANSWER =
182
+ T.let(
183
+ :final_answer,
184
+ OpenAI::Responses::EasyInputMessage::Phase::TaggedSymbol
185
+ )
186
+
187
+ sig do
188
+ override.returns(
189
+ T::Array[OpenAI::Responses::EasyInputMessage::Phase::TaggedSymbol]
190
+ )
191
+ end
192
+ def self.values
193
+ end
194
+ end
195
+
137
196
  # The type of the message input. Always `message`.
138
197
  module Type
139
198
  extend OpenAI::Internal::Type::Enum
@@ -54,6 +54,10 @@ module OpenAI
54
54
  sig { returns(T.nilable(String)) }
55
55
  attr_accessor :previous_response_id
56
56
 
57
+ # A key to use when reading from or writing to the prompt cache.
58
+ sig { returns(T.nilable(String)) }
59
+ attr_accessor :prompt_cache_key
60
+
57
61
  sig do
58
62
  params(
59
63
  model:
@@ -69,6 +73,7 @@ module OpenAI
69
73
  ),
70
74
  instructions: T.nilable(String),
71
75
  previous_response_id: T.nilable(String),
76
+ prompt_cache_key: T.nilable(String),
72
77
  request_options: OpenAI::RequestOptions::OrHash
73
78
  ).returns(T.attached_class)
74
79
  end
@@ -91,6 +96,8 @@ module OpenAI
91
96
  # [conversation state](https://platform.openai.com/docs/guides/conversation-state).
92
97
  # Cannot be used in conjunction with `conversation`.
93
98
  previous_response_id: nil,
99
+ # A key to use when reading from or writing to the prompt cache.
100
+ prompt_cache_key: nil,
94
101
  request_options: {}
95
102
  )
96
103
  end
@@ -111,6 +118,7 @@ module OpenAI
111
118
  ),
112
119
  instructions: T.nilable(String),
113
120
  previous_response_id: T.nilable(String),
121
+ prompt_cache_key: T.nilable(String),
114
122
  request_options: OpenAI::RequestOptions
115
123
  }
116
124
  )
@@ -44,6 +44,19 @@ module OpenAI
44
44
  sig { returns(Symbol) }
45
45
  attr_accessor :type
46
46
 
47
+ # The phase of an assistant message.
48
+ #
49
+ # Use `commentary` for an intermediate assistant message and `final_answer` for
50
+ # the final assistant message. For follow-up requests with models like
51
+ # `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages.
52
+ # Omitting it can degrade performance. Not used for user messages.
53
+ sig do
54
+ returns(
55
+ T.nilable(OpenAI::Responses::ResponseOutputMessage::Phase::OrSymbol)
56
+ )
57
+ end
58
+ attr_accessor :phase
59
+
47
60
  # An output message from the model.
48
61
  sig do
49
62
  params(
@@ -56,6 +69,10 @@ module OpenAI
56
69
  )
57
70
  ],
58
71
  status: OpenAI::Responses::ResponseOutputMessage::Status::OrSymbol,
72
+ phase:
73
+ T.nilable(
74
+ OpenAI::Responses::ResponseOutputMessage::Phase::OrSymbol
75
+ ),
59
76
  role: Symbol,
60
77
  type: Symbol
61
78
  ).returns(T.attached_class)
@@ -68,6 +85,13 @@ module OpenAI
68
85
  # The status of the message input. One of `in_progress`, `completed`, or
69
86
  # `incomplete`. Populated when input items are returned via API.
70
87
  status:,
88
+ # The phase of an assistant message.
89
+ #
90
+ # Use `commentary` for an intermediate assistant message and `final_answer` for
91
+ # the final assistant message. For follow-up requests with models like
92
+ # `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages.
93
+ # Omitting it can degrade performance. Not used for user messages.
94
+ phase: nil,
71
95
  # The role of the output message. Always `assistant`.
72
96
  role: :assistant,
73
97
  # The type of the output message. Always `message`.
@@ -89,7 +113,11 @@ module OpenAI
89
113
  role: Symbol,
90
114
  status:
91
115
  OpenAI::Responses::ResponseOutputMessage::Status::OrSymbol,
92
- type: Symbol
116
+ type: Symbol,
117
+ phase:
118
+ T.nilable(
119
+ OpenAI::Responses::ResponseOutputMessage::Phase::OrSymbol
120
+ )
93
121
  }
94
122
  )
95
123
  end
@@ -156,6 +184,43 @@ module OpenAI
156
184
  def self.values
157
185
  end
158
186
  end
187
+
188
+ # The phase of an assistant message.
189
+ #
190
+ # Use `commentary` for an intermediate assistant message and `final_answer` for
191
+ # the final assistant message. For follow-up requests with models like
192
+ # `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages.
193
+ # Omitting it can degrade performance. Not used for user messages.
194
+ module Phase
195
+ extend OpenAI::Internal::Type::Enum
196
+
197
+ TaggedSymbol =
198
+ T.type_alias do
199
+ T.all(Symbol, OpenAI::Responses::ResponseOutputMessage::Phase)
200
+ end
201
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
202
+
203
+ COMMENTARY =
204
+ T.let(
205
+ :commentary,
206
+ OpenAI::Responses::ResponseOutputMessage::Phase::TaggedSymbol
207
+ )
208
+ FINAL_ANSWER =
209
+ T.let(
210
+ :final_answer,
211
+ OpenAI::Responses::ResponseOutputMessage::Phase::TaggedSymbol
212
+ )
213
+
214
+ sig do
215
+ override.returns(
216
+ T::Array[
217
+ OpenAI::Responses::ResponseOutputMessage::Phase::TaggedSymbol
218
+ ]
219
+ )
220
+ end
221
+ def self.values
222
+ end
223
+ end
159
224
  end
160
225
  end
161
226
  end
@@ -981,6 +981,7 @@ module OpenAI
981
981
  ),
982
982
  instructions: T.nilable(String),
983
983
  previous_response_id: T.nilable(String),
984
+ prompt_cache_key: T.nilable(String),
984
985
  request_options: OpenAI::RequestOptions::OrHash
985
986
  ).returns(OpenAI::Responses::CompactedResponse)
986
987
  end
@@ -1003,6 +1004,8 @@ module OpenAI
1003
1004
  # [conversation state](https://platform.openai.com/docs/guides/conversation-state).
1004
1005
  # Cannot be used in conjunction with `conversation`.
1005
1006
  previous_response_id: nil,
1007
+ # A key to use when reading from or writing to the prompt cache.
1008
+ prompt_cache_key: nil,
1006
1009
  request_options: {}
1007
1010
  )
1008
1011
  end
@@ -5,6 +5,7 @@ module OpenAI
5
5
  {
6
6
  content: OpenAI::Models::Responses::EasyInputMessage::content,
7
7
  role: OpenAI::Models::Responses::EasyInputMessage::role,
8
+ phase: OpenAI::Models::Responses::EasyInputMessage::phase?,
8
9
  type: OpenAI::Models::Responses::EasyInputMessage::type_
9
10
  }
10
11
 
@@ -13,6 +14,8 @@ module OpenAI
13
14
 
14
15
  attr_accessor role: OpenAI::Models::Responses::EasyInputMessage::role
15
16
 
17
+ attr_accessor phase: OpenAI::Models::Responses::EasyInputMessage::phase?
18
+
16
19
  attr_reader type: OpenAI::Models::Responses::EasyInputMessage::type_?
17
20
 
18
21
  def type=: (
@@ -22,12 +25,14 @@ module OpenAI
22
25
  def initialize: (
23
26
  content: OpenAI::Models::Responses::EasyInputMessage::content,
24
27
  role: OpenAI::Models::Responses::EasyInputMessage::role,
28
+ ?phase: OpenAI::Models::Responses::EasyInputMessage::phase?,
25
29
  ?type: OpenAI::Models::Responses::EasyInputMessage::type_
26
30
  ) -> void
27
31
 
28
32
  def to_hash: -> {
29
33
  content: OpenAI::Models::Responses::EasyInputMessage::content,
30
34
  role: OpenAI::Models::Responses::EasyInputMessage::role,
35
+ phase: OpenAI::Models::Responses::EasyInputMessage::phase?,
31
36
  type: OpenAI::Models::Responses::EasyInputMessage::type_
32
37
  }
33
38
 
@@ -54,6 +59,17 @@ module OpenAI
54
59
  def self?.values: -> ::Array[OpenAI::Models::Responses::EasyInputMessage::role]
55
60
  end
56
61
 
62
+ type phase = :commentary | :final_answer
63
+
64
+ module Phase
65
+ extend OpenAI::Internal::Type::Enum
66
+
67
+ COMMENTARY: :commentary
68
+ FINAL_ANSWER: :final_answer
69
+
70
+ def self?.values: -> ::Array[OpenAI::Models::Responses::EasyInputMessage::phase]
71
+ end
72
+
57
73
  type type_ = :message
58
74
 
59
75
  module Type
@@ -6,7 +6,8 @@ module OpenAI
6
6
  model: OpenAI::Models::Responses::ResponseCompactParams::model?,
7
7
  input: OpenAI::Models::Responses::ResponseCompactParams::input?,
8
8
  instructions: String?,
9
- previous_response_id: String?
9
+ previous_response_id: String?,
10
+ prompt_cache_key: String?
10
11
  }
11
12
  & OpenAI::Internal::Type::request_parameters
12
13
 
@@ -22,11 +23,14 @@ module OpenAI
22
23
 
23
24
  attr_accessor previous_response_id: String?
24
25
 
26
+ attr_accessor prompt_cache_key: String?
27
+
25
28
  def initialize: (
26
29
  model: OpenAI::Models::Responses::ResponseCompactParams::model?,
27
30
  ?input: OpenAI::Models::Responses::ResponseCompactParams::input?,
28
31
  ?instructions: String?,
29
32
  ?previous_response_id: String?,
33
+ ?prompt_cache_key: String?,
30
34
  ?request_options: OpenAI::request_opts
31
35
  ) -> void
32
36
 
@@ -35,6 +39,7 @@ module OpenAI
35
39
  input: OpenAI::Models::Responses::ResponseCompactParams::input?,
36
40
  instructions: String?,
37
41
  previous_response_id: String?,
42
+ prompt_cache_key: String?,
38
43
  request_options: OpenAI::RequestOptions
39
44
  }
40
45
 
@@ -7,7 +7,8 @@ module OpenAI
7
7
  content: ::Array[OpenAI::Models::Responses::ResponseOutputMessage::content],
8
8
  role: :assistant,
9
9
  status: OpenAI::Models::Responses::ResponseOutputMessage::status,
10
- type: :message
10
+ type: :message,
11
+ phase: OpenAI::Models::Responses::ResponseOutputMessage::phase?
11
12
  }
12
13
 
13
14
  class ResponseOutputMessage < OpenAI::Internal::Type::BaseModel
@@ -21,10 +22,13 @@ module OpenAI
21
22
 
22
23
  attr_accessor type: :message
23
24
 
25
+ attr_accessor phase: OpenAI::Models::Responses::ResponseOutputMessage::phase?
26
+
24
27
  def initialize: (
25
28
  id: String,
26
29
  content: ::Array[OpenAI::Models::Responses::ResponseOutputMessage::content],
27
30
  status: OpenAI::Models::Responses::ResponseOutputMessage::status,
31
+ ?phase: OpenAI::Models::Responses::ResponseOutputMessage::phase?,
28
32
  ?role: :assistant,
29
33
  ?type: :message
30
34
  ) -> void
@@ -34,7 +38,8 @@ module OpenAI
34
38
  content: ::Array[OpenAI::Models::Responses::ResponseOutputMessage::content],
35
39
  role: :assistant,
36
40
  status: OpenAI::Models::Responses::ResponseOutputMessage::status,
37
- type: :message
41
+ type: :message,
42
+ phase: OpenAI::Models::Responses::ResponseOutputMessage::phase?
38
43
  }
39
44
 
40
45
  type content =
@@ -58,6 +63,17 @@ module OpenAI
58
63
 
59
64
  def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseOutputMessage::status]
60
65
  end
66
+
67
+ type phase = :commentary | :final_answer
68
+
69
+ module Phase
70
+ extend OpenAI::Internal::Type::Enum
71
+
72
+ COMMENTARY: :commentary
73
+ FINAL_ANSWER: :final_answer
74
+
75
+ def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseOutputMessage::phase]
76
+ end
61
77
  end
62
78
  end
63
79
  end
@@ -128,6 +128,7 @@ module OpenAI
128
128
  ?input: OpenAI::Models::Responses::ResponseCompactParams::input?,
129
129
  ?instructions: String?,
130
130
  ?previous_response_id: String?,
131
+ ?prompt_cache_key: String?,
131
132
  ?request_options: OpenAI::request_opts
132
133
  ) -> OpenAI::Responses::CompactedResponse
133
134
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: openai
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.50.0
4
+ version: 0.51.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - OpenAI