openai 0.84.0 → 0.85.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 (267) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +30 -0
  3. data/README.md +1 -1
  4. data/SECURITY.md +10 -0
  5. data/docs/architecture/security-model.md +267 -0
  6. data/lib/openai/client.rb +4 -0
  7. data/lib/openai/helpers/streaming/chat_completion_stream.rb +17 -8
  8. data/lib/openai/helpers/streaming/response_stream.rb +13 -8
  9. data/lib/openai/helpers/structured_output/array_of.rb +2 -2
  10. data/lib/openai/helpers/structured_output/base_model.rb +19 -5
  11. data/lib/openai/helpers/structured_output/chat_completion_parser.rb +6 -3
  12. data/lib/openai/helpers/structured_output/json_schema_converter.rb +34 -11
  13. data/lib/openai/internal/vector_store_file_uploader.rb +1 -1
  14. data/lib/openai/models/admin/organization/usage_costs_params.rb +1 -1
  15. data/lib/openai/models/batch.rb +2 -2
  16. data/lib/openai/models/beta/beta_custom_tool.rb +13 -1
  17. data/lib/openai/models/beta/beta_function_tool.rb +8 -1
  18. data/lib/openai/models/beta/beta_namespace_tool.rb +10 -1
  19. data/lib/openai/models/beta/beta_response.rb +20 -9
  20. data/lib/openai/models/beta/beta_response_configuration_update_item.rb +103 -0
  21. data/lib/openai/models/beta/beta_response_configuration_update_item_param.rb +104 -0
  22. data/lib/openai/models/beta/beta_response_custom_tool_call.rb +9 -1
  23. data/lib/openai/models/beta/beta_response_custom_tool_call_item.rb +3 -1
  24. data/lib/openai/models/beta/beta_response_error.rb +96 -1
  25. data/lib/openai/models/beta/beta_response_function_tool_call.rb +9 -1
  26. data/lib/openai/models/beta/beta_response_function_tool_call_item.rb +3 -1
  27. data/lib/openai/models/beta/beta_response_incomplete_event.rb +4 -0
  28. data/lib/openai/models/beta/beta_response_inject_event.rb +2 -2
  29. data/lib/openai/models/beta/beta_response_inject_failed_event.rb +2 -2
  30. data/lib/openai/models/beta/beta_response_input_item.rb +6 -1
  31. data/lib/openai/models/beta/beta_response_item.rb +5 -1
  32. data/lib/openai/models/beta/beta_response_steer_accepted_event.rb +81 -0
  33. data/lib/openai/models/beta/beta_response_steer_error_code.rb +61 -0
  34. data/lib/openai/models/beta/beta_response_steer_event.rb +75 -0
  35. data/lib/openai/models/beta/beta_response_steer_failed_event.rb +151 -0
  36. data/lib/openai/models/beta/beta_response_steer_input.rb +360 -0
  37. data/lib/openai/models/beta/beta_response_steer_input_content.rb +28 -0
  38. data/lib/openai/models/beta/beta_response_steer_pending_event.rb +113 -0
  39. data/lib/openai/models/beta/beta_response_steer_pending_reason.rb +26 -0
  40. data/lib/openai/models/beta/beta_response_steer_required_input.rb +215 -0
  41. data/lib/openai/models/beta/beta_response_stream_event.rb +4 -0
  42. data/lib/openai/models/beta/beta_responses_client_event.rb +40 -7
  43. data/lib/openai/models/beta/beta_responses_server_event.rb +164 -2
  44. data/lib/openai/models/beta/response_compact_params.rb +9 -6
  45. data/lib/openai/models/beta/response_create_params.rb +9 -6
  46. data/lib/openai/models/beta/responses/beta_response_item_list.rb +2 -2
  47. data/lib/openai/models/beta/responses/input_token_count_params.rb +3 -3
  48. data/lib/openai/models/chat/completion_create_params.rb +4 -4
  49. data/lib/openai/models/chat_model.rb +1 -0
  50. data/lib/openai/models/conversations/conversation_create_params.rb +2 -2
  51. data/lib/openai/models/conversations/conversation_item.rb +5 -1
  52. data/lib/openai/models/conversations/conversation_item_list.rb +2 -2
  53. data/lib/openai/models/conversations/item_create_params.rb +2 -2
  54. data/lib/openai/models/error_object.rb +90 -1
  55. data/lib/openai/models/eval_create_response.rb +1 -1
  56. data/lib/openai/models/eval_list_response.rb +1 -1
  57. data/lib/openai/models/eval_retrieve_response.rb +1 -1
  58. data/lib/openai/models/eval_update_response.rb +1 -1
  59. data/lib/openai/models/evals/create_eval_completions_run_data_source.rb +2 -2
  60. data/lib/openai/models/responses/custom_tool.rb +13 -1
  61. data/lib/openai/models/responses/function_tool.rb +8 -1
  62. data/lib/openai/models/responses/input_token_count_params.rb +3 -3
  63. data/lib/openai/models/responses/namespace_tool.rb +10 -1
  64. data/lib/openai/models/responses/response.rb +16 -8
  65. data/lib/openai/models/responses/response_compact_params.rb +9 -6
  66. data/lib/openai/models/responses/response_configuration_update_item.rb +56 -0
  67. data/lib/openai/models/responses/response_configuration_update_item_param.rb +57 -0
  68. data/lib/openai/models/responses/response_create_params.rb +5 -5
  69. data/lib/openai/models/responses/response_custom_tool_call.rb +9 -1
  70. data/lib/openai/models/responses/response_custom_tool_call_item.rb +3 -1
  71. data/lib/openai/models/responses/response_error.rb +96 -1
  72. data/lib/openai/models/responses/response_function_tool_call.rb +9 -1
  73. data/lib/openai/models/responses/response_function_tool_call_item.rb +3 -1
  74. data/lib/openai/models/responses/response_incomplete_event.rb +4 -0
  75. data/lib/openai/models/responses/response_input_item.rb +6 -1
  76. data/lib/openai/models/responses/response_item.rb +5 -1
  77. data/lib/openai/models/responses/response_item_list.rb +2 -2
  78. data/lib/openai/models/responses/response_steer_accepted_event.rb +79 -0
  79. data/lib/openai/models/responses/response_steer_error_code.rb +59 -0
  80. data/lib/openai/models/responses/response_steer_event.rb +73 -0
  81. data/lib/openai/models/responses/response_steer_failed_event.rb +149 -0
  82. data/lib/openai/models/responses/response_steer_input.rb +304 -0
  83. data/lib/openai/models/responses/response_steer_input_content.rb +26 -0
  84. data/lib/openai/models/responses/response_steer_pending_event.rb +111 -0
  85. data/lib/openai/models/responses/response_steer_pending_reason.rb +24 -0
  86. data/lib/openai/models/responses/response_steer_required_input.rb +213 -0
  87. data/lib/openai/models/responses/response_stream_event.rb +4 -0
  88. data/lib/openai/models/responses/responses_client_event.rb +872 -769
  89. data/lib/openai/models/responses/responses_server_event.rb +162 -2
  90. data/lib/openai/models/safety/alert_retrieve_params.rb +24 -0
  91. data/lib/openai/models/safety/safety_alert.rb +96 -0
  92. data/lib/openai/models/video_create_error.rb +93 -1
  93. data/lib/openai/models/webhooks/safety_alert_created_webhook_event.rb +63 -0
  94. data/lib/openai/models/webhooks/safety_org_alert_created_webhook_event.rb +63 -0
  95. data/lib/openai/models/webhooks/unwrap_webhook_event.rb +7 -1
  96. data/lib/openai/models.rb +2 -0
  97. data/lib/openai/net_http_client.rb +1 -1
  98. data/lib/openai/providers/bedrock.rb +20 -12
  99. data/lib/openai/resources/beta/responses/input_items.rb +1 -1
  100. data/lib/openai/resources/beta/responses/input_tokens.rb +1 -1
  101. data/lib/openai/resources/beta/responses.rb +6 -6
  102. data/lib/openai/resources/chat/completions.rb +2 -2
  103. data/lib/openai/resources/conversations/items.rb +3 -3
  104. data/lib/openai/resources/conversations.rb +1 -1
  105. data/lib/openai/resources/responses/input_items.rb +1 -1
  106. data/lib/openai/resources/responses/input_tokens.rb +1 -1
  107. data/lib/openai/resources/responses.rb +6 -6
  108. data/lib/openai/resources/safety/alerts.rb +37 -0
  109. data/lib/openai/resources/safety.rb +18 -0
  110. data/lib/openai/resources/webhooks.rb +1 -1
  111. data/lib/openai/version.rb +1 -1
  112. data/lib/openai.rb +28 -0
  113. data/rbi/openai/client.rbi +3 -0
  114. data/rbi/openai/models/admin/organization/usage_costs_params.rbi +2 -2
  115. data/rbi/openai/models/batch.rbi +2 -2
  116. data/rbi/openai/models/beta/beta_custom_tool.rbi +15 -0
  117. data/rbi/openai/models/beta/beta_function_tool.rbi +11 -0
  118. data/rbi/openai/models/beta/beta_namespace_tool.rbi +15 -0
  119. data/rbi/openai/models/beta/beta_response.rbi +14 -6
  120. data/rbi/openai/models/beta/beta_response_configuration_update_item.rbi +200 -0
  121. data/rbi/openai/models/beta/beta_response_configuration_update_item_param.rbi +207 -0
  122. data/rbi/openai/models/beta/beta_response_custom_tool_call.rbi +13 -0
  123. data/rbi/openai/models/beta/beta_response_custom_tool_call_item.rbi +6 -0
  124. data/rbi/openai/models/beta/beta_response_error.rbi +161 -3
  125. data/rbi/openai/models/beta/beta_response_function_tool_call.rbi +13 -0
  126. data/rbi/openai/models/beta/beta_response_function_tool_call_item.rbi +6 -0
  127. data/rbi/openai/models/beta/beta_response_incomplete_event.rbi +4 -0
  128. data/rbi/openai/models/beta/beta_response_inject_event.rbi +3 -0
  129. data/rbi/openai/models/beta/beta_response_inject_failed_event.rbi +3 -0
  130. data/rbi/openai/models/beta/beta_response_input_item.rbi +1 -0
  131. data/rbi/openai/models/beta/beta_response_item.rbi +1 -0
  132. data/rbi/openai/models/beta/beta_response_steer_accepted_event.rbi +148 -0
  133. data/rbi/openai/models/beta/beta_response_steer_error_code.rbi +65 -0
  134. data/rbi/openai/models/beta/beta_response_steer_event.rbi +118 -0
  135. data/rbi/openai/models/beta/beta_response_steer_failed_event.rbi +267 -0
  136. data/rbi/openai/models/beta/beta_response_steer_input.rbi +602 -0
  137. data/rbi/openai/models/beta/beta_response_steer_input_content.rbi +31 -0
  138. data/rbi/openai/models/beta/beta_response_steer_pending_event.rbi +222 -0
  139. data/rbi/openai/models/beta/beta_response_steer_pending_reason.rbi +35 -0
  140. data/rbi/openai/models/beta/beta_response_steer_required_input.rbi +379 -0
  141. data/rbi/openai/models/beta/beta_responses_client_event.rbi +8 -3
  142. data/rbi/openai/models/beta/beta_responses_server_event.rbi +206 -3
  143. data/rbi/openai/models/beta/response_compact_params.rbi +4 -3
  144. data/rbi/openai/models/beta/response_create_params.rbi +4 -3
  145. data/rbi/openai/models/beta/responses/beta_response_item_list.rbi +1 -0
  146. data/rbi/openai/models/chat/completion_create_params.rbi +3 -3
  147. data/rbi/openai/models/chat_model.rbi +1 -0
  148. data/rbi/openai/models/conversations/conversation_create_params.rbi +3 -0
  149. data/rbi/openai/models/conversations/conversation_item.rbi +1 -0
  150. data/rbi/openai/models/conversations/conversation_item_list.rbi +1 -0
  151. data/rbi/openai/models/conversations/item_create_params.rbi +3 -0
  152. data/rbi/openai/models/error_object.rbi +156 -3
  153. data/rbi/openai/models/eval_create_response.rbi +1 -1
  154. data/rbi/openai/models/eval_list_response.rbi +1 -1
  155. data/rbi/openai/models/eval_retrieve_response.rbi +1 -1
  156. data/rbi/openai/models/eval_update_response.rbi +1 -1
  157. data/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi +2 -2
  158. data/rbi/openai/models/responses/custom_tool.rbi +15 -0
  159. data/rbi/openai/models/responses/function_tool.rbi +11 -0
  160. data/rbi/openai/models/responses/namespace_tool.rbi +15 -0
  161. data/rbi/openai/models/responses/response.rbi +12 -5
  162. data/rbi/openai/models/responses/response_compact_params.rbi +4 -3
  163. data/rbi/openai/models/responses/response_configuration_update_item.rbi +112 -0
  164. data/rbi/openai/models/responses/response_configuration_update_item_param.rbi +117 -0
  165. data/rbi/openai/models/responses/response_create_params.rbi +2 -2
  166. data/rbi/openai/models/responses/response_custom_tool_call.rbi +13 -0
  167. data/rbi/openai/models/responses/response_custom_tool_call_item.rbi +6 -0
  168. data/rbi/openai/models/responses/response_error.rbi +161 -3
  169. data/rbi/openai/models/responses/response_function_tool_call.rbi +13 -0
  170. data/rbi/openai/models/responses/response_function_tool_call_item.rbi +6 -0
  171. data/rbi/openai/models/responses/response_incomplete_event.rbi +4 -0
  172. data/rbi/openai/models/responses/response_input_item.rbi +1 -0
  173. data/rbi/openai/models/responses/response_item.rbi +1 -0
  174. data/rbi/openai/models/responses/response_item_list.rbi +1 -0
  175. data/rbi/openai/models/responses/response_steer_accepted_event.rbi +146 -0
  176. data/rbi/openai/models/responses/response_steer_error_code.rbi +63 -0
  177. data/rbi/openai/models/responses/response_steer_event.rbi +119 -0
  178. data/rbi/openai/models/responses/response_steer_failed_event.rbi +268 -0
  179. data/rbi/openai/models/responses/response_steer_input.rbi +474 -0
  180. data/rbi/openai/models/responses/response_steer_input_content.rbi +29 -0
  181. data/rbi/openai/models/responses/response_steer_pending_event.rbi +220 -0
  182. data/rbi/openai/models/responses/response_steer_pending_reason.rbi +33 -0
  183. data/rbi/openai/models/responses/response_steer_required_input.rbi +377 -0
  184. data/rbi/openai/models/responses/responses_client_event.rbi +1204 -1036
  185. data/rbi/openai/models/responses/responses_server_event.rbi +202 -3
  186. data/rbi/openai/models/safety/alert_retrieve_params.rbi +55 -0
  187. data/rbi/openai/models/safety/safety_alert.rbi +147 -0
  188. data/rbi/openai/models/video_create_error.rbi +149 -3
  189. data/rbi/openai/models/webhooks/safety_alert_created_webhook_event.rbi +130 -0
  190. data/rbi/openai/models/webhooks/safety_org_alert_created_webhook_event.rbi +130 -0
  191. data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +3 -1
  192. data/rbi/openai/models.rbi +2 -0
  193. data/rbi/openai/resources/admin/organization/usage.rbi +1 -1
  194. data/rbi/openai/resources/beta/responses.rbi +3 -3
  195. data/rbi/openai/resources/chat/completions.rbi +2 -2
  196. data/rbi/openai/resources/conversations/items.rbi +1 -0
  197. data/rbi/openai/resources/conversations.rbi +1 -0
  198. data/rbi/openai/resources/responses.rbi +3 -3
  199. data/rbi/openai/resources/safety/alerts.rbi +30 -0
  200. data/rbi/openai/resources/safety.rbi +18 -0
  201. data/rbi/openai/resources/webhooks.rbi +3 -1
  202. data/sig/openai/client.rbs +2 -0
  203. data/sig/openai/models/beta/beta_custom_tool.rbs +7 -0
  204. data/sig/openai/models/beta/beta_function_tool.rbs +7 -0
  205. data/sig/openai/models/beta/beta_namespace_tool.rbs +7 -0
  206. data/sig/openai/models/beta/beta_response.rbs +6 -2
  207. data/sig/openai/models/beta/beta_response_configuration_update_item.rbs +91 -0
  208. data/sig/openai/models/beta/beta_response_configuration_update_item_param.rbs +87 -0
  209. data/sig/openai/models/beta/beta_response_custom_tool_call.rbs +7 -0
  210. data/sig/openai/models/beta/beta_response_custom_tool_call_item.rbs +3 -0
  211. data/sig/openai/models/beta/beta_response_error.rbs +82 -3
  212. data/sig/openai/models/beta/beta_response_function_tool_call.rbs +7 -0
  213. data/sig/openai/models/beta/beta_response_function_tool_call_item.rbs +3 -0
  214. data/sig/openai/models/beta/beta_response_input_item.rbs +1 -0
  215. data/sig/openai/models/beta/beta_response_item.rbs +1 -0
  216. data/sig/openai/models/beta/beta_response_steer_accepted_event.rbs +53 -0
  217. data/sig/openai/models/beta/beta_response_steer_error_code.rbs +31 -0
  218. data/sig/openai/models/beta/beta_response_steer_event.rbs +34 -0
  219. data/sig/openai/models/beta/beta_response_steer_failed_event.rbs +102 -0
  220. data/sig/openai/models/beta/beta_response_steer_input.rbs +214 -0
  221. data/sig/openai/models/beta/beta_response_steer_input_content.rbs +18 -0
  222. data/sig/openai/models/beta/beta_response_steer_pending_event.rbs +63 -0
  223. data/sig/openai/models/beta/beta_response_steer_pending_reason.rbs +16 -0
  224. data/sig/openai/models/beta/beta_response_steer_required_input.rbs +161 -0
  225. data/sig/openai/models/beta/beta_responses_client_event.rbs +4 -1
  226. data/sig/openai/models/beta/beta_responses_server_event.rbs +80 -3
  227. data/sig/openai/models/beta/response_compact_params.rbs +3 -1
  228. data/sig/openai/models/beta/response_create_params.rbs +3 -1
  229. data/sig/openai/models/chat_model.rbs +3 -1
  230. data/sig/openai/models/conversations/conversation_item.rbs +1 -0
  231. data/sig/openai/models/error_object.rbs +82 -3
  232. data/sig/openai/models/responses/custom_tool.rbs +7 -0
  233. data/sig/openai/models/responses/function_tool.rbs +7 -0
  234. data/sig/openai/models/responses/namespace_tool.rbs +7 -0
  235. data/sig/openai/models/responses/response.rbs +3 -1
  236. data/sig/openai/models/responses/response_compact_params.rbs +3 -1
  237. data/sig/openai/models/responses/response_configuration_update_item.rbs +46 -0
  238. data/sig/openai/models/responses/response_configuration_update_item_param.rbs +46 -0
  239. data/sig/openai/models/responses/response_custom_tool_call.rbs +7 -0
  240. data/sig/openai/models/responses/response_custom_tool_call_item.rbs +3 -0
  241. data/sig/openai/models/responses/response_error.rbs +79 -3
  242. data/sig/openai/models/responses/response_function_tool_call.rbs +7 -0
  243. data/sig/openai/models/responses/response_function_tool_call_item.rbs +3 -0
  244. data/sig/openai/models/responses/response_input_item.rbs +1 -0
  245. data/sig/openai/models/responses/response_item.rbs +1 -0
  246. data/sig/openai/models/responses/response_steer_accepted_event.rbs +51 -0
  247. data/sig/openai/models/responses/response_steer_error_code.rbs +29 -0
  248. data/sig/openai/models/responses/response_steer_event.rbs +32 -0
  249. data/sig/openai/models/responses/response_steer_failed_event.rbs +100 -0
  250. data/sig/openai/models/responses/response_steer_input.rbs +182 -0
  251. data/sig/openai/models/responses/response_steer_input_content.rbs +16 -0
  252. data/sig/openai/models/responses/response_steer_pending_event.rbs +61 -0
  253. data/sig/openai/models/responses/response_steer_pending_reason.rbs +13 -0
  254. data/sig/openai/models/responses/response_steer_required_input.rbs +159 -0
  255. data/sig/openai/models/responses/responses_client_event.rbs +355 -344
  256. data/sig/openai/models/responses/responses_server_event.rbs +80 -3
  257. data/sig/openai/models/safety/alert_retrieve_params.rbs +22 -0
  258. data/sig/openai/models/safety/safety_alert.rbs +81 -0
  259. data/sig/openai/models/video_create_error.rbs +87 -3
  260. data/sig/openai/models/webhooks/safety_alert_created_webhook_event.rbs +52 -0
  261. data/sig/openai/models/webhooks/safety_org_alert_created_webhook_event.rbs +52 -0
  262. data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +2 -0
  263. data/sig/openai/models.rbs +2 -0
  264. data/sig/openai/resources/safety/alerts.rbs +14 -0
  265. data/sig/openai/resources/safety.rbs +9 -0
  266. data/sig/openai/resources/webhooks.rbs +3 -1
  267. metadata +86 -1
