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
@@ -4,57 +4,17 @@ module OpenAI
4
4
  module Models
5
5
  module Responses
6
6
  class ComputerTool < OpenAI::Internal::Type::BaseModel
7
- # @!attribute display_height
8
- # The height of the computer display.
9
- #
10
- # @return [Integer]
11
- required :display_height, Integer
12
-
13
- # @!attribute display_width
14
- # The width of the computer display.
15
- #
16
- # @return [Integer]
17
- required :display_width, Integer
18
-
19
- # @!attribute environment
20
- # The type of computer environment to control.
21
- #
22
- # @return [Symbol, OpenAI::Models::Responses::ComputerTool::Environment]
23
- required :environment, enum: -> { OpenAI::Responses::ComputerTool::Environment }
24
-
25
7
  # @!attribute type
26
- # The type of the computer use tool. Always `computer_use_preview`.
8
+ # The type of the computer tool. Always `computer`.
27
9
  #
28
- # @return [Symbol, :computer_use_preview]
29
- required :type, const: :computer_use_preview
10
+ # @return [Symbol, :computer]
11
+ required :type, const: :computer
30
12
 
31
- # @!method initialize(display_height:, display_width:, environment:, type: :computer_use_preview)
13
+ # @!method initialize(type: :computer)
32
14
  # A tool that controls a virtual computer. Learn more about the
33
15
  # [computer tool](https://platform.openai.com/docs/guides/tools-computer-use).
34
16
  #
35
- # @param display_height [Integer] The height of the computer display.
36
- #
37
- # @param display_width [Integer] The width of the computer display.
38
- #
39
- # @param environment [Symbol, OpenAI::Models::Responses::ComputerTool::Environment] The type of computer environment to control.
40
- #
41
- # @param type [Symbol, :computer_use_preview] The type of the computer use tool. Always `computer_use_preview`.
42
-
43
- # The type of computer environment to control.
44
- #
45
- # @see OpenAI::Models::Responses::ComputerTool#environment
46
- module Environment
47
- extend OpenAI::Internal::Type::Enum
48
-
49
- WINDOWS = :windows
50
- MAC = :mac
51
- LINUX = :linux
52
- UBUNTU = :ubuntu
53
- BROWSER = :browser
54
-
55
- # @!method self.values
56
- # @return [Array<Symbol>]
57
- end
17
+ # @param type [Symbol, :computer] The type of the computer tool. Always `computer`.
58
18
  end
59
19
  end
60
20
  end
@@ -0,0 +1,61 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Responses
6
+ class ComputerUsePreviewTool < OpenAI::Internal::Type::BaseModel
7
+ # @!attribute display_height
8
+ # The height of the computer display.
9
+ #
10
+ # @return [Integer]
11
+ required :display_height, Integer
12
+
13
+ # @!attribute display_width
14
+ # The width of the computer display.
15
+ #
16
+ # @return [Integer]
17
+ required :display_width, Integer
18
+
19
+ # @!attribute environment
20
+ # The type of computer environment to control.
21
+ #
22
+ # @return [Symbol, OpenAI::Models::Responses::ComputerUsePreviewTool::Environment]
23
+ required :environment, enum: -> { OpenAI::Responses::ComputerUsePreviewTool::Environment }
24
+
25
+ # @!attribute type
26
+ # The type of the computer use tool. Always `computer_use_preview`.
27
+ #
28
+ # @return [Symbol, :computer_use_preview]
29
+ required :type, const: :computer_use_preview
30
+
31
+ # @!method initialize(display_height:, display_width:, environment:, type: :computer_use_preview)
32
+ # A tool that controls a virtual computer. Learn more about the
33
+ # [computer tool](https://platform.openai.com/docs/guides/tools-computer-use).
34
+ #
35
+ # @param display_height [Integer] The height of the computer display.
36
+ #
37
+ # @param display_width [Integer] The width of the computer display.
38
+ #
39
+ # @param environment [Symbol, OpenAI::Models::Responses::ComputerUsePreviewTool::Environment] The type of computer environment to control.
40
+ #
41
+ # @param type [Symbol, :computer_use_preview] The type of the computer use tool. Always `computer_use_preview`.
42
+
43
+ # The type of computer environment to control.
44
+ #
45
+ # @see OpenAI::Models::Responses::ComputerUsePreviewTool#environment
46
+ module Environment
47
+ extend OpenAI::Internal::Type::Enum
48
+
49
+ WINDOWS = :windows
50
+ MAC = :mac
51
+ LINUX = :linux
52
+ UBUNTU = :ubuntu
53
+ BROWSER = :browser
54
+
55
+ # @!method self.values
56
+ # @return [Array<Symbol>]
57
+ end
58
+ end
59
+ end
60
+ end
61
+ end
@@ -16,6 +16,12 @@ module OpenAI
16
16
  # @return [Symbol, :custom]
