openai 0.80.0 → 0.82.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 (1750) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +103 -0
  3. data/README.md +229 -2
  4. data/SECURITY.md +34 -5
  5. data/bedrock.md +1 -0
  6. data/examples/realtime/README.md +220 -0
  7. data/examples/realtime/function_calling.rb +158 -0
  8. data/examples/realtime/image_input.rb +105 -0
  9. data/examples/realtime/mcp_approval.rb +346 -0
  10. data/examples/realtime/sideband.rb +64 -0
  11. data/examples/realtime/websocket_text.rb +83 -0
  12. data/examples/realtime/websocket_transcription.rb +127 -0
  13. data/examples/realtime/websocket_voice_turn.rb +152 -0
  14. data/examples/x509_workload_identity.rb +81 -0
  15. data/lib/openai/auth/subject_token_providers/azure_managed_identity_token_provider.rb +27 -19
  16. data/lib/openai/auth/subject_token_providers/gcp_id_token_provider.rb +21 -16
  17. data/lib/openai/auth/subject_token_providers/k8s_service_account_token_provider.rb +12 -8
  18. data/lib/openai/auth/workload_identity.rb +8 -5
  19. data/lib/openai/auth/workload_identity_auth.rb +278 -60
  20. data/lib/openai/auth/x509_token_exchange.rb +184 -0
  21. data/lib/openai/auth/x509_transport.rb +318 -0
  22. data/lib/openai/auth/x509_workload_identity.rb +85 -0
  23. data/lib/openai/client.rb +444 -31
  24. data/lib/openai/errors.rb +279 -23
  25. data/lib/openai/file_part.rb +79 -12
  26. data/lib/openai/helpers/client_options.rb +87 -0
  27. data/lib/openai/helpers/data_residency.rb +38 -0
  28. data/lib/openai/helpers/realtime/client_extension.rb +186 -0
  29. data/lib/openai/helpers/realtime/connection.rb +199 -0
  30. data/lib/openai/helpers/realtime/connection_manager.rb +107 -0
  31. data/lib/openai/helpers/realtime/connection_resources.rb +130 -0
  32. data/lib/openai/helpers/realtime/conversation_item_variant_resolver.rb +40 -0
  33. data/lib/openai/helpers/realtime/errors.rb +73 -0
  34. data/lib/openai/helpers/realtime/resources/realtime_extension.rb +84 -0
  35. data/lib/openai/helpers/realtime/sideband_connection.rb +17 -0
  36. data/lib/openai/helpers/realtime/transports/async_websocket.rb +388 -0
  37. data/lib/openai/helpers/realtime/unknown_server_event.rb +44 -0
  38. data/lib/openai/helpers/realtime.rb +15 -0
  39. data/lib/openai/helpers/resource_polling.rb +154 -0
  40. data/lib/openai/helpers/sorbet.rb +324 -0
  41. data/lib/openai/helpers/streaming/chat_completion_stream.rb +191 -83
  42. data/lib/openai/helpers/streaming/chat_events.rb +6 -3
  43. data/lib/openai/helpers/streaming/exceptions.rb +2 -1
  44. data/lib/openai/helpers/streaming/response_event_decoder.rb +44 -0
  45. data/lib/openai/helpers/streaming/response_stream.rb +49 -36
  46. data/lib/openai/helpers/streaming/unknown_stream_event.rb +51 -0
  47. data/lib/openai/helpers/structured_output/base_model.rb +1 -3
  48. data/lib/openai/helpers/structured_output/chat_completion_parser.rb +132 -0
  49. data/lib/openai/helpers/structured_output/enum_of.rb +14 -13
  50. data/lib/openai/helpers/structured_output/json_schema_converter.rb +19 -12
  51. data/lib/openai/helpers/structured_output/response_parser.rb +145 -0
  52. data/lib/openai/helpers/structured_output/union_of.rb +1 -0
  53. data/lib/openai/http_client.rb +15 -3
  54. data/lib/openai/internal/conversation_cursor_page.rb +2 -2
  55. data/lib/openai/internal/cursor_page.rb +1 -0
  56. data/lib/openai/internal/logging.rb +140 -50
  57. data/lib/openai/internal/next_cursor_page.rb +2 -2
  58. data/lib/openai/internal/page.rb +2 -1
  59. data/lib/openai/internal/poller.rb +175 -0
  60. data/lib/openai/internal/read_io_adapter.rb +28 -24
  61. data/lib/openai/internal/request_options_scope.rb +60 -0
  62. data/lib/openai/internal/stream.rb +16 -10
  63. data/lib/openai/internal/transport/base_client.rb +236 -89
  64. data/lib/openai/internal/type/array_of.rb +33 -15
  65. data/lib/openai/internal/type/base_model.rb +62 -49
  66. data/lib/openai/internal/type/base_page.rb +12 -1
  67. data/lib/openai/internal/type/base_stream.rb +12 -10
  68. data/lib/openai/internal/type/converter.rb +28 -1
  69. data/lib/openai/internal/type/enum.rb +1 -1
  70. data/lib/openai/internal/type/hash_of.rb +27 -20
  71. data/lib/openai/internal/type/union.rb +14 -12
  72. data/lib/openai/internal/util.rb +52 -28
  73. data/lib/openai/internal/vector_store_file_uploader.rb +225 -0
  74. data/lib/openai/internal.rb +5 -3
  75. data/lib/openai/models/admin/organization/admin_api_key_create_response.rb +17 -1
  76. data/lib/openai/models/admin/organization/audit_log_list_params.rb +6 -4
  77. data/lib/openai/models/admin/organization/audit_log_list_response.rb +355 -217
  78. data/lib/openai/models/admin/organization/certificate_activate_response.rb +4 -2
  79. data/lib/openai/models/admin/organization/certificate_deactivate_response.rb +4 -2
  80. data/lib/openai/models/admin/organization/certificate_list_response.rb +4 -2
  81. data/lib/openai/models/admin/organization/certificate_retrieve_params.rb +6 -2
  82. data/lib/openai/models/admin/organization/cost_quantity_unit.rb +53 -0
  83. data/lib/openai/models/admin/organization/data_retention_update_params.rb +4 -2
  84. data/lib/openai/models/admin/organization/groups/role_list_response.rb +14 -10
  85. data/lib/openai/models/admin/organization/groups/role_retrieve_response.rb +14 -10
  86. data/lib/openai/models/admin/organization/groups/user_retrieve_response.rb +4 -2
  87. data/lib/openai/models/admin/organization/invite_create_params.rb +4 -2
  88. data/lib/openai/models/admin/organization/organization_spend_alert.rb +4 -2
  89. data/lib/openai/models/admin/organization/organization_spend_limit.rb +19 -5
  90. data/lib/openai/models/admin/organization/organization_user.rb +4 -2
  91. data/lib/openai/models/admin/organization/project.rb +9 -1
  92. data/lib/openai/models/admin/organization/project_create_params.rb +17 -2
  93. data/lib/openai/models/admin/organization/project_residency.rb +29 -0
  94. data/lib/openai/models/admin/organization/project_update_params.rb +7 -1
  95. data/lib/openai/models/admin/organization/projects/api_key_list_params.rb +4 -2
  96. data/lib/openai/models/admin/organization/projects/certificate_activate_response.rb +4 -2
  97. data/lib/openai/models/admin/organization/projects/certificate_deactivate_response.rb +4 -2
  98. data/lib/openai/models/admin/organization/projects/certificate_list_response.rb +4 -2
  99. data/lib/openai/models/admin/organization/projects/data_retention_update_params.rb +4 -2
  100. data/lib/openai/models/admin/organization/projects/groups/role_list_response.rb +14 -11
  101. data/lib/openai/models/admin/organization/projects/groups/role_retrieve_response.rb +14 -11
  102. data/lib/openai/models/admin/organization/projects/hosted_tool_permission_update_params.rb +33 -23
  103. data/lib/openai/models/admin/organization/projects/project_api_key.rb +8 -4
  104. data/lib/openai/models/admin/organization/projects/project_hosted_tool_permissions.rb +16 -8
  105. data/lib/openai/models/admin/organization/projects/project_spend_alert.rb +4 -2
  106. data/lib/openai/models/admin/organization/projects/project_spend_limit.rb +26 -7
  107. data/lib/openai/models/admin/organization/projects/service_account_create_response.rb +9 -7
  108. data/lib/openai/models/admin/organization/projects/spend_alert_create_params.rb +4 -2
  109. data/lib/openai/models/admin/organization/projects/spend_alert_update_params.rb +4 -2
  110. data/lib/openai/models/admin/organization/projects/users/role_list_response.rb +14 -11
  111. data/lib/openai/models/admin/organization/projects/users/role_retrieve_response.rb +14 -11
  112. data/lib/openai/models/admin/organization/spend_alert_create_params.rb +4 -2
  113. data/lib/openai/models/admin/organization/spend_alert_update_params.rb +4 -2
  114. data/lib/openai/models/admin/organization/usage_audio_speeches_params.rb +6 -2
  115. data/lib/openai/models/admin/organization/usage_audio_speeches_response.rb +102 -29
  116. data/lib/openai/models/admin/organization/usage_audio_transcriptions_params.rb +12 -4
  117. data/lib/openai/models/admin/organization/usage_audio_transcriptions_response.rb +104 -29
  118. data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_params.rb +12 -4
  119. data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_response.rb +104 -29
  120. data/lib/openai/models/admin/organization/usage_completions_params.rb +4 -2
  121. data/lib/openai/models/admin/organization/usage_completions_response.rb +100 -29
  122. data/lib/openai/models/admin/organization/usage_costs_params.rb +4 -2
  123. data/lib/openai/models/admin/organization/usage_costs_response.rb +98 -29
  124. data/lib/openai/models/admin/organization/usage_embeddings_params.rb +4 -2
  125. data/lib/openai/models/admin/organization/usage_embeddings_response.rb +100 -29
  126. data/lib/openai/models/admin/organization/usage_file_search_calls_params.rb +6 -2
  127. data/lib/openai/models/admin/organization/usage_file_search_calls_response.rb +102 -29
  128. data/lib/openai/models/admin/organization/usage_images_params.rb +12 -6
  129. data/lib/openai/models/admin/organization/usage_images_response.rb +98 -29
  130. data/lib/openai/models/admin/organization/usage_moderations_params.rb +4 -2
  131. data/lib/openai/models/admin/organization/usage_moderations_response.rb +100 -29
  132. data/lib/openai/models/admin/organization/usage_vector_stores_params.rb +4 -2
  133. data/lib/openai/models/admin/organization/usage_vector_stores_response.rb +102 -29
  134. data/lib/openai/models/admin/organization/usage_web_search_calls_params.rb +14 -4
  135. data/lib/openai/models/admin/organization/usage_web_search_calls_response.rb +102 -29
  136. data/lib/openai/models/admin/organization/users/role_list_response.rb +14 -10
  137. data/lib/openai/models/admin/organization/users/role_retrieve_response.rb +14 -10
  138. data/lib/openai/models/audio/transcription_create_params.rb +9 -5
  139. data/lib/openai/models/audio/transcription_diarized.rb +4 -2
  140. data/lib/openai/models/audio/transcription_text_delta_event.rb +4 -2
  141. data/lib/openai/models/audio/transcription_text_done_event.rb +4 -2
  142. data/lib/openai/models/beta/assistant_create_params.rb +33 -11
  143. data/lib/openai/models/beta/beta_apply_patch_tool.rb +7 -5
  144. data/lib/openai/models/beta/beta_container_network_policy_allowlist.rb +4 -2
  145. data/lib/openai/models/beta/beta_custom_tool.rb +5 -3
  146. data/lib/openai/models/beta/beta_file_search_tool.rb +37 -15
  147. data/lib/openai/models/beta/beta_function_shell_tool.rb +7 -5
  148. data/lib/openai/models/beta/beta_function_tool.rb +5 -3
  149. data/lib/openai/models/beta/beta_namespace_tool.rb +12 -8
  150. data/lib/openai/models/beta/beta_response.rb +33 -20
  151. data/lib/openai/models/beta/beta_response_apply_patch_tool_call.rb +6 -4
  152. data/lib/openai/models/beta/beta_response_apply_patch_tool_call_output.rb +6 -4
  153. data/lib/openai/models/beta/beta_response_code_interpreter_call_in_progress_event.rb +7 -5
  154. data/lib/openai/models/beta/beta_response_code_interpreter_call_interpreting_event.rb +7 -5
  155. data/lib/openai/models/beta/beta_response_code_interpreter_tool_call.rb +7 -5
  156. data/lib/openai/models/beta/beta_response_computer_tool_call.rb +4 -2
  157. data/lib/openai/models/beta/beta_response_computer_tool_call_output_item.rb +8 -2
  158. data/lib/openai/models/beta/beta_response_custom_tool_call.rb +6 -4
  159. data/lib/openai/models/beta/beta_response_custom_tool_call_item.rb +15 -1
  160. data/lib/openai/models/beta/beta_response_custom_tool_call_output.rb +10 -7
  161. data/lib/openai/models/beta/beta_response_custom_tool_call_output_item.rb +11 -1
  162. data/lib/openai/models/beta/beta_response_file_search_tool_call.rb +12 -8
  163. data/lib/openai/models/beta/beta_response_function_call_output_item_list.rb +3 -2
  164. data/lib/openai/models/beta/beta_response_function_shell_tool_call.rb +11 -7
  165. data/lib/openai/models/beta/beta_response_function_shell_tool_call_output.rb +10 -6
  166. data/lib/openai/models/beta/beta_response_function_tool_call.rb +6 -4
  167. data/lib/openai/models/beta/beta_response_function_tool_call_item.rb +15 -1
  168. data/lib/openai/models/beta/beta_response_function_tool_call_output_item.rb +19 -16
  169. data/lib/openai/models/beta/beta_response_function_web_search.rb +6 -2
  170. data/lib/openai/models/beta/beta_response_image_gen_call_partial_image_event.rb +33 -1
  171. data/lib/openai/models/beta/beta_response_input_audio.rb +5 -3
  172. data/lib/openai/models/beta/beta_response_input_file_content.rb +5 -3
  173. data/lib/openai/models/beta/beta_response_input_image_content.rb +5 -3
  174. data/lib/openai/models/beta/beta_response_input_item.rb +129 -79
  175. data/lib/openai/models/beta/beta_response_input_message_content_list.rb +3 -2
  176. data/lib/openai/models/beta/beta_response_input_text_content.rb +5 -3
  177. data/lib/openai/models/beta/beta_response_item.rb +27 -15
  178. data/lib/openai/models/beta/beta_response_output_item.rb +38 -20
  179. data/lib/openai/models/beta/beta_response_output_message.rb +4 -2
  180. data/lib/openai/models/beta/beta_response_output_text.rb +12 -6
  181. data/lib/openai/models/beta/beta_response_output_text_annotation_added_event.rb +17 -9
  182. data/lib/openai/models/beta/beta_response_prompt.rb +5 -3
  183. data/lib/openai/models/beta/beta_response_reasoning_item.rb +8 -4
  184. data/lib/openai/models/beta/beta_response_shell_call_command_added_event.rb +76 -0
  185. data/lib/openai/models/beta/beta_response_shell_call_command_delta_event.rb +84 -0
  186. data/lib/openai/models/beta/beta_response_shell_call_command_done_event.rb +76 -0
  187. data/lib/openai/models/beta/beta_response_shell_call_output_content_delta_event.rb +106 -0
  188. data/lib/openai/models/beta/beta_response_shell_call_output_content_done_event.rb +188 -0
  189. data/lib/openai/models/beta/beta_response_stream_event.rb +122 -51
  190. data/lib/openai/models/beta/beta_response_text_delta_event.rb +8 -4
  191. data/lib/openai/models/beta/beta_response_text_done_event.rb +8 -4
  192. data/lib/openai/models/beta/beta_responses_client_event.rb +386 -156
  193. data/lib/openai/models/beta/beta_responses_server_event.rb +1004 -144
  194. data/lib/openai/models/beta/beta_tool.rb +51 -45
  195. data/lib/openai/models/beta/beta_tool_choice_allowed.rb +4 -2
  196. data/lib/openai/models/beta/beta_web_search_preview_tool.rb +4 -2
  197. data/lib/openai/models/beta/chatkit/chat_session_chatkit_configuration_param.rb +4 -2
  198. data/lib/openai/models/beta/chatkit/chat_session_workflow_param.rb +6 -2
  199. data/lib/openai/models/beta/chatkit/chatkit_response_output_text.rb +4 -2
  200. data/lib/openai/models/beta/chatkit/chatkit_thread_assistant_message_item.rb +4 -2
  201. data/lib/openai/models/beta/chatkit/chatkit_thread_item_list.rb +28 -12
  202. data/lib/openai/models/beta/chatkit/chatkit_thread_user_message_item.rb +14 -8
  203. data/lib/openai/models/beta/chatkit_workflow.rb +5 -3
  204. data/lib/openai/models/beta/response_compact_params.rb +21 -12
  205. data/lib/openai/models/beta/response_create_params.rb +32 -20
  206. data/lib/openai/models/beta/responses/input_item_list_params.rb +4 -2
  207. data/lib/openai/models/beta/responses/input_token_count_params.rb +50 -27
  208. data/lib/openai/models/beta/thread_create_and_run_params.rb +87 -40
  209. data/lib/openai/models/beta/thread_create_params.rb +49 -20
  210. data/lib/openai/models/beta/threads/message.rb +9 -5
  211. data/lib/openai/models/beta/threads/message_create_params.rb +16 -9
  212. data/lib/openai/models/beta/threads/message_delta.rb +4 -2
  213. data/lib/openai/models/beta/threads/run.rb +4 -2
  214. data/lib/openai/models/beta/threads/run_create_params.rb +50 -27
  215. data/lib/openai/models/beta/threads/run_submit_tool_outputs_params.rb +4 -2
  216. data/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rb +20 -7
  217. data/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rb +12 -4
  218. data/lib/openai/models/beta/threads/runs/file_search_tool_call.rb +26 -10
  219. data/lib/openai/models/beta/threads/runs/message_creation_step_details.rb +4 -2
  220. data/lib/openai/models/beta/threads/runs/run_step_include.rb +1 -2
  221. data/lib/openai/models/beta/threads/runs/step_list_params.rb +4 -2
  222. data/lib/openai/models/beta/threads/runs/step_retrieve_params.rb +4 -2
  223. data/lib/openai/models/beta/threads/runs/tool_call_delta_object.rb +4 -2
  224. data/lib/openai/models/beta/threads/text_delta.rb +4 -2
  225. data/lib/openai/models/chat/chat_completion.rb +60 -25
  226. data/lib/openai/models/chat/chat_completion_allowed_tools.rb +4 -2
  227. data/lib/openai/models/chat/chat_completion_assistant_message_param.rb +20 -13
  228. data/lib/openai/models/chat/chat_completion_chunk.rb +76 -38
  229. data/lib/openai/models/chat/chat_completion_content_part.rb +4 -2
  230. data/lib/openai/models/chat/chat_completion_content_part_image.rb +4 -2
  231. data/lib/openai/models/chat/chat_completion_content_part_input_audio.rb +9 -5
  232. data/lib/openai/models/chat/chat_completion_content_part_text.rb +4 -2
  233. data/lib/openai/models/chat/chat_completion_custom_tool.rb +11 -7
  234. data/lib/openai/models/chat/chat_completion_developer_message_param.rb +8 -3
  235. data/lib/openai/models/chat/chat_completion_message.rb +8 -4
  236. data/lib/openai/models/chat/chat_completion_prediction_content.rb +6 -3
  237. data/lib/openai/models/chat/chat_completion_store_message.rb +22 -6
  238. data/lib/openai/models/chat/chat_completion_system_message_param.rb +6 -3
  239. data/lib/openai/models/chat/chat_completion_token_logprob.rb +4 -2
  240. data/lib/openai/models/chat/chat_completion_tool_message_param.rb +6 -3
  241. data/lib/openai/models/chat/chat_completion_user_message_param.rb +3 -2
  242. data/lib/openai/models/chat/completion_create_params.rb +56 -33
  243. data/lib/openai/models/comparison_filter.rb +3 -2
  244. data/lib/openai/models/conversations/computer_screenshot_content.rb +4 -2
  245. data/lib/openai/models/conversations/conversation_create_params.rb +5 -3
  246. data/lib/openai/models/conversations/conversation_item.rb +9 -5
  247. data/lib/openai/models/eval_create_params.rb +69 -13
  248. data/lib/openai/models/eval_create_response.rb +45 -5
  249. data/lib/openai/models/eval_list_response.rb +45 -5
  250. data/lib/openai/models/eval_retrieve_response.rb +45 -5
  251. data/lib/openai/models/eval_update_response.rb +45 -5
  252. data/lib/openai/models/evals/create_eval_completions_run_data_source.rb +59 -19
  253. data/lib/openai/models/evals/create_eval_jsonl_run_data_source.rb +8 -2
  254. data/lib/openai/models/evals/run_cancel_response.rb +97 -37
  255. data/lib/openai/models/evals/run_create_params.rb +109 -43
  256. data/lib/openai/models/evals/run_create_response.rb +97 -37
  257. data/lib/openai/models/evals/run_list_response.rb +97 -36
  258. data/lib/openai/models/evals/run_retrieve_response.rb +101 -42
  259. data/lib/openai/models/evals/runs/output_item_list_response.rb +16 -6
  260. data/lib/openai/models/evals/runs/output_item_retrieve_response.rb +16 -6
  261. data/lib/openai/models/fine_tuning/alpha/grader_run_response.rb +4 -2
  262. data/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rb +6 -2
  263. data/lib/openai/models/fine_tuning/dpo_hyperparameters.rb +4 -2
  264. data/lib/openai/models/fine_tuning/fine_tuning_job.rb +16 -10
  265. data/lib/openai/models/fine_tuning/job_create_params.rb +9 -5
  266. data/lib/openai/models/fine_tuning/reinforcement_hyperparameters.rb +8 -4
  267. data/lib/openai/models/fine_tuning/supervised_hyperparameters.rb +4 -2
  268. data/lib/openai/models/image_edit_params.rb +12 -22
  269. data/lib/openai/models/image_generate_params.rb +12 -22
  270. data/lib/openai/models/moderation.rb +76 -50
  271. data/lib/openai/models/moderation_create_params.rb +3 -2
  272. data/lib/openai/models/realtime/call_accept_params.rb +33 -1
  273. data/lib/openai/models/realtime/call_create_params.rb +32 -0
  274. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rb +25 -9
  275. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rb +5 -3
  276. data/lib/openai/models/realtime/conversation_item_with_reference.rb +4 -2
  277. data/lib/openai/models/realtime/rate_limits_updated_event.rb +4 -2
  278. data/lib/openai/models/realtime/realtime_audio_input_turn_detection.rb +4 -2
  279. data/lib/openai/models/realtime/realtime_conversation_item_assistant_message.rb +4 -2
  280. data/lib/openai/models/realtime/realtime_conversation_item_system_message.rb +4 -2
  281. data/lib/openai/models/realtime/realtime_conversation_item_user_message.rb +4 -2
  282. data/lib/openai/models/realtime/realtime_response.rb +4 -2
  283. data/lib/openai/models/realtime/realtime_response_create_mcp_tool.rb +25 -15
  284. data/lib/openai/models/realtime/realtime_response_create_params.rb +8 -4
  285. data/lib/openai/models/realtime/realtime_response_usage_input_token_details.rb +4 -2
  286. data/lib/openai/models/realtime/realtime_server_event.rb +52 -26
  287. data/lib/openai/models/realtime/realtime_session.rb +16 -8
  288. data/lib/openai/models/realtime/realtime_session_create_request.rb +47 -17
  289. data/lib/openai/models/realtime/realtime_session_create_response.rb +161 -67
  290. data/lib/openai/models/realtime/realtime_tools_config.rb +1 -2
  291. data/lib/openai/models/realtime/realtime_tools_config_union.rb +28 -16
  292. data/lib/openai/models/realtime/realtime_transcription_session_audio_input.rb +5 -3
  293. data/lib/openai/models/realtime/realtime_transcription_session_audio_input_turn_detection.rb +12 -6
  294. data/lib/openai/models/realtime/realtime_transcription_session_create_request.rb +6 -2
  295. data/lib/openai/models/realtime/realtime_transcription_session_create_response.rb +17 -9
  296. data/lib/openai/models/realtime/realtime_translation_client_event.rb +4 -2
  297. data/lib/openai/models/realtime/realtime_translation_client_secret_create_request.rb +8 -4
  298. data/lib/openai/models/realtime/realtime_translation_output_audio_delta_event.rb +8 -5
  299. data/lib/openai/models/realtime/realtime_translation_server_event.rb +12 -7
  300. data/lib/openai/models/realtime/realtime_translation_session.rb +10 -6
  301. data/lib/openai/models/realtime/realtime_translation_session_create_request.rb +14 -10
  302. data/lib/openai/models/realtime/realtime_translation_session_update_request.rb +14 -10
  303. data/lib/openai/models/realtime/transcription_session_update.rb +14 -6
  304. data/lib/openai/models/realtime/transcription_session_updated_event.rb +12 -4
  305. data/lib/openai/models/response_format_json_schema.rb +9 -7
  306. data/lib/openai/models/responses/apply_patch_tool.rb +7 -5
  307. data/lib/openai/models/responses/container_network_policy_allowlist.rb +4 -2
  308. data/lib/openai/models/responses/custom_tool.rb +5 -3
  309. data/lib/openai/models/responses/function_shell_tool.rb +7 -5
  310. data/lib/openai/models/responses/function_tool.rb +13 -9
  311. data/lib/openai/models/responses/input_token_count_params.rb +15 -12
  312. data/lib/openai/models/responses/namespace_tool.rb +12 -8
  313. data/lib/openai/models/responses/response.rb +26 -17
  314. data/lib/openai/models/responses/response_apply_patch_tool_call.rb +6 -4
  315. data/lib/openai/models/responses/response_apply_patch_tool_call_output.rb +6 -4
  316. data/lib/openai/models/responses/response_code_interpreter_tool_call.rb +7 -5
  317. data/lib/openai/models/responses/response_compact_params.rb +37 -16
  318. data/lib/openai/models/responses/response_computer_tool_call.rb +8 -4
  319. data/lib/openai/models/responses/response_computer_tool_call_output_item.rb +8 -2
  320. data/lib/openai/models/responses/response_create_params.rb +47 -33
  321. data/lib/openai/models/responses/response_custom_tool_call.rb +6 -4
  322. data/lib/openai/models/responses/response_custom_tool_call_item.rb +13 -1
  323. data/lib/openai/models/responses/response_custom_tool_call_output.rb +10 -7
  324. data/lib/openai/models/responses/response_custom_tool_call_output_item.rb +9 -1
  325. data/lib/openai/models/responses/response_file_search_tool_call.rb +14 -10
  326. data/lib/openai/models/responses/response_format_text_json_schema_config.rb +9 -6
  327. data/lib/openai/models/responses/response_function_call_output_item_list.rb +3 -2
  328. data/lib/openai/models/responses/response_function_shell_tool_call.rb +11 -7
  329. data/lib/openai/models/responses/response_function_shell_tool_call_output.rb +10 -6
  330. data/lib/openai/models/responses/response_function_tool_call.rb +6 -4
  331. data/lib/openai/models/responses/response_function_tool_call_item.rb +13 -1
  332. data/lib/openai/models/responses/response_function_tool_call_output_item.rb +19 -16
  333. data/lib/openai/models/responses/response_function_web_search.rb +6 -2
  334. data/lib/openai/models/responses/response_image_gen_call_partial_image_event.rb +33 -1
  335. data/lib/openai/models/responses/response_input_audio.rb +5 -3
  336. data/lib/openai/models/responses/response_input_file_content.rb +5 -3
  337. data/lib/openai/models/responses/response_input_image_content.rb +5 -3
  338. data/lib/openai/models/responses/response_input_item.rb +90 -60
  339. data/lib/openai/models/responses/response_input_message_content_list.rb +3 -2
  340. data/lib/openai/models/responses/response_input_text_content.rb +5 -3
  341. data/lib/openai/models/responses/response_item.rb +11 -7
  342. data/lib/openai/models/responses/response_output_item.rb +9 -5
  343. data/lib/openai/models/responses/response_output_message.rb +4 -2
  344. data/lib/openai/models/responses/response_output_text.rb +12 -6
  345. data/lib/openai/models/responses/response_output_text_annotation_added_event.rb +17 -9
  346. data/lib/openai/models/responses/response_prompt.rb +5 -3
  347. data/lib/openai/models/responses/response_reasoning_item.rb +8 -4
  348. data/lib/openai/models/responses/response_shell_call_command_added_event.rb +52 -0
  349. data/lib/openai/models/responses/response_shell_call_command_delta_event.rb +60 -0
  350. data/lib/openai/models/responses/response_shell_call_command_done_event.rb +52 -0
  351. data/lib/openai/models/responses/response_shell_call_output_content_delta_event.rb +82 -0
  352. data/lib/openai/models/responses/response_shell_call_output_content_done_event.rb +164 -0
  353. data/lib/openai/models/responses/response_stream_event.rb +122 -51
  354. data/lib/openai/models/responses/response_text_delta_event.rb +8 -4
  355. data/lib/openai/models/responses/response_text_done_event.rb +8 -4
  356. data/lib/openai/models/responses/response_tool_search_output_item_param.rb +7 -5
  357. data/lib/openai/models/responses/responses_client_event.rb +38 -26
  358. data/lib/openai/models/responses/responses_server_event.rb +871 -133
  359. data/lib/openai/models/responses/tool.rb +51 -45
  360. data/lib/openai/models/responses/tool_choice_allowed.rb +4 -2
  361. data/lib/openai/models/responses/web_search_preview_tool.rb +4 -2
  362. data/lib/openai/models/vector_store_search_response.rb +9 -7
  363. data/lib/openai/models/vector_stores/file_batch_create_params.rb +14 -10
  364. data/lib/openai/models/vector_stores/file_create_params.rb +7 -5
  365. data/lib/openai/models/vector_stores/file_update_params.rb +7 -5
  366. data/lib/openai/models/vector_stores/vector_store_file.rb +7 -5
  367. data/lib/openai/models/webhooks/live_call_incoming_webhook_event.rb +4 -2
  368. data/lib/openai/models/webhooks/realtime_call_incoming_webhook_event.rb +4 -2
  369. data/lib/openai/models.rb +12 -12
  370. data/lib/openai/net_http_client.rb +90 -38
  371. data/lib/openai/providers/azure.rb +61 -48
  372. data/lib/openai/providers/bedrock.rb +126 -96
  373. data/lib/openai/resources/admin/organization/groups/roles.rb +8 -8
  374. data/lib/openai/resources/admin/organization/groups/users.rb +8 -8
  375. data/lib/openai/resources/admin/organization/projects/api_keys.rb +8 -8
  376. data/lib/openai/resources/admin/organization/projects/groups/roles.rb +24 -24
  377. data/lib/openai/resources/admin/organization/projects/groups.rb +8 -8
  378. data/lib/openai/resources/admin/organization/projects/hosted_tool_permissions.rb +3 -2
  379. data/lib/openai/resources/admin/organization/projects/rate_limits.rb +10 -8
  380. data/lib/openai/resources/admin/organization/projects/roles.rb +12 -12
  381. data/lib/openai/resources/admin/organization/projects/service_accounts/api_keys.rb +6 -6
  382. data/lib/openai/resources/admin/organization/projects/service_accounts.rb +14 -16
  383. data/lib/openai/resources/admin/organization/projects/spend_alerts.rb +12 -12
  384. data/lib/openai/resources/admin/organization/projects/users/roles.rb +24 -24
  385. data/lib/openai/resources/admin/organization/projects/users.rb +12 -12
  386. data/lib/openai/resources/admin/organization/projects.rb +12 -9
  387. data/lib/openai/resources/admin/organization/users/roles.rb +8 -8
  388. data/lib/openai/resources/audio/transcriptions.rb +2 -0
  389. data/lib/openai/resources/beta/responses.rb +6 -2
  390. data/lib/openai/resources/beta/threads/messages.rb +12 -12
  391. data/lib/openai/resources/beta/threads/runs/steps.rb +12 -12
  392. data/lib/openai/resources/beta/threads/runs.rb +24 -20
  393. data/lib/openai/resources/beta/threads.rb +2 -0
  394. data/lib/openai/resources/chat/completions.rb +6 -97
  395. data/lib/openai/resources/completions.rb +2 -0
  396. data/lib/openai/resources/containers/files/content.rb +4 -4
  397. data/lib/openai/resources/containers/files.rb +8 -8
  398. data/lib/openai/resources/conversations/items.rb +8 -8
  399. data/lib/openai/resources/evals/runs/output_items.rb +12 -12
  400. data/lib/openai/resources/evals/runs.rb +12 -12
  401. data/lib/openai/resources/files.rb +39 -0
  402. data/lib/openai/resources/fine_tuning/checkpoints/permissions.rb +4 -4
  403. data/lib/openai/resources/images.rb +4 -0
  404. data/lib/openai/resources/realtime/calls.rb +54 -0
  405. data/lib/openai/resources/responses.rb +14 -140
  406. data/lib/openai/resources/skills/versions/content.rb +4 -4
  407. data/lib/openai/resources/skills/versions.rb +8 -8
  408. data/lib/openai/resources/vector_stores/file_batches.rb +197 -13
  409. data/lib/openai/resources/vector_stores/files.rb +211 -17
  410. data/lib/openai/resources/webhooks.rb +12 -15
  411. data/lib/openai/version.rb +1 -1
  412. data/lib/openai.rb +24 -4
  413. data/manifest.yaml +0 -2
  414. data/rbi/openai/auth/x509_token_exchange.rbi +29 -0
  415. data/rbi/openai/auth/x509_transport.rbi +57 -0
  416. data/rbi/openai/auth/x509_workload_identity.rbi +45 -0
  417. data/rbi/openai/auth.rbi +24 -1
  418. data/rbi/openai/client.rbi +107 -2
  419. data/rbi/openai/errors.rbi +35 -6
  420. data/rbi/openai/file_part.rbi +33 -1
  421. data/rbi/openai/helpers/client_options.rbi +33 -0
  422. data/rbi/openai/helpers/data_residency.rbi +25 -0
  423. data/rbi/openai/helpers/realtime/connection.rbi +93 -0
  424. data/rbi/openai/helpers/realtime/connection_manager.rbi +46 -0
  425. data/rbi/openai/helpers/realtime/connection_resources.rbi +109 -0
  426. data/rbi/openai/helpers/realtime/extensions.rbi +169 -0
  427. data/rbi/openai/helpers/realtime/sideband_connection.rbi +24 -0
  428. data/rbi/openai/helpers/realtime/transports/async_websocket.rbi +70 -0
  429. data/rbi/openai/helpers/realtime/unknown_server_event.rbi +26 -0
  430. data/rbi/openai/helpers/resource_polling.rbi +63 -0
  431. data/rbi/openai/helpers/sorbet.rbi +55 -0
  432. data/rbi/openai/helpers/streaming/response_event_decoder.rbi +28 -0
  433. data/rbi/openai/helpers/streaming/response_stream.rbi +24 -17
  434. data/rbi/openai/helpers/streaming/unknown_stream_event.rbi +29 -0
  435. data/rbi/openai/helpers/structured_output/chat_completion_parser.rbi +42 -0
  436. data/rbi/openai/helpers/structured_output/enum_of.rbi +3 -1
  437. data/rbi/openai/helpers/structured_output/json_schema_converter.rbi +27 -27
  438. data/rbi/openai/helpers/structured_output/response_parser.rbi +33 -0
  439. data/rbi/openai/helpers/structured_output/union_of.rbi +3 -3
  440. data/rbi/openai/http_client.rbi +6 -3
  441. data/rbi/openai/internal/logging.rbi +15 -8
  442. data/rbi/openai/internal/poller.rbi +55 -0
  443. data/rbi/openai/internal/provider.rbi +3 -6
  444. data/rbi/openai/internal/read_io_adapter.rbi +4 -2
  445. data/rbi/openai/internal/request_options_scope.rbi +21 -0
  446. data/rbi/openai/internal/stream.rbi +1 -2
  447. data/rbi/openai/internal/transport/base_client.rbi +161 -137
  448. data/rbi/openai/internal/type/array_of.rbi +14 -14
  449. data/rbi/openai/internal/type/base_model.rbi +61 -65
  450. data/rbi/openai/internal/type/base_page.rbi +2 -1
  451. data/rbi/openai/internal/type/base_stream.rbi +11 -11
  452. data/rbi/openai/internal/type/converter.rbi +83 -81
  453. data/rbi/openai/internal/type/hash_of.rbi +14 -14
  454. data/rbi/openai/internal/type/union.rbi +13 -14
  455. data/rbi/openai/internal/util.rbi +73 -72
  456. data/rbi/openai/internal/vector_store_file_uploader.rbi +31 -0
  457. data/rbi/openai/internal.rbi +1 -2
  458. data/rbi/openai/models/admin/organization/admin_api_key.rbi +57 -29
  459. data/rbi/openai/models/admin/organization/admin_api_key_create_params.rbi +23 -13
  460. data/rbi/openai/models/admin/organization/admin_api_key_create_response.rbi +78 -10
  461. data/rbi/openai/models/admin/organization/admin_api_key_delete_params.rbi +21 -9
  462. data/rbi/openai/models/admin/organization/admin_api_key_delete_response.rbi +26 -10
  463. data/rbi/openai/models/admin/organization/admin_api_key_list_params.rbi +33 -50
  464. data/rbi/openai/models/admin/organization/admin_api_key_retrieve_params.rbi +21 -9
  465. data/rbi/openai/models/admin/organization/audit_log_list_params.rbi +648 -793
  466. data/rbi/openai/models/admin/organization/audit_log_list_response.rbi +3003 -2915
  467. data/rbi/openai/models/admin/organization/certificate.rbi +66 -67
  468. data/rbi/openai/models/admin/organization/certificate_activate_params.rbi +25 -13
  469. data/rbi/openai/models/admin/organization/certificate_activate_response.rbi +58 -32
  470. data/rbi/openai/models/admin/organization/certificate_create_params.rbi +23 -13
  471. data/rbi/openai/models/admin/organization/certificate_deactivate_params.rbi +25 -13
  472. data/rbi/openai/models/admin/organization/certificate_deactivate_response.rbi +58 -32
  473. data/rbi/openai/models/admin/organization/certificate_delete_params.rbi +25 -13
  474. data/rbi/openai/models/admin/organization/certificate_delete_response.rbi +31 -9
  475. data/rbi/openai/models/admin/organization/certificate_list_params.rbi +33 -50
  476. data/rbi/openai/models/admin/organization/certificate_list_response.rbi +58 -32
  477. data/rbi/openai/models/admin/organization/certificate_retrieve_params.rbi +38 -53
  478. data/rbi/openai/models/admin/organization/certificate_update_params.rbi +23 -13
  479. data/rbi/openai/models/admin/organization/cost_quantity_unit.rbi +51 -0
  480. data/rbi/openai/models/admin/organization/data_retention_retrieve_params.rbi +15 -8
  481. data/rbi/openai/models/admin/organization/data_retention_update_params.rbi +45 -49
  482. data/rbi/openai/models/admin/organization/group.rbi +35 -37
  483. data/rbi/openai/models/admin/organization/group_create_params.rbi +21 -9
  484. data/rbi/openai/models/admin/organization/group_delete_params.rbi +25 -10
  485. data/rbi/openai/models/admin/organization/group_delete_response.rbi +27 -10
  486. data/rbi/openai/models/admin/organization/group_list_params.rbi +33 -50
  487. data/rbi/openai/models/admin/organization/group_retrieve_params.rbi +25 -10
  488. data/rbi/openai/models/admin/organization/group_update_params.rbi +23 -13
  489. data/rbi/openai/models/admin/organization/group_update_response.rbi +26 -14
  490. data/rbi/openai/models/admin/organization/groups/organization_group_user.rbi +26 -9
  491. data/rbi/openai/models/admin/organization/groups/role_create_params.rbi +25 -13
  492. data/rbi/openai/models/admin/organization/groups/role_create_response.rbi +49 -37
  493. data/rbi/openai/models/admin/organization/groups/role_delete_params.rbi +30 -14
  494. data/rbi/openai/models/admin/organization/groups/role_delete_response.rbi +30 -10
  495. data/rbi/openai/models/admin/organization/groups/role_list_params.rbi +39 -50
  496. data/rbi/openai/models/admin/organization/groups/role_list_response.rbi +72 -38
  497. data/rbi/openai/models/admin/organization/groups/role_retrieve_params.rbi +30 -14
  498. data/rbi/openai/models/admin/organization/groups/role_retrieve_response.rbi +72 -38
  499. data/rbi/openai/models/admin/organization/groups/user_create_params.rbi +25 -13
  500. data/rbi/openai/models/admin/organization/groups/user_create_response.rbi +29 -10
  501. data/rbi/openai/models/admin/organization/groups/user_delete_params.rbi +30 -14
  502. data/rbi/openai/models/admin/organization/groups/user_delete_response.rbi +30 -10
  503. data/rbi/openai/models/admin/organization/groups/user_list_params.rbi +39 -50
  504. data/rbi/openai/models/admin/organization/groups/user_retrieve_params.rbi +30 -14
  505. data/rbi/openai/models/admin/organization/groups/user_retrieve_response.rbi +48 -39
  506. data/rbi/openai/models/admin/organization/invite.rbi +71 -115
  507. data/rbi/openai/models/admin/organization/invite_create_params.rbi +60 -111
  508. data/rbi/openai/models/admin/organization/invite_delete_params.rbi +25 -10
  509. data/rbi/openai/models/admin/organization/invite_delete_response.rbi +27 -10
  510. data/rbi/openai/models/admin/organization/invite_list_params.rbi +23 -13
  511. data/rbi/openai/models/admin/organization/invite_retrieve_params.rbi +25 -10
  512. data/rbi/openai/models/admin/organization/organization_data_retention.rbi +45 -55
  513. data/rbi/openai/models/admin/organization/organization_spend_alert.rbi +74 -91
  514. data/rbi/openai/models/admin/organization/organization_spend_alert_deleted.rbi +28 -12
  515. data/rbi/openai/models/admin/organization/organization_spend_limit.rbi +92 -149
  516. data/rbi/openai/models/admin/organization/organization_spend_limit_deleted.rbi +29 -12
  517. data/rbi/openai/models/admin/organization/organization_user.rbi +119 -87
  518. data/rbi/openai/models/admin/organization/project.rbi +44 -8
  519. data/rbi/openai/models/admin/organization/project_archive_params.rbi +25 -10
  520. data/rbi/openai/models/admin/organization/project_create_params.rbi +46 -10
  521. data/rbi/openai/models/admin/organization/project_list_params.rbi +25 -14
  522. data/rbi/openai/models/admin/organization/project_residency.rbi +48 -0
  523. data/rbi/openai/models/admin/organization/project_retrieve_params.rbi +25 -10
  524. data/rbi/openai/models/admin/organization/project_update_params.rbi +30 -10
  525. data/rbi/openai/models/admin/organization/projects/api_key_delete_params.rbi +30 -14
  526. data/rbi/openai/models/admin/organization/projects/api_key_delete_response.rbi +28 -10
  527. data/rbi/openai/models/admin/organization/projects/api_key_list_params.rbi +56 -51
  528. data/rbi/openai/models/admin/organization/projects/api_key_retrieve_params.rbi +30 -14
  529. data/rbi/openai/models/admin/organization/projects/certificate_activate_params.rbi +30 -14
  530. data/rbi/openai/models/admin/organization/projects/certificate_activate_response.rbi +60 -32
  531. data/rbi/openai/models/admin/organization/projects/certificate_deactivate_params.rbi +30 -14
  532. data/rbi/openai/models/admin/organization/projects/certificate_deactivate_response.rbi +60 -32
  533. data/rbi/openai/models/admin/organization/projects/certificate_list_params.rbi +40 -47
  534. data/rbi/openai/models/admin/organization/projects/certificate_list_response.rbi +58 -32
  535. data/rbi/openai/models/admin/organization/projects/data_retention_retrieve_params.rbi +27 -10
  536. data/rbi/openai/models/admin/organization/projects/data_retention_update_params.rbi +56 -56
  537. data/rbi/openai/models/admin/organization/projects/group_create_params.rbi +27 -14
  538. data/rbi/openai/models/admin/organization/projects/group_delete_params.rbi +30 -14
  539. data/rbi/openai/models/admin/organization/projects/group_delete_response.rbi +30 -10
  540. data/rbi/openai/models/admin/organization/projects/group_list_params.rbi +41 -50
  541. data/rbi/openai/models/admin/organization/projects/group_retrieve_params.rbi +43 -47
  542. data/rbi/openai/models/admin/organization/projects/groups/role_create_params.rbi +29 -14
  543. data/rbi/openai/models/admin/organization/projects/groups/role_create_response.rbi +55 -40
  544. data/rbi/openai/models/admin/organization/projects/groups/role_delete_params.rbi +29 -14
  545. data/rbi/openai/models/admin/organization/projects/groups/role_delete_response.rbi +32 -10
  546. data/rbi/openai/models/admin/organization/projects/groups/role_list_params.rbi +48 -47
  547. data/rbi/openai/models/admin/organization/projects/groups/role_list_response.rbi +78 -36
  548. data/rbi/openai/models/admin/organization/projects/groups/role_retrieve_params.rbi +29 -14
  549. data/rbi/openai/models/admin/organization/projects/groups/role_retrieve_response.rbi +77 -33
  550. data/rbi/openai/models/admin/organization/projects/hosted_tool_permission_retrieve_params.rbi +27 -10
  551. data/rbi/openai/models/admin/organization/projects/hosted_tool_permission_update_params.rbi +209 -159
  552. data/rbi/openai/models/admin/organization/projects/model_permission_delete_params.rbi +27 -10
  553. data/rbi/openai/models/admin/organization/projects/model_permission_retrieve_params.rbi +27 -10
  554. data/rbi/openai/models/admin/organization/projects/model_permission_update_params.rbi +43 -39
  555. data/rbi/openai/models/admin/organization/projects/project_api_key.rbi +140 -163
  556. data/rbi/openai/models/admin/organization/projects/project_data_retention.rbi +53 -62
  557. data/rbi/openai/models/admin/organization/projects/project_group.rbi +46 -42
  558. data/rbi/openai/models/admin/organization/projects/project_hosted_tool_permissions.rbi +168 -124
  559. data/rbi/openai/models/admin/organization/projects/project_model_permissions.rbi +41 -38
  560. data/rbi/openai/models/admin/organization/projects/project_model_permissions_deleted.rbi +31 -12
  561. data/rbi/openai/models/admin/organization/projects/project_rate_limit.rbi +37 -8
  562. data/rbi/openai/models/admin/organization/projects/project_service_account.rbi +41 -44
  563. data/rbi/openai/models/admin/organization/projects/project_spend_alert.rbi +76 -87
  564. data/rbi/openai/models/admin/organization/projects/project_spend_alert_deleted.rbi +29 -10
  565. data/rbi/openai/models/admin/organization/projects/project_spend_limit.rbi +103 -149
  566. data/rbi/openai/models/admin/organization/projects/project_spend_limit_deleted.rbi +30 -10
  567. data/rbi/openai/models/admin/organization/projects/project_user.rbi +31 -8
  568. data/rbi/openai/models/admin/organization/projects/rate_limit_list_rate_limits_params.rbi +28 -8
  569. data/rbi/openai/models/admin/organization/projects/rate_limit_update_rate_limit_params.rbi +36 -8
  570. data/rbi/openai/models/admin/organization/projects/role_create_params.rbi +28 -8
  571. data/rbi/openai/models/admin/organization/projects/role_delete_params.rbi +30 -14
  572. data/rbi/openai/models/admin/organization/projects/role_delete_response.rbi +29 -10
  573. data/rbi/openai/models/admin/organization/projects/role_list_params.rbi +41 -50
  574. data/rbi/openai/models/admin/organization/projects/role_retrieve_params.rbi +30 -14
  575. data/rbi/openai/models/admin/organization/projects/role_update_params.rbi +30 -8
  576. data/rbi/openai/models/admin/organization/projects/service_account_create_params.rbi +26 -8
  577. data/rbi/openai/models/admin/organization/projects/service_account_create_response.rbi +85 -73
  578. data/rbi/openai/models/admin/organization/projects/service_account_delete_params.rbi +30 -14
  579. data/rbi/openai/models/admin/organization/projects/service_account_delete_response.rbi +28 -10
  580. data/rbi/openai/models/admin/organization/projects/service_account_list_params.rbi +27 -14
  581. data/rbi/openai/models/admin/organization/projects/service_account_retrieve_params.rbi +30 -14
  582. data/rbi/openai/models/admin/organization/projects/service_account_update_params.rbi +50 -47
  583. data/rbi/openai/models/admin/organization/projects/service_accounts/api_key_create_params.rbi +30 -8
  584. data/rbi/openai/models/admin/organization/projects/service_accounts/api_key_create_response.rbi +32 -15
  585. data/rbi/openai/models/admin/organization/projects/spend_alert_create_params.rbi +78 -87
  586. data/rbi/openai/models/admin/organization/projects/spend_alert_delete_params.rbi +30 -14
  587. data/rbi/openai/models/admin/organization/projects/spend_alert_list_params.rbi +42 -47
  588. data/rbi/openai/models/admin/organization/projects/spend_alert_retrieve_params.rbi +30 -14
  589. data/rbi/openai/models/admin/organization/projects/spend_alert_update_params.rbi +80 -87
  590. data/rbi/openai/models/admin/organization/projects/spend_limit_delete_params.rbi +27 -10
  591. data/rbi/openai/models/admin/organization/projects/spend_limit_retrieve_params.rbi +27 -10
  592. data/rbi/openai/models/admin/organization/projects/spend_limit_update_params.rbi +51 -60
  593. data/rbi/openai/models/admin/organization/projects/user_create_params.rbi +28 -8
  594. data/rbi/openai/models/admin/organization/projects/user_delete_params.rbi +30 -14
  595. data/rbi/openai/models/admin/organization/projects/user_delete_response.rbi +28 -10
  596. data/rbi/openai/models/admin/organization/projects/user_list_params.rbi +27 -14
  597. data/rbi/openai/models/admin/organization/projects/user_retrieve_params.rbi +30 -14
  598. data/rbi/openai/models/admin/organization/projects/user_update_params.rbi +27 -14
  599. data/rbi/openai/models/admin/organization/projects/users/role_create_params.rbi +29 -14
  600. data/rbi/openai/models/admin/organization/projects/users/role_create_response.rbi +29 -16
  601. data/rbi/openai/models/admin/organization/projects/users/role_delete_params.rbi +35 -15
  602. data/rbi/openai/models/admin/organization/projects/users/role_delete_response.rbi +32 -10
  603. data/rbi/openai/models/admin/organization/projects/users/role_list_params.rbi +44 -47
  604. data/rbi/openai/models/admin/organization/projects/users/role_list_response.rbi +76 -36
  605. data/rbi/openai/models/admin/organization/projects/users/role_retrieve_params.rbi +35 -15
  606. data/rbi/openai/models/admin/organization/projects/users/role_retrieve_response.rbi +77 -33
  607. data/rbi/openai/models/admin/organization/role.rbi +31 -8
  608. data/rbi/openai/models/admin/organization/role_create_params.rbi +24 -8
  609. data/rbi/openai/models/admin/organization/role_delete_params.rbi +25 -10
  610. data/rbi/openai/models/admin/organization/role_delete_response.rbi +27 -10
  611. data/rbi/openai/models/admin/organization/role_list_params.rbi +33 -50
  612. data/rbi/openai/models/admin/organization/role_retrieve_params.rbi +25 -10
  613. data/rbi/openai/models/admin/organization/role_update_params.rbi +26 -8
  614. data/rbi/openai/models/admin/organization/spend_alert_create_params.rbi +71 -91
  615. data/rbi/openai/models/admin/organization/spend_alert_delete_params.rbi +25 -10
  616. data/rbi/openai/models/admin/organization/spend_alert_list_params.rbi +35 -50
  617. data/rbi/openai/models/admin/organization/spend_alert_retrieve_params.rbi +25 -10
  618. data/rbi/openai/models/admin/organization/spend_alert_update_params.rbi +73 -91
  619. data/rbi/openai/models/admin/organization/spend_limit_delete_params.rbi +15 -8
  620. data/rbi/openai/models/admin/organization/spend_limit_retrieve_params.rbi +15 -8
  621. data/rbi/openai/models/admin/organization/spend_limit_update_params.rbi +46 -66
  622. data/rbi/openai/models/admin/organization/usage_audio_speeches_params.rbi +86 -111
  623. data/rbi/openai/models/admin/organization/usage_audio_speeches_response.rbi +404 -197
  624. data/rbi/openai/models/admin/organization/usage_audio_transcriptions_params.rbi +93 -109
  625. data/rbi/openai/models/admin/organization/usage_audio_transcriptions_response.rbi +403 -192
  626. data/rbi/openai/models/admin/organization/usage_code_interpreter_sessions_params.rbi +79 -91
  627. data/rbi/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbi +402 -189
  628. data/rbi/openai/models/admin/organization/usage_completions_params.rbi +83 -125
  629. data/rbi/openai/models/admin/organization/usage_completions_response.rbi +404 -197
  630. data/rbi/openai/models/admin/organization/usage_costs_params.rbi +54 -100
  631. data/rbi/openai/models/admin/organization/usage_costs_response.rbi +400 -197
  632. data/rbi/openai/models/admin/organization/usage_embeddings_params.rbi +76 -115
  633. data/rbi/openai/models/admin/organization/usage_embeddings_response.rbi +404 -197
  634. data/rbi/openai/models/admin/organization/usage_file_search_calls_params.rbi +89 -111
  635. data/rbi/openai/models/admin/organization/usage_file_search_calls_response.rbi +404 -195
  636. data/rbi/openai/models/admin/organization/usage_images_params.rbi +95 -245
  637. data/rbi/openai/models/admin/organization/usage_images_response.rbi +400 -197
  638. data/rbi/openai/models/admin/organization/usage_moderations_params.rbi +76 -115
  639. data/rbi/openai/models/admin/organization/usage_moderations_response.rbi +404 -197
  640. data/rbi/openai/models/admin/organization/usage_vector_stores_params.rbi +69 -96
  641. data/rbi/openai/models/admin/organization/usage_vector_stores_response.rbi +404 -197
  642. data/rbi/openai/models/admin/organization/usage_web_search_calls_params.rbi +111 -167
  643. data/rbi/openai/models/admin/organization/usage_web_search_calls_response.rbi +404 -195
  644. data/rbi/openai/models/admin/organization/user_delete_params.rbi +25 -10
  645. data/rbi/openai/models/admin/organization/user_delete_response.rbi +31 -11
  646. data/rbi/openai/models/admin/organization/user_list_params.rbi +25 -14
  647. data/rbi/openai/models/admin/organization/user_retrieve_params.rbi +25 -10
  648. data/rbi/openai/models/admin/organization/user_update_params.rbi +28 -8
  649. data/rbi/openai/models/admin/organization/users/role_create_params.rbi +25 -13
  650. data/rbi/openai/models/admin/organization/users/role_create_response.rbi +26 -13
  651. data/rbi/openai/models/admin/organization/users/role_delete_params.rbi +30 -14
  652. data/rbi/openai/models/admin/organization/users/role_delete_response.rbi +30 -10
  653. data/rbi/openai/models/admin/organization/users/role_list_params.rbi +39 -50
  654. data/rbi/openai/models/admin/organization/users/role_list_response.rbi +72 -38
  655. data/rbi/openai/models/admin/organization/users/role_retrieve_params.rbi +30 -14
  656. data/rbi/openai/models/admin/organization/users/role_retrieve_response.rbi +72 -38
  657. data/rbi/openai/models/all_models.rbi +43 -104
  658. data/rbi/openai/models/audio/speech_create_params.rbi +108 -188
  659. data/rbi/openai/models/audio/speech_model.rbi +9 -13
  660. data/rbi/openai/models/audio/transcription.rbi +124 -100
  661. data/rbi/openai/models/audio/transcription_create_params.rbi +107 -149
  662. data/rbi/openai/models/audio/transcription_create_response.rbi +12 -14
  663. data/rbi/openai/models/audio/transcription_diarized.rbi +111 -81
  664. data/rbi/openai/models/audio/transcription_diarized_segment.rbi +28 -16
  665. data/rbi/openai/models/audio/transcription_include.rbi +7 -9
  666. data/rbi/openai/models/audio/transcription_language.rbi +26 -9
  667. data/rbi/openai/models/audio/transcription_segment.rbi +35 -8
  668. data/rbi/openai/models/audio/transcription_stream_event.rbi +12 -12
  669. data/rbi/openai/models/audio/transcription_text_delta_event.rbi +44 -38
  670. data/rbi/openai/models/audio/transcription_text_done_event.rbi +95 -89
  671. data/rbi/openai/models/audio/transcription_text_segment_event.rbi +28 -16
  672. data/rbi/openai/models/audio/transcription_verbose.rbi +55 -31
  673. data/rbi/openai/models/audio/transcription_word.rbi +29 -7
  674. data/rbi/openai/models/audio/translation.rbi +28 -7
  675. data/rbi/openai/models/audio/translation_create_params.rbi +41 -72
  676. data/rbi/openai/models/audio/translation_create_response.rbi +11 -8
  677. data/rbi/openai/models/audio/translation_verbose.rbi +26 -19
  678. data/rbi/openai/models/audio_model.rbi +7 -13
  679. data/rbi/openai/models/audio_response_format.rbi +5 -7
  680. data/rbi/openai/models/auto_file_chunking_strategy_param.rbi +24 -9
  681. data/rbi/openai/models/batch.rbi +72 -8
  682. data/rbi/openai/models/batch_cancel_params.rbi +21 -7
  683. data/rbi/openai/models/batch_create_params.rbi +63 -87
  684. data/rbi/openai/models/batch_error.rbi +22 -9
  685. data/rbi/openai/models/batch_list_params.rbi +19 -10
  686. data/rbi/openai/models/batch_request_counts.rbi +23 -7
  687. data/rbi/openai/models/batch_retrieve_params.rbi +21 -7
  688. data/rbi/openai/models/batch_usage.rbi +68 -33
  689. data/rbi/openai/models/beta/assistant.rbi +121 -94
  690. data/rbi/openai/models/beta/assistant_create_params.rbi +258 -244
  691. data/rbi/openai/models/beta/assistant_delete_params.rbi +23 -10
  692. data/rbi/openai/models/beta/assistant_deleted.rbi +31 -8
  693. data/rbi/openai/models/beta/assistant_list_params.rbi +30 -24
  694. data/rbi/openai/models/beta/assistant_response_format_option.rbi +13 -13
  695. data/rbi/openai/models/beta/assistant_retrieve_params.rbi +23 -10
  696. data/rbi/openai/models/beta/assistant_stream_event.rbi +388 -279
  697. data/rbi/openai/models/beta/assistant_tool.rbi +13 -11
  698. data/rbi/openai/models/beta/assistant_tool_choice.rbi +25 -35
  699. data/rbi/openai/models/beta/assistant_tool_choice_function.rbi +26 -9
  700. data/rbi/openai/models/beta/assistant_tool_choice_option.rbi +17 -38
  701. data/rbi/openai/models/beta/assistant_update_params.rbi +230 -392
  702. data/rbi/openai/models/beta/beta_apply_patch_tool.rbi +27 -48
  703. data/rbi/openai/models/beta/beta_compacted_response.rbi +61 -47
  704. data/rbi/openai/models/beta/beta_computer_action.rbi +233 -159
  705. data/rbi/openai/models/beta/beta_computer_action_list.rbi +9 -9
  706. data/rbi/openai/models/beta/beta_computer_tool.rbi +26 -6
  707. data/rbi/openai/models/beta/beta_computer_use_preview_tool.rbi +34 -57
  708. data/rbi/openai/models/beta/beta_container_auto.rbi +70 -132
  709. data/rbi/openai/models/beta/beta_container_network_policy_allowlist.rbi +26 -31
  710. data/rbi/openai/models/beta/beta_container_network_policy_disabled.rbi +27 -11
  711. data/rbi/openai/models/beta/beta_container_network_policy_domain_secret.rbi +28 -12
  712. data/rbi/openai/models/beta/beta_container_reference.rbi +27 -9
  713. data/rbi/openai/models/beta/beta_custom_tool.rbi +97 -130
  714. data/rbi/openai/models/beta/beta_easy_input_message.rbi +47 -94
  715. data/rbi/openai/models/beta/beta_file_search_tool.rbi +283 -390
  716. data/rbi/openai/models/beta/beta_function_shell_tool.rbi +52 -82
  717. data/rbi/openai/models/beta/beta_function_tool.rbi +39 -46
  718. data/rbi/openai/models/beta/beta_inline_skill.rbi +24 -11
  719. data/rbi/openai/models/beta/beta_inline_skill_source.rbi +27 -10
  720. data/rbi/openai/models/beta/beta_local_environment.rbi +21 -9
  721. data/rbi/openai/models/beta/beta_local_skill.rbi +27 -7
  722. data/rbi/openai/models/beta/beta_mcp_tool_call_error.rbi +88 -43
  723. data/rbi/openai/models/beta/beta_namespace_tool.rbi +76 -93
  724. data/rbi/openai/models/beta/beta_response.rbi +728 -1318
  725. data/rbi/openai/models/beta/beta_response_apply_patch_tool_call.rbi +201 -164
  726. data/rbi/openai/models/beta/beta_response_apply_patch_tool_call_output.rbi +121 -114
  727. data/rbi/openai/models/beta/beta_response_audio_delta_event.rbi +47 -32
  728. data/rbi/openai/models/beta/beta_response_audio_done_event.rbi +46 -35
  729. data/rbi/openai/models/beta/beta_response_audio_transcript_delta_event.rbi +49 -42
  730. data/rbi/openai/models/beta/beta_response_audio_transcript_done_event.rbi +47 -40
  731. data/rbi/openai/models/beta/beta_response_code_interpreter_call_code_delta_event.rbi +55 -42
  732. data/rbi/openai/models/beta/beta_response_code_interpreter_call_code_done_event.rbi +55 -42
  733. data/rbi/openai/models/beta/beta_response_code_interpreter_call_completed_event.rbi +53 -42
  734. data/rbi/openai/models/beta/beta_response_code_interpreter_call_in_progress_event.rbi +53 -42
  735. data/rbi/openai/models/beta/beta_response_code_interpreter_call_interpreting_event.rbi +53 -42
  736. data/rbi/openai/models/beta/beta_response_code_interpreter_tool_call.rbi +137 -138
  737. data/rbi/openai/models/beta/beta_response_compaction_item.rbi +48 -25
  738. data/rbi/openai/models/beta/beta_response_compaction_item_param.rbi +48 -36
  739. data/rbi/openai/models/beta/beta_response_completed_event.rbi +47 -30
  740. data/rbi/openai/models/beta/beta_response_computer_tool_call.rbi +151 -181
  741. data/rbi/openai/models/beta/beta_response_computer_tool_call_output_item.rbi +105 -135
  742. data/rbi/openai/models/beta/beta_response_computer_tool_call_output_screenshot.rbi +28 -12
  743. data/rbi/openai/models/beta/beta_response_container_reference.rbi +27 -9
  744. data/rbi/openai/models/beta/beta_response_content.rbi +39 -24
  745. data/rbi/openai/models/beta/beta_response_content_part_added_event.rbi +93 -74
  746. data/rbi/openai/models/beta/beta_response_content_part_done_event.rbi +93 -72
  747. data/rbi/openai/models/beta/beta_response_conversation_param.rbi +26 -9
  748. data/rbi/openai/models/beta/beta_response_created_event.rbi +47 -28
  749. data/rbi/openai/models/beta/beta_response_custom_tool_call.rbi +119 -77
  750. data/rbi/openai/models/beta/beta_response_custom_tool_call_input_delta_event.rbi +53 -42
  751. data/rbi/openai/models/beta/beta_response_custom_tool_call_input_done_event.rbi +53 -42
  752. data/rbi/openai/models/beta/beta_response_custom_tool_call_item.rbi +84 -49
  753. data/rbi/openai/models/beta/beta_response_custom_tool_call_output.rbi +139 -129
  754. data/rbi/openai/models/beta/beta_response_custom_tool_call_output_item.rbi +74 -51
  755. data/rbi/openai/models/beta/beta_response_error.rbi +52 -119
  756. data/rbi/openai/models/beta/beta_response_error_event.rbi +50 -25
  757. data/rbi/openai/models/beta/beta_response_failed_event.rbi +46 -25
  758. data/rbi/openai/models/beta/beta_response_file_search_call_completed_event.rbi +51 -42
  759. data/rbi/openai/models/beta/beta_response_file_search_call_in_progress_event.rbi +51 -42
  760. data/rbi/openai/models/beta/beta_response_file_search_call_searching_event.rbi +51 -42
  761. data/rbi/openai/models/beta/beta_response_file_search_tool_call.rbi +97 -138
  762. data/rbi/openai/models/beta/beta_response_format_text_config.rbi +53 -29
  763. data/rbi/openai/models/beta/beta_response_format_text_json_schema_config.rbi +26 -10
  764. data/rbi/openai/models/beta/beta_response_function_call_arguments_delta_event.rbi +53 -42
  765. data/rbi/openai/models/beta/beta_response_function_call_arguments_done_event.rbi +54 -42
  766. data/rbi/openai/models/beta/beta_response_function_call_output_item.rbi +13 -14
  767. data/rbi/openai/models/beta/beta_response_function_call_output_item_list.rbi +11 -11
  768. data/rbi/openai/models/beta/beta_response_function_shell_call_output_content.rbi +83 -52
  769. data/rbi/openai/models/beta/beta_response_function_shell_tool_call.rbi +155 -170
  770. data/rbi/openai/models/beta/beta_response_function_shell_tool_call_output.rbi +203 -187
  771. data/rbi/openai/models/beta/beta_response_function_tool_call.rbi +131 -123
  772. data/rbi/openai/models/beta/beta_response_function_tool_call_item.rbi +84 -49
  773. data/rbi/openai/models/beta/beta_response_function_tool_call_output_item.rbi +166 -181
  774. data/rbi/openai/models/beta/beta_response_function_web_search.rbi +167 -161
  775. data/rbi/openai/models/beta/beta_response_image_gen_call_completed_event.rbi +51 -42
  776. data/rbi/openai/models/beta/beta_response_image_gen_call_generating_event.rbi +51 -42
  777. data/rbi/openai/models/beta/beta_response_image_gen_call_in_progress_event.rbi +51 -42
  778. data/rbi/openai/models/beta/beta_response_image_gen_call_partial_image_event.rbi +107 -42
  779. data/rbi/openai/models/beta/beta_response_in_progress_event.rbi +47 -32
  780. data/rbi/openai/models/beta/beta_response_includable.rbi +35 -47
  781. data/rbi/openai/models/beta/beta_response_incomplete_event.rbi +47 -32
  782. data/rbi/openai/models/beta/beta_response_inject_created_event.rbi +24 -14
  783. data/rbi/openai/models/beta/beta_response_inject_event.rbi +101 -90
  784. data/rbi/openai/models/beta/beta_response_inject_failed_event.rbi +134 -139
  785. data/rbi/openai/models/beta/beta_response_input.rbi +9 -9
  786. data/rbi/openai/models/beta/beta_response_input_audio.rbi +43 -65
  787. data/rbi/openai/models/beta/beta_response_input_content.rbi +12 -12
  788. data/rbi/openai/models/beta/beta_response_input_file.rbi +63 -70
  789. data/rbi/openai/models/beta/beta_response_input_file_content.rbi +71 -81
  790. data/rbi/openai/models/beta/beta_response_input_image.rbi +58 -65
  791. data/rbi/openai/models/beta/beta_response_input_image_content.rbi +67 -85
  792. data/rbi/openai/models/beta/beta_response_input_item.rbi +2142 -2457
  793. data/rbi/openai/models/beta/beta_response_input_message_content_list.rbi +11 -11
  794. data/rbi/openai/models/beta/beta_response_input_message_item.rbi +77 -122
  795. data/rbi/openai/models/beta/beta_response_input_text.rbi +48 -34
  796. data/rbi/openai/models/beta/beta_response_input_text_content.rbi +54 -39
  797. data/rbi/openai/models/beta/beta_response_item.rbi +1016 -1093
  798. data/rbi/openai/models/beta/beta_response_local_environment.rbi +26 -9
  799. data/rbi/openai/models/beta/beta_response_mcp_call_arguments_delta_event.rbi +53 -42
  800. data/rbi/openai/models/beta/beta_response_mcp_call_arguments_done_event.rbi +53 -42
  801. data/rbi/openai/models/beta/beta_response_mcp_call_completed_event.rbi +50 -38
  802. data/rbi/openai/models/beta/beta_response_mcp_call_failed_event.rbi +50 -36
  803. data/rbi/openai/models/beta/beta_response_mcp_call_in_progress_event.rbi +51 -40
  804. data/rbi/openai/models/beta/beta_response_mcp_list_tools_completed_event.rbi +51 -42
  805. data/rbi/openai/models/beta/beta_response_mcp_list_tools_failed_event.rbi +51 -40
  806. data/rbi/openai/models/beta/beta_response_mcp_list_tools_in_progress_event.rbi +51 -42
  807. data/rbi/openai/models/beta/beta_response_output_audio.rbi +27 -10
  808. data/rbi/openai/models/beta/beta_response_output_item.rbi +1080 -1127
  809. data/rbi/openai/models/beta/beta_response_output_item_added_event.rbi +83 -70
  810. data/rbi/openai/models/beta/beta_response_output_item_done_event.rbi +83 -70
  811. data/rbi/openai/models/beta/beta_response_output_message.rbi +76 -129
  812. data/rbi/openai/models/beta/beta_response_output_refusal.rbi +29 -9
  813. data/rbi/openai/models/beta/beta_response_output_text.rbi +180 -136
  814. data/rbi/openai/models/beta/beta_response_output_text_annotation_added_event.rbi +158 -122
  815. data/rbi/openai/models/beta/beta_response_prompt.rbi +55 -45
  816. data/rbi/openai/models/beta/beta_response_queued_event.rbi +46 -25
  817. data/rbi/openai/models/beta/beta_response_reasoning_item.rbi +115 -110
  818. data/rbi/openai/models/beta/beta_response_reasoning_summary_part_added_event.rbi +83 -66
  819. data/rbi/openai/models/beta/beta_response_reasoning_summary_part_done_event.rbi +96 -100
  820. data/rbi/openai/models/beta/beta_response_reasoning_summary_text_delta_event.rbi +55 -42
  821. data/rbi/openai/models/beta/beta_response_reasoning_summary_text_done_event.rbi +55 -42
  822. data/rbi/openai/models/beta/beta_response_reasoning_text_delta_event.rbi +55 -40
  823. data/rbi/openai/models/beta/beta_response_reasoning_text_done_event.rbi +55 -40
  824. data/rbi/openai/models/beta/beta_response_refusal_delta_event.rbi +54 -34
  825. data/rbi/openai/models/beta/beta_response_refusal_done_event.rbi +54 -34
  826. data/rbi/openai/models/beta/beta_response_shell_call_command_added_event.rbi +145 -0
  827. data/rbi/openai/models/beta/beta_response_shell_call_command_delta_event.rbi +158 -0
  828. data/rbi/openai/models/beta/beta_response_shell_call_command_done_event.rbi +145 -0
  829. data/rbi/openai/models/beta/beta_response_shell_call_output_content_delta_event.rbi +211 -0
  830. data/rbi/openai/models/beta/beta_response_shell_call_output_content_done_event.rbi +339 -0
  831. data/rbi/openai/models/beta/beta_response_status.rbi +10 -15
  832. data/rbi/openai/models/beta/beta_response_stream_event.rbi +67 -62
  833. data/rbi/openai/models/beta/beta_response_text_config.rbi +48 -70
  834. data/rbi/openai/models/beta/beta_response_text_delta_event.rbi +101 -81
  835. data/rbi/openai/models/beta/beta_response_text_done_event.rbi +101 -79
  836. data/rbi/openai/models/beta/beta_response_tool_search_call.rbi +68 -88
  837. data/rbi/openai/models/beta/beta_response_tool_search_output_item.rbi +90 -121
  838. data/rbi/openai/models/beta/beta_response_tool_search_output_item_param.rbi +115 -171
  839. data/rbi/openai/models/beta/beta_response_usage.rbi +69 -44
  840. data/rbi/openai/models/beta/beta_response_web_search_call_completed_event.rbi +51 -42
  841. data/rbi/openai/models/beta/beta_response_web_search_call_in_progress_event.rbi +51 -42
  842. data/rbi/openai/models/beta/beta_response_web_search_call_searching_event.rbi +51 -42
  843. data/rbi/openai/models/beta/beta_responses_client_event.rbi +1110 -1552
  844. data/rbi/openai/models/beta/beta_responses_server_event.rbi +2308 -1353
  845. data/rbi/openai/models/beta/beta_skill_reference.rbi +27 -7
  846. data/rbi/openai/models/beta/beta_tool.rbi +531 -931
  847. data/rbi/openai/models/beta/beta_tool_choice_allowed.rbi +26 -28
  848. data/rbi/openai/models/beta/beta_tool_choice_apply_patch.rbi +26 -9
  849. data/rbi/openai/models/beta/beta_tool_choice_custom.rbi +29 -6
  850. data/rbi/openai/models/beta/beta_tool_choice_function.rbi +29 -9
  851. data/rbi/openai/models/beta/beta_tool_choice_mcp.rbi +22 -6
  852. data/rbi/openai/models/beta/beta_tool_choice_options.rbi +7 -9
  853. data/rbi/openai/models/beta/beta_tool_choice_shell.rbi +26 -6
  854. data/rbi/openai/models/beta/beta_tool_choice_types.rbi +32 -56
  855. data/rbi/openai/models/beta/beta_tool_search_tool.rbi +30 -37
  856. data/rbi/openai/models/beta/beta_web_search_preview_tool.rbi +74 -151
  857. data/rbi/openai/models/beta/beta_web_search_tool.rbi +87 -142
  858. data/rbi/openai/models/beta/chatkit/chat_session.rbi +43 -29
  859. data/rbi/openai/models/beta/chatkit/chat_session_automatic_thread_titling.rbi +28 -9
  860. data/rbi/openai/models/beta/chatkit/chat_session_chatkit_configuration.rbi +31 -31
  861. data/rbi/openai/models/beta/chatkit/chat_session_chatkit_configuration_param.rbi +100 -90
  862. data/rbi/openai/models/beta/chatkit/chat_session_expires_after_param.rbi +29 -9
  863. data/rbi/openai/models/beta/chatkit/chat_session_file_upload.rbi +24 -13
  864. data/rbi/openai/models/beta/chatkit/chat_session_history.rbi +22 -9
  865. data/rbi/openai/models/beta/chatkit/chat_session_rate_limits.rbi +26 -9
  866. data/rbi/openai/models/beta/chatkit/chat_session_rate_limits_param.rbi +26 -9
  867. data/rbi/openai/models/beta/chatkit/chat_session_status.rbi +12 -25
  868. data/rbi/openai/models/beta/chatkit/chat_session_workflow_param.rbi +67 -67
  869. data/rbi/openai/models/beta/chatkit/chatkit_attachment.rbi +34 -37
  870. data/rbi/openai/models/beta/chatkit/chatkit_response_output_text.rbi +117 -108
  871. data/rbi/openai/models/beta/chatkit/chatkit_thread.rbi +101 -57
  872. data/rbi/openai/models/beta/chatkit/chatkit_thread_assistant_message_item.rbi +33 -19
  873. data/rbi/openai/models/beta/chatkit/chatkit_thread_item_list.rbi +193 -176
  874. data/rbi/openai/models/beta/chatkit/chatkit_thread_user_message_item.rbi +153 -119
  875. data/rbi/openai/models/beta/chatkit/chatkit_widget_item.rbi +30 -16
  876. data/rbi/openai/models/beta/chatkit/session_cancel_params.rbi +25 -10
  877. data/rbi/openai/models/beta/chatkit/session_create_params.rbi +42 -58
  878. data/rbi/openai/models/beta/chatkit/thread_delete_params.rbi +25 -10
  879. data/rbi/openai/models/beta/chatkit/thread_delete_response.rbi +27 -10
  880. data/rbi/openai/models/beta/chatkit/thread_list_items_params.rbi +37 -50
  881. data/rbi/openai/models/beta/chatkit/thread_list_params.rbi +35 -42
  882. data/rbi/openai/models/beta/chatkit/thread_retrieve_params.rbi +25 -10
  883. data/rbi/openai/models/beta/chatkit_workflow.rbi +50 -46
  884. data/rbi/openai/models/beta/code_interpreter_tool.rbi +26 -6
  885. data/rbi/openai/models/beta/file_search_tool.rbi +66 -89
  886. data/rbi/openai/models/beta/function_tool.rbi +20 -6
  887. data/rbi/openai/models/beta/message_stream_event.rbi +84 -59
  888. data/rbi/openai/models/beta/response_cancel_params.rbi +34 -34
  889. data/rbi/openai/models/beta/response_compact_params.rbi +321 -808
  890. data/rbi/openai/models/beta/response_create_params.rbi +738 -1545
  891. data/rbi/openai/models/beta/response_delete_params.rbi +34 -34
  892. data/rbi/openai/models/beta/response_retrieve_params.rbi +38 -49
  893. data/rbi/openai/models/beta/responses/beta_response_item_list.rbi +63 -45
  894. data/rbi/openai/models/beta/responses/input_item_list_params.rbi +53 -109
  895. data/rbi/openai/models/beta/responses/input_token_count_params.rbi +378 -691
  896. data/rbi/openai/models/beta/responses/input_token_count_response.rbi +31 -11
  897. data/rbi/openai/models/beta/run_step_stream_event.rbi +120 -102
  898. data/rbi/openai/models/beta/run_stream_event.rbi +158 -106
  899. data/rbi/openai/models/beta/thread.rbi +88 -66
  900. data/rbi/openai/models/beta/thread_create_and_run_params.rbi +512 -593
  901. data/rbi/openai/models/beta/thread_create_params.rbi +302 -330
  902. data/rbi/openai/models/beta/thread_delete_params.rbi +23 -7
  903. data/rbi/openai/models/beta/thread_deleted.rbi +31 -8
  904. data/rbi/openai/models/beta/thread_retrieve_params.rbi +23 -7
  905. data/rbi/openai/models/beta/thread_stream_event.rbi +21 -6
  906. data/rbi/openai/models/beta/thread_update_params.rbi +90 -81
  907. data/rbi/openai/models/beta/threads/annotation.rbi +13 -11
  908. data/rbi/openai/models/beta/threads/annotation_delta.rbi +13 -11
  909. data/rbi/openai/models/beta/threads/file_citation_annotation.rbi +52 -30
  910. data/rbi/openai/models/beta/threads/file_citation_delta_annotation.rbi +55 -34
  911. data/rbi/openai/models/beta/threads/file_path_annotation.rbi +50 -25
  912. data/rbi/openai/models/beta/threads/file_path_delta_annotation.rbi +54 -34
  913. data/rbi/openai/models/beta/threads/image_file.rbi +30 -44
  914. data/rbi/openai/models/beta/threads/image_file_content_block.rbi +23 -12
  915. data/rbi/openai/models/beta/threads/image_file_delta.rbi +30 -52
  916. data/rbi/openai/models/beta/threads/image_file_delta_block.rbi +25 -18
  917. data/rbi/openai/models/beta/threads/image_url.rbi +30 -41
  918. data/rbi/openai/models/beta/threads/image_url_content_block.rbi +23 -12
  919. data/rbi/openai/models/beta/threads/image_url_delta.rbi +30 -52
  920. data/rbi/openai/models/beta/threads/image_url_delta_block.rbi +25 -16
  921. data/rbi/openai/models/beta/threads/message.rbi +159 -212
  922. data/rbi/openai/models/beta/threads/message_content.rbi +15 -13
  923. data/rbi/openai/models/beta/threads/message_content_delta.rbi +15 -13
  924. data/rbi/openai/models/beta/threads/message_content_part_param.rbi +14 -12
  925. data/rbi/openai/models/beta/threads/message_create_params.rbi +116 -141
  926. data/rbi/openai/models/beta/threads/message_delete_params.rbi +28 -14
  927. data/rbi/openai/models/beta/threads/message_deleted.rbi +31 -11
  928. data/rbi/openai/models/beta/threads/message_delta.rbi +49 -71
  929. data/rbi/openai/models/beta/threads/message_delta_event.rbi +25 -16
  930. data/rbi/openai/models/beta/threads/message_list_params.rbi +38 -44
  931. data/rbi/openai/models/beta/threads/message_retrieve_params.rbi +28 -14
  932. data/rbi/openai/models/beta/threads/message_update_params.rbi +24 -8
  933. data/rbi/openai/models/beta/threads/refusal_content_block.rbi +29 -9
  934. data/rbi/openai/models/beta/threads/refusal_delta_block.rbi +29 -10
  935. data/rbi/openai/models/beta/threads/required_action_function_tool_call.rbi +49 -36
  936. data/rbi/openai/models/beta/threads/run.rbi +229 -298
  937. data/rbi/openai/models/beta/threads/run_cancel_params.rbi +28 -14
  938. data/rbi/openai/models/beta/threads/run_create_params.rbi +264 -330
  939. data/rbi/openai/models/beta/threads/run_list_params.rbi +35 -40
  940. data/rbi/openai/models/beta/threads/run_retrieve_params.rbi +28 -14
  941. data/rbi/openai/models/beta/threads/run_status.rbi +18 -29
  942. data/rbi/openai/models/beta/threads/run_submit_tool_outputs_params.rbi +48 -33
  943. data/rbi/openai/models/beta/threads/run_update_params.rbi +24 -8
  944. data/rbi/openai/models/beta/threads/runs/code_interpreter_logs.rbi +31 -10
  945. data/rbi/openai/models/beta/threads/runs/code_interpreter_output_image.rbi +50 -38
  946. data/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi +130 -96
  947. data/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbi +78 -64
  948. data/rbi/openai/models/beta/threads/runs/file_search_tool_call.rbi +149 -172
  949. data/rbi/openai/models/beta/threads/runs/file_search_tool_call_delta.rbi +28 -14
  950. data/rbi/openai/models/beta/threads/runs/function_tool_call.rbi +46 -34
  951. data/rbi/openai/models/beta/threads/runs/function_tool_call_delta.rbi +48 -34
  952. data/rbi/openai/models/beta/threads/runs/message_creation_step_details.rbi +49 -30
  953. data/rbi/openai/models/beta/threads/runs/run_step.rbi +128 -193
  954. data/rbi/openai/models/beta/threads/runs/run_step_delta.rbi +42 -45
  955. data/rbi/openai/models/beta/threads/runs/run_step_delta_event.rbi +27 -18
  956. data/rbi/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi +51 -37
  957. data/rbi/openai/models/beta/threads/runs/run_step_include.rbi +15 -17
  958. data/rbi/openai/models/beta/threads/runs/step_list_params.rbi +47 -75
  959. data/rbi/openai/models/beta/threads/runs/step_retrieve_params.rbi +32 -33
  960. data/rbi/openai/models/beta/threads/runs/tool_call.rbi +16 -12
  961. data/rbi/openai/models/beta/threads/runs/tool_call_delta.rbi +16 -12
  962. data/rbi/openai/models/beta/threads/runs/tool_call_delta_object.rbi +43 -41
  963. data/rbi/openai/models/beta/threads/runs/tool_calls_step_details.rbi +32 -24
  964. data/rbi/openai/models/beta/threads/text.rbi +28 -17
  965. data/rbi/openai/models/beta/threads/text_content_block.rbi +22 -9
  966. data/rbi/openai/models/beta/threads/text_content_block_param.rbi +31 -9
  967. data/rbi/openai/models/beta/threads/text_delta.rbi +37 -32
  968. data/rbi/openai/models/beta/threads/text_delta_block.rbi +24 -13
  969. data/rbi/openai/models/chat/chat_completion.rbi +333 -377
  970. data/rbi/openai/models/chat/chat_completion_allowed_tool_choice.rbi +21 -17
  971. data/rbi/openai/models/chat/chat_completion_allowed_tools.rbi +25 -33
  972. data/rbi/openai/models/chat/chat_completion_assistant_message_param.rbi +131 -149
  973. data/rbi/openai/models/chat/chat_completion_audio.rbi +24 -11
  974. data/rbi/openai/models/chat/chat_completion_audio_param.rbi +83 -141
  975. data/rbi/openai/models/chat/chat_completion_chunk.rbi +464 -589
  976. data/rbi/openai/models/chat/chat_completion_content_part.rbi +75 -60
  977. data/rbi/openai/models/chat/chat_completion_content_part_image.rbi +78 -100
  978. data/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi +78 -89
  979. data/rbi/openai/models/chat/chat_completion_content_part_refusal.rbi +29 -9
  980. data/rbi/openai/models/chat/chat_completion_content_part_text.rbi +49 -34
  981. data/rbi/openai/models/chat/chat_completion_custom_tool.rbi +131 -128
  982. data/rbi/openai/models/chat/chat_completion_deleted.rbi +27 -10
  983. data/rbi/openai/models/chat/chat_completion_developer_message_param.rbi +32 -44
  984. data/rbi/openai/models/chat/chat_completion_function_call_option.rbi +26 -9
  985. data/rbi/openai/models/chat/chat_completion_function_message_param.rbi +23 -11
  986. data/rbi/openai/models/chat/chat_completion_function_tool.rbi +20 -9
  987. data/rbi/openai/models/chat/chat_completion_message.rbi +113 -114
  988. data/rbi/openai/models/chat/chat_completion_message_custom_tool_call.rbi +50 -35
  989. data/rbi/openai/models/chat/chat_completion_message_function_tool_call.rbi +48 -36
  990. data/rbi/openai/models/chat/chat_completion_message_param.rbi +15 -15
  991. data/rbi/openai/models/chat/chat_completion_message_tool_call.rbi +11 -11
  992. data/rbi/openai/models/chat/chat_completion_modality.rbi +7 -9
  993. data/rbi/openai/models/chat/chat_completion_named_tool_choice.rbi +43 -29
  994. data/rbi/openai/models/chat/chat_completion_named_tool_choice_custom.rbi +44 -33
  995. data/rbi/openai/models/chat/chat_completion_prediction_content.rbi +30 -42
  996. data/rbi/openai/models/chat/chat_completion_reasoning_effort.rbi +4 -0
  997. data/rbi/openai/models/chat/chat_completion_role.rbi +9 -13
  998. data/rbi/openai/models/chat/chat_completion_store_message.rbi +85 -46
  999. data/rbi/openai/models/chat/chat_completion_stream_options.rbi +20 -9
  1000. data/rbi/openai/models/chat/chat_completion_system_message_param.rbi +31 -42
  1001. data/rbi/openai/models/chat/chat_completion_token_logprob.rbi +43 -32
  1002. data/rbi/openai/models/chat/chat_completion_tool.rbi +12 -10
  1003. data/rbi/openai/models/chat/chat_completion_tool_choice_option.rbi +19 -40
  1004. data/rbi/openai/models/chat/chat_completion_tool_message_param.rbi +31 -38
  1005. data/rbi/openai/models/chat/chat_completion_user_message_param.rbi +31 -42
  1006. data/rbi/openai/models/chat/completion_create_params.rbi +514 -824
  1007. data/rbi/openai/models/chat/completion_delete_params.rbi +23 -10
  1008. data/rbi/openai/models/chat/completion_list_params.rbi +33 -32
  1009. data/rbi/openai/models/chat/completion_retrieve_params.rbi +23 -10
  1010. data/rbi/openai/models/chat/completion_update_params.rbi +20 -8
  1011. data/rbi/openai/models/chat/completions/message_list_params.rbi +35 -50
  1012. data/rbi/openai/models/chat_model.rbi +55 -112
  1013. data/rbi/openai/models/comparison_filter.rbi +32 -36
  1014. data/rbi/openai/models/completion.rbi +27 -3
  1015. data/rbi/openai/models/completion_choice.rbi +43 -31
  1016. data/rbi/openai/models/completion_create_params.rbi +88 -93
  1017. data/rbi/openai/models/completion_usage.rbi +69 -42
  1018. data/rbi/openai/models/compound_filter.rbi +23 -19
  1019. data/rbi/openai/models/container_create_params.rbi +89 -160
  1020. data/rbi/openai/models/container_create_response.rbi +98 -176
  1021. data/rbi/openai/models/container_delete_params.rbi +21 -7
  1022. data/rbi/openai/models/container_list_params.rbi +24 -12
  1023. data/rbi/openai/models/container_list_response.rbi +92 -168
  1024. data/rbi/openai/models/container_retrieve_params.rbi +21 -7
  1025. data/rbi/openai/models/container_retrieve_response.rbi +100 -179
  1026. data/rbi/openai/models/containers/file_create_params.rbi +22 -8
  1027. data/rbi/openai/models/containers/file_create_response.rbi +29 -8
  1028. data/rbi/openai/models/containers/file_delete_params.rbi +26 -14
  1029. data/rbi/openai/models/containers/file_list_params.rbi +31 -32
  1030. data/rbi/openai/models/containers/file_list_response.rbi +29 -8
  1031. data/rbi/openai/models/containers/file_retrieve_params.rbi +26 -14
  1032. data/rbi/openai/models/containers/file_retrieve_response.rbi +29 -8
  1033. data/rbi/openai/models/containers/files/content_retrieve_params.rbi +28 -14
  1034. data/rbi/openai/models/content_provenance_check.rbi +106 -165
  1035. data/rbi/openai/models/content_provenance_check_create_params.rbi +17 -12
  1036. data/rbi/openai/models/conversations/computer_screenshot_content.rbi +63 -76
  1037. data/rbi/openai/models/conversations/conversation.rbi +24 -14
  1038. data/rbi/openai/models/conversations/conversation_create_params.rbi +98 -88
  1039. data/rbi/openai/models/conversations/conversation_delete_params.rbi +23 -10
  1040. data/rbi/openai/models/conversations/conversation_deleted.rbi +31 -11
  1041. data/rbi/openai/models/conversations/conversation_deleted_resource.rbi +31 -11
  1042. data/rbi/openai/models/conversations/conversation_item.rbi +417 -488
  1043. data/rbi/openai/models/conversations/conversation_item_list.rbi +58 -44
  1044. data/rbi/openai/models/conversations/conversation_retrieve_params.rbi +23 -10
  1045. data/rbi/openai/models/conversations/conversation_update_params.rbi +20 -8
  1046. data/rbi/openai/models/conversations/input_file_content.rbi +4 -0
  1047. data/rbi/openai/models/conversations/input_image_content.rbi +4 -0
  1048. data/rbi/openai/models/conversations/input_text_content.rbi +4 -0
  1049. data/rbi/openai/models/conversations/item_create_params.rbi +99 -96
  1050. data/rbi/openai/models/conversations/item_delete_params.rbi +26 -14
  1051. data/rbi/openai/models/conversations/item_list_params.rbi +36 -52
  1052. data/rbi/openai/models/conversations/item_retrieve_params.rbi +25 -20
  1053. data/rbi/openai/models/conversations/message.rbi +100 -132
  1054. data/rbi/openai/models/conversations/output_text_content.rbi +4 -0
  1055. data/rbi/openai/models/conversations/refusal_content.rbi +4 -0
  1056. data/rbi/openai/models/conversations/summary_text_content.rbi +29 -9
  1057. data/rbi/openai/models/conversations/text_content.rbi +32 -7
  1058. data/rbi/openai/models/create_embedding_response.rbi +40 -15
  1059. data/rbi/openai/models/custom_tool_input_format.rbi +51 -55
  1060. data/rbi/openai/models/deleted_skill.rbi +29 -6
  1061. data/rbi/openai/models/embedding.rbi +20 -4
  1062. data/rbi/openai/models/embedding_create_params.rbi +54 -83
  1063. data/rbi/openai/models/embedding_model.rbi +5 -6
  1064. data/rbi/openai/models/error_object.rbi +27 -10
  1065. data/rbi/openai/models/eval_create_params.rbi +482 -314
  1066. data/rbi/openai/models/eval_create_response.rbi +236 -108
  1067. data/rbi/openai/models/eval_custom_data_source_config.rbi +22 -7
  1068. data/rbi/openai/models/eval_delete_params.rbi +21 -7
  1069. data/rbi/openai/models/eval_delete_response.rbi +27 -8
  1070. data/rbi/openai/models/eval_list_params.rbi +28 -23
  1071. data/rbi/openai/models/eval_list_response.rbi +236 -106
  1072. data/rbi/openai/models/eval_retrieve_params.rbi +21 -7
  1073. data/rbi/openai/models/eval_retrieve_response.rbi +236 -110
  1074. data/rbi/openai/models/eval_stored_completions_data_source_config.rbi +20 -13
  1075. data/rbi/openai/models/eval_update_params.rbi +20 -5
  1076. data/rbi/openai/models/eval_update_response.rbi +236 -108
  1077. data/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi +418 -400
  1078. data/rbi/openai/models/evals/create_eval_jsonl_run_data_source.rbi +93 -77
  1079. data/rbi/openai/models/evals/eval_api_error.rbi +29 -6
  1080. data/rbi/openai/models/evals/run_cancel_params.rbi +26 -11
  1081. data/rbi/openai/models/evals/run_cancel_response.rbi +601 -512
  1082. data/rbi/openai/models/evals/run_create_params.rbi +580 -484
  1083. data/rbi/openai/models/evals/run_create_response.rbi +601 -512
  1084. data/rbi/openai/models/evals/run_delete_params.rbi +26 -11
  1085. data/rbi/openai/models/evals/run_delete_response.rbi +29 -11
  1086. data/rbi/openai/models/evals/run_list_params.rbi +40 -48
  1087. data/rbi/openai/models/evals/run_list_response.rbi +601 -512
  1088. data/rbi/openai/models/evals/run_retrieve_params.rbi +26 -11
  1089. data/rbi/openai/models/evals/run_retrieve_response.rbi +606 -515
  1090. data/rbi/openai/models/evals/runs/output_item_list_params.rbi +47 -83
  1091. data/rbi/openai/models/evals/runs/output_item_list_response.rbi +166 -129
  1092. data/rbi/openai/models/evals/runs/output_item_retrieve_params.rbi +31 -15
  1093. data/rbi/openai/models/evals/runs/output_item_retrieve_response.rbi +166 -131
  1094. data/rbi/openai/models/file_chunking_strategy.rbi +9 -7
  1095. data/rbi/openai/models/file_chunking_strategy_param.rbi +10 -10
  1096. data/rbi/openai/models/file_content.rbi +2 -0
  1097. data/rbi/openai/models/file_content_params.rbi +21 -7
  1098. data/rbi/openai/models/file_create_params.rbi +43 -19
  1099. data/rbi/openai/models/file_delete_params.rbi +21 -7
  1100. data/rbi/openai/models/file_deleted.rbi +29 -6
  1101. data/rbi/openai/models/file_list_params.rbi +24 -12
  1102. data/rbi/openai/models/file_object.rbi +40 -23
  1103. data/rbi/openai/models/file_purpose.rbi +2 -0
  1104. data/rbi/openai/models/file_retrieve_params.rbi +21 -7
  1105. data/rbi/openai/models/fine_tuning/alpha/grader_run_params.rbi +51 -43
  1106. data/rbi/openai/models/fine_tuning/alpha/grader_run_response.rbi +88 -51
  1107. data/rbi/openai/models/fine_tuning/alpha/grader_validate_params.rbi +47 -43
  1108. data/rbi/openai/models/fine_tuning/alpha/grader_validate_response.rbi +51 -54
  1109. data/rbi/openai/models/fine_tuning/checkpoints/permission_create_params.rbi +22 -8
  1110. data/rbi/openai/models/fine_tuning/checkpoints/permission_create_response.rbi +26 -14
  1111. data/rbi/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi +23 -13
  1112. data/rbi/openai/models/fine_tuning/checkpoints/permission_delete_response.rbi +27 -10
  1113. data/rbi/openai/models/fine_tuning/checkpoints/permission_list_params.rbi +39 -50
  1114. data/rbi/openai/models/fine_tuning/checkpoints/permission_list_response.rbi +26 -14
  1115. data/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi +47 -50
  1116. data/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbi +46 -35
  1117. data/rbi/openai/models/fine_tuning/dpo_hyperparameters.rbi +31 -34
  1118. data/rbi/openai/models/fine_tuning/dpo_method.rbi +19 -11
  1119. data/rbi/openai/models/fine_tuning/fine_tuning_job.rbi +143 -199
  1120. data/rbi/openai/models/fine_tuning/fine_tuning_job_event.rbi +44 -74
  1121. data/rbi/openai/models/fine_tuning/fine_tuning_job_integration.rbi +5 -2
  1122. data/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi +24 -14
  1123. data/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi +22 -19
  1124. data/rbi/openai/models/fine_tuning/job_cancel_params.rbi +23 -13
  1125. data/rbi/openai/models/fine_tuning/job_create_params.rbi +143 -209
  1126. data/rbi/openai/models/fine_tuning/job_list_events_params.rbi +23 -14
  1127. data/rbi/openai/models/fine_tuning/job_list_params.rbi +22 -5
  1128. data/rbi/openai/models/fine_tuning/job_pause_params.rbi +23 -10
  1129. data/rbi/openai/models/fine_tuning/job_resume_params.rbi +23 -13
  1130. data/rbi/openai/models/fine_tuning/job_retrieve_params.rbi +23 -13
  1131. data/rbi/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi +25 -14
  1132. data/rbi/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbi +58 -29
  1133. data/rbi/openai/models/fine_tuning/reinforcement_hyperparameters.rbi +61 -99
  1134. data/rbi/openai/models/fine_tuning/reinforcement_method.rbi +49 -54
  1135. data/rbi/openai/models/fine_tuning/supervised_hyperparameters.rbi +29 -29
  1136. data/rbi/openai/models/fine_tuning/supervised_method.rbi +21 -20
  1137. data/rbi/openai/models/function_definition.rbi +22 -11
  1138. data/rbi/openai/models/function_parameters.rbi +6 -5
  1139. data/rbi/openai/models/graders/grader_input_item.rbi +57 -30
  1140. data/rbi/openai/models/graders/grader_inputs.rbi +9 -9
  1141. data/rbi/openai/models/graders/label_model_grader.rbi +140 -146
  1142. data/rbi/openai/models/graders/multi_grader.rbi +50 -38
  1143. data/rbi/openai/models/graders/python_grader.rbi +24 -6
  1144. data/rbi/openai/models/graders/score_model_grader.rbi +163 -165
  1145. data/rbi/openai/models/graders/string_check_grader.rbi +33 -39
  1146. data/rbi/openai/models/graders/text_similarity_grader.rbi +42 -87
  1147. data/rbi/openai/models/image.rbi +23 -4
  1148. data/rbi/openai/models/image_create_variation_params.rbi +44 -77
  1149. data/rbi/openai/models/image_edit_completed_event.rbi +94 -134
  1150. data/rbi/openai/models/image_edit_params.rbi +110 -153
  1151. data/rbi/openai/models/image_edit_partial_image_event.rbi +60 -125
  1152. data/rbi/openai/models/image_edit_stream_event.rbi +9 -7
  1153. data/rbi/openai/models/image_gen_completed_event.rbi +92 -125
  1154. data/rbi/openai/models/image_gen_partial_image_event.rbi +60 -119
  1155. data/rbi/openai/models/image_gen_stream_event.rbi +9 -7
  1156. data/rbi/openai/models/image_generate_params.rbi +117 -196
  1157. data/rbi/openai/models/image_input_reference_param.rbi +25 -6
  1158. data/rbi/openai/models/image_model.rbi +5 -6
  1159. data/rbi/openai/models/images_response.rbi +108 -103
  1160. data/rbi/openai/models/metadata.rbi +6 -5
  1161. data/rbi/openai/models/model.rbi +24 -9
  1162. data/rbi/openai/models/model_delete_params.rbi +21 -7
  1163. data/rbi/openai/models/model_deleted.rbi +29 -6
  1164. data/rbi/openai/models/model_list_params.rbi +11 -5
  1165. data/rbi/openai/models/model_retrieve_params.rbi +21 -7
  1166. data/rbi/openai/models/moderation.rbi +240 -501
  1167. data/rbi/openai/models/moderation_create_params.rbi +38 -45
  1168. data/rbi/openai/models/moderation_create_response.rbi +20 -9
  1169. data/rbi/openai/models/moderation_image_url_input.rbi +40 -20
  1170. data/rbi/openai/models/moderation_model.rbi +6 -11
  1171. data/rbi/openai/models/moderation_multi_modal_input.rbi +10 -7
  1172. data/rbi/openai/models/moderation_text_input.rbi +27 -6
  1173. data/rbi/openai/models/oauth_error_code.rbi +15 -7
  1174. data/rbi/openai/models/other_file_chunking_strategy_object.rbi +24 -9
  1175. data/rbi/openai/models/realtime/audio_transcription.rbi +69 -141
  1176. data/rbi/openai/models/realtime/call_accept_params.rbi +175 -7
  1177. data/rbi/openai/models/realtime/call_create_params.rbi +71 -0
  1178. data/rbi/openai/models/realtime/call_hangup_params.rbi +23 -7
  1179. data/rbi/openai/models/realtime/call_refer_params.rbi +21 -10
  1180. data/rbi/openai/models/realtime/call_reject_params.rbi +21 -10
  1181. data/rbi/openai/models/realtime/client_secret_create_params.rbi +77 -104
  1182. data/rbi/openai/models/realtime/client_secret_create_response.rbi +35 -34
  1183. data/rbi/openai/models/realtime/conversation_created_event.rbi +53 -73
  1184. data/rbi/openai/models/realtime/conversation_item.rbi +18 -18
  1185. data/rbi/openai/models/realtime/conversation_item_added.rbi +47 -34
  1186. data/rbi/openai/models/realtime/conversation_item_create_event.rbi +47 -34
  1187. data/rbi/openai/models/realtime/conversation_item_created_event.rbi +47 -34
  1188. data/rbi/openai/models/realtime/conversation_item_delete_event.rbi +27 -10
  1189. data/rbi/openai/models/realtime/conversation_item_deleted_event.rbi +27 -10
  1190. data/rbi/openai/models/realtime/conversation_item_done.rbi +47 -34
  1191. data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rbi +120 -81
  1192. data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rbi +29 -13
  1193. data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_failed_event.rbi +48 -32
  1194. data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_segment.rbi +33 -8
  1195. data/rbi/openai/models/realtime/conversation_item_retrieve_event.rbi +27 -10
  1196. data/rbi/openai/models/realtime/conversation_item_truncate_event.rbi +26 -15
  1197. data/rbi/openai/models/realtime/conversation_item_truncated_event.rbi +26 -15
  1198. data/rbi/openai/models/realtime/conversation_item_with_reference.rbi +120 -270
  1199. data/rbi/openai/models/realtime/input_audio_buffer_append_event.rbi +27 -10
  1200. data/rbi/openai/models/realtime/input_audio_buffer_clear_event.rbi +29 -9
  1201. data/rbi/openai/models/realtime/input_audio_buffer_cleared_event.rbi +29 -9
  1202. data/rbi/openai/models/realtime/input_audio_buffer_commit_event.rbi +29 -9
  1203. data/rbi/openai/models/realtime/input_audio_buffer_committed_event.rbi +24 -14
  1204. data/rbi/openai/models/realtime/input_audio_buffer_dtmf_event_received_event.rbi +25 -10
  1205. data/rbi/openai/models/realtime/input_audio_buffer_speech_started_event.rbi +24 -14
  1206. data/rbi/openai/models/realtime/input_audio_buffer_speech_stopped_event.rbi +24 -14
  1207. data/rbi/openai/models/realtime/input_audio_buffer_timeout_triggered.rbi +26 -15
  1208. data/rbi/openai/models/realtime/log_prob_properties.rbi +22 -9
  1209. data/rbi/openai/models/realtime/mcp_list_tools_completed.rbi +27 -10
  1210. data/rbi/openai/models/realtime/mcp_list_tools_failed.rbi +27 -10
  1211. data/rbi/openai/models/realtime/mcp_list_tools_in_progress.rbi +27 -10
  1212. data/rbi/openai/models/realtime/noise_reduction_type.rbi +8 -11
  1213. data/rbi/openai/models/realtime/output_audio_buffer_clear_event.rbi +29 -9
  1214. data/rbi/openai/models/realtime/rate_limits_updated_event.rbi +50 -71
  1215. data/rbi/openai/models/realtime/realtime_audio_config.rbi +25 -21
  1216. data/rbi/openai/models/realtime/realtime_audio_config_input.rbi +76 -82
  1217. data/rbi/openai/models/realtime/realtime_audio_config_output.rbi +106 -131
  1218. data/rbi/openai/models/realtime/realtime_audio_formats.rbi +78 -187
  1219. data/rbi/openai/models/realtime/realtime_audio_input_turn_detection.rbi +72 -77
  1220. data/rbi/openai/models/realtime/realtime_client_event.rbi +20 -20
  1221. data/rbi/openai/models/realtime/realtime_conversation_item_assistant_message.rbi +104 -151
  1222. data/rbi/openai/models/realtime/realtime_conversation_item_function_call.rbi +57 -92
  1223. data/rbi/openai/models/realtime/realtime_conversation_item_function_call_output.rbi +63 -86
  1224. data/rbi/openai/models/realtime/realtime_conversation_item_system_message.rbi +86 -149
  1225. data/rbi/openai/models/realtime/realtime_conversation_item_user_message.rbi +108 -200
  1226. data/rbi/openai/models/realtime/realtime_error.rbi +25 -5
  1227. data/rbi/openai/models/realtime/realtime_error_event.rbi +22 -13
  1228. data/rbi/openai/models/realtime/realtime_function_tool.rbi +29 -35
  1229. data/rbi/openai/models/realtime/realtime_mcp_approval_request.rbi +26 -15
  1230. data/rbi/openai/models/realtime/realtime_mcp_approval_response.rbi +26 -15
  1231. data/rbi/openai/models/realtime/realtime_mcp_list_tools.rbi +42 -18
  1232. data/rbi/openai/models/realtime/realtime_mcp_protocol_error.rbi +31 -11
  1233. data/rbi/openai/models/realtime/realtime_mcp_tool_call.rbi +56 -39
  1234. data/rbi/openai/models/realtime/realtime_mcp_tool_execution_error.rbi +32 -10
  1235. data/rbi/openai/models/realtime/realtime_mcphttp_error.rbi +31 -11
  1236. data/rbi/openai/models/realtime/realtime_reasoning.rbi +20 -19
  1237. data/rbi/openai/models/realtime/realtime_reasoning_effort.rbi +12 -26
  1238. data/rbi/openai/models/realtime/realtime_response.rbi +185 -334
  1239. data/rbi/openai/models/realtime/realtime_response_create_audio_output.rbi +121 -160
  1240. data/rbi/openai/models/realtime/realtime_response_create_mcp_tool.rbi +226 -266
  1241. data/rbi/openai/models/realtime/realtime_response_create_params.rbi +176 -269
  1242. data/rbi/openai/models/realtime/realtime_response_status.rbi +64 -111
  1243. data/rbi/openai/models/realtime/realtime_response_usage.rbi +33 -38
  1244. data/rbi/openai/models/realtime/realtime_response_usage_input_token_details.rbi +50 -37
  1245. data/rbi/openai/models/realtime/realtime_response_usage_output_token_details.rbi +24 -10
  1246. data/rbi/openai/models/realtime/realtime_server_event.rbi +154 -118
  1247. data/rbi/openai/models/realtime/realtime_session.rbi +313 -579
  1248. data/rbi/openai/models/realtime/realtime_session_create_request.rbi +211 -362
  1249. data/rbi/openai/models/realtime/realtime_session_create_response.rbi +736 -979
  1250. data/rbi/openai/models/realtime/realtime_tool_choice_config.rbi +12 -12
  1251. data/rbi/openai/models/realtime/realtime_tools_config.rbi +8 -7
  1252. data/rbi/openai/models/realtime/realtime_tools_config_union.rbi +235 -277
  1253. data/rbi/openai/models/realtime/realtime_tracing_config.rbi +28 -20
  1254. data/rbi/openai/models/realtime/realtime_transcription_session_audio.rbi +21 -21
  1255. data/rbi/openai/models/realtime/realtime_transcription_session_audio_input.rbi +78 -82
  1256. data/rbi/openai/models/realtime/realtime_transcription_session_audio_input_turn_detection.rbi +86 -68
  1257. data/rbi/openai/models/realtime/realtime_transcription_session_create_request.rbi +41 -60
  1258. data/rbi/openai/models/realtime/realtime_transcription_session_create_response.rbi +134 -183
  1259. data/rbi/openai/models/realtime/realtime_transcription_session_turn_detection.rbi +25 -16
  1260. data/rbi/openai/models/realtime/realtime_translation_client_event.rbi +12 -12
  1261. data/rbi/openai/models/realtime/realtime_translation_client_secret_create_request.rbi +62 -74
  1262. data/rbi/openai/models/realtime/realtime_translation_client_secret_create_response.rbi +23 -18
  1263. data/rbi/openai/models/realtime/realtime_translation_input_audio_buffer_append_event.rbi +27 -10
  1264. data/rbi/openai/models/realtime/realtime_translation_input_transcript_delta_event.rbi +24 -14
  1265. data/rbi/openai/models/realtime/realtime_translation_output_audio_delta_event.rbi +44 -47
  1266. data/rbi/openai/models/realtime/realtime_translation_output_transcript_delta_event.rbi +24 -14
  1267. data/rbi/openai/models/realtime/realtime_translation_server_event.rbi +16 -16
  1268. data/rbi/openai/models/realtime/realtime_translation_session.rbi +141 -134
  1269. data/rbi/openai/models/realtime/realtime_translation_session_close_event.rbi +29 -9
  1270. data/rbi/openai/models/realtime/realtime_translation_session_closed_event.rbi +29 -9
  1271. data/rbi/openai/models/realtime/realtime_translation_session_create_request.rbi +146 -147
  1272. data/rbi/openai/models/realtime/realtime_translation_session_created_event.rbi +23 -18
  1273. data/rbi/openai/models/realtime/realtime_translation_session_update_event.rbi +25 -25
  1274. data/rbi/openai/models/realtime/realtime_translation_session_update_request.rbi +143 -145
  1275. data/rbi/openai/models/realtime/realtime_translation_session_updated_event.rbi +23 -18
  1276. data/rbi/openai/models/realtime/realtime_truncation.rbi +20 -36
  1277. data/rbi/openai/models/realtime/realtime_truncation_retention_ratio.rbi +46 -34
  1278. data/rbi/openai/models/realtime/response_audio_delta_event.rbi +29 -8
  1279. data/rbi/openai/models/realtime/response_audio_done_event.rbi +27 -8
  1280. data/rbi/openai/models/realtime/response_audio_transcript_delta_event.rbi +29 -8
  1281. data/rbi/openai/models/realtime/response_audio_transcript_done_event.rbi +29 -8
  1282. data/rbi/openai/models/realtime/response_cancel_event.rbi +25 -10
  1283. data/rbi/openai/models/realtime/response_content_part_added_event.rbi +58 -63
  1284. data/rbi/openai/models/realtime/response_content_part_done_event.rbi +58 -63
  1285. data/rbi/openai/models/realtime/response_create_event.rbi +24 -21
  1286. data/rbi/openai/models/realtime/response_created_event.rbi +23 -16
  1287. data/rbi/openai/models/realtime/response_done_event.rbi +23 -16
  1288. data/rbi/openai/models/realtime/response_function_call_arguments_delta_event.rbi +29 -8
  1289. data/rbi/openai/models/realtime/response_function_call_arguments_done_event.rbi +31 -8
  1290. data/rbi/openai/models/realtime/response_mcp_call_arguments_delta.rbi +29 -8
  1291. data/rbi/openai/models/realtime/response_mcp_call_arguments_done.rbi +27 -8
  1292. data/rbi/openai/models/realtime/response_mcp_call_completed.rbi +24 -14
  1293. data/rbi/openai/models/realtime/response_mcp_call_failed.rbi +24 -14
  1294. data/rbi/openai/models/realtime/response_mcp_call_in_progress.rbi +24 -14
  1295. data/rbi/openai/models/realtime/response_output_item_added_event.rbi +49 -34
  1296. data/rbi/openai/models/realtime/response_output_item_done_event.rbi +49 -34
  1297. data/rbi/openai/models/realtime/response_text_delta_event.rbi +29 -8
  1298. data/rbi/openai/models/realtime/response_text_done_event.rbi +29 -8
  1299. data/rbi/openai/models/realtime/session_created_event.rbi +39 -32
  1300. data/rbi/openai/models/realtime/session_update_event.rbi +39 -32
  1301. data/rbi/openai/models/realtime/session_updated_event.rbi +39 -32
  1302. data/rbi/openai/models/realtime/transcription_session_update.rbi +150 -214
  1303. data/rbi/openai/models/realtime/transcription_session_updated_event.rbi +118 -141
  1304. data/rbi/openai/models/reasoning.rbi +43 -40
  1305. data/rbi/openai/models/reasoning_effort.rbi +2 -0
  1306. data/rbi/openai/models/response_format_json_object.rbi +24 -6
  1307. data/rbi/openai/models/response_format_json_schema.rbi +42 -34
  1308. data/rbi/openai/models/response_format_text.rbi +24 -6
  1309. data/rbi/openai/models/response_format_text_grammar.rbi +27 -6
  1310. data/rbi/openai/models/response_format_text_python.rbi +24 -6
  1311. data/rbi/openai/models/responses/apply_patch_tool.rbi +27 -48
  1312. data/rbi/openai/models/responses/compacted_response.rbi +58 -44
  1313. data/rbi/openai/models/responses/computer_action.rbi +234 -163
  1314. data/rbi/openai/models/responses/computer_action_list.rbi +8 -7
  1315. data/rbi/openai/models/responses/computer_tool.rbi +26 -6
  1316. data/rbi/openai/models/responses/computer_use_preview_tool.rbi +34 -57
  1317. data/rbi/openai/models/responses/container_auto.rbi +68 -131
  1318. data/rbi/openai/models/responses/container_network_policy_allowlist.rbi +25 -29
  1319. data/rbi/openai/models/responses/container_network_policy_disabled.rbi +26 -9
  1320. data/rbi/openai/models/responses/container_network_policy_domain_secret.rbi +27 -10
  1321. data/rbi/openai/models/responses/container_reference.rbi +27 -9
  1322. data/rbi/openai/models/responses/custom_tool.rbi +43 -72
  1323. data/rbi/openai/models/responses/easy_input_message.rbi +47 -102
  1324. data/rbi/openai/models/responses/file_search_tool.rbi +83 -117
  1325. data/rbi/openai/models/responses/function_shell_tool.rbi +52 -82
  1326. data/rbi/openai/models/responses/function_tool.rbi +39 -46
  1327. data/rbi/openai/models/responses/inline_skill.rbi +25 -14
  1328. data/rbi/openai/models/responses/inline_skill_source.rbi +27 -10
  1329. data/rbi/openai/models/responses/input_item_list_params.rbi +36 -52
  1330. data/rbi/openai/models/responses/input_token_count_params.rbi +230 -360
  1331. data/rbi/openai/models/responses/input_token_count_response.rbi +29 -11
  1332. data/rbi/openai/models/responses/local_environment.rbi +21 -12
  1333. data/rbi/openai/models/responses/local_skill.rbi +27 -7
  1334. data/rbi/openai/models/responses/mcp_tool_call_error.rbi +88 -43
  1335. data/rbi/openai/models/responses/namespace_tool.rbi +77 -90
  1336. data/rbi/openai/models/responses/response.rbi +487 -583
  1337. data/rbi/openai/models/responses/response_apply_patch_tool_call.rbi +175 -144
  1338. data/rbi/openai/models/responses/response_apply_patch_tool_call_output.rbi +94 -90
  1339. data/rbi/openai/models/responses/response_audio_delta_event.rbi +25 -10
  1340. data/rbi/openai/models/responses/response_audio_done_event.rbi +26 -10
  1341. data/rbi/openai/models/responses/response_audio_transcript_delta_event.rbi +25 -10
  1342. data/rbi/openai/models/responses/response_audio_transcript_done_event.rbi +26 -10
  1343. data/rbi/openai/models/responses/response_cancel_params.rbi +23 -10
  1344. data/rbi/openai/models/responses/response_code_interpreter_call_code_delta_event.rbi +26 -15
  1345. data/rbi/openai/models/responses/response_code_interpreter_call_code_done_event.rbi +26 -15
  1346. data/rbi/openai/models/responses/response_code_interpreter_call_completed_event.rbi +24 -14
  1347. data/rbi/openai/models/responses/response_code_interpreter_call_in_progress_event.rbi +24 -14
  1348. data/rbi/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi +24 -14
  1349. data/rbi/openai/models/responses/response_code_interpreter_tool_call.rbi +109 -106
  1350. data/rbi/openai/models/responses/response_compact_params.rbi +371 -791
  1351. data/rbi/openai/models/responses/response_compaction_item.rbi +24 -14
  1352. data/rbi/openai/models/responses/response_compaction_item_param.rbi +22 -9
  1353. data/rbi/openai/models/responses/response_completed_event.rbi +22 -13
  1354. data/rbi/openai/models/responses/response_computer_tool_call.rbi +381 -352
  1355. data/rbi/openai/models/responses/response_computer_tool_call_output_item.rbi +77 -101
  1356. data/rbi/openai/models/responses/response_computer_tool_call_output_screenshot.rbi +27 -10
  1357. data/rbi/openai/models/responses/response_container_reference.rbi +27 -9
  1358. data/rbi/openai/models/responses/response_content.rbi +39 -24
  1359. data/rbi/openai/models/responses/response_content_part_added_event.rbi +66 -44
  1360. data/rbi/openai/models/responses/response_content_part_done_event.rbi +66 -44
  1361. data/rbi/openai/models/responses/response_conversation_param.rbi +26 -9
  1362. data/rbi/openai/models/responses/response_create_params.rbi +464 -737
  1363. data/rbi/openai/models/responses/response_created_event.rbi +22 -13
  1364. data/rbi/openai/models/responses/response_custom_tool_call.rbi +93 -55
  1365. data/rbi/openai/models/responses/response_custom_tool_call_input_delta_event.rbi +26 -15
  1366. data/rbi/openai/models/responses/response_custom_tool_call_input_done_event.rbi +26 -15
  1367. data/rbi/openai/models/responses/response_custom_tool_call_item.rbi +78 -49
  1368. data/rbi/openai/models/responses/response_custom_tool_call_output.rbi +115 -99
  1369. data/rbi/openai/models/responses/response_custom_tool_call_output_item.rbi +67 -49
  1370. data/rbi/openai/models/responses/response_delete_params.rbi +23 -10
  1371. data/rbi/openai/models/responses/response_error.rbi +55 -119
  1372. data/rbi/openai/models/responses/response_error_event.rbi +26 -15
  1373. data/rbi/openai/models/responses/response_failed_event.rbi +22 -13
  1374. data/rbi/openai/models/responses/response_file_search_call_completed_event.rbi +24 -14
  1375. data/rbi/openai/models/responses/response_file_search_call_in_progress_event.rbi +24 -14
  1376. data/rbi/openai/models/responses/response_file_search_call_searching_event.rbi +24 -14
  1377. data/rbi/openai/models/responses/response_file_search_tool_call.rbi +70 -112
  1378. data/rbi/openai/models/responses/response_format_text_config.rbi +12 -12
  1379. data/rbi/openai/models/responses/response_format_text_json_schema_config.rbi +25 -8
  1380. data/rbi/openai/models/responses/response_function_call_arguments_delta_event.rbi +26 -15
  1381. data/rbi/openai/models/responses/response_function_call_arguments_done_event.rbi +26 -8
  1382. data/rbi/openai/models/responses/response_function_call_output_item.rbi +12 -14
  1383. data/rbi/openai/models/responses/response_function_call_output_item_list.rbi +8 -7
  1384. data/rbi/openai/models/responses/response_function_shell_call_output_content.rbi +82 -50
  1385. data/rbi/openai/models/responses/response_function_shell_tool_call.rbi +130 -151
  1386. data/rbi/openai/models/responses/response_function_shell_tool_call_output.rbi +178 -159
  1387. data/rbi/openai/models/responses/response_function_tool_call.rbi +104 -98
  1388. data/rbi/openai/models/responses/response_function_tool_call_item.rbi +78 -49
  1389. data/rbi/openai/models/responses/response_function_tool_call_output_item.rbi +138 -147
  1390. data/rbi/openai/models/responses/response_function_web_search.rbi +127 -131
  1391. data/rbi/openai/models/responses/response_image_gen_call_completed_event.rbi +24 -14
  1392. data/rbi/openai/models/responses/response_image_gen_call_generating_event.rbi +24 -14
  1393. data/rbi/openai/models/responses/response_image_gen_call_in_progress_event.rbi +24 -14
  1394. data/rbi/openai/models/responses/response_image_gen_call_partial_image_event.rbi +80 -9
  1395. data/rbi/openai/models/responses/response_in_progress_event.rbi +22 -13
  1396. data/rbi/openai/models/responses/response_includable.rbi +35 -47
  1397. data/rbi/openai/models/responses/response_incomplete_event.rbi +22 -13
  1398. data/rbi/openai/models/responses/response_input.rbi +8 -7
  1399. data/rbi/openai/models/responses/response_input_audio.rbi +43 -65
  1400. data/rbi/openai/models/responses/response_input_content.rbi +12 -12
  1401. data/rbi/openai/models/responses/response_input_file.rbi +63 -70
  1402. data/rbi/openai/models/responses/response_input_file_content.rbi +71 -82
  1403. data/rbi/openai/models/responses/response_input_image.rbi +58 -65
  1404. data/rbi/openai/models/responses/response_input_image_content.rbi +67 -88
  1405. data/rbi/openai/models/responses/response_input_item.rbi +1275 -1478
  1406. data/rbi/openai/models/responses/response_input_message_content_list.rbi +8 -7
  1407. data/rbi/openai/models/responses/response_input_message_item.rbi +52 -99
  1408. data/rbi/openai/models/responses/response_input_text.rbi +48 -34
  1409. data/rbi/openai/models/responses/response_input_text_content.rbi +54 -39
  1410. data/rbi/openai/models/responses/response_item.rbi +385 -486
  1411. data/rbi/openai/models/responses/response_item_list.rbi +58 -42
  1412. data/rbi/openai/models/responses/response_local_environment.rbi +26 -9
  1413. data/rbi/openai/models/responses/response_mcp_call_arguments_delta_event.rbi +26 -15
  1414. data/rbi/openai/models/responses/response_mcp_call_arguments_done_event.rbi +26 -15
  1415. data/rbi/openai/models/responses/response_mcp_call_completed_event.rbi +24 -14
  1416. data/rbi/openai/models/responses/response_mcp_call_failed_event.rbi +24 -14
  1417. data/rbi/openai/models/responses/response_mcp_call_in_progress_event.rbi +24 -14
  1418. data/rbi/openai/models/responses/response_mcp_list_tools_completed_event.rbi +24 -14
  1419. data/rbi/openai/models/responses/response_mcp_list_tools_failed_event.rbi +24 -14
  1420. data/rbi/openai/models/responses/response_mcp_list_tools_in_progress_event.rbi +24 -14
  1421. data/rbi/openai/models/responses/response_output_audio.rbi +27 -10
  1422. data/rbi/openai/models/responses/response_output_item.rbi +413 -495
  1423. data/rbi/openai/models/responses/response_output_item_added_event.rbi +53 -39
  1424. data/rbi/openai/models/responses/response_output_item_done_event.rbi +53 -39
  1425. data/rbi/openai/models/responses/response_output_message.rbi +56 -114
  1426. data/rbi/openai/models/responses/response_output_refusal.rbi +29 -9
  1427. data/rbi/openai/models/responses/response_output_text.rbi +180 -136
  1428. data/rbi/openai/models/responses/response_output_text_annotation_added_event.rbi +130 -88
  1429. data/rbi/openai/models/responses/response_prompt.rbi +55 -45
  1430. data/rbi/openai/models/responses/response_queued_event.rbi +22 -13
  1431. data/rbi/openai/models/responses/response_reasoning_item.rbi +89 -94
  1432. data/rbi/openai/models/responses/response_reasoning_summary_part_added_event.rbi +55 -32
  1433. data/rbi/openai/models/responses/response_reasoning_summary_part_done_event.rbi +71 -68
  1434. data/rbi/openai/models/responses/response_reasoning_summary_text_delta_event.rbi +27 -8
  1435. data/rbi/openai/models/responses/response_reasoning_summary_text_done_event.rbi +27 -8
  1436. data/rbi/openai/models/responses/response_reasoning_text_delta_event.rbi +27 -8
  1437. data/rbi/openai/models/responses/response_reasoning_text_done_event.rbi +27 -8
  1438. data/rbi/openai/models/responses/response_refusal_delta_event.rbi +27 -8
  1439. data/rbi/openai/models/responses/response_refusal_done_event.rbi +27 -8
  1440. data/rbi/openai/models/responses/response_retrieve_params.rbi +27 -20
  1441. data/rbi/openai/models/responses/response_shell_call_command_added_event.rbi +86 -0
  1442. data/rbi/openai/models/responses/response_shell_call_command_delta_event.rbi +105 -0
  1443. data/rbi/openai/models/responses/response_shell_call_command_done_event.rbi +86 -0
  1444. data/rbi/openai/models/responses/response_shell_call_output_content_delta_event.rbi +158 -0
  1445. data/rbi/openai/models/responses/response_shell_call_output_content_done_event.rbi +286 -0
  1446. data/rbi/openai/models/responses/response_status.rbi +10 -15
  1447. data/rbi/openai/models/responses/response_stream_event.rbi +67 -62
  1448. data/rbi/openai/models/responses/response_text_config.rbi +48 -72
  1449. data/rbi/openai/models/responses/response_text_delta_event.rbi +75 -59
  1450. data/rbi/openai/models/responses/response_text_done_event.rbi +75 -59
  1451. data/rbi/openai/models/responses/response_tool_search_call.rbi +45 -76
  1452. data/rbi/openai/models/responses/response_tool_search_output_item.rbi +66 -102
  1453. data/rbi/openai/models/responses/response_tool_search_output_item_param.rbi +93 -139
  1454. data/rbi/openai/models/responses/response_usage.rbi +69 -44
  1455. data/rbi/openai/models/responses/response_web_search_call_completed_event.rbi +24 -14
  1456. data/rbi/openai/models/responses/response_web_search_call_in_progress_event.rbi +24 -14
  1457. data/rbi/openai/models/responses/response_web_search_call_searching_event.rbi +24 -14
  1458. data/rbi/openai/models/responses/responses_client_event.rbi +462 -731
  1459. data/rbi/openai/models/responses/responses_server_event.rbi +2060 -1103
  1460. data/rbi/openai/models/responses/skill_reference.rbi +27 -7
  1461. data/rbi/openai/models/responses/tool.rbi +535 -941
  1462. data/rbi/openai/models/responses/tool_choice_allowed.rbi +26 -28
  1463. data/rbi/openai/models/responses/tool_choice_apply_patch.rbi +26 -9
  1464. data/rbi/openai/models/responses/tool_choice_custom.rbi +29 -9
  1465. data/rbi/openai/models/responses/tool_choice_function.rbi +29 -9
  1466. data/rbi/openai/models/responses/tool_choice_mcp.rbi +22 -6
  1467. data/rbi/openai/models/responses/tool_choice_options.rbi +7 -9
  1468. data/rbi/openai/models/responses/tool_choice_shell.rbi +26 -6
  1469. data/rbi/openai/models/responses/tool_choice_types.rbi +32 -56
  1470. data/rbi/openai/models/responses/tool_search_tool.rbi +30 -37
  1471. data/rbi/openai/models/responses/web_search_preview_tool.rbi +74 -151
  1472. data/rbi/openai/models/responses/web_search_tool.rbi +87 -143
  1473. data/rbi/openai/models/responses_model.rbi +52 -112
  1474. data/rbi/openai/models/skill.rbi +27 -2
  1475. data/rbi/openai/models/skill_create_params.rbi +23 -17
  1476. data/rbi/openai/models/skill_delete_params.rbi +21 -7
  1477. data/rbi/openai/models/skill_list.rbi +23 -3
  1478. data/rbi/openai/models/skill_list_params.rbi +22 -12
  1479. data/rbi/openai/models/skill_retrieve_params.rbi +21 -7
  1480. data/rbi/openai/models/skill_update_params.rbi +19 -10
  1481. data/rbi/openai/models/skills/content_retrieve_params.rbi +23 -10
  1482. data/rbi/openai/models/skills/deleted_skill_version.rbi +23 -9
  1483. data/rbi/openai/models/skills/skill_version.rbi +29 -5
  1484. data/rbi/openai/models/skills/skill_version_list.rbi +25 -5
  1485. data/rbi/openai/models/skills/version_create_params.rbi +30 -30
  1486. data/rbi/openai/models/skills/version_delete_params.rbi +21 -13
  1487. data/rbi/openai/models/skills/version_list_params.rbi +30 -24
  1488. data/rbi/openai/models/skills/version_retrieve_params.rbi +21 -13
  1489. data/rbi/openai/models/skills/versions/content_retrieve_params.rbi +23 -13
  1490. data/rbi/openai/models/static_file_chunking_strategy.rbi +18 -6
  1491. data/rbi/openai/models/static_file_chunking_strategy_object.rbi +18 -9
  1492. data/rbi/openai/models/static_file_chunking_strategy_object_param.rbi +18 -9
  1493. data/rbi/openai/models/upload.rbi +31 -2
  1494. data/rbi/openai/models/upload_cancel_params.rbi +21 -7
  1495. data/rbi/openai/models/upload_complete_params.rbi +21 -11
  1496. data/rbi/openai/models/upload_create_params.rbi +47 -19
  1497. data/rbi/openai/models/uploads/part_create_params.rbi +21 -10
  1498. data/rbi/openai/models/uploads/upload_part.rbi +24 -11
  1499. data/rbi/openai/models/vector_store.rbi +84 -31
  1500. data/rbi/openai/models/vector_store_create_params.rbi +70 -47
  1501. data/rbi/openai/models/vector_store_delete_params.rbi +21 -7
  1502. data/rbi/openai/models/vector_store_deleted.rbi +29 -8
  1503. data/rbi/openai/models/vector_store_list_params.rbi +24 -12
  1504. data/rbi/openai/models/vector_store_retrieve_params.rbi +21 -7
  1505. data/rbi/openai/models/vector_store_search_params.rbi +66 -112
  1506. data/rbi/openai/models/vector_store_search_response.rbi +51 -88
  1507. data/rbi/openai/models/vector_store_update_params.rbi +49 -24
  1508. data/rbi/openai/models/vector_stores/file_batch_cancel_params.rbi +26 -14
  1509. data/rbi/openai/models/vector_stores/file_batch_create_params.rbi +99 -151
  1510. data/rbi/openai/models/vector_stores/file_batch_list_files_params.rbi +50 -102
  1511. data/rbi/openai/models/vector_stores/file_batch_retrieve_params.rbi +26 -14
  1512. data/rbi/openai/models/vector_stores/file_content_params.rbi +26 -14
  1513. data/rbi/openai/models/vector_stores/file_content_response.rbi +29 -9
  1514. data/rbi/openai/models/vector_stores/file_create_params.rbi +48 -65
  1515. data/rbi/openai/models/vector_stores/file_delete_params.rbi +26 -14
  1516. data/rbi/openai/models/vector_stores/file_list_params.rbi +44 -82
  1517. data/rbi/openai/models/vector_stores/file_retrieve_params.rbi +26 -14
  1518. data/rbi/openai/models/vector_stores/file_update_params.rbi +27 -39
  1519. data/rbi/openai/models/vector_stores/vector_store_file.rbi +87 -155
  1520. data/rbi/openai/models/vector_stores/vector_store_file_batch.rbi +60 -73
  1521. data/rbi/openai/models/vector_stores/vector_store_file_deleted.rbi +31 -11
  1522. data/rbi/openai/models/video.rbi +41 -4
  1523. data/rbi/openai/models/video_create_character_params.rbi +19 -10
  1524. data/rbi/openai/models/video_create_character_response.rbi +20 -13
  1525. data/rbi/openai/models/video_create_error.rbi +27 -6
  1526. data/rbi/openai/models/video_create_params.rbi +33 -38
  1527. data/rbi/openai/models/video_delete_params.rbi +21 -7
  1528. data/rbi/openai/models/video_delete_response.rbi +25 -7
  1529. data/rbi/openai/models/video_download_content_params.rbi +26 -40
  1530. data/rbi/openai/models/video_edit_params.rbi +44 -41
  1531. data/rbi/openai/models/video_extend_params.rbi +46 -41
  1532. data/rbi/openai/models/video_get_character_params.rbi +21 -7
  1533. data/rbi/openai/models/video_get_character_response.rbi +20 -13
  1534. data/rbi/openai/models/video_list_params.rbi +22 -12
  1535. data/rbi/openai/models/video_model.rbi +16 -9
  1536. data/rbi/openai/models/video_remix_params.rbi +19 -10
  1537. data/rbi/openai/models/video_retrieve_params.rbi +21 -7
  1538. data/rbi/openai/models/video_seconds.rbi +2 -0
  1539. data/rbi/openai/models/video_size.rbi +4 -4
  1540. data/rbi/openai/models/webhooks/batch_cancelled_webhook_event.rbi +54 -58
  1541. data/rbi/openai/models/webhooks/batch_completed_webhook_event.rbi +54 -58
  1542. data/rbi/openai/models/webhooks/batch_expired_webhook_event.rbi +54 -54
  1543. data/rbi/openai/models/webhooks/batch_failed_webhook_event.rbi +53 -52
  1544. data/rbi/openai/models/webhooks/eval_run_canceled_webhook_event.rbi +54 -58
  1545. data/rbi/openai/models/webhooks/eval_run_failed_webhook_event.rbi +54 -55
  1546. data/rbi/openai/models/webhooks/eval_run_succeeded_webhook_event.rbi +54 -58
  1547. data/rbi/openai/models/webhooks/fine_tuning_job_cancelled_webhook_event.rbi +58 -64
  1548. data/rbi/openai/models/webhooks/fine_tuning_job_failed_webhook_event.rbi +55 -61
  1549. data/rbi/openai/models/webhooks/fine_tuning_job_succeeded_webhook_event.rbi +58 -64
  1550. data/rbi/openai/models/webhooks/live_call_incoming_webhook_event.rbi +71 -81
  1551. data/rbi/openai/models/webhooks/realtime_call_incoming_webhook_event.rbi +73 -87
  1552. data/rbi/openai/models/webhooks/response_cancelled_webhook_event.rbi +54 -58
  1553. data/rbi/openai/models/webhooks/response_completed_webhook_event.rbi +54 -58
  1554. data/rbi/openai/models/webhooks/response_failed_webhook_event.rbi +54 -58
  1555. data/rbi/openai/models/webhooks/response_incomplete_webhook_event.rbi +55 -60
  1556. data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +25 -25
  1557. data/rbi/openai/models/webhooks/webhook_unwrap_params.rbi +13 -8
  1558. data/rbi/openai/models.rbi +8 -12
  1559. data/rbi/openai/net_http_client.rbi +25 -9
  1560. data/rbi/openai/providers.rbi +6 -3
  1561. data/rbi/openai/request_options.rbi +2 -2
  1562. data/rbi/openai/resources/admin/organization/admin_api_keys.rbi +22 -27
  1563. data/rbi/openai/resources/admin/organization/audit_logs.rbi +14 -12
  1564. data/rbi/openai/resources/admin/organization/certificates.rbi +39 -53
  1565. data/rbi/openai/resources/admin/organization/data_retention.rbi +14 -7
  1566. data/rbi/openai/resources/admin/organization/groups/roles.rbi +24 -29
  1567. data/rbi/openai/resources/admin/organization/groups/users.rbi +22 -29
  1568. data/rbi/openai/resources/admin/organization/groups.rbi +31 -33
  1569. data/rbi/openai/resources/admin/organization/invites.rbi +27 -31
  1570. data/rbi/openai/resources/admin/organization/projects/api_keys.rbi +21 -22
  1571. data/rbi/openai/resources/admin/organization/projects/certificates.rbi +27 -20
  1572. data/rbi/openai/resources/admin/organization/projects/data_retention.rbi +16 -12
  1573. data/rbi/openai/resources/admin/organization/projects/groups/roles.rbi +28 -20
  1574. data/rbi/openai/resources/admin/organization/projects/groups.rbi +26 -28
  1575. data/rbi/openai/resources/admin/organization/projects/hosted_tool_permissions.rbi +28 -30
  1576. data/rbi/openai/resources/admin/organization/projects/model_permissions.rbi +19 -18
  1577. data/rbi/openai/resources/admin/organization/projects/rate_limits.rbi +18 -9
  1578. data/rbi/openai/resources/admin/organization/projects/roles.rbi +29 -28
  1579. data/rbi/openai/resources/admin/organization/projects/service_accounts/api_keys.rbi +14 -4
  1580. data/rbi/openai/resources/admin/organization/projects/service_accounts.rbi +31 -45
  1581. data/rbi/openai/resources/admin/organization/projects/spend_alerts.rbi +33 -42
  1582. data/rbi/openai/resources/admin/organization/projects/spend_limit.rbi +20 -20
  1583. data/rbi/openai/resources/admin/organization/projects/users/roles.rbi +28 -20
  1584. data/rbi/openai/resources/admin/organization/projects/users.rbi +30 -37
  1585. data/rbi/openai/resources/admin/organization/projects.rbi +51 -78
  1586. data/rbi/openai/resources/admin/organization/roles.rbi +29 -26
  1587. data/rbi/openai/resources/admin/organization/spend_alerts.rbi +33 -38
  1588. data/rbi/openai/resources/admin/organization/spend_limit.rbi +17 -11
  1589. data/rbi/openai/resources/admin/organization/usage.rbi +67 -120
  1590. data/rbi/openai/resources/admin/organization/users/roles.rbi +22 -29
  1591. data/rbi/openai/resources/admin/organization/users.rbi +24 -21
  1592. data/rbi/openai/resources/admin/organization.rbi +5 -0
  1593. data/rbi/openai/resources/admin.rbi +3 -0
  1594. data/rbi/openai/resources/audio/speech.rbi +16 -13
  1595. data/rbi/openai/resources/audio/transcriptions.rbi +19 -32
  1596. data/rbi/openai/resources/audio/translations.rbi +10 -5
  1597. data/rbi/openai/resources/audio.rbi +3 -0
  1598. data/rbi/openai/resources/batches.rbi +16 -26
  1599. data/rbi/openai/resources/beta/assistants.rbi +58 -68
  1600. data/rbi/openai/resources/beta/chatkit/sessions.rbi +19 -15
  1601. data/rbi/openai/resources/beta/chatkit/threads.rbi +26 -26
  1602. data/rbi/openai/resources/beta/chatkit.rbi +5 -0
  1603. data/rbi/openai/resources/beta/responses/input_items.rbi +12 -12
  1604. data/rbi/openai/resources/beta/responses/input_tokens.rbi +51 -68
  1605. data/rbi/openai/resources/beta/responses.rbi +131 -210
  1606. data/rbi/openai/resources/beta/threads/messages.rbi +30 -32
  1607. data/rbi/openai/resources/beta/threads/runs/steps.rbi +19 -19
  1608. data/rbi/openai/resources/beta/threads/runs.rbi +93 -118
  1609. data/rbi/openai/resources/beta/threads.rbi +71 -101
  1610. data/rbi/openai/resources/beta.rbi +3 -0
  1611. data/rbi/openai/resources/chat/completions/messages.rbi +11 -8
  1612. data/rbi/openai/resources/chat/completions.rbi +99 -147
  1613. data/rbi/openai/resources/chat.rbi +3 -0
  1614. data/rbi/openai/resources/completions.rbi +13 -10
  1615. data/rbi/openai/resources/containers/files/content.rbi +12 -7
  1616. data/rbi/openai/resources/containers/files.rbi +18 -23
  1617. data/rbi/openai/resources/containers.rbi +21 -31
  1618. data/rbi/openai/resources/content_provenance_checks.rbi +8 -6
  1619. data/rbi/openai/resources/conversations/items.rbi +57 -56
  1620. data/rbi/openai/resources/conversations.rbi +59 -57
  1621. data/rbi/openai/resources/embeddings.rbi +8 -5
  1622. data/rbi/openai/resources/evals/runs/output_items.rbi +15 -11
  1623. data/rbi/openai/resources/evals/runs.rbi +32 -34
  1624. data/rbi/openai/resources/evals.rbi +37 -37
  1625. data/rbi/openai/resources/files.rbi +29 -21
  1626. data/rbi/openai/resources/fine_tuning/alpha/graders.rbi +29 -22
  1627. data/rbi/openai/resources/fine_tuning/alpha.rbi +5 -0
  1628. data/rbi/openai/resources/fine_tuning/checkpoints/permissions.rbi +25 -24
  1629. data/rbi/openai/resources/fine_tuning/checkpoints.rbi +5 -0
  1630. data/rbi/openai/resources/fine_tuning/jobs/checkpoints.rbi +10 -6
  1631. data/rbi/openai/resources/fine_tuning/jobs.rbi +38 -48
  1632. data/rbi/openai/resources/fine_tuning/methods.rbi +5 -0
  1633. data/rbi/openai/resources/fine_tuning.rbi +3 -0
  1634. data/rbi/openai/resources/graders/grader_models.rbi +5 -0
  1635. data/rbi/openai/resources/graders.rbi +3 -0
  1636. data/rbi/openai/resources/images.rbi +64 -105
  1637. data/rbi/openai/resources/models.rbi +6 -17
  1638. data/rbi/openai/resources/moderations.rbi +7 -3
  1639. data/rbi/openai/resources/realtime/calls.rbi +49 -60
  1640. data/rbi/openai/resources/realtime/client_secrets.rbi +14 -10
  1641. data/rbi/openai/resources/realtime.rbi +3 -0
  1642. data/rbi/openai/resources/responses/input_items.rbi +8 -6
  1643. data/rbi/openai/resources/responses/input_tokens.rbi +47 -58
  1644. data/rbi/openai/resources/responses.rbi +162 -259
  1645. data/rbi/openai/resources/skills/content.rbi +6 -6
  1646. data/rbi/openai/resources/skills/versions/content.rbi +10 -7
  1647. data/rbi/openai/resources/skills/versions.rbi +23 -20
  1648. data/rbi/openai/resources/skills.rbi +18 -28
  1649. data/rbi/openai/resources/uploads/parts.rbi +9 -7
  1650. data/rbi/openai/resources/uploads.rbi +12 -12
  1651. data/rbi/openai/resources/vector_stores/file_batches.rbi +119 -37
  1652. data/rbi/openai/resources/vector_stores/files.rbi +138 -42
  1653. data/rbi/openai/resources/vector_stores.rbi +33 -39
  1654. data/rbi/openai/resources/videos.rbi +44 -62
  1655. data/rbi/openai/resources/webhooks.rbi +35 -30
  1656. data/rbi/openai/streaming.rbi +8 -14
  1657. data/realtime.md +499 -0
  1658. data/sig/openai/auth/x509_token_exchange.rbs +19 -0
  1659. data/sig/openai/auth/x509_transport.rbs +34 -0
  1660. data/sig/openai/auth/x509_workload_identity.rbs +24 -0
  1661. data/sig/openai/auth.rbs +42 -0
  1662. data/sig/openai/client.rbs +48 -2
  1663. data/sig/openai/errors.rbs +11 -0
  1664. data/sig/openai/file_part.rbs +9 -0
  1665. data/sig/openai/helpers/client_options.rbs +19 -0
  1666. data/sig/openai/helpers/data_residency.rbs +16 -0
  1667. data/sig/openai/helpers/realtime/connection.rbs +45 -0
  1668. data/sig/openai/helpers/realtime/connection_manager.rbs +21 -0
  1669. data/sig/openai/helpers/realtime/connection_resources.rbs +50 -0
  1670. data/sig/openai/helpers/realtime/extensions.rbs +83 -0
  1671. data/sig/openai/helpers/realtime/sideband_connection.rbs +12 -0
  1672. data/sig/openai/helpers/realtime/transports/async_websocket.rbs +37 -0
  1673. data/sig/openai/helpers/realtime/unknown_server_event.rbs +14 -0
  1674. data/sig/openai/helpers/resource_polling.rbs +31 -0
  1675. data/sig/openai/helpers/sorbet.rbs +54 -0
  1676. data/sig/openai/helpers/streaming/response_event_decoder.rbs +16 -0
  1677. data/sig/openai/helpers/streaming/unknown_stream_event.rbs +15 -0
  1678. data/sig/openai/helpers/structured_output/chat_completion_parser.rbs +21 -0
  1679. data/sig/openai/helpers/structured_output/response_parser.rbs +17 -0
  1680. data/sig/openai/internal/poller.rbs +31 -0
  1681. data/sig/openai/internal/provider.rbs +1 -3
  1682. data/sig/openai/internal/request_options_scope.rbs +9 -0
  1683. data/sig/openai/internal/transport/base_client.rbs +10 -0
  1684. data/sig/openai/internal/type/converter.rbs +7 -1
  1685. data/sig/openai/internal/vector_store_file_uploader.rbs +18 -0
  1686. data/sig/openai/models/admin/organization/admin_api_key_create_response.rbs +34 -3
  1687. data/sig/openai/models/admin/organization/audit_log_list_params.rbs +2 -0
  1688. data/sig/openai/models/admin/organization/audit_log_list_response.rbs +2 -0
  1689. data/sig/openai/models/admin/organization/cost_quantity_unit.rbs +33 -0
  1690. data/sig/openai/models/admin/organization/project.rbs +9 -0
  1691. data/sig/openai/models/admin/organization/project_create_params.rbs +10 -1
  1692. data/sig/openai/models/admin/organization/project_residency.rbs +40 -0
  1693. data/sig/openai/models/admin/organization/usage_audio_speeches_response.rbs +7 -2
  1694. data/sig/openai/models/admin/organization/usage_audio_transcriptions_response.rbs +7 -2
  1695. data/sig/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbs +7 -2
  1696. data/sig/openai/models/admin/organization/usage_completions_response.rbs +7 -2
  1697. data/sig/openai/models/admin/organization/usage_costs_response.rbs +7 -2
  1698. data/sig/openai/models/admin/organization/usage_embeddings_response.rbs +7 -2
  1699. data/sig/openai/models/admin/organization/usage_file_search_calls_response.rbs +7 -2
  1700. data/sig/openai/models/admin/organization/usage_images_response.rbs +7 -2
  1701. data/sig/openai/models/admin/organization/usage_moderations_response.rbs +7 -2
  1702. data/sig/openai/models/admin/organization/usage_vector_stores_response.rbs +7 -2
  1703. data/sig/openai/models/admin/organization/usage_web_search_calls_response.rbs +7 -2
  1704. data/sig/openai/models/beta/beta_response_custom_tool_call_item.rbs +22 -1
  1705. data/sig/openai/models/beta/beta_response_custom_tool_call_output_item.rbs +16 -1
  1706. data/sig/openai/models/beta/beta_response_function_tool_call_item.rbs +22 -1
  1707. data/sig/openai/models/beta/beta_response_function_tool_call_output_item.rbs +7 -5
  1708. data/sig/openai/models/beta/beta_response_image_gen_call_partial_image_event.rbs +30 -2
  1709. data/sig/openai/models/beta/beta_response_input_item.rbs +5 -5
  1710. data/sig/openai/models/beta/beta_response_shell_call_command_added_event.rbs +63 -0
  1711. data/sig/openai/models/beta/beta_response_shell_call_command_delta_event.rbs +70 -0
  1712. data/sig/openai/models/beta/beta_response_shell_call_command_done_event.rbs +63 -0
  1713. data/sig/openai/models/beta/beta_response_shell_call_output_content_delta_event.rbs +84 -0
  1714. data/sig/openai/models/beta/beta_response_shell_call_output_content_done_event.rbs +134 -0
  1715. data/sig/openai/models/beta/beta_response_stream_event.rbs +5 -0
  1716. data/sig/openai/models/beta/beta_responses_server_event.rbs +318 -107
  1717. data/sig/openai/models/chat/chat_completion.rbs +5 -0
  1718. data/sig/openai/models/chat/chat_completion_chunk.rbs +7 -0
  1719. data/sig/openai/models/chat/chat_completion_store_message.rbs +22 -1
  1720. data/sig/openai/models/eval_create_params.rbs +75 -9
  1721. data/sig/openai/models/eval_create_response.rbs +75 -9
  1722. data/sig/openai/models/eval_list_response.rbs +75 -9
  1723. data/sig/openai/models/eval_retrieve_response.rbs +75 -9
  1724. data/sig/openai/models/eval_update_response.rbs +75 -9
  1725. data/sig/openai/models/realtime/call_accept_params.rbs +46 -1
  1726. data/sig/openai/models/realtime/call_create_params.rbs +34 -0
  1727. data/sig/openai/models/responses/response.rbs +2 -0
  1728. data/sig/openai/models/responses/response_custom_tool_call_item.rbs +19 -1
  1729. data/sig/openai/models/responses/response_custom_tool_call_output_item.rbs +13 -1
  1730. data/sig/openai/models/responses/response_function_tool_call_item.rbs +19 -1
  1731. data/sig/openai/models/responses/response_function_tool_call_output_item.rbs +7 -5
  1732. data/sig/openai/models/responses/response_image_gen_call_partial_image_event.rbs +30 -2
  1733. data/sig/openai/models/responses/response_input_item.rbs +5 -5
  1734. data/sig/openai/models/responses/response_shell_call_command_added_event.rbs +42 -0
  1735. data/sig/openai/models/responses/response_shell_call_command_delta_event.rbs +49 -0
  1736. data/sig/openai/models/responses/response_shell_call_command_done_event.rbs +42 -0
  1737. data/sig/openai/models/responses/response_shell_call_output_content_delta_event.rbs +63 -0
  1738. data/sig/openai/models/responses/response_shell_call_output_content_done_event.rbs +113 -0
  1739. data/sig/openai/models/responses/response_stream_event.rbs +5 -0
  1740. data/sig/openai/models/responses/responses_server_event.rbs +303 -107
  1741. data/sig/openai/net_http_client.rbs +11 -3
  1742. data/sig/openai/resources/admin/organization/projects.rbs +1 -0
  1743. data/sig/openai/resources/beta/responses.rbs +4 -2
  1744. data/sig/openai/resources/files.rbs +7 -0
  1745. data/sig/openai/resources/realtime/calls.rbs +6 -0
  1746. data/sig/openai/resources/responses.rbs +6 -3
  1747. data/sig/openai/resources/vector_stores/file_batches.rbs +31 -0
  1748. data/sig/openai/resources/vector_stores/files.rbs +36 -0
  1749. data/sig/openai/streaming.rbs +5 -0
  1750. metadata +121 -29
