openai 0.68.0 → 0.69.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 (701) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +23 -0
  3. data/README.md +7 -7
  4. data/lib/openai/internal/type/enum.rb +6 -6
  5. data/lib/openai/internal/util.rb +14 -2
  6. data/lib/openai/models/beta/assistant_create_params.rb +7 -14
  7. data/lib/openai/models/beta/assistant_update_params.rb +7 -14
  8. data/lib/openai/models/beta/beta_apply_patch_tool.rb +44 -0
  9. data/lib/openai/models/beta/beta_compacted_response.rb +58 -0
  10. data/lib/openai/models/beta/beta_computer_action.rb +398 -0
  11. data/lib/openai/models/beta/beta_computer_action_list.rb +13 -0
  12. data/lib/openai/models/beta/beta_computer_tool.rb +23 -0
  13. data/lib/openai/models/beta/beta_computer_use_preview_tool.rb +63 -0
  14. data/lib/openai/models/beta/beta_container_auto.rb +96 -0
  15. data/lib/openai/models/beta/beta_container_network_policy_allowlist.rb +37 -0
  16. data/lib/openai/models/beta/beta_container_network_policy_disabled.rb +20 -0
  17. data/lib/openai/models/beta/beta_container_network_policy_domain_secret.rb +36 -0
  18. data/lib/openai/models/beta/beta_container_reference.rb +28 -0
  19. data/lib/openai/models/beta/beta_custom_tool.rb +148 -0
  20. data/lib/openai/models/beta/beta_easy_input_message.rb +120 -0
  21. data/lib/openai/models/beta/beta_file_search_tool.rb +424 -0
  22. data/lib/openai/models/beta/beta_function_shell_tool.rb +67 -0
  23. data/lib/openai/models/beta/beta_function_tool.rb +97 -0
  24. data/lib/openai/models/beta/beta_inline_skill.rb +44 -0
  25. data/lib/openai/models/beta/beta_inline_skill_source.rb +38 -0
  26. data/lib/openai/models/beta/beta_local_environment.rb +28 -0
  27. data/lib/openai/models/beta/beta_local_skill.rb +36 -0
  28. data/lib/openai/models/beta/beta_namespace_tool.rb +146 -0
  29. data/lib/openai/models/beta/beta_response.rb +1425 -0
  30. data/lib/openai/models/beta/beta_response_apply_patch_tool_call.rb +258 -0
  31. data/lib/openai/models/beta/beta_response_apply_patch_tool_call_output.rb +156 -0
  32. data/lib/openai/models/beta/beta_response_audio_delta_event.rb +63 -0
  33. data/lib/openai/models/beta/beta_response_audio_done_event.rb +55 -0
  34. data/lib/openai/models/beta/beta_response_audio_transcript_delta_event.rb +63 -0
  35. data/lib/openai/models/beta/beta_response_audio_transcript_done_event.rb +55 -0
  36. data/lib/openai/models/beta/beta_response_code_interpreter_call_code_delta_event.rb +81 -0
  37. data/lib/openai/models/beta/beta_response_code_interpreter_call_code_done_event.rb +76 -0
  38. data/lib/openai/models/beta/beta_response_code_interpreter_call_completed_event.rb +73 -0
  39. data/lib/openai/models/beta/beta_response_code_interpreter_call_in_progress_event.rb +77 -0
  40. data/lib/openai/models/beta/beta_response_code_interpreter_call_interpreting_event.rb +77 -0
  41. data/lib/openai/models/beta/beta_response_code_interpreter_tool_call.rb +168 -0
  42. data/lib/openai/models/beta/beta_response_compaction_item.rb +69 -0
  43. data/lib/openai/models/beta/beta_response_compaction_item_param.rb +61 -0
  44. data/lib/openai/models/beta/beta_response_completed_event.rb +63 -0
  45. data/lib/openai/models/beta/beta_response_computer_tool_call.rb +156 -0
  46. data/lib/openai/models/beta/beta_response_computer_tool_call_output_item.rb +141 -0
  47. data/lib/openai/models/beta/beta_response_computer_tool_call_output_screenshot.rb +43 -0
  48. data/lib/openai/models/beta/beta_response_container_reference.rb +29 -0
  49. data/lib/openai/models/beta/beta_response_content.rb +56 -0
  50. data/lib/openai/models/beta/beta_response_content_part_added_event.rb +129 -0
  51. data/lib/openai/models/beta/beta_response_content_part_done_event.rb +129 -0
  52. data/lib/openai/models/beta/beta_response_conversation_param.rb +22 -0
  53. data/lib/openai/models/beta/beta_response_created_event.rb +63 -0
  54. data/lib/openai/models/beta/beta_response_custom_tool_call.rb +142 -0
  55. data/lib/openai/models/beta/beta_response_custom_tool_call_input_delta_event.rb +76 -0
  56. data/lib/openai/models/beta/beta_response_custom_tool_call_input_done_event.rb +76 -0
  57. data/lib/openai/models/beta/beta_response_custom_tool_call_item.rb +55 -0
  58. data/lib/openai/models/beta/beta_response_custom_tool_call_output.rb +171 -0
  59. data/lib/openai/models/beta/beta_response_custom_tool_call_output_item.rb +55 -0
  60. data/lib/openai/models/beta/beta_response_error.rb +63 -0
  61. data/lib/openai/models/beta/beta_response_error_event.rb +79 -0
  62. data/lib/openai/models/beta/beta_response_failed_event.rb +63 -0
  63. data/lib/openai/models/beta/beta_response_file_search_call_completed_event.rb +72 -0
  64. data/lib/openai/models/beta/beta_response_file_search_call_in_progress_event.rb +72 -0
  65. data/lib/openai/models/beta/beta_response_file_search_call_searching_event.rb +72 -0
  66. data/lib/openai/models/beta/beta_response_file_search_tool_call.rb +168 -0
  67. data/lib/openai/models/beta/beta_response_format_text_config.rb +72 -0
  68. data/lib/openai/models/beta/beta_response_format_text_json_schema_config.rb +66 -0
  69. data/lib/openai/models/beta/beta_response_function_call_arguments_delta_event.rb +80 -0
  70. data/lib/openai/models/beta/beta_response_function_call_arguments_done_event.rb +83 -0
  71. data/lib/openai/models/beta/beta_response_function_call_output_item.rb +28 -0
  72. data/lib/openai/models/beta/beta_response_function_call_output_item_list.rb +14 -0
  73. data/lib/openai/models/beta/beta_response_function_shell_call_output_content.rb +90 -0
  74. data/lib/openai/models/beta/beta_response_function_shell_tool_call.rb +216 -0
  75. data/lib/openai/models/beta/beta_response_function_shell_tool_call_output.rb +265 -0
  76. data/lib/openai/models/beta/beta_response_function_tool_call.rb +168 -0
  77. data/lib/openai/models/beta/beta_response_function_tool_call_item.rb +57 -0
  78. data/lib/openai/models/beta/beta_response_function_tool_call_output_item.rb +201 -0
  79. data/lib/openai/models/beta/beta_response_function_web_search.rb +238 -0
  80. data/lib/openai/models/beta/beta_response_image_gen_call_completed_event.rb +69 -0
  81. data/lib/openai/models/beta/beta_response_image_gen_call_generating_event.rb +69 -0
  82. data/lib/openai/models/beta/beta_response_image_gen_call_in_progress_event.rb +68 -0
  83. data/lib/openai/models/beta/beta_response_image_gen_call_partial_image_event.rb +89 -0
  84. data/lib/openai/models/beta/beta_response_in_progress_event.rb +63 -0
  85. data/lib/openai/models/beta/beta_response_includable.rb +45 -0
  86. data/lib/openai/models/beta/beta_response_incomplete_event.rb +63 -0
  87. data/lib/openai/models/beta/beta_response_inject_created_event.rb +51 -0
  88. data/lib/openai/models/beta/beta_response_inject_event.rb +40 -0
  89. data/lib/openai/models/beta/beta_response_inject_failed_event.rb +103 -0
  90. data/lib/openai/models/beta/beta_response_input.rb +13 -0
  91. data/lib/openai/models/beta/beta_response_input_audio.rb +70 -0
  92. data/lib/openai/models/beta/beta_response_input_content.rb +28 -0
  93. data/lib/openai/models/beta/beta_response_input_file.rb +113 -0
  94. data/lib/openai/models/beta/beta_response_input_file_content.rb +115 -0
  95. data/lib/openai/models/beta/beta_response_input_image.rb +94 -0
  96. data/lib/openai/models/beta/beta_response_input_image_content.rb +96 -0
  97. data/lib/openai/models/beta/beta_response_input_item.rb +2819 -0
  98. data/lib/openai/models/beta/beta_response_input_message_content_list.rb +14 -0
  99. data/lib/openai/models/beta/beta_response_input_message_item.rb +108 -0
  100. data/lib/openai/models/beta/beta_response_input_text.rb +59 -0
  101. data/lib/openai/models/beta/beta_response_input_text_content.rb +61 -0
  102. data/lib/openai/models/beta/beta_response_item.rb +1438 -0
  103. data/lib/openai/models/beta/beta_response_local_environment.rb +22 -0
  104. data/lib/openai/models/beta/beta_response_mcp_call_arguments_delta_event.rb +81 -0
  105. data/lib/openai/models/beta/beta_response_mcp_call_arguments_done_event.rb +79 -0
  106. data/lib/openai/models/beta/beta_response_mcp_call_completed_event.rb +68 -0
  107. data/lib/openai/models/beta/beta_response_mcp_call_failed_event.rb +68 -0
  108. data/lib/openai/models/beta/beta_response_mcp_call_in_progress_event.rb +68 -0
  109. data/lib/openai/models/beta/beta_response_mcp_list_tools_completed_event.rb +68 -0
  110. data/lib/openai/models/beta/beta_response_mcp_list_tools_failed_event.rb +68 -0
  111. data/lib/openai/models/beta/beta_response_mcp_list_tools_in_progress_event.rb +69 -0
  112. data/lib/openai/models/beta/beta_response_output_audio.rb +41 -0
  113. data/lib/openai/models/beta/beta_response_output_item.rb +1444 -0
  114. data/lib/openai/models/beta/beta_response_output_item_added_event.rb +71 -0
  115. data/lib/openai/models/beta/beta_response_output_item_done_event.rb +71 -0
  116. data/lib/openai/models/beta/beta_response_output_message.rb +139 -0
  117. data/lib/openai/models/beta/beta_response_output_refusal.rb +30 -0
  118. data/lib/openai/models/beta/beta_response_output_text.rb +292 -0
  119. data/lib/openai/models/beta/beta_response_output_text_annotation_added_event.rb +92 -0
  120. data/lib/openai/models/beta/beta_response_prompt.rb +65 -0
  121. data/lib/openai/models/beta/beta_response_queued_event.rb +60 -0
  122. data/lib/openai/models/beta/beta_response_reasoning_item.rb +151 -0
  123. data/lib/openai/models/beta/beta_response_reasoning_summary_part_added_event.rb +110 -0
  124. data/lib/openai/models/beta/beta_response_reasoning_summary_part_done_event.rb +132 -0
  125. data/lib/openai/models/beta/beta_response_reasoning_summary_text_delta_event.rb +88 -0
  126. data/lib/openai/models/beta/beta_response_reasoning_summary_text_done_event.rb +88 -0
  127. data/lib/openai/models/beta/beta_response_reasoning_text_delta_event.rb +87 -0
  128. data/lib/openai/models/beta/beta_response_reasoning_text_done_event.rb +87 -0
  129. data/lib/openai/models/beta/beta_response_refusal_delta_event.rb +87 -0
  130. data/lib/openai/models/beta/beta_response_refusal_done_event.rb +87 -0
  131. data/lib/openai/models/beta/beta_response_status.rb +25 -0
  132. data/lib/openai/models/beta/beta_response_stream_event.rb +203 -0
  133. data/lib/openai/models/beta/beta_response_text_config.rb +67 -0
  134. data/lib/openai/models/beta/beta_response_text_delta_event.rb +150 -0
  135. data/lib/openai/models/beta/beta_response_text_done_event.rb +150 -0
  136. data/lib/openai/models/beta/beta_response_tool_search_call.rb +117 -0
  137. data/lib/openai/models/beta/beta_response_tool_search_output_item.rb +117 -0
  138. data/lib/openai/models/beta/beta_response_tool_search_output_item_param.rb +109 -0
  139. data/lib/openai/models/beta/beta_response_usage.rb +95 -0
  140. data/lib/openai/models/beta/beta_response_web_search_call_completed_event.rb +72 -0
  141. data/lib/openai/models/beta/beta_response_web_search_call_in_progress_event.rb +72 -0
  142. data/lib/openai/models/beta/beta_response_web_search_call_searching_event.rb +72 -0
  143. data/lib/openai/models/beta/beta_responses_client_event.rb +1432 -0
  144. data/lib/openai/models/beta/beta_responses_server_event.rb +212 -0
  145. data/lib/openai/models/beta/beta_skill_reference.rb +36 -0
  146. data/lib/openai/models/beta/beta_tool.rb +910 -0
  147. data/lib/openai/models/beta/beta_tool_choice_allowed.rb +75 -0
  148. data/lib/openai/models/beta/beta_tool_choice_apply_patch.rb +22 -0
  149. data/lib/openai/models/beta/beta_tool_choice_custom.rb +30 -0
  150. data/lib/openai/models/beta/beta_tool_choice_function.rb +30 -0
  151. data/lib/openai/models/beta/beta_tool_choice_mcp.rb +42 -0
  152. data/lib/openai/models/beta/beta_tool_choice_options.rb +28 -0
  153. data/lib/openai/models/beta/beta_tool_choice_shell.rb +22 -0
  154. data/lib/openai/models/beta/beta_tool_choice_types.rb +67 -0
  155. data/lib/openai/models/beta/beta_tool_search_tool.rb +59 -0
  156. data/lib/openai/models/beta/beta_web_search_preview_tool.rb +143 -0
  157. data/lib/openai/models/beta/beta_web_search_tool.rb +162 -0
  158. data/lib/openai/models/beta/response_cancel_params.rb +37 -0
  159. data/lib/openai/models/beta/response_compact_params.rb +549 -0
  160. data/lib/openai/models/beta/response_create_params.rb +1343 -0
  161. data/lib/openai/models/beta/response_delete_params.rb +37 -0
  162. data/lib/openai/models/beta/response_retrieve_params.rb +74 -0
  163. data/lib/openai/models/beta/responses/beta_response_item_list.rb +54 -0
  164. data/lib/openai/models/beta/responses/input_item_list_params.rb +96 -0
  165. data/lib/openai/models/beta/responses/input_token_count_params.rb +542 -0
  166. data/lib/openai/models/beta/responses/input_token_count_response.rb +26 -0
  167. data/lib/openai/models/beta/threads/run_create_params.rb +7 -14
  168. data/lib/openai/models/chat/chat_completion_content_part.rb +31 -1
  169. data/lib/openai/models/chat/chat_completion_content_part_image.rb +31 -1
  170. data/lib/openai/models/chat/chat_completion_content_part_input_audio.rb +31 -1
  171. data/lib/openai/models/chat/chat_completion_content_part_text.rb +31 -1
  172. data/lib/openai/models/chat/completion_create_params.rb +200 -19
  173. data/lib/openai/models/chat_model.rb +3 -0
  174. data/lib/openai/models/completion_usage.rb +9 -1
  175. data/lib/openai/models/conversations/computer_screenshot_content.rb +28 -1
  176. data/lib/openai/models/conversations/conversation_create_params.rb +2 -2
  177. data/lib/openai/models/conversations/conversation_item.rb +106 -3
  178. data/lib/openai/models/conversations/conversation_item_list.rb +2 -2
  179. data/lib/openai/models/conversations/item_create_params.rb +2 -2
  180. data/lib/openai/models/evals/create_eval_completions_run_data_source.rb +7 -14
  181. data/lib/openai/models/evals/run_cancel_response.rb +16 -30
  182. data/lib/openai/models/evals/run_create_params.rb +16 -30
  183. data/lib/openai/models/evals/run_create_response.rb +16 -30
  184. data/lib/openai/models/evals/run_list_response.rb +16 -30
  185. data/lib/openai/models/evals/run_retrieve_response.rb +16 -30
  186. data/lib/openai/models/graders/score_model_grader.rb +7 -14
  187. data/lib/openai/models/realtime/realtime_response_create_mcp_tool.rb +23 -1
  188. data/lib/openai/models/realtime/realtime_session_create_request.rb +6 -0
  189. data/lib/openai/models/realtime/realtime_session_create_response.rb +29 -1
  190. data/lib/openai/models/realtime/realtime_tools_config_union.rb +23 -1
  191. data/lib/openai/models/reasoning.rb +47 -15
  192. data/lib/openai/models/reasoning_effort.rb +7 -13
  193. data/lib/openai/models/responses/apply_patch_tool.rb +23 -1
  194. data/lib/openai/models/responses/compacted_response.rb +2 -2
  195. data/lib/openai/models/responses/custom_tool.rb +21 -1
  196. data/lib/openai/models/responses/function_shell_tool.rb +23 -1
  197. data/lib/openai/models/responses/function_tool.rb +32 -3
  198. data/lib/openai/models/responses/input_token_count_params.rb +21 -8
  199. data/lib/openai/models/responses/namespace_tool.rb +41 -2
  200. data/lib/openai/models/responses/response.rb +98 -14
  201. data/lib/openai/models/responses/response_apply_patch_tool_call.rb +56 -1
  202. data/lib/openai/models/responses/response_apply_patch_tool_call_output.rb +56 -1
  203. data/lib/openai/models/responses/response_compact_params.rb +107 -4
  204. data/lib/openai/models/responses/response_create_params.rb +214 -13
  205. data/lib/openai/models/responses/response_custom_tool_call.rb +56 -1
  206. data/lib/openai/models/responses/response_custom_tool_call_output.rb +58 -1
  207. data/lib/openai/models/responses/response_error.rb +1 -0
  208. data/lib/openai/models/responses/response_function_shell_tool_call.rb +56 -1
  209. data/lib/openai/models/responses/response_function_shell_tool_call_output.rb +56 -1
  210. data/lib/openai/models/responses/response_function_tool_call.rb +56 -1
  211. data/lib/openai/models/responses/response_function_tool_call_output_item.rb +58 -1
  212. data/lib/openai/models/responses/response_input_file.rb +39 -8
  213. data/lib/openai/models/responses/response_input_file_content.rb +41 -8
  214. data/lib/openai/models/responses/response_input_image.rb +27 -1
  215. data/lib/openai/models/responses/response_input_image_content.rb +29 -1
  216. data/lib/openai/models/responses/response_input_item.rb +396 -8
  217. data/lib/openai/models/responses/response_input_text.rb +30 -1
  218. data/lib/openai/models/responses/response_input_text_content.rb +32 -1
  219. data/lib/openai/models/responses/response_item.rb +106 -3
  220. data/lib/openai/models/responses/response_item_list.rb +2 -2
  221. data/lib/openai/models/responses/response_output_item.rb +106 -3
  222. data/lib/openai/models/responses/response_output_item_added_event.rb +2 -2
  223. data/lib/openai/models/responses/response_output_item_done_event.rb +2 -2
  224. data/lib/openai/models/responses/response_reasoning_summary_part_done_event.rb +23 -1
  225. data/lib/openai/models/responses/response_tool_search_output_item.rb +2 -2
  226. data/lib/openai/models/responses/response_tool_search_output_item_param.rb +2 -2
  227. data/lib/openai/models/responses/response_usage.rb +9 -1
  228. data/lib/openai/models/responses/responses_client_event.rb +215 -13
  229. data/lib/openai/models/responses/tool.rb +58 -3
  230. data/lib/openai/models/webhooks/safety_identifier_blocked_webhook_event.rb +118 -0
  231. data/lib/openai/models/webhooks/unwrap_webhook_event.rb +4 -1
  232. data/lib/openai/resources/beta/assistants.rb +2 -2
  233. data/lib/openai/resources/beta/responses/input_items.rb +58 -0
  234. data/lib/openai/resources/beta/responses/input_tokens.rb +73 -0
  235. data/lib/openai/resources/beta/responses.rb +440 -0
  236. data/lib/openai/resources/beta/threads/runs.rb +2 -2
  237. data/lib/openai/resources/beta.rb +4 -0
  238. data/lib/openai/resources/chat/completions.rb +10 -6
  239. data/lib/openai/resources/conversations/items.rb +3 -3
  240. data/lib/openai/resources/conversations.rb +1 -1
  241. data/lib/openai/resources/responses/input_items.rb +1 -1
  242. data/lib/openai/resources/responses/input_tokens.rb +3 -3
  243. data/lib/openai/resources/responses.rb +22 -12
  244. data/lib/openai/resources/webhooks.rb +1 -1
  245. data/lib/openai/version.rb +1 -1
  246. data/lib/openai.rb +163 -0
  247. data/rbi/openai/models/beta/assistant_create_params.rbi +12 -26
  248. data/rbi/openai/models/beta/assistant_update_params.rbi +12 -26
  249. data/rbi/openai/models/beta/beta_apply_patch_tool.rbi +99 -0
  250. data/rbi/openai/models/beta/beta_compacted_response.rbi +120 -0
  251. data/rbi/openai/models/beta/beta_computer_action.rbi +593 -0
  252. data/rbi/openai/models/beta/beta_computer_action_list.rbi +18 -0
  253. data/rbi/openai/models/beta/beta_computer_tool.rbi +33 -0
  254. data/rbi/openai/models/beta/beta_computer_use_preview_tool.rbi +126 -0
  255. data/rbi/openai/models/beta/beta_container_auto.rbi +231 -0
  256. data/rbi/openai/models/beta/beta_container_network_policy_allowlist.rbi +81 -0
  257. data/rbi/openai/models/beta/beta_container_network_policy_disabled.rbi +35 -0
  258. data/rbi/openai/models/beta/beta_container_network_policy_domain_secret.rbi +53 -0
  259. data/rbi/openai/models/beta/beta_container_reference.rbi +42 -0
  260. data/rbi/openai/models/beta/beta_custom_tool.rbi +302 -0
  261. data/rbi/openai/models/beta/beta_easy_input_message.rbi +211 -0
  262. data/rbi/openai/models/beta/beta_file_search_tool.rbi +863 -0
  263. data/rbi/openai/models/beta/beta_function_shell_tool.rbi +155 -0
  264. data/rbi/openai/models/beta/beta_function_tool.rbi +154 -0
  265. data/rbi/openai/models/beta/beta_inline_skill.rbi +68 -0
  266. data/rbi/openai/models/beta/beta_inline_skill_source.rbi +53 -0
  267. data/rbi/openai/models/beta/beta_local_environment.rbi +51 -0
  268. data/rbi/openai/models/beta/beta_local_skill.rbi +49 -0
  269. data/rbi/openai/models/beta/beta_namespace_tool.rbi +252 -0
  270. data/rbi/openai/models/beta/beta_response.rbi +2495 -0
  271. data/rbi/openai/models/beta/beta_response_apply_patch_tool_call.rbi +431 -0
  272. data/rbi/openai/models/beta/beta_response_apply_patch_tool_call_output.rbi +277 -0
  273. data/rbi/openai/models/beta/beta_response_audio_delta_event.rbi +110 -0
  274. data/rbi/openai/models/beta/beta_response_audio_done_event.rbi +100 -0
  275. data/rbi/openai/models/beta/beta_response_audio_transcript_delta_event.rbi +118 -0
  276. data/rbi/openai/models/beta/beta_response_audio_transcript_done_event.rbi +108 -0
  277. data/rbi/openai/models/beta/beta_response_code_interpreter_call_code_delta_event.rbi +136 -0
  278. data/rbi/openai/models/beta/beta_response_code_interpreter_call_code_done_event.rbi +134 -0
  279. data/rbi/openai/models/beta/beta_response_code_interpreter_call_completed_event.rbi +128 -0
  280. data/rbi/openai/models/beta/beta_response_code_interpreter_call_in_progress_event.rbi +128 -0
  281. data/rbi/openai/models/beta/beta_response_code_interpreter_call_interpreting_event.rbi +128 -0
  282. data/rbi/openai/models/beta/beta_response_code_interpreter_tool_call.rbi +315 -0
  283. data/rbi/openai/models/beta/beta_response_compaction_item.rbi +116 -0
  284. data/rbi/openai/models/beta/beta_response_compaction_item_param.rbi +114 -0
  285. data/rbi/openai/models/beta/beta_response_completed_event.rbi +111 -0
  286. data/rbi/openai/models/beta/beta_response_computer_tool_call.rbi +404 -0
  287. data/rbi/openai/models/beta/beta_response_computer_tool_call_output_item.rbi +296 -0
  288. data/rbi/openai/models/beta/beta_response_computer_tool_call_output_screenshot.rbi +62 -0
  289. data/rbi/openai/models/beta/beta_response_container_reference.rbi +41 -0
  290. data/rbi/openai/models/beta/beta_response_content.rbi +66 -0
  291. data/rbi/openai/models/beta/beta_response_content_part_added_event.rbi +205 -0
  292. data/rbi/openai/models/beta/beta_response_content_part_done_event.rbi +203 -0
  293. data/rbi/openai/models/beta/beta_response_conversation_param.rbi +35 -0
  294. data/rbi/openai/models/beta/beta_response_created_event.rbi +109 -0
  295. data/rbi/openai/models/beta/beta_response_custom_tool_call.rbi +242 -0
  296. data/rbi/openai/models/beta/beta_response_custom_tool_call_input_delta_event.rbi +134 -0
  297. data/rbi/openai/models/beta/beta_response_custom_tool_call_input_done_event.rbi +134 -0
  298. data/rbi/openai/models/beta/beta_response_custom_tool_call_item.rbi +113 -0
  299. data/rbi/openai/models/beta/beta_response_custom_tool_call_output.rbi +303 -0
  300. data/rbi/openai/models/beta/beta_response_custom_tool_call_output_item.rbi +114 -0
  301. data/rbi/openai/models/beta/beta_response_error.rbi +165 -0
  302. data/rbi/openai/models/beta/beta_response_error_event.rbi +120 -0
  303. data/rbi/openai/models/beta/beta_response_failed_event.rbi +107 -0
  304. data/rbi/openai/models/beta/beta_response_file_search_call_completed_event.rbi +126 -0
  305. data/rbi/openai/models/beta/beta_response_file_search_call_in_progress_event.rbi +126 -0
  306. data/rbi/openai/models/beta/beta_response_file_search_call_searching_event.rbi +126 -0
  307. data/rbi/openai/models/beta/beta_response_file_search_tool_call.rbi +328 -0
  308. data/rbi/openai/models/beta/beta_response_format_text_config.rbi +97 -0
  309. data/rbi/openai/models/beta/beta_response_format_text_json_schema_config.rbi +97 -0
  310. data/rbi/openai/models/beta/beta_response_function_call_arguments_delta_event.rbi +134 -0
  311. data/rbi/openai/models/beta/beta_response_function_call_arguments_done_event.rbi +140 -0
  312. data/rbi/openai/models/beta/beta_response_function_call_output_item.rbi +32 -0
  313. data/rbi/openai/models/beta/beta_response_function_call_output_item_list.rbi +21 -0
  314. data/rbi/openai/models/beta/beta_response_function_shell_call_output_content.rbi +160 -0
  315. data/rbi/openai/models/beta/beta_response_function_shell_tool_call.rbi +389 -0
  316. data/rbi/openai/models/beta/beta_response_function_shell_tool_call_output.rbi +470 -0
  317. data/rbi/openai/models/beta/beta_response_function_tool_call.rbi +310 -0
  318. data/rbi/openai/models/beta/beta_response_function_tool_call_item.rbi +115 -0
  319. data/rbi/openai/models/beta/beta_response_function_tool_call_output_item.rbi +364 -0
  320. data/rbi/openai/models/beta/beta_response_function_web_search.rbi +416 -0
  321. data/rbi/openai/models/beta/beta_response_image_gen_call_completed_event.rbi +127 -0
  322. data/rbi/openai/models/beta/beta_response_image_gen_call_generating_event.rbi +127 -0
  323. data/rbi/openai/models/beta/beta_response_image_gen_call_in_progress_event.rbi +126 -0
  324. data/rbi/openai/models/beta/beta_response_image_gen_call_partial_image_event.rbi +144 -0
  325. data/rbi/openai/models/beta/beta_response_in_progress_event.rbi +113 -0
  326. data/rbi/openai/models/beta/beta_response_includable.rbi +86 -0
  327. data/rbi/openai/models/beta/beta_response_incomplete_event.rbi +113 -0
  328. data/rbi/openai/models/beta/beta_response_inject_created_event.rbi +75 -0
  329. data/rbi/openai/models/beta/beta_response_inject_event.rbi +183 -0
  330. data/rbi/openai/models/beta/beta_response_inject_failed_event.rbi +304 -0
  331. data/rbi/openai/models/beta/beta_response_input.rbi +18 -0
  332. data/rbi/openai/models/beta/beta_response_input_audio.rbi +144 -0
  333. data/rbi/openai/models/beta/beta_response_input_content.rbi +31 -0
  334. data/rbi/openai/models/beta/beta_response_input_file.rbi +210 -0
  335. data/rbi/openai/models/beta/beta_response_input_file_content.rbi +211 -0
  336. data/rbi/openai/models/beta/beta_response_input_image.rbi +173 -0
  337. data/rbi/openai/models/beta/beta_response_input_image_content.rbi +191 -0
  338. data/rbi/openai/models/beta/beta_response_input_item.rbi +5505 -0
  339. data/rbi/openai/models/beta/beta_response_input_message_content_list.rbi +21 -0
  340. data/rbi/openai/models/beta/beta_response_input_message_item.rbi +235 -0
  341. data/rbi/openai/models/beta/beta_response_input_text.rbi +109 -0
  342. data/rbi/openai/models/beta/beta_response_input_text_content.rbi +115 -0
  343. data/rbi/openai/models/beta/beta_response_item.rbi +2592 -0
  344. data/rbi/openai/models/beta/beta_response_local_environment.rbi +35 -0
  345. data/rbi/openai/models/beta/beta_response_mcp_call_arguments_delta_event.rbi +137 -0
  346. data/rbi/openai/models/beta/beta_response_mcp_call_arguments_done_event.rbi +134 -0
  347. data/rbi/openai/models/beta/beta_response_mcp_call_completed_event.rbi +123 -0
  348. data/rbi/openai/models/beta/beta_response_mcp_call_failed_event.rbi +121 -0
  349. data/rbi/openai/models/beta/beta_response_mcp_call_in_progress_event.rbi +124 -0
  350. data/rbi/openai/models/beta/beta_response_mcp_list_tools_completed_event.rbi +126 -0
  351. data/rbi/openai/models/beta/beta_response_mcp_list_tools_failed_event.rbi +124 -0
  352. data/rbi/openai/models/beta/beta_response_mcp_list_tools_in_progress_event.rbi +127 -0
  353. data/rbi/openai/models/beta/beta_response_output_audio.rbi +53 -0
  354. data/rbi/openai/models/beta/beta_response_output_item.rbi +2627 -0
  355. data/rbi/openai/models/beta/beta_response_output_item_added_event.rbi +154 -0
  356. data/rbi/openai/models/beta/beta_response_output_item_done_event.rbi +154 -0
  357. data/rbi/openai/models/beta/beta_response_output_message.rbi +267 -0
  358. data/rbi/openai/models/beta/beta_response_output_refusal.rbi +41 -0
  359. data/rbi/openai/models/beta/beta_response_output_text.rbi +479 -0
  360. data/rbi/openai/models/beta/beta_response_output_text_annotation_added_event.rbi +150 -0
  361. data/rbi/openai/models/beta/beta_response_prompt.rbi +122 -0
  362. data/rbi/openai/models/beta/beta_response_queued_event.rbi +107 -0
  363. data/rbi/openai/models/beta/beta_response_reasoning_item.rbi +274 -0
  364. data/rbi/openai/models/beta/beta_response_reasoning_summary_part_added_event.rbi +188 -0
  365. data/rbi/openai/models/beta/beta_response_reasoning_summary_part_done_event.rbi +243 -0
  366. data/rbi/openai/models/beta/beta_response_reasoning_summary_text_delta_event.rbi +142 -0
  367. data/rbi/openai/models/beta/beta_response_reasoning_summary_text_done_event.rbi +142 -0
  368. data/rbi/openai/models/beta/beta_response_reasoning_text_delta_event.rbi +140 -0
  369. data/rbi/openai/models/beta/beta_response_reasoning_text_done_event.rbi +140 -0
  370. data/rbi/openai/models/beta/beta_response_refusal_delta_event.rbi +135 -0
  371. data/rbi/openai/models/beta/beta_response_refusal_done_event.rbi +135 -0
  372. data/rbi/openai/models/beta/beta_response_status.rbi +38 -0
  373. data/rbi/openai/models/beta/beta_response_stream_event.rbi +81 -0
  374. data/rbi/openai/models/beta/beta_response_text_config.rbi +166 -0
  375. data/rbi/openai/models/beta/beta_response_text_delta_event.rbi +263 -0
  376. data/rbi/openai/models/beta/beta_response_text_done_event.rbi +261 -0
  377. data/rbi/openai/models/beta/beta_response_tool_search_call.rbi +218 -0
  378. data/rbi/openai/models/beta/beta_response_tool_search_output_item.rbi +248 -0
  379. data/rbi/openai/models/beta/beta_response_tool_search_output_item_param.rbi +307 -0
  380. data/rbi/openai/models/beta/beta_response_usage.rbi +163 -0
  381. data/rbi/openai/models/beta/beta_response_web_search_call_completed_event.rbi +126 -0
  382. data/rbi/openai/models/beta/beta_response_web_search_call_in_progress_event.rbi +126 -0
  383. data/rbi/openai/models/beta/beta_response_web_search_call_searching_event.rbi +126 -0
  384. data/rbi/openai/models/beta/beta_responses_client_event.rbi +2831 -0
  385. data/rbi/openai/models/beta/beta_responses_server_event.rbi +83 -0
  386. data/rbi/openai/models/beta/beta_skill_reference.rbi +52 -0
  387. data/rbi/openai/models/beta/beta_tool.rbi +1835 -0
  388. data/rbi/openai/models/beta/beta_tool_choice_allowed.rbi +126 -0
  389. data/rbi/openai/models/beta/beta_tool_choice_apply_patch.rbi +35 -0
  390. data/rbi/openai/models/beta/beta_tool_choice_custom.rbi +38 -0
  391. data/rbi/openai/models/beta/beta_tool_choice_function.rbi +41 -0
  392. data/rbi/openai/models/beta/beta_tool_choice_mcp.rbi +55 -0
  393. data/rbi/openai/models/beta/beta_tool_choice_options.rbi +38 -0
  394. data/rbi/openai/models/beta/beta_tool_choice_shell.rbi +32 -0
  395. data/rbi/openai/models/beta/beta_tool_choice_types.rbi +134 -0
  396. data/rbi/openai/models/beta/beta_tool_search_tool.rbi +109 -0
  397. data/rbi/openai/models/beta/beta_web_search_preview_tool.rbi +311 -0
  398. data/rbi/openai/models/beta/beta_web_search_tool.rbi +329 -0
  399. data/rbi/openai/models/beta/response_cancel_params.rbi +83 -0
  400. data/rbi/openai/models/beta/response_compact_params.rbi +1033 -0
  401. data/rbi/openai/models/beta/response_create_params.rbi +2739 -0
  402. data/rbi/openai/models/beta/response_delete_params.rbi +83 -0
  403. data/rbi/openai/models/beta/response_retrieve_params.rbi +145 -0
  404. data/rbi/openai/models/beta/responses/beta_response_item_list.rbi +113 -0
  405. data/rbi/openai/models/beta/responses/input_item_list_params.rbi +223 -0
  406. data/rbi/openai/models/beta/responses/input_token_count_params.rbi +1248 -0
  407. data/rbi/openai/models/beta/responses/input_token_count_response.rbi +37 -0
  408. data/rbi/openai/models/beta/threads/run_create_params.rbi +12 -26
  409. data/rbi/openai/models/chat/chat_completion_content_part.rbi +57 -1
  410. data/rbi/openai/models/chat/chat_completion_content_part_image.rbi +57 -1
  411. data/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi +57 -1
  412. data/rbi/openai/models/chat/chat_completion_content_part_text.rbi +70 -2
  413. data/rbi/openai/models/chat/completion_create_params.rbi +513 -32
  414. data/rbi/openai/models/chat_model.rbi +3 -0
  415. data/rbi/openai/models/completion_usage.rbi +21 -4
  416. data/rbi/openai/models/conversations/computer_screenshot_content.rbi +57 -1
  417. data/rbi/openai/models/conversations/conversation_create_params.rbi +9 -3
  418. data/rbi/openai/models/conversations/conversation_item.rbi +178 -0
  419. data/rbi/openai/models/conversations/conversation_item_list.rbi +2 -0
  420. data/rbi/openai/models/conversations/item_create_params.rbi +9 -3
  421. data/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi +12 -26
  422. data/rbi/openai/models/evals/run_cancel_response.rbi +26 -52
  423. data/rbi/openai/models/evals/run_create_params.rbi +28 -52
  424. data/rbi/openai/models/evals/run_create_response.rbi +26 -52
  425. data/rbi/openai/models/evals/run_list_response.rbi +26 -52
  426. data/rbi/openai/models/evals/run_retrieve_response.rbi +26 -52
  427. data/rbi/openai/models/graders/score_model_grader.rbi +12 -26
  428. data/rbi/openai/models/realtime/realtime_response_create_mcp_tool.rbi +60 -0
  429. data/rbi/openai/models/realtime/realtime_session_create_request.rbi +10 -0
  430. data/rbi/openai/models/realtime/realtime_session_create_response.rbi +70 -0
  431. data/rbi/openai/models/realtime/realtime_tools_config_union.rbi +60 -0
  432. data/rbi/openai/models/reasoning.rbi +51 -26
  433. data/rbi/openai/models/reasoning_effort.rbi +7 -13
  434. data/rbi/openai/models/responses/apply_patch_tool.rbi +69 -2
  435. data/rbi/openai/models/responses/compacted_response.rbi +2 -0
  436. data/rbi/openai/models/responses/custom_tool.rbi +53 -0
  437. data/rbi/openai/models/responses/function_shell_tool.rbi +57 -0
  438. data/rbi/openai/models/responses/function_tool.rbi +68 -3
  439. data/rbi/openai/models/responses/input_token_count_params.rbi +32 -0
  440. data/rbi/openai/models/responses/namespace_tool.rbi +76 -0
  441. data/rbi/openai/models/responses/response.rbi +192 -3
  442. data/rbi/openai/models/responses/response_apply_patch_tool_call.rbi +98 -0
  443. data/rbi/openai/models/responses/response_apply_patch_tool_call_output.rbi +98 -0
  444. data/rbi/openai/models/responses/response_compact_params.rbi +231 -0
  445. data/rbi/openai/models/responses/response_create_params.rbi +537 -6
  446. data/rbi/openai/models/responses/response_custom_tool_call.rbi +104 -0
  447. data/rbi/openai/models/responses/response_custom_tool_call_output.rbi +111 -1
  448. data/rbi/openai/models/responses/response_error.rbi +5 -0
  449. data/rbi/openai/models/responses/response_function_shell_tool_call.rbi +98 -0
  450. data/rbi/openai/models/responses/response_function_shell_tool_call_output.rbi +98 -0
  451. data/rbi/openai/models/responses/response_function_tool_call.rbi +104 -0
  452. data/rbi/openai/models/responses/response_function_tool_call_output_item.rbi +104 -0
  453. data/rbi/openai/models/responses/response_input_file.rbi +77 -10
  454. data/rbi/openai/models/responses/response_input_file_content.rbi +83 -10
  455. data/rbi/openai/models/responses/response_input_image.rbi +57 -1
  456. data/rbi/openai/models/responses/response_input_image_content.rbi +63 -1
  457. data/rbi/openai/models/responses/response_input_item.rbi +748 -8
  458. data/rbi/openai/models/responses/response_input_text.rbi +70 -2
  459. data/rbi/openai/models/responses/response_input_text_content.rbi +76 -2
  460. data/rbi/openai/models/responses/response_item.rbi +178 -0
  461. data/rbi/openai/models/responses/response_item_list.rbi +2 -0
  462. data/rbi/openai/models/responses/response_output_item.rbi +178 -0
  463. data/rbi/openai/models/responses/response_output_item_added_event.rbi +2 -0
  464. data/rbi/openai/models/responses/response_output_item_done_event.rbi +2 -0
  465. data/rbi/openai/models/responses/response_reasoning_summary_part_done_event.rbi +58 -1
  466. data/rbi/openai/models/responses/response_tool_search_output_item.rbi +1 -0
  467. data/rbi/openai/models/responses/response_tool_search_output_item_param.rbi +3 -0
  468. data/rbi/openai/models/responses/response_usage.rbi +16 -2
  469. data/rbi/openai/models/responses/responses_client_event.rbi +537 -6
  470. data/rbi/openai/models/responses/tool.rbi +142 -1
  471. data/rbi/openai/models/webhooks/safety_identifier_blocked_webhook_event.rbi +209 -0
  472. data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +2 -1
  473. data/rbi/openai/resources/beta/assistants.rbi +12 -26
  474. data/rbi/openai/resources/beta/responses/input_items.rbi +58 -0
  475. data/rbi/openai/resources/beta/responses/input_tokens.rbi +154 -0
  476. data/rbi/openai/resources/beta/responses.rbi +903 -0
  477. data/rbi/openai/resources/beta/threads/runs.rbi +12 -26
  478. data/rbi/openai/resources/beta.rbi +3 -0
  479. data/rbi/openai/resources/chat/completions.rbi +48 -28
  480. data/rbi/openai/resources/conversations/items.rbi +3 -1
  481. data/rbi/openai/resources/conversations.rbi +3 -1
  482. data/rbi/openai/resources/responses/input_tokens.rbi +2 -0
  483. data/rbi/openai/resources/responses.rbi +54 -2
  484. data/rbi/openai/resources/webhooks.rbi +2 -1
  485. data/sig/openai/client.rbs +1 -1
  486. data/sig/openai/internal/transport/base_client.rbs +2 -2
  487. data/sig/openai/models/beta/beta_apply_patch_tool.rbs +40 -0
  488. data/sig/openai/models/beta/beta_compacted_response.rbs +44 -0
  489. data/sig/openai/models/beta/beta_computer_action.rbs +259 -0
  490. data/sig/openai/models/beta/beta_computer_action_list.rbs +12 -0
  491. data/sig/openai/models/beta/beta_computer_tool.rbs +17 -0
  492. data/sig/openai/models/beta/beta_computer_use_preview_tool.rbs +53 -0
  493. data/sig/openai/models/beta/beta_container_auto.rbs +86 -0
  494. data/sig/openai/models/beta/beta_container_network_policy_allowlist.rbs +38 -0
  495. data/sig/openai/models/beta/beta_container_network_policy_disabled.rbs +17 -0
  496. data/sig/openai/models/beta/beta_container_network_policy_domain_secret.rbs +22 -0
  497. data/sig/openai/models/beta/beta_container_reference.rbs +23 -0
  498. data/sig/openai/models/beta/beta_custom_tool.rbs +126 -0
  499. data/sig/openai/models/beta/beta_easy_input_message.rbs +87 -0
  500. data/sig/openai/models/beta/beta_file_search_tool.rbs +298 -0
  501. data/sig/openai/models/beta/beta_function_shell_tool.rbs +56 -0
  502. data/sig/openai/models/beta/beta_function_tool.rbs +72 -0
  503. data/sig/openai/models/beta/beta_inline_skill.rbs +39 -0
  504. data/sig/openai/models/beta/beta_inline_skill_source.rbs +30 -0
  505. data/sig/openai/models/beta/beta_local_environment.rbs +30 -0
  506. data/sig/openai/models/beta/beta_local_skill.rbs +26 -0
  507. data/sig/openai/models/beta/beta_namespace_tool.rbs +114 -0
  508. data/sig/openai/models/beta/beta_response.rbs +860 -0
  509. data/sig/openai/models/beta/beta_response_apply_patch_tool_call.rbs +177 -0
  510. data/sig/openai/models/beta/beta_response_apply_patch_tool_call_output.rbs +118 -0
  511. data/sig/openai/models/beta/beta_response_audio_delta_event.rbs +49 -0
  512. data/sig/openai/models/beta/beta_response_audio_done_event.rbs +44 -0
  513. data/sig/openai/models/beta/beta_response_audio_transcript_delta_event.rbs +49 -0
  514. data/sig/openai/models/beta/beta_response_audio_transcript_done_event.rbs +44 -0
  515. data/sig/openai/models/beta/beta_response_code_interpreter_call_code_delta_event.rbs +59 -0
  516. data/sig/openai/models/beta/beta_response_code_interpreter_call_code_done_event.rbs +59 -0
  517. data/sig/openai/models/beta/beta_response_code_interpreter_call_completed_event.rbs +54 -0
  518. data/sig/openai/models/beta/beta_response_code_interpreter_call_in_progress_event.rbs +54 -0
  519. data/sig/openai/models/beta/beta_response_code_interpreter_call_interpreting_event.rbs +54 -0
  520. data/sig/openai/models/beta/beta_response_code_interpreter_tool_call.rbs +113 -0
  521. data/sig/openai/models/beta/beta_response_compaction_item.rbs +60 -0
  522. data/sig/openai/models/beta/beta_response_compaction_item_param.rbs +49 -0
  523. data/sig/openai/models/beta/beta_response_completed_event.rbs +49 -0
  524. data/sig/openai/models/beta/beta_response_computer_tool_call.rbs +118 -0
  525. data/sig/openai/models/beta/beta_response_computer_tool_call_output_item.rbs +107 -0
  526. data/sig/openai/models/beta/beta_response_computer_tool_call_output_screenshot.rbs +34 -0
  527. data/sig/openai/models/beta/beta_response_container_reference.rbs +23 -0
  528. data/sig/openai/models/beta/beta_response_content.rbs +33 -0
  529. data/sig/openai/models/beta/beta_response_content_part_added_event.rbs +87 -0
  530. data/sig/openai/models/beta/beta_response_content_part_done_event.rbs +87 -0
  531. data/sig/openai/models/beta/beta_response_conversation_param.rbs +17 -0
  532. data/sig/openai/models/beta/beta_response_created_event.rbs +49 -0
  533. data/sig/openai/models/beta/beta_response_custom_tool_call.rbs +105 -0
  534. data/sig/openai/models/beta/beta_response_custom_tool_call_input_delta_event.rbs +59 -0
  535. data/sig/openai/models/beta/beta_response_custom_tool_call_input_done_event.rbs +59 -0
  536. data/sig/openai/models/beta/beta_response_custom_tool_call_item.rbs +54 -0
  537. data/sig/openai/models/beta/beta_response_custom_tool_call_output.rbs +116 -0
  538. data/sig/openai/models/beta/beta_response_custom_tool_call_output_item.rbs +54 -0
  539. data/sig/openai/models/beta/beta_response_error.rbs +73 -0
  540. data/sig/openai/models/beta/beta_response_error_event.rbs +59 -0
  541. data/sig/openai/models/beta/beta_response_failed_event.rbs +49 -0
  542. data/sig/openai/models/beta/beta_response_file_search_call_completed_event.rbs +54 -0
  543. data/sig/openai/models/beta/beta_response_file_search_call_in_progress_event.rbs +54 -0
  544. data/sig/openai/models/beta/beta_response_file_search_call_searching_event.rbs +54 -0
  545. data/sig/openai/models/beta/beta_response_file_search_tool_call.rbs +127 -0
  546. data/sig/openai/models/beta/beta_response_format_text_config.rbs +38 -0
  547. data/sig/openai/models/beta/beta_response_format_text_json_schema_config.rbs +46 -0
  548. data/sig/openai/models/beta/beta_response_function_call_arguments_delta_event.rbs +59 -0
  549. data/sig/openai/models/beta/beta_response_function_call_arguments_done_event.rbs +64 -0
  550. data/sig/openai/models/beta/beta_response_function_call_output_item.rbs +18 -0
  551. data/sig/openai/models/beta/beta_response_function_call_output_item_list.rbs +12 -0
  552. data/sig/openai/models/beta/beta_response_function_shell_call_output_content.rbs +66 -0
  553. data/sig/openai/models/beta/beta_response_function_shell_tool_call.rbs +161 -0
  554. data/sig/openai/models/beta/beta_response_function_shell_tool_call_output.rbs +190 -0
  555. data/sig/openai/models/beta/beta_response_function_tool_call.rbs +126 -0
  556. data/sig/openai/models/beta/beta_response_function_tool_call_item.rbs +54 -0
  557. data/sig/openai/models/beta/beta_response_function_tool_call_output_item.rbs +138 -0
  558. data/sig/openai/models/beta/beta_response_function_web_search.rbs +165 -0
  559. data/sig/openai/models/beta/beta_response_image_gen_call_completed_event.rbs +54 -0
  560. data/sig/openai/models/beta/beta_response_image_gen_call_generating_event.rbs +54 -0
  561. data/sig/openai/models/beta/beta_response_image_gen_call_in_progress_event.rbs +54 -0
  562. data/sig/openai/models/beta/beta_response_image_gen_call_partial_image_event.rbs +64 -0
  563. data/sig/openai/models/beta/beta_response_in_progress_event.rbs +49 -0
  564. data/sig/openai/models/beta/beta_response_includable.rbs +32 -0
  565. data/sig/openai/models/beta/beta_response_incomplete_event.rbs +49 -0
  566. data/sig/openai/models/beta/beta_response_inject_created_event.rbs +41 -0
  567. data/sig/openai/models/beta/beta_response_inject_event.rbs +34 -0
  568. data/sig/openai/models/beta/beta_response_inject_failed_event.rbs +84 -0
  569. data/sig/openai/models/beta/beta_response_input.rbs +12 -0
  570. data/sig/openai/models/beta/beta_response_input_audio.rbs +62 -0
  571. data/sig/openai/models/beta/beta_response_input_content.rbs +18 -0
  572. data/sig/openai/models/beta/beta_response_input_file.rbs +90 -0
  573. data/sig/openai/models/beta/beta_response_input_file_content.rbs +80 -0
  574. data/sig/openai/models/beta/beta_response_input_image.rbs +71 -0
  575. data/sig/openai/models/beta/beta_response_input_image_content.rbs +67 -0
  576. data/sig/openai/models/beta/beta_response_input_item.rbs +2064 -0
  577. data/sig/openai/models/beta/beta_response_input_message_content_list.rbs +12 -0
  578. data/sig/openai/models/beta/beta_response_input_message_item.rbs +87 -0
  579. data/sig/openai/models/beta/beta_response_input_text.rbs +48 -0
  580. data/sig/openai/models/beta/beta_response_input_text_content.rbs +44 -0
  581. data/sig/openai/models/beta/beta_response_item.rbs +1097 -0
  582. data/sig/openai/models/beta/beta_response_local_environment.rbs +17 -0
  583. data/sig/openai/models/beta/beta_response_mcp_call_arguments_delta_event.rbs +59 -0
  584. data/sig/openai/models/beta/beta_response_mcp_call_arguments_done_event.rbs +59 -0
  585. data/sig/openai/models/beta/beta_response_mcp_call_completed_event.rbs +54 -0
  586. data/sig/openai/models/beta/beta_response_mcp_call_failed_event.rbs +54 -0
  587. data/sig/openai/models/beta/beta_response_mcp_call_in_progress_event.rbs +54 -0
  588. data/sig/openai/models/beta/beta_response_mcp_list_tools_completed_event.rbs +54 -0
  589. data/sig/openai/models/beta/beta_response_mcp_list_tools_failed_event.rbs +54 -0
  590. data/sig/openai/models/beta/beta_response_mcp_list_tools_in_progress_event.rbs +54 -0
  591. data/sig/openai/models/beta/beta_response_output_audio.rbs +30 -0
  592. data/sig/openai/models/beta/beta_response_output_item.rbs +1096 -0
  593. data/sig/openai/models/beta/beta_response_output_item_added_event.rbs +54 -0
  594. data/sig/openai/models/beta/beta_response_output_item_done_event.rbs +54 -0
  595. data/sig/openai/models/beta/beta_response_output_message.rbs +97 -0
  596. data/sig/openai/models/beta/beta_response_output_refusal.rbs +19 -0
  597. data/sig/openai/models/beta/beta_response_output_text.rbs +243 -0
  598. data/sig/openai/models/beta/beta_response_output_text_annotation_added_event.rbs +69 -0
  599. data/sig/openai/models/beta/beta_response_prompt.rbs +46 -0
  600. data/sig/openai/models/beta/beta_response_queued_event.rbs +49 -0
  601. data/sig/openai/models/beta/beta_response_reasoning_item.rbs +108 -0
  602. data/sig/openai/models/beta/beta_response_reasoning_summary_part_added_event.rbs +76 -0
  603. data/sig/openai/models/beta/beta_response_reasoning_summary_part_done_event.rbs +95 -0
  604. data/sig/openai/models/beta/beta_response_reasoning_summary_text_delta_event.rbs +64 -0
  605. data/sig/openai/models/beta/beta_response_reasoning_summary_text_done_event.rbs +64 -0
  606. data/sig/openai/models/beta/beta_response_reasoning_text_delta_event.rbs +64 -0
  607. data/sig/openai/models/beta/beta_response_reasoning_text_done_event.rbs +64 -0
  608. data/sig/openai/models/beta/beta_response_refusal_delta_event.rbs +64 -0
  609. data/sig/openai/models/beta/beta_response_refusal_done_event.rbs +64 -0
  610. data/sig/openai/models/beta/beta_response_status.rbs +23 -0
  611. data/sig/openai/models/beta/beta_response_stream_event.rbs +68 -0
  612. data/sig/openai/models/beta/beta_response_text_config.rbs +45 -0
  613. data/sig/openai/models/beta/beta_response_text_delta_event.rbs +116 -0
  614. data/sig/openai/models/beta/beta_response_text_done_event.rbs +116 -0
  615. data/sig/openai/models/beta/beta_response_tool_search_call.rbs +98 -0
  616. data/sig/openai/models/beta/beta_response_tool_search_output_item.rbs +98 -0
  617. data/sig/openai/models/beta/beta_response_tool_search_output_item_param.rbs +91 -0
  618. data/sig/openai/models/beta/beta_response_usage.rbs +73 -0
  619. data/sig/openai/models/beta/beta_response_web_search_call_completed_event.rbs +54 -0
  620. data/sig/openai/models/beta/beta_response_web_search_call_in_progress_event.rbs +54 -0
  621. data/sig/openai/models/beta/beta_response_web_search_call_searching_event.rbs +54 -0
  622. data/sig/openai/models/beta/beta_responses_client_event.rbs +804 -0
  623. data/sig/openai/models/beta/beta_responses_server_event.rbs +70 -0
  624. data/sig/openai/models/beta/beta_skill_reference.rbs +32 -0
  625. data/sig/openai/models/beta/beta_tool.rbs +634 -0
  626. data/sig/openai/models/beta/beta_tool_choice_allowed.rbs +45 -0
  627. data/sig/openai/models/beta/beta_tool_choice_apply_patch.rbs +17 -0
  628. data/sig/openai/models/beta/beta_tool_choice_custom.rbs +19 -0
  629. data/sig/openai/models/beta/beta_tool_choice_function.rbs +19 -0
  630. data/sig/openai/models/beta/beta_tool_choice_mcp.rbs +26 -0
  631. data/sig/openai/models/beta/beta_tool_choice_options.rbs +19 -0
  632. data/sig/openai/models/beta/beta_tool_choice_shell.rbs +17 -0
  633. data/sig/openai/models/beta/beta_tool_choice_types.rbs +47 -0
  634. data/sig/openai/models/beta/beta_tool_search_tool.rbs +54 -0
  635. data/sig/openai/models/beta/beta_web_search_preview_tool.rbs +118 -0
  636. data/sig/openai/models/beta/beta_web_search_tool.rbs +127 -0
  637. data/sig/openai/models/beta/response_cancel_params.rbs +47 -0
  638. data/sig/openai/models/beta/response_compact_params.rbs +368 -0
  639. data/sig/openai/models/beta/response_create_params.rbs +804 -0
  640. data/sig/openai/models/beta/response_delete_params.rbs +47 -0
  641. data/sig/openai/models/beta/response_retrieve_params.rbs +70 -0
  642. data/sig/openai/models/beta/responses/beta_response_item_list.rbs +44 -0
  643. data/sig/openai/models/beta/responses/input_item_list_params.rbs +92 -0
  644. data/sig/openai/models/beta/responses/input_token_count_params.rbs +325 -0
  645. data/sig/openai/models/beta/responses/input_token_count_response.rbs +26 -0
  646. data/sig/openai/models/chat/chat_completion_content_part.rbs +21 -2
  647. data/sig/openai/models/chat/chat_completion_content_part_image.rbs +21 -2
  648. data/sig/openai/models/chat/chat_completion_content_part_input_audio.rbs +21 -2
  649. data/sig/openai/models/chat/chat_completion_content_part_text.rbs +32 -3
  650. data/sig/openai/models/chat/completion_create_params.rbs +153 -3
  651. data/sig/openai/models/chat_model.rbs +7 -1
  652. data/sig/openai/models/completion_usage.rbs +15 -2
  653. data/sig/openai/models/conversations/computer_screenshot_content.rbs +21 -2
  654. data/sig/openai/models/conversations/conversation_item.rbs +87 -0
  655. data/sig/openai/models/realtime/realtime_response_create_mcp_tool.rbs +16 -0
  656. data/sig/openai/models/realtime/realtime_session_create_request.rbs +4 -0
  657. data/sig/openai/models/realtime/realtime_session_create_response.rbs +20 -0
  658. data/sig/openai/models/realtime/realtime_tools_config_union.rbs +16 -0
  659. data/sig/openai/models/reasoning.rbs +20 -0
  660. data/sig/openai/models/reasoning_effort.rbs +3 -1
  661. data/sig/openai/models/responses/apply_patch_tool.rbs +26 -3
  662. data/sig/openai/models/responses/custom_tool.rbs +16 -0
  663. data/sig/openai/models/responses/function_shell_tool.rbs +16 -0
  664. data/sig/openai/models/responses/function_tool.rbs +23 -2
  665. data/sig/openai/models/responses/input_token_count_params.rbs +12 -0
  666. data/sig/openai/models/responses/namespace_tool.rbs +21 -0
  667. data/sig/openai/models/responses/response.rbs +64 -0
  668. data/sig/openai/models/responses/response_apply_patch_tool_call.rbs +37 -0
  669. data/sig/openai/models/responses/response_apply_patch_tool_call_output.rbs +37 -0
  670. data/sig/openai/models/responses/response_compact_params.rbs +63 -1
  671. data/sig/openai/models/responses/response_create_params.rbs +165 -3
  672. data/sig/openai/models/responses/response_custom_tool_call.rbs +37 -0
  673. data/sig/openai/models/responses/response_custom_tool_call_output.rbs +39 -2
  674. data/sig/openai/models/responses/response_error.rbs +2 -0
  675. data/sig/openai/models/responses/response_function_shell_tool_call.rbs +37 -0
  676. data/sig/openai/models/responses/response_function_shell_tool_call_output.rbs +37 -0
  677. data/sig/openai/models/responses/response_function_tool_call.rbs +37 -0
  678. data/sig/openai/models/responses/response_function_tool_call_output_item.rbs +37 -0
  679. data/sig/openai/models/responses/response_input_file.rbs +23 -3
  680. data/sig/openai/models/responses/response_input_file_content.rbs +19 -3
  681. data/sig/openai/models/responses/response_input_image.rbs +21 -2
  682. data/sig/openai/models/responses/response_input_image_content.rbs +17 -2
  683. data/sig/openai/models/responses/response_input_item.rbs +274 -2
  684. data/sig/openai/models/responses/response_input_text.rbs +32 -3
  685. data/sig/openai/models/responses/response_input_text_content.rbs +28 -3
  686. data/sig/openai/models/responses/response_item.rbs +87 -0
  687. data/sig/openai/models/responses/response_output_item.rbs +87 -0
  688. data/sig/openai/models/responses/response_reasoning_summary_part_done_event.rbs +21 -2
  689. data/sig/openai/models/responses/response_usage.rbs +12 -3
  690. data/sig/openai/models/responses/responses_client_event.rbs +165 -3
  691. data/sig/openai/models/responses/tool.rbs +45 -2
  692. data/sig/openai/models/webhooks/safety_identifier_blocked_webhook_event.rbs +99 -0
  693. data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +1 -0
  694. data/sig/openai/resources/beta/responses/input_items.rbs +21 -0
  695. data/sig/openai/resources/beta/responses/input_tokens.rbs +28 -0
  696. data/sig/openai/resources/beta/responses.rbs +128 -0
  697. data/sig/openai/resources/beta.rbs +2 -0
  698. data/sig/openai/resources/chat/completions.rbs +2 -0
  699. data/sig/openai/resources/responses.rbs +3 -0
  700. data/sig/openai/resources/webhooks.rbs +2 -1
  701. metadata +491 -2