@@ -0,0 +1,87 @@
1
+ module OpenAI
2
+ module Models
3
+ class BetaResponseConfigurationUpdateItemParam = Beta::BetaResponseConfigurationUpdateItemParam
4
+
5
+ module Beta
6
+ type beta_response_configuration_update_item_param =
7
+ {
8
+ type: :configuration_update,
9
+ id: String?,
10
+ agent: OpenAI::Beta::BetaResponseConfigurationUpdateItemParam::Agent?,
11
+ reasoning: OpenAI::Beta::BetaResponseConfigurationUpdateItemParam::Reasoning
12
+ }
13
+
14
+ class BetaResponseConfigurationUpdateItemParam < OpenAI::Internal::Type::BaseModel
15
+ attr_accessor type: :configuration_update
16
+
17
+ attr_accessor id: String?
18
+
19
+ attr_accessor agent: OpenAI::Beta::BetaResponseConfigurationUpdateItemParam::Agent?
20
+
21
+ attr_reader reasoning: OpenAI::Beta::BetaResponseConfigurationUpdateItemParam::Reasoning?
22
+
23
+ def reasoning=: (
24
+ OpenAI::Beta::BetaResponseConfigurationUpdateItemParam::Reasoning
25
+ ) -> OpenAI::Beta::BetaResponseConfigurationUpdateItemParam::Reasoning
26
+
27
+ def initialize: (
28
+ ?id: String?,
29
+ ?agent: OpenAI::Beta::BetaResponseConfigurationUpdateItemParam::Agent?,
30
+ ?reasoning: OpenAI::Beta::BetaResponseConfigurationUpdateItemParam::Reasoning,
31
+ ?type: :configuration_update
32
+ ) -> void
33
+
34
+ def to_hash: -> {
35
+ type: :configuration_update,
36
+ id: String?,
37
+ agent: OpenAI::Beta::BetaResponseConfigurationUpdateItemParam::Agent?,
38
+ reasoning: OpenAI::Beta::BetaResponseConfigurationUpdateItemParam::Reasoning
39
+ }
40
+
41
+ type agent = { agent_name: String }
42
+
43
+ class Agent < OpenAI::Internal::Type::BaseModel
44
+ attr_accessor agent_name: String
45
+
46
+ def initialize: (agent_name: String) -> void
47
+
48
+ def to_hash: -> { agent_name: String }
49
+ end
50
+
51
+ type reasoning =
52
+ {
53
+ effort: OpenAI::Models::Beta::BetaResponseConfigurationUpdateItemParam::Reasoning::effort?
54
+ }
55
+
56
+ class Reasoning < OpenAI::Internal::Type::BaseModel
57
+ attr_accessor effort: OpenAI::Models::Beta::BetaResponseConfigurationUpdateItemParam::Reasoning::effort?
58
+
59
+ def initialize: (
60
+ ?effort: OpenAI::Models::Beta::BetaResponseConfigurationUpdateItemParam::Reasoning::effort?
61
+ ) -> void
62
+
63
+ def to_hash: -> {
64
+ effort: OpenAI::Models::Beta::BetaResponseConfigurationUpdateItemParam::Reasoning::effort?
65
+ }
66
+
67
+ type effort =
68
+ :none | :minimal | :low | :medium | :high | :xhigh | :max
69
+
70
+ module Effort
71
+ extend OpenAI::Internal::Type::Enum
72
+
73
+ NONE: :none
74
+ MINIMAL: :minimal
75
+ LOW: :low
76
+ MEDIUM: :medium
77
+ HIGH: :high
78
+ XHIGH: :xhigh
79
+ MAX: :max
80
+
81
+ def self?.values: -> ::Array[OpenAI::Models::Beta::BetaResponseConfigurationUpdateItemParam::Reasoning::effort]
82
+ end
83
+ end
84
+ end
85
+ end
86
+ end
87
+ end
@@ -11,6 +11,7 @@ module OpenAI
11
11
  type: :custom_tool_call,