@@ -2,41 +2,44 @@
2
2
 
3
3
  module OpenAI
4
4
  module Models
5
+
5
6
  BetaTool = Beta::BetaTool
6
7
 
7
8
  module Beta
9
+
8
10
  # A tool that can be used to generate a response.
9
11
  module BetaTool
10
12
  extend OpenAI::Internal::Type::Union
11
13
 
12
- Variants =
13
- T.type_alias do
14
+ Variants = T.type_alias do
15
+ T.any(
16
+ OpenAI::Beta::BetaFunctionTool,
17
+ OpenAI::Beta::BetaFileSearchTool,
18
+ OpenAI::Beta::BetaComputerTool,
19
+ OpenAI::Beta::BetaComputerUsePreviewTool,
20
+ OpenAI::Beta::BetaTool::Mcp,
21
+ OpenAI::Beta::BetaTool::CodeInterpreter,
22
+ OpenAI::Beta::BetaTool::ProgrammaticToolCalling,
23
+ OpenAI::Beta::BetaTool::ImageGeneration,
24
+ OpenAI::Beta::BetaTool::LocalShell,
25
+ OpenAI::Beta::BetaFunctionShellTool,
26
+ OpenAI::Beta::BetaCustomTool,
27
+ OpenAI::Beta::BetaNamespaceTool,
28
+ OpenAI::Beta::BetaToolSearchTool,
29
+ OpenAI::Beta::BetaApplyPatchTool,
30
+ OpenAI::Beta::BetaWebSearchTool,
31
+ OpenAI::Beta::BetaWebSearchPreviewTool
32
+ )
33
+ end
34
+
35
+ class Mcp < OpenAI::Internal::Type::BaseModel
36
+ OrHash = T.type_alias do
14
37
  T.any(
15
- OpenAI::Beta::BetaFunctionTool,
16
- OpenAI::Beta::BetaFileSearchTool,
17
- OpenAI::Beta::BetaComputerTool,
18
- OpenAI::Beta::BetaComputerUsePreviewTool,
19
38
  OpenAI::Beta::BetaTool::Mcp,
20
- OpenAI::Beta::BetaTool::CodeInterpreter,
21
- OpenAI::Beta::BetaTool::ProgrammaticToolCalling,
22
- OpenAI::Beta::BetaTool::ImageGeneration,
23
- OpenAI::Beta::BetaTool::LocalShell,
24
- OpenAI::Beta::BetaFunctionShellTool,
25
- OpenAI::Beta::BetaCustomTool,
26
- OpenAI::Beta::BetaNamespaceTool,
27
- OpenAI::Beta::BetaToolSearchTool,
28
- OpenAI::Beta::BetaApplyPatchTool,
29
- OpenAI::Beta::BetaWebSearchTool,
30
- OpenAI::Beta::BetaWebSearchPreviewTool
39
+ OpenAI::Internal::AnyHash
31
40
  )
