openai 0.51.0 → 0.53.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 (554) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +32 -0
  3. data/README.md +1 -1
  4. data/lib/openai/client.rb +14 -0
  5. data/lib/openai/internal/conversation_cursor_page.rb +2 -2
  6. data/lib/openai/internal/type/enum.rb +6 -6
  7. data/lib/openai/internal/util.rb +31 -0
  8. data/lib/openai/models/batch_cancel_params.rb +7 -1
  9. data/lib/openai/models/batch_retrieve_params.rb +7 -1
  10. data/lib/openai/models/beta/assistant_create_params.rb +3 -2
  11. data/lib/openai/models/beta/assistant_delete_params.rb +7 -1
  12. data/lib/openai/models/beta/assistant_retrieve_params.rb +7 -1
  13. data/lib/openai/models/beta/assistant_update_params.rb +8 -1
  14. data/lib/openai/models/beta/chatkit/session_cancel_params.rb +7 -1
  15. data/lib/openai/models/beta/chatkit/thread_delete_params.rb +7 -1
  16. data/lib/openai/models/beta/chatkit/thread_list_items_params.rb +8 -1
  17. data/lib/openai/models/beta/chatkit/thread_retrieve_params.rb +7 -1
  18. data/lib/openai/models/beta/thread_create_and_run_params.rb +3 -2
  19. data/lib/openai/models/beta/thread_create_params.rb +3 -2
  20. data/lib/openai/models/beta/thread_delete_params.rb +7 -1
  21. data/lib/openai/models/beta/thread_retrieve_params.rb +7 -1
  22. data/lib/openai/models/beta/thread_update_params.rb +8 -1
  23. data/lib/openai/models/beta/threads/message_create_params.rb +8 -1
  24. data/lib/openai/models/beta/threads/message_delete_params.rb +7 -1
  25. data/lib/openai/models/beta/threads/message_list_params.rb +8 -1
  26. data/lib/openai/models/beta/threads/message_retrieve_params.rb +7 -1
  27. data/lib/openai/models/beta/threads/message_update_params.rb +8 -1
  28. data/lib/openai/models/beta/threads/run_cancel_params.rb +7 -1
  29. data/lib/openai/models/beta/threads/run_create_params.rb +8 -1
  30. data/lib/openai/models/beta/threads/run_list_params.rb +8 -1
  31. data/lib/openai/models/beta/threads/run_retrieve_params.rb +7 -1
  32. data/lib/openai/models/beta/threads/run_submit_tool_outputs_params.rb +8 -1
  33. data/lib/openai/models/beta/threads/run_update_params.rb +8 -1
  34. data/lib/openai/models/beta/threads/runs/step_list_params.rb +8 -1
  35. data/lib/openai/models/beta/threads/runs/step_retrieve_params.rb +8 -1
  36. data/lib/openai/models/chat/completion_delete_params.rb +7 -1
  37. data/lib/openai/models/chat/completion_retrieve_params.rb +7 -1
  38. data/lib/openai/models/chat/completion_update_params.rb +8 -1
  39. data/lib/openai/models/chat/completions/message_list_params.rb +8 -1
  40. data/lib/openai/models/chat_model.rb +2 -0
  41. data/lib/openai/models/container_delete_params.rb +7 -1
  42. data/lib/openai/models/container_retrieve_params.rb +7 -1
  43. data/lib/openai/models/containers/file_create_params.rb +8 -1
  44. data/lib/openai/models/containers/file_delete_params.rb +7 -1
  45. data/lib/openai/models/containers/file_list_params.rb +8 -1
  46. data/lib/openai/models/containers/file_retrieve_params.rb +7 -1
  47. data/lib/openai/models/containers/files/content_retrieve_params.rb +7 -1
  48. data/lib/openai/models/conversations/computer_screenshot_content.rb +26 -1
  49. data/lib/openai/models/conversations/conversation_create_params.rb +2 -2
  50. data/lib/openai/models/conversations/conversation_delete_params.rb +7 -1
  51. data/lib/openai/models/conversations/conversation_item.rb +5 -1
  52. data/lib/openai/models/conversations/conversation_item_list.rb +2 -2
  53. data/lib/openai/models/conversations/conversation_retrieve_params.rb +7 -1
  54. data/lib/openai/models/conversations/conversation_update_params.rb +8 -1
  55. data/lib/openai/models/conversations/item_create_params.rb +10 -3
  56. data/lib/openai/models/conversations/item_delete_params.rb +7 -1
  57. data/lib/openai/models/conversations/item_list_params.rb +8 -1
  58. data/lib/openai/models/conversations/item_retrieve_params.rb +8 -1
  59. data/lib/openai/models/eval_delete_params.rb +7 -1
  60. data/lib/openai/models/eval_retrieve_params.rb +7 -1
  61. data/lib/openai/models/eval_update_params.rb +8 -1
  62. data/lib/openai/models/evals/run_cancel_params.rb +7 -1
  63. data/lib/openai/models/evals/run_cancel_response.rb +2 -2
  64. data/lib/openai/models/evals/run_create_params.rb +10 -3
  65. data/lib/openai/models/evals/run_create_response.rb +2 -2
  66. data/lib/openai/models/evals/run_delete_params.rb +7 -1
  67. data/lib/openai/models/evals/run_list_params.rb +8 -1
  68. data/lib/openai/models/evals/run_list_response.rb +2 -2
  69. data/lib/openai/models/evals/run_retrieve_params.rb +7 -1
  70. data/lib/openai/models/evals/run_retrieve_response.rb +2 -2
  71. data/lib/openai/models/evals/runs/output_item_list_params.rb +8 -1
  72. data/lib/openai/models/evals/runs/output_item_retrieve_params.rb +7 -1
  73. data/lib/openai/models/file_content_params.rb +7 -1
  74. data/lib/openai/models/file_delete_params.rb +7 -1
  75. data/lib/openai/models/file_retrieve_params.rb +7 -1
  76. data/lib/openai/models/fine_tuning/checkpoints/permission_create_params.rb +8 -1
  77. data/lib/openai/models/fine_tuning/checkpoints/permission_delete_params.rb +7 -1
  78. data/lib/openai/models/fine_tuning/checkpoints/permission_list_params.rb +68 -0
  79. data/lib/openai/models/fine_tuning/checkpoints/permission_list_response.rb +48 -0
  80. data/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rb +8 -1
  81. data/lib/openai/models/fine_tuning/job_cancel_params.rb +7 -1
  82. data/lib/openai/models/fine_tuning/job_list_events_params.rb +8 -1
  83. data/lib/openai/models/fine_tuning/job_pause_params.rb +7 -1
  84. data/lib/openai/models/fine_tuning/job_resume_params.rb +7 -1
  85. data/lib/openai/models/fine_tuning/job_retrieve_params.rb +7 -1
  86. data/lib/openai/models/fine_tuning/jobs/checkpoint_list_params.rb +8 -1
  87. data/lib/openai/models/model_delete_params.rb +7 -1
  88. data/lib/openai/models/model_retrieve_params.rb +7 -1
  89. data/lib/openai/models/realtime/call_accept_params.rb +7 -1
  90. data/lib/openai/models/realtime/call_hangup_params.rb +7 -1
  91. data/lib/openai/models/realtime/call_refer_params.rb +8 -1
  92. data/lib/openai/models/realtime/call_reject_params.rb +8 -1
  93. data/lib/openai/models/realtime/realtime_response_create_mcp_tool.rb +9 -1
  94. data/lib/openai/models/realtime/realtime_session_create_response.rb +9 -1
  95. data/lib/openai/models/realtime/realtime_tools_config_union.rb +9 -1
  96. data/lib/openai/models/responses/compacted_response.rb +2 -2
  97. data/lib/openai/models/responses/computer_action.rb +356 -0
  98. data/lib/openai/models/responses/computer_action_list.rb +10 -0
  99. data/lib/openai/models/responses/computer_tool.rb +5 -45
  100. data/lib/openai/models/responses/computer_use_preview_tool.rb +61 -0
  101. data/lib/openai/models/responses/custom_tool.rb +9 -1
  102. data/lib/openai/models/responses/easy_input_message.rb +9 -13
  103. data/lib/openai/models/responses/function_tool.rb +9 -1
  104. data/lib/openai/models/responses/input_item_list_params.rb +8 -1
  105. data/lib/openai/models/responses/input_token_count_params.rb +5 -5
  106. data/lib/openai/models/responses/namespace_tool.rb +93 -0
  107. data/lib/openai/models/responses/response.rb +7 -7
  108. data/lib/openai/models/responses/response_cancel_params.rb +7 -1
  109. data/lib/openai/models/responses/response_compact_params.rb +9 -3
  110. data/lib/openai/models/responses/response_computer_tool_call.rb +74 -65
  111. data/lib/openai/models/responses/response_create_params.rb +5 -5
  112. data/lib/openai/models/responses/response_custom_tool_call.rb +9 -1
  113. data/lib/openai/models/responses/response_delete_params.rb +7 -1
  114. data/lib/openai/models/responses/response_function_tool_call.rb +9 -1
  115. data/lib/openai/models/responses/response_input_file.rb +24 -1
  116. data/lib/openai/models/responses/response_input_file_content.rb +27 -1
  117. data/lib/openai/models/responses/response_input_image.rb +6 -5
  118. data/lib/openai/models/responses/response_input_image_content.rb +6 -5
  119. data/lib/openai/models/responses/response_input_item.rb +87 -1
  120. data/lib/openai/models/responses/response_item.rb +5 -1
  121. data/lib/openai/models/responses/response_item_list.rb +2 -2
  122. data/lib/openai/models/responses/response_output_item.rb +5 -1
  123. data/lib/openai/models/responses/response_output_item_added_event.rb +2 -2
  124. data/lib/openai/models/responses/response_output_item_done_event.rb +2 -2
  125. data/lib/openai/models/responses/response_output_message.rb +9 -13
  126. data/lib/openai/models/responses/response_retrieve_params.rb +8 -1
  127. data/lib/openai/models/responses/response_tool_search_call.rb +93 -0
  128. data/lib/openai/models/responses/response_tool_search_output_item.rb +93 -0
  129. data/lib/openai/models/responses/response_tool_search_output_item_param.rb +89 -0
  130. data/lib/openai/models/responses/responses_client_event.rb +5 -5
  131. data/lib/openai/models/responses/tool.rb +20 -3
  132. data/lib/openai/models/responses/tool_choice_types.rb +6 -0
  133. data/lib/openai/models/responses/tool_search_tool.rb +57 -0
  134. data/lib/openai/models/responses/web_search_preview_tool.rb +19 -1
  135. data/lib/openai/models/skill_delete_params.rb +7 -1
  136. data/lib/openai/models/skill_retrieve_params.rb +7 -1
  137. data/lib/openai/models/skill_update_params.rb +8 -1
  138. data/lib/openai/models/skills/content_retrieve_params.rb +7 -1
  139. data/lib/openai/models/skills/version_create_params.rb +8 -1
  140. data/lib/openai/models/skills/version_delete_params.rb +10 -1
  141. data/lib/openai/models/skills/version_list_params.rb +8 -1
  142. data/lib/openai/models/skills/version_retrieve_params.rb +10 -1
  143. data/lib/openai/models/skills/versions/content_retrieve_params.rb +10 -1
  144. data/lib/openai/models/upload_cancel_params.rb +7 -1
  145. data/lib/openai/models/upload_complete_params.rb +8 -1
  146. data/lib/openai/models/uploads/part_create_params.rb +8 -1
  147. data/lib/openai/models/vector_store_delete_params.rb +7 -1
  148. data/lib/openai/models/vector_store_retrieve_params.rb +7 -1
  149. data/lib/openai/models/vector_store_search_params.rb +8 -1
  150. data/lib/openai/models/vector_store_update_params.rb +8 -1
  151. data/lib/openai/models/vector_stores/file_batch_cancel_params.rb +7 -1
  152. data/lib/openai/models/vector_stores/file_batch_create_params.rb +8 -1
  153. data/lib/openai/models/vector_stores/file_batch_list_files_params.rb +8 -1
  154. data/lib/openai/models/vector_stores/file_batch_retrieve_params.rb +7 -1
  155. data/lib/openai/models/vector_stores/file_content_params.rb +7 -1
  156. data/lib/openai/models/vector_stores/file_create_params.rb +8 -1
  157. data/lib/openai/models/vector_stores/file_delete_params.rb +7 -1
  158. data/lib/openai/models/vector_stores/file_list_params.rb +8 -1
  159. data/lib/openai/models/vector_stores/file_retrieve_params.rb +7 -1
  160. data/lib/openai/models/vector_stores/file_update_params.rb +8 -1
  161. data/lib/openai/models/video.rb +24 -4
  162. data/lib/openai/models/video_create_params.rb +2 -2
  163. data/lib/openai/models/video_delete_params.rb +7 -1
  164. data/lib/openai/models/video_download_content_params.rb +8 -1
  165. data/lib/openai/models/video_remix_params.rb +8 -1
  166. data/lib/openai/models/video_retrieve_params.rb +7 -1
  167. data/lib/openai/resources/audio/speech.rb +1 -0
  168. data/lib/openai/resources/audio/transcriptions.rb +1 -0
  169. data/lib/openai/resources/audio/translations.rb +1 -0
  170. data/lib/openai/resources/audio.rb +3 -0
  171. data/lib/openai/resources/batches.rb +3 -1
  172. data/lib/openai/resources/beta/assistants.rb +3 -1
  173. data/lib/openai/resources/beta/chatkit/threads.rb +4 -2
  174. data/lib/openai/resources/beta/threads/messages.rb +4 -1
  175. data/lib/openai/resources/beta/threads/runs/steps.rb +6 -2
  176. data/lib/openai/resources/beta/threads/runs.rb +11 -5
  177. data/lib/openai/resources/beta/threads.rb +4 -0
  178. data/lib/openai/resources/beta.rb +2 -0
  179. data/lib/openai/resources/chat/completions/messages.rb +4 -1
  180. data/lib/openai/resources/chat/completions.rb +6 -1
  181. data/lib/openai/resources/chat.rb +2 -0
  182. data/lib/openai/resources/completions.rb +2 -0
  183. data/lib/openai/resources/containers/files.rb +2 -1
  184. data/lib/openai/resources/containers.rb +2 -1
  185. data/lib/openai/resources/conversations/items.rb +11 -7
  186. data/lib/openai/resources/conversations.rb +3 -1
  187. data/lib/openai/resources/embeddings.rb +2 -0
  188. data/lib/openai/resources/evals/runs/output_items.rb +3 -1
  189. data/lib/openai/resources/evals/runs.rb +4 -1
  190. data/lib/openai/resources/evals.rb +4 -1
  191. data/lib/openai/resources/files.rb +4 -1
  192. data/lib/openai/resources/fine_tuning/alpha/graders.rb +1 -0
  193. data/lib/openai/resources/fine_tuning/alpha.rb +1 -0
  194. data/lib/openai/resources/fine_tuning/checkpoints/permissions.rb +44 -1
  195. data/lib/openai/resources/fine_tuning/checkpoints.rb +1 -0
  196. data/lib/openai/resources/fine_tuning/jobs/checkpoints.rb +3 -1
  197. data/lib/openai/resources/fine_tuning/jobs.rb +6 -2
  198. data/lib/openai/resources/fine_tuning.rb +1 -0
  199. data/lib/openai/resources/images.rb +1 -0
  200. data/lib/openai/resources/models.rb +1 -0
  201. data/lib/openai/resources/moderations.rb +2 -0
  202. data/lib/openai/resources/responses/input_items.rb +3 -2
  203. data/lib/openai/resources/responses/input_tokens.rb +2 -2
  204. data/lib/openai/resources/responses.rb +9 -7
  205. data/lib/openai/resources/skills/versions.rb +2 -1
  206. data/lib/openai/resources/skills.rb +2 -1
  207. data/lib/openai/resources/uploads/parts.rb +1 -0
  208. data/lib/openai/resources/uploads.rb +2 -0
  209. data/lib/openai/resources/vector_stores/file_batches.rb +2 -1
  210. data/lib/openai/resources/vector_stores/files.rb +2 -1
  211. data/lib/openai/resources/vector_stores.rb +2 -1
  212. data/lib/openai/resources/videos.rb +5 -3
  213. data/lib/openai/version.rb +1 -1
  214. data/lib/openai.rb +10 -0
  215. data/rbi/openai/client.rbi +14 -0
  216. data/rbi/openai/internal/util.rbi +20 -0
  217. data/rbi/openai/models/batch_cancel_params.rbi +13 -5
  218. data/rbi/openai/models/batch_retrieve_params.rbi +13 -5
  219. data/rbi/openai/models/beta/assistant_create_params.rbi +6 -4
  220. data/rbi/openai/models/beta/assistant_delete_params.rbi +13 -5
  221. data/rbi/openai/models/beta/assistant_retrieve_params.rbi +13 -5
  222. data/rbi/openai/models/beta/assistant_update_params.rbi +6 -0
  223. data/rbi/openai/models/beta/chatkit/session_cancel_params.rbi +13 -5
  224. data/rbi/openai/models/beta/chatkit/thread_delete_params.rbi +13 -5
  225. data/rbi/openai/models/beta/chatkit/thread_list_items_params.rbi +6 -0
  226. data/rbi/openai/models/beta/chatkit/thread_retrieve_params.rbi +13 -5
  227. data/rbi/openai/models/beta/thread_create_and_run_params.rbi +6 -4
  228. data/rbi/openai/models/beta/thread_create_params.rbi +6 -4
  229. data/rbi/openai/models/beta/thread_delete_params.rbi +13 -5
  230. data/rbi/openai/models/beta/thread_retrieve_params.rbi +13 -5
  231. data/rbi/openai/models/beta/thread_update_params.rbi +6 -0
  232. data/rbi/openai/models/beta/threads/message_create_params.rbi +6 -0
  233. data/rbi/openai/models/beta/threads/message_delete_params.rbi +10 -2
  234. data/rbi/openai/models/beta/threads/message_list_params.rbi +6 -0
  235. data/rbi/openai/models/beta/threads/message_retrieve_params.rbi +10 -2
  236. data/rbi/openai/models/beta/threads/message_update_params.rbi +6 -0
  237. data/rbi/openai/models/beta/threads/run_cancel_params.rbi +10 -2
  238. data/rbi/openai/models/beta/threads/run_create_params.rbi +6 -0
  239. data/rbi/openai/models/beta/threads/run_list_params.rbi +6 -0
  240. data/rbi/openai/models/beta/threads/run_retrieve_params.rbi +10 -2
  241. data/rbi/openai/models/beta/threads/run_submit_tool_outputs_params.rbi +6 -0
  242. data/rbi/openai/models/beta/threads/run_update_params.rbi +6 -0
  243. data/rbi/openai/models/beta/threads/runs/step_list_params.rbi +6 -0
  244. data/rbi/openai/models/beta/threads/runs/step_retrieve_params.rbi +6 -0
  245. data/rbi/openai/models/chat/completion_delete_params.rbi +13 -5
  246. data/rbi/openai/models/chat/completion_retrieve_params.rbi +13 -5
  247. data/rbi/openai/models/chat/completion_update_params.rbi +6 -0
  248. data/rbi/openai/models/chat/completions/message_list_params.rbi +6 -0
  249. data/rbi/openai/models/chat_model.rbi +3 -0
  250. data/rbi/openai/models/container_delete_params.rbi +13 -5
  251. data/rbi/openai/models/container_retrieve_params.rbi +13 -5
  252. data/rbi/openai/models/containers/file_create_params.rbi +6 -0
  253. data/rbi/openai/models/containers/file_delete_params.rbi +10 -2
  254. data/rbi/openai/models/containers/file_list_params.rbi +6 -0
  255. data/rbi/openai/models/containers/file_retrieve_params.rbi +10 -2
  256. data/rbi/openai/models/containers/files/content_retrieve_params.rbi +10 -2
  257. data/rbi/openai/models/conversations/computer_screenshot_content.rbi +62 -0
  258. data/rbi/openai/models/conversations/conversation_create_params.rbi +6 -0
  259. data/rbi/openai/models/conversations/conversation_delete_params.rbi +13 -5
  260. data/rbi/openai/models/conversations/conversation_item.rbi +2 -0
  261. data/rbi/openai/models/conversations/conversation_item_list.rbi +2 -0
  262. data/rbi/openai/models/conversations/conversation_retrieve_params.rbi +13 -5
  263. data/rbi/openai/models/conversations/conversation_update_params.rbi +6 -0
  264. data/rbi/openai/models/conversations/item_create_params.rbi +12 -0
  265. data/rbi/openai/models/conversations/item_delete_params.rbi +10 -2
  266. data/rbi/openai/models/conversations/item_list_params.rbi +6 -0
  267. data/rbi/openai/models/conversations/item_retrieve_params.rbi +6 -0
  268. data/rbi/openai/models/eval_delete_params.rbi +13 -5
  269. data/rbi/openai/models/eval_retrieve_params.rbi +13 -5
  270. data/rbi/openai/models/eval_update_params.rbi +6 -0
  271. data/rbi/openai/models/evals/run_cancel_params.rbi +10 -2
  272. data/rbi/openai/models/evals/run_cancel_response.rbi +6 -0
  273. data/rbi/openai/models/evals/run_create_params.rbi +18 -0
  274. data/rbi/openai/models/evals/run_create_response.rbi +6 -0
  275. data/rbi/openai/models/evals/run_delete_params.rbi +10 -2
  276. data/rbi/openai/models/evals/run_list_params.rbi +6 -0
  277. data/rbi/openai/models/evals/run_list_response.rbi +6 -0
  278. data/rbi/openai/models/evals/run_retrieve_params.rbi +10 -2
  279. data/rbi/openai/models/evals/run_retrieve_response.rbi +6 -0
  280. data/rbi/openai/models/evals/runs/output_item_list_params.rbi +6 -0
  281. data/rbi/openai/models/evals/runs/output_item_retrieve_params.rbi +6 -1
  282. data/rbi/openai/models/file_content_params.rbi +13 -5
  283. data/rbi/openai/models/file_delete_params.rbi +13 -5
  284. data/rbi/openai/models/file_retrieve_params.rbi +13 -5
  285. data/rbi/openai/models/fine_tuning/checkpoints/permission_create_params.rbi +6 -0
  286. data/rbi/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi +10 -1
  287. data/rbi/openai/models/fine_tuning/checkpoints/permission_list_params.rbi +140 -0
  288. data/rbi/openai/models/fine_tuning/checkpoints/permission_list_response.rbi +70 -0
  289. data/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi +6 -0
  290. data/rbi/openai/models/fine_tuning/job_cancel_params.rbi +16 -5
  291. data/rbi/openai/models/fine_tuning/job_list_events_params.rbi +6 -0
  292. data/rbi/openai/models/fine_tuning/job_pause_params.rbi +16 -5
  293. data/rbi/openai/models/fine_tuning/job_resume_params.rbi +16 -5
  294. data/rbi/openai/models/fine_tuning/job_retrieve_params.rbi +16 -5
  295. data/rbi/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi +6 -0
  296. data/rbi/openai/models/model_delete_params.rbi +13 -5
  297. data/rbi/openai/models/model_retrieve_params.rbi +13 -5
  298. data/rbi/openai/models/realtime/call_accept_params.rbi +13 -5
  299. data/rbi/openai/models/realtime/call_hangup_params.rbi +13 -5
  300. data/rbi/openai/models/realtime/call_refer_params.rbi +10 -1
  301. data/rbi/openai/models/realtime/call_reject_params.rbi +10 -1
  302. data/rbi/openai/models/realtime/realtime_response_create_mcp_tool.rbi +11 -0
  303. data/rbi/openai/models/realtime/realtime_session_create_response.rbi +11 -0
  304. data/rbi/openai/models/realtime/realtime_tools_config_union.rbi +11 -0
  305. data/rbi/openai/models/responses/compacted_response.rbi +2 -0
  306. data/rbi/openai/models/responses/computer_action.rbi +534 -0
  307. data/rbi/openai/models/responses/computer_action_list.rbi +15 -0
  308. data/rbi/openai/models/responses/computer_tool.rbi +5 -87
  309. data/rbi/openai/models/responses/computer_use_preview_tool.rbi +124 -0
  310. data/rbi/openai/models/responses/custom_tool.rbi +11 -0
  311. data/rbi/openai/models/responses/easy_input_message.rbi +12 -18
  312. data/rbi/openai/models/responses/function_tool.rbi +11 -0
  313. data/rbi/openai/models/responses/input_item_list_params.rbi +6 -0
  314. data/rbi/openai/models/responses/input_token_count_params.rbi +9 -0
  315. data/rbi/openai/models/responses/namespace_tool.rbi +163 -0
  316. data/rbi/openai/models/responses/response.rbi +5 -0
  317. data/rbi/openai/models/responses/response_cancel_params.rbi +13 -5
  318. data/rbi/openai/models/responses/response_compact_params.rbi +10 -0
  319. data/rbi/openai/models/responses/response_computer_tool_call.rbi +245 -151
  320. data/rbi/openai/models/responses/response_create_params.rbi +12 -0
  321. data/rbi/openai/models/responses/response_custom_tool_call.rbi +12 -1
  322. data/rbi/openai/models/responses/response_delete_params.rbi +13 -5
  323. data/rbi/openai/models/responses/response_function_tool_call.rbi +11 -0
  324. data/rbi/openai/models/responses/response_input_file.rbi +54 -0
  325. data/rbi/openai/models/responses/response_input_file_content.rbi +59 -0
  326. data/rbi/openai/models/responses/response_input_image.rbi +11 -6
  327. data/rbi/openai/models/responses/response_input_image_content.rbi +11 -6
  328. data/rbi/openai/models/responses/response_input_item.rbi +180 -0
  329. data/rbi/openai/models/responses/response_item.rbi +2 -0
  330. data/rbi/openai/models/responses/response_item_list.rbi +2 -0
  331. data/rbi/openai/models/responses/response_output_item.rbi +2 -0
  332. data/rbi/openai/models/responses/response_output_item_added_event.rbi +2 -0
  333. data/rbi/openai/models/responses/response_output_item_done_event.rbi +2 -0
  334. data/rbi/openai/models/responses/response_output_message.rbi +12 -18
  335. data/rbi/openai/models/responses/response_retrieve_params.rbi +6 -0
  336. data/rbi/openai/models/responses/response_tool_search_call.rbi +176 -0
  337. data/rbi/openai/models/responses/response_tool_search_output_item.rbi +199 -0
  338. data/rbi/openai/models/responses/response_tool_search_output_item_param.rbi +245 -0
  339. data/rbi/openai/models/responses/responses_client_event.rbi +12 -0
  340. data/rbi/openai/models/responses/tool.rbi +14 -0
  341. data/rbi/openai/models/responses/tool_choice_types.rbi +16 -0
  342. data/rbi/openai/models/responses/tool_search_tool.rbi +107 -0
  343. data/rbi/openai/models/responses/web_search_preview_tool.rbi +64 -0
  344. data/rbi/openai/models/skill_delete_params.rbi +13 -5
  345. data/rbi/openai/models/skill_retrieve_params.rbi +13 -5
  346. data/rbi/openai/models/skill_update_params.rbi +10 -1
  347. data/rbi/openai/models/skills/content_retrieve_params.rbi +13 -5
  348. data/rbi/openai/models/skills/version_create_params.rbi +6 -0
  349. data/rbi/openai/models/skills/version_delete_params.rbi +16 -2
  350. data/rbi/openai/models/skills/version_list_params.rbi +6 -0
  351. data/rbi/openai/models/skills/version_retrieve_params.rbi +16 -2
  352. data/rbi/openai/models/skills/versions/content_retrieve_params.rbi +16 -2
  353. data/rbi/openai/models/upload_cancel_params.rbi +13 -5
  354. data/rbi/openai/models/upload_complete_params.rbi +6 -0
  355. data/rbi/openai/models/uploads/part_create_params.rbi +6 -0
  356. data/rbi/openai/models/vector_store_delete_params.rbi +13 -5
  357. data/rbi/openai/models/vector_store_retrieve_params.rbi +13 -5
  358. data/rbi/openai/models/vector_store_search_params.rbi +6 -0
  359. data/rbi/openai/models/vector_store_update_params.rbi +6 -0
  360. data/rbi/openai/models/vector_stores/file_batch_cancel_params.rbi +10 -2
  361. data/rbi/openai/models/vector_stores/file_batch_create_params.rbi +6 -0
  362. data/rbi/openai/models/vector_stores/file_batch_list_files_params.rbi +6 -0
  363. data/rbi/openai/models/vector_stores/file_batch_retrieve_params.rbi +10 -2
  364. data/rbi/openai/models/vector_stores/file_content_params.rbi +10 -2
  365. data/rbi/openai/models/vector_stores/file_create_params.rbi +6 -0
  366. data/rbi/openai/models/vector_stores/file_delete_params.rbi +10 -2
  367. data/rbi/openai/models/vector_stores/file_list_params.rbi +6 -0
  368. data/rbi/openai/models/vector_stores/file_retrieve_params.rbi +10 -2
  369. data/rbi/openai/models/vector_stores/file_update_params.rbi +6 -0
  370. data/rbi/openai/models/video.rbi +20 -5
  371. data/rbi/openai/models/video_create_params.rbi +2 -2
  372. data/rbi/openai/models/video_delete_params.rbi +13 -5
  373. data/rbi/openai/models/video_download_content_params.rbi +6 -0
  374. data/rbi/openai/models/video_remix_params.rbi +10 -1
  375. data/rbi/openai/models/video_retrieve_params.rbi +13 -5
  376. data/rbi/openai/resources/audio/speech.rbi +1 -0
  377. data/rbi/openai/resources/audio/transcriptions.rbi +1 -0
  378. data/rbi/openai/resources/audio/translations.rbi +1 -0
  379. data/rbi/openai/resources/audio.rbi +3 -0
  380. data/rbi/openai/resources/batches.rbi +1 -0
  381. data/rbi/openai/resources/beta/assistants.rbi +1 -0
  382. data/rbi/openai/resources/beta/threads/messages.rbi +1 -0
  383. data/rbi/openai/resources/beta/threads/runs/steps.rbi +1 -0
  384. data/rbi/openai/resources/beta/threads/runs.rbi +2 -0
  385. data/rbi/openai/resources/beta/threads.rbi +3 -0
  386. data/rbi/openai/resources/beta.rbi +2 -0
  387. data/rbi/openai/resources/chat/completions/messages.rbi +2 -0
  388. data/rbi/openai/resources/chat/completions.rbi +4 -0
  389. data/rbi/openai/resources/chat.rbi +2 -0
  390. data/rbi/openai/resources/completions.rbi +2 -0
  391. data/rbi/openai/resources/conversations/items.rbi +3 -0
  392. data/rbi/openai/resources/conversations.rbi +4 -0
  393. data/rbi/openai/resources/embeddings.rbi +2 -0
  394. data/rbi/openai/resources/evals/runs/output_items.rbi +1 -0
  395. data/rbi/openai/resources/evals/runs.rbi +2 -0
  396. data/rbi/openai/resources/evals.rbi +2 -0
  397. data/rbi/openai/resources/files.rbi +2 -0
  398. data/rbi/openai/resources/fine_tuning/alpha/graders.rbi +1 -0
  399. data/rbi/openai/resources/fine_tuning/alpha.rbi +1 -0
  400. data/rbi/openai/resources/fine_tuning/checkpoints/permissions.rbi +35 -0
  401. data/rbi/openai/resources/fine_tuning/checkpoints.rbi +1 -0
  402. data/rbi/openai/resources/fine_tuning/jobs/checkpoints.rbi +1 -0
  403. data/rbi/openai/resources/fine_tuning/jobs.rbi +2 -0
  404. data/rbi/openai/resources/fine_tuning.rbi +1 -0
  405. data/rbi/openai/resources/images.rbi +1 -0
  406. data/rbi/openai/resources/models.rbi +1 -0
  407. data/rbi/openai/resources/moderations.rbi +2 -0
  408. data/rbi/openai/resources/responses/input_tokens.rbi +3 -0
  409. data/rbi/openai/resources/responses.rbi +6 -0
  410. data/rbi/openai/resources/uploads/parts.rbi +1 -0
  411. data/rbi/openai/resources/uploads.rbi +2 -0
  412. data/rbi/openai/resources/videos.rbi +1 -1
  413. data/sig/openai/internal/util.rbs +10 -0
  414. data/sig/openai/models/batch_cancel_params.rbs +12 -3
  415. data/sig/openai/models/batch_retrieve_params.rbs +11 -3
  416. data/sig/openai/models/beta/assistant_delete_params.rbs +11 -3
  417. data/sig/openai/models/beta/assistant_retrieve_params.rbs +11 -3
  418. data/sig/openai/models/beta/assistant_update_params.rbs +5 -0
  419. data/sig/openai/models/beta/chatkit/session_cancel_params.rbs +11 -3
  420. data/sig/openai/models/beta/chatkit/thread_delete_params.rbs +11 -3
  421. data/sig/openai/models/beta/chatkit/thread_list_items_params.rbs +5 -0
  422. data/sig/openai/models/beta/chatkit/thread_retrieve_params.rbs +11 -3
  423. data/sig/openai/models/beta/thread_delete_params.rbs +11 -3
  424. data/sig/openai/models/beta/thread_retrieve_params.rbs +11 -3
  425. data/sig/openai/models/beta/thread_update_params.rbs +5 -0
  426. data/sig/openai/models/beta/threads/message_create_params.rbs +5 -0
  427. data/sig/openai/models/beta/threads/message_delete_params.rbs +6 -1
  428. data/sig/openai/models/beta/threads/message_list_params.rbs +5 -0
  429. data/sig/openai/models/beta/threads/message_retrieve_params.rbs +6 -1
  430. data/sig/openai/models/beta/threads/message_update_params.rbs +9 -1
  431. data/sig/openai/models/beta/threads/run_cancel_params.rbs +6 -1
  432. data/sig/openai/models/beta/threads/run_create_params.rbs +5 -0
  433. data/sig/openai/models/beta/threads/run_list_params.rbs +5 -0
  434. data/sig/openai/models/beta/threads/run_retrieve_params.rbs +6 -1
  435. data/sig/openai/models/beta/threads/run_submit_tool_outputs_params.rbs +5 -0
  436. data/sig/openai/models/beta/threads/run_update_params.rbs +9 -1
  437. data/sig/openai/models/beta/threads/runs/step_list_params.rbs +5 -0
  438. data/sig/openai/models/beta/threads/runs/step_retrieve_params.rbs +5 -0
  439. data/sig/openai/models/chat/completion_delete_params.rbs +11 -3
  440. data/sig/openai/models/chat/completion_retrieve_params.rbs +11 -3
  441. data/sig/openai/models/chat/completion_update_params.rbs +5 -1
  442. data/sig/openai/models/chat/completions/message_list_params.rbs +5 -0
  443. data/sig/openai/models/chat_model.rbs +5 -1
  444. data/sig/openai/models/container_delete_params.rbs +11 -3
  445. data/sig/openai/models/container_retrieve_params.rbs +11 -3
  446. data/sig/openai/models/containers/file_create_params.rbs +9 -1
  447. data/sig/openai/models/containers/file_delete_params.rbs +6 -1
  448. data/sig/openai/models/containers/file_list_params.rbs +5 -0
  449. data/sig/openai/models/containers/file_retrieve_params.rbs +6 -1
  450. data/sig/openai/models/containers/files/content_retrieve_params.rbs +6 -1
  451. data/sig/openai/models/conversations/computer_screenshot_content.rbs +23 -1
  452. data/sig/openai/models/conversations/conversation_delete_params.rbs +11 -3
  453. data/sig/openai/models/conversations/conversation_item.rbs +2 -0
  454. data/sig/openai/models/conversations/conversation_retrieve_params.rbs +11 -3
  455. data/sig/openai/models/conversations/conversation_update_params.rbs +5 -1
  456. data/sig/openai/models/conversations/item_create_params.rbs +5 -0
  457. data/sig/openai/models/conversations/item_delete_params.rbs +6 -1
  458. data/sig/openai/models/conversations/item_list_params.rbs +5 -0
  459. data/sig/openai/models/conversations/item_retrieve_params.rbs +5 -0
  460. data/sig/openai/models/eval_delete_params.rbs +12 -3
  461. data/sig/openai/models/eval_retrieve_params.rbs +11 -3
  462. data/sig/openai/models/eval_update_params.rbs +5 -1
  463. data/sig/openai/models/evals/run_cancel_params.rbs +6 -1
  464. data/sig/openai/models/evals/run_create_params.rbs +5 -0
  465. data/sig/openai/models/evals/run_delete_params.rbs +6 -1
  466. data/sig/openai/models/evals/run_list_params.rbs +5 -0
  467. data/sig/openai/models/evals/run_retrieve_params.rbs +6 -1
  468. data/sig/openai/models/evals/runs/output_item_list_params.rbs +5 -0
  469. data/sig/openai/models/evals/runs/output_item_retrieve_params.rbs +5 -1
  470. data/sig/openai/models/file_content_params.rbs +12 -3
  471. data/sig/openai/models/file_delete_params.rbs +12 -3
  472. data/sig/openai/models/file_retrieve_params.rbs +11 -3
  473. data/sig/openai/models/fine_tuning/checkpoints/permission_create_params.rbs +5 -1
  474. data/sig/openai/models/fine_tuning/checkpoints/permission_delete_params.rbs +5 -1
  475. data/sig/openai/models/fine_tuning/checkpoints/permission_list_params.rbs +71 -0
  476. data/sig/openai/models/fine_tuning/checkpoints/permission_list_response.rbs +39 -0
  477. data/sig/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbs +5 -0
  478. data/sig/openai/models/fine_tuning/job_cancel_params.rbs +13 -3
  479. data/sig/openai/models/fine_tuning/job_list_events_params.rbs +5 -1
  480. data/sig/openai/models/fine_tuning/job_pause_params.rbs +13 -3
  481. data/sig/openai/models/fine_tuning/job_resume_params.rbs +13 -3
  482. data/sig/openai/models/fine_tuning/job_retrieve_params.rbs +12 -3
  483. data/sig/openai/models/fine_tuning/jobs/checkpoint_list_params.rbs +5 -1
  484. data/sig/openai/models/model_delete_params.rbs +9 -3
  485. data/sig/openai/models/model_retrieve_params.rbs +8 -3
  486. data/sig/openai/models/realtime/call_accept_params.rbs +13 -3
  487. data/sig/openai/models/realtime/call_hangup_params.rbs +11 -3
  488. data/sig/openai/models/realtime/call_refer_params.rbs +6 -1
  489. data/sig/openai/models/realtime/call_reject_params.rbs +6 -1
  490. data/sig/openai/models/realtime/realtime_response_create_mcp_tool.rbs +7 -0
  491. data/sig/openai/models/realtime/realtime_session_create_response.rbs +7 -0
  492. data/sig/openai/models/realtime/realtime_tools_config_union.rbs +7 -0
  493. data/sig/openai/models/responses/computer_action.rbs +215 -0
  494. data/sig/openai/models/responses/computer_action_list.rbs +10 -0
  495. data/sig/openai/models/responses/computer_tool.rbs +4 -40
  496. data/sig/openai/models/responses/computer_use_preview_tool.rbs +51 -0
  497. data/sig/openai/models/responses/custom_tool.rbs +7 -0
  498. data/sig/openai/models/responses/function_tool.rbs +7 -0
  499. data/sig/openai/models/responses/input_item_list_params.rbs +5 -0
  500. data/sig/openai/models/responses/namespace_tool.rbs +84 -0
  501. data/sig/openai/models/responses/response_cancel_params.rbs +11 -3
  502. data/sig/openai/models/responses/response_compact_params.rbs +5 -1
  503. data/sig/openai/models/responses/response_computer_tool_call.rbs +62 -49
  504. data/sig/openai/models/responses/response_custom_tool_call.rbs +9 -2
  505. data/sig/openai/models/responses/response_delete_params.rbs +11 -3
  506. data/sig/openai/models/responses/response_function_tool_call.rbs +7 -0
  507. data/sig/openai/models/responses/response_input_file.rbs +20 -0
  508. data/sig/openai/models/responses/response_input_file_content.rbs +20 -0
  509. data/sig/openai/models/responses/response_input_image.rbs +2 -1
  510. data/sig/openai/models/responses/response_input_image_content.rbs +2 -1
  511. data/sig/openai/models/responses/response_input_item.rbs +71 -0
  512. data/sig/openai/models/responses/response_item.rbs +2 -0
  513. data/sig/openai/models/responses/response_output_item.rbs +2 -0
  514. data/sig/openai/models/responses/response_retrieve_params.rbs +5 -0
  515. data/sig/openai/models/responses/response_tool_search_call.rbs +77 -0
  516. data/sig/openai/models/responses/response_tool_search_output_item.rbs +77 -0
  517. data/sig/openai/models/responses/response_tool_search_output_item_param.rbs +74 -0
  518. data/sig/openai/models/responses/tool.rbs +10 -0
  519. data/sig/openai/models/responses/tool_choice_types.rbs +4 -0
  520. data/sig/openai/models/responses/tool_search_tool.rbs +52 -0
  521. data/sig/openai/models/responses/web_search_preview_tool.rbs +20 -0
  522. data/sig/openai/models/skill_delete_params.rbs +12 -3
  523. data/sig/openai/models/skill_retrieve_params.rbs +11 -3
  524. data/sig/openai/models/skill_update_params.rbs +6 -1
  525. data/sig/openai/models/skills/content_retrieve_params.rbs +11 -3
  526. data/sig/openai/models/skills/version_create_params.rbs +5 -0
  527. data/sig/openai/models/skills/version_delete_params.rbs +6 -1
  528. data/sig/openai/models/skills/version_list_params.rbs +5 -0
  529. data/sig/openai/models/skills/version_retrieve_params.rbs +6 -1
  530. data/sig/openai/models/skills/versions/content_retrieve_params.rbs +6 -1
  531. data/sig/openai/models/upload_cancel_params.rbs +11 -3
  532. data/sig/openai/models/upload_complete_params.rbs +5 -1
  533. data/sig/openai/models/uploads/part_create_params.rbs +5 -1
  534. data/sig/openai/models/vector_store_delete_params.rbs +11 -3
  535. data/sig/openai/models/vector_store_retrieve_params.rbs +11 -3
  536. data/sig/openai/models/vector_store_search_params.rbs +5 -0
  537. data/sig/openai/models/vector_store_update_params.rbs +5 -0
  538. data/sig/openai/models/vector_stores/file_batch_cancel_params.rbs +6 -1
  539. data/sig/openai/models/vector_stores/file_batch_create_params.rbs +5 -0
  540. data/sig/openai/models/vector_stores/file_batch_list_files_params.rbs +5 -0
  541. data/sig/openai/models/vector_stores/file_batch_retrieve_params.rbs +6 -1
  542. data/sig/openai/models/vector_stores/file_content_params.rbs +6 -1
  543. data/sig/openai/models/vector_stores/file_create_params.rbs +5 -0
  544. data/sig/openai/models/vector_stores/file_delete_params.rbs +6 -1
  545. data/sig/openai/models/vector_stores/file_list_params.rbs +5 -0
  546. data/sig/openai/models/vector_stores/file_retrieve_params.rbs +6 -1
  547. data/sig/openai/models/vector_stores/file_update_params.rbs +5 -0
  548. data/sig/openai/models/video.rbs +12 -4
  549. data/sig/openai/models/video_delete_params.rbs +12 -3
  550. data/sig/openai/models/video_download_content_params.rbs +8 -1
  551. data/sig/openai/models/video_remix_params.rbs +6 -1
  552. data/sig/openai/models/video_retrieve_params.rbs +11 -3
  553. data/sig/openai/resources/fine_tuning/checkpoints/permissions.rbs +9 -0
  554. metadata +32 -2