12
12
  id: String,
13
13
  agent: OpenAI::Beta::BetaResponseCustomToolCall::Agent?,
14
+ async: bool,
14
15
  caller_: OpenAI::Models::Beta::BetaResponseCustomToolCall::caller_?,
15
16
  namespace: String
16
17
  }
@@ -30,6 +31,10 @@ module OpenAI
30
31
 
31
32
  attr_accessor agent: OpenAI::Beta::BetaResponseCustomToolCall::Agent?
32
33
 
34
+ attr_reader async: bool?
35
+
36
+ def async=: (bool) -> bool
37
+
33
38
  attr_accessor caller_: OpenAI::Models::Beta::BetaResponseCustomToolCall::caller_?
34
39
 
35
40
  attr_reader namespace: String?
@@ -42,6 +47,7 @@ module OpenAI
42
47
  name: String,
43
48
  ?id: String,
44
49
  ?agent: OpenAI::Beta::BetaResponseCustomToolCall::Agent?,
50
+ ?async: bool,
45
51
  ?caller_: OpenAI::Models::Beta::BetaResponseCustomToolCall::caller_?,
46
52
  ?namespace: String,
47
53
  ?type: :custom_tool_call
@@ -54,6 +60,7 @@ module OpenAI
54
60
  type: :custom_tool_call,