@@ -204,11 +204,42 @@ module OpenAI
204
204
  sig { params(prompt_cache_key: String).void }
205
205
  attr_writer :prompt_cache_key
206
206
 
207
+ # Options for prompt caching. Supported for `gpt-5.6` and later models. By
208
+ # default, OpenAI automatically chooses one implicit cache breakpoint. You can add
209
+ # explicit breakpoints to content blocks with `prompt_cache_breakpoint`. Each
210
+ # request can write up to four breakpoints. For cache matching, OpenAI considers
211
+ # up to the latest 80 breakpoints in the conversation, without a content-block
212
+ # lookback limit. Set `mode` to `explicit` to disable the implicit breakpoint. The
213
+ # `ttl` defaults to `30m`, which is currently the only supported value. See the
214
+ # [prompt caching guide](https://platform.openai.com/docs/guides/prompt-caching)
215
+ # for current details.
216
+ sig do
217
+ returns(
218
+ T.nilable(
219
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions
220
+ )
221
+ )
222
+ end
223
+ attr_reader :prompt_cache_options
224
+
225
+ sig do
226
+ params(
227
+ prompt_cache_options:
228
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions::OrHash
229
+ ).void
230
+ end
231
+ attr_writer :prompt_cache_options
232
+
233
+ # Deprecated. Use `prompt_cache_options.ttl` instead.
234
+ #
207
235
  # The retention policy for the prompt cache. Set to `24h` to enable extended
