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
data/lib/openai.rb CHANGED
@@ -363,6 +363,8 @@ require_relative "openai/models/fine_tuning/checkpoints/permission_create_params
363
363
  require_relative "openai/models/fine_tuning/checkpoints/permission_create_response"
364
364
  require_relative "openai/models/fine_tuning/checkpoints/permission_delete_params"
365
365
  require_relative "openai/models/fine_tuning/checkpoints/permission_delete_response"
366
+ require_relative "openai/models/fine_tuning/checkpoints/permission_list_params"
367
+ require_relative "openai/models/fine_tuning/checkpoints/permission_list_response"
366
368
  require_relative "openai/models/fine_tuning/checkpoints/permission_retrieve_params"
367
369
  require_relative "openai/models/fine_tuning/checkpoints/permission_retrieve_response"
368
370
  require_relative "openai/models/fine_tuning/dpo_hyperparameters"
@@ -535,7 +537,10 @@ require_relative "openai/models/response_format_text_grammar"
535
537
  require_relative "openai/models/response_format_text_python"
536
538
  require_relative "openai/models/responses/apply_patch_tool"
537
539
  require_relative "openai/models/responses/compacted_response"
540
+ require_relative "openai/models/responses/computer_action"
541
+ require_relative "openai/models/responses/computer_action_list"
538
542
  require_relative "openai/models/responses/computer_tool"
543
+ require_relative "openai/models/responses/computer_use_tool"
539
544
  require_relative "openai/models/responses/container_auto"
540
545
  require_relative "openai/models/responses/container_network_policy_allowlist"
541
546
  require_relative "openai/models/responses/container_network_policy_disabled"
@@ -553,6 +558,7 @@ require_relative "openai/models/responses/input_token_count_params"
553
558
  require_relative "openai/models/responses/input_token_count_response"
554
559
  require_relative "openai/models/responses/local_environment"
555
560
  require_relative "openai/models/responses/local_skill"
561
+ require_relative "openai/models/responses/namespace_tool"
556
562
  require_relative "openai/models/responses/response"
557
563
  require_relative "openai/models/responses/response_apply_patch_tool_call"
558
564
  require_relative "openai/models/responses/response_apply_patch_tool_call_output"
@@ -657,6 +663,9 @@ require_relative "openai/models/responses/response_stream_event"
657
663
  require_relative "openai/models/responses/response_text_config"
658
664
  require_relative "openai/models/responses/response_text_delta_event"
659
665
  require_relative "openai/models/responses/response_text_done_event"
666
+ require_relative "openai/models/responses/response_tool_search_call"
667
+ require_relative "openai/models/responses/response_tool_search_output_item"
668
+ require_relative "openai/models/responses/response_tool_search_output_item_param"
660
669
  require_relative "openai/models/responses/response_usage"
661
670
  require_relative "openai/models/responses/response_web_search_call_completed_event"
662
671
  require_relative "openai/models/responses/response_web_search_call_in_progress_event"
@@ -671,6 +680,7 @@ require_relative "openai/models/responses/tool_choice_mcp"
671
680
  require_relative "openai/models/responses/tool_choice_options"
672
681
  require_relative "openai/models/responses/tool_choice_shell"
673
682
  require_relative "openai/models/responses/tool_choice_types"
683
+ require_relative "openai/models/responses/tool_search_tool"
674
684
  require_relative "openai/models/responses/web_search_preview_tool"
675
685
  require_relative "openai/models/responses/web_search_tool"
676
686
  require_relative "openai/models/responses_model"
@@ -19,27 +19,37 @@ module OpenAI
19
19
  sig { returns(T.nilable(String)) }
20
20
  attr_reader :project
21
21
 
22
+ # Given a prompt, the model will return one or more predicted completions, and can
23
+ # also return the probabilities of alternative tokens at each position.
22
24
  sig { returns(OpenAI::Resources::Completions) }
23
25
  attr_reader :completions
24
26
 
25
27
  sig { returns(OpenAI::Resources::Chat) }
26
28
  attr_reader :chat
27
29
 
30
+ # Get a vector representation of a given input that can be easily consumed by
31
+ # machine learning models and algorithms.
28
32
  sig { returns(OpenAI::Resources::Embeddings) }
29
33
  attr_reader :embeddings
30
34
 