55
61
  id: String,
56
62
  agent: OpenAI::Beta::BetaResponseCustomToolCall::Agent?,
63
+ async: bool,
57
64
  caller_: OpenAI::Models::Beta::BetaResponseCustomToolCall::caller_?,
58
65
  namespace: String
59
66
  }
@@ -12,6 +12,7 @@ module OpenAI
12
12
  status: OpenAI::Models::Beta::BetaResponseCustomToolCallItem::status,
13
13
  type: :custom_tool_call,
14
14
  agent: OpenAI::Beta::BetaResponseCustomToolCall::Agent?,
15
+ async: bool,
15
16
  caller_: OpenAI::Models::Beta::BetaResponseCustomToolCall::caller_?,
16
17
  namespace: String,
17
18
  created_by: String
@@ -39,6 +40,7 @@ module OpenAI
39
40
  id: String,
40
41
  status: OpenAI::Models::Beta::BetaResponseCustomToolCallItem::status,
41
42
  ?agent: OpenAI::Beta::BetaResponseCustomToolCall::Agent?,
43
+ ?async: bool,
42
44
  ?caller_: OpenAI::Models::Beta::BetaResponseCustomToolCall::caller_?,
43
45
  ?namespace: String,
44
46
  ?created_by: String,
@@ -53,6 +55,7 @@ module OpenAI
53
55
  status: OpenAI::Models::Beta::BetaResponseCustomToolCallItem::status,