@@ -13,12 +13,15 @@ module OpenAI
13
13
  OpenAI::Responses::FunctionTool,
14
14
  OpenAI::Responses::FileSearchTool,
15
15
  OpenAI::Responses::ComputerTool,
16
+ OpenAI::Responses::ComputerUsePreviewTool,
16
17
  OpenAI::Responses::Tool::Mcp,
17
18
  OpenAI::Responses::Tool::CodeInterpreter,
18
19
  OpenAI::Responses::Tool::ImageGeneration,
19
20
  OpenAI::Responses::Tool::LocalShell,
20
21
  OpenAI::Responses::FunctionShellTool,
21
22
  OpenAI::Responses::CustomTool,
23
+ OpenAI::Responses::NamespaceTool,
24
+ OpenAI::Responses::ToolSearchTool,
22
25
  OpenAI::Responses::ApplyPatchTool,
23
26
  OpenAI::Responses::WebSearchTool,
24
27
  OpenAI::Responses::WebSearchPreviewTool
@@ -90,6 +93,13 @@ module OpenAI
90
93
  end
91
94
  attr_writer :connector_id
92
95
 
96
+ # Whether this MCP tool is deferred and discovered via tool search.
97
+ sig { returns(T.nilable(T::Boolean)) }
98
+ attr_reader :defer_loading
99
+
100
+ sig { params(defer_loading: T::Boolean).void }
101
+ attr_writer :defer_loading
102
+
93
103
  # Optional HTTP headers to send to the MCP server. Use for authentication or other