35
+ # Files are used to upload documents that can be used with features like
36
+ # Assistants and Fine-tuning.
31
37
  sig { returns(OpenAI::Resources::Files) }
32
38
  attr_reader :files
33
39
 
40
+ # Given a prompt and/or an input image, the model will generate a new image.
34
41
  sig { returns(OpenAI::Resources::Images) }
35
42
  attr_reader :images
36
43
 
37
44
  sig { returns(OpenAI::Resources::Audio) }
38
45
  attr_reader :audio
39
46
 
47
+ # Given text and/or image inputs, classifies if those inputs are potentially
48
+ # harmful.
40
49
  sig { returns(OpenAI::Resources::Moderations) }
41
50
  attr_reader :moderations
42
51
 
52
+ # List and describe the various models available in the API.
43
53
  sig { returns(OpenAI::Resources::Models) }
44
54
  attr_reader :models
45
55
 
@@ -58,9 +68,11 @@ module OpenAI
58
68
  sig { returns(OpenAI::Resources::Beta) }
59
69
  attr_reader :beta
60
70
 
71
+ # Create large batches of API requests to run asynchronously.
61
72
  sig { returns(OpenAI::Resources::Batches) }
62
73
  attr_reader :batches
63
74
 
75
+ # Use Uploads to upload large files in multiple parts.
64
76
  sig { returns(OpenAI::Resources::Uploads) }
65
77
  attr_reader :uploads
66
78
 
@@ -70,9 +82,11 @@ module OpenAI
70
82
  sig { returns(OpenAI::Resources::Realtime) }
71
83
  attr_reader :realtime
72
84
 
85
+ # Manage conversations and conversation items.
73
86
  sig { returns(OpenAI::Resources::Conversations) }
74
87
  attr_reader :conversations
75
88
 
89
+ # Manage and run evals in the OpenAI platform.
76
90
  sig { returns(OpenAI::Resources::Evals) }
77
91
  attr_reader :evals
78
92
 
@@ -301,6 +301,26 @@ module OpenAI
301
301
  T.let(%r{^application/(:?x-(?:n|l)djson)|(:?(?:x-)?jsonl)}, Regexp)
302
302
 
303
303
  class << self
304
+ # @api private
305
+ sig do
306
+ params(query: OpenAI::Internal::AnyHash).returns(
307
+ OpenAI::Internal::AnyHash
308
+ )
309
+ end
310
+ def encode_query_params(query)
311
+ end
312
+
313
+ # @api private
314
+ sig do
315
+ params(
316
+ collection: OpenAI::Internal::AnyHash,
317
+ key: String,
318
+ element: T.anything
319
+ ).void
320
+ end
321
+ private def write_query_param_element!(collection, key, element)
322
+ end
323
+
304
324
  # @api private
305
325
  sig do