54
56
  type: :custom_tool_call,
55
57
  agent: OpenAI::Beta::BetaResponseCustomToolCall::Agent?,
58
+ async: bool,
56
59
  caller_: OpenAI::Models::Beta::BetaResponseCustomToolCall::caller_?,
57
60
  namespace: String,
58
61
  created_by: String
@@ -4,21 +4,33 @@ module OpenAI
4
4
 
5
5
  module Beta
6
6
  type beta_response_error =
7
- { code: OpenAI::Models::Beta::BetaResponseError::code, message: String }
7
+ {
8
+ code: OpenAI::Models::Beta::BetaResponseError::code,
9
+ message: String,
10
+ misalignment: OpenAI::Beta::BetaResponseError::Misalignment
11
+ }
8
12
 
9
13
  class BetaResponseError < OpenAI::Internal::Type::BaseModel
10
14
  attr_accessor code: OpenAI::Models::Beta::BetaResponseError::code
11
15
 
12
16
  attr_accessor message: String
13
17
 
18
+ attr_reader misalignment: OpenAI::Beta::BetaResponseError::Misalignment?
19
+
20
+ def misalignment=: (
21
+ OpenAI::Beta::BetaResponseError::Misalignment
22
+ ) -> OpenAI::Beta::BetaResponseError::Misalignment
23
+
14
24
  def initialize: (
15
25
  code: OpenAI::Models::Beta::BetaResponseError::code,
16
- message: String
26
+ message: String,
27
+ ?misalignment: OpenAI::Beta::BetaResponseError::Misalignment
17
28
  ) -> void
