openai 0.78.0 → 0.80.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 (239) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +99 -0
  3. data/README.md +241 -8
  4. data/SECURITY.md +6 -22
  5. data/azure.md +110 -0
  6. data/bedrock.md +197 -0
  7. data/examples/mtls_custom_http_client.rb +61 -0
  8. data/lib/openai/auth/workload_identity.rb +13 -2
  9. data/lib/openai/auth/workload_identity_auth.rb +2 -1
  10. data/lib/openai/client.rb +29 -6
  11. data/lib/openai/errors.rb +11 -1
  12. data/lib/openai/helpers/streaming/chat_completion_stream.rb +3 -3
  13. data/lib/openai/helpers/streaming/response_stream.rb +5 -6
  14. data/lib/openai/helpers/structured_output/base_model.rb +20 -19
  15. data/lib/openai/helpers/structured_output/json_schema_converter.rb +12 -5
  16. data/lib/openai/http_client.rb +99 -7
  17. data/lib/openai/internal/conversation_cursor_page.rb +5 -6
  18. data/lib/openai/internal/cursor_page.rb +3 -3
  19. data/lib/openai/internal/logging.rb +419 -0
  20. data/lib/openai/internal/next_cursor_page.rb +5 -6
  21. data/lib/openai/internal/page.rb +2 -2
  22. data/lib/openai/internal/provider.rb +7 -1
  23. data/lib/openai/internal/read_io_adapter.rb +42 -18
  24. data/lib/openai/internal/stream.rb +2 -2
  25. data/lib/openai/internal/transport/base_client.rb +137 -37
  26. data/lib/openai/internal/type/array_of.rb +6 -4
  27. data/lib/openai/internal/type/base_model.rb +39 -1
  28. data/lib/openai/internal/type/base_page.rb +19 -2
  29. data/lib/openai/internal/type/base_stream.rb +39 -7
  30. data/lib/openai/internal/type/hash_of.rb +3 -3
  31. data/lib/openai/internal/util.rb +52 -27
  32. data/lib/openai/models/admin/organization/audit_log_list_params.rb +3 -1
  33. data/lib/openai/models/admin/organization/audit_log_list_response.rb +33 -11
  34. data/lib/openai/models/admin/organization/groups/role_list_response.rb +5 -1
  35. data/lib/openai/models/admin/organization/groups/role_retrieve_response.rb +5 -1
  36. data/lib/openai/models/admin/organization/projects/groups/role_list_response.rb +6 -1
  37. data/lib/openai/models/admin/organization/projects/groups/role_retrieve_response.rb +6 -1
  38. data/lib/openai/models/admin/organization/projects/service_account_create_response.rb +3 -1
  39. data/lib/openai/models/admin/organization/projects/users/role_list_response.rb +6 -1
  40. data/lib/openai/models/admin/organization/projects/users/role_retrieve_response.rb +6 -1
  41. data/lib/openai/models/admin/organization/users/role_list_response.rb +5 -1
  42. data/lib/openai/models/admin/organization/users/role_retrieve_response.rb +5 -1
  43. data/lib/openai/models/all_models.rb +5 -0
  44. data/lib/openai/models/audio/transcription_create_params.rb +7 -1
  45. data/lib/openai/models/audio/translation_create_params.rb +7 -1
  46. data/lib/openai/models/beta/beta_mcp_tool_call_error.rb +84 -0
  47. data/lib/openai/models/beta/beta_response.rb +27 -0
  48. data/lib/openai/models/beta/beta_response_input_item.rb +3 -3
  49. data/lib/openai/models/beta/beta_response_item.rb +3 -3
  50. data/lib/openai/models/beta/beta_response_output_item.rb +3 -3
  51. data/lib/openai/models/beta/beta_response_output_item_added_event.rb +5 -2
  52. data/lib/openai/models/beta/beta_response_output_text_annotation_added_event.rb +201 -4
  53. data/lib/openai/models/beta/beta_response_reasoning_item.rb +5 -0
  54. data/lib/openai/models/beta/beta_response_stream_event.rb +1 -1
  55. data/lib/openai/models/beta/beta_responses_client_event.rb +46 -3
  56. data/lib/openai/models/beta/beta_responses_server_event.rb +1143 -63
  57. data/lib/openai/models/beta/beta_web_search_tool.rb +11 -1
  58. data/lib/openai/models/beta/response_compact_params.rb +18 -0
  59. data/lib/openai/models/beta/response_create_params.rb +27 -0
  60. data/lib/openai/models/chat_model.rb +1 -0
  61. data/lib/openai/models/completion_usage.rb +26 -2
  62. data/lib/openai/models/containers/file_create_params.rb +4 -0
  63. data/lib/openai/models/content_provenance_check_create_params.rb +4 -0
  64. data/lib/openai/models/conversations/conversation_item.rb +3 -3
  65. data/lib/openai/models/file_create_params.rb +4 -0
  66. data/lib/openai/models/image_create_variation_params.rb +4 -0
  67. data/lib/openai/models/image_edit_params.rb +8 -0
  68. data/lib/openai/models/model.rb +9 -1
  69. data/lib/openai/models/responses/mcp_tool_call_error.rb +82 -0
  70. data/lib/openai/models/responses/response.rb +9 -0
  71. data/lib/openai/models/responses/response_compact_params.rb +18 -0
  72. data/lib/openai/models/responses/response_create_params.rb +9 -0
  73. data/lib/openai/models/responses/response_input_item.rb +3 -3
  74. data/lib/openai/models/responses/response_item.rb +3 -3
  75. data/lib/openai/models/responses/response_output_item.rb +3 -3
  76. data/lib/openai/models/responses/response_output_item_added_event.rb +5 -2
  77. data/lib/openai/models/responses/response_output_text_annotation_added_event.rb +201 -4
  78. data/lib/openai/models/responses/response_reasoning_item.rb +5 -0
  79. data/lib/openai/models/responses/response_stream_event.rb +1 -1
  80. data/lib/openai/models/responses/responses_client_event.rb +22 -1
  81. data/lib/openai/models/responses/responses_server_event.rb +1107 -56
  82. data/lib/openai/models/responses/web_search_tool.rb +11 -1
  83. data/lib/openai/models/responses_model.rb +5 -0
  84. data/lib/openai/models/skill_create_params.rb +4 -0
  85. data/lib/openai/models/skills/version_create_params.rb +4 -0
  86. data/lib/openai/models/uploads/part_create_params.rb +4 -0
  87. data/lib/openai/models/vector_store_search_response.rb +3 -1
  88. data/lib/openai/models/video_create_character_params.rb +4 -0
  89. data/lib/openai/models/video_create_params.rb +4 -0
  90. data/lib/openai/models/video_edit_params.rb +4 -0
  91. data/lib/openai/models/video_extend_params.rb +4 -0
  92. data/lib/openai/models.rb +9 -1
  93. data/lib/openai/net_http_client.rb +20 -6
  94. data/lib/openai/providers/azure.rb +216 -0
  95. data/lib/openai/providers/bedrock.rb +130 -17
  96. data/lib/openai/resources/admin/organization/projects/groups/roles.rb +1 -1
  97. data/lib/openai/resources/admin/organization/projects/groups.rb +1 -1
  98. data/lib/openai/resources/admin/organization/projects/users/roles.rb +1 -1
  99. data/lib/openai/resources/admin/organization/projects.rb +4 -2
  100. data/lib/openai/resources/audio/transcriptions.rb +8 -0
  101. data/lib/openai/resources/audio/translations.rb +4 -0
  102. data/lib/openai/resources/beta/responses.rb +1 -1
  103. data/lib/openai/resources/beta/threads/runs/steps.rb +2 -2
  104. data/lib/openai/resources/containers/files.rb +4 -0
  105. data/lib/openai/resources/content_provenance_checks.rb +4 -0
  106. data/lib/openai/resources/conversations/items.rb +1 -1
  107. data/lib/openai/resources/evals/runs/output_items.rb +1 -1
  108. data/lib/openai/resources/files.rb +5 -1
  109. data/lib/openai/resources/images.rb +12 -0
  110. data/lib/openai/resources/responses.rb +3 -2
  111. data/lib/openai/resources/skills/versions.rb +4 -0
  112. data/lib/openai/resources/skills.rb +4 -0
  113. data/lib/openai/resources/uploads/parts.rb +4 -0
  114. data/lib/openai/resources/vector_stores/file_batches.rb +1 -1
  115. data/lib/openai/resources/videos.rb +38 -0
  116. data/lib/openai/resources/webhooks.rb +18 -6
  117. data/lib/openai/version.rb +1 -1
  118. data/lib/openai.rb +111 -105
  119. data/rbi/openai/auth.rbi +4 -4
  120. data/rbi/openai/client.rbi +13 -3
  121. data/rbi/openai/errors.rbi +7 -0
  122. data/rbi/openai/helpers/streaming/events.rbi +12 -0
  123. data/rbi/openai/http_client.rbi +62 -2
  124. data/rbi/openai/internal/logging.rbi +192 -0
  125. data/rbi/openai/internal/provider.rbi +3 -0
  126. data/rbi/openai/internal/read_io_adapter.rbi +6 -1
  127. data/rbi/openai/internal/transport/base_client.rbi +61 -7
  128. data/rbi/openai/internal/type/base_model.rbi +24 -1
  129. data/rbi/openai/internal/type/base_page.rbi +13 -2
  130. data/rbi/openai/internal/type/base_stream.rbi +15 -4
  131. data/rbi/openai/internal/util.rbi +26 -2
  132. data/rbi/openai/models/admin/organization/audit_log_list_params.rbi +5 -0
  133. data/rbi/openai/models/admin/organization/audit_log_list_response.rbi +5 -0
  134. data/rbi/openai/models/all_models.rbi +25 -0
  135. data/rbi/openai/models/audio/transcription_create_params.rbi +14 -2
  136. data/rbi/openai/models/audio/translation_create_params.rbi +14 -2
  137. data/rbi/openai/models/beta/beta_mcp_tool_call_error.rbi +122 -0
  138. data/rbi/openai/models/beta/beta_response.rbi +47 -0
  139. data/rbi/openai/models/beta/beta_response_input_item.rbi +27 -3
  140. data/rbi/openai/models/beta/beta_response_item.rbi +27 -3
  141. data/rbi/openai/models/beta/beta_response_output_item.rbi +27 -3
  142. data/rbi/openai/models/beta/beta_response_output_item_added_event.rbi +8 -2
  143. data/rbi/openai/models/beta/beta_response_output_text_annotation_added_event.rbi +297 -5
  144. data/rbi/openai/models/beta/beta_response_reasoning_item.rbi +10 -0
  145. data/rbi/openai/models/beta/beta_response_stream_event.rbi +1 -1
  146. data/rbi/openai/models/beta/beta_responses_client_event.rbi +69 -1
  147. data/rbi/openai/models/beta/beta_responses_server_event.rbi +3945 -54
  148. data/rbi/openai/models/beta/beta_web_search_tool.rbi +15 -0
  149. data/rbi/openai/models/beta/response_compact_params.rbi +30 -0
  150. data/rbi/openai/models/beta/response_create_params.rbi +47 -0
  151. data/rbi/openai/models/chat_model.rbi +2 -0
  152. data/rbi/openai/models/completion_usage.rbi +39 -6
  153. data/rbi/openai/models/containers/file_create_params.rbi +8 -0
  154. data/rbi/openai/models/content_provenance_check_create_params.rbi +8 -0
  155. data/rbi/openai/models/conversations/conversation_item.rbi +12 -3
  156. data/rbi/openai/models/file_create_params.rbi +8 -0
  157. data/rbi/openai/models/image_create_variation_params.rbi +8 -0
  158. data/rbi/openai/models/image_edit_params.rbi +16 -0
  159. data/rbi/openai/models/model.rbi +14 -1
  160. data/rbi/openai/models/responses/mcp_tool_call_error.rbi +120 -0
  161. data/rbi/openai/models/responses/response.rbi +17 -0
  162. data/rbi/openai/models/responses/response_compact_params.rbi +30 -0
  163. data/rbi/openai/models/responses/response_create_params.rbi +17 -0
  164. data/rbi/openai/models/responses/response_input_item.rbi +27 -3
  165. data/rbi/openai/models/responses/response_item.rbi +27 -3
  166. data/rbi/openai/models/responses/response_output_item.rbi +27 -3
  167. data/rbi/openai/models/responses/response_output_item_added_event.rbi +8 -2
  168. data/rbi/openai/models/responses/response_output_text_annotation_added_event.rbi +297 -5
  169. data/rbi/openai/models/responses/response_reasoning_item.rbi +10 -0
  170. data/rbi/openai/models/responses/response_stream_event.rbi +1 -1
  171. data/rbi/openai/models/responses/responses_client_event.rbi +36 -0
  172. data/rbi/openai/models/responses/responses_server_event.rbi +3385 -53
  173. data/rbi/openai/models/responses/web_search_tool.rbi +15 -0
  174. data/rbi/openai/models/responses_model.rbi +25 -0
  175. data/rbi/openai/models/skill_create_params.rbi +8 -0
  176. data/rbi/openai/models/skills/version_create_params.rbi +8 -0
  177. data/rbi/openai/models/uploads/part_create_params.rbi +8 -0
  178. data/rbi/openai/models/video_create_character_params.rbi +8 -0
  179. data/rbi/openai/models/video_create_params.rbi +8 -0
  180. data/rbi/openai/models/video_edit_params.rbi +8 -0
  181. data/rbi/openai/models/video_extend_params.rbi +8 -0
  182. data/rbi/openai/net_http_client.rbi +2 -2
  183. data/rbi/openai/providers.rbi +11 -0
  184. data/rbi/openai/resources/audio/transcriptions.rbi +14 -2
  185. data/rbi/openai/resources/audio/translations.rbi +7 -1
  186. data/rbi/openai/resources/beta/responses.rbi +8 -0
  187. data/rbi/openai/resources/containers/files.rbi +4 -0
  188. data/rbi/openai/resources/content_provenance_checks.rbi +4 -0
  189. data/rbi/openai/resources/files.rbi +5 -1
  190. data/rbi/openai/resources/images.rbi +20 -0
  191. data/rbi/openai/resources/responses.rbi +8 -0
  192. data/rbi/openai/resources/skills/versions.rbi +4 -0
  193. data/rbi/openai/resources/skills.rbi +4 -0
  194. data/rbi/openai/resources/uploads/parts.rbi +4 -0
  195. data/rbi/openai/resources/videos.rbi +16 -0
  196. data/sig/openai/client.rbs +6 -2
  197. data/sig/openai/errors.rbs +5 -0
  198. data/sig/openai/http_client.rbs +37 -2
  199. data/sig/openai/internal/logging.rbs +88 -0
  200. data/sig/openai/internal/provider.rbs +3 -1
  201. data/sig/openai/internal/read_io_adapter.rbs +3 -1
  202. data/sig/openai/internal/transport/base_client.rbs +33 -5
  203. data/sig/openai/internal/type/base_model.rbs +13 -0
  204. data/sig/openai/internal/type/base_page.rbs +8 -1
  205. data/sig/openai/internal/type/base_stream.rbs +8 -2
  206. data/sig/openai/internal/util.rbs +12 -0
  207. data/sig/openai/models/admin/organization/audit_log_list_params.rbs +2 -0
  208. data/sig/openai/models/admin/organization/audit_log_list_response.rbs +2 -0
  209. data/sig/openai/models/all_models.rbs +10 -0
  210. data/sig/openai/models/beta/beta_mcp_tool_call_error.rbs +75 -0
  211. data/sig/openai/models/beta/beta_response.rbs +14 -1
  212. data/sig/openai/models/beta/beta_response_input_item.rbs +4 -4
  213. data/sig/openai/models/beta/beta_response_item.rbs +4 -4
  214. data/sig/openai/models/beta/beta_response_output_item.rbs +4 -4
  215. data/sig/openai/models/beta/beta_response_output_text_annotation_added_event.rbs +149 -4
  216. data/sig/openai/models/beta/beta_responses_client_event.rbs +21 -1
  217. data/sig/openai/models/beta/beta_responses_server_event.rbs +2005 -53
  218. data/sig/openai/models/beta/beta_web_search_tool.rbs +7 -0
  219. data/sig/openai/models/beta/response_compact_params.rbs +12 -0
  220. data/sig/openai/models/beta/response_create_params.rbs +14 -1
  221. data/sig/openai/models/chat_model.rbs +2 -0
  222. data/sig/openai/models/completion_usage.rbs +27 -6
  223. data/sig/openai/models/conversations/conversation_item.rbs +4 -4
  224. data/sig/openai/models/model.rbs +12 -2
  225. data/sig/openai/models/responses/mcp_tool_call_error.rbs +73 -0
  226. data/sig/openai/models/responses/response.rbs +2 -1
  227. data/sig/openai/models/responses/response_compact_params.rbs +12 -0
  228. data/sig/openai/models/responses/response_create_params.rbs +2 -1
  229. data/sig/openai/models/responses/response_input_item.rbs +4 -4
  230. data/sig/openai/models/responses/response_item.rbs +4 -4
  231. data/sig/openai/models/responses/response_output_item.rbs +4 -4
  232. data/sig/openai/models/responses/response_output_text_annotation_added_event.rbs +149 -4
  233. data/sig/openai/models/responses/responses_client_event.rbs +9 -1
  234. data/sig/openai/models/responses/responses_server_event.rbs +1834 -53
  235. data/sig/openai/models/responses/web_search_tool.rbs +7 -0
  236. data/sig/openai/models/responses_model.rbs +10 -0
  237. data/sig/openai/net_http_client.rbs +2 -2
  238. data/sig/openai/providers.rbs +7 -0
  239. metadata +30 -1