94
104
  # purposes.
95
105
  sig { returns(T.nilable(T::Hash[Symbol, String])) }
@@ -138,6 +148,7 @@ module OpenAI
138
148
  ),
139
149
  authorization: String,
140
150
  connector_id: OpenAI::Responses::Tool::Mcp::ConnectorID::OrSymbol,
151
+ defer_loading: T::Boolean,
141
152
  headers: T.nilable(T::Hash[Symbol, String]),
142
153
  require_approval:
143
154
  T.nilable(
@@ -176,6 +187,8 @@ module OpenAI
176
187
  # - Outlook Email: `connector_outlookemail`
177
188
  # - SharePoint: `connector_sharepoint`
178
189
  connector_id: nil,
190
+ # Whether this MCP tool is deferred and discovered via tool search.
191
+ defer_loading: nil,
179
192
  # Optional HTTP headers to send to the MCP server. Use for authentication or other
180
193
  # purposes.
181
194
  headers: nil,
@@ -206,6 +219,7 @@ module OpenAI
206
219
  authorization: String,
207
220
  connector_id:
208
221
  OpenAI::Responses::Tool::Mcp::ConnectorID::OrSymbol,
222
+ defer_loading: T::Boolean,
209
223
  headers: T.nilable(T::Hash[Symbol, String]),
210
224
  require_approval:
211
225
  T.nilable(
@@ -16,7 +16,9 @@ module OpenAI
16
16
  #
17
17
  # - `file_search`
18
18
  # - `web_search_preview`
19
+ # - `computer`
19
20
  # - `computer_use_preview`
21
+ # - `computer_use`
20
22
  # - `code_interpreter`
21
23
  # - `image_generation`
22
24
  sig { returns(OpenAI::Responses::ToolChoiceTypes::Type::OrSymbol) }
@@ -37,7 +39,9 @@ module OpenAI
37
39
  #
38
40
  # - `file_search`
39
41
  # - `web_search_preview`
42
+ # - `computer`
40
43
  # - `computer_use_preview`
44
+ # - `computer_use`
41
45
  # - `code_interpreter`
42
46
  # - `image_generation`
43
47
  type:
@@ -59,7 +63,9 @@ module OpenAI
59
63
  #
60
64
  # - `file_search`
61
65
  # - `web_search_preview`
66
+ # - `computer`
62
67
  # - `computer_use_preview`
68
+ # - `computer_use`
63
69
  # - `code_interpreter`
64
70
  # - `image_generation`
65
71
  module Type
@@ -81,11 +87,21 @@ module OpenAI
81
87
  :web_search_preview,
82
88
  OpenAI::Responses::ToolChoiceTypes::Type::TaggedSymbol
83
89
  )
90
+ COMPUTER =
91
+ T.let(
92
+ :computer,
93
+ OpenAI::Responses::ToolChoiceTypes::Type::TaggedSymbol
94
+ )
84
95
  COMPUTER_USE_PREVIEW =
85
96
  T.let(
86
97
  :computer_use_preview,
87
98
  OpenAI::Responses::ToolChoiceTypes::Type::TaggedSymbol
88
99
  )
100
+ COMPUTER_USE =
101
+ T.let(
102
+ :computer_use,
103
+ OpenAI::Responses::ToolChoiceTypes::Type::TaggedSymbol
104
+ )
89
105
  WEB_SEARCH_PREVIEW_2025_03_11 =
90
106
  T.let(
91
107
  :web_search_preview_2025_03_11,
@@ -0,0 +1,107 @@
1
+ # typed: strong
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Responses
6
+ class ToolSearchTool < OpenAI::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(OpenAI::Responses::ToolSearchTool, OpenAI::Internal::AnyHash)
10
+ end
11
+
12
+ # The type of the tool. Always `tool_search`.
13
+ sig { returns(Symbol) }
14
+ attr_accessor :type
15
+
16
+ # Description shown to the model for a client-executed tool search tool.
17
+ sig { returns(T.nilable(String)) }
18
+ attr_accessor :description
19
+
20
+ # Whether tool search is executed by the server or by the client.
21
+ sig do
22
+ returns(
23
+ T.nilable(OpenAI::Responses::ToolSearchTool::Execution::OrSymbol)
24
+ )
25
+ end
26
+ attr_reader :execution
27
+
28
+ sig do
29
+ params(
30
+ execution: OpenAI::Responses::ToolSearchTool::Execution::OrSymbol
31
+ ).void
32
+ end
33
+ attr_writer :execution
34
+
35
+ # Parameter schema for a client-executed tool search tool.
36
+ sig { returns(T.nilable(T.anything)) }
37
+ attr_accessor :parameters
38
+
39
+ # Hosted or BYOT tool search configuration for deferred tools.
40
+ sig do
41
+ params(
42
+ description: T.nilable(String),
43
+ execution: OpenAI::Responses::ToolSearchTool::Execution::OrSymbol,
44
+ parameters: T.nilable(T.anything),
45
+ type: Symbol
46
+ ).returns(T.attached_class)
47
+ end
48
+ def self.new(
49
+ # Description shown to the model for a client-executed tool search tool.
50
+ description: nil,
51
+ # Whether tool search is executed by the server or by the client.
52
+ execution: nil,
53
+ # Parameter schema for a client-executed tool search tool.
54
+ parameters: nil,
55
+ # The type of the tool. Always `tool_search`.
56
+ type: :tool_search
57
+ )
58
+ end
59
+
60
+ sig do
61
+ override.returns(
62
+ {
63
+ type: Symbol,
64
+ description: T.nilable(String),
65
+ execution: OpenAI::Responses::ToolSearchTool::Execution::OrSymbol,
66
+ parameters: T.nilable(T.anything)
67
+ }
68
+ )
69
+ end
70
+ def to_hash
71
+ end
72
+
73
+ # Whether tool search is executed by the server or by the client.
74
+ module Execution
75
+ extend OpenAI::Internal::Type::Enum
76
+
77
+ TaggedSymbol =
78
+ T.type_alias do
79
+ T.all(Symbol, OpenAI::Responses::ToolSearchTool::Execution)
80
+ end
81
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
82
+
83
+ SERVER =
84
+ T.let(
85
+ :server,
86
+ OpenAI::Responses::ToolSearchTool::Execution::TaggedSymbol
87
+ )
88
+ CLIENT =
89
+ T.let(
90
+ :client,
91
+ OpenAI::Responses::ToolSearchTool::Execution::TaggedSymbol
92
+ )
93
+
94
+ sig do
95
+ override.returns(
96
+ T::Array[
97
+ OpenAI::Responses::ToolSearchTool::Execution::TaggedSymbol
98
+ ]
99
+ )
100
+ end
101
+ def self.values
102
+ end
103
+ end
104
+ end
105
+ end
106
+ end
107
+ end
@@ -17,6 +17,27 @@ module OpenAI
17
17
  sig { returns(OpenAI::Responses::WebSearchPreviewTool::Type::OrSymbol) }
18
18
  attr_accessor :type
19
19
 
20
+ sig do
21
+ returns(
22
+ T.nilable(
23
+ T::Array[
24
+ OpenAI::Responses::WebSearchPreviewTool::SearchContentType::OrSymbol
25
+ ]
26
+ )
27
+ )
28
+ end
29
+ attr_reader :search_content_types
30
+
31
+ sig do
32
+ params(
33
+ search_content_types:
34
+ T::Array[
35
+ OpenAI::Responses::WebSearchPreviewTool::SearchContentType::OrSymbol
36
+ ]
37
+ ).void
38
+ end
39
+ attr_writer :search_content_types
40
+
20
41
  # High level guidance for the amount of context window space to use for the
21
42
  # search. One of `low`, `medium`, or `high`. `medium` is the default.
22
43
  sig do
@@ -60,6 +81,10 @@ module OpenAI
60
81
  sig do
61
82
  params(
62
83
  type: OpenAI::Responses::WebSearchPreviewTool::Type::OrSymbol,
84
+ search_content_types:
85
+ T::Array[
86
+ OpenAI::Responses::WebSearchPreviewTool::SearchContentType::OrSymbol
87
+ ],
63
88
  search_context_size:
64
89
  OpenAI::Responses::WebSearchPreviewTool::SearchContextSize::OrSymbol,
65
90
  user_location:
@@ -72,6 +97,7 @@ module OpenAI
72
97
  # The type of the web search tool. One of `web_search_preview` or
73
98
  # `web_search_preview_2025_03_11`.
74
99
  type:,
100
+ search_content_types: nil,
75
101
  # High level guidance for the amount of context window space to use for the
76
102
  # search. One of `low`, `medium`, or `high`. `medium` is the default.
77
103
  search_context_size: nil,
@@ -84,6 +110,10 @@ module OpenAI
84
110
  override.returns(
85
111
  {
86
112
  type: OpenAI::Responses::WebSearchPreviewTool::Type::OrSymbol,
113
+ search_content_types:
114
+ T::Array[
115
+ OpenAI::Responses::WebSearchPreviewTool::SearchContentType::OrSymbol
116
+ ],
87
117
  search_context_size:
88
118
  OpenAI::Responses::WebSearchPreviewTool::SearchContextSize::OrSymbol,
89
119
  user_location:
@@ -127,6 +157,40 @@ module OpenAI
127
157
  end
128
158
  end
129
159
 
160
+ module SearchContentType
161
+ extend OpenAI::Internal::Type::Enum
162
+
163
+ TaggedSymbol =
164
+ T.type_alias do
165
+ T.all(
166
+ Symbol,
167
+ OpenAI::Responses::WebSearchPreviewTool::SearchContentType
168
+ )
169
+ end
170
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
171
+
172
+ TEXT =
173
+ T.let(
174
+ :text,
175
+ OpenAI::Responses::WebSearchPreviewTool::SearchContentType::TaggedSymbol
176
+ )
177
+ IMAGE =
178
+ T.let(
179
+ :image,
180
+ OpenAI::Responses::WebSearchPreviewTool::SearchContentType::TaggedSymbol
181
+ )
182
+
183
+ sig do
184
+ override.returns(
185
+ T::Array[
186
+ OpenAI::Responses::WebSearchPreviewTool::SearchContentType::TaggedSymbol
187
+ ]
188
+ )
189
+ end
190
+ def self.values
191
+ end
192
+ end
193
+
130
194
  # High level guidance for the amount of context window space to use for the
131
195
  # search. One of `low`, `medium`, or `high`. `medium` is the default.
132
196
  module SearchContextSize
@@ -11,15 +11,23 @@ module OpenAI
11
11
  T.any(OpenAI::SkillDeleteParams, OpenAI::Internal::AnyHash)
12
12
  end
13
13
 
14
+ sig { returns(String) }
15
+ attr_accessor :skill_id
16
+
14
17
  sig do
15
- params(request_options: OpenAI::RequestOptions::OrHash).returns(
16
- T.attached_class
17
- )
18
+ params(
19
+ skill_id: String,
20
+ request_options: OpenAI::RequestOptions::OrHash
21
+ ).returns(T.attached_class)
18
22
  end
19
- def self.new(request_options: {})
23
+ def self.new(skill_id:, request_options: {})
20
24
  end
21
25
 
22
- sig { override.returns({ request_options: OpenAI::RequestOptions }) }
26
+ sig do
27
+ override.returns(
28
+ { skill_id: String, request_options: OpenAI::RequestOptions }
29
+ )
30
+ end
23
31
  def to_hash
24
32
  end
25
33
  end
@@ -11,15 +11,23 @@ module OpenAI
11
11
  T.any(OpenAI::SkillRetrieveParams, OpenAI::Internal::AnyHash)
12
12
  end
13
13
 
14
+ sig { returns(String) }
15
+ attr_accessor :skill_id
16
+
14
17
  sig do
15
- params(request_options: OpenAI::RequestOptions::OrHash).returns(
16
- T.attached_class
17
- )
18
+ params(
19
+ skill_id: String,
20
+ request_options: OpenAI::RequestOptions::OrHash
21
+ ).returns(T.attached_class)
18
22
  end
19
- def self.new(request_options: {})
23
+ def self.new(skill_id:, request_options: {})
20
24
  end
21
25
 
22
- sig { override.returns({ request_options: OpenAI::RequestOptions }) }
26
+ sig do
27
+ override.returns(
28
+ { skill_id: String, request_options: OpenAI::RequestOptions }
29
+ )
30
+ end
23
31
  def to_hash
24
32
  end
25
33
  end
@@ -11,17 +11,22 @@ module OpenAI
11
11
  T.any(OpenAI::SkillUpdateParams, OpenAI::Internal::AnyHash)
12
12
  end
13
13
 
14
+ sig { returns(String) }
15
+ attr_accessor :skill_id
16
+
14
17
  # The skill version number to set as default.
15
18
  sig { returns(String) }
16
19
  attr_accessor :default_version
17
20
 
18
21
  sig do
19
22
  params(
23
+ skill_id: String,
20
24
  default_version: String,
21
25
  request_options: OpenAI::RequestOptions::OrHash
22
26
  ).returns(T.attached_class)
23
27
  end
24
28
  def self.new(
29
+ skill_id:,
25
30
  # The skill version number to set as default.
26
31
  default_version:,
27
32
  request_options: {}
@@ -30,7 +35,11 @@ module OpenAI
30
35
 
31
36
  sig do
32
37
  override.returns(
33
- { default_version: String, request_options: OpenAI::RequestOptions }
38
+ {
39
+ skill_id: String,
40
+ default_version: String,
41
+ request_options: OpenAI::RequestOptions
42
+ }
34
43
  )
35
44
  end
36
45
  def to_hash
@@ -15,15 +15,23 @@ module OpenAI
15
15
  )
16
16
  end
17
17
 
18
+ sig { returns(String) }
19
+ attr_accessor :skill_id
20
+
18
21
  sig do
19
- params(request_options: OpenAI::RequestOptions::OrHash).returns(
20
- T.attached_class
21
- )
22
+ params(
23
+ skill_id: String,
24
+ request_options: OpenAI::RequestOptions::OrHash
25
+ ).returns(T.attached_class)
22
26
  end
23
- def self.new(request_options: {})
27
+ def self.new(skill_id:, request_options: {})
24
28
  end
25
29
 
26
- sig { override.returns({ request_options: OpenAI::RequestOptions }) }
30
+ sig do
31
+ override.returns(
32
+ { skill_id: String, request_options: OpenAI::RequestOptions }
33
+ )
34
+ end
27
35
  def to_hash
28
36
  end
29
37
  end
@@ -15,6 +15,9 @@ module OpenAI
15
15
  )
16
16
  end
17
17
 
18
+ sig { returns(String) }
19
+ attr_accessor :skill_id
20
+
18
21
  # Whether to set this version as the default.
19
22
  sig { returns(T.nilable(T::Boolean)) }
20
23
  attr_reader :default
@@ -39,12 +42,14 @@ module OpenAI
39
42
 
40
43
  sig do
41
44
  params(
45
+ skill_id: String,
42
46
  default: T::Boolean,
43
47
  files: OpenAI::Skills::VersionCreateParams::Files::Variants,
44
48
  request_options: OpenAI::RequestOptions::OrHash
45
49
  ).returns(T.attached_class)
46
50
  end
47
51
  def self.new(
52
+ skill_id:,
48
53
  # Whether to set this version as the default.
49
54
  default: nil,
50
55
  # Skill files to upload (directory upload) or a single zip file.
@@ -56,6 +61,7 @@ module OpenAI
56
61
  sig do
57
62
  override.returns(
58
63
  {
64
+ skill_id: String,
59
65
  default: T::Boolean,
60
66
  files: OpenAI::Skills::VersionCreateParams::Files::Variants,
61
67
  request_options: OpenAI::RequestOptions
@@ -18,18 +18,32 @@ module OpenAI
18
18
  sig { returns(String) }
19
19
  attr_accessor :skill_id
20
20
 
21
+ # The skill version number.
22
+ sig { returns(String) }
23
+ attr_accessor :version
24
+
21
25
  sig do
22
26
  params(
23
27
  skill_id: String,
28
+ version: String,
24
29
  request_options: OpenAI::RequestOptions::OrHash
25
30
  ).returns(T.attached_class)
26
31
  end
27
- def self.new(skill_id:, request_options: {})
32
+ def self.new(
33
+ skill_id:,
34
+ # The skill version number.
35
+ version:,
36
+ request_options: {}
37
+ )
28
38
  end
29
39
 
30
40
  sig do
31
41
  override.returns(
32
- { skill_id: String, request_options: OpenAI::RequestOptions }
42
+ {
43
+ skill_id: String,
44
+ version: String,
45
+ request_options: OpenAI::RequestOptions
46
+ }
33
47
  )
34
48
  end
35
49
  def to_hash
@@ -12,6 +12,9 @@ module OpenAI
12
12
  T.any(OpenAI::Skills::VersionListParams, OpenAI::Internal::AnyHash)
13
13
  end
14
14
 
15
+ sig { returns(String) }
16
+ attr_accessor :skill_id
17
+
15
18
  # The skill version ID to start after.
16
19
  sig { returns(T.nilable(String)) }
17
20
  attr_reader :after
@@ -39,6 +42,7 @@ module OpenAI
39
42
 
40
43
  sig do
41
44
  params(
45
+ skill_id: String,
42
46
  after: String,
43
47
  limit: Integer,
44
48
  order: OpenAI::Skills::VersionListParams::Order::OrSymbol,
@@ -46,6 +50,7 @@ module OpenAI
46
50
  ).returns(T.attached_class)
47
51
  end
48
52
  def self.new(
53
+ skill_id:,
49
54
  # The skill version ID to start after.
50
55
  after: nil,
51
56
  # Number of versions to retrieve.
@@ -59,6 +64,7 @@ module OpenAI
59
64
  sig do
60
65
  override.returns(
61
66
  {
67
+ skill_id: String,
62
68
  after: String,
63
69
  limit: Integer,
64
70
  order: OpenAI::Skills::VersionListParams::Order::OrSymbol,
@@ -18,18 +18,32 @@ module OpenAI
18
18
  sig { returns(String) }
19
19
  attr_accessor :skill_id
20
20
 
21
+ # The version number to retrieve.
22
+ sig { returns(String) }
23
+ attr_accessor :version
24
+
21
25
  sig do
22
26
  params(
23
27
  skill_id: String,
28
+ version: String,
24
29
  request_options: OpenAI::RequestOptions::OrHash
25
30
  ).returns(T.attached_class)
26
31
  end
27
- def self.new(skill_id:, request_options: {})
32
+ def self.new(
33
+ skill_id:,
34
+ # The version number to retrieve.
35
+ version:,
36
+ request_options: {}
37
+ )
28
38
  end
29
39
 
30
40
  sig do
31
41
  override.returns(
32
- { skill_id: String, request_options: OpenAI::RequestOptions }
42
+ {
43
+ skill_id: String,
44
+ version: String,
45
+ request_options: OpenAI::RequestOptions
46
+ }
33
47
  )
34
48
  end
35
49
  def to_hash
@@ -19,18 +19,32 @@ module OpenAI
19
19
  sig { returns(String) }
20
20
  attr_accessor :skill_id
21
21
 
22
+ # The skill version number.
23
+ sig { returns(String) }
24
+ attr_accessor :version
25
+
22
26
  sig do
23
27
  params(
24
28
  skill_id: String,
29
+ version: String,
25
30
  request_options: OpenAI::RequestOptions::OrHash
26
31
  ).returns(T.attached_class)
27
32
  end
28
- def self.new(skill_id:, request_options: {})
33
+ def self.new(
34
+ skill_id:,
35
+ # The skill version number.
36
+ version:,
37
+ request_options: {}
38
+ )
29
39
  end
30
40
 
31
41
  sig do
32
42
  override.returns(
33
- { skill_id: String, request_options: OpenAI::RequestOptions }
43
+ {
44
+ skill_id: String,
45
+ version: String,
46
+ request_options: OpenAI::RequestOptions
47
+ }
34
48
  )
35
49
  end
36
50
  def to_hash
@@ -11,15 +11,23 @@ module OpenAI
11
11
  T.any(OpenAI::UploadCancelParams, OpenAI::Internal::AnyHash)
12
12
  end
13
13
 
14
+ sig { returns(String) }
15
+ attr_accessor :upload_id
16
+
14
17
  sig do
15
- params(request_options: OpenAI::RequestOptions::OrHash).returns(
16
- T.attached_class
17
- )
18
+ params(
19
+ upload_id: String,
20
+ request_options: OpenAI::RequestOptions::OrHash
21
+ ).returns(T.attached_class)
18
22
  end
19
- def self.new(request_options: {})
23
+ def self.new(upload_id:, request_options: {})
20
24
  end
21
25
 
22
- sig { override.returns({ request_options: OpenAI::RequestOptions }) }
26
+ sig do
27
+ override.returns(
28
+ { upload_id: String, request_options: OpenAI::RequestOptions }
29
+ )
30
+ end
23
31
  def to_hash
24
32
  end
25
33
  end
@@ -11,6 +11,9 @@ module OpenAI
11
11
  T.any(OpenAI::UploadCompleteParams, OpenAI::Internal::AnyHash)
12
12
  end
13
13
 
14
+ sig { returns(String) }
15
+ attr_accessor :upload_id
16
+
14
17
  # The ordered list of Part IDs.
15
18
  sig { returns(T::Array[String]) }
16
19
  attr_accessor :part_ids
@@ -25,12 +28,14 @@ module OpenAI
25
28
 
26
29
  sig do
27
30
  params(
31
+ upload_id: String,
28
32
  part_ids: T::Array[String],
29
33
  md5: String,
30
34
  request_options: OpenAI::RequestOptions::OrHash
31
35
  ).returns(T.attached_class)
32
36
  end
33
37
  def self.new(
38
+ upload_id:,
34
39
  # The ordered list of Part IDs.
35
40
  part_ids:,
36
41
  # The optional md5 checksum for the file contents to verify if the bytes uploaded
@@ -43,6 +48,7 @@ module OpenAI
43
48
  sig do
44
49
  override.returns(
45
50
  {
51
+ upload_id: String,
46
52
  part_ids: T::Array[String],
47
53
  md5: String,
48
54
  request_options: OpenAI::RequestOptions