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
@@ -16,6 +16,22 @@ module OpenAI
16
16
  sig { returns(Symbol) }
17
17
  attr_accessor :type
18
18
 
19
+ # The detail level of the file to be sent to the model. One of `high` or `low`.
20
+ # Defaults to `high`.
21
+ sig do
22
+ returns(
23
+ T.nilable(OpenAI::Responses::ResponseInputFile::Detail::OrSymbol)
24
+ )
25
+ end
26
+ attr_reader :detail
27
+
28
+ sig do
29
+ params(
30
+ detail: OpenAI::Responses::ResponseInputFile::Detail::OrSymbol
31
+ ).void
32
+ end
33
+ attr_writer :detail
34
+
19
35
  # The content of the file to be sent to the model.
20
36
  sig { returns(T.nilable(String)) }
21
37
  attr_reader :file_data
@@ -44,6 +60,7 @@ module OpenAI
44
60
  # A file input to the model.
45
61
  sig do
46
62
  params(
63
+ detail: OpenAI::Responses::ResponseInputFile::Detail::OrSymbol,
47
64
  file_data: String,
48
65
  file_id: T.nilable(String),
49
66
  file_url: String,
@@ -52,6 +69,9 @@ module OpenAI
52
69
  ).returns(T.attached_class)
53
70
  end