@@ -3,7 +3,7 @@ module OpenAI
3
3
  module Responses
4
4
  type response_output_text_annotation_added_event =
5
5
  {
6
- annotation: top,
6
+ annotation: OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent::annotation?,
7
7
  annotation_index: Integer,
8
8
  content_index: Integer,
9
9
  item_id: String,
@@ -13,7 +13,7 @@ module OpenAI
13
13
  }
14
14
 
15
15
  class ResponseOutputTextAnnotationAddedEvent < OpenAI::Internal::Type::BaseModel
16
- attr_accessor annotation: top
16
+ attr_accessor annotation: OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent::annotation?
17
17
 
18
18
  attr_accessor annotation_index: Integer
19
19
 
@@ -28,7 +28,7 @@ module OpenAI
28
28
  attr_accessor type: :"response.output_text.annotation.added"
29
29
 
30
30
  def initialize: (
31
- annotation: top,
31
+ annotation: OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent::annotation?,
32
32
  annotation_index: Integer,
33
33
  content_index: Integer,
34
34
  item_id: String,
@@ -38,7 +38,7 @@ module OpenAI
38
38
  ) -> void
39
39
 
40
40
  def to_hash: -> {
41
- annotation: top,
41
+ annotation: OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent::annotation?,
42
42
  annotation_index: Integer,
43
43
  content_index: Integer,
44
44
  item_id: String,
@@ -46,6 +46,151 @@ module OpenAI
46
46
  sequence_number: Integer,
47
47
  type: :"response.output_text.annotation.added"
48
48
  }