208
236
  # prompt caching, which keeps cached prefixes active for longer, up to a maximum
209
237
  # of 24 hours.
210
238
  # [Learn more](https://platform.openai.com/docs/guides/prompt-caching#prompt-cache-retention).
211
- # For `gpt-5.5`, `gpt-5.5-pro`, and future models, only `24h` is supported.
239
+ # This field expresses a maximum retention policy, while
240
+ # `prompt_cache_options.ttl` expresses a minimum cache lifetime. The two fields
241
+ # are independent and do not interact. For `gpt-5.5`, `gpt-5.5-pro`, and future
242
+ # models, only `24h` is supported.
212
243
  #
213
244
  # For older models that support both `in_memory` and `24h`, the default depends on
214
245
  # your organization's data retention policy:
@@ -334,6 +365,7 @@ module OpenAI
334
365
  OpenAI::Responses::ToolChoiceFunction,
335
366
  OpenAI::Responses::ToolChoiceMcp,
336
367
  OpenAI::Responses::ToolChoiceCustom,
368
+ OpenAI::Responses::ResponsesClientEvent::ToolChoice::SpecificProgrammaticToolCallingParam,
337
369
  OpenAI::Responses::ToolChoiceApplyPatch,
338
370
  OpenAI::Responses::ToolChoiceShell