32
41
  end
33
42
 
34
- class Mcp < OpenAI::Internal::Type::BaseModel
35
- OrHash =
36
- T.type_alias do
37
- T.any(OpenAI::Beta::BetaTool::Mcp, OpenAI::Internal::AnyHash)
38
- end
39
-
40
43
  # A label for this MCP server, used to identify it in tool calls.
41
44
  sig { returns(String) }
42
45
  attr_accessor :server_label
@@ -46,26 +49,11 @@ module OpenAI
46
49
  attr_accessor :type
47
50
 
48
51
  # The tool invocation context(s).
49
- sig do
50
- returns(
51
- T.nilable(
52
- T::Array[OpenAI::Beta::BetaTool::Mcp::AllowedCaller::OrSymbol]
53
- )
54
- )
55
- end
52
+ sig { returns(T.nilable(T::Array[OpenAI::Beta::BetaTool::Mcp::AllowedCaller::OrSymbol])) }
56
53
  attr_accessor :allowed_callers
57
54
 
58
55
  # List of allowed tool names or a filter object.
59
- sig do
60
- returns(
61
- T.nilable(
62
- T.any(
63
- T::Array[String],
64
- OpenAI::Beta::BetaTool::Mcp::AllowedTools::McpToolFilter
65
- )
66
- )
67
- )
68
- end
56
+ sig { returns(T.nilable(T.any(T::Array[String], OpenAI::Beta::BetaTool::Mcp::AllowedTools::McpToolFilter))) }
69
57
  attr_accessor :allowed_tools