17
17
  required :type, const: :custom
18
18
 
19
+ # @!attribute defer_loading
20
+ # Whether this tool should be deferred and discovered via tool search.
21
+ #
22
+ # @return [Boolean, nil]
23
+ optional :defer_loading, OpenAI::Internal::Type::Boolean
24
+
19
25
  # @!attribute description
20
26
  # Optional description of the custom tool, used to provide more context.
21
27
  #
@@ -28,12 +34,14 @@ module OpenAI
28
34
  # @return [OpenAI::Models::CustomToolInputFormat::Text, OpenAI::Models::CustomToolInputFormat::Grammar, nil]
29
35
  optional :format_, union: -> { OpenAI::CustomToolInputFormat }, api_name: :format
30
36
 
31
- # @!method initialize(name:, description: nil, format_: nil, type: :custom)
37
+ # @!method initialize(name:, defer_loading: nil, description: nil, format_: nil, type: :custom)
32
38
  # A custom tool that processes input using a specified format. Learn more about
33
39
  # [custom tools](https://platform.openai.com/docs/guides/function-calling#custom-tools)
34
40
  #
35
41
  # @param name [String] The name of the custom tool, used to identify it in tool calls.
36
42
  #
43
+ # @param defer_loading [Boolean] Whether this tool should be deferred and discovered via tool search.
44
+ #
37
45
  # @param description [String] Optional description of the custom tool, used to provide more context.
38
46
  #
39
47
  # @param format_ [OpenAI::Models::CustomToolInputFormat::Text, OpenAI::Models::CustomToolInputFormat::Grammar] The input format for the custom tool. Default is unconstrained text.
@@ -19,12 +19,10 @@ module OpenAI
19
19
  required :role, enum: -> { OpenAI::Responses::EasyInputMessage::Role }
20
20
 
21
21
  # @!attribute phase
22
- # The phase of an assistant message.
23
- #
24
- # Use `commentary` for an intermediate assistant message and `final_answer` for
25
- # the final assistant message. For follow-up requests with models like
26
- # `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages.
27
- # Omitting it can degrade performance. Not used for user messages.
22
+ # Labels an `assistant` message as intermediate commentary (`commentary`) or the
23
+ # final answer (`final_answer`). For models like `gpt-5.3-codex` and beyond, when
24
+ # sending follow-up requests, preserve and resend phase on all assistant messages
25
+ # dropping it can degrade performance. Not used for user messages.
28
26
  #
29
27
  # @return [Symbol, OpenAI::Models::Responses::EasyInputMessage::Phase, nil]
30
28
  optional :phase, enum: -> { OpenAI::Responses::EasyInputMessage::Phase }, nil?: true
@@ -49,7 +47,7 @@ module OpenAI
49
47
  #
50
48
  # @param role [Symbol, OpenAI::Models::Responses::EasyInputMessage::Role] The role of the message input. One of `user`, `assistant`, `system`, or
51
49
  #
52
- # @param phase [Symbol, OpenAI::Models::Responses::EasyInputMessage::Phase, nil] The phase of an assistant message.
50
+ # @param phase [Symbol, OpenAI::Models::Responses::EasyInputMessage::Phase, nil] Labels an `assistant` message as intermediate commentary (`commentary`) or the f
53
51
  #
54
52
  # @param type [Symbol, OpenAI::Models::Responses::EasyInputMessage::Type] The type of the message input. Always `message`.
55
53
 
@@ -87,12 +85,10 @@ module OpenAI
87
85
  # @return [Array<Symbol>]
88
86
  end
89
87
 
90
- # The phase of an assistant message.
91
- #
92
- # Use `commentary` for an intermediate assistant message and `final_answer` for
93
- # the final assistant message. For follow-up requests with models like
94
- # `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages.
95
- # Omitting it can degrade performance. Not used for user messages.
88
+ # Labels an `assistant` message as intermediate commentary (`commentary`) or the
89
+ # final answer (`final_answer`). For models like `gpt-5.3-codex` and beyond, when
90
+ # sending follow-up requests, preserve and resend phase on all assistant messages
91
+ # dropping it can degrade performance. Not used for user messages.
96
92
  #
97
93
  # @see OpenAI::Models::Responses::EasyInputMessage#phase
98
94
  module Phase