339
371
  )
@@ -352,6 +384,7 @@ module OpenAI
352
384
  OpenAI::Responses::ToolChoiceFunction::OrHash,
353
385
  OpenAI::Responses::ToolChoiceMcp::OrHash,
354
386
  OpenAI::Responses::ToolChoiceCustom::OrHash,
387
+ OpenAI::Responses::ResponsesClientEvent::ToolChoice::SpecificProgrammaticToolCallingParam::OrHash,
355
388
  OpenAI::Responses::ToolChoiceApplyPatch::OrHash,
356
389
  OpenAI::Responses::ToolChoiceShell::OrHash
357
390
  )
@@ -389,6 +422,7 @@ module OpenAI
389
422
  OpenAI::Responses::ComputerUsePreviewTool,
390
423
  OpenAI::Responses::Tool::Mcp,
391
424
  OpenAI::Responses::Tool::CodeInterpreter,
425
+ OpenAI::Responses::Tool::ProgrammaticToolCalling,
392
426
  OpenAI::Responses::Tool::ImageGeneration,
393
427
  OpenAI::Responses::Tool::LocalShell,
394
428
  OpenAI::Responses::FunctionShellTool,
@@ -416,6 +450,7 @@ module OpenAI
416
450
  OpenAI::Responses::ComputerUsePreviewTool::OrHash,