70
58
 
71
59
  # An OAuth access token that can be used with a remote MCP server, either with a
@@ -92,18 +80,10 @@ module OpenAI
92
80
  # - Outlook Calendar: `connector_outlookcalendar`
93
81
  # - Outlook Email: `connector_outlookemail`
94
82
  # - SharePoint: `connector_sharepoint`
95
- sig do
96
- returns(
97
- T.nilable(OpenAI::Beta::BetaTool::Mcp::ConnectorID::OrSymbol)
98
- )
99
- end
83
+ sig { returns(T.nilable(OpenAI::Beta::BetaTool::Mcp::ConnectorID::OrSymbol)) }
100
84
  attr_reader :connector_id
101
85
 
102
- sig do
103
- params(
104
- connector_id: OpenAI::Beta::BetaTool::Mcp::ConnectorID::OrSymbol
105
- ).void
106
- end
86
+ sig { params(connector_id: OpenAI::Beta::BetaTool::Mcp::ConnectorID::OrSymbol).void }
107
87
  attr_writer :connector_id
108
88
 
109
89
  # Whether this MCP tool is deferred and discovered via tool search.
@@ -119,7 +99,7 @@ module OpenAI
119
99
  attr_accessor :headers
120
100
 
121
101
  # Specify which of the MCP server's tools require approval.