@@ -33,6 +33,12 @@ module OpenAI
33
33
  # @return [Symbol, :function]
34
34
  required :type, const: :function
35
35
 
36
+ # @!attribute defer_loading
37
+ # Whether this function is deferred and loaded via tool search.
38
+ #
39
+ # @return [Boolean, nil]
40
+ optional :defer_loading, OpenAI::Internal::Type::Boolean
41
+
36
42
  # @!attribute description
37
43
  # A description of the function. Used by the model to determine whether or not to
38
44
  # call the function.
@@ -40,7 +46,7 @@ module OpenAI
40
46
  # @return [String, nil]
41
47
  optional :description, String, nil?: true
42
48
 
43
- # @!method initialize(name:, parameters:, strict:, description: nil, type: :function)
49
+ # @!method initialize(name:, parameters:, strict:, defer_loading: nil, description: nil, type: :function)
44
50
  # Some parameter documentations has been truncated, see
45
51
  # {OpenAI::Models::Responses::FunctionTool} for more details.
46
52
  #
@@ -54,6 +60,8 @@ module OpenAI
54
60
  #
55
61
  # @param strict [Boolean, nil] Whether to enforce strict parameter validation. Default `true`.
56
62
  #
63
+ # @param defer_loading [Boolean] Whether this function is deferred and loaded via tool search.
64
+ #
57
65
  # @param description [String, nil] A description of the function. Used by the model to determine whether or not to
58
66
  #
59
67
  # @param type [Symbol, :function] The type of the function tool. Always `function`.
@@ -8,6 +8,11 @@ module OpenAI
8
8
  extend OpenAI::Internal::Type::RequestParameters::Converter
9
9
  include OpenAI::Internal::Type::RequestParameters
10
10
 
11
+ # @!attribute response_id
12
+ #
13
+ # @return [String]
14
+ required :response_id, String
15
+
11
16
  # @!attribute after
12
17
  # An item ID to list items after, used in pagination.
13
18
  #
@@ -37,10 +42,12 @@ module OpenAI
37
42
  # @return [Symbol, OpenAI::Models::Responses::InputItemListParams::Order, nil]
38
43
  optional :order, enum: -> { OpenAI::Responses::InputItemListParams::Order }
39
44
 
40
- # @!method initialize(after: nil, include: nil, limit: nil, order: nil, request_options: {})
45
+ # @!method initialize(response_id:, after: nil, include: nil, limit: nil, order: nil, request_options: {})
41
46
  # Some parameter documentations has been truncated, see
42
47
  # {OpenAI::Models::Responses::InputItemListParams} for more details.
43
48
  #
49
+ # @param response_id [String]
50
+ #
44
51
  # @param after [String] An item ID to list items after, used in pagination.
45
52
  #
46
53
  # @param include [Array<Symbol, OpenAI::Models::Responses::ResponseIncludable>] Additional fields to include in the response. See the `include`
@@ -24,7 +24,7 @@ module OpenAI
24
24
  # @!attribute input
25
25
  # Text, image, or file inputs to the model, used to generate a response
26
26
  #
27
- # @return [String, Array<OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItemParam, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ShellCall, OpenAI::Models::Responses::ResponseInputItem::ShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseCustomToolCallOutput, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference>, nil]
27
+ # @return [String, Array<OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseInputItem::ToolSearchCall, OpenAI::Models::Responses::ResponseToolSearchOutputItemParam, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItemParam, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ShellCall, OpenAI::Models::Responses::ResponseInputItem::ShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseCustomToolCallOutput, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference>, nil]
28
28
  optional :input, union: -> { OpenAI::Responses::InputTokenCountParams::Input }, nil?: true
29
29
 
30
30
  # @!attribute instructions
@@ -88,7 +88,7 @@ module OpenAI
88
88
  # An array of tools the model may call while generating a response. You can
89
89
  # specify which tool to use by setting the `tool_choice` parameter.
90
90
  #
