openai 0.50.0 → 0.52.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 +38 -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_use_tool.rb +21 -0
  100. data/lib/openai/models/responses/custom_tool.rb +9 -1
  101. data/lib/openai/models/responses/easy_input_message.rb +28 -1
  102. data/lib/openai/models/responses/function_tool.rb +9 -1
  103. data/lib/openai/models/responses/input_item_list_params.rb +8 -1
  104. data/lib/openai/models/responses/input_token_count_params.rb +5 -5
  105. data/lib/openai/models/responses/namespace_tool.rb +93 -0
  106. data/lib/openai/models/responses/response.rb +7 -7
  107. data/lib/openai/models/responses/response_cancel_params.rb +7 -1
  108. data/lib/openai/models/responses/response_compact_params.rb +18 -4
  109. data/lib/openai/models/responses/response_computer_tool_call.rb +74 -65
  110. data/lib/openai/models/responses/response_create_params.rb +5 -5
  111. data/lib/openai/models/responses/response_custom_tool_call.rb +9 -1
  112. data/lib/openai/models/responses/response_delete_params.rb +7 -1
  113. data/lib/openai/models/responses/response_function_tool_call.rb +9 -1
  114. data/lib/openai/models/responses/response_input_file.rb +24 -1
  115. data/lib/openai/models/responses/response_input_file_content.rb +27 -1
  116. data/lib/openai/models/responses/response_input_image.rb +6 -5
  117. data/lib/openai/models/responses/response_input_image_content.rb +6 -5
  118. data/lib/openai/models/responses/response_input_item.rb +87 -1
  119. data/lib/openai/models/responses/response_item.rb +5 -1
  120. data/lib/openai/models/responses/response_item_list.rb +2 -2
  121. data/lib/openai/models/responses/response_output_item.rb +5 -1
  122. data/lib/openai/models/responses/response_output_item_added_event.rb +2 -2
  123. data/lib/openai/models/responses/response_output_item_done_event.rb +2 -2
  124. data/lib/openai/models/responses/response_output_message.rb +28 -1
  125. data/lib/openai/models/responses/response_retrieve_params.rb +8 -1
  126. data/lib/openai/models/responses/response_tool_search_call.rb +93 -0
  127. data/lib/openai/models/responses/response_tool_search_output_item.rb +93 -0
  128. data/lib/openai/models/responses/response_tool_search_output_item_param.rb +89 -0
  129. data/lib/openai/models/responses/responses_client_event.rb +5 -5
  130. data/lib/openai/models/responses/tool.rb +19 -2
  131. data/lib/openai/models/responses/tool_choice_types.rb +6 -0
  132. data/lib/openai/models/responses/tool_search_tool.rb +57 -0
  133. data/lib/openai/models/responses/web_search_preview_tool.rb +19 -1
  134. data/lib/openai/models/skill_delete_params.rb +7 -1
  135. data/lib/openai/models/skill_retrieve_params.rb +7 -1
  136. data/lib/openai/models/skill_update_params.rb +8 -1
  137. data/lib/openai/models/skills/content_retrieve_params.rb +7 -1
  138. data/lib/openai/models/skills/version_create_params.rb +8 -1
  139. data/lib/openai/models/skills/version_delete_params.rb +10 -1
  140. data/lib/openai/models/skills/version_list_params.rb +8 -1
  141. data/lib/openai/models/skills/version_retrieve_params.rb +10 -1
  142. data/lib/openai/models/skills/versions/content_retrieve_params.rb +10 -1
  143. data/lib/openai/models/upload_cancel_params.rb +7 -1
  144. data/lib/openai/models/upload_complete_params.rb +8 -1
  145. data/lib/openai/models/uploads/part_create_params.rb +8 -1
  146. data/lib/openai/models/vector_store_delete_params.rb +7 -1
  147. data/lib/openai/models/vector_store_retrieve_params.rb +7 -1
  148. data/lib/openai/models/vector_store_search_params.rb +8 -1
  149. data/lib/openai/models/vector_store_update_params.rb +8 -1
  150. data/lib/openai/models/vector_stores/file_batch_cancel_params.rb +7 -1
  151. data/lib/openai/models/vector_stores/file_batch_create_params.rb +8 -1
  152. data/lib/openai/models/vector_stores/file_batch_list_files_params.rb +8 -1
  153. data/lib/openai/models/vector_stores/file_batch_retrieve_params.rb +7 -1
  154. data/lib/openai/models/vector_stores/file_content_params.rb +7 -1
  155. data/lib/openai/models/vector_stores/file_create_params.rb +8 -1
  156. data/lib/openai/models/vector_stores/file_delete_params.rb +7 -1
  157. data/lib/openai/models/vector_stores/file_list_params.rb +8 -1
  158. data/lib/openai/models/vector_stores/file_retrieve_params.rb +7 -1
  159. data/lib/openai/models/vector_stores/file_update_params.rb +8 -1
  160. data/lib/openai/models/video.rb +24 -4
  161. data/lib/openai/models/video_create_params.rb +2 -2
  162. data/lib/openai/models/video_delete_params.rb +7 -1
  163. data/lib/openai/models/video_download_content_params.rb +8 -1
  164. data/lib/openai/models/video_remix_params.rb +8 -1
  165. data/lib/openai/models/video_retrieve_params.rb +7 -1
  166. data/lib/openai/resources/audio/speech.rb +1 -0
  167. data/lib/openai/resources/audio/transcriptions.rb +1 -0
  168. data/lib/openai/resources/audio/translations.rb +1 -0
  169. data/lib/openai/resources/audio.rb +3 -0
  170. data/lib/openai/resources/batches.rb +3 -1
  171. data/lib/openai/resources/beta/assistants.rb +3 -1
  172. data/lib/openai/resources/beta/chatkit/threads.rb +4 -2
  173. data/lib/openai/resources/beta/threads/messages.rb +4 -1
  174. data/lib/openai/resources/beta/threads/runs/steps.rb +6 -2
  175. data/lib/openai/resources/beta/threads/runs.rb +11 -5
  176. data/lib/openai/resources/beta/threads.rb +4 -0
  177. data/lib/openai/resources/beta.rb +2 -0
  178. data/lib/openai/resources/chat/completions/messages.rb +4 -1
  179. data/lib/openai/resources/chat/completions.rb +6 -1
  180. data/lib/openai/resources/chat.rb +2 -0
  181. data/lib/openai/resources/completions.rb +2 -0
  182. data/lib/openai/resources/containers/files.rb +2 -1
  183. data/lib/openai/resources/containers.rb +2 -1
  184. data/lib/openai/resources/conversations/items.rb +11 -7
  185. data/lib/openai/resources/conversations.rb +3 -1
  186. data/lib/openai/resources/embeddings.rb +2 -0
  187. data/lib/openai/resources/evals/runs/output_items.rb +3 -1
  188. data/lib/openai/resources/evals/runs.rb +4 -1
  189. data/lib/openai/resources/evals.rb +4 -1
  190. data/lib/openai/resources/files.rb +4 -1
  191. data/lib/openai/resources/fine_tuning/alpha/graders.rb +1 -0
  192. data/lib/openai/resources/fine_tuning/alpha.rb +1 -0
  193. data/lib/openai/resources/fine_tuning/checkpoints/permissions.rb +44 -1
  194. data/lib/openai/resources/fine_tuning/checkpoints.rb +1 -0
  195. data/lib/openai/resources/fine_tuning/jobs/checkpoints.rb +3 -1
  196. data/lib/openai/resources/fine_tuning/jobs.rb +6 -2
  197. data/lib/openai/resources/fine_tuning.rb +1 -0
  198. data/lib/openai/resources/images.rb +1 -0
  199. data/lib/openai/resources/models.rb +1 -0
  200. data/lib/openai/resources/moderations.rb +2 -0
  201. data/lib/openai/resources/responses/input_items.rb +3 -2
  202. data/lib/openai/resources/responses/input_tokens.rb +2 -2
  203. data/lib/openai/resources/responses.rb +12 -8
  204. data/lib/openai/resources/skills/versions.rb +2 -1
  205. data/lib/openai/resources/skills.rb +2 -1
  206. data/lib/openai/resources/uploads/parts.rb +1 -0
  207. data/lib/openai/resources/uploads.rb +2 -0
  208. data/lib/openai/resources/vector_stores/file_batches.rb +2 -1
  209. data/lib/openai/resources/vector_stores/files.rb +2 -1
  210. data/lib/openai/resources/vector_stores.rb +2 -1
  211. data/lib/openai/resources/videos.rb +5 -3
  212. data/lib/openai/version.rb +1 -1
  213. data/lib/openai.rb +10 -0
  214. data/rbi/openai/client.rbi +14 -0
  215. data/rbi/openai/internal/util.rbi +20 -0
  216. data/rbi/openai/models/batch_cancel_params.rbi +13 -5
  217. data/rbi/openai/models/batch_retrieve_params.rbi +13 -5
  218. data/rbi/openai/models/beta/assistant_create_params.rbi +6 -4
  219. data/rbi/openai/models/beta/assistant_delete_params.rbi +13 -5
  220. data/rbi/openai/models/beta/assistant_retrieve_params.rbi +13 -5
  221. data/rbi/openai/models/beta/assistant_update_params.rbi +6 -0
  222. data/rbi/openai/models/beta/chatkit/session_cancel_params.rbi +13 -5
  223. data/rbi/openai/models/beta/chatkit/thread_delete_params.rbi +13 -5
  224. data/rbi/openai/models/beta/chatkit/thread_list_items_params.rbi +6 -0
  225. data/rbi/openai/models/beta/chatkit/thread_retrieve_params.rbi +13 -5
  226. data/rbi/openai/models/beta/thread_create_and_run_params.rbi +6 -4
  227. data/rbi/openai/models/beta/thread_create_params.rbi +6 -4
  228. data/rbi/openai/models/beta/thread_delete_params.rbi +13 -5
  229. data/rbi/openai/models/beta/thread_retrieve_params.rbi +13 -5
  230. data/rbi/openai/models/beta/thread_update_params.rbi +6 -0
  231. data/rbi/openai/models/beta/threads/message_create_params.rbi +6 -0
  232. data/rbi/openai/models/beta/threads/message_delete_params.rbi +10 -2
  233. data/rbi/openai/models/beta/threads/message_list_params.rbi +6 -0
  234. data/rbi/openai/models/beta/threads/message_retrieve_params.rbi +10 -2
  235. data/rbi/openai/models/beta/threads/message_update_params.rbi +6 -0
  236. data/rbi/openai/models/beta/threads/run_cancel_params.rbi +10 -2
  237. data/rbi/openai/models/beta/threads/run_create_params.rbi +6 -0
  238. data/rbi/openai/models/beta/threads/run_list_params.rbi +6 -0
  239. data/rbi/openai/models/beta/threads/run_retrieve_params.rbi +10 -2
  240. data/rbi/openai/models/beta/threads/run_submit_tool_outputs_params.rbi +6 -0
  241. data/rbi/openai/models/beta/threads/run_update_params.rbi +6 -0
  242. data/rbi/openai/models/beta/threads/runs/step_list_params.rbi +6 -0
  243. data/rbi/openai/models/beta/threads/runs/step_retrieve_params.rbi +6 -0
  244. data/rbi/openai/models/chat/completion_delete_params.rbi +13 -5
  245. data/rbi/openai/models/chat/completion_retrieve_params.rbi +13 -5
  246. data/rbi/openai/models/chat/completion_update_params.rbi +6 -0
  247. data/rbi/openai/models/chat/completions/message_list_params.rbi +6 -0
  248. data/rbi/openai/models/chat_model.rbi +3 -0
  249. data/rbi/openai/models/container_delete_params.rbi +13 -5
  250. data/rbi/openai/models/container_retrieve_params.rbi +13 -5
  251. data/rbi/openai/models/containers/file_create_params.rbi +6 -0
  252. data/rbi/openai/models/containers/file_delete_params.rbi +10 -2
  253. data/rbi/openai/models/containers/file_list_params.rbi +6 -0
  254. data/rbi/openai/models/containers/file_retrieve_params.rbi +10 -2
  255. data/rbi/openai/models/containers/files/content_retrieve_params.rbi +10 -2
  256. data/rbi/openai/models/conversations/computer_screenshot_content.rbi +62 -0
  257. data/rbi/openai/models/conversations/conversation_create_params.rbi +6 -0
  258. data/rbi/openai/models/conversations/conversation_delete_params.rbi +13 -5
  259. data/rbi/openai/models/conversations/conversation_item.rbi +2 -0
  260. data/rbi/openai/models/conversations/conversation_item_list.rbi +2 -0
  261. data/rbi/openai/models/conversations/conversation_retrieve_params.rbi +13 -5
  262. data/rbi/openai/models/conversations/conversation_update_params.rbi +6 -0
  263. data/rbi/openai/models/conversations/item_create_params.rbi +12 -0
  264. data/rbi/openai/models/conversations/item_delete_params.rbi +10 -2
  265. data/rbi/openai/models/conversations/item_list_params.rbi +6 -0
  266. data/rbi/openai/models/conversations/item_retrieve_params.rbi +6 -0
  267. data/rbi/openai/models/eval_delete_params.rbi +13 -5
  268. data/rbi/openai/models/eval_retrieve_params.rbi +13 -5
  269. data/rbi/openai/models/eval_update_params.rbi +6 -0
  270. data/rbi/openai/models/evals/run_cancel_params.rbi +10 -2
  271. data/rbi/openai/models/evals/run_cancel_response.rbi +6 -0
  272. data/rbi/openai/models/evals/run_create_params.rbi +18 -0
  273. data/rbi/openai/models/evals/run_create_response.rbi +6 -0
  274. data/rbi/openai/models/evals/run_delete_params.rbi +10 -2
  275. data/rbi/openai/models/evals/run_list_params.rbi +6 -0
  276. data/rbi/openai/models/evals/run_list_response.rbi +6 -0
  277. data/rbi/openai/models/evals/run_retrieve_params.rbi +10 -2
  278. data/rbi/openai/models/evals/run_retrieve_response.rbi +6 -0
  279. data/rbi/openai/models/evals/runs/output_item_list_params.rbi +6 -0
  280. data/rbi/openai/models/evals/runs/output_item_retrieve_params.rbi +6 -1
  281. data/rbi/openai/models/file_content_params.rbi +13 -5
  282. data/rbi/openai/models/file_delete_params.rbi +13 -5
  283. data/rbi/openai/models/file_retrieve_params.rbi +13 -5
  284. data/rbi/openai/models/fine_tuning/checkpoints/permission_create_params.rbi +6 -0
  285. data/rbi/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi +10 -1
  286. data/rbi/openai/models/fine_tuning/checkpoints/permission_list_params.rbi +140 -0
  287. data/rbi/openai/models/fine_tuning/checkpoints/permission_list_response.rbi +70 -0
  288. data/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi +6 -0
  289. data/rbi/openai/models/fine_tuning/job_cancel_params.rbi +16 -5
  290. data/rbi/openai/models/fine_tuning/job_list_events_params.rbi +6 -0
  291. data/rbi/openai/models/fine_tuning/job_pause_params.rbi +16 -5
  292. data/rbi/openai/models/fine_tuning/job_resume_params.rbi +16 -5
  293. data/rbi/openai/models/fine_tuning/job_retrieve_params.rbi +16 -5
  294. data/rbi/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi +6 -0
  295. data/rbi/openai/models/model_delete_params.rbi +13 -5
  296. data/rbi/openai/models/model_retrieve_params.rbi +13 -5
  297. data/rbi/openai/models/realtime/call_accept_params.rbi +13 -5
  298. data/rbi/openai/models/realtime/call_hangup_params.rbi +13 -5
  299. data/rbi/openai/models/realtime/call_refer_params.rbi +10 -1
  300. data/rbi/openai/models/realtime/call_reject_params.rbi +10 -1
  301. data/rbi/openai/models/realtime/realtime_response_create_mcp_tool.rbi +11 -0
  302. data/rbi/openai/models/realtime/realtime_session_create_response.rbi +11 -0
  303. data/rbi/openai/models/realtime/realtime_tools_config_union.rbi +11 -0
  304. data/rbi/openai/models/responses/compacted_response.rbi +2 -0
  305. data/rbi/openai/models/responses/computer_action.rbi +534 -0
  306. data/rbi/openai/models/responses/computer_action_list.rbi +15 -0
  307. data/rbi/openai/models/responses/computer_use_tool.rbi +31 -0
  308. data/rbi/openai/models/responses/custom_tool.rbi +11 -0
  309. data/rbi/openai/models/responses/easy_input_message.rbi +53 -0
  310. data/rbi/openai/models/responses/function_tool.rbi +11 -0
  311. data/rbi/openai/models/responses/input_item_list_params.rbi +6 -0
  312. data/rbi/openai/models/responses/input_token_count_params.rbi +9 -0
  313. data/rbi/openai/models/responses/namespace_tool.rbi +163 -0
  314. data/rbi/openai/models/responses/response.rbi +5 -0
  315. data/rbi/openai/models/responses/response_cancel_params.rbi +13 -5
  316. data/rbi/openai/models/responses/response_compact_params.rbi +18 -0
  317. data/rbi/openai/models/responses/response_computer_tool_call.rbi +245 -151
  318. data/rbi/openai/models/responses/response_create_params.rbi +12 -0
  319. data/rbi/openai/models/responses/response_custom_tool_call.rbi +12 -1
  320. data/rbi/openai/models/responses/response_delete_params.rbi +13 -5
  321. data/rbi/openai/models/responses/response_function_tool_call.rbi +11 -0
  322. data/rbi/openai/models/responses/response_input_file.rbi +54 -0
  323. data/rbi/openai/models/responses/response_input_file_content.rbi +59 -0
  324. data/rbi/openai/models/responses/response_input_image.rbi +11 -6
  325. data/rbi/openai/models/responses/response_input_image_content.rbi +11 -6
  326. data/rbi/openai/models/responses/response_input_item.rbi +180 -0
  327. data/rbi/openai/models/responses/response_item.rbi +2 -0
  328. data/rbi/openai/models/responses/response_item_list.rbi +2 -0
  329. data/rbi/openai/models/responses/response_output_item.rbi +2 -0
  330. data/rbi/openai/models/responses/response_output_item_added_event.rbi +2 -0
  331. data/rbi/openai/models/responses/response_output_item_done_event.rbi +2 -0
  332. data/rbi/openai/models/responses/response_output_message.rbi +60 -1
  333. data/rbi/openai/models/responses/response_retrieve_params.rbi +6 -0
  334. data/rbi/openai/models/responses/response_tool_search_call.rbi +176 -0
  335. data/rbi/openai/models/responses/response_tool_search_output_item.rbi +199 -0
  336. data/rbi/openai/models/responses/response_tool_search_output_item_param.rbi +245 -0
  337. data/rbi/openai/models/responses/responses_client_event.rbi +12 -0
  338. data/rbi/openai/models/responses/tool.rbi +14 -0
  339. data/rbi/openai/models/responses/tool_choice_types.rbi +16 -0
  340. data/rbi/openai/models/responses/tool_search_tool.rbi +107 -0
  341. data/rbi/openai/models/responses/web_search_preview_tool.rbi +64 -0
  342. data/rbi/openai/models/skill_delete_params.rbi +13 -5
  343. data/rbi/openai/models/skill_retrieve_params.rbi +13 -5
  344. data/rbi/openai/models/skill_update_params.rbi +10 -1
  345. data/rbi/openai/models/skills/content_retrieve_params.rbi +13 -5
  346. data/rbi/openai/models/skills/version_create_params.rbi +6 -0
  347. data/rbi/openai/models/skills/version_delete_params.rbi +16 -2
  348. data/rbi/openai/models/skills/version_list_params.rbi +6 -0
  349. data/rbi/openai/models/skills/version_retrieve_params.rbi +16 -2
  350. data/rbi/openai/models/skills/versions/content_retrieve_params.rbi +16 -2
  351. data/rbi/openai/models/upload_cancel_params.rbi +13 -5
  352. data/rbi/openai/models/upload_complete_params.rbi +6 -0
  353. data/rbi/openai/models/uploads/part_create_params.rbi +6 -0
  354. data/rbi/openai/models/vector_store_delete_params.rbi +13 -5
  355. data/rbi/openai/models/vector_store_retrieve_params.rbi +13 -5
  356. data/rbi/openai/models/vector_store_search_params.rbi +6 -0
  357. data/rbi/openai/models/vector_store_update_params.rbi +6 -0
  358. data/rbi/openai/models/vector_stores/file_batch_cancel_params.rbi +10 -2
  359. data/rbi/openai/models/vector_stores/file_batch_create_params.rbi +6 -0
  360. data/rbi/openai/models/vector_stores/file_batch_list_files_params.rbi +6 -0
  361. data/rbi/openai/models/vector_stores/file_batch_retrieve_params.rbi +10 -2
  362. data/rbi/openai/models/vector_stores/file_content_params.rbi +10 -2
  363. data/rbi/openai/models/vector_stores/file_create_params.rbi +6 -0
  364. data/rbi/openai/models/vector_stores/file_delete_params.rbi +10 -2
  365. data/rbi/openai/models/vector_stores/file_list_params.rbi +6 -0
  366. data/rbi/openai/models/vector_stores/file_retrieve_params.rbi +10 -2
  367. data/rbi/openai/models/vector_stores/file_update_params.rbi +6 -0
  368. data/rbi/openai/models/video.rbi +20 -5
  369. data/rbi/openai/models/video_create_params.rbi +2 -2
  370. data/rbi/openai/models/video_delete_params.rbi +13 -5
  371. data/rbi/openai/models/video_download_content_params.rbi +6 -0
  372. data/rbi/openai/models/video_remix_params.rbi +10 -1
  373. data/rbi/openai/models/video_retrieve_params.rbi +13 -5
  374. data/rbi/openai/resources/audio/speech.rbi +1 -0
  375. data/rbi/openai/resources/audio/transcriptions.rbi +1 -0
  376. data/rbi/openai/resources/audio/translations.rbi +1 -0
  377. data/rbi/openai/resources/audio.rbi +3 -0
  378. data/rbi/openai/resources/batches.rbi +1 -0
  379. data/rbi/openai/resources/beta/assistants.rbi +1 -0
  380. data/rbi/openai/resources/beta/threads/messages.rbi +1 -0
  381. data/rbi/openai/resources/beta/threads/runs/steps.rbi +1 -0
  382. data/rbi/openai/resources/beta/threads/runs.rbi +2 -0
  383. data/rbi/openai/resources/beta/threads.rbi +3 -0
  384. data/rbi/openai/resources/beta.rbi +2 -0
  385. data/rbi/openai/resources/chat/completions/messages.rbi +2 -0
  386. data/rbi/openai/resources/chat/completions.rbi +4 -0
  387. data/rbi/openai/resources/chat.rbi +2 -0
  388. data/rbi/openai/resources/completions.rbi +2 -0
  389. data/rbi/openai/resources/conversations/items.rbi +3 -0
  390. data/rbi/openai/resources/conversations.rbi +4 -0
  391. data/rbi/openai/resources/embeddings.rbi +2 -0
  392. data/rbi/openai/resources/evals/runs/output_items.rbi +1 -0
  393. data/rbi/openai/resources/evals/runs.rbi +2 -0
  394. data/rbi/openai/resources/evals.rbi +2 -0
  395. data/rbi/openai/resources/files.rbi +2 -0
  396. data/rbi/openai/resources/fine_tuning/alpha/graders.rbi +1 -0
  397. data/rbi/openai/resources/fine_tuning/alpha.rbi +1 -0
  398. data/rbi/openai/resources/fine_tuning/checkpoints/permissions.rbi +35 -0
  399. data/rbi/openai/resources/fine_tuning/checkpoints.rbi +1 -0
  400. data/rbi/openai/resources/fine_tuning/jobs/checkpoints.rbi +1 -0
  401. data/rbi/openai/resources/fine_tuning/jobs.rbi +2 -0
  402. data/rbi/openai/resources/fine_tuning.rbi +1 -0
  403. data/rbi/openai/resources/images.rbi +1 -0
  404. data/rbi/openai/resources/models.rbi +1 -0
  405. data/rbi/openai/resources/moderations.rbi +2 -0
  406. data/rbi/openai/resources/responses/input_tokens.rbi +3 -0
  407. data/rbi/openai/resources/responses.rbi +9 -0
  408. data/rbi/openai/resources/uploads/parts.rbi +1 -0
  409. data/rbi/openai/resources/uploads.rbi +2 -0
  410. data/rbi/openai/resources/videos.rbi +1 -1
  411. data/sig/openai/internal/util.rbs +10 -0
  412. data/sig/openai/models/batch_cancel_params.rbs +12 -3
  413. data/sig/openai/models/batch_retrieve_params.rbs +11 -3
  414. data/sig/openai/models/beta/assistant_delete_params.rbs +11 -3
  415. data/sig/openai/models/beta/assistant_retrieve_params.rbs +11 -3
  416. data/sig/openai/models/beta/assistant_update_params.rbs +5 -0
  417. data/sig/openai/models/beta/chatkit/session_cancel_params.rbs +11 -3
  418. data/sig/openai/models/beta/chatkit/thread_delete_params.rbs +11 -3
  419. data/sig/openai/models/beta/chatkit/thread_list_items_params.rbs +5 -0
  420. data/sig/openai/models/beta/chatkit/thread_retrieve_params.rbs +11 -3
  421. data/sig/openai/models/beta/thread_delete_params.rbs +11 -3
  422. data/sig/openai/models/beta/thread_retrieve_params.rbs +11 -3
  423. data/sig/openai/models/beta/thread_update_params.rbs +5 -0
  424. data/sig/openai/models/beta/threads/message_create_params.rbs +5 -0
  425. data/sig/openai/models/beta/threads/message_delete_params.rbs +6 -1
  426. data/sig/openai/models/beta/threads/message_list_params.rbs +5 -0
  427. data/sig/openai/models/beta/threads/message_retrieve_params.rbs +6 -1
  428. data/sig/openai/models/beta/threads/message_update_params.rbs +9 -1
  429. data/sig/openai/models/beta/threads/run_cancel_params.rbs +6 -1
  430. data/sig/openai/models/beta/threads/run_create_params.rbs +5 -0
  431. data/sig/openai/models/beta/threads/run_list_params.rbs +5 -0
  432. data/sig/openai/models/beta/threads/run_retrieve_params.rbs +6 -1
  433. data/sig/openai/models/beta/threads/run_submit_tool_outputs_params.rbs +5 -0
  434. data/sig/openai/models/beta/threads/run_update_params.rbs +9 -1
  435. data/sig/openai/models/beta/threads/runs/step_list_params.rbs +5 -0
  436. data/sig/openai/models/beta/threads/runs/step_retrieve_params.rbs +5 -0
  437. data/sig/openai/models/chat/completion_delete_params.rbs +11 -3
  438. data/sig/openai/models/chat/completion_retrieve_params.rbs +11 -3
  439. data/sig/openai/models/chat/completion_update_params.rbs +5 -1
  440. data/sig/openai/models/chat/completions/message_list_params.rbs +5 -0
  441. data/sig/openai/models/chat_model.rbs +5 -1
  442. data/sig/openai/models/container_delete_params.rbs +11 -3
  443. data/sig/openai/models/container_retrieve_params.rbs +11 -3
  444. data/sig/openai/models/containers/file_create_params.rbs +9 -1
  445. data/sig/openai/models/containers/file_delete_params.rbs +6 -1
  446. data/sig/openai/models/containers/file_list_params.rbs +5 -0
  447. data/sig/openai/models/containers/file_retrieve_params.rbs +6 -1
  448. data/sig/openai/models/containers/files/content_retrieve_params.rbs +6 -1
  449. data/sig/openai/models/conversations/computer_screenshot_content.rbs +23 -1
  450. data/sig/openai/models/conversations/conversation_delete_params.rbs +11 -3
  451. data/sig/openai/models/conversations/conversation_item.rbs +2 -0
  452. data/sig/openai/models/conversations/conversation_retrieve_params.rbs +11 -3
  453. data/sig/openai/models/conversations/conversation_update_params.rbs +5 -1
  454. data/sig/openai/models/conversations/item_create_params.rbs +5 -0
  455. data/sig/openai/models/conversations/item_delete_params.rbs +6 -1
  456. data/sig/openai/models/conversations/item_list_params.rbs +5 -0
  457. data/sig/openai/models/conversations/item_retrieve_params.rbs +5 -0
  458. data/sig/openai/models/eval_delete_params.rbs +12 -3
  459. data/sig/openai/models/eval_retrieve_params.rbs +11 -3
  460. data/sig/openai/models/eval_update_params.rbs +5 -1
  461. data/sig/openai/models/evals/run_cancel_params.rbs +6 -1
  462. data/sig/openai/models/evals/run_create_params.rbs +5 -0
  463. data/sig/openai/models/evals/run_delete_params.rbs +6 -1
  464. data/sig/openai/models/evals/run_list_params.rbs +5 -0
  465. data/sig/openai/models/evals/run_retrieve_params.rbs +6 -1
  466. data/sig/openai/models/evals/runs/output_item_list_params.rbs +5 -0
  467. data/sig/openai/models/evals/runs/output_item_retrieve_params.rbs +5 -1
  468. data/sig/openai/models/file_content_params.rbs +12 -3
  469. data/sig/openai/models/file_delete_params.rbs +12 -3
  470. data/sig/openai/models/file_retrieve_params.rbs +11 -3
  471. data/sig/openai/models/fine_tuning/checkpoints/permission_create_params.rbs +5 -1
  472. data/sig/openai/models/fine_tuning/checkpoints/permission_delete_params.rbs +5 -1
  473. data/sig/openai/models/fine_tuning/checkpoints/permission_list_params.rbs +71 -0
  474. data/sig/openai/models/fine_tuning/checkpoints/permission_list_response.rbs +39 -0
  475. data/sig/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbs +5 -0
  476. data/sig/openai/models/fine_tuning/job_cancel_params.rbs +13 -3
  477. data/sig/openai/models/fine_tuning/job_list_events_params.rbs +5 -1
  478. data/sig/openai/models/fine_tuning/job_pause_params.rbs +13 -3
  479. data/sig/openai/models/fine_tuning/job_resume_params.rbs +13 -3
  480. data/sig/openai/models/fine_tuning/job_retrieve_params.rbs +12 -3
  481. data/sig/openai/models/fine_tuning/jobs/checkpoint_list_params.rbs +5 -1
  482. data/sig/openai/models/model_delete_params.rbs +9 -3
  483. data/sig/openai/models/model_retrieve_params.rbs +8 -3
  484. data/sig/openai/models/realtime/call_accept_params.rbs +13 -3
  485. data/sig/openai/models/realtime/call_hangup_params.rbs +11 -3
  486. data/sig/openai/models/realtime/call_refer_params.rbs +6 -1
  487. data/sig/openai/models/realtime/call_reject_params.rbs +6 -1
  488. data/sig/openai/models/realtime/realtime_response_create_mcp_tool.rbs +7 -0
  489. data/sig/openai/models/realtime/realtime_session_create_response.rbs +7 -0
  490. data/sig/openai/models/realtime/realtime_tools_config_union.rbs +7 -0
  491. data/sig/openai/models/responses/computer_action.rbs +215 -0
  492. data/sig/openai/models/responses/computer_action_list.rbs +10 -0
  493. data/sig/openai/models/responses/computer_use_tool.rbs +15 -0
  494. data/sig/openai/models/responses/custom_tool.rbs +7 -0
  495. data/sig/openai/models/responses/easy_input_message.rbs +16 -0
  496. data/sig/openai/models/responses/function_tool.rbs +7 -0
  497. data/sig/openai/models/responses/input_item_list_params.rbs +5 -0
  498. data/sig/openai/models/responses/namespace_tool.rbs +84 -0
  499. data/sig/openai/models/responses/response_cancel_params.rbs +11 -3
  500. data/sig/openai/models/responses/response_compact_params.rbs +11 -2
  501. data/sig/openai/models/responses/response_computer_tool_call.rbs +62 -49
  502. data/sig/openai/models/responses/response_custom_tool_call.rbs +9 -2
  503. data/sig/openai/models/responses/response_delete_params.rbs +11 -3
  504. data/sig/openai/models/responses/response_function_tool_call.rbs +7 -0
  505. data/sig/openai/models/responses/response_input_file.rbs +20 -0
  506. data/sig/openai/models/responses/response_input_file_content.rbs +20 -0
  507. data/sig/openai/models/responses/response_input_image.rbs +2 -1
  508. data/sig/openai/models/responses/response_input_image_content.rbs +2 -1
  509. data/sig/openai/models/responses/response_input_item.rbs +71 -0
  510. data/sig/openai/models/responses/response_item.rbs +2 -0
  511. data/sig/openai/models/responses/response_output_item.rbs +2 -0
  512. data/sig/openai/models/responses/response_output_message.rbs +18 -2
  513. data/sig/openai/models/responses/response_retrieve_params.rbs +5 -0
  514. data/sig/openai/models/responses/response_tool_search_call.rbs +77 -0
  515. data/sig/openai/models/responses/response_tool_search_output_item.rbs +77 -0
  516. data/sig/openai/models/responses/response_tool_search_output_item_param.rbs +74 -0
  517. data/sig/openai/models/responses/tool.rbs +10 -0
  518. data/sig/openai/models/responses/tool_choice_types.rbs +4 -0
  519. data/sig/openai/models/responses/tool_search_tool.rbs +52 -0
  520. data/sig/openai/models/responses/web_search_preview_tool.rbs +20 -0
  521. data/sig/openai/models/skill_delete_params.rbs +12 -3
  522. data/sig/openai/models/skill_retrieve_params.rbs +11 -3
  523. data/sig/openai/models/skill_update_params.rbs +6 -1
  524. data/sig/openai/models/skills/content_retrieve_params.rbs +11 -3
  525. data/sig/openai/models/skills/version_create_params.rbs +5 -0
  526. data/sig/openai/models/skills/version_delete_params.rbs +6 -1
  527. data/sig/openai/models/skills/version_list_params.rbs +5 -0
  528. data/sig/openai/models/skills/version_retrieve_params.rbs +6 -1
  529. data/sig/openai/models/skills/versions/content_retrieve_params.rbs +6 -1
  530. data/sig/openai/models/upload_cancel_params.rbs +11 -3
  531. data/sig/openai/models/upload_complete_params.rbs +5 -1
  532. data/sig/openai/models/uploads/part_create_params.rbs +5 -1
  533. data/sig/openai/models/vector_store_delete_params.rbs +11 -3
  534. data/sig/openai/models/vector_store_retrieve_params.rbs +11 -3
  535. data/sig/openai/models/vector_store_search_params.rbs +5 -0
  536. data/sig/openai/models/vector_store_update_params.rbs +5 -0
  537. data/sig/openai/models/vector_stores/file_batch_cancel_params.rbs +6 -1
  538. data/sig/openai/models/vector_stores/file_batch_create_params.rbs +5 -0
  539. data/sig/openai/models/vector_stores/file_batch_list_files_params.rbs +5 -0
  540. data/sig/openai/models/vector_stores/file_batch_retrieve_params.rbs +6 -1
  541. data/sig/openai/models/vector_stores/file_content_params.rbs +6 -1
  542. data/sig/openai/models/vector_stores/file_create_params.rbs +5 -0
  543. data/sig/openai/models/vector_stores/file_delete_params.rbs +6 -1
  544. data/sig/openai/models/vector_stores/file_list_params.rbs +5 -0
  545. data/sig/openai/models/vector_stores/file_retrieve_params.rbs +6 -1
  546. data/sig/openai/models/vector_stores/file_update_params.rbs +5 -0
  547. data/sig/openai/models/video.rbs +12 -4
  548. data/sig/openai/models/video_delete_params.rbs +12 -3
  549. data/sig/openai/models/video_download_content_params.rbs +8 -1
  550. data/sig/openai/models/video_remix_params.rbs +6 -1
  551. data/sig/openai/models/video_retrieve_params.rbs +11 -3
  552. data/sig/openai/resources/fine_tuning/checkpoints/permissions.rbs +9 -0
  553. data/sig/openai/resources/responses.rbs +1 -0
  554. metadata +32 -2