18
29
 
19
30
  def to_hash: -> {
20
31
  code: OpenAI::Models::Beta::BetaResponseError::code,
21
- message: String
32
+ message: String,
33
+ misalignment: OpenAI::Beta::BetaResponseError::Misalignment
22
34
  }
23
35
 
24
36
  type code =
@@ -27,6 +39,7 @@ module OpenAI
27
39
  | :invalid_prompt
28
40
  | :data_residency_mismatch
29
41
  | :bio_policy
42
+ | :misalignment_policy_violation
30
43
  | :vector_store_timeout
31
44
  | :invalid_image
32
45
  | :invalid_image_format
@@ -51,6 +64,7 @@ module OpenAI
51
64
  INVALID_PROMPT: :invalid_prompt
52
65
  DATA_RESIDENCY_MISMATCH: :data_residency_mismatch
53
66
  BIO_POLICY: :bio_policy
67
+ MISALIGNMENT_POLICY_VIOLATION: :misalignment_policy_violation
54
68
  VECTOR_STORE_TIMEOUT: :vector_store_timeout
55
69
  INVALID_IMAGE: :invalid_image
56
70
  INVALID_IMAGE_FORMAT: :invalid_image_format
@@ -69,6 +83,71 @@ module OpenAI
69
83
 
70
84
  def self?.values: -> ::Array[OpenAI::Models::Beta::BetaResponseError::code]
71
85
  end
86
+
87
+ type misalignment =
88
+ {
89
+ detailed_explanation: String,
90
+ error_type: OpenAI::Models::Beta::BetaResponseError::Misalignment::error_type,
91
+ steer: OpenAI::Beta::BetaResponseError::Misalignment::Steer
92
+ }
93
+
94
+ class Misalignment < OpenAI::Internal::Type::BaseModel
95
+ attr_reader detailed_explanation: String?
96
+
97
+ def detailed_explanation=: (String) -> String
98
+
99
+ attr_reader error_type: OpenAI::Models::Beta::BetaResponseError::Misalignment::error_type?
100
+
101
+ def error_type=: (
102
+ OpenAI::Models::Beta::BetaResponseError::Misalignment::error_type
103
+ ) -> OpenAI::Models::Beta::BetaResponseError::Misalignment::error_type
104
+
105
+ attr_reader steer: OpenAI::Beta::BetaResponseError::Misalignment::Steer?
106
+
107
+ def steer=: (
108
+ OpenAI::Beta::BetaResponseError::Misalignment::Steer
109
+ ) -> OpenAI::Beta::BetaResponseError::Misalignment::Steer
110
+
111
+ def initialize: (
112
+ ?detailed_explanation: String,
113
+ ?error_type: OpenAI::Models::Beta::BetaResponseError::Misalignment::error_type,
114
+ ?steer: OpenAI::Beta::BetaResponseError::Misalignment::Steer
115
+ ) -> void
116
+
117
+ def to_hash: -> {
118
+ detailed_explanation: String,
119
+ error_type: OpenAI::Models::Beta::BetaResponseError::Misalignment::error_type,
120
+ steer: OpenAI::Beta::BetaResponseError::Misalignment::Steer
121
+ }
122
+
123
+ type error_type =
124
+ String
125
+ | :potentially_unintended_data_transfer
126
+ | :potentially_unintended_data_access
127
+ | :potentially_unintended_destructive_activity
128
+ | :other
129
+
130
+ module ErrorType
131
+ extend OpenAI::Internal::Type::Union
132
+
133
+ def self?.variants: -> ::Array[OpenAI::Models::Beta::BetaResponseError::Misalignment::error_type]
134
+
135
+ POTENTIALLY_UNINTENDED_DATA_TRANSFER: :potentially_unintended_data_transfer
136
+ POTENTIALLY_UNINTENDED_DATA_ACCESS: :potentially_unintended_data_access
137
+ POTENTIALLY_UNINTENDED_DESTRUCTIVE_ACTIVITY: :potentially_unintended_destructive_activity
138
+ OTHER: :other
139
+ end
140
+
141
+ type steer = { message: String }
142
+
143
+ class Steer < OpenAI::Internal::Type::BaseModel
144
+ attr_accessor message: String
145
+
146
+ def initialize: (message: String) -> void
147
+
148
+ def to_hash: -> { message: String }
149
+ end
150
+ end
72
151
  end
73
152
  end
74
153
  end
@@ -11,6 +11,7 @@ module OpenAI
11
11
  type: :function_call,
12
12
  id: String,
13
13
  agent: OpenAI::Beta::BetaResponseFunctionToolCall::Agent?,
14
+ async: bool,
14
15
  caller_: OpenAI::Models::Beta::BetaResponseFunctionToolCall::caller_?,
15
16
  namespace: String,
16
17
  status: OpenAI::Models::Beta::BetaResponseFunctionToolCall::status
@@ -31,6 +32,10 @@ module OpenAI
31
32
 
32
33
  attr_accessor agent: OpenAI::Beta::BetaResponseFunctionToolCall::Agent?
33
34
 
35
+ attr_reader async: bool?
36
+
37
+ def async=: (bool) -> bool
38
+
34
39
  attr_accessor caller_: OpenAI::Models::Beta::BetaResponseFunctionToolCall::caller_?
35
40
 
36
41
  attr_reader namespace: String?