49
+
50
+ type annotation =
51
+ OpenAI::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::FileCitation
52
+ | OpenAI::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::URLCitation
53
+ | OpenAI::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::ContainerFileCitation
54
+ | OpenAI::Responses::ResponseOutputTextAnnotationAddedEvent::Annotation::FilePath
55
+
56
+ module Annotation
57
+ extend OpenAI::Internal::Type::Union
58
+
59
+ type file_citation =
60
+ {
61
+ file_id: String,
62
+ filename: String,
63
+ index: Integer,
64
+ type: :file_citation
65
+ }
66
+
67
+ class FileCitation < OpenAI::Internal::Type::BaseModel
68
+ attr_accessor file_id: String
69
+
70
+ attr_accessor filename: String
71
+
72
+ attr_accessor index: Integer
73
+
74
+ attr_accessor type: :file_citation
75
+
76
+ def initialize: (
77
+ file_id: String,
78
+ filename: String,
79
+ index: Integer,
80
+ ?type: :file_citation
81
+ ) -> void
82
+
83
+ def to_hash: -> {
84
+ file_id: String,
85
+ filename: String,
86
+ index: Integer,
87
+ type: :file_citation
88
+ }
89
+ end
90
+
91
+ type url_citation =
92
+ {
93
+ end_index: Integer,
94
+ start_index: Integer,
95
+ title: String,
96
+ type: :url_citation,
97
+ url: String
98
+ }
99
+
100
+ class URLCitation < OpenAI::Internal::Type::BaseModel
101
+ attr_accessor end_index: Integer
102
+
103
+ attr_accessor start_index: Integer
104
+
105
+ attr_accessor title: String
106
+
107
+ attr_accessor type: :url_citation
108
+
109
+ attr_accessor url: String
110
+
111
+ def initialize: (
112
+ end_index: Integer,
113
+ start_index: Integer,
114
+ title: String,
115
+ url: String,
116
+ ?type: :url_citation
117
+ ) -> void
118
+
119
+ def to_hash: -> {
120
+ end_index: Integer,
121
+ start_index: Integer,
122
+ title: String,
123
+ type: :url_citation,
124
+ url: String
125
+ }
126
+ end
127
+
128
+ type container_file_citation =
129
+ {
130
+ container_id: String,
131
+ end_index: Integer,
132
+ file_id: String,
133
+ filename: String,
134
+ start_index: Integer,
135
+ type: :container_file_citation
136
+ }
137
+
138
+ class ContainerFileCitation < OpenAI::Internal::Type::BaseModel
139
+ attr_accessor container_id: String
140
+
141
+ attr_accessor end_index: Integer
142
+
143
+ attr_accessor file_id: String
144
+
145
+ attr_accessor filename: String
146
+
147
+ attr_accessor start_index: Integer
148
+
149
+ attr_accessor type: :container_file_citation
150
+
151
+ def initialize: (
152
+ container_id: String,
153
+ end_index: Integer,
154
+ file_id: String,
155
+ filename: String,
156
+ start_index: Integer,
157
+ ?type: :container_file_citation
158
+ ) -> void
159
+
160
+ def to_hash: -> {
161
+ container_id: String,
162
+ end_index: Integer,
163
+ file_id: String,
164
+ filename: String,
165
+ start_index: Integer,
166
+ type: :container_file_citation
167
+ }
168
+ end
169
+
170
+ type file_path = { file_id: String, index: Integer, type: :file_path }
171
+
172
+ class FilePath < OpenAI::Internal::Type::BaseModel
173
+ attr_accessor file_id: String
174
+
175
+ attr_accessor index: Integer
176
+
177
+ attr_accessor type: :file_path
178
+
179
+ def initialize: (
180
+ file_id: String,
181
+ index: Integer,
182
+ ?type: :file_path
183
+ ) -> void
184
+
185
+ def to_hash: -> {
186
+ file_id: String,
187
+ index: Integer,
188
+ type: :file_path
189
+ }
190
+ end
191
+
192
+ def self?.variants: -> ::Array[OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent::annotation]
193
+ end
49
194
  end