306
326
  params(
@@ -11,15 +11,23 @@ module OpenAI
11
11
  T.any(OpenAI::BatchCancelParams, OpenAI::Internal::AnyHash)
12
12
  end
13
13
 
14
+ sig { returns(String) }
15
+ attr_accessor :batch_id
16
+
14
17
  sig do
15
- params(request_options: OpenAI::RequestOptions::OrHash).returns(
16
- T.attached_class
17
- )
18
+ params(
19
+ batch_id: String,
20
+ request_options: OpenAI::RequestOptions::OrHash
21
+ ).returns(T.attached_class)
18
22
  end
19
- def self.new(request_options: {})
23
+ def self.new(batch_id:, request_options: {})
20
24
  end
21
25
 
22
- sig { override.returns({ request_options: OpenAI::RequestOptions }) }
26
+ sig do
27
+ override.returns(
28
+ { batch_id: String, request_options: OpenAI::RequestOptions }
29
+ )
30
+ end
23
31
  def to_hash
24
32
  end
25
33
  end
@@ -11,15 +11,23 @@ module OpenAI
11
11
  T.any(OpenAI::BatchRetrieveParams, OpenAI::Internal::AnyHash)
12
12
  end
13
13
 
14
+ sig { returns(String) }
15
+ attr_accessor :batch_id
16
+
14
17
  sig do
15
- params(request_options: OpenAI::RequestOptions::OrHash).returns(
16
- T.attached_class
17
- )
18
+ params(
19
+ batch_id: String,
20
+ request_options: OpenAI::RequestOptions::OrHash
21
+ ).returns(T.attached_class)
18
22
  end
19
- def self.new(request_options: {})
23
+ def self.new(batch_id:, request_options: {})
20
24
  end
21
25
 
22
- sig { override.returns({ request_options: OpenAI::RequestOptions }) }
26
+ sig do
27
+ override.returns(
28
+ { batch_id: String, request_options: OpenAI::RequestOptions }
29
+ )
30
+ end
23
31
  def to_hash
24
32
  end
25
33
  end
@@ -549,8 +549,9 @@ module OpenAI
549
549
  attr_writer :chunking_strategy
550
550
 
551
551
  # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to
552
- # add to the vector store. There can be a maximum of 10000 files in a vector
553
- # store.
552
+ # add to the vector store. For vector stores created before Nov 2025, there can be
553
+ # a maximum of 10,000 files in a vector store. For vector stores created starting
554
+ # in Nov 2025, the limit is 100,000,000 files.
554
555
  sig { returns(T.nilable(T::Array[String])) }
555
556
  attr_reader :file_ids
556
557
 
@@ -582,8 +583,9 @@ module OpenAI
582
583
  # strategy.
583
584
  chunking_strategy: nil,
584
585
  # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to
585
- # add to the vector store. There can be a maximum of 10000 files in a vector
586
- # store.
586
+ # add to the vector store. For vector stores created before Nov 2025, there can be
587
+ # a maximum of 10,000 files in a vector store. For vector stores created starting
588
+ # in Nov 2025, the limit is 100,000,000 files.
587
589
  file_ids: nil,
588
590
  # Set of 16 key-value pairs that can be attached to an object. This can be useful
589
591
  # for storing additional information about the object in a structured format, and
@@ -15,15 +15,23 @@ module OpenAI
15
15
  )
16
16
  end
17
17
 
18
+ sig { returns(String) }
19
+ attr_accessor :assistant_id
20
+
18
21
  sig do
19
- params(request_options: OpenAI::RequestOptions::OrHash).returns(
20
- T.attached_class
21
- )
22
+ params(
23
+ assistant_id: String,
24
+ request_options: OpenAI::RequestOptions::OrHash
25
+ ).returns(T.attached_class)
22
26
  end
23
- def self.new(request_options: {})
27
+ def self.new(assistant_id:, request_options: {})
24
28
  end
25
29
 
26
- sig { override.returns({ request_options: OpenAI::RequestOptions }) }
30
+ sig do
31
+ override.returns(
32
+ { assistant_id: String, request_options: OpenAI::RequestOptions }
33
+ )
34
+ end
27
35
  def to_hash
28
36
  end
29
37
  end
@@ -15,15 +15,23 @@ module OpenAI
15
15
  )
16
16
  end
17
17
 
18
+ sig { returns(String) }
19
+ attr_accessor :assistant_id
20
+
18
21
  sig do
19
- params(request_options: OpenAI::RequestOptions::OrHash).returns(
20
- T.attached_class
21
- )
22
+ params(
23
+ assistant_id: String,
24
+ request_options: OpenAI::RequestOptions::OrHash
25
+ ).returns(T.attached_class)
22
26
  end
23
- def self.new(request_options: {})
27
+ def self.new(assistant_id:, request_options: {})
24
28
  end
25
29
 
26
- sig { override.returns({ request_options: OpenAI::RequestOptions }) }
30
+ sig do
31
+ override.returns(
32
+ { assistant_id: String, request_options: OpenAI::RequestOptions }
33
+ )
34
+ end
27
35
  def to_hash
28
36
  end
29
37
  end
@@ -15,6 +15,9 @@ module OpenAI
15
15
  )
16
16
  end
17
17
 
18
+ sig { returns(String) }
19
+ attr_accessor :assistant_id
20
+
18
21
  # The description of the assistant. The maximum length is 512 characters.
19
22
  sig { returns(T.nilable(String)) }
20
23
  attr_accessor :description
@@ -182,6 +185,7 @@ module OpenAI
182
185
 
183
186
  sig do
184
187
  params(
188
+ assistant_id: String,
185
189
  description: T.nilable(String),
186
190
  instructions: T.nilable(String),
187
191
  metadata: T.nilable(T::Hash[Symbol, String]),
@@ -219,6 +223,7 @@ module OpenAI
219
223
  ).returns(T.attached_class)