@@ -49,6 +54,7 @@ module OpenAI
49
54
  name: String,
50
55
  ?id: String,
51
56
  ?agent: OpenAI::Beta::BetaResponseFunctionToolCall::Agent?,
57
+ ?async: bool,
52
58
  ?caller_: OpenAI::Models::Beta::BetaResponseFunctionToolCall::caller_?,
53
59
  ?namespace: String,
54
60
  ?status: OpenAI::Models::Beta::BetaResponseFunctionToolCall::status,
@@ -62,6 +68,7 @@ module OpenAI
62
68
  type: :function_call,
63
69
  id: String,
64
70
  agent: OpenAI::Beta::BetaResponseFunctionToolCall::Agent?,
71
+ async: bool,
65
72
  caller_: OpenAI::Models::Beta::BetaResponseFunctionToolCall::caller_?,
66
73
  namespace: String,
67
74
  status: OpenAI::Models::Beta::BetaResponseFunctionToolCall::status
@@ -12,6 +12,7 @@ module OpenAI
12
12
  status: OpenAI::Models::Beta::BetaResponseFunctionToolCallItem::status,
13
13
  type: :function_call,
14
14
  agent: OpenAI::Beta::BetaResponseFunctionToolCall::Agent?,
15
+ async: bool,
15
16
  caller_: OpenAI::Models::Beta::BetaResponseFunctionToolCall::caller_?,
16
17
  namespace: String,
17
18
  created_by: String
@@ -39,6 +40,7 @@ module OpenAI
39
40
  id: String,
40
41
  status: OpenAI::Models::Beta::BetaResponseFunctionToolCallItem::status,
41
42
  ?agent: OpenAI::Beta::BetaResponseFunctionToolCall::Agent?,
43
+ ?async: bool,
42
44
  ?caller_: OpenAI::Models::Beta::BetaResponseFunctionToolCall::caller_?,
43
45
  ?namespace: String,
44
46
  ?created_by: String,
@@ -53,6 +55,7 @@ module OpenAI
53
55
  status: OpenAI::Models::Beta::BetaResponseFunctionToolCallItem::status,
54
56
  type: :function_call,
55
57
  agent: OpenAI::Beta::BetaResponseFunctionToolCall::Agent?,
58
+ async: bool,
56
59
  caller_: OpenAI::Models::Beta::BetaResponseFunctionToolCall::caller_?,
57
60
  namespace: String,
58
61
  created_by: String
@@ -19,6 +19,7 @@ module OpenAI
19
19
  | OpenAI::Beta::BetaResponseInputItem::ToolSearchCall
20
20
  | OpenAI::Beta::BetaResponseToolSearchOutputItemParam
21
21
  | OpenAI::Beta::BetaResponseInputItem::AdditionalTools
22
+ | OpenAI::Beta::BetaResponseConfigurationUpdateItemParam
22
23
  | OpenAI::Beta::BetaResponseReasoningItem
23
24
  | OpenAI::Beta::BetaResponseCompactionItemParam
24
25
  | OpenAI::Beta::BetaResponseInputItem::ImageGenerationCall
@@ -18,6 +18,7 @@ module OpenAI
18
18
  | OpenAI::Beta::BetaResponseToolSearchCall
19
19
  | OpenAI::Beta::BetaResponseToolSearchOutputItem
20
20
  | OpenAI::Beta::BetaResponseItem::AdditionalTools
21
+ | OpenAI::Beta::BetaResponseConfigurationUpdateItem
21
22
  | OpenAI::Beta::BetaResponseReasoningItem
22
23
  | OpenAI::Beta::BetaResponseItem::Program
23
24
  | OpenAI::Beta::BetaResponseItem::ProgramOutput