@@ -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 fine_tuning_job_id
12
+ #
13
+ # @return [String]
14
+ required :fine_tuning_job_id, String
15
+
16
+ # @!method initialize(fine_tuning_job_id:, request_options: {})
17
+ # @param fine_tuning_job_id [String]
12
18
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
13
19
  end
14
20
  end
@@ -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 fine_tuning_job_id
12
+ #
13
+ # @return [String]
14
+ required :fine_tuning_job_id, String
15
+
16
+ # @!method initialize(fine_tuning_job_id:, request_options: {})
17
+ # @param fine_tuning_job_id [String]
12
18
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
13
19
  end
14
20
  end
@@ -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 fine_tuning_job_id
12
+ #
13
+ # @return [String]
14
+ required :fine_tuning_job_id, String
15
+
16
+ # @!method initialize(fine_tuning_job_id:, request_options: {})
17
+ # @param fine_tuning_job_id [String]
12
18
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
13
19
  end
14
20
  end
@@ -9,6 +9,11 @@ module OpenAI
9
9
  extend OpenAI::Internal::Type::RequestParameters::Converter
10
10
  include OpenAI::Internal::Type::RequestParameters
11
11
 
12
+ # @!attribute fine_tuning_job_id
13
+ #
14
+ # @return [String]
15
+ required :fine_tuning_job_id, String
16
+
12
17
  # @!attribute after