417
451
  OpenAI::Responses::Tool::Mcp::OrHash,
418
452
  OpenAI::Responses::Tool::CodeInterpreter::OrHash,
453
+ OpenAI::Responses::Tool::ProgrammaticToolCalling::OrHash,
419
454
  OpenAI::Responses::Tool::ImageGeneration::OrHash,
420
455
  OpenAI::Responses::Tool::LocalShell::OrHash,
421
456
  OpenAI::Responses::FunctionShellTool::OrHash,
@@ -511,6 +546,8 @@ module OpenAI
511
546
  previous_response_id: T.nilable(String),
512
547
  prompt: T.nilable(OpenAI::Responses::ResponsePrompt::OrHash),
513
548
  prompt_cache_key: String,
549
+ prompt_cache_options:
550
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions::OrHash,
514
551
  prompt_cache_retention:
515
552
  T.nilable(
516
553
  OpenAI::Responses::ResponsesClientEvent::PromptCacheRetention::OrSymbol
@@ -537,6 +574,7 @@ module OpenAI
537
574
  OpenAI::Responses::ToolChoiceFunction::OrHash,
538
575
  OpenAI::Responses::ToolChoiceMcp::OrHash,
539
576
  OpenAI::Responses::ToolChoiceCustom::OrHash,
577
+ OpenAI::Responses::ResponsesClientEvent::ToolChoice::SpecificProgrammaticToolCallingParam::OrHash,
540
578
  OpenAI::Responses::ToolChoiceApplyPatch::OrHash,
541
579
  OpenAI::Responses::ToolChoiceShell::OrHash
542
580
  ),