122
- sig do
102
+ sig {
123
103
  returns(
124
104
  T.nilable(
125
105
  T.any(
@@ -128,7 +108,7 @@ module OpenAI
128
108
  )
129
109
  )
130
110
  )
131
- end
111
+ }
132
112
  attr_accessor :require_approval
133
113
 
134
114
  # Optional description of the MCP server, used to provide more context.
@@ -159,46 +139,56 @@ module OpenAI
159
139
  # [Learn more about MCP](https://platform.openai.com/docs/guides/tools-remote-mcp).
160
140
  sig do
161
141
  params(
142
+
162
143
  server_label: String,
163
- allowed_callers:
164
- T.nilable(
165
- T::Array[OpenAI::Beta::BetaTool::Mcp::AllowedCaller::OrSymbol]
166
- ),
167
- allowed_tools:
168
- T.nilable(
169
- T.any(
170
- T::Array[String],
171
- OpenAI::Beta::BetaTool::Mcp::AllowedTools::McpToolFilter::OrHash
172
- )
173
- ),
144
+
145
+ allowed_callers: T.nilable(T::Array[OpenAI::Beta::BetaTool::Mcp::AllowedCaller::OrSymbol]),
146
+
147
+ allowed_tools: T.nilable(
148
+ T.any(T::Array[String], OpenAI::Beta::BetaTool::Mcp::AllowedTools::McpToolFilter::OrHash)
149
+ ),
150
+
174
151
  authorization: String,
152
+
175
153
  connector_id: OpenAI::Beta::BetaTool::Mcp::ConnectorID::OrSymbol,
154
+
176
155
  defer_loading: T::Boolean,
156
+
177
157
  headers: T.nilable(T::Hash[Symbol, String]),
178
- require_approval:
179
- T.nilable(
180
- T.any(
181
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::OrHash,
182
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalSetting::OrSymbol
183
- )
184
- ),
158
+
159
+ require_approval: T.nilable(
160
+ T.any(
161
+ OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::OrHash,
162
+ OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalSetting::OrSymbol
163
+ )
164
+ ),
165
+
185
166
  server_description: String,
167
+
186
168
  server_url: String,
169
+
187
170
  tunnel_id: String,
171
+
188
172
  type: Symbol
189
- ).returns(T.attached_class)
173
+ )
174
+ .returns(T.attached_class)
190
175
  end