50
195
  end
51
196
  end
@@ -26,6 +26,7 @@ module OpenAI
26
26
  service_tier: OpenAI::Models::Responses::ResponsesClientEvent::service_tier?,
27
27
  store: bool?,
28
28
  stream: bool?,
29
+ stream_id: String,
29
30
  stream_options: OpenAI::Responses::ResponsesClientEvent::StreamOptions?,
30
31
  temperature: Float?,
31
32
  text: OpenAI::Responses::ResponseTextConfig,
@@ -96,6 +97,10 @@ module OpenAI
96
97
 
97
98
  attr_accessor stream: bool?
98
99
 
100
+ attr_reader stream_id: String?
101
+
102
+ def stream_id=: (String) -> String
103
+
99
104
  attr_accessor stream_options: OpenAI::Responses::ResponsesClientEvent::StreamOptions?
100
105
 
101
106
  attr_accessor temperature: Float?
@@ -151,6 +156,7 @@ module OpenAI
151
156
  ?service_tier: OpenAI::Models::Responses::ResponsesClientEvent::service_tier?,
152
157
  ?store: bool?,
153
158
  ?stream: bool?,
159
+ ?stream_id: String,
154
160
  ?stream_options: OpenAI::Responses::ResponsesClientEvent::StreamOptions?,