91
- # @return [Array<OpenAI::Models::Responses::FunctionTool, OpenAI::Models::Responses::FileSearchTool, OpenAI::Models::Responses::ComputerTool, OpenAI::Models::Responses::Tool::Mcp, OpenAI::Models::Responses::Tool::CodeInterpreter, OpenAI::Models::Responses::Tool::ImageGeneration, OpenAI::Models::Responses::Tool::LocalShell, OpenAI::Models::Responses::FunctionShellTool, OpenAI::Models::Responses::CustomTool, OpenAI::Models::Responses::ApplyPatchTool, OpenAI::Models::Responses::WebSearchTool, OpenAI::Models::Responses::WebSearchPreviewTool>, nil]
91
+ # @return [Array<OpenAI::Models::Responses::FunctionTool, OpenAI::Models::Responses::FileSearchTool, OpenAI::Models::Responses::ComputerTool, OpenAI::Models::Responses::ComputerUsePreviewTool, OpenAI::Models::Responses::Tool::Mcp, OpenAI::Models::Responses::Tool::CodeInterpreter, OpenAI::Models::Responses::Tool::ImageGeneration, OpenAI::Models::Responses::Tool::LocalShell, OpenAI::Models::Responses::FunctionShellTool, OpenAI::Models::Responses::CustomTool, OpenAI::Models::Responses::NamespaceTool, OpenAI::Models::Responses::ToolSearchTool, OpenAI::Models::Responses::ApplyPatchTool, OpenAI::Models::Responses::WebSearchTool, OpenAI::Models::Responses::WebSearchPreviewTool>, nil]
92
92
  optional :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::Tool] }, nil?: true
93
93
 
94
94
  # @!attribute truncation
@@ -107,7 +107,7 @@ module OpenAI
107
107
  #
108
108
  # @param conversation [String, OpenAI::Models::Responses::ResponseConversationParam, nil] The conversation that this response belongs to. Items from this conversation are
109
109
  #
110
- # @param input [String, Array<OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItemParam, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ShellCall, OpenAI::Models::Responses::ResponseInputItem::ShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseCustomToolCallOutput, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference>, nil] Text, image, or file inputs to the model, used to generate a response
110
+ # @param input [String, Array<OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseInputItem::ToolSearchCall, OpenAI::Models::Responses::ResponseToolSearchOutputItemParam, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItemParam, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ShellCall, OpenAI::Models::Responses::ResponseInputItem::ShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseCustomToolCallOutput, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference>, nil] Text, image, or file inputs to the model, used to generate a response
111
111
  #
112
112
  # @param instructions [String, nil] A system (or developer) message inserted into the model's context.
113
113
  #
@@ -123,7 +123,7 @@ module OpenAI
123
123
  #
124
124
  # @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceAllowed, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp, OpenAI::Models::Responses::ToolChoiceCustom, OpenAI::Models::Responses::ToolChoiceApplyPatch, OpenAI::Models::Responses::ToolChoiceShell, nil] Controls which tool the model should use, if any.
125
125
  #
126
- # @param tools [Array<OpenAI::Models::Responses::FunctionTool, OpenAI::Models::Responses::FileSearchTool, OpenAI::Models::Responses::ComputerTool, OpenAI::Models::Responses::Tool::Mcp, OpenAI::Models::Responses::Tool::CodeInterpreter, OpenAI::Models::Responses::Tool::ImageGeneration, OpenAI::Models::Responses::Tool::LocalShell, OpenAI::Models::Responses::FunctionShellTool, OpenAI::Models::Responses::CustomTool, OpenAI::Models::Responses::ApplyPatchTool, OpenAI::Models::Responses::WebSearchTool, OpenAI::Models::Responses::WebSearchPreviewTool>, nil] An array of tools the model may call while generating a response. You can specif
126
+ # @param tools [Array<OpenAI::Models::Responses::FunctionTool, OpenAI::Models::Responses::FileSearchTool, OpenAI::Models::Responses::ComputerTool, OpenAI::Models::Responses::ComputerUsePreviewTool, OpenAI::Models::Responses::Tool::Mcp, OpenAI::Models::Responses::Tool::CodeInterpreter, OpenAI::Models::Responses::Tool::ImageGeneration, OpenAI::Models::Responses::Tool::LocalShell, OpenAI::Models::Responses::FunctionShellTool, OpenAI::Models::Responses::CustomTool, OpenAI::Models::Responses::NamespaceTool, OpenAI::Models::Responses::ToolSearchTool, OpenAI::Models::Responses::ApplyPatchTool, OpenAI::Models::Responses::WebSearchTool, OpenAI::Models::Responses::WebSearchPreviewTool>, nil] An array of tools the model may call while generating a response. You can specif
127
127
  #
128
128
  # @param truncation [Symbol, OpenAI::Models::Responses::InputTokenCountParams::Truncation] The truncation strategy to use for the model response. - `auto`: If the input to
129
129
  #
@@ -157,7 +157,7 @@ module OpenAI
157
157
  variant -> { OpenAI::Models::Responses::InputTokenCountParams::Input::ResponseInputItemArray }
158
158
 
159
159
  # @!method self.variants