13
18
  # Identifier for the last checkpoint ID from the previous pagination request.
14
19
  #
@@ -21,7 +26,9 @@ module OpenAI
21
26
  # @return [Integer, nil]
22
27
  optional :limit, Integer
23
28
 
24
- # @!method initialize(after: nil, limit: nil, request_options: {})
29
+ # @!method initialize(fine_tuning_job_id:, after: nil, limit: nil, request_options: {})
30
+ # @param fine_tuning_job_id [String]
31
+ #
25
32
  # @param after [String] Identifier for the last checkpoint ID from the previous pagination request.
26
33
  #
27
34
  # @param limit [Integer] Number of checkpoints to retrieve.
@@ -7,7 +7,13 @@ module OpenAI
7
7
  extend OpenAI::Internal::Type::RequestParameters::Converter
8
8
  include OpenAI::Internal::Type::RequestParameters
9
9
 
10
- # @!method initialize(request_options: {})
10
+ # @!attribute model
11
+ #
12
+ # @return [String]
13
+ required :model, String
14
+
15
+ # @!method initialize(model:, request_options: {})
16
+ # @param model [String]
11
17
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
12
18
  end
13
19
  end
@@ -7,7 +7,13 @@ module OpenAI
7
7
  extend OpenAI::Internal::Type::RequestParameters::Converter