@@ -549,6 +587,7 @@ module OpenAI
549
587
  OpenAI::Responses::ComputerUsePreviewTool::OrHash,
550
588
  OpenAI::Responses::Tool::Mcp::OrHash,
551
589
  OpenAI::Responses::Tool::CodeInterpreter::OrHash,
590
+ OpenAI::Responses::Tool::ProgrammaticToolCalling::OrHash,
552
591
  OpenAI::Responses::Tool::ImageGeneration::OrHash,
553
592
  OpenAI::Responses::Tool::LocalShell::OrHash,
554
593
  OpenAI::Responses::FunctionShellTool::OrHash,
@@ -654,11 +693,26 @@ module OpenAI
654
693
  # hit rates. Replaces the `user` field.
655
694
  # [Learn more](https://platform.openai.com/docs/guides/prompt-caching).
656
695
  prompt_cache_key: nil,
696
+ # Options for prompt caching. Supported for `gpt-5.6` and later models. By
697
+ # default, OpenAI automatically chooses one implicit cache breakpoint. You can add
698
+ # explicit breakpoints to content blocks with `prompt_cache_breakpoint`. Each
699
+ # request can write up to four breakpoints. For cache matching, OpenAI considers
700
+ # up to the latest 80 breakpoints in the conversation, without a content-block
701
+ # lookback limit. Set `mode` to `explicit` to disable the implicit breakpoint. The
702
+ # `ttl` defaults to `30m`, which is currently the only supported value. See the
703
+ # [prompt caching guide](https://platform.openai.com/docs/guides/prompt-caching)
704
+ # for current details.
705
+ prompt_cache_options: nil,
706
+ # Deprecated. Use `prompt_cache_options.ttl` instead.
707
+ #
657
708
  # The retention policy for the prompt cache. Set to `24h` to enable extended