160
- # @return [Array(String, Array<OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItemParam, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ShellCall, OpenAI::Models::Responses::ResponseInputItem::ShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseCustomToolCallOutput, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference>)]
160
+ # @return [Array(String, Array<OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseInputItem::ToolSearchCall, OpenAI::Models::Responses::ResponseToolSearchOutputItemParam, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItemParam, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ShellCall, OpenAI::Models::Responses::ResponseInputItem::ShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseCustomToolCallOutput, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference>)]
161
161
 
162
162
  # @type [OpenAI::Internal::Type::Converter]
163
163
  ResponseInputItemArray =
@@ -0,0 +1,93 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Responses
6
+ class NamespaceTool < OpenAI::Internal::Type::BaseModel
7
+ # @!attribute description
8
+ # A description of the namespace shown to the model.
9
+ #
10
+ # @return [String]
11
+ required :description, String
12
+
13
+ # @!attribute name
14
+ # The namespace name used in tool calls (for example, `crm`).
15
+ #
16
+ # @return [String]
17
+ required :name, String
18
+
19
+ # @!attribute tools
20
+ # The function/custom tools available inside this namespace.
21
+ #
22
+ # @return [Array<OpenAI::Models::Responses::NamespaceTool::Tool::Function, OpenAI::Models::Responses::CustomTool>]
23
+ required :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::NamespaceTool::Tool] }
24
+
25
+ # @!attribute type
26
+ # The type of the tool. Always `namespace`.
27
+ #
28
+ # @return [Symbol, :namespace]
29
+ required :type, const: :namespace
30
+
31
+ # @!method initialize(description:, name:, tools:, type: :namespace)
32
+ # Groups function/custom tools under a shared namespace.
33
+ #
34
+ # @param description [String] A description of the namespace shown to the model.
35
+ #
36
+ # @param name [String] The namespace name used in tool calls (for example, `crm`).
37
+ #
38
+ # @param tools [Array<OpenAI::Models::Responses::NamespaceTool::Tool::Function, OpenAI::Models::Responses::CustomTool>] The function/custom tools available inside this namespace.
39
+ #
40
+ # @param type [Symbol, :namespace] The type of the tool. Always `namespace`.
41
+
42
+ # A function or custom tool that belongs to a namespace.
43
+ module Tool
44
+ extend OpenAI::Internal::Type::Union
45
+
46
+ discriminator :type
47
+
48
+ variant :function, -> { OpenAI::Responses::NamespaceTool::Tool::Function }
49
+
50
+ # A custom tool that processes input using a specified format. Learn more about [custom tools](https://platform.openai.com/docs/guides/function-calling#custom-tools)
51
+ variant :custom, -> { OpenAI::Responses::CustomTool }
52
+
53
+ class Function < OpenAI::Internal::Type::BaseModel
54
+ # @!attribute name
55
+ #
56
+ # @return [String]
57
+ required :name, String
58
+
59
+ # @!attribute type
60
+ #
61
+ # @return [Symbol, :function]
62
+ required :type, const: :function
63
+
64
+ # @!attribute description
65
+ #
66
+ # @return [String, nil]
67
+ optional :description, String, nil?: true
68
+
69
+ # @!attribute parameters
70
+ #
71
+ # @return [Object, nil]
72
+ optional :parameters, OpenAI::Internal::Type::Unknown, nil?: true
73
+
74
+ # @!attribute strict
75
+ #
76
+ # @return [Boolean, nil]
77
+ optional :strict, OpenAI::Internal::Type::Boolean, nil?: true
78
+
79
+ # @!method initialize(name:, description: nil, parameters: nil, strict: nil, type: :function)
80
+ # @param name [String]
81
+ # @param description [String, nil]
82
+ # @param parameters [Object, nil]
83
+ # @param strict [Boolean, nil]
84
+ # @param type [Symbol, :function]
85
+ end
86
+
87
+ # @!method self.variants
88
+ # @return [Array(OpenAI::Models::Responses::NamespaceTool::Tool::Function, OpenAI::Models::Responses::CustomTool)]
89
+ end
90
+ end
91
+ end
92
+ end
93
+ end
@@ -38,7 +38,7 @@ module OpenAI
38
38
  # response will not be carried over to the next response. This makes it simple to
39
39
  # swap out system (or developer) messages in new responses.
40
40
  #
41
- # @return [String, Array<OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItemParam, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ShellCall, OpenAI::Models::Responses::ResponseInputItem::ShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseCustomToolCallOutput, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference>, nil]
41
+ # @return [String, Array<OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseInputItem::ToolSearchCall, OpenAI::Models::Responses::ResponseToolSearchOutputItemParam, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItemParam, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ShellCall, OpenAI::Models::Responses::ResponseInputItem::ShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseCustomToolCallOutput, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference>, nil]
42
42
  required :instructions, union: -> { OpenAI::Responses::Response::Instructions }, nil?: true