8
8
  include OpenAI::Internal::Type::RequestParameters
9
9
 
10
- # @!method initialize(request_options: {})
10
+ # @!attribute model
11
+ #
12
+ # @return [String]
13
+ required :model, String
14
+
15
+ # @!method initialize(model:, request_options: {})
16
+ # @param model [String]
11
17
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
12
18
  end
13
19
  end
@@ -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 call_id
12
+ #
13
+ # @return [String]
14
+ required :call_id, String
15
+
16
+ # @!method initialize(call_id:, request_options: {})
17
+ # @param call_id [String]
12
18
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
13
19
  end
14
20
  end
@@ -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 call_id
12
+ #
13
+ # @return [String]
14
+ required :call_id, String
15
+
16
+ # @!method initialize(call_id:, request_options: {})
17
+ # @param call_id [String]
12
18
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
13
19
  end
14
20
  end
@@ -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 call_id
12
+ #
13
+ # @return [String]
14
+ required :call_id, String
15
+
11
16
  # @!attribute target_uri
12
17
  # URI that should appear in the SIP Refer-To header. Supports values like
13
18
  # `tel:+14155550123` or `sip:agent@example.com`.
@@ -15,10 +20,12 @@ module OpenAI
15
20
  # @return [String]
16
21
  required :target_uri, String