658
709
  # prompt caching, which keeps cached prefixes active for longer, up to a maximum
659
710
  # of 24 hours.
660
711
  # [Learn more](https://platform.openai.com/docs/guides/prompt-caching#prompt-cache-retention).
661
- # For `gpt-5.5`, `gpt-5.5-pro`, and future models, only `24h` is supported.
712
+ # This field expresses a maximum retention policy, while
713
+ # `prompt_cache_options.ttl` expresses a minimum cache lifetime. The two fields
714
+ # are independent and do not interact. For `gpt-5.5`, `gpt-5.5-pro`, and future
715
+ # models, only `24h` is supported.
662
716
  #
663
717
  # For older models that support both `in_memory` and `24h`, the default depends on
664
718
  # your organization's data retention policy:
@@ -807,6 +861,8 @@ module OpenAI
807
861
  previous_response_id: T.nilable(String),
808
862
  prompt: T.nilable(OpenAI::Responses::ResponsePrompt),
809
863
  prompt_cache_key: String,
864
+ prompt_cache_options:
865
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions,
810
866
  prompt_cache_retention:
811
867
  T.nilable(
812
868
  OpenAI::Responses::ResponsesClientEvent::PromptCacheRetention::OrSymbol
@@ -833,6 +889,7 @@ module OpenAI
833
889
  OpenAI::Responses::ToolChoiceFunction,
834
890
  OpenAI::Responses::ToolChoiceMcp,
835
891
  OpenAI::Responses::ToolChoiceCustom,
892
+ OpenAI::Responses::ResponsesClientEvent::ToolChoice::SpecificProgrammaticToolCallingParam,
836
893
  OpenAI::Responses::ToolChoiceApplyPatch,
837
894
  OpenAI::Responses::ToolChoiceShell
838
895
  ),
@@ -845,6 +902,7 @@ module OpenAI
845
902
  OpenAI::Responses::ComputerUsePreviewTool,
846
903
  OpenAI::Responses::Tool::Mcp,
847
904
  OpenAI::Responses::Tool::CodeInterpreter,
905
+ OpenAI::Responses::Tool::ProgrammaticToolCalling,
848
906
  OpenAI::Responses::Tool::ImageGeneration,
849
907
  OpenAI::Responses::Tool::LocalShell,
850
908
  OpenAI::Responses::FunctionShellTool,
@@ -974,25 +1032,472 @@ module OpenAI
974
1032
  sig { returns(String) }
975
1033
  attr_accessor :model
976
1034
 
1035
+ # The policy to apply to moderated response input and output.
1036
+ sig do
1037
+ returns(
1038
+ T.nilable(
1039
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy
1040
+ )
1041
+ )
1042
+ end
1043
+ attr_reader :policy
1044
+
1045
+ sig do
1046
+ params(
1047
+ policy:
1048
+ T.nilable(
1049
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::OrHash
1050
+ )
1051
+ ).void
1052
+ end
1053
+ attr_writer :policy
1054
+
977
1055
  # Configuration for running moderation on the input and output of this response.
978
- sig { params(model: String).returns(T.attached_class) }
1056
+ sig do
1057
+ params(
1058
+ model: String,
1059
+ policy:
1060
+ T.nilable(
1061
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::OrHash
1062
+ )
1063
+ ).returns(T.attached_class)
1064
+ end
979
1065
  def self.new(
980
1066
  # The moderation model to use for moderated completions, e.g.
981
1067
  # 'omni-moderation-latest'.
982
- model:
1068
+ model:,
1069
+ # The policy to apply to moderated response input and output.
1070
+ policy: nil
983
1071
  )
984
1072
  end
985
1073
 
986
- sig { override.returns({ model: String }) }
1074
+ sig do
1075
+ override.returns(
1076
+ {
1077
+ model: String,
1078
+ policy:
1079
+ T.nilable(
1080
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy
1081
+ )
1082
+ }
1083
+ )
1084
+ end
987
1085
  def to_hash
988
1086
  end