191
176
  def self.new(
177
+
192
178
  # A label for this MCP server, used to identify it in tool calls.
193
179
  server_label:,
180
+
194
181
  # The tool invocation context(s).
195
182
  allowed_callers: nil,
183
+
196
184
  # List of allowed tool names or a filter object.
197
185
  allowed_tools: nil,
186
+
198
187
  # An OAuth access token that can be used with a remote MCP server, either with a
199
188
  # custom MCP server URL or a service connector. Your application must handle the
200
189
  # OAuth authorization flow and provide the token here.
201
190
  authorization: nil,
191
+
202
192
  # Identifier for service connectors, like those available in ChatGPT. One of
203
193
  # `server_url`, `connector_id`, or `tunnel_id` must be provided. Learn more about
204
194
  # service connectors
@@ -215,22 +205,30 @@ module OpenAI
215
205
  # - Outlook Email: `connector_outlookemail`
216
206
  # - SharePoint: `connector_sharepoint`
217
207
  connector_id: nil,
208
+
218
209
  # Whether this MCP tool is deferred and discovered via tool search.
219
210
  defer_loading: nil,
211
+
220
212
  # Optional HTTP headers to send to the MCP server. Use for authentication or other
221
213
  # purposes.
222
214
  headers: nil,
215
+
223
216
  # Specify which of the MCP server's tools require approval.
224
217
  require_approval: nil,
218
+
225
219
  # Optional description of the MCP server, used to provide more context.
226
220
  server_description: nil,
221
+
227
222
  # The URL for the MCP server. One of `server_url`, `connector_id`, or `tunnel_id`
228
223
  # must be provided.
229
224
  server_url: nil,
225
+
230
226
  # The Secure MCP Tunnel ID to use instead of a direct server URL. One of
231
227
  # `server_url`, `connector_id`, or `tunnel_id` must be provided.
232
228
  tunnel_id: nil,
229
+
233
230
  # The type of the MCP tool. Always `mcp`.
231
+
234
232
  type: :mcp
235
233
  )
236
234
  end
@@ -240,31 +238,20 @@ module OpenAI
240
238
  {
241
239
  server_label: String,
242
240
  type: Symbol,
243
- allowed_callers:
244
- T.nilable(
245
- T::Array[
246
- OpenAI::Beta::BetaTool::Mcp::AllowedCaller::OrSymbol
247
- ]
248
- ),
249
- allowed_tools:
250
- T.nilable(
251
- T.any(
252
- T::Array[String],
253
- OpenAI::Beta::BetaTool::Mcp::AllowedTools::McpToolFilter
254
- )
255
- ),
241
+ allowed_callers: T.nilable(T::Array[OpenAI::Beta::BetaTool::Mcp::AllowedCaller::OrSymbol]),
242
+ allowed_tools: T.nilable(
243
+ T.any(T::Array[String], OpenAI::Beta::BetaTool::Mcp::AllowedTools::McpToolFilter)
244
+ ),
256
245
  authorization: String,
257
- connector_id:
258
- OpenAI::Beta::BetaTool::Mcp::ConnectorID::OrSymbol,
246
+ connector_id: OpenAI::Beta::BetaTool::Mcp::ConnectorID::OrSymbol,
259
247
  defer_loading: T::Boolean,
260
248
  headers: T.nilable(T::Hash[Symbol, String]),
261
- require_approval:
262
- T.nilable(
263
- T.any(
264
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter,
265
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalSetting::OrSymbol
266
- )
267
- ),
249
+ require_approval: T.nilable(
250
+ T.any(
251
+ OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter,
252
+ OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalSetting::OrSymbol
253
+ )
254
+ ),
268
255
  server_description: String,
269
256
  server_url: String,
270
257
  tunnel_id: String
@@ -277,30 +264,13 @@ module OpenAI
277
264
  module AllowedCaller
278
265
  extend OpenAI::Internal::Type::Enum
279
266
 
280
- TaggedSymbol =
281
- T.type_alias do
282
- T.all(Symbol, OpenAI::Beta::BetaTool::Mcp::AllowedCaller)
283
- end
267
+ TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Beta::BetaTool::Mcp::AllowedCaller) }
284
268
  OrSymbol = T.type_alias { T.any(Symbol, String) }
285
269
 
286
- DIRECT =
287
- T.let(
288
- :direct,
289
- OpenAI::Beta::BetaTool::Mcp::AllowedCaller::TaggedSymbol
290
- )
291
- PROGRAMMATIC =
292
- T.let(
293
- :programmatic,
294
- OpenAI::Beta::BetaTool::Mcp::AllowedCaller::TaggedSymbol
295
- )
270
+ DIRECT = T.let(:direct, OpenAI::Beta::BetaTool::Mcp::AllowedCaller::TaggedSymbol)
271
+ PROGRAMMATIC = T.let(:programmatic, OpenAI::Beta::BetaTool::Mcp::AllowedCaller::TaggedSymbol)
296
272
 
297
- sig do
298
- override.returns(
299
- T::Array[
300
- OpenAI::Beta::BetaTool::Mcp::AllowedCaller::TaggedSymbol
301
- ]
302
- )
303
- end
273
+ sig { override.returns(T::Array[OpenAI::Beta::BetaTool::Mcp::AllowedCaller::TaggedSymbol]) }
304
274
  def self.values
305
275
  end
306
276
  end
@@ -309,23 +279,18 @@ module OpenAI
309
279
  module AllowedTools
310
280
  extend OpenAI::Internal::Type::Union
311
281
 
312
- Variants =
313
- T.type_alias do
282
+ Variants = T.type_alias {
283
+ T.any(T::Array[String], OpenAI::Beta::BetaTool::Mcp::AllowedTools::McpToolFilter)
284
+ }
285
+
286
+ class McpToolFilter < OpenAI::Internal::Type::BaseModel
287
+ OrHash = T.type_alias do
314
288
  T.any(
315
- T::Array[String],
316
- OpenAI::Beta::BetaTool::Mcp::AllowedTools::McpToolFilter
289
+ OpenAI::Beta::BetaTool::Mcp::AllowedTools::McpToolFilter,
290
+ OpenAI::Internal::AnyHash
317
291
  )
318
292
  end
319
293
 
320
- class McpToolFilter < OpenAI::Internal::Type::BaseModel
321
- OrHash =
322
- T.type_alias do
323
- T.any(
324
- OpenAI::Beta::BetaTool::Mcp::AllowedTools::McpToolFilter,
325
- OpenAI::Internal::AnyHash
326
- )
327
- end
328
-
329
294
  # Indicates whether or not a tool modifies data or is read-only. If an MCP server
330
295
  # is
331
296
  # [annotated with `readOnlyHint`](https://modelcontextprotocol.io/specification/2025-06-18/schema#toolannotations-readonlyhint),
@@ -346,43 +311,46 @@ module OpenAI
346
311
  # A filter object to specify which tools are allowed.
347
312
  sig do
348
313
  params(
314
+
349
315
  read_only: T::Boolean,
316
+
350
317
  tool_names: T::Array[String]
351
- ).returns(T.attached_class)
318
+ )
319
+ .returns(T.attached_class)
352
320
  end
353
321
  def self.new(
322
+
354
323
  # Indicates whether or not a tool modifies data or is read-only. If an MCP server
355
324
  # is
356
325
  # [annotated with `readOnlyHint`](https://modelcontextprotocol.io/specification/2025-06-18/schema#toolannotations-readonlyhint),
357
326
  # it will match this filter.
358
327
  read_only: nil,
328
+
359
329
  # List of allowed tool names.
330
+
360
331
  tool_names: nil
361
332
  )
362
333
  end
363
334
 
364
335
  sig do
365
336
  override.returns(
366
- { read_only: T::Boolean, tool_names: T::Array[String] }
337
+ {read_only: T::Boolean, tool_names: T::Array[String]}
367
338
  )
368
339
  end
369
340
  def to_hash
370
341
  end
371
- end
372
342
 
373
- sig do
374
- override.returns(
375
- T::Array[OpenAI::Beta::BetaTool::Mcp::AllowedTools::Variants]
376
- )
377
343
  end
344
+
345
+ sig { override.returns(T::Array[OpenAI::Beta::BetaTool::Mcp::AllowedTools::Variants]) }
378
346
  def self.variants
379
347
  end
380
348
 
381
- StringArray =
382
- T.let(
383
- OpenAI::Internal::Type::ArrayOf[String],
384
- OpenAI::Internal::Type::Converter
385
- )
349
+ StringArray = T.let(
350
+ OpenAI::Internal::Type::ArrayOf[String],
351
+ OpenAI::Internal::Type::Converter
352
+ )
353
+
386
354
  end
387
355
 
388
356
  # Identifier for service connectors, like those available in ChatGPT. One of
@@ -403,58 +371,34 @@ module OpenAI
403
371
  module ConnectorID
404
372
  extend OpenAI::Internal::Type::Enum
405
373
 
406
- TaggedSymbol =
407
- T.type_alias do
408
- T.all(Symbol, OpenAI::Beta::BetaTool::Mcp::ConnectorID)
409
- end
374
+ TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Beta::BetaTool::Mcp::ConnectorID) }
410
375
  OrSymbol = T.type_alias { T.any(Symbol, String) }
411
376
 
412
- CONNECTOR_DROPBOX =
413
- T.let(
414
- :connector_dropbox,
415
- OpenAI::Beta::BetaTool::Mcp::ConnectorID::TaggedSymbol
416
- )
417
- CONNECTOR_GMAIL =
418
- T.let(
419
- :connector_gmail,
420
- OpenAI::Beta::BetaTool::Mcp::ConnectorID::TaggedSymbol
421
- )
422
- CONNECTOR_GOOGLECALENDAR =
423
- T.let(
424
- :connector_googlecalendar,
425
- OpenAI::Beta::BetaTool::Mcp::ConnectorID::TaggedSymbol
426
- )
427
- CONNECTOR_GOOGLEDRIVE =
428
- T.let(
429
- :connector_googledrive,
430
- OpenAI::Beta::BetaTool::Mcp::ConnectorID::TaggedSymbol
431
- )
432
- CONNECTOR_MICROSOFTTEAMS =
433
- T.let(
434
- :connector_microsoftteams,
435
- OpenAI::Beta::BetaTool::Mcp::ConnectorID::TaggedSymbol
436
- )
437
- CONNECTOR_OUTLOOKCALENDAR =
438
- T.let(
439
- :connector_outlookcalendar,
440
- OpenAI::Beta::BetaTool::Mcp::ConnectorID::TaggedSymbol
441
- )
442
- CONNECTOR_OUTLOOKEMAIL =
443
- T.let(
444
- :connector_outlookemail,
445
- OpenAI::Beta::BetaTool::Mcp::ConnectorID::TaggedSymbol
446
- )
447
- CONNECTOR_SHAREPOINT =
448
- T.let(
449
- :connector_sharepoint,
450
- OpenAI::Beta::BetaTool::Mcp::ConnectorID::TaggedSymbol
451
- )
377
+ CONNECTOR_DROPBOX = T.let(:connector_dropbox, OpenAI::Beta::BetaTool::Mcp::ConnectorID::TaggedSymbol)
378
+ CONNECTOR_GMAIL = T.let(:connector_gmail, OpenAI::Beta::BetaTool::Mcp::ConnectorID::TaggedSymbol)
379
+ CONNECTOR_GOOGLECALENDAR = T.let(
380
+ :connector_googlecalendar,
381
+ OpenAI::Beta::BetaTool::Mcp::ConnectorID::TaggedSymbol
382
+ )
383
+ CONNECTOR_GOOGLEDRIVE = T.let(
384
+ :connector_googledrive,
385
+ OpenAI::Beta::BetaTool::Mcp::ConnectorID::TaggedSymbol
386
+ )
387
+ CONNECTOR_MICROSOFTTEAMS = T.let(
388
+ :connector_microsoftteams,
389
+ OpenAI::Beta::BetaTool::Mcp::ConnectorID::TaggedSymbol
390
+ )
391
+ CONNECTOR_OUTLOOKCALENDAR = T.let(
392
+ :connector_outlookcalendar,
393
+ OpenAI::Beta::BetaTool::Mcp::ConnectorID::TaggedSymbol
394
+ )
395
+ CONNECTOR_OUTLOOKEMAIL = T.let(
396
+ :connector_outlookemail,
397
+ OpenAI::Beta::BetaTool::Mcp::ConnectorID::TaggedSymbol
398
+ )
399
+ CONNECTOR_SHAREPOINT = T.let(:connector_sharepoint, OpenAI::Beta::BetaTool::Mcp::ConnectorID::TaggedSymbol)
452
400
 
453
- sig do
454
- override.returns(
455
- T::Array[OpenAI::Beta::BetaTool::Mcp::ConnectorID::TaggedSymbol]
456
- )
457
- end
401
+ sig { override.returns(T::Array[OpenAI::Beta::BetaTool::Mcp::ConnectorID::TaggedSymbol]) }
458
402
  def self.values
459
403
  end
460
404
  end
@@ -463,73 +407,57 @@ module OpenAI
463
407
  module RequireApproval
464
408
  extend OpenAI::Internal::Type::Union
465
409
 
466
- Variants =
467
- T.type_alias do
410
+ Variants = T.type_alias {
411
+ T.any(
412
+ OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter,
413
+ OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalSetting::TaggedSymbol
414
+ )
415
+ }
416
+
417
+ class McpToolApprovalFilter < OpenAI::Internal::Type::BaseModel
418
+ OrHash = T.type_alias do
468
419
  T.any(
469
420
  OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter,
470
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalSetting::TaggedSymbol
421
+ OpenAI::Internal::AnyHash
471
422
  )
472
423
  end
473
424
 
474
- class McpToolApprovalFilter < OpenAI::Internal::Type::BaseModel
475
- OrHash =
476
- T.type_alias do
477
- T.any(
478
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter,
479
- OpenAI::Internal::AnyHash
480
- )
481
- end
482
-
483
425
  # A filter object to specify which tools are allowed.
484
- sig do
485
- returns(
486
- T.nilable(
487
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Always
488
- )
489
- )
490
- end
426
+ sig { returns(T.nilable(OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Always)) }
491
427
  attr_reader :always
492
428
 
493
- sig do
494
- params(
495
- always:
496
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Always::OrHash
497
- ).void
498
- end
429
+ sig {
430
+ params(always: OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Always::OrHash).void
431
+ }
499
432
  attr_writer :always
500
433
 
501
434
  # A filter object to specify which tools are allowed.
502
- sig do
503
- returns(
504
- T.nilable(
505
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Never
506
- )
507
- )
508
- end
435
+ sig { returns(T.nilable(OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Never)) }
509
436
  attr_reader :never
510
437
 
511
- sig do
512
- params(
513
- never:
514
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Never::OrHash
515
- ).void
516
- end
438
+ sig {
439
+ params(never: OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Never::OrHash).void
440
+ }
517
441
  attr_writer :never
518
442
 
519
443
  # Specify which of the MCP server's tools require approval. Can be `always`,
520
444
  # `never`, or a filter object associated with tools that require approval.
521
445
  sig do
522
446
  params(
523
- always:
524
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Always::OrHash,
525
- never:
526
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Never::OrHash
527
- ).returns(T.attached_class)
447
+
448
+ always: OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Always::OrHash,
449
+
450
+ never: OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Never::OrHash
451
+ )
452
+ .returns(T.attached_class)
528
453
  end
529
454
  def self.new(
455
+
530
456
  # A filter object to specify which tools are allowed.
531
457
  always: nil,
458
+
532
459
  # A filter object to specify which tools are allowed.
460
+
533
461
  never: nil
534
462
  )
535
463
  end
@@ -537,10 +465,8 @@ module OpenAI
537
465
  sig do
538
466
  override.returns(
539
467
  {
540
- always:
541
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Always,
542
- never:
543
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Never
468
+ always: OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Always,
469
+ never: OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Never
544
470
  }
545
471
  )
546
472
  end
@@ -548,13 +474,12 @@ module OpenAI
548
474
  end
549
475
 
550
476
  class Always < OpenAI::Internal::Type::BaseModel
551
- OrHash =
552
- T.type_alias do
553
- T.any(
554
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Always,
555
- OpenAI::Internal::AnyHash
556
- )
557
- end
477
+ OrHash = T.type_alias do
478
+ T.any(
479
+ OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Always,
480
+ OpenAI::Internal::AnyHash
481
+ )
482
+ end
558
483
 
559
484
  # Indicates whether or not a tool modifies data or is read-only. If an MCP server
560
485
  # is
@@ -576,38 +501,44 @@ module OpenAI
576
501
  # A filter object to specify which tools are allowed.
577
502
  sig do
578
503
  params(
504
+
579
505
  read_only: T::Boolean,
506
+
580
507
  tool_names: T::Array[String]
581
- ).returns(T.attached_class)
508
+ )
509
+ .returns(T.attached_class)
582
510
  end
583
511
  def self.new(
512
+
584
513
  # Indicates whether or not a tool modifies data or is read-only. If an MCP server
585
514
  # is
586
515
  # [annotated with `readOnlyHint`](https://modelcontextprotocol.io/specification/2025-06-18/schema#toolannotations-readonlyhint),
587
516
  # it will match this filter.
588
517
  read_only: nil,
518
+
589
519
  # List of allowed tool names.
520
+
590
521
  tool_names: nil
591
522
  )
592
523
  end
593
524
 
594
525
  sig do
595
526
  override.returns(
596
- { read_only: T::Boolean, tool_names: T::Array[String] }
527
+ {read_only: T::Boolean, tool_names: T::Array[String]}
597
528
  )
598
529
  end
599
530
  def to_hash
600
531
  end
532
+
601
533
  end
602
534
 
603
535
  class Never < OpenAI::Internal::Type::BaseModel
604
- OrHash =
605
- T.type_alias do
606
- T.any(
607
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Never,
608
- OpenAI::Internal::AnyHash
609
- )
610
- end
536
+ OrHash = T.type_alias do
537
+ T.any(
538
+ OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalFilter::Never,
539
+ OpenAI::Internal::AnyHash
540
+ )
541
+ end
611
542
 
612
543
  # Indicates whether or not a tool modifies data or is read-only. If an MCP server
613
544
  # is
@@ -629,28 +560,35 @@ module OpenAI
629
560
  # A filter object to specify which tools are allowed.
630
561
  sig do
631
562
  params(
563
+
632
564
  read_only: T::Boolean,
565
+
633
566
  tool_names: T::Array[String]
634
- ).returns(T.attached_class)
567
+ )
568
+ .returns(T.attached_class)
635
569
  end
636
570
  def self.new(
571
+
637
572
  # Indicates whether or not a tool modifies data or is read-only. If an MCP server
638
573
  # is
639
574
  # [annotated with `readOnlyHint`](https://modelcontextprotocol.io/specification/2025-06-18/schema#toolannotations-readonlyhint),
640
575
  # it will match this filter.
641
576
  read_only: nil,
577
+
642
578
  # List of allowed tool names.
579
+
643
580
  tool_names: nil
644
581
  )
645
582
  end
646
583
 
647
584
  sig do
648
585
  override.returns(
649
- { read_only: T::Boolean, tool_names: T::Array[String] }
586
+ {read_only: T::Boolean, tool_names: T::Array[String]}
650
587
  )
651
588
  end
652
589
  def to_hash
653
590
  end
591
+
654
592
  end
655
593
  end
656
594
 