17
22
 
18
- # @!method initialize(target_uri:, request_options: {})
23
+ # @!method initialize(call_id:, target_uri:, request_options: {})
19
24
  # Some parameter documentations has been truncated, see
20
25
  # {OpenAI::Models::Realtime::CallReferParams} for more details.
21
26
  #
27
+ # @param call_id [String]
28
+ #
22
29
  # @param target_uri [String] URI that should appear in the SIP Refer-To header. Supports values like
23
30
  #
24
31
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
@@ -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 call_id
12
+ #
13
+ # @return [String]
14
+ required :call_id, String
15
+
11
16
  # @!attribute status_code
12
17
  # SIP response code to send back to the caller. Defaults to `603` (Decline) when
13
18
  # omitted.
@@ -15,10 +20,12 @@ module OpenAI
15
20
  # @return [Integer, nil]
16
21
  optional :status_code, Integer
17
22
 
18
- # @!method initialize(status_code: nil, request_options: {})
23
+ # @!method initialize(call_id:, status_code: nil, request_options: {})
19
24
  # Some parameter documentations has been truncated, see
20
25
  # {OpenAI::Models::Realtime::CallRejectParams} for more details.
21
26
  #
27
+ # @param call_id [String]
28
+ #
22
29
  # @param status_code [Integer] SIP response code to send back to the caller. Defaults to `603` (Decline)