1087
+
1088
+ class Policy < OpenAI::Internal::Type::BaseModel
1089
+ OrHash =
1090
+ T.type_alias do
1091
+ T.any(
1092
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy,
1093
+ OpenAI::Internal::AnyHash
1094
+ )
1095
+ end
1096
+
1097
+ # The moderation policy for the response input.
1098
+ sig do
1099
+ returns(
1100
+ T.nilable(
1101
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Input
1102
+ )
1103
+ )
1104
+ end
1105
+ attr_reader :input
1106
+
1107
+ sig do
1108
+ params(
1109
+ input:
1110
+ T.nilable(
1111
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Input::OrHash
1112
+ )
1113
+ ).void
1114
+ end
1115
+ attr_writer :input
1116
+
1117
+ # The moderation policy for the response output.
1118
+ sig do
1119
+ returns(
1120
+ T.nilable(
1121
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Output
1122
+ )
1123
+ )
1124
+ end
1125
+ attr_reader :output
1126
+
1127
+ sig do
1128
+ params(
1129
+ output:
1130
+ T.nilable(
1131
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Output::OrHash
1132
+ )
1133
+ ).void
1134
+ end
1135
+ attr_writer :output
1136
+
1137
+ # The policy to apply to moderated response input and output.
1138
+ sig do
1139
+ params(
1140
+ input:
1141
+ T.nilable(
1142
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Input::OrHash
1143
+ ),
1144
+ output:
1145
+ T.nilable(
1146
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Output::OrHash
1147
+ )
1148
+ ).returns(T.attached_class)
1149
+ end
1150
+ def self.new(
1151
+ # The moderation policy for the response input.
1152
+ input: nil,
1153
+ # The moderation policy for the response output.
1154
+ output: nil
1155
+ )
1156
+ end
1157
+
1158
+ sig do
1159
+ override.returns(
1160
+ {
1161
+ input:
1162
+ T.nilable(
1163
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Input
1164
+ ),
1165
+ output:
1166
+ T.nilable(
1167
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Output
1168
+ )
1169
+ }
1170
+ )
1171
+ end
1172
+ def to_hash
1173
+ end
1174
+
1175
+ class Input < OpenAI::Internal::Type::BaseModel
1176
+ OrHash =
1177
+ T.type_alias do
1178
+ T.any(
1179
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Input,
1180
+ OpenAI::Internal::AnyHash
1181
+ )
1182
+ end
1183
+
1184
+ sig do
1185
+ returns(
1186
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Input::Mode::OrSymbol
1187
+ )
1188
+ end
1189
+ attr_accessor :mode
1190
+
1191
+ # The moderation policy for the response input.
1192
+ sig do
1193
+ params(
1194
+ mode:
1195
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Input::Mode::OrSymbol
1196
+ ).returns(T.attached_class)
1197
+ end
1198
+ def self.new(mode:)
1199
+ end
1200
+
1201
+ sig do
1202
+ override.returns(
1203
+ {
1204
+ mode:
1205
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Input::Mode::OrSymbol
1206
+ }
1207
+ )
1208
+ end
1209
+ def to_hash
1210
+ end
1211
+
1212
+ module Mode
1213
+ extend OpenAI::Internal::Type::Enum
1214
+
1215
+ TaggedSymbol =
1216
+ T.type_alias do
1217
+ T.all(
1218
+ Symbol,
1219
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Input::Mode
1220
+ )
1221
+ end
1222
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1223
+
1224
+ SCORE =
1225
+ T.let(
1226
+ :score,
1227
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Input::Mode::TaggedSymbol
1228
+ )
1229
+ BLOCK =
1230
+ T.let(
1231
+ :block,
1232
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Input::Mode::TaggedSymbol
1233
+ )
1234
+
1235
+ sig do
1236
+ override.returns(
1237
+ T::Array[
1238
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Input::Mode::TaggedSymbol
1239
+ ]
1240
+ )
1241
+ end
1242
+ def self.values
1243
+ end
1244
+ end
1245
+ end
1246
+
1247
+ class Output < OpenAI::Internal::Type::BaseModel
1248
+ OrHash =
1249
+ T.type_alias do
1250
+ T.any(
1251
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Output,
1252
+ OpenAI::Internal::AnyHash
1253
+ )
1254
+ end
1255
+
1256
+ sig do
1257
+ returns(
1258
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Output::Mode::OrSymbol
1259
+ )
1260
+ end
1261
+ attr_accessor :mode
1262
+
1263
+ # The moderation policy for the response output.
1264
+ sig do
1265
+ params(
1266
+ mode:
1267
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Output::Mode::OrSymbol
1268
+ ).returns(T.attached_class)
1269
+ end
1270
+ def self.new(mode:)
1271
+ end
1272
+
1273
+ sig do
1274
+ override.returns(
1275
+ {
1276
+ mode:
1277
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Output::Mode::OrSymbol
1278
+ }
1279
+ )
1280
+ end
1281
+ def to_hash
1282
+ end
1283
+
1284
+ module Mode
1285
+ extend OpenAI::Internal::Type::Enum
1286
+
1287
+ TaggedSymbol =
1288
+ T.type_alias do
1289
+ T.all(
1290
+ Symbol,
1291
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Output::Mode
1292
+ )
1293
+ end
1294
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1295
+
1296
+ SCORE =
1297
+ T.let(
1298
+ :score,
1299
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Output::Mode::TaggedSymbol
1300
+ )
1301
+ BLOCK =
1302
+ T.let(
1303
+ :block,
1304
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Output::Mode::TaggedSymbol
1305
+ )
1306
+
1307
+ sig do
1308
+ override.returns(
1309
+ T::Array[
1310
+ OpenAI::Responses::ResponsesClientEvent::Moderation::Policy::Output::Mode::TaggedSymbol
1311
+ ]
1312
+ )
1313
+ end
1314
+ def self.values
1315
+ end
1316
+ end
1317
+ end
1318
+ end
1319
+ end
1320
+
1321
+ class PromptCacheOptions < OpenAI::Internal::Type::BaseModel
1322
+ OrHash =
1323
+ T.type_alias do
1324
+ T.any(
1325
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions,
1326
+ OpenAI::Internal::AnyHash
1327
+ )
1328
+ end
1329
+
1330
+ # Controls whether OpenAI automatically creates an implicit cache breakpoint.
1331
+ # Defaults to `implicit`. With `implicit`, OpenAI creates one implicit breakpoint
1332
+ # and writes up to the latest three explicit breakpoints in the request. With
1333
+ # `explicit`, OpenAI does not create an implicit breakpoint and writes up to the
1334
+ # latest four explicit breakpoints. If there are no explicit breakpoints, the
1335
+ # request does not use prompt caching.
1336
+ sig do
1337
+ returns(
1338
+ T.nilable(
1339
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions::Mode::OrSymbol
1340
+ )
1341
+ )
1342
+ end
1343
+ attr_reader :mode
1344
+
1345
+ sig do
1346
+ params(
1347
+ mode:
1348
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions::Mode::OrSymbol
1349
+ ).void
1350
+ end
1351
+ attr_writer :mode
1352
+
1353
+ # The minimum lifetime applied to every implicit and explicit cache breakpoint
1354
+ # written by the request. Defaults to `30m`, which is currently the only supported
1355
+ # value. The backend may retain cache entries for longer.
1356
+ sig do
1357
+ returns(
1358
+ T.nilable(
1359
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions::Ttl::OrSymbol
1360
+ )
1361
+ )
1362
+ end
1363
+ attr_reader :ttl
1364
+
1365
+ sig do
1366
+ params(
1367
+ ttl:
1368
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions::Ttl::OrSymbol
1369
+ ).void
1370
+ end
1371
+ attr_writer :ttl
1372
+
1373
+ # Options for prompt caching. Supported for `gpt-5.6` and later models. By
1374
+ # default, OpenAI automatically chooses one implicit cache breakpoint. You can add
1375
+ # explicit breakpoints to content blocks with `prompt_cache_breakpoint`. Each
1376
+ # request can write up to four breakpoints. For cache matching, OpenAI considers
1377
+ # up to the latest 80 breakpoints in the conversation, without a content-block
1378
+ # lookback limit. Set `mode` to `explicit` to disable the implicit breakpoint. The
1379
+ # `ttl` defaults to `30m`, which is currently the only supported value. See the
1380
+ # [prompt caching guide](https://platform.openai.com/docs/guides/prompt-caching)
1381
+ # for current details.
1382
+ sig do
1383
+ params(
1384
+ mode:
1385
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions::Mode::OrSymbol,
1386
+ ttl:
1387
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions::Ttl::OrSymbol
1388
+ ).returns(T.attached_class)
1389
+ end
1390
+ def self.new(
1391
+ # Controls whether OpenAI automatically creates an implicit cache breakpoint.
1392
+ # Defaults to `implicit`. With `implicit`, OpenAI creates one implicit breakpoint
1393
+ # and writes up to the latest three explicit breakpoints in the request. With
1394
+ # `explicit`, OpenAI does not create an implicit breakpoint and writes up to the
1395
+ # latest four explicit breakpoints. If there are no explicit breakpoints, the
1396
+ # request does not use prompt caching.
1397
+ mode: nil,
1398
+ # The minimum lifetime applied to every implicit and explicit cache breakpoint
1399
+ # written by the request. Defaults to `30m`, which is currently the only supported
1400
+ # value. The backend may retain cache entries for longer.
1401
+ ttl: nil
1402
+ )
1403
+ end
1404
+
1405
+ sig do
1406
+ override.returns(
1407
+ {
1408
+ mode:
1409
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions::Mode::OrSymbol,
1410
+ ttl:
1411
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions::Ttl::OrSymbol
1412
+ }
1413
+ )
1414
+ end
1415
+ def to_hash
1416
+ end
1417
+
1418
+ # Controls whether OpenAI automatically creates an implicit cache breakpoint.
1419
+ # Defaults to `implicit`. With `implicit`, OpenAI creates one implicit breakpoint
1420
+ # and writes up to the latest three explicit breakpoints in the request. With
1421
+ # `explicit`, OpenAI does not create an implicit breakpoint and writes up to the
1422
+ # latest four explicit breakpoints. If there are no explicit breakpoints, the
1423
+ # request does not use prompt caching.
1424
+ module Mode
1425
+ extend OpenAI::Internal::Type::Enum
1426
+
1427
+ TaggedSymbol =
1428
+ T.type_alias do
1429
+ T.all(
1430
+ Symbol,
1431
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions::Mode
1432
+ )
1433
+ end
1434
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1435
+
1436
+ IMPLICIT =
1437
+ T.let(
1438
+ :implicit,
1439
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions::Mode::TaggedSymbol
1440
+ )
1441
+ EXPLICIT =
1442
+ T.let(
1443
+ :explicit,
1444
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions::Mode::TaggedSymbol
1445
+ )
1446
+
1447
+ sig do
1448
+ override.returns(
1449
+ T::Array[
1450
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions::Mode::TaggedSymbol
1451
+ ]
1452
+ )
1453
+ end
1454
+ def self.values
1455
+ end
1456
+ end
1457
+
1458
+ # The minimum lifetime applied to every implicit and explicit cache breakpoint
1459
+ # written by the request. Defaults to `30m`, which is currently the only supported
1460
+ # value. The backend may retain cache entries for longer.
1461
+ module Ttl
1462
+ extend OpenAI::Internal::Type::Enum
1463
+
1464
+ TaggedSymbol =
1465
+ T.type_alias do
1466
+ T.all(
1467
+ Symbol,
1468
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions::Ttl
1469
+ )
1470
+ end
1471
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1472
+
1473
+ TTL_30M =
1474
+ T.let(
1475
+ :"30m",
1476
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions::Ttl::TaggedSymbol
1477
+ )
1478
+
1479
+ sig do
1480
+ override.returns(
1481
+ T::Array[
1482
+ OpenAI::Responses::ResponsesClientEvent::PromptCacheOptions::Ttl::TaggedSymbol
1483
+ ]
1484
+ )
1485
+ end
1486
+ def self.values
1487
+ end
1488
+ end
989
1489
  end
990
1490
 
1491
+ # Deprecated. Use `prompt_cache_options.ttl` instead.
1492
+ #
991
1493
  # The retention policy for the prompt cache. Set to `24h` to enable extended
992
1494
  # prompt caching, which keeps cached prefixes active for longer, up to a maximum
993
1495
  # of 24 hours.
994
1496
  # [Learn more](https://platform.openai.com/docs/guides/prompt-caching#prompt-cache-retention).
995
- # For `gpt-5.5`, `gpt-5.5-pro`, and future models, only `24h` is supported.
1497
+ # This field expresses a maximum retention policy, while
1498
+ # `prompt_cache_options.ttl` expresses a minimum cache lifetime. The two fields
1499
+ # are independent and do not interact. For `gpt-5.5`, `gpt-5.5-pro`, and future
1500
+ # models, only `24h` is supported.
996
1501
  #
997
1502
  # For older models that support both `in_memory` and `24h`, the default depends on
998
1503
  # your organization's data retention policy:
@@ -1155,11 +1660,37 @@ module OpenAI
1155
1660
  OpenAI::Responses::ToolChoiceFunction,
1156
1661
  OpenAI::Responses::ToolChoiceMcp,
1157
1662
  OpenAI::Responses::ToolChoiceCustom,
1663
+ OpenAI::Responses::ResponsesClientEvent::ToolChoice::SpecificProgrammaticToolCallingParam,
1158
1664
  OpenAI::Responses::ToolChoiceApplyPatch,
1159
1665
  OpenAI::Responses::ToolChoiceShell
1160
1666
  )
1161
1667
  end
1162
1668
 
1669
+ class SpecificProgrammaticToolCallingParam < OpenAI::Internal::Type::BaseModel
1670
+ OrHash =
1671
+ T.type_alias do
1672
+ T.any(
1673
+ OpenAI::Responses::ResponsesClientEvent::ToolChoice::SpecificProgrammaticToolCallingParam,
1674
+ OpenAI::Internal::AnyHash
1675
+ )
1676
+ end
1677
+
1678
+ # The tool to call. Always `programmatic_tool_calling`.
1679
+ sig { returns(Symbol) }
1680
+ attr_accessor :type
1681
+
1682
+ sig { params(type: Symbol).returns(T.attached_class) }
1683
+ def self.new(
1684
+ # The tool to call. Always `programmatic_tool_calling`.
1685
+ type: :programmatic_tool_calling
1686
+ )
1687
+ end
1688
+
1689
+ sig { override.returns({ type: Symbol }) }
1690
+ def to_hash
1691
+ end
1692
+ end
1693
+
1163
1694
  sig do
1164
1695
  override.returns(
1165
1696
  T::Array[