43
43
 
44
44
  # @!attribute metadata
@@ -77,7 +77,7 @@ module OpenAI
77
77
  # an `assistant` message with the content generated by the model, you might
78
78
  # consider using the `output_text` property where supported in SDKs.
79
79
  #
80
- # @return [Array<OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItem, OpenAI::Models::Responses::ResponseOutputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCall, OpenAI::Models::Responses::ResponseFunctionShellToolCall, OpenAI::Models::Responses::ResponseFunctionShellToolCallOutput, OpenAI::Models::Responses::ResponseApplyPatchToolCall, OpenAI::Models::Responses::ResponseApplyPatchToolCallOutput, OpenAI::Models::Responses::ResponseOutputItem::McpCall, OpenAI::Models::Responses::ResponseOutputItem::McpListTools, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseCustomToolCall>]
80
+ # @return [Array<OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseToolSearchCall, OpenAI::Models::Responses::ResponseToolSearchOutputItem, OpenAI::Models::Responses::ResponseCompactionItem, OpenAI::Models::Responses::ResponseOutputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCall, OpenAI::Models::Responses::ResponseFunctionShellToolCall, OpenAI::Models::Responses::ResponseFunctionShellToolCallOutput, OpenAI::Models::Responses::ResponseApplyPatchToolCall, OpenAI::Models::Responses::ResponseApplyPatchToolCallOutput, OpenAI::Models::Responses::ResponseOutputItem::McpCall, OpenAI::Models::Responses::ResponseOutputItem::McpListTools, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseCustomToolCall>]
81
81
  required :output, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::ResponseOutputItem] }
82
82
 
83
83
  # @!attribute parallel_tool_calls
@@ -124,7 +124,7 @@ module OpenAI
124
124
  # [function calling](https://platform.openai.com/docs/guides/function-calling).
125
125
  # You can also use custom tools to call your own code.
126
126
  #
127
- # @return [Array<OpenAI::Models::Responses::FunctionTool, OpenAI::Models::Responses::FileSearchTool, OpenAI::Models::Responses::ComputerTool, OpenAI::Models::Responses::Tool::Mcp, OpenAI::Models::Responses::Tool::CodeInterpreter, OpenAI::Models::Responses::Tool::ImageGeneration, OpenAI::Models::Responses::Tool::LocalShell, OpenAI::Models::Responses::FunctionShellTool, OpenAI::Models::Responses::CustomTool, OpenAI::Models::Responses::ApplyPatchTool, OpenAI::Models::Responses::WebSearchTool, OpenAI::Models::Responses::WebSearchPreviewTool>]
127
+ # @return [Array<OpenAI::Models::Responses::FunctionTool, OpenAI::Models::Responses::FileSearchTool, OpenAI::Models::Responses::ComputerTool, OpenAI::Models::Responses::ComputerUsePreviewTool, OpenAI::Models::Responses::Tool::Mcp, OpenAI::Models::Responses::Tool::CodeInterpreter, OpenAI::Models::Responses::Tool::ImageGeneration, OpenAI::Models::Responses::Tool::LocalShell, OpenAI::Models::Responses::FunctionShellTool, OpenAI::Models::Responses::CustomTool, OpenAI::Models::Responses::NamespaceTool, OpenAI::Models::Responses::ToolSearchTool, OpenAI::Models::Responses::ApplyPatchTool, OpenAI::Models::Responses::WebSearchTool, OpenAI::Models::Responses::WebSearchPreviewTool>]
128
128
  required :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::Tool] }
129
129
 
130
130
  # @!attribute top_p
@@ -338,13 +338,13 @@ module OpenAI
338
338
  #
339
339
  # @param incomplete_details [OpenAI::Models::Responses::Response::IncompleteDetails, nil] Details about why the response is incomplete.
340
340
  #
341
- # @param instructions [String, Array<OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItemParam, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ShellCall, OpenAI::Models::Responses::ResponseInputItem::ShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseCustomToolCallOutput, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference>, nil] A system (or developer) message inserted into the model's context.
341
+ # @param instructions [String, Array<OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseInputItem::ToolSearchCall, OpenAI::Models::Responses::ResponseToolSearchOutputItemParam, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItemParam, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ShellCall, OpenAI::Models::Responses::ResponseInputItem::ShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseCustomToolCallOutput, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference>, nil] A system (or developer) message inserted into the model's context.
342
342
  #