@@ -0,0 +1,53 @@
1
+ module OpenAI
2
+ module Models
3
+ class BetaResponseSteerAcceptedEvent = Beta::BetaResponseSteerAcceptedEvent
4
+
5
+ module Beta
6
+ type beta_response_steer_accepted_event =
7
+ {
8
+ sequence_number: Integer,
9
+ steer: OpenAI::Beta::BetaResponseSteerAcceptedEvent::Steer,
10
+ type: :"response.steer.accepted",
11
+ stream_id: String
12
+ }
13
+
14
+ class BetaResponseSteerAcceptedEvent < OpenAI::Internal::Type::BaseModel
15
+ attr_accessor sequence_number: Integer
16
+
17
+ attr_accessor steer: OpenAI::Beta::BetaResponseSteerAcceptedEvent::Steer
18
+
19
+ attr_accessor type: :"response.steer.accepted"
20
+
21
+ attr_reader stream_id: String?
22
+
23
+ def stream_id=: (String) -> String
24
+
25
+ def initialize: (
26
+ sequence_number: Integer,
27
+ steer: OpenAI::Beta::BetaResponseSteerAcceptedEvent::Steer,
28
+ ?stream_id: String,
29
+ ?type: :"response.steer.accepted"
30
+ ) -> void
31
+
32
+ def to_hash: -> {
33
+ sequence_number: Integer,
34
+ steer: OpenAI::Beta::BetaResponseSteerAcceptedEvent::Steer,
35
+ type: :"response.steer.accepted",
36
+ stream_id: String
37
+ }
38
+
39
+ type steer = { id: String, previous_response_id: String }
40
+
41
+ class Steer < OpenAI::Internal::Type::BaseModel
42
+ attr_accessor id: String
43
+
44
+ attr_accessor previous_response_id: String
45
+
46
+ def initialize: (id: String, previous_response_id: String) -> void
47
+
48
+ def to_hash: -> { id: String, previous_response_id: String }
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,31 @@
1
+ module OpenAI
2
+ module Models
3
+ module BetaResponseSteerErrorCode = Beta::BetaResponseSteerErrorCode
4
+
5
+ module Beta
6
+ type beta_response_steer_error_code =
7
+ :response_not_found
8
+ | :invalid_input
9
+ | :steering_not_supported
10
+ | :too_many_pending_steers
11
+ | :response_already_completed
12
+ | :response_not_active
13
+ | :successor_creation_failed
14
+ | String
15
+
16
+ module BetaResponseSteerErrorCode
17
+ extend OpenAI::Internal::Type::Union
18
+
19
+ def self?.variants: -> ::Array[OpenAI::Models::Beta::beta_response_steer_error_code]
20
+
21
+ RESPONSE_NOT_FOUND: :response_not_found
22
+ INVALID_INPUT: :invalid_input
23
+ STEERING_NOT_SUPPORTED: :steering_not_supported
24
+ TOO_MANY_PENDING_STEERS: :too_many_pending_steers
25
+ RESPONSE_ALREADY_COMPLETED: :response_already_completed
26
+ RESPONSE_NOT_ACTIVE: :response_not_active
27
+ SUCCESSOR_CREATION_FAILED: :successor_creation_failed
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,34 @@
1
+ module OpenAI
2
+ module Models
3
+ class BetaResponseSteerEvent = Beta::BetaResponseSteerEvent
4
+
5
+ module Beta
6
+ type beta_response_steer_event =
7
+ {
8
+ input: OpenAI::Models::Beta::beta_response_steer_input,
9
+ previous_response_id: String,
10
+ type: :"response.steer"
11
+ }
12
+
13
+ class BetaResponseSteerEvent < OpenAI::Internal::Type::BaseModel
14
+ attr_accessor input: OpenAI::Models::Beta::beta_response_steer_input
15
+
16
+ attr_accessor previous_response_id: String
17
+
18
+ attr_accessor type: :"response.steer"
19
+
20
+ def initialize: (
21
+ input: OpenAI::Models::Beta::beta_response_steer_input,
22
+ previous_response_id: String,
23
+ ?type: :"response.steer"
24
+ ) -> void
25
+
26
+ def to_hash: -> {
27
+ input: OpenAI::Models::Beta::beta_response_steer_input,
28
+ previous_response_id: String,
29
+ type: :"response.steer"
30
+ }
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,102 @@
1
+ module OpenAI
2
+ module Models
3
+ class BetaResponseSteerFailedEvent = Beta::BetaResponseSteerFailedEvent
4
+
5
+ module Beta
6
+ type beta_response_steer_failed_event =
7
+ {
8
+ error: OpenAI::Beta::BetaResponseSteerFailedEvent::Error,
9
+ sequence_number: Integer,
10
+ steer: OpenAI::Beta::BetaResponseSteerFailedEvent::Steer,
11
+ type: :"response.steer.failed",
12
+ stream_id: String
13
+ }
14
+
15
+ class BetaResponseSteerFailedEvent < OpenAI::Internal::Type::BaseModel
16
+ attr_accessor error: OpenAI::Beta::BetaResponseSteerFailedEvent::Error
17
+
18
+ attr_accessor sequence_number: Integer
19
+
20
+ attr_accessor steer: OpenAI::Beta::BetaResponseSteerFailedEvent::Steer
21
+
22
+ attr_accessor type: :"response.steer.failed"
23
+
24
+ attr_reader stream_id: String?
25
+
26
+ def stream_id=: (String) -> String
27
+
28
+ def initialize: (
29
+ error: OpenAI::Beta::BetaResponseSteerFailedEvent::Error,
30
+ sequence_number: Integer,
31
+ steer: OpenAI::Beta::BetaResponseSteerFailedEvent::Steer,
32
+ ?stream_id: String,
33
+ ?type: :"response.steer.failed"
34
+ ) -> void
35
+
36
+ def to_hash: -> {
37
+ error: OpenAI::Beta::BetaResponseSteerFailedEvent::Error,
38
+ sequence_number: Integer,
39
+ steer: OpenAI::Beta::BetaResponseSteerFailedEvent::Steer,
40
+ type: :"response.steer.failed",
41
+ stream_id: String
42
+ }
43
+
44
+ type error =
45
+ {
46
+ code: OpenAI::Models::Beta::beta_response_steer_error_code,
47
+ message: String,
48
+ type: :invalid_request_error
49
+ }
50
+
51
+ class Error < OpenAI::Internal::Type::BaseModel
52
+ attr_accessor code: OpenAI::Models::Beta::beta_response_steer_error_code
53
+
54
+ attr_accessor message: String
55
+
56
+ attr_accessor type: :invalid_request_error
57
+
58
+ def initialize: (
59
+ code: OpenAI::Models::Beta::beta_response_steer_error_code,
60
+ message: String,
61
+ ?type: :invalid_request_error
62
+ ) -> void
63
+
64
+ def to_hash: -> {
65
+ code: OpenAI::Models::Beta::beta_response_steer_error_code,
66
+ message: String,
67
+ type: :invalid_request_error
68
+ }
69
+ end
70
+
71
+ type steer =
72
+ {
73
+ input: OpenAI::Models::Beta::beta_response_steer_input,
74
+ previous_response_id: String,
75
+ id: String
76
+ }
77
+
78
+ class Steer < OpenAI::Internal::Type::BaseModel
79
+ attr_accessor input: OpenAI::Models::Beta::beta_response_steer_input
80
+
81
+ attr_accessor previous_response_id: String
82
+
83
+ attr_reader id: String?
84
+
85
+ def id=: (String) -> String
86
+
87
+ def initialize: (
88
+ input: OpenAI::Models::Beta::beta_response_steer_input,
89
+ previous_response_id: String,
90
+ ?id: String
91
+ ) -> void
92
+
93
+ def to_hash: -> {
94
+ input: OpenAI::Models::Beta::beta_response_steer_input,
95
+ previous_response_id: String,
96
+ id: String
97
+ }
98
+ end
99
+ end
100
+ end
101
+ end
102
+ end