23
30
  #
24
31
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
@@ -52,6 +52,12 @@ module OpenAI
52
52
  # @return [Symbol, OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::ConnectorID, nil]
53
53
  optional :connector_id, enum: -> { OpenAI::Realtime::RealtimeResponseCreateMcpTool::ConnectorID }
54
54
 
55
+ # @!attribute defer_loading
56
+ # Whether this MCP tool is deferred and discovered via tool search.
57
+ #
58
+ # @return [Boolean, nil]
59
+ optional :defer_loading, OpenAI::Internal::Type::Boolean
60
+
55
61
  # @!attribute headers
56
62
  # Optional HTTP headers to send to the MCP server. Use for authentication or other
57
63
  # purposes.
@@ -80,7 +86,7 @@ module OpenAI
80
86
  # @return [String, nil]
81
87
  optional :server_url, String
82
88
 
83
- # @!method initialize(server_label:, allowed_tools: nil, authorization: nil, connector_id: nil, headers: nil, require_approval: nil, server_description: nil, server_url: nil, type: :mcp)
89
+ # @!method initialize(server_label:, allowed_tools: nil, authorization: nil, connector_id: nil, defer_loading: nil, headers: nil, require_approval: nil, server_description: nil, server_url: nil, type: :mcp)
84
90
  # Some parameter documentations has been truncated, see
85
91
  # {OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool} for more details.
86
92
  #
@@ -96,6 +102,8 @@ module OpenAI
96
102
  #
97
103
  # @param connector_id [Symbol, OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::ConnectorID] Identifier for service connectors, like those available in ChatGPT. One of
98
104
  #
105
+ # @param defer_loading [Boolean] Whether this MCP tool is deferred and discovered via tool search.
106
+ #
99
107
  # @param headers [Hash{Symbol=>String}, nil] Optional HTTP headers to send to the MCP server. Use for authentication
100
108
  #
101
109
  # @param require_approval [OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::RequireApproval::McpToolApprovalFilter, Symbol, OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::RequireApproval::McpToolApprovalSetting, nil] Specify which of the MCP server's tools require approval.
@@ -754,6 +754,12 @@ module OpenAI
754
754
  optional :connector_id,
755
755
  enum: -> { OpenAI::Realtime::RealtimeSessionCreateResponse::Tool::McpTool::ConnectorID }
756
756
 
757
+ # @!attribute defer_loading
758
+ # Whether this MCP tool is deferred and discovered via tool search.
759
+ #
760
+ # @return [Boolean, nil]
761
+ optional :defer_loading, OpenAI::Internal::Type::Boolean
762
+
757
763
  # @!attribute headers
758
764
  # Optional HTTP headers to send to the MCP server. Use for authentication or other
759
765
  # purposes.
@@ -784,7 +790,7 @@ module OpenAI
784
790
  # @return [String, nil]
785
791
  optional :server_url, String
786
792
 
787
- # @!method initialize(server_label:, allowed_tools: nil, authorization: nil, connector_id: nil, headers: nil, require_approval: nil, server_description: nil, server_url: nil, type: :mcp)
793
+ # @!method initialize(server_label:, allowed_tools: nil, authorization: nil, connector_id: nil, defer_loading: nil, headers: nil, require_approval: nil, server_description: nil, server_url: nil, type: :mcp)
788
794
  # Some parameter documentations has been truncated, see
789
795
  # {OpenAI::Models::Realtime::RealtimeSessionCreateResponse::Tool::McpTool} for
790
796
  # more details.
@@ -801,6 +807,8 @@ module OpenAI
801
807
  #
802
808
  # @param connector_id [Symbol, OpenAI::Models::Realtime::RealtimeSessionCreateResponse::Tool::McpTool::ConnectorID] Identifier for service connectors, like those available in ChatGPT. One of
803
809
  #
810
+ # @param defer_loading [Boolean] Whether this MCP tool is deferred and discovered via tool search.
811
+ #
804
812
  # @param headers [Hash{Symbol=>String}, nil] Optional HTTP headers to send to the MCP server. Use for authentication
805
813
  #
806
814
  # @param require_approval [OpenAI::Models::Realtime::RealtimeSessionCreateResponse::Tool::McpTool::RequireApproval::McpToolApprovalFilter, Symbol, OpenAI::Models::Realtime::RealtimeSessionCreateResponse::Tool::McpTool::RequireApproval::McpToolApprovalSetting, nil] Specify which of the MCP server's tools require approval.
@@ -66,6 +66,12 @@ module OpenAI
66
66
  # @return [Symbol, OpenAI::Models::Realtime::RealtimeToolsConfigUnion::Mcp::ConnectorID, nil]
67
67
  optional :connector_id, enum: -> { OpenAI::Realtime::RealtimeToolsConfigUnion::Mcp::ConnectorID }
68
68
 
69
+ # @!attribute defer_loading
70
+ # Whether this MCP tool is deferred and discovered via tool search.
71
+ #
72
+ # @return [Boolean, nil]
73
+ optional :defer_loading, OpenAI::Internal::Type::Boolean
74
+
69
75
  # @!attribute headers
70
76
  # Optional HTTP headers to send to the MCP server. Use for authentication or other
71
77
  # purposes.
@@ -94,7 +100,7 @@ module OpenAI
94
100
  # @return [String, nil]
95
101
  optional :server_url, String
96
102
 
97
- # @!method initialize(server_label:, allowed_tools: nil, authorization: nil, connector_id: nil, headers: nil, require_approval: nil, server_description: nil, server_url: nil, type: :mcp)
103
+ # @!method initialize(server_label:, allowed_tools: nil, authorization: nil, connector_id: nil, defer_loading: nil, headers: nil, require_approval: nil, server_description: nil, server_url: nil, type: :mcp)
98
104
  # Some parameter documentations has been truncated, see
99
105
  # {OpenAI::Models::Realtime::RealtimeToolsConfigUnion::Mcp} for more details.