343
343
  # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be
344
344
  #
345
345
  # @param model [String, Symbol, OpenAI::Models::ChatModel, OpenAI::Models::ResponsesModel::ResponsesOnlyModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI
346
346
  #
347
- # @param output [Array<OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItem, OpenAI::Models::Responses::ResponseOutputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCall, OpenAI::Models::Responses::ResponseFunctionShellToolCall, OpenAI::Models::Responses::ResponseFunctionShellToolCallOutput, OpenAI::Models::Responses::ResponseApplyPatchToolCall, OpenAI::Models::Responses::ResponseApplyPatchToolCallOutput, OpenAI::Models::Responses::ResponseOutputItem::McpCall, OpenAI::Models::Responses::ResponseOutputItem::McpListTools, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseCustomToolCall>] An array of content items generated by the model.
347
+ # @param output [Array<OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseToolSearchCall, OpenAI::Models::Responses::ResponseToolSearchOutputItem, OpenAI::Models::Responses::ResponseCompactionItem, OpenAI::Models::Responses::ResponseOutputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCall, OpenAI::Models::Responses::ResponseFunctionShellToolCall, OpenAI::Models::Responses::ResponseFunctionShellToolCallOutput, OpenAI::Models::Responses::ResponseApplyPatchToolCall, OpenAI::Models::Responses::ResponseApplyPatchToolCallOutput, OpenAI::Models::Responses::ResponseOutputItem::McpCall, OpenAI::Models::Responses::ResponseOutputItem::McpListTools, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseCustomToolCall>] An array of content items generated by the model.
348
348
  #
349
349
  # @param parallel_tool_calls [Boolean] Whether to allow the model to run tool calls in parallel.
350
350
  #
@@ -352,7 +352,7 @@ module OpenAI
352
352
  #
353
353
  # @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceAllowed, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp, OpenAI::Models::Responses::ToolChoiceCustom, OpenAI::Models::Responses::ToolChoiceApplyPatch, OpenAI::Models::Responses::ToolChoiceShell] How the model should select which tool (or tools) to use when generating
354
354
  #
355
- # @param tools [Array<OpenAI::Models::Responses::FunctionTool, OpenAI::Models::Responses::FileSearchTool, OpenAI::Models::Responses::ComputerTool, OpenAI::Models::Responses::Tool::Mcp, OpenAI::Models::Responses::Tool::CodeInterpreter, OpenAI::Models::Responses::Tool::ImageGeneration, OpenAI::Models::Responses::Tool::LocalShell, OpenAI::Models::Responses::FunctionShellTool, OpenAI::Models::Responses::CustomTool, OpenAI::Models::Responses::ApplyPatchTool, OpenAI::Models::Responses::WebSearchTool, OpenAI::Models::Responses::WebSearchPreviewTool>] An array of tools the model may call while generating a response. You
355
+ # @param tools [Array<OpenAI::Models::Responses::FunctionTool, OpenAI::Models::Responses::FileSearchTool, OpenAI::Models::Responses::ComputerTool, OpenAI::Models::Responses::ComputerUsePreviewTool, OpenAI::Models::Responses::Tool::Mcp, OpenAI::Models::Responses::Tool::CodeInterpreter, OpenAI::Models::Responses::Tool::ImageGeneration, OpenAI::Models::Responses::Tool::LocalShell, OpenAI::Models::Responses::FunctionShellTool, OpenAI::Models::Responses::CustomTool, OpenAI::Models::Responses::NamespaceTool, OpenAI::Models::Responses::ToolSearchTool, OpenAI::Models::Responses::ApplyPatchTool, OpenAI::Models::Responses::WebSearchTool, OpenAI::Models::Responses::WebSearchPreviewTool>] An array of tools the model may call while generating a response. You
356
356
  #
357
357
  # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling,
358
358
  #
@@ -440,7 +440,7 @@ module OpenAI
440
440
  variant -> { OpenAI::Models::Responses::Response::Instructions::ResponseInputItemArray }
441
441
 
442
442
  # @!method self.variants
443
- # @return [Array(String, Array<OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItemParam, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ShellCall, OpenAI::Models::Responses::ResponseInputItem::ShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseCustomToolCallOutput, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference>)]
443
+ # @return [Array(String, Array<OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseInputItem::ToolSearchCall, OpenAI::Models::Responses::ResponseToolSearchOutputItemParam, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItemParam, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ShellCall, OpenAI::Models::Responses::ResponseInputItem::ShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseCustomToolCallOutput, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference>)]
444
444
 