54
71
  def self.new(
72
+ # The detail level of the file to be sent to the model. One of `high` or `low`.
73
+ # Defaults to `high`.
74
+ detail: nil,
55
75
  # The content of the file to be sent to the model.
56
76
  file_data: nil,
57
77
  # The ID of the file to be sent to the model.
@@ -69,6 +89,7 @@ module OpenAI
69
89
  override.returns(
70
90
  {
71
91
  type: Symbol,
92
+ detail: OpenAI::Responses::ResponseInputFile::Detail::OrSymbol,
72
93
  file_data: String,
73
94
  file_id: T.nilable(String),
74
95
  file_url: String,
@@ -78,6 +99,39 @@ module OpenAI
78
99
  end
79
100
  def to_hash
80
101
  end
102
+
103
+ # The detail level of the file to be sent to the model. One of `high` or `low`.
104
+ # Defaults to `high`.
105
+ module Detail
106
+ extend OpenAI::Internal::Type::Enum
107
+
108
+ TaggedSymbol =
109
+ T.type_alias do
110
+ T.all(Symbol, OpenAI::Responses::ResponseInputFile::Detail)
111
+ end
112
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
113
+
114
+ LOW =
115
+ T.let(
116
+ :low,
117
+ OpenAI::Responses::ResponseInputFile::Detail::TaggedSymbol
118
+ )
119
+ HIGH =
120
+ T.let(
121
+ :high,
122
+ OpenAI::Responses::ResponseInputFile::Detail::TaggedSymbol
123
+ )
124
+
125
+ sig do
126
+ override.returns(
127
+ T::Array[
128
+ OpenAI::Responses::ResponseInputFile::Detail::TaggedSymbol
129
+ ]
130
+ )
131
+ end
132
+ def self.values
133
+ end
134
+ end
81
135
  end
82
136
  end
83
137
  end
@@ -16,6 +16,25 @@ module OpenAI
16
16
  sig { returns(Symbol) }
17
17
  attr_accessor :type
18
18
 
19
+ # The detail level of the file to be sent to the model. One of `high` or `low`.
20
+ # Defaults to `high`.
21
+ sig do
22
+ returns(
23
+ T.nilable(
24
+ OpenAI::Responses::ResponseInputFileContent::Detail::OrSymbol
25
+ )
26
+ )
27
+ end
28
+ attr_reader :detail
29
+
30
+ sig do
31
+ params(
32
+ detail:
33
+ OpenAI::Responses::ResponseInputFileContent::Detail::OrSymbol
34
+ ).void
35
+ end
36
+ attr_writer :detail
37
+
19
38
  # The base64-encoded data of the file to be sent to the model.
20
39
  sig { returns(T.nilable(String)) }
21
40
  attr_accessor :file_data
@@ -35,6 +54,8 @@ module OpenAI
35
54
  # A file input to the model.
36
55
  sig do
37
56
  params(
57
+ detail:
58
+ OpenAI::Responses::ResponseInputFileContent::Detail::OrSymbol,
38
59
  file_data: T.nilable(String),
39
60
  file_id: T.nilable(String),
40
61
  file_url: T.nilable(String),
@@ -43,6 +64,9 @@ module OpenAI
43
64
  ).returns(T.attached_class)
44
65
  end
45
66
  def self.new(
67
+ # The detail level of the file to be sent to the model. One of `high` or `low`.
68
+ # Defaults to `high`.
69
+ detail: nil,
46
70
  # The base64-encoded data of the file to be sent to the model.
47
71
  file_data: nil,
48
72
  # The ID of the file to be sent to the model.
@@ -60,6 +84,8 @@ module OpenAI
60
84
  override.returns(
61
85
  {
62
86
  type: Symbol,
87
+ detail:
88
+ OpenAI::Responses::ResponseInputFileContent::Detail::OrSymbol,
63
89
  file_data: T.nilable(String),
64
90
  file_id: T.nilable(String),
65
91
  file_url: T.nilable(String),
@@ -69,6 +95,39 @@ module OpenAI
69
95
  end
70
96
  def to_hash
71
97
  end
98
+
99
+ # The detail level of the file to be sent to the model. One of `high` or `low`.
100
+ # Defaults to `high`.
101
+ module Detail
102
+ extend OpenAI::Internal::Type::Enum
103
+
104
+ TaggedSymbol =
105
+ T.type_alias do
106
+ T.all(Symbol, OpenAI::Responses::ResponseInputFileContent::Detail)
107
+ end
108
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
109
+
110
+ HIGH =
111
+ T.let(
112
+ :high,
113
+ OpenAI::Responses::ResponseInputFileContent::Detail::TaggedSymbol
114
+ )
115
+ LOW =
116
+ T.let(
117
+ :low,
118
+ OpenAI::Responses::ResponseInputFileContent::Detail::TaggedSymbol
119
+ )
120
+
121
+ sig do
122
+ override.returns(
123
+ T::Array[
124
+ OpenAI::Responses::ResponseInputFileContent::Detail::TaggedSymbol
125
+ ]
126
+ )
127
+ end
128
+ def self.values
129
+ end
130
+ end
72
131
  end
73
132
  end
74
133
  end
@@ -12,8 +12,8 @@ module OpenAI
12
12
  )
13
13
  end
14
14
 
15
- # The detail level of the image to be sent to the model. One of `high`, `low`, or
16
- # `auto`. Defaults to `auto`.
15
+ # The detail level of the image to be sent to the model. One of `high`, `low`,
16
+ # `auto`, or `original`. Defaults to `auto`.
17
17
  sig { returns(OpenAI::Responses::ResponseInputImage::Detail::OrSymbol) }
18
18
  attr_accessor :detail
19
19
 
@@ -41,8 +41,8 @@ module OpenAI
41
41
  ).returns(T.attached_class)
42
42
  end
43
43
  def self.new(
44
- # The detail level of the image to be sent to the model. One of `high`, `low`, or
45
- # `auto`. Defaults to `auto`.
44
+ # The detail level of the image to be sent to the model. One of `high`, `low`,
45
+ # `auto`, or `original`. Defaults to `auto`.
46
46
  detail:,
47
47
  # The ID of the file to be sent to the model.
48
48
  file_id: nil,
@@ -67,8 +67,8 @@ module OpenAI
67
67
  def to_hash
68
68
  end
69
69
 
70
- # The detail level of the image to be sent to the model. One of `high`, `low`, or
71
- # `auto`. Defaults to `auto`.
70
+ # The detail level of the image to be sent to the model. One of `high`, `low`,
71
+ # `auto`, or `original`. Defaults to `auto`.
72
72
  module Detail
73
73
  extend OpenAI::Internal::Type::Enum
74
74
 
@@ -93,6 +93,11 @@ module OpenAI
93
93
  :auto,
94
94
  OpenAI::Responses::ResponseInputImage::Detail::TaggedSymbol
95
95
  )
96
+ ORIGINAL =
97
+ T.let(
98
+ :original,
99
+ OpenAI::Responses::ResponseInputImage::Detail::TaggedSymbol
100
+ )
96
101
 
97
102
  sig do
98
103
  override.returns(
@@ -16,8 +16,8 @@ module OpenAI
16
16
  sig { returns(Symbol) }
17
17
  attr_accessor :type
18
18
 
19
- # The detail level of the image to be sent to the model. One of `high`, `low`, or
20
- # `auto`. Defaults to `auto`.
19
+ # The detail level of the image to be sent to the model. One of `high`, `low`,
20
+ # `auto`, or `original`. Defaults to `auto`.
21
21
  sig do
22
22
  returns(
23
23
  T.nilable(
@@ -50,8 +50,8 @@ module OpenAI
50
50
  ).returns(T.attached_class)
51
51
  end
52
52
  def self.new(
53
- # The detail level of the image to be sent to the model. One of `high`, `low`, or
54
- # `auto`. Defaults to `auto`.
53
+ # The detail level of the image to be sent to the model. One of `high`, `low`,
54
+ # `auto`, or `original`. Defaults to `auto`.
55
55
  detail: nil,
56
56
  # The ID of the file to be sent to the model.
57
57
  file_id: nil,
@@ -79,8 +79,8 @@ module OpenAI
79
79
  def to_hash
80
80
  end
81
81
 
82
- # The detail level of the image to be sent to the model. One of `high`, `low`, or
83
- # `auto`. Defaults to `auto`.
82
+ # The detail level of the image to be sent to the model. One of `high`, `low`,
83
+ # `auto`, or `original`. Defaults to `auto`.
84
84
  module Detail
85
85
  extend OpenAI::Internal::Type::Enum
86
86
 
@@ -108,6 +108,11 @@ module OpenAI
108
108
  :auto,
109
109
  OpenAI::Responses::ResponseInputImageContent::Detail::TaggedSymbol
110
110
  )
111
+ ORIGINAL =
112
+ T.let(
113
+ :original,
114
+ OpenAI::Responses::ResponseInputImageContent::Detail::TaggedSymbol
115
+ )
111
116
 
112
117
  sig do
113
118
  override.returns(
@@ -23,6 +23,8 @@ module OpenAI
23
23
  OpenAI::Responses::ResponseFunctionWebSearch,
24
24
  OpenAI::Responses::ResponseFunctionToolCall,
25
25
  OpenAI::Responses::ResponseInputItem::FunctionCallOutput,
26
+ OpenAI::Responses::ResponseInputItem::ToolSearchCall,
27
+ OpenAI::Responses::ResponseToolSearchOutputItemParam,
26
28
  OpenAI::Responses::ResponseReasoningItem,
27
29
  OpenAI::Responses::ResponseCompactionItemParam,
28
30
  OpenAI::Responses::ResponseInputItem::ImageGenerationCall,
@@ -653,6 +655,184 @@ module OpenAI
653
655
  end
654
656
  end
655
657
 
658
+ class ToolSearchCall < OpenAI::Internal::Type::BaseModel
659
+ OrHash =
660
+ T.type_alias do
661
+ T.any(
662
+ OpenAI::Responses::ResponseInputItem::ToolSearchCall,
663
+ OpenAI::Internal::AnyHash
664
+ )
665
+ end
666
+
667
+ # The arguments supplied to the tool search call.
668
+ sig { returns(T.anything) }
669
+ attr_accessor :arguments
670
+
671
+ # The item type. Always `tool_search_call`.
672
+ sig { returns(Symbol) }
673
+ attr_accessor :type
674
+
675
+ # The unique ID of this tool search call.
676
+ sig { returns(T.nilable(String)) }
677
+ attr_accessor :id
678
+
679
+ # The unique ID of the tool search call generated by the model.
680
+ sig { returns(T.nilable(String)) }
681
+ attr_accessor :call_id
682
+
683
+ # Whether tool search was executed by the server or by the client.
684
+ sig do
685
+ returns(
686
+ T.nilable(
687
+ OpenAI::Responses::ResponseInputItem::ToolSearchCall::Execution::OrSymbol
688
+ )
689
+ )
690
+ end
691
+ attr_reader :execution
692
+
693
+ sig do
694
+ params(
695
+ execution:
696
+ OpenAI::Responses::ResponseInputItem::ToolSearchCall::Execution::OrSymbol
697
+ ).void
698
+ end
699
+ attr_writer :execution
700
+
701
+ # The status of the tool search call.
702
+ sig do
703
+ returns(
704
+ T.nilable(
705
+ OpenAI::Responses::ResponseInputItem::ToolSearchCall::Status::OrSymbol
706
+ )
707
+ )
708
+ end
709
+ attr_accessor :status
710
+
711
+ sig do
712
+ params(
713
+ arguments: T.anything,
714
+ id: T.nilable(String),
715
+ call_id: T.nilable(String),
716
+ execution:
717
+ OpenAI::Responses::ResponseInputItem::ToolSearchCall::Execution::OrSymbol,
718
+ status:
719
+ T.nilable(
720
+ OpenAI::Responses::ResponseInputItem::ToolSearchCall::Status::OrSymbol
721
+ ),
722
+ type: Symbol
723
+ ).returns(T.attached_class)
724
+ end
725
+ def self.new(
726
+ # The arguments supplied to the tool search call.
727
+ arguments:,
728
+ # The unique ID of this tool search call.
729
+ id: nil,
730
+ # The unique ID of the tool search call generated by the model.
731
+ call_id: nil,
732
+ # Whether tool search was executed by the server or by the client.
733
+ execution: nil,
734
+ # The status of the tool search call.
735
+ status: nil,
736
+ # The item type. Always `tool_search_call`.
737
+ type: :tool_search_call
738
+ )
739
+ end
740
+
741
+ sig do
742
+ override.returns(
743
+ {
744
+ arguments: T.anything,
745
+ type: Symbol,
746
+ id: T.nilable(String),
747
+ call_id: T.nilable(String),
748
+ execution:
749
+ OpenAI::Responses::ResponseInputItem::ToolSearchCall::Execution::OrSymbol,
750
+ status:
751
+ T.nilable(
752
+ OpenAI::Responses::ResponseInputItem::ToolSearchCall::Status::OrSymbol
753
+ )
754
+ }
755
+ )
756
+ end
757
+ def to_hash
758
+ end
759
+
760
+ # Whether tool search was executed by the server or by the client.
761
+ module Execution
762
+ extend OpenAI::Internal::Type::Enum
763
+
764
+ TaggedSymbol =
765
+ T.type_alias do
766
+ T.all(
767
+ Symbol,
768
+ OpenAI::Responses::ResponseInputItem::ToolSearchCall::Execution
769
+ )
770
+ end
771
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
772
+
773
+ SERVER =
774
+ T.let(
775
+ :server,
776
+ OpenAI::Responses::ResponseInputItem::ToolSearchCall::Execution::TaggedSymbol
777
+ )
778
+ CLIENT =
779
+ T.let(
780
+ :client,
781
+ OpenAI::Responses::ResponseInputItem::ToolSearchCall::Execution::TaggedSymbol
782
+ )
783
+
784
+ sig do
785
+ override.returns(
786
+ T::Array[
787
+ OpenAI::Responses::ResponseInputItem::ToolSearchCall::Execution::TaggedSymbol
788
+ ]
789
+ )
790
+ end
791
+ def self.values
792
+ end
793
+ end
794
+
795
+ # The status of the tool search call.
796
+ module Status
797
+ extend OpenAI::Internal::Type::Enum
798
+
799
+ TaggedSymbol =
800
+ T.type_alias do
801
+ T.all(
802
+ Symbol,
803
+ OpenAI::Responses::ResponseInputItem::ToolSearchCall::Status
804
+ )
805
+ end
806
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
807
+
808
+ IN_PROGRESS =
809
+ T.let(
810
+ :in_progress,
811
+ OpenAI::Responses::ResponseInputItem::ToolSearchCall::Status::TaggedSymbol
812
+ )
813
+ COMPLETED =
814
+ T.let(
815
+ :completed,
816
+ OpenAI::Responses::ResponseInputItem::ToolSearchCall::Status::TaggedSymbol
817
+ )
818
+ INCOMPLETE =
819
+ T.let(
820
+ :incomplete,
821
+ OpenAI::Responses::ResponseInputItem::ToolSearchCall::Status::TaggedSymbol
822
+ )
823
+
824
+ sig do
825
+ override.returns(
826
+ T::Array[
827
+ OpenAI::Responses::ResponseInputItem::ToolSearchCall::Status::TaggedSymbol
828
+ ]
829
+ )
830
+ end
831
+ def self.values
832
+ end
833
+ end
834
+ end
835
+
656
836
  class ImageGenerationCall < OpenAI::Internal::Type::BaseModel
657
837
  OrHash =
658
838
  T.type_alias do
@@ -18,6 +18,8 @@ module OpenAI
18
18
  OpenAI::Responses::ResponseFunctionWebSearch,
19
19
  OpenAI::Responses::ResponseFunctionToolCallItem,
20
20
  OpenAI::Responses::ResponseFunctionToolCallOutputItem,
21
+ OpenAI::Responses::ResponseToolSearchCall,
22
+ OpenAI::Responses::ResponseToolSearchOutputItem,
21
23
  OpenAI::Responses::ResponseItem::ImageGenerationCall,
22
24
  OpenAI::Responses::ResponseCodeInterpreterToolCall,
23
25
  OpenAI::Responses::ResponseItem::LocalShellCall,
@@ -48,6 +48,8 @@ module OpenAI
48
48
  OpenAI::Responses::ResponseFunctionWebSearch::OrHash,
49
49
  OpenAI::Responses::ResponseFunctionToolCallItem::OrHash,
50
50
  OpenAI::Responses::ResponseFunctionToolCallOutputItem::OrHash,
51
+ OpenAI::Responses::ResponseToolSearchCall::OrHash,
52
+ OpenAI::Responses::ResponseToolSearchOutputItem::OrHash,
51
53
  OpenAI::Responses::ResponseItem::ImageGenerationCall::OrHash,
52
54
  OpenAI::Responses::ResponseCodeInterpreterToolCall::OrHash,
53
55
  OpenAI::Responses::ResponseItem::LocalShellCall::OrHash,
@@ -16,6 +16,8 @@ module OpenAI
16
16
  OpenAI::Responses::ResponseFunctionWebSearch,
17
17
  OpenAI::Responses::ResponseComputerToolCall,
18
18
  OpenAI::Responses::ResponseReasoningItem,
19
+ OpenAI::Responses::ResponseToolSearchCall,
20
+ OpenAI::Responses::ResponseToolSearchOutputItem,
19
21
  OpenAI::Responses::ResponseCompactionItem,
20
22
  OpenAI::Responses::ResponseOutputItem::ImageGenerationCall,
21
23
  OpenAI::Responses::ResponseCodeInterpreterToolCall,
@@ -39,6 +39,8 @@ module OpenAI
39
39
  OpenAI::Responses::ResponseFunctionWebSearch::OrHash,
40
40
  OpenAI::Responses::ResponseComputerToolCall::OrHash,
41
41
  OpenAI::Responses::ResponseReasoningItem::OrHash,
42
+ OpenAI::Responses::ResponseToolSearchCall::OrHash,
43
+ OpenAI::Responses::ResponseToolSearchOutputItem::OrHash,
42
44
  OpenAI::Responses::ResponseCompactionItem::OrHash,
43
45
  OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::OrHash,
44
46
  OpenAI::Responses::ResponseCodeInterpreterToolCall::OrHash,
@@ -39,6 +39,8 @@ module OpenAI
39
39
  OpenAI::Responses::ResponseFunctionWebSearch::OrHash,
40
40
  OpenAI::Responses::ResponseComputerToolCall::OrHash,
41
41
  OpenAI::Responses::ResponseReasoningItem::OrHash,
42
+ OpenAI::Responses::ResponseToolSearchCall::OrHash,
43
+ OpenAI::Responses::ResponseToolSearchOutputItem::OrHash,
42
44
  OpenAI::Responses::ResponseCompactionItem::OrHash,
43
45
  OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::OrHash,
44
46
  OpenAI::Responses::ResponseCodeInterpreterToolCall::OrHash,
@@ -44,12 +44,10 @@ module OpenAI
44
44
  sig { returns(Symbol) }
45
45
  attr_accessor :type
46
46
 
47
- # The phase of an assistant message.
48
- #
49
- # Use `commentary` for an intermediate assistant message and `final_answer` for
50
- # the final assistant message. For follow-up requests with models like
51
- # `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages.
52
- # Omitting it can degrade performance. Not used for user messages.
47
+ # Labels an `assistant` message as intermediate commentary (`commentary`) or the
48
+ # final answer (`final_answer`). For models like `gpt-5.3-codex` and beyond, when
49
+ # sending follow-up requests, preserve and resend phase on all assistant messages
50
+ # dropping it can degrade performance. Not used for user messages.
53
51
  sig do
54
52
  returns(
55
53
  T.nilable(OpenAI::Responses::ResponseOutputMessage::Phase::OrSymbol)
@@ -85,12 +83,10 @@ module OpenAI
85
83
  # The status of the message input. One of `in_progress`, `completed`, or
86
84
  # `incomplete`. Populated when input items are returned via API.
87
85
  status:,
88
- # The phase of an assistant message.
89
- #
90
- # Use `commentary` for an intermediate assistant message and `final_answer` for
91
- # the final assistant message. For follow-up requests with models like
92
- # `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages.
93
- # Omitting it can degrade performance. Not used for user messages.
86
+ # Labels an `assistant` message as intermediate commentary (`commentary`) or the
87
+ # final answer (`final_answer`). For models like `gpt-5.3-codex` and beyond, when
88
+ # sending follow-up requests, preserve and resend phase on all assistant messages
89
+ # dropping it can degrade performance. Not used for user messages.
94
90
  phase: nil,
95
91
  # The role of the output message. Always `assistant`.
96
92
  role: :assistant,
@@ -185,12 +181,10 @@ module OpenAI
185
181
  end
186
182
  end
187
183
 
188
- # The phase of an assistant message.
189
- #
190
- # Use `commentary` for an intermediate assistant message and `final_answer` for
191
- # the final assistant message. For follow-up requests with models like
192
- # `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages.
193
- # Omitting it can degrade performance. Not used for user messages.
184
+ # Labels an `assistant` message as intermediate commentary (`commentary`) or the
185
+ # final answer (`final_answer`). For models like `gpt-5.3-codex` and beyond, when
186
+ # sending follow-up requests, preserve and resend phase on all assistant messages
187
+ # dropping it can degrade performance. Not used for user messages.
194
188
  module Phase
195
189
  extend OpenAI::Internal::Type::Enum
196
190
 
@@ -15,6 +15,9 @@ module OpenAI
15
15
  )
16
16
  end
17
17
 
18
+ sig { returns(String) }
19
+ attr_accessor :response_id
20
+
18
21
  # Additional fields to include in the response. See the `include` parameter for
19
22
  # Response creation above for more information.
20
23
  sig do
@@ -52,6 +55,7 @@ module OpenAI
52
55
 
53
56
  sig do
54
57
  params(
58
+ response_id: String,
55
59
  include: T::Array[OpenAI::Responses::ResponseIncludable::OrSymbol],
56
60
  include_obfuscation: T::Boolean,
57
61
  starting_after: Integer,
@@ -59,6 +63,7 @@ module OpenAI
59
63
  ).returns(T.attached_class)
60
64
  end
61
65
  def self.new(
66
+ response_id:,
62
67
  # Additional fields to include in the response. See the `include` parameter for
63
68
  # Response creation above for more information.
64
69
  include: nil,
@@ -78,6 +83,7 @@ module OpenAI
78
83
  sig do
79
84
  override.returns(
80
85
  {
86
+ response_id: String,
81
87
  include:
82
88
  T::Array[OpenAI::Responses::ResponseIncludable::OrSymbol],
83
89
  include_obfuscation: T::Boolean,