220
224
  end
221
225
  def self.new(
226
+ assistant_id:,
222
227
  # The description of the assistant. The maximum length is 512 characters.
223
228
  description: nil,
224
229
  # The system instructions that the assistant uses. The maximum length is 256,000
@@ -300,6 +305,7 @@ module OpenAI
300
305
  sig do
301
306
  override.returns(
302
307
  {
308
+ assistant_id: String,
303
309
  description: T.nilable(String),
304
310
  instructions: T.nilable(String),
305
311
  metadata: T.nilable(T::Hash[Symbol, String]),
@@ -16,15 +16,23 @@ module OpenAI
16
16
  )
17
17
  end
18
18
 
19
+ sig { returns(String) }
20
+ attr_accessor :session_id
21
+
19
22
  sig do
20
- params(request_options: OpenAI::RequestOptions::OrHash).returns(
21
- T.attached_class
22
- )
23
+ params(
24
+ session_id: String,
25
+ request_options: OpenAI::RequestOptions::OrHash
26
+ ).returns(T.attached_class)
23
27
  end
24
- def self.new(request_options: {})
28
+ def self.new(session_id:, request_options: {})
25
29
  end
26
30
 
27
- sig { override.returns({ request_options: OpenAI::RequestOptions }) }
31
+ sig do
32
+ override.returns(
33
+ { session_id: String, request_options: OpenAI::RequestOptions }
34
+ )
35
+ end
28
36
  def to_hash
29
37
  end
30
38
  end
@@ -16,15 +16,23 @@ module OpenAI
16
16
  )
17
17
  end
18
18
 
19
+ sig { returns(String) }
20
+ attr_accessor :thread_id
21
+
19
22
  sig do
20
- params(request_options: OpenAI::RequestOptions::OrHash).returns(
21
- T.attached_class
22
- )
23
+ params(
24
+ thread_id: String,
25
+ request_options: OpenAI::RequestOptions::OrHash
26
+ ).returns(T.attached_class)
23
27
  end
24
- def self.new(request_options: {})
28
+ def self.new(thread_id:, request_options: {})
25
29
  end
26
30
 
27
- sig { override.returns({ request_options: OpenAI::RequestOptions }) }
31
+ sig do
32
+ override.returns(
33
+ { thread_id: String, request_options: OpenAI::RequestOptions }
34
+ )
35
+ end
28
36
  def to_hash
29
37
  end
30
38
  end
@@ -16,6 +16,9 @@ module OpenAI
16
16
  )
17
17
  end
18
18
 
19
+ sig { returns(String) }
20
+ attr_accessor :thread_id
21
+
19
22
  # List items created after this thread item ID. Defaults to null for the first
20
23
  # page.
21
24
  sig { returns(T.nilable(String)) }
@@ -59,6 +62,7 @@ module OpenAI
59
62
 
60
63
  sig do
61
64
  params(
65
+ thread_id: String,
62
66
  after: String,
63
67
  before: String,
64
68
  limit: Integer,
@@ -68,6 +72,7 @@ module OpenAI
68
72
  ).returns(T.attached_class)
69
73
  end