100
106
  #
@@ -110,6 +116,8 @@ module OpenAI
110
116
  #
111
117
  # @param connector_id [Symbol, OpenAI::Models::Realtime::RealtimeToolsConfigUnion::Mcp::ConnectorID] Identifier for service connectors, like those available in ChatGPT. One of
112
118
  #
119
+ # @param defer_loading [Boolean] Whether this MCP tool is deferred and discovered via tool search.
120
+ #
113
121
  # @param headers [Hash{Symbol=>String}, nil] Optional HTTP headers to send to the MCP server. Use for authentication
114
122
  #
115
123
  # @param require_approval [OpenAI::Models::Realtime::RealtimeToolsConfigUnion::Mcp::RequireApproval::McpToolApprovalFilter, Symbol, OpenAI::Models::Realtime::RealtimeToolsConfigUnion::Mcp::RequireApproval::McpToolApprovalSetting, nil] Specify which of the MCP server's tools require approval.
@@ -27,7 +27,7 @@ module OpenAI
27
27
  # The compacted list of output items. This is a list of all user messages,
28
28
  # followed by a single compaction item.
29
29
  #
30
- # @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>]
30
+ # @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>]
31
31
  required :output, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::ResponseOutputItem] }
32
32
 
33
33
  # @!attribute usage
@@ -45,7 +45,7 @@ module OpenAI
45
45
  #
46
46
  # @param created_at [Integer] Unix timestamp (in seconds) when the compacted conversation was created.
47
47
  #
48
- # @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>] The compacted list of output items. This is a list of all user messages, followe
48
+ # @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>] The compacted list of output items. This is a list of all user messages, followe
49
49
  #
50
50
  # @param usage [OpenAI::Models::Responses::ResponseUsage] Token accounting for the compaction pass, including cached, reasoning, and total
51
51
  #