445
445
  # @type [OpenAI::Internal::Type::Converter]
446
446
  ResponseInputItemArray =
@@ -8,7 +8,13 @@ module OpenAI
8
8
  extend OpenAI::Internal::Type::RequestParameters::Converter
9
9
  include OpenAI::Internal::Type::RequestParameters
10
10
 
11
- # @!method initialize(request_options: {})
11
+ # @!attribute response_id
12
+ #
13
+ # @return [String]
14
+ required :response_id, String
15
+
16
+ # @!method initialize(response_id:, request_options: {})
17
+ # @param response_id [String]
12
18
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
13
19
  end
14
20
  end
@@ -21,7 +21,7 @@ module OpenAI
21
21
  # @!attribute input
22
22
  # Text, image, or file inputs to the model, used to generate a response
23
23
  #
24
- # @return [String, Array<OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItemParam, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ShellCall, OpenAI::Models::Responses::ResponseInputItem::ShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseCustomToolCallOutput, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference>, nil]
24
+ # @return [String, Array<OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseInputItem::ToolSearchCall, OpenAI::Models::Responses::ResponseToolSearchOutputItemParam, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItemParam, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ShellCall, OpenAI::Models::Responses::ResponseInputItem::ShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseCustomToolCallOutput, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference>, nil]
25
25
  optional :input, union: -> { OpenAI::Responses::ResponseCompactParams::Input }, nil?: true
26
26
 
27
27
  # @!attribute instructions
@@ -54,7 +54,7 @@ module OpenAI
54
54
  #
55
55
  # @param model [Symbol, String, OpenAI::Models::Responses::ResponseCompactParams::Model, nil] Model ID used to generate the response, like `gpt-5` or `o3`. OpenAI offers a wi
56
56
  #
57
- # @param input [String, Array<OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItemParam, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ShellCall, OpenAI::Models::Responses::ResponseInputItem::ShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseCustomToolCallOutput, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference>, nil] Text, image, or file inputs to the model, used to generate a response
57
+ # @param input [String, Array<OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseInputItem::ToolSearchCall, OpenAI::Models::Responses::ResponseToolSearchOutputItemParam, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItemParam, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ShellCall, OpenAI::Models::Responses::ResponseInputItem::ShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseCustomToolCallOutput, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference>, nil] Text, image, or file inputs to the model, used to generate a response
58
58
  #
59
59
  # @param instructions [String, nil] A system (or developer) message inserted into the model's context.
60
60
  #
@@ -72,6 +72,10 @@ module OpenAI
72
72
  module Model
73
73
  extend OpenAI::Internal::Type::Union
74
74
 
75
+ variant const: -> { OpenAI::Models::Responses::ResponseCompactParams::Model::GPT_5_4 }
76
+
77
+ variant const: -> { OpenAI::Models::Responses::ResponseCompactParams::Model::GPT_5_3_CHAT_LATEST }
78
+
75
79
  variant const: -> { OpenAI::Models::Responses::ResponseCompactParams::Model::GPT_5_2 }
76
80
 
77
81
  variant const: -> { OpenAI::Models::Responses::ResponseCompactParams::Model::GPT_5_2_2025_12_11 }
@@ -255,6 +259,8 @@ module OpenAI
255
259
 
256
260
  # @!group
257
261
 
262
+ GPT_5_4 = :"gpt-5.4"
263
+ GPT_5_3_CHAT_LATEST = :"gpt-5.3-chat-latest"
258
264
  GPT_5_2 = :"gpt-5.2"
259
265
  GPT_5_2_2025_12_11 = :"gpt-5.2-2025-12-11"
260
266
  GPT_5_2_CHAT_LATEST = :"gpt-5.2-chat-latest"
@@ -356,7 +362,7 @@ module OpenAI
356
362
  variant -> { OpenAI::Models::Responses::ResponseCompactParams::Input::ResponseInputItemArray }
357
363
 
358
364
  # @!method self.variants
359
- # @return [Array(String, Array<OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItemParam, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ShellCall, OpenAI::Models::Responses::ResponseInputItem::ShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseCustomToolCallOutput, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference>)]
365
+ # @return [Array(String, Array<OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseInputItem::ToolSearchCall, OpenAI::Models::Responses::ResponseToolSearchOutputItemParam, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseCompactionItemParam, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ShellCall, OpenAI::Models::Responses::ResponseInputItem::ShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall, OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseCustomToolCallOutput, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference>)]
360
366
 
361
367
  # @type [OpenAI::Internal::Type::Converter]
362
368
  ResponseInputItemArray =