155
161
  ?temperature: Float?,
156
162
  ?text: OpenAI::Responses::ResponseTextConfig,
@@ -187,6 +193,7 @@ module OpenAI
187
193
  service_tier: OpenAI::Models::Responses::ResponsesClientEvent::service_tier?,
188
194
  store: bool?,
189
195
  stream: bool?,
196
+ stream_id: String,
190
197
  stream_options: OpenAI::Responses::ResponsesClientEvent::StreamOptions?,
191
198
  temperature: Float?,
192
199
  text: OpenAI::Responses::ResponseTextConfig,
@@ -390,7 +397,7 @@ module OpenAI
390
397
  end
391
398
 
392
399
  type service_tier =
393
- :auto | :default | :flex | :scale | :priority | :fast
400
+ :auto | :default | :flex | :scale | :priority | :fast | :ultrafast
394
401
 
395
402
  module ServiceTier
396
403
  extend OpenAI::Internal::Type::Enum
@@ -401,6 +408,7 @@ module OpenAI
401
408
  SCALE: :scale
402
409
  PRIORITY: :priority
403
410
  FAST: :fast
411
+ ULTRAFAST: :ultrafast
404
412
 
405
413
  def self?.values: -> ::Array[OpenAI::Models::Responses::ResponsesClientEvent::service_tier]
406
414
  end