@@ -0,0 +1,356 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Responses
6
+ # A click action.
7
+ module ComputerAction
8
+ extend OpenAI::Internal::Type::Union
9
+
10
+ discriminator :type
11
+
12
+ # A click action.
13
+ variant :click, -> { OpenAI::Responses::ComputerAction::Click }
14
+
15
+ # A double click action.
16
+ variant :double_click, -> { OpenAI::Responses::ComputerAction::DoubleClick }
17
+
18
+ # A drag action.
19
+ variant :drag, -> { OpenAI::Responses::ComputerAction::Drag }
20
+
21
+ # A collection of keypresses the model would like to perform.
22
+ variant :keypress, -> { OpenAI::Responses::ComputerAction::Keypress }
23
+
24
+ # A mouse move action.
25
+ variant :move, -> { OpenAI::Responses::ComputerAction::Move }
26
+
27
+ # A screenshot action.
28
+ variant :screenshot, -> { OpenAI::Responses::ComputerAction::Screenshot }
29
+
30
+ # A scroll action.
31
+ variant :scroll, -> { OpenAI::Responses::ComputerAction::Scroll }
32
+
33
+ # An action to type in text.
34
+ variant :type, -> { OpenAI::Responses::ComputerAction::Type }
35
+
36
+ # A wait action.
37
+ variant :wait, -> { OpenAI::Responses::ComputerAction::Wait }
38
+
39
+ class Click < OpenAI::Internal::Type::BaseModel
40
+ # @!attribute button
41
+ # Indicates which mouse button was pressed during the click. One of `left`,
42
+ # `right`, `wheel`, `back`, or `forward`.
43
+ #
44
+ # @return [Symbol, OpenAI::Models::Responses::ComputerAction::Click::Button]
45
+ required :button, enum: -> { OpenAI::Responses::ComputerAction::Click::Button }
46
+
47
+ # @!attribute type
48
+ # Specifies the event type. For a click action, this property is always `click`.
49
+ #
50
+ # @return [Symbol, :click]
51
+ required :type, const: :click
52
+
53
+ # @!attribute x
54
+ # The x-coordinate where the click occurred.
55
+ #
56
+ # @return [Integer]
57
+ required :x, Integer
58
+
59
+ # @!attribute y_
60
+ # The y-coordinate where the click occurred.
61
+ #
62
+ # @return [Integer]
63
+ required :y_, Integer, api_name: :y
64
+
65
+ # @!method initialize(button:, x:, y_:, type: :click)
66
+ # Some parameter documentations has been truncated, see
67
+ # {OpenAI::Models::Responses::ComputerAction::Click} for more details.
68
+ #
69
+ # A click action.
70
+ #
71
+ # @param button [Symbol, OpenAI::Models::Responses::ComputerAction::Click::Button] Indicates which mouse button was pressed during the click. One of `left`, `right
72
+ #
73
+ # @param x [Integer] The x-coordinate where the click occurred.
74
+ #
75
+ # @param y_ [Integer] The y-coordinate where the click occurred.
76
+ #
77
+ # @param type [Symbol, :click] Specifies the event type. For a click action, this property is always `click`.
78
+
79
+ # Indicates which mouse button was pressed during the click. One of `left`,
80
+ # `right`, `wheel`, `back`, or `forward`.
81
+ #
82
+ # @see OpenAI::Models::Responses::ComputerAction::Click#button
83
+ module Button
84
+ extend OpenAI::Internal::Type::Enum
85
+
86
+ LEFT = :left
87
+ RIGHT = :right
88
+ WHEEL = :wheel
89
+ BACK = :back
90
+ FORWARD = :forward
91
+
92
+ # @!method self.values
93
+ # @return [Array<Symbol>]
94
+ end
95
+ end
96
+
97
+ class DoubleClick < OpenAI::Internal::Type::BaseModel
98
+ # @!attribute type
99
+ # Specifies the event type. For a double click action, this property is always set
100
+ # to `double_click`.
101
+ #
102
+ # @return [Symbol, :double_click]
103
+ required :type, const: :double_click
104
+
105
+ # @!attribute x
106
+ # The x-coordinate where the double click occurred.
107
+ #
108
+ # @return [Integer]
109
+ required :x, Integer
110
+
111
+ # @!attribute y_
112
+ # The y-coordinate where the double click occurred.
113
+ #
114
+ # @return [Integer]
115
+ required :y_, Integer, api_name: :y
116
+
117
+ # @!method initialize(x:, y_:, type: :double_click)
118
+ # Some parameter documentations has been truncated, see
119
+ # {OpenAI::Models::Responses::ComputerAction::DoubleClick} for more details.
120
+ #
121
+ # A double click action.
122
+ #
123
+ # @param x [Integer] The x-coordinate where the double click occurred.
124
+ #
125
+ # @param y_ [Integer] The y-coordinate where the double click occurred.
126
+ #
127
+ # @param type [Symbol, :double_click] Specifies the event type. For a double click action, this property is always set
128
+ end
129
+
130
+ class Drag < OpenAI::Internal::Type::BaseModel
131
+ # @!attribute path
132
+ # An array of coordinates representing the path of the drag action. Coordinates
133
+ # will appear as an array of objects, eg
134
+ #
135
+ # ```
136
+ # [
137
+ # { x: 100, y: 200 },
138
+ # { x: 200, y: 300 }
139
+ # ]
140
+ # ```
141
+ #
142
+ # @return [Array<OpenAI::Models::Responses::ComputerAction::Drag::Path>]
143
+ required :path, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Responses::ComputerAction::Drag::Path] }
144
+
145
+ # @!attribute type
146
+ # Specifies the event type. For a drag action, this property is always set to
147
+ # `drag`.
148
+ #
149
+ # @return [Symbol, :drag]
150
+ required :type, const: :drag
151
+
152
+ # @!method initialize(path:, type: :drag)
153
+ # Some parameter documentations has been truncated, see
154
+ # {OpenAI::Models::Responses::ComputerAction::Drag} for more details.
155
+ #
156
+ # A drag action.
157
+ #
158
+ # @param path [Array<OpenAI::Models::Responses::ComputerAction::Drag::Path>] An array of coordinates representing the path of the drag action. Coordinates wi
159
+ #
160
+ # @param type [Symbol, :drag] Specifies the event type. For a drag action, this property is always set to `dra
161
+
162
+ class Path < OpenAI::Internal::Type::BaseModel
163
+ # @!attribute x
164
+ # The x-coordinate.
165
+ #
166
+ # @return [Integer]
167
+ required :x, Integer
168
+
169
+ # @!attribute y_
170
+ # The y-coordinate.
171
+ #
172
+ # @return [Integer]
173
+ required :y_, Integer, api_name: :y
174
+
175
+ # @!method initialize(x:, y_:)
176
+ # An x/y coordinate pair, e.g. `{ x: 100, y: 200 }`.
177
+ #
178
+ # @param x [Integer] The x-coordinate.
179
+ #
180
+ # @param y_ [Integer] The y-coordinate.
181
+ end
182
+ end
183
+
184
+ class Keypress < OpenAI::Internal::Type::BaseModel
185
+ # @!attribute keys
186
+ # The combination of keys the model is requesting to be pressed. This is an array
187
+ # of strings, each representing a key.
188
+ #
189
+ # @return [Array<String>]
190
+ required :keys, OpenAI::Internal::Type::ArrayOf[String]
191
+
192
+ # @!attribute type
193
+ # Specifies the event type. For a keypress action, this property is always set to
194
+ # `keypress`.
195
+ #
196
+ # @return [Symbol, :keypress]
197
+ required :type, const: :keypress
198
+
199
+ # @!method initialize(keys:, type: :keypress)
200
+ # Some parameter documentations has been truncated, see
201
+ # {OpenAI::Models::Responses::ComputerAction::Keypress} for more details.
202
+ #
203
+ # A collection of keypresses the model would like to perform.
204
+ #
205
+ # @param keys [Array<String>] The combination of keys the model is requesting to be pressed. This is an array
206
+ #
207
+ # @param type [Symbol, :keypress] Specifies the event type. For a keypress action, this property is always set to
208
+ end
209
+
210
+ class Move < OpenAI::Internal::Type::BaseModel
211
+ # @!attribute type
212
+ # Specifies the event type. For a move action, this property is always set to
213
+ # `move`.
214
+ #
215
+ # @return [Symbol, :move]
216
+ required :type, const: :move
217
+
218
+ # @!attribute x
219
+ # The x-coordinate to move to.
220
+ #
221
+ # @return [Integer]
222
+ required :x, Integer
223
+
224
+ # @!attribute y_
225
+ # The y-coordinate to move to.
226
+ #
227
+ # @return [Integer]
228
+ required :y_, Integer, api_name: :y
229
+
230
+ # @!method initialize(x:, y_:, type: :move)
231
+ # Some parameter documentations has been truncated, see
232
+ # {OpenAI::Models::Responses::ComputerAction::Move} for more details.
233
+ #
234
+ # A mouse move action.
235
+ #
236
+ # @param x [Integer] The x-coordinate to move to.
237
+ #
238
+ # @param y_ [Integer] The y-coordinate to move to.
239
+ #
240
+ # @param type [Symbol, :move] Specifies the event type. For a move action, this property is always set to `mov
241
+ end
242
+
243
+ class Screenshot < OpenAI::Internal::Type::BaseModel
244
+ # @!attribute type
245
+ # Specifies the event type. For a screenshot action, this property is always set
246
+ # to `screenshot`.
247
+ #
248
+ # @return [Symbol, :screenshot]
249
+ required :type, const: :screenshot
250
+
251
+ # @!method initialize(type: :screenshot)
252
+ # Some parameter documentations has been truncated, see
253
+ # {OpenAI::Models::Responses::ComputerAction::Screenshot} for more details.
254
+ #
255
+ # A screenshot action.
256
+ #
257
+ # @param type [Symbol, :screenshot] Specifies the event type. For a screenshot action, this property is always set t
258
+ end
259
+
260
+ class Scroll < OpenAI::Internal::Type::BaseModel
261
+ # @!attribute scroll_x
262
+ # The horizontal scroll distance.
263
+ #
264
+ # @return [Integer]
265
+ required :scroll_x, Integer
266
+
267
+ # @!attribute scroll_y
268
+ # The vertical scroll distance.
269
+ #
270
+ # @return [Integer]
271
+ required :scroll_y, Integer
272
+
273
+ # @!attribute type
274
+ # Specifies the event type. For a scroll action, this property is always set to
275
+ # `scroll`.
276
+ #
277
+ # @return [Symbol, :scroll]
278
+ required :type, const: :scroll
279
+
280
+ # @!attribute x
281
+ # The x-coordinate where the scroll occurred.
282
+ #
283
+ # @return [Integer]
284
+ required :x, Integer
285
+
286
+ # @!attribute y_
287
+ # The y-coordinate where the scroll occurred.
288
+ #
289
+ # @return [Integer]
290
+ required :y_, Integer, api_name: :y
291
+
292
+ # @!method initialize(scroll_x:, scroll_y:, x:, y_:, type: :scroll)
293
+ # Some parameter documentations has been truncated, see
294
+ # {OpenAI::Models::Responses::ComputerAction::Scroll} for more details.
295
+ #
296
+ # A scroll action.
297
+ #
298
+ # @param scroll_x [Integer] The horizontal scroll distance.
299
+ #
300
+ # @param scroll_y [Integer] The vertical scroll distance.
301
+ #
302
+ # @param x [Integer] The x-coordinate where the scroll occurred.
303
+ #
304
+ # @param y_ [Integer] The y-coordinate where the scroll occurred.
305
+ #
306
+ # @param type [Symbol, :scroll] Specifies the event type. For a scroll action, this property is always set to `s
307
+ end
308
+
309
+ class Type < OpenAI::Internal::Type::BaseModel
310
+ # @!attribute text
311
+ # The text to type.
312
+ #
313
+ # @return [String]
314
+ required :text, String
315
+
316
+ # @!attribute type
317
+ # Specifies the event type. For a type action, this property is always set to
318
+ # `type`.
319
+ #
320
+ # @return [Symbol, :type]
321
+ required :type, const: :type
322
+
323
+ # @!method initialize(text:, type: :type)
324
+ # Some parameter documentations has been truncated, see
325
+ # {OpenAI::Models::Responses::ComputerAction::Type} for more details.
326
+ #
327
+ # An action to type in text.
328
+ #
329
+ # @param text [String] The text to type.
330
+ #
331
+ # @param type [Symbol, :type] Specifies the event type. For a type action, this property is always set to `typ
332
+ end
333
+
334
+ class Wait < OpenAI::Internal::Type::BaseModel
335
+ # @!attribute type
336
+ # Specifies the event type. For a wait action, this property is always set to
337
+ # `wait`.
338
+ #
339
+ # @return [Symbol, :wait]
340
+ required :type, const: :wait
341
+
342
+ # @!method initialize(type: :wait)
343
+ # Some parameter documentations has been truncated, see
344
+ # {OpenAI::Models::Responses::ComputerAction::Wait} for more details.
345
+ #
346
+ # A wait action.
347
+ #
348
+ # @param type [Symbol, :wait] Specifies the event type. For a wait action, this property is always set to `wai
349
+ end
350
+
351
+ # @!method self.variants
352
+ # @return [Array(OpenAI::Models::Responses::ComputerAction::Click, OpenAI::Models::Responses::ComputerAction::DoubleClick, OpenAI::Models::Responses::ComputerAction::Drag, OpenAI::Models::Responses::ComputerAction::Keypress, OpenAI::Models::Responses::ComputerAction::Move, OpenAI::Models::Responses::ComputerAction::Screenshot, OpenAI::Models::Responses::ComputerAction::Scroll, OpenAI::Models::Responses::ComputerAction::Type, OpenAI::Models::Responses::ComputerAction::Wait)]
353
+ end
354
+ end
355
+ end
356
+ end
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Responses
6
+ # @type [OpenAI::Internal::Type::Converter]
7
+ ComputerActionList = OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Responses::ComputerAction }]
8
+ end
9
+ end
10
+ end