@@ -660,67 +598,45 @@ module OpenAI
660
598
  module McpToolApprovalSetting
661
599
  extend OpenAI::Internal::Type::Enum
662
600
 
663
- TaggedSymbol =
664
- T.type_alias do
665
- T.all(
666
- Symbol,
667
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalSetting
668
- )
669
- end
601
+ TaggedSymbol = T.type_alias {
602
+ T.all(Symbol, OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalSetting)
603
+ }
670
604
  OrSymbol = T.type_alias { T.any(Symbol, String) }
671
605
 
672
- ALWAYS =
673
- T.let(
674
- :always,
675
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalSetting::TaggedSymbol
676
- )
677
- NEVER =
678
- T.let(
679
- :never,
680
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalSetting::TaggedSymbol
681
- )
606
+ ALWAYS = T.let(
607
+ :always,
608
+ OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalSetting::TaggedSymbol
609
+ )
610
+ NEVER = T.let(:never, OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalSetting::TaggedSymbol)
682
611
 
683
- sig do
612
+ sig {
684
613
  override.returns(
685
- T::Array[
686
- OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalSetting::TaggedSymbol
687
- ]
614
+ T::Array[OpenAI::Beta::BetaTool::Mcp::RequireApproval::McpToolApprovalSetting::TaggedSymbol]
688
615
  )
689
- end
616
+ }
690
617
  def self.values
691
618
  end
692
619
  end
693
620
 
694
- sig do
695
- override.returns(
696
- T::Array[OpenAI::Beta::BetaTool::Mcp::RequireApproval::Variants]
697
- )
698
- end
621
+ sig { override.returns(T::Array[OpenAI::Beta::BetaTool::Mcp::RequireApproval::Variants]) }
699
622
  def self.variants
700
623
  end
624
+
701
625
  end
702
626
  end
703
627
 
704
628
  class CodeInterpreter < OpenAI::Internal::Type::BaseModel
705
- OrHash =
706
- T.type_alias do
707
- T.any(
708
- OpenAI::Beta::BetaTool::CodeInterpreter,
709
- OpenAI::Internal::AnyHash
710
- )
711
- end
629
+ OrHash = T.type_alias do
630
+ T.any(
631
+ OpenAI::Beta::BetaTool::CodeInterpreter,
632
+ OpenAI::Internal::AnyHash
633
+ )
634
+ end
712
635
 
713
636
  # The code interpreter container. Can be a container ID or an object that
714
637
  # specifies uploaded file IDs to make available to your code, along with an
715
638
  # optional `memory_limit` setting.
716
- sig do
717
- returns(
718
- T.any(
719
- String,
720
- OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto
721
- )
722
- )
723
- end
639
+ sig { returns(T.any(String, OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto)) }
724
640
  attr_accessor :container
725
641
 
726
642
  # The type of the code interpreter tool. Always `code_interpreter`.
@@ -728,42 +644,36 @@ module OpenAI
728
644
  attr_accessor :type
729
645
 
730
646
  # The tool invocation context(s).
731
- sig do
732
- returns(
733
- T.nilable(
734
- T::Array[
735
- OpenAI::Beta::BetaTool::CodeInterpreter::AllowedCaller::OrSymbol
736
- ]
737
- )
738
- )
739
- end
647
+ sig { returns(T.nilable(T::Array[OpenAI::Beta::BetaTool::CodeInterpreter::AllowedCaller::OrSymbol])) }
740
648
  attr_accessor :allowed_callers
741
649
 
742
650
  # A tool that runs Python code to help generate a response to a prompt.
743
651
  sig do
744
652
  params(
745
- container:
746
- T.any(
747
- String,
748
- OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto::OrHash
749
- ),
750
- allowed_callers:
751
- T.nilable(
752
- T::Array[
753
- OpenAI::Beta::BetaTool::CodeInterpreter::AllowedCaller::OrSymbol
754
- ]
755
- ),
653
+
654
+ container: T.any(
655
+ String,
656
+ OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto::OrHash
657
+ ),
658
+
659
+ allowed_callers: T.nilable(T::Array[OpenAI::Beta::BetaTool::CodeInterpreter::AllowedCaller::OrSymbol]),
660
+
756
661
  type: Symbol
757
- ).returns(T.attached_class)
662
+ )
663
+ .returns(T.attached_class)
758
664
  end
759
665
  def self.new(
666
+
760
667
  # The code interpreter container. Can be a container ID or an object that
761
668
  # specifies uploaded file IDs to make available to your code, along with an
762
669
  # optional `memory_limit` setting.
763
670
  container:,
671
+
764
672
  # The tool invocation context(s).
765
673
  allowed_callers: nil,
674
+
766
675
  # The type of the code interpreter tool. Always `code_interpreter`.
676
+
767
677
  type: :code_interpreter
768
678
  )
769
679
  end
@@ -771,18 +681,9 @@ module OpenAI
771
681
  sig do
772
682
  override.returns(
773
683
  {
774
- container:
775
- T.any(
776
- String,
777
- OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto
778
- ),
684
+ container: T.any(String, OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto),
779
685
  type: Symbol,
780
- allowed_callers:
781
- T.nilable(
782
- T::Array[
783
- OpenAI::Beta::BetaTool::CodeInterpreter::AllowedCaller::OrSymbol
784
- ]
785
- )
686
+ allowed_callers: T.nilable(T::Array[OpenAI::Beta::BetaTool::CodeInterpreter::AllowedCaller::OrSymbol])
786
687
  }
787
688
  )
788
689
  end
@@ -795,23 +696,18 @@ module OpenAI
795
696
  module Container
796
697
  extend OpenAI::Internal::Type::Union
797
698
 
798
- Variants =
799
- T.type_alias do
699
+ Variants = T.type_alias {
700
+ T.any(String, OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto)
701
+ }
702
+
703
+ class CodeInterpreterToolAuto < OpenAI::Internal::Type::BaseModel
704
+ OrHash = T.type_alias do
800
705
  T.any(
801
- String,
802
- OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto
706
+ OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto,
707
+ OpenAI::Internal::AnyHash
803
708
  )
804
709
  end
805
710
 
806
- class CodeInterpreterToolAuto < OpenAI::Internal::Type::BaseModel
807
- OrHash =
808
- T.type_alias do
809
- T.any(
810
- OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto,
811
- OpenAI::Internal::AnyHash
812
- )
813
- end
814
-
815
711
  # Always `auto`.
816
712
  sig { returns(Symbol) }
817
713
  attr_accessor :type
@@ -824,17 +720,17 @@ module OpenAI
824
720
  attr_writer :file_ids
825
721
 
826
722
  # The memory limit for the code interpreter container.
827
- sig do
723
+ sig {
828
724
  returns(
829
725
  T.nilable(
830
726
  OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto::MemoryLimit::OrSymbol
831
727
  )
832
728
  )
833
- end
729
+ }
834
730
  attr_accessor :memory_limit
835
731
 
836
732
  # Network access policy for the container.
837
- sig do
733
+ sig {
838
734
  returns(
839
735
  T.nilable(
840
736
  T.any(
@@ -843,45 +739,53 @@ module OpenAI
843
739
  )
844
740
  )
845
741
  )
846
- end
742
+ }
847
743
  attr_reader :network_policy
848
744
 
849
- sig do
745
+ sig {
850
746
  params(
851
- network_policy:
852
- T.any(
853
- OpenAI::Beta::BetaContainerNetworkPolicyDisabled::OrHash,
854
- OpenAI::Beta::BetaContainerNetworkPolicyAllowlist::OrHash
855
- )
856
- ).void
857
- end
747
+ network_policy: T.any(
748
+ OpenAI::Beta::BetaContainerNetworkPolicyDisabled::OrHash,
749
+ OpenAI::Beta::BetaContainerNetworkPolicyAllowlist::OrHash
750
+ )
751
+ )
752
+ .void
753
+ }
858
754
  attr_writer :network_policy
859
755
 
860
756
  # Configuration for a code interpreter container. Optionally specify the IDs of
861
757
  # the files to run the code on.
862
758
  sig do
863
759
  params(
760
+
864
761
  file_ids: T::Array[String],
865
- memory_limit:
866
- T.nilable(
867
- OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto::MemoryLimit::OrSymbol
868
- ),
869
- network_policy:
870
- T.any(
871
- OpenAI::Beta::BetaContainerNetworkPolicyDisabled::OrHash,
872
- OpenAI::Beta::BetaContainerNetworkPolicyAllowlist::OrHash
873
- ),
762
+
763
+ memory_limit: T.nilable(
764
+ OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto::MemoryLimit::OrSymbol
765
+ ),
766
+
767
+ network_policy: T.any(
768
+ OpenAI::Beta::BetaContainerNetworkPolicyDisabled::OrHash,
769
+ OpenAI::Beta::BetaContainerNetworkPolicyAllowlist::OrHash
770
+ ),
771
+
874
772
  type: Symbol
875
- ).returns(T.attached_class)
773
+ )
774
+ .returns(T.attached_class)
876
775
  end
877
776
  def self.new(
777
+
878
778
  # An optional list of uploaded files to make available to your code.
879
779
  file_ids: nil,
780
+
880
781
  # The memory limit for the code interpreter container.
881
782
  memory_limit: nil,
783
+
882
784
  # Network access policy for the container.
883
785
  network_policy: nil,
786
+
884
787
  # Always `auto`.
788
+
885
789
  type: :auto
886
790
  )
887
791
  end
@@ -891,15 +795,13 @@ module OpenAI
891
795
  {
892
796
  type: Symbol,
893
797
  file_ids: T::Array[String],
894
- memory_limit:
895
- T.nilable(
896
- OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto::MemoryLimit::OrSymbol
897
- ),
898
- network_policy:
899
- T.any(
900
- OpenAI::Beta::BetaContainerNetworkPolicyDisabled,
901
- OpenAI::Beta::BetaContainerNetworkPolicyAllowlist
902
- )
798
+ memory_limit: T.nilable(
799
+ OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto::MemoryLimit::OrSymbol
800
+ ),
801
+ network_policy: T.any(
802
+ OpenAI::Beta::BetaContainerNetworkPolicyDisabled,
803
+ OpenAI::Beta::BetaContainerNetworkPolicyAllowlist
804
+ )
903
805
  }
904
806
  )
905
807
  end
@@ -910,43 +812,38 @@ module OpenAI
910
812
  module MemoryLimit
911
813
  extend OpenAI::Internal::Type::Enum
912
814
 
913
- TaggedSymbol =
914
- T.type_alias do
915
- T.all(
916
- Symbol,
917
- OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto::MemoryLimit
918
- )
919
- end
815
+ TaggedSymbol = T.type_alias {
816
+ T.all(
817
+ Symbol,
818
+ OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto::MemoryLimit
819
+ )
820
+ }
920
821
  OrSymbol = T.type_alias { T.any(Symbol, String) }
921
822
 
922
- MEMORY_LIMIT_1G =
923
- T.let(
924
- :"1g",
925
- OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto::MemoryLimit::TaggedSymbol
926
- )
927
- MEMORY_LIMIT_4G =
928
- T.let(
929
- :"4g",
930
- OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto::MemoryLimit::TaggedSymbol
931
- )
932
- MEMORY_LIMIT_16G =
933
- T.let(
934
- :"16g",
935
- OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto::MemoryLimit::TaggedSymbol
936
- )
937
- MEMORY_LIMIT_64G =
938
- T.let(
939
- :"64g",
940
- OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto::MemoryLimit::TaggedSymbol
941
- )
823
+ MEMORY_LIMIT_1G = T.let(
824
+ :"1g",
825
+ OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto::MemoryLimit::TaggedSymbol
826
+ )
827
+ MEMORY_LIMIT_4G = T.let(
828
+ :"4g",
829
+ OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto::MemoryLimit::TaggedSymbol
830
+ )
831
+ MEMORY_LIMIT_16G = T.let(
832
+ :"16g",
833
+ OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto::MemoryLimit::TaggedSymbol
834
+ )
835
+ MEMORY_LIMIT_64G = T.let(
836
+ :"64g",
837
+ OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto::MemoryLimit::TaggedSymbol
838
+ )
942
839
 
943
- sig do
840
+ sig {
944
841
  override.returns(
945
842
  T::Array[
946
843
  OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto::MemoryLimit::TaggedSymbol
947
844
  ]
948
845
  )
949
- end
846
+ }
950
847
  def self.values
951
848
  end
952
849
  end
@@ -955,226 +852,145 @@ module OpenAI
955
852
  module NetworkPolicy
956
853
  extend OpenAI::Internal::Type::Union
957
854
 
958
- Variants =
959
- T.type_alias do
960
- T.any(
961
- OpenAI::Beta::BetaContainerNetworkPolicyDisabled,
962
- OpenAI::Beta::BetaContainerNetworkPolicyAllowlist
963
- )
964
- end
855
+ Variants = T.type_alias {
856
+ T.any(
857
+ OpenAI::Beta::BetaContainerNetworkPolicyDisabled,
858
+ OpenAI::Beta::BetaContainerNetworkPolicyAllowlist
859
+ )
860
+ }
965
861
 
966
- sig do
862
+ sig {
967
863
  override.returns(
968
864
  T::Array[
969
865
  OpenAI::Beta::BetaTool::CodeInterpreter::Container::CodeInterpreterToolAuto::NetworkPolicy::Variants
970
866
  ]
971
867
  )
972
- end
868
+ }
973
869
  def self.variants
974
870
  end
871
+
975
872
  end
976
873
  end
977
874
 
978
- sig do
979
- override.returns(
980
- T::Array[
981
- OpenAI::Beta::BetaTool::CodeInterpreter::Container::Variants
982
- ]
983
- )
984
- end
875
+ sig { override.returns(T::Array[OpenAI::Beta::BetaTool::CodeInterpreter::Container::Variants]) }
985
876
  def self.variants
986
877
  end
878
+
987
879
  end
988
880
 
989
881
  module AllowedCaller
990
882
  extend OpenAI::Internal::Type::Enum
991
883
 
992
- TaggedSymbol =
993
- T.type_alias do
994
- T.all(
995
- Symbol,
996
- OpenAI::Beta::BetaTool::CodeInterpreter::AllowedCaller
997
- )
998
- end
884
+ TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Beta::BetaTool::CodeInterpreter::AllowedCaller) }
999
885
  OrSymbol = T.type_alias { T.any(Symbol, String) }
1000
886
 
1001
- DIRECT =
1002
- T.let(
1003
- :direct,
1004
- OpenAI::Beta::BetaTool::CodeInterpreter::AllowedCaller::TaggedSymbol
1005
- )
1006
- PROGRAMMATIC =
1007
- T.let(
1008
- :programmatic,
1009
- OpenAI::Beta::BetaTool::CodeInterpreter::AllowedCaller::TaggedSymbol
1010
- )
887
+ DIRECT = T.let(:direct, OpenAI::Beta::BetaTool::CodeInterpreter::AllowedCaller::TaggedSymbol)
888
+ PROGRAMMATIC = T.let(:programmatic, OpenAI::Beta::BetaTool::CodeInterpreter::AllowedCaller::TaggedSymbol)
1011
889
 
1012
- sig do
1013
- override.returns(
1014
- T::Array[
1015
- OpenAI::Beta::BetaTool::CodeInterpreter::AllowedCaller::TaggedSymbol
1016
- ]
1017
- )
1018
- end
890
+ sig { override.returns(T::Array[OpenAI::Beta::BetaTool::CodeInterpreter::AllowedCaller::TaggedSymbol]) }
1019
891
  def self.values
1020
892
  end
1021
893
  end
1022
894
  end
1023
895
 
1024
896
  class ProgrammaticToolCalling < OpenAI::Internal::Type::BaseModel
1025
- OrHash =
1026
- T.type_alias do
1027
- T.any(
1028
- OpenAI::Beta::BetaTool::ProgrammaticToolCalling,
1029
- OpenAI::Internal::AnyHash
1030
- )
1031
- end
897
+ OrHash = T.type_alias do
898
+ T.any(
899
+ OpenAI::Beta::BetaTool::ProgrammaticToolCalling,
900
+ OpenAI::Internal::AnyHash
901
+ )
902
+ end
1032
903
 
1033
904
  # The type of the tool. Always `programmatic_tool_calling`.
1034
905
  sig { returns(Symbol) }
1035
906
  attr_accessor :type
1036
907
 
1037
- sig { params(type: Symbol).returns(T.attached_class) }
908
+ sig do
909
+ params(
910
+
911
+ type: Symbol
912
+ )
913
+ .returns(T.attached_class)
914
+ end
1038
915
  def self.new(
916
+
1039
917
  # The type of the tool. Always `programmatic_tool_calling`.
918
+
1040
919
  type: :programmatic_tool_calling
1041
920
  )
1042
921
  end
1043
922
 
1044
- sig { override.returns({ type: Symbol }) }
923
+ sig do
924
+ override.returns(
925
+ {type: Symbol}
926
+ )
927
+ end
1045
928
  def to_hash
1046
929
  end
930
+
1047
931
  end
1048
932
 
1049
933
  class ImageGeneration < OpenAI::Internal::Type::BaseModel
1050
- OrHash =
1051
- T.type_alias do
1052
- T.any(
1053
- OpenAI::Beta::BetaTool::ImageGeneration,
1054
- OpenAI::Internal::AnyHash
1055
- )
1056
- end
934
+ OrHash = T.type_alias do
935
+ T.any(
936
+ OpenAI::Beta::BetaTool::ImageGeneration,
937
+ OpenAI::Internal::AnyHash
938
+ )
939
+ end
1057
940
 
1058
941
  # The type of the image generation tool. Always `image_generation`.
1059
942
  sig { returns(Symbol) }
1060
943
  attr_accessor :type
1061
944
 
1062
945
  # Whether to generate a new image or edit an existing image. Default: `auto`.
1063
- sig do
1064
- returns(
1065
- T.nilable(
1066
- OpenAI::Beta::BetaTool::ImageGeneration::Action::OrSymbol
1067
- )
1068
- )
1069
- end
946
+ sig { returns(T.nilable(OpenAI::Beta::BetaTool::ImageGeneration::Action::OrSymbol)) }
1070
947
  attr_reader :action
1071
948
 
1072
- sig do
1073
- params(
1074
- action: OpenAI::Beta::BetaTool::ImageGeneration::Action::OrSymbol
1075
- ).void
1076
- end
949
+ sig { params(action: OpenAI::Beta::BetaTool::ImageGeneration::Action::OrSymbol).void }
1077
950
  attr_writer :action
1078
951
 
1079
- # Allows to set transparency for the background of the generated image(s). This
1080
- # parameter is only supported for GPT image models that support transparent
1081
- # backgrounds. Must be one of `transparent`, `opaque`, or `auto` (default value).
1082
- # When `auto` is used, the model will automatically determine the best background
1083
- # for the image.
952
+ # Allows to set transparency for the background of the generated image(s). Must be
953
+ # one of `transparent`, `opaque`, or `auto` (default value). When `auto` is used,
954
+ # the model will automatically determine the best background for the image.
1084
955
  #
1085
- # `gpt-image-2` and `gpt-image-2-2026-04-21` do not support transparent
1086
- # backgrounds. Requests with `background` set to `transparent` will return an
1087
- # error for these models; use `opaque` or `auto` instead.
1088
- #
1089
- # If `transparent`, the output format needs to support transparency, so it should
1090
- # be set to either `png` (default value) or `webp`.
1091
- sig do
1092
- returns(
1093
- T.nilable(
1094
- OpenAI::Beta::BetaTool::ImageGeneration::Background::OrSymbol
1095
- )
1096
- )
1097
- end
956
+ # Transparent backgrounds are available for supported GPT Image models. For
957
+ # `gpt-image-2` and `gpt-image-2-2026-04-21`, this support is in preview. When
958
+ # using `transparent`, set the output format to `png` or `webp`.
959
+ sig { returns(T.nilable(OpenAI::Beta::BetaTool::ImageGeneration::Background::OrSymbol)) }
1098
960
  attr_reader :background
1099
961
 
1100
- sig do
1101
- params(
1102
- background:
1103
- OpenAI::Beta::BetaTool::ImageGeneration::Background::OrSymbol
1104
- ).void
1105
- end
962
+ sig { params(background: OpenAI::Beta::BetaTool::ImageGeneration::Background::OrSymbol).void }
1106
963
  attr_writer :background
1107
964
 
1108
965
  # Control how much effort the model will exert to match the style and features,
1109
966
  # especially facial features, of input images. This parameter is only supported
1110
967
  # for `gpt-image-1` and `gpt-image-1.5` and later models, unsupported for
1111
968
  # `gpt-image-1-mini`. Supports `high` and `low`. Defaults to `low`.
1112
- sig do
1113
- returns(
1114
- T.nilable(
1115
- OpenAI::Beta::BetaTool::ImageGeneration::InputFidelity::OrSymbol
1116
- )
1117
- )
1118
- end
969
+ sig { returns(T.nilable(OpenAI::Beta::BetaTool::ImageGeneration::InputFidelity::OrSymbol)) }
1119
970
  attr_accessor :input_fidelity
1120
971
 
1121
972
  # Optional mask for inpainting. Contains `image_url` (string, optional) and
1122
973
  # `file_id` (string, optional).
1123
- sig do
1124
- returns(
1125
- T.nilable(OpenAI::Beta::BetaTool::ImageGeneration::InputImageMask)
1126
- )
1127
- end
974
+ sig { returns(T.nilable(OpenAI::Beta::BetaTool::ImageGeneration::InputImageMask)) }
1128
975
  attr_reader :input_image_mask
1129
976
 
1130
- sig do
1131
- params(
1132
- input_image_mask:
1133
- OpenAI::Beta::BetaTool::ImageGeneration::InputImageMask::OrHash
1134
- ).void
1135
- end
977
+ sig { params(input_image_mask: OpenAI::Beta::BetaTool::ImageGeneration::InputImageMask::OrHash).void }
1136
978
  attr_writer :input_image_mask
1137
979
 
1138
- # The image generation model to use. Default: `gpt-image-1`.
1139
- sig do
1140
- returns(
1141
- T.nilable(
1142
- T.any(
1143
- String,
1144
- OpenAI::Beta::BetaTool::ImageGeneration::Model::OrSymbol
1145
- )
1146
- )
1147
- )
1148
- end
980
+ # The image generation model to use. One of `gpt-image-1`, `gpt-image-1-mini`,
981
+ # `gpt-image-1.5`, `gpt-image-2`, `gpt-image-2-2026-04-21`, or
982
+ # `chatgpt-image-latest`. Default: `gpt-image-1`.
983
+ sig { returns(T.nilable(T.any(String, OpenAI::Beta::BetaTool::ImageGeneration::Model::OrSymbol))) }
1149
984
  attr_reader :model
1150
985
 
1151
- sig do
1152
- params(
1153
- model:
1154
- T.any(
1155
- String,
1156
- OpenAI::Beta::BetaTool::ImageGeneration::Model::OrSymbol
1157
- )
1158
- ).void
1159
- end
986
+ sig { params(model: T.any(String, OpenAI::Beta::BetaTool::ImageGeneration::Model::OrSymbol)).void }
1160
987
  attr_writer :model
1161
988
 
1162
989
  # Moderation level for the generated image. Default: `auto`.
1163
- sig do
1164
- returns(
1165
- T.nilable(
1166
- OpenAI::Beta::BetaTool::ImageGeneration::Moderation::OrSymbol
1167
- )
1168
- )
1169
- end
990
+ sig { returns(T.nilable(OpenAI::Beta::BetaTool::ImageGeneration::Moderation::OrSymbol)) }
1170
991
  attr_reader :moderation
1171
992
 
1172
- sig do
1173
- params(
1174
- moderation:
1175
- OpenAI::Beta::BetaTool::ImageGeneration::Moderation::OrSymbol
1176
- ).void
1177
- end
993
+ sig { params(moderation: OpenAI::Beta::BetaTool::ImageGeneration::Moderation::OrSymbol).void }
1178
994
  attr_writer :moderation
1179
995
 
1180
996
  # Compression level for the output image. Default: 100.
@@ -1186,21 +1002,10 @@ module OpenAI
1186
1002
 
1187
1003
  # The output format of the generated image. One of `png`, `webp`, or `jpeg`.
1188
1004
  # Default: `png`.
1189
- sig do
1190
- returns(
1191
- T.nilable(
1192
- OpenAI::Beta::BetaTool::ImageGeneration::OutputFormat::OrSymbol
1193
- )
1194
- )
1195
- end
1005
+ sig { returns(T.nilable(OpenAI::Beta::BetaTool::ImageGeneration::OutputFormat::OrSymbol)) }
1196
1006
  attr_reader :output_format
1197
1007
 
1198
- sig do
1199
- params(
1200
- output_format:
1201
- OpenAI::Beta::BetaTool::ImageGeneration::OutputFormat::OrSymbol
1202
- ).void
1203
- end
1008
+ sig { params(output_format: OpenAI::Beta::BetaTool::ImageGeneration::OutputFormat::OrSymbol).void }
1204
1009
  attr_writer :output_format
1205
1010
 
1206
1011
  # Number of partial images to generate in streaming mode, from 0 (default value)
@@ -1213,21 +1018,10 @@ module OpenAI
1213
1018
 
1214
1019
  # The quality of the generated image. One of `low`, `medium`, `high`, or `auto`.
1215
1020
  # Default: `auto`.
1216
- sig do
1217
- returns(
1218
- T.nilable(
1219
- OpenAI::Beta::BetaTool::ImageGeneration::Quality::OrSymbol
1220
- )
1221
- )
1222
- end
1021
+ sig { returns(T.nilable(OpenAI::Beta::BetaTool::ImageGeneration::Quality::OrSymbol)) }
1223
1022
  attr_reader :quality
1224
1023
 
1225
- sig do
1226
- params(
1227
- quality:
1228
- OpenAI::Beta::BetaTool::ImageGeneration::Quality::OrSymbol
1229
- ).void
1230
- end
1024
+ sig { params(quality: OpenAI::Beta::BetaTool::ImageGeneration::Quality::OrSymbol).void }
1231
1025
  attr_writer :quality
1232
1026
 
1233
1027
  # The size of the generated images. For `gpt-image-2` and
@@ -1241,101 +1035,89 @@ module OpenAI
1241
1035
  # automatic sizing. For `dall-e-2`, use one of `256x256`, `512x512`, or
1242
1036
  # `1024x1024`. For `dall-e-3`, use one of `1024x1024`, `1792x1024`, or
1243
1037
  # `1024x1792`.
1244
- sig do
1245
- returns(
1246
- T.nilable(
1247
- T.any(
1248
- String,
1249
- OpenAI::Beta::BetaTool::ImageGeneration::Size::OrSymbol
1250
- )
1251
- )
1252
- )
1253
- end
1038
+ sig { returns(T.nilable(T.any(String, OpenAI::Beta::BetaTool::ImageGeneration::Size::OrSymbol))) }
1254
1039
  attr_reader :size
1255
1040
 
1256
- sig do
1257
- params(
1258
- size:
1259
- T.any(
1260
- String,
1261
- OpenAI::Beta::BetaTool::ImageGeneration::Size::OrSymbol
1262
- )
1263
- ).void
1264
- end
1041
+ sig { params(size: T.any(String, OpenAI::Beta::BetaTool::ImageGeneration::Size::OrSymbol)).void }
1265
1042
  attr_writer :size
1266
1043
 
1267
1044
  # A tool that generates images using the GPT image models.
1268
1045
  sig do
1269
1046
  params(
1047
+
1270
1048
  action: OpenAI::Beta::BetaTool::ImageGeneration::Action::OrSymbol,
1271
- background:
1272
- OpenAI::Beta::BetaTool::ImageGeneration::Background::OrSymbol,
1273
- input_fidelity:
1274
- T.nilable(
1275
- OpenAI::Beta::BetaTool::ImageGeneration::InputFidelity::OrSymbol
1276
- ),
1277
- input_image_mask:
1278
- OpenAI::Beta::BetaTool::ImageGeneration::InputImageMask::OrHash,
1279
- model:
1280
- T.any(
1281
- String,
1282
- OpenAI::Beta::BetaTool::ImageGeneration::Model::OrSymbol
1283
- ),
1284
- moderation:
1285
- OpenAI::Beta::BetaTool::ImageGeneration::Moderation::OrSymbol,
1049
+
1050
+ background: OpenAI::Beta::BetaTool::ImageGeneration::Background::OrSymbol,
1051
+
1052
+ input_fidelity: T.nilable(OpenAI::Beta::BetaTool::ImageGeneration::InputFidelity::OrSymbol),
1053
+
1054
+ input_image_mask: OpenAI::Beta::BetaTool::ImageGeneration::InputImageMask::OrHash,
1055
+
1056
+ model: T.any(String, OpenAI::Beta::BetaTool::ImageGeneration::Model::OrSymbol),
1057
+
1058
+ moderation: OpenAI::Beta::BetaTool::ImageGeneration::Moderation::OrSymbol,
1059
+
1286
1060
  output_compression: Integer,
1287
- output_format:
1288
- OpenAI::Beta::BetaTool::ImageGeneration::OutputFormat::OrSymbol,
1061
+
1062
+ output_format: OpenAI::Beta::BetaTool::ImageGeneration::OutputFormat::OrSymbol,
1063
+
1289
1064
  partial_images: Integer,
1290
- quality:
1291
- OpenAI::Beta::BetaTool::ImageGeneration::Quality::OrSymbol,
1292
- size:
1293
- T.any(
1294
- String,
1295
- OpenAI::Beta::BetaTool::ImageGeneration::Size::OrSymbol
1296
- ),
1065
+
1066
+ quality: OpenAI::Beta::BetaTool::ImageGeneration::Quality::OrSymbol,
1067
+
1068
+ size: T.any(String, OpenAI::Beta::BetaTool::ImageGeneration::Size::OrSymbol),
1069
+
1297
1070
  type: Symbol
1298
- ).returns(T.attached_class)
1071
+ )
1072
+ .returns(T.attached_class)
1299
1073
  end