70
74
  def self.new(
75
+ thread_id:,
71
76
  # List items created after this thread item ID. Defaults to null for the first
72
77
  # page.
73
78
  after: nil,
@@ -85,6 +90,7 @@ module OpenAI
85
90
  sig do
86
91
  override.returns(
87
92
  {
93
+ thread_id: String,
88
94
  after: String,
89
95
  before: String,
90
96
  limit: Integer,
@@ -16,15 +16,23 @@ module OpenAI
16
16
  )
17
17
  end
18
18
 
19
+ sig { returns(String) }
20
+ attr_accessor :thread_id
21
+
19
22
  sig do
20
- params(request_options: OpenAI::RequestOptions::OrHash).returns(
21
- T.attached_class
22
- )
23
+ params(
24
+ thread_id: String,
25
+ request_options: OpenAI::RequestOptions::OrHash
26
+ ).returns(T.attached_class)
23
27
  end
24
- def self.new(request_options: {})
28
+ def self.new(thread_id:, request_options: {})
25
29
  end
26
30
 
27
- sig { override.returns({ request_options: OpenAI::RequestOptions }) }
31
+ sig do
32
+ override.returns(
33
+ { thread_id: String, request_options: OpenAI::RequestOptions }
34
+ )
35
+ end
28
36
  def to_hash
29
37
  end
30
38
  end
@@ -1070,8 +1070,9 @@ module OpenAI
1070
1070
  attr_writer :chunking_strategy
1071
1071
 
1072
1072
  # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to
1073
- # add to the vector store. There can be a maximum of 10000 files in a vector
1074
- # store.
1073
+ # add to the vector store. For vector stores created before Nov 2025, there can be
1074
+ # a maximum of 10,000 files in a vector store. For vector stores created starting
1075
+ # in Nov 2025, the limit is 100,000,000 files.
1075
1076
  sig { returns(T.nilable(T::Array[String])) }
1076
1077
  attr_reader :file_ids
1077
1078
 
@@ -1103,8 +1104,9 @@ module OpenAI
1103
1104
  # strategy.
1104
1105
  chunking_strategy: nil,
1105
1106
  # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to
1106
- # add to the vector store. There can be a maximum of 10000 files in a vector
1107
- # store.
1107
+ # add to the vector store. For vector stores created before Nov 2025, there can be
1108
+ # a maximum of 10,000 files in a vector store. For vector stores created starting
1109
+ # in Nov 2025, the limit is 100,000,000 files.
1108
1110
  file_ids: nil,
1109
1111
  # Set of 16 key-value pairs that can be attached to an object. This can be useful
1110
1112
  # for storing additional information about the object in a structured format, and
@@ -622,8 +622,9 @@ module OpenAI
622
622
  attr_writer :chunking_strategy
623
623
 
624
624
  # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to
625
- # add to the vector store. There can be a maximum of 10000 files in a vector
626
- # store.
625
+ # add to the vector store. For vector stores created before Nov 2025, there can be
626
+ # a maximum of 10,000 files in a vector store. For vector stores created starting
627
+ # in Nov 2025, the limit is 100,000,000 files.
627
628
  sig { returns(T.nilable(T::Array[String])) }
628
629
  attr_reader :file_ids
629
630
 
@@ -655,8 +656,9 @@ module OpenAI
655
656
  # strategy.
656
657
  chunking_strategy: nil,
657
658
  # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to
658
- # add to the vector store. There can be a maximum of 10000 files in a vector
659
- # store.
659
+ # add to the vector store. For vector stores created before Nov 2025, there can be
660
+ # a maximum of 10,000 files in a vector store. For vector stores created starting
661
+ # in Nov 2025, the limit is 100,000,000 files.
660
662
  file_ids: nil,
661
663
  # Set of 16 key-value pairs that can be attached to an object. This can be useful
662
664
  # for storing additional information about the object in a structured format, and
@@ -12,15 +12,23 @@ module OpenAI
12
12
  T.any(OpenAI::Beta::ThreadDeleteParams, OpenAI::Internal::AnyHash)
13
13
  end
14
14
 
15
+ sig { returns(String) }
16
+ attr_accessor :thread_id
17
+
15
18
  sig do
16
- params(request_options: OpenAI::RequestOptions::OrHash).returns(
17
- T.attached_class
18
- )
19
+ params(
20
+ thread_id: String,
21
+ request_options: OpenAI::RequestOptions::OrHash
22
+ ).returns(T.attached_class)
19
23
  end
20
- def self.new(request_options: {})
24
+ def self.new(thread_id:, request_options: {})
21
25
  end
22
26
 
23
- sig { override.returns({ request_options: OpenAI::RequestOptions }) }
27
+ sig do
28
+ override.returns(
29
+ { thread_id: String, request_options: OpenAI::RequestOptions }
30
+ )
31
+ end
24
32
  def to_hash
25
33
  end
26
34
  end
@@ -12,15 +12,23 @@ module OpenAI
12
12
  T.any(OpenAI::Beta::ThreadRetrieveParams, OpenAI::Internal::AnyHash)
13
13
  end
14
14
 
15
+ sig { returns(String) }
16
+ attr_accessor :thread_id
17
+
15
18
  sig do
16
- params(request_options: OpenAI::RequestOptions::OrHash).returns(
17
- T.attached_class
18
- )
19
+ params(
20
+ thread_id: String,
21
+ request_options: OpenAI::RequestOptions::OrHash
22
+ ).returns(T.attached_class)
19
23
  end
20
- def self.new(request_options: {})
24
+ def self.new(thread_id:, request_options: {})
21
25
  end
22
26
 
23
- sig { override.returns({ request_options: OpenAI::RequestOptions }) }
27
+ sig do
28
+ override.returns(
29
+ { thread_id: String, request_options: OpenAI::RequestOptions }
30
+ )
31
+ end
24
32
  def to_hash
25
33
  end
26
34
  end
@@ -12,6 +12,9 @@ module OpenAI
12
12
  T.any(OpenAI::Beta::ThreadUpdateParams, OpenAI::Internal::AnyHash)
13
13
  end
14
14
 
15
+ sig { returns(String) }
16
+ attr_accessor :thread_id
17
+
15
18
  # Set of 16 key-value pairs that can be attached to an object. This can be useful
16
19
  # for storing additional information about the object in a structured format, and
17
20
  # querying for objects via API or the dashboard.
@@ -40,6 +43,7 @@ module OpenAI
40
43
 
41
44
  sig do
42
45
  params(
46
+ thread_id: String,
43
47
  metadata: T.nilable(T::Hash[Symbol, String]),
44
48
  tool_resources:
45
49
  T.nilable(
@@ -49,6 +53,7 @@ module OpenAI
49
53
  ).returns(T.attached_class)
50
54
  end
51
55
  def self.new(
56
+ thread_id:,
52
57
  # Set of 16 key-value pairs that can be attached to an object. This can be useful
53
58
  # for storing additional information about the object in a structured format, and
54
59
  # querying for objects via API or the dashboard.
@@ -68,6 +73,7 @@ module OpenAI
68
73
  sig do
69
74
  override.returns(
70
75
  {
76
+ thread_id: String,
71
77
  metadata: T.nilable(T::Hash[Symbol, String]),
72
78
  tool_resources:
73
79
  T.nilable(OpenAI::Beta::ThreadUpdateParams::ToolResources),
@@ -16,6 +16,9 @@ module OpenAI
16
16
  )
17
17
  end
18
18
 
19
+ sig { returns(String) }
20
+ attr_accessor :thread_id
21
+
19
22
  # The text contents of the message.
20
23
  sig do
21
24
  returns(
@@ -56,6 +59,7 @@ module OpenAI
56
59
 
57
60
  sig do
58
61
  params(
62
+ thread_id: String,
59
63
  content:
60
64
  OpenAI::Beta::Threads::MessageCreateParams::Content::Variants,
61
65
  role: OpenAI::Beta::Threads::MessageCreateParams::Role::OrSymbol,
@@ -70,6 +74,7 @@ module OpenAI
70
74
  ).returns(T.attached_class)
71
75
  end
72
76
  def self.new(
77
+ thread_id:,
73
78
  # The text contents of the message.
74
79
  content:,
75
80
  # The role of the entity that is creating the message. Allowed values include:
@@ -95,6 +100,7 @@ module OpenAI
95
100
  sig do
96
101
  override.returns(
97
102
  {
103
+ thread_id: String,
98
104
  content:
99
105
  OpenAI::Beta::Threads::MessageCreateParams::Content::Variants,
100
106
  role:
@@ -19,18 +19,26 @@ module OpenAI
19
19
  sig { returns(String) }
20
20
  attr_accessor :thread_id
21
21
 
22
+ sig { returns(String) }
23
+ attr_accessor :message_id
24
+
22
25
  sig do
23
26
  params(
24
27
  thread_id: String,
28
+ message_id: String,
25
29
  request_options: OpenAI::RequestOptions::OrHash
26
30
  ).returns(T.attached_class)
27
31
  end
28
- def self.new(thread_id:, request_options: {})
32
+ def self.new(thread_id:, message_id:, request_options: {})
29
33
  end
30
34
 
31
35
  sig do
32
36
  override.returns(
33
- { thread_id: String, request_options: OpenAI::RequestOptions }
37
+ {
38
+ thread_id: String,
39
+ message_id: String,
40
+ request_options: OpenAI::RequestOptions
41
+ }
34
42
  )
35
43
  end
36
44
  def to_hash