1300
1074
  def self.new(
1075
+
1301
1076
  # Whether to generate a new image or edit an existing image. Default: `auto`.
1302
1077
  action: nil,
1303
- # Allows to set transparency for the background of the generated image(s). This
1304
- # parameter is only supported for GPT image models that support transparent
1305
- # backgrounds. Must be one of `transparent`, `opaque`, or `auto` (default value).
1306
- # When `auto` is used, the model will automatically determine the best background
1307
- # for the image.
1308
- #
1309
- # `gpt-image-2` and `gpt-image-2-2026-04-21` do not support transparent
1310
- # backgrounds. Requests with `background` set to `transparent` will return an
1311
- # error for these models; use `opaque` or `auto` instead.
1078
+
1079
+ # Allows to set transparency for the background of the generated image(s). Must be
1080
+ # one of `transparent`, `opaque`, or `auto` (default value). When `auto` is used,
1081
+ # the model will automatically determine the best background for the image.
1312
1082
  #
1313
- # If `transparent`, the output format needs to support transparency, so it should
1314
- # be set to either `png` (default value) or `webp`.
1083
+ # Transparent backgrounds are available for supported GPT Image models. For
1084
+ # `gpt-image-2` and `gpt-image-2-2026-04-21`, this support is in preview. When
1085
+ # using `transparent`, set the output format to `png` or `webp`.
1315
1086
  background: nil,
1087
+
1316
1088
  # Control how much effort the model will exert to match the style and features,
1317
1089
  # especially facial features, of input images. This parameter is only supported
1318
1090
  # for `gpt-image-1` and `gpt-image-1.5` and later models, unsupported for
1319
1091
  # `gpt-image-1-mini`. Supports `high` and `low`. Defaults to `low`.
1320
1092
  input_fidelity: nil,
1093
+
1321
1094
  # Optional mask for inpainting. Contains `image_url` (string, optional) and
1322
1095
  # `file_id` (string, optional).
1323
1096
  input_image_mask: nil,
1324
- # The image generation model to use. Default: `gpt-image-1`.
1097
+
1098
+ # The image generation model to use. One of `gpt-image-1`, `gpt-image-1-mini`,
1099
+ # `gpt-image-1.5`, `gpt-image-2`, `gpt-image-2-2026-04-21`, or
1100
+ # `chatgpt-image-latest`. Default: `gpt-image-1`.
1325
1101
  model: nil,
1102
+
1326
1103
  # Moderation level for the generated image. Default: `auto`.
1327
1104
  moderation: nil,
1105
+
1328
1106
  # Compression level for the output image. Default: 100.
1329
1107
  output_compression: nil,
1108
+
1330
1109
  # The output format of the generated image. One of `png`, `webp`, or `jpeg`.
1331
1110
  # Default: `png`.
1332
1111
  output_format: nil,
1112
+
1333
1113
  # Number of partial images to generate in streaming mode, from 0 (default value)
1334
1114
  # to 3.
1335
1115
  partial_images: nil,
1116
+
1336
1117
  # The quality of the generated image. One of `low`, `medium`, `high`, or `auto`.
1337
1118
  # Default: `auto`.
1338
1119
  quality: nil,
1120
+
1339
1121
  # The size of the generated images. For `gpt-image-2` and
1340
1122
  # `gpt-image-2-2026-04-21`, arbitrary resolutions are supported as `WIDTHxHEIGHT`
1341
1123
  # strings, for example `1536x864`. Width and height must both be divisible by 16
@@ -1348,7 +1130,9 @@ module OpenAI
1348
1130
  # `1024x1024`. For `dall-e-3`, use one of `1024x1024`, `1792x1024`, or
1349
1131
  # `1024x1792`.
1350
1132
  size: nil,
1133
+
1351
1134
  # The type of the image generation tool. Always `image_generation`.
1135
+
1352
1136
  type: :image_generation
1353
1137
  )
1354
1138
  end
@@ -1357,34 +1141,17 @@ module OpenAI
1357
1141
  override.returns(
1358
1142
  {
1359
1143
  type: Symbol,
1360
- action:
1361
- OpenAI::Beta::BetaTool::ImageGeneration::Action::OrSymbol,
1362
- background:
1363
- OpenAI::Beta::BetaTool::ImageGeneration::Background::OrSymbol,
1364
- input_fidelity:
1365
- T.nilable(
1366
- OpenAI::Beta::BetaTool::ImageGeneration::InputFidelity::OrSymbol
1367
- ),
1368
- input_image_mask:
1369
- OpenAI::Beta::BetaTool::ImageGeneration::InputImageMask,
1370
- model:
1371
- T.any(
1372
- String,
1373
- OpenAI::Beta::BetaTool::ImageGeneration::Model::OrSymbol
1374
- ),
1375
- moderation:
1376
- OpenAI::Beta::BetaTool::ImageGeneration::Moderation::OrSymbol,
1144
+ action: OpenAI::Beta::BetaTool::ImageGeneration::Action::OrSymbol,
1145
+ background: OpenAI::Beta::BetaTool::ImageGeneration::Background::OrSymbol,
1146
+ input_fidelity: T.nilable(OpenAI::Beta::BetaTool::ImageGeneration::InputFidelity::OrSymbol),
1147
+ input_image_mask: OpenAI::Beta::BetaTool::ImageGeneration::InputImageMask,
1148
+ model: T.any(String, OpenAI::Beta::BetaTool::ImageGeneration::Model::OrSymbol),
1149
+ moderation: OpenAI::Beta::BetaTool::ImageGeneration::Moderation::OrSymbol,
1377
1150
  output_compression: Integer,
1378
- output_format:
1379
- OpenAI::Beta::BetaTool::ImageGeneration::OutputFormat::OrSymbol,
1151
+ output_format: OpenAI::Beta::BetaTool::ImageGeneration::OutputFormat::OrSymbol,
1380
1152
  partial_images: Integer,
1381
- quality:
1382
- OpenAI::Beta::BetaTool::ImageGeneration::Quality::OrSymbol,
1383
- size:
1384
- T.any(
1385
- String,
1386
- OpenAI::Beta::BetaTool::ImageGeneration::Size::OrSymbol
1387
- )
1153
+ quality: OpenAI::Beta::BetaTool::ImageGeneration::Quality::OrSymbol,
1154
+ size: T.any(String, OpenAI::Beta::BetaTool::ImageGeneration::Size::OrSymbol)
1388
1155
  }
1389
1156
  )
1390
1157
  end
@@ -1395,86 +1162,36 @@ module OpenAI
1395
1162
  module Action
1396
1163
  extend OpenAI::Internal::Type::Enum
1397
1164
 
1398
- TaggedSymbol =
1399
- T.type_alias do
1400
- T.all(Symbol, OpenAI::Beta::BetaTool::ImageGeneration::Action)
1401
- end
1165
+ TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Beta::BetaTool::ImageGeneration::Action) }
1402
1166
  OrSymbol = T.type_alias { T.any(Symbol, String) }
1403
1167
 
1404
- GENERATE =
1405
- T.let(
1406
- :generate,
1407
- OpenAI::Beta::BetaTool::ImageGeneration::Action::TaggedSymbol
1408
- )
1409
- EDIT =
1410
- T.let(
1411
- :edit,
1412
- OpenAI::Beta::BetaTool::ImageGeneration::Action::TaggedSymbol
1413
- )
1414
- AUTO =
1415
- T.let(
1416
- :auto,
1417
- OpenAI::Beta::BetaTool::ImageGeneration::Action::TaggedSymbol
1418
- )
1168
+ GENERATE = T.let(:generate, OpenAI::Beta::BetaTool::ImageGeneration::Action::TaggedSymbol)
1169
+ EDIT = T.let(:edit, OpenAI::Beta::BetaTool::ImageGeneration::Action::TaggedSymbol)
1170
+ AUTO = T.let(:auto, OpenAI::Beta::BetaTool::ImageGeneration::Action::TaggedSymbol)
1419
1171
 
1420
- sig do
1421
- override.returns(
1422
- T::Array[
1423
- OpenAI::Beta::BetaTool::ImageGeneration::Action::TaggedSymbol
1424
- ]
1425
- )
1426
- end
1172
+ sig { override.returns(T::Array[OpenAI::Beta::BetaTool::ImageGeneration::Action::TaggedSymbol]) }
1427
1173
  def self.values
1428
1174
  end
1429
1175
  end
1430
1176
 
1431
- # Allows to set transparency for the background of the generated image(s). This
1432
- # parameter is only supported for GPT image models that support transparent
1433
- # backgrounds. Must be one of `transparent`, `opaque`, or `auto` (default value).
1434
- # When `auto` is used, the model will automatically determine the best background
1435
- # for the image.
1177
+ # Allows to set transparency for the background of the generated image(s). Must be
1178
+ # one of `transparent`, `opaque`, or `auto` (default value). When `auto` is used,
1179
+ # the model will automatically determine the best background for the image.
1436
1180
  #
1437
- # `gpt-image-2` and `gpt-image-2-2026-04-21` do not support transparent
1438
- # backgrounds. Requests with `background` set to `transparent` will return an
1439
- # error for these models; use `opaque` or `auto` instead.
1440
- #
1441
- # If `transparent`, the output format needs to support transparency, so it should
1442
- # be set to either `png` (default value) or `webp`.
1181
+ # Transparent backgrounds are available for supported GPT Image models. For
1182
+ # `gpt-image-2` and `gpt-image-2-2026-04-21`, this support is in preview. When
1183
+ # using `transparent`, set the output format to `png` or `webp`.
1443
1184
  module Background
1444
1185
  extend OpenAI::Internal::Type::Enum
1445
1186
 
1446
- TaggedSymbol =
1447
- T.type_alias do
1448
- T.all(
1449
- Symbol,
1450
- OpenAI::Beta::BetaTool::ImageGeneration::Background
1451
- )
1452
- end
1187
+ TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Beta::BetaTool::ImageGeneration::Background) }
1453
1188
  OrSymbol = T.type_alias { T.any(Symbol, String) }
1454
1189
 
1455
- TRANSPARENT =
1456
- T.let(
1457
- :transparent,
1458
- OpenAI::Beta::BetaTool::ImageGeneration::Background::TaggedSymbol
1459
- )
1460
- OPAQUE =
1461
- T.let(
1462
- :opaque,
1463
- OpenAI::Beta::BetaTool::ImageGeneration::Background::TaggedSymbol
1464
- )
1465
- AUTO =
1466
- T.let(
1467
- :auto,
1468
- OpenAI::Beta::BetaTool::ImageGeneration::Background::TaggedSymbol
1469
- )
1190
+ TRANSPARENT = T.let(:transparent, OpenAI::Beta::BetaTool::ImageGeneration::Background::TaggedSymbol)
1191
+ OPAQUE = T.let(:opaque, OpenAI::Beta::BetaTool::ImageGeneration::Background::TaggedSymbol)
1192
+ AUTO = T.let(:auto, OpenAI::Beta::BetaTool::ImageGeneration::Background::TaggedSymbol)
1470
1193
 
1471
- sig do
1472
- override.returns(
1473
- T::Array[
1474
- OpenAI::Beta::BetaTool::ImageGeneration::Background::TaggedSymbol
1475
- ]
1476
- )
1477
- end
1194
+ sig { override.returns(T::Array[OpenAI::Beta::BetaTool::ImageGeneration::Background::TaggedSymbol]) }
1478
1195
  def self.values
1479
1196
  end
1480
1197
  end
@@ -1486,45 +1203,24 @@ module OpenAI
1486
1203
  module InputFidelity
1487
1204
  extend OpenAI::Internal::Type::Enum
1488
1205
 
1489
- TaggedSymbol =
1490
- T.type_alias do
1491
- T.all(
1492
- Symbol,
1493
- OpenAI::Beta::BetaTool::ImageGeneration::InputFidelity
1494
- )
1495
- end
1206
+ TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Beta::BetaTool::ImageGeneration::InputFidelity) }
1496
1207
  OrSymbol = T.type_alias { T.any(Symbol, String) }
1497
1208
 
1498
- HIGH =
1499
- T.let(
1500
- :high,
1501
- OpenAI::Beta::BetaTool::ImageGeneration::InputFidelity::TaggedSymbol
1502
- )
1503
- LOW =
1504
- T.let(
1505
- :low,
1506
- OpenAI::Beta::BetaTool::ImageGeneration::InputFidelity::TaggedSymbol
1507
- )
1209
+ HIGH = T.let(:high, OpenAI::Beta::BetaTool::ImageGeneration::InputFidelity::TaggedSymbol)
1210
+ LOW = T.let(:low, OpenAI::Beta::BetaTool::ImageGeneration::InputFidelity::TaggedSymbol)
1508
1211
 
1509
- sig do
1510
- override.returns(
1511
- T::Array[
1512
- OpenAI::Beta::BetaTool::ImageGeneration::InputFidelity::TaggedSymbol
1513
- ]
1514
- )
1515
- end
1212
+ sig { override.returns(T::Array[OpenAI::Beta::BetaTool::ImageGeneration::InputFidelity::TaggedSymbol]) }
1516
1213
  def self.values
1517
1214
  end
1518
1215
  end
1519
1216
 
1520
1217
  class InputImageMask < OpenAI::Internal::Type::BaseModel
1521
- OrHash =
1522
- T.type_alias do
1523
- T.any(
1524
- OpenAI::Beta::BetaTool::ImageGeneration::InputImageMask,
1525
- OpenAI::Internal::AnyHash
1526
- )
1527
- end
1218
+ OrHash = T.type_alias do
1219
+ T.any(
1220
+ OpenAI::Beta::BetaTool::ImageGeneration::InputImageMask,
1221
+ OpenAI::Internal::AnyHash
1222
+ )
1223
+ end
1528
1224
 
1529
1225
  # File ID for the mask image.
1530
1226
  sig { returns(T.nilable(String)) }
@@ -1543,114 +1239,79 @@ module OpenAI
1543
1239
  # Optional mask for inpainting. Contains `image_url` (string, optional) and
1544
1240
  # `file_id` (string, optional).
1545
1241
  sig do
1546
- params(file_id: String, image_url: String).returns(
1547
- T.attached_class
1242
+ params(
1243
+
1244
+ file_id: String,
1245
+
1246
+ image_url: String
1548
1247
  )
1248
+ .returns(T.attached_class)
1549
1249
  end
1550
1250
  def self.new(
1251
+
1551
1252
  # File ID for the mask image.
1552
1253
  file_id: nil,
1254
+
1553
1255
  # Base64-encoded mask image.
1256
+
1554
1257
  image_url: nil
1555
1258
  )
1556
1259
  end
1557
1260
 
1558
- sig { override.returns({ file_id: String, image_url: String }) }
1261
+ sig do
1262
+ override.returns(
1263
+ {file_id: String, image_url: String}
1264
+ )
1265
+ end
1559
1266
  def to_hash
1560
1267
  end
1268
+
1561
1269
  end
1562
1270
 
1563
- # The image generation model to use. Default: `gpt-image-1`.
1271
+ # The image generation model to use. One of `gpt-image-1`, `gpt-image-1-mini`,
1272
+ # `gpt-image-1.5`, `gpt-image-2`, `gpt-image-2-2026-04-21`, or
1273
+ # `chatgpt-image-latest`. Default: `gpt-image-1`.
1564
1274
  module Model
1565
1275
  extend OpenAI::Internal::Type::Union
1566
1276
 
1567
- Variants =
1568
- T.type_alias do
1569
- T.any(
1570
- String,
1571
- OpenAI::Beta::BetaTool::ImageGeneration::Model::TaggedSymbol
1572
- )
1573
- end
1277
+ Variants = T.type_alias { T.any(String, OpenAI::Beta::BetaTool::ImageGeneration::Model::TaggedSymbol) }
1574
1278
 
1575
- sig do
1576
- override.returns(
1577
- T::Array[
1578
- OpenAI::Beta::BetaTool::ImageGeneration::Model::Variants
1579
- ]
1580
- )
1581
- end
1279
+ sig { override.returns(T::Array[OpenAI::Beta::BetaTool::ImageGeneration::Model::Variants]) }
1582
1280
  def self.variants
1583
1281
  end
1584
1282
 
1585
- TaggedSymbol =
1586
- T.type_alias do
1587
- T.all(Symbol, OpenAI::Beta::BetaTool::ImageGeneration::Model)
1588
- end
1283
+ TaggedSymbol = T.type_alias do
1284
+ T.all(Symbol, OpenAI::Beta::BetaTool::ImageGeneration::Model)
1285
+ end
1286
+
1589
1287
  OrSymbol = T.type_alias { T.any(Symbol, String) }
1590
1288
 
1591
- GPT_IMAGE_1 =
1592
- T.let(
1593
- :"gpt-image-1",
1594
- OpenAI::Beta::BetaTool::ImageGeneration::Model::TaggedSymbol
1595
- )
1596
- GPT_IMAGE_1_MINI =
1597
- T.let(
1598
- :"gpt-image-1-mini",
1599
- OpenAI::Beta::BetaTool::ImageGeneration::Model::TaggedSymbol
1600
- )
1601
- GPT_IMAGE_2 =
1602
- T.let(
1603
- :"gpt-image-2",
1604
- OpenAI::Beta::BetaTool::ImageGeneration::Model::TaggedSymbol
1605
- )
1606
- GPT_IMAGE_2_2026_04_21 =
1607
- T.let(
1608
- :"gpt-image-2-2026-04-21",
1609
- OpenAI::Beta::BetaTool::ImageGeneration::Model::TaggedSymbol
1610
- )
1611
- GPT_IMAGE_1_5 =
1612
- T.let(
1613
- :"gpt-image-1.5",
1614
- OpenAI::Beta::BetaTool::ImageGeneration::Model::TaggedSymbol
1615
- )
1616
- CHATGPT_IMAGE_LATEST =
1617
- T.let(
1618
- :"chatgpt-image-latest",
1619
- OpenAI::Beta::BetaTool::ImageGeneration::Model::TaggedSymbol
1620
- )
1289
+ GPT_IMAGE_1 = T.let(:"gpt-image-1", OpenAI::Beta::BetaTool::ImageGeneration::Model::TaggedSymbol)
1290
+ GPT_IMAGE_1_MINI = T.let(:"gpt-image-1-mini", OpenAI::Beta::BetaTool::ImageGeneration::Model::TaggedSymbol)
1291
+ GPT_IMAGE_2 = T.let(:"gpt-image-2", OpenAI::Beta::BetaTool::ImageGeneration::Model::TaggedSymbol)
1292
+ GPT_IMAGE_2_2026_04_21 = T.let(
1293
+ :"gpt-image-2-2026-04-21",
1294
+ OpenAI::Beta::BetaTool::ImageGeneration::Model::TaggedSymbol
1295
+ )
1296
+ GPT_IMAGE_1_5 = T.let(:"gpt-image-1.5", OpenAI::Beta::BetaTool::ImageGeneration::Model::TaggedSymbol)
1297
+ CHATGPT_IMAGE_LATEST = T.let(
1298
+ :"chatgpt-image-latest",
1299
+ OpenAI::Beta::BetaTool::ImageGeneration::Model::TaggedSymbol
1300
+ )
1301
+
1621
1302
  end
1622
1303
 
1623
1304
  # Moderation level for the generated image. Default: `auto`.
1624
1305
  module Moderation
1625
1306
  extend OpenAI::Internal::Type::Enum
1626
1307
 
1627
- TaggedSymbol =
1628
- T.type_alias do
1629
- T.all(
1630
- Symbol,
1631
- OpenAI::Beta::BetaTool::ImageGeneration::Moderation
1632
- )
1633
- end
1308
+ TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Beta::BetaTool::ImageGeneration::Moderation) }
1634
1309
  OrSymbol = T.type_alias { T.any(Symbol, String) }
1635
1310
 
1636
- AUTO =
1637
- T.let(
1638
- :auto,
1639
- OpenAI::Beta::BetaTool::ImageGeneration::Moderation::TaggedSymbol
1640
- )
1641
- LOW =
1642
- T.let(
1643
- :low,
1644
- OpenAI::Beta::BetaTool::ImageGeneration::Moderation::TaggedSymbol
1645
- )
1311
+ AUTO = T.let(:auto, OpenAI::Beta::BetaTool::ImageGeneration::Moderation::TaggedSymbol)
1312
+ LOW = T.let(:low, OpenAI::Beta::BetaTool::ImageGeneration::Moderation::TaggedSymbol)
1646
1313
 
1647
- sig do
1648
- override.returns(
1649
- T::Array[
1650
- OpenAI::Beta::BetaTool::ImageGeneration::Moderation::TaggedSymbol
1651
- ]
1652
- )
1653
- end
1314
+ sig { override.returns(T::Array[OpenAI::Beta::BetaTool::ImageGeneration::Moderation::TaggedSymbol]) }
1654
1315
  def self.values
1655
1316
  end
1656
1317
  end
@@ -1660,38 +1321,14 @@ module OpenAI
1660
1321
  module OutputFormat
1661
1322
  extend OpenAI::Internal::Type::Enum
1662
1323
 
1663
- TaggedSymbol =
1664
- T.type_alias do
1665
- T.all(
1666
- Symbol,
1667
- OpenAI::Beta::BetaTool::ImageGeneration::OutputFormat
1668
- )
1669
- end
1324
+ TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Beta::BetaTool::ImageGeneration::OutputFormat) }
1670
1325
  OrSymbol = T.type_alias { T.any(Symbol, String) }
1671
1326
 
1672
- PNG =
1673
- T.let(
1674
- :png,
1675
- OpenAI::Beta::BetaTool::ImageGeneration::OutputFormat::TaggedSymbol
1676
- )
1677
- WEBP =
1678
- T.let(
1679
- :webp,
1680
- OpenAI::Beta::BetaTool::ImageGeneration::OutputFormat::TaggedSymbol
1681
- )
1682
- JPEG =
1683
- T.let(
1684
- :jpeg,
1685
- OpenAI::Beta::BetaTool::ImageGeneration::OutputFormat::TaggedSymbol
1686
- )
1327
+ PNG = T.let(:png, OpenAI::Beta::BetaTool::ImageGeneration::OutputFormat::TaggedSymbol)
1328
+ WEBP = T.let(:webp, OpenAI::Beta::BetaTool::ImageGeneration::OutputFormat::TaggedSymbol)
1329
+ JPEG = T.let(:jpeg, OpenAI::Beta::BetaTool::ImageGeneration::OutputFormat::TaggedSymbol)
1687
1330
 
1688
- sig do
1689
- override.returns(
1690
- T::Array[
1691
- OpenAI::Beta::BetaTool::ImageGeneration::OutputFormat::TaggedSymbol
1692
- ]
1693
- )
1694
- end
1331
+ sig { override.returns(T::Array[OpenAI::Beta::BetaTool::ImageGeneration::OutputFormat::TaggedSymbol]) }
1695
1332
  def self.values
1696
1333
  end
1697
1334
  end
@@ -1701,40 +1338,15 @@ module OpenAI
1701
1338
  module Quality
1702
1339
  extend OpenAI::Internal::Type::Enum
1703
1340
 
1704
- TaggedSymbol =
1705
- T.type_alias do
1706
- T.all(Symbol, OpenAI::Beta::BetaTool::ImageGeneration::Quality)
1707
- end
1341
+ TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Beta::BetaTool::ImageGeneration::Quality) }
1708
1342
  OrSymbol = T.type_alias { T.any(Symbol, String) }
1709
1343
 
1710
- LOW =
1711
- T.let(
1712
- :low,
1713
- OpenAI::Beta::BetaTool::ImageGeneration::Quality::TaggedSymbol
1714
- )
1715
- MEDIUM =
1716
- T.let(
1717
- :medium,
1718
- OpenAI::Beta::BetaTool::ImageGeneration::Quality::TaggedSymbol
1719
- )
1720
- HIGH =
1721
- T.let(
1722
- :high,
1723
- OpenAI::Beta::BetaTool::ImageGeneration::Quality::TaggedSymbol
1724
- )
1725
- AUTO =
1726
- T.let(
1727
- :auto,
1728
- OpenAI::Beta::BetaTool::ImageGeneration::Quality::TaggedSymbol
1729
- )
1344
+ LOW = T.let(:low, OpenAI::Beta::BetaTool::ImageGeneration::Quality::TaggedSymbol)
1345
+ MEDIUM = T.let(:medium, OpenAI::Beta::BetaTool::ImageGeneration::Quality::TaggedSymbol)
1346
+ HIGH = T.let(:high, OpenAI::Beta::BetaTool::ImageGeneration::Quality::TaggedSymbol)
1347
+ AUTO = T.let(:auto, OpenAI::Beta::BetaTool::ImageGeneration::Quality::TaggedSymbol)
1730
1348
 
1731
- sig do
1732
- override.returns(
1733
- T::Array[
1734
- OpenAI::Beta::BetaTool::ImageGeneration::Quality::TaggedSymbol
1735
- ]
1736
- )
1737
- end
1349
+ sig { override.returns(T::Array[OpenAI::Beta::BetaTool::ImageGeneration::Quality::TaggedSymbol]) }
1738
1350
  def self.values
1739
1351
  end
1740
1352
  end
@@ -1753,83 +1365,71 @@ module OpenAI
1753
1365
  module Size
1754
1366
  extend OpenAI::Internal::Type::Union
1755
1367
 
1756
- Variants =
1757
- T.type_alias do
1758
- T.any(
1759
- String,
1760
- OpenAI::Beta::BetaTool::ImageGeneration::Size::TaggedSymbol
1761
- )
1762
- end
1368
+ Variants = T.type_alias { T.any(String, OpenAI::Beta::BetaTool::ImageGeneration::Size::TaggedSymbol) }
1763
1369
 
1764
- sig do
1765
- override.returns(
1766
- T::Array[
1767
- OpenAI::Beta::BetaTool::ImageGeneration::Size::Variants
1768
- ]
1769
- )
1770
- end
1370
+ sig { override.returns(T::Array[OpenAI::Beta::BetaTool::ImageGeneration::Size::Variants]) }
1771
1371
  def self.variants
1772
1372
  end
1773
1373
 
1774
- TaggedSymbol =
1775
- T.type_alias do
1776
- T.all(Symbol, OpenAI::Beta::BetaTool::ImageGeneration::Size)
1777
- end
1374
+ TaggedSymbol = T.type_alias do
1375
+ T.all(Symbol, OpenAI::Beta::BetaTool::ImageGeneration::Size)
1376
+ end
1377
+
1778
1378
  OrSymbol = T.type_alias { T.any(Symbol, String) }
1779
1379
 
1780
- SIZE_1024X1024 =
1781
- T.let(
1782
- :"1024x1024",
1783
- OpenAI::Beta::BetaTool::ImageGeneration::Size::TaggedSymbol
1784
- )
1785
- SIZE_1024X1536 =
1786
- T.let(
1787
- :"1024x1536",
1788
- OpenAI::Beta::BetaTool::ImageGeneration::Size::TaggedSymbol
1789
- )
1790
- SIZE_1536X1024 =
1791
- T.let(
1792
- :"1536x1024",
1793
- OpenAI::Beta::BetaTool::ImageGeneration::Size::TaggedSymbol
1794
- )
1795
- AUTO =
1796
- T.let(
1797
- :auto,
1798
- OpenAI::Beta::BetaTool::ImageGeneration::Size::TaggedSymbol
1799
- )
1380
+ SIZE_1024X1024 = T.let(:"1024x1024", OpenAI::Beta::BetaTool::ImageGeneration::Size::TaggedSymbol)
1381
+ SIZE_1024X1536 = T.let(:"1024x1536", OpenAI::Beta::BetaTool::ImageGeneration::Size::TaggedSymbol)
1382
+ SIZE_1536X1024 = T.let(:"1536x1024", OpenAI::Beta::BetaTool::ImageGeneration::Size::TaggedSymbol)
1383
+ AUTO = T.let(:auto, OpenAI::Beta::BetaTool::ImageGeneration::Size::TaggedSymbol)
1384
+
1800
1385
  end
1801
1386
  end
1802
1387
 
1803
1388
  class LocalShell < OpenAI::Internal::Type::BaseModel
1804
- OrHash =
1805
- T.type_alias do
1806
- T.any(
1807
- OpenAI::Beta::BetaTool::LocalShell,
1808
- OpenAI::Internal::AnyHash
1809
- )
1810
- end
1389
+ OrHash = T.type_alias do
1390
+ T.any(
1391
+ OpenAI::Beta::BetaTool::LocalShell,
1392
+ OpenAI::Internal::AnyHash
1393
+ )
1394
+ end
1811
1395
 
1812
1396
  # The type of the local shell tool. Always `local_shell`.
1813
1397
  sig { returns(Symbol) }
1814
1398
  attr_accessor :type
1815
1399
 
1816
1400
  # A tool that allows the model to execute shell commands in a local environment.
1817
- sig { params(type: Symbol).returns(T.attached_class) }
1401
+ sig do
1402
+ params(
1403
+
1404
+ type: Symbol
1405
+ )
1406
+ .returns(T.attached_class)
1407
+ end
1818
1408
  def self.new(
1409
+
1819
1410
  # The type of the local shell tool. Always `local_shell`.
1411
+
1820
1412
  type: :local_shell
1821
1413
  )
1822
1414
  end
1823
1415
 
1824
- sig { override.returns({ type: Symbol }) }
1416
+ sig do
1417
+ override.returns(
1418
+ {type: Symbol}
1419
+ )
1420
+ end
1825
1421
  def to_hash
1826
1422
  end
1423
+
1827
1424
  end
1828
1425
 
1829
1426
  sig { override.returns(T::Array[OpenAI::Beta::BetaTool::Variants]) }
1830
1427
  def self.variants
1831
1428
  end
1429
+
1832
1430
  end
1431
+
1833
1432
  end
1433
+
1834
1434
  end
1835
1435
  end