openai 0.86.0 → 0.88.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 (1248) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +10 -1
  4. data/examples/audio/record_and_play.rb +19 -0
  5. data/examples/responses/websocket_workflows.rb +159 -0
  6. data/lib/openai/helpers/local_audio/errors.rb +27 -0
  7. data/lib/openai/helpers/local_audio/process.rb +158 -0
  8. data/lib/openai/helpers/local_audio.rb +157 -0
  9. data/lib/openai/helpers/realtime/connection.rb +20 -2
  10. data/lib/openai/helpers/realtime/errors.rb +18 -0
  11. data/lib/openai/helpers/realtime/recovery.rb +489 -0
  12. data/lib/openai/helpers/realtime/resources/realtime_extension.rb +26 -1
  13. data/lib/openai/helpers/realtime.rb +1 -0
  14. data/lib/openai/models/admin/organization/admin_api_key.rb +26 -13
  15. data/lib/openai/models/admin/organization/admin_api_key_create_params.rb +3 -4
  16. data/lib/openai/models/admin/organization/admin_api_key_create_response.rb +16 -8
  17. data/lib/openai/models/admin/organization/admin_api_key_delete_params.rb +2 -1
  18. data/lib/openai/models/admin/organization/admin_api_key_list_params.rb +6 -3
  19. data/lib/openai/models/admin/organization/admin_api_key_retrieve_params.rb +2 -1
  20. data/lib/openai/models/admin/organization/audit_log_list_params.rb +47 -22
  21. data/lib/openai/models/admin/organization/audit_log_list_response.rb +486 -254
  22. data/lib/openai/models/admin/organization/certificate.rb +24 -11
  23. data/lib/openai/models/admin/organization/certificate_activate_response.rb +14 -7
  24. data/lib/openai/models/admin/organization/certificate_create_params.rb +4 -2
  25. data/lib/openai/models/admin/organization/certificate_deactivate_response.rb +14 -7
  26. data/lib/openai/models/admin/organization/certificate_delete_response.rb +4 -2
  27. data/lib/openai/models/admin/organization/certificate_list_params.rb +11 -6
  28. data/lib/openai/models/admin/organization/certificate_list_response.rb +14 -7
  29. data/lib/openai/models/admin/organization/certificate_retrieve_params.rb +3 -5
  30. data/lib/openai/models/admin/organization/certificate_update_params.rb +2 -1
  31. data/lib/openai/models/admin/organization/data_retention_update_params.rb +2 -1
  32. data/lib/openai/models/admin/organization/group.rb +11 -8
  33. data/lib/openai/models/admin/organization/group_create_params.rb +2 -1
  34. data/lib/openai/models/admin/organization/group_delete_response.rb +6 -3
  35. data/lib/openai/models/admin/organization/group_list_params.rb +10 -6
  36. data/lib/openai/models/admin/organization/group_update_params.rb +2 -1
  37. data/lib/openai/models/admin/organization/group_update_response.rb +9 -7
  38. data/lib/openai/models/admin/organization/groups/organization_group_user.rb +6 -3
  39. data/lib/openai/models/admin/organization/groups/role_create_params.rb +2 -1
  40. data/lib/openai/models/admin/organization/groups/role_create_response.rb +16 -8
  41. data/lib/openai/models/admin/organization/groups/role_delete_response.rb +5 -6
  42. data/lib/openai/models/admin/organization/groups/role_list_params.rb +7 -6
  43. data/lib/openai/models/admin/organization/groups/role_list_response.rb +24 -13
  44. data/lib/openai/models/admin/organization/groups/role_retrieve_response.rb +24 -13
  45. data/lib/openai/models/admin/organization/groups/user_create_params.rb +2 -1
  46. data/lib/openai/models/admin/organization/groups/user_create_response.rb +6 -3
  47. data/lib/openai/models/admin/organization/groups/user_delete_response.rb +4 -2
  48. data/lib/openai/models/admin/organization/groups/user_list_params.rb +8 -6
  49. data/lib/openai/models/admin/organization/groups/user_retrieve_response.rb +12 -6
  50. data/lib/openai/models/admin/organization/invite.rb +22 -12
  51. data/lib/openai/models/admin/organization/invite_create_params.rb +13 -8
  52. data/lib/openai/models/admin/organization/invite_delete_response.rb +2 -1
  53. data/lib/openai/models/admin/organization/invite_list_params.rb +8 -5
  54. data/lib/openai/models/admin/organization/organization_data_retention.rb +4 -2
  55. data/lib/openai/models/admin/organization/organization_spend_alert.rb +18 -9
  56. data/lib/openai/models/admin/organization/organization_spend_alert_deleted.rb +6 -3
  57. data/lib/openai/models/admin/organization/organization_spend_limit.rb +13 -9
  58. data/lib/openai/models/admin/organization/organization_spend_limit_deleted.rb +4 -2
  59. data/lib/openai/models/admin/organization/organization_user.rb +32 -16
  60. data/lib/openai/models/admin/organization/project.rb +16 -8
  61. data/lib/openai/models/admin/organization/project_create_params.rb +18 -9
  62. data/lib/openai/models/admin/organization/project_list_params.rb +11 -6
  63. data/lib/openai/models/admin/organization/project_update_params.rb +7 -6
  64. data/lib/openai/models/admin/organization/projects/api_key_list_params.rb +14 -7
  65. data/lib/openai/models/admin/organization/projects/certificate_activate_response.rb +14 -7
  66. data/lib/openai/models/admin/organization/projects/certificate_deactivate_response.rb +14 -7
  67. data/lib/openai/models/admin/organization/projects/certificate_list_params.rb +11 -7
  68. data/lib/openai/models/admin/organization/projects/certificate_list_response.rb +14 -7
  69. data/lib/openai/models/admin/organization/projects/data_retention_update_params.rb +2 -1
  70. data/lib/openai/models/admin/organization/projects/group_create_params.rb +4 -2
  71. data/lib/openai/models/admin/organization/projects/group_delete_response.rb +4 -2
  72. data/lib/openai/models/admin/organization/projects/group_list_params.rb +7 -7
  73. data/lib/openai/models/admin/organization/projects/group_retrieve_params.rb +2 -1
  74. data/lib/openai/models/admin/organization/projects/groups/role_create_params.rb +2 -1
  75. data/lib/openai/models/admin/organization/projects/groups/role_create_response.rb +16 -8
  76. data/lib/openai/models/admin/organization/projects/groups/role_delete_response.rb +5 -6
  77. data/lib/openai/models/admin/organization/projects/groups/role_list_params.rb +7 -7
  78. data/lib/openai/models/admin/organization/projects/groups/role_list_response.rb +24 -13
  79. data/lib/openai/models/admin/organization/projects/groups/role_retrieve_response.rb +24 -13
  80. data/lib/openai/models/admin/organization/projects/hosted_tool_permission_update_params.rb +20 -10
  81. data/lib/openai/models/admin/organization/projects/model_permission_update_params.rb +4 -2
  82. data/lib/openai/models/admin/organization/projects/project_api_key.rb +50 -20
  83. data/lib/openai/models/admin/organization/projects/project_data_retention.rb +4 -2
  84. data/lib/openai/models/admin/organization/projects/project_group.rb +12 -6
  85. data/lib/openai/models/admin/organization/projects/project_hosted_tool_permissions.rb +20 -10
  86. data/lib/openai/models/admin/organization/projects/project_model_permissions.rb +6 -3
  87. data/lib/openai/models/admin/organization/projects/project_model_permissions_deleted.rb +4 -2
  88. data/lib/openai/models/admin/organization/projects/project_rate_limit.rb +18 -9
  89. data/lib/openai/models/admin/organization/projects/project_service_account.rb +10 -5
  90. data/lib/openai/models/admin/organization/projects/project_spend_alert.rb +18 -9
  91. data/lib/openai/models/admin/organization/projects/project_spend_alert_deleted.rb +6 -3
  92. data/lib/openai/models/admin/organization/projects/project_spend_limit.rb +13 -10
  93. data/lib/openai/models/admin/organization/projects/project_spend_limit_deleted.rb +4 -2
  94. data/lib/openai/models/admin/organization/projects/project_user.rb +12 -6
  95. data/lib/openai/models/admin/organization/projects/rate_limit_list_rate_limits_params.rb +12 -7
  96. data/lib/openai/models/admin/organization/projects/rate_limit_update_rate_limit_params.rb +12 -6
  97. data/lib/openai/models/admin/organization/projects/role_create_params.rb +6 -3
  98. data/lib/openai/models/admin/organization/projects/role_delete_response.rb +6 -3
  99. data/lib/openai/models/admin/organization/projects/role_list_params.rb +7 -7
  100. data/lib/openai/models/admin/organization/projects/role_update_params.rb +6 -3
  101. data/lib/openai/models/admin/organization/projects/service_account_create_params.rb +22 -3
  102. data/lib/openai/models/admin/organization/projects/service_account_create_response.rb +17 -7
  103. data/lib/openai/models/admin/organization/projects/service_account_list_params.rb +8 -6
  104. data/lib/openai/models/admin/organization/projects/service_account_update_params.rb +4 -2
  105. data/lib/openai/models/admin/organization/projects/service_accounts/api_key_create_params.rb +10 -5
  106. data/lib/openai/models/admin/organization/projects/service_accounts/api_key_create_response.rb +13 -10
  107. data/lib/openai/models/admin/organization/projects/spend_alert_create_params.rb +14 -7
  108. data/lib/openai/models/admin/organization/projects/spend_alert_list_params.rb +10 -8
  109. data/lib/openai/models/admin/organization/projects/spend_alert_update_params.rb +14 -7
  110. data/lib/openai/models/admin/organization/projects/spend_limit_update_params.rb +7 -7
  111. data/lib/openai/models/admin/organization/projects/user_create_params.rb +6 -3
  112. data/lib/openai/models/admin/organization/projects/user_list_params.rb +8 -6
  113. data/lib/openai/models/admin/organization/projects/user_update_params.rb +2 -1
  114. data/lib/openai/models/admin/organization/projects/users/role_create_params.rb +2 -1
  115. data/lib/openai/models/admin/organization/projects/users/role_create_response.rb +6 -3
  116. data/lib/openai/models/admin/organization/projects/users/role_delete_response.rb +5 -6
  117. data/lib/openai/models/admin/organization/projects/users/role_list_params.rb +7 -7
  118. data/lib/openai/models/admin/organization/projects/users/role_list_response.rb +24 -13
  119. data/lib/openai/models/admin/organization/projects/users/role_retrieve_response.rb +24 -13
  120. data/lib/openai/models/admin/organization/role.rb +15 -10
  121. data/lib/openai/models/admin/organization/role_create_params.rb +6 -3
  122. data/lib/openai/models/admin/organization/role_delete_response.rb +6 -3
  123. data/lib/openai/models/admin/organization/role_list_params.rb +7 -6
  124. data/lib/openai/models/admin/organization/role_update_params.rb +6 -3
  125. data/lib/openai/models/admin/organization/spend_alert_create_params.rb +14 -7
  126. data/lib/openai/models/admin/organization/spend_alert_list_params.rb +10 -7
  127. data/lib/openai/models/admin/organization/spend_alert_update_params.rb +14 -7
  128. data/lib/openai/models/admin/organization/spend_limit_update_params.rb +7 -6
  129. data/lib/openai/models/admin/organization/usage_audio_speeches_params.rb +26 -13
  130. data/lib/openai/models/admin/organization/usage_audio_speeches_response.rb +205 -121
  131. data/lib/openai/models/admin/organization/usage_audio_transcriptions_params.rb +26 -13
  132. data/lib/openai/models/admin/organization/usage_audio_transcriptions_response.rb +205 -121
  133. data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_params.rb +20 -10
  134. data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_response.rb +205 -121
  135. data/lib/openai/models/admin/organization/usage_completions_params.rb +30 -13
  136. data/lib/openai/models/admin/organization/usage_completions_response.rb +205 -121
  137. data/lib/openai/models/admin/organization/usage_costs_params.rb +23 -12
  138. data/lib/openai/models/admin/organization/usage_costs_response.rb +205 -121
  139. data/lib/openai/models/admin/organization/usage_embeddings_params.rb +26 -12
  140. data/lib/openai/models/admin/organization/usage_embeddings_response.rb +205 -121
  141. data/lib/openai/models/admin/organization/usage_file_search_calls_params.rb +27 -13
  142. data/lib/openai/models/admin/organization/usage_file_search_calls_response.rb +205 -121
  143. data/lib/openai/models/admin/organization/usage_images_params.rb +33 -14
  144. data/lib/openai/models/admin/organization/usage_images_response.rb +205 -121
  145. data/lib/openai/models/admin/organization/usage_moderations_params.rb +26 -12
  146. data/lib/openai/models/admin/organization/usage_moderations_response.rb +205 -121
  147. data/lib/openai/models/admin/organization/usage_vector_stores_params.rb +20 -9
  148. data/lib/openai/models/admin/organization/usage_vector_stores_response.rb +205 -121
  149. data/lib/openai/models/admin/organization/usage_web_search_calls_params.rb +29 -14
  150. data/lib/openai/models/admin/organization/usage_web_search_calls_response.rb +205 -121
  151. data/lib/openai/models/admin/organization/user_list_params.rb +10 -6
  152. data/lib/openai/models/admin/organization/user_update_params.rb +8 -4
  153. data/lib/openai/models/admin/organization/users/role_create_params.rb +2 -1
  154. data/lib/openai/models/admin/organization/users/role_create_response.rb +6 -3
  155. data/lib/openai/models/admin/organization/users/role_delete_response.rb +5 -6
  156. data/lib/openai/models/admin/organization/users/role_list_params.rb +7 -6
  157. data/lib/openai/models/admin/organization/users/role_list_response.rb +24 -13
  158. data/lib/openai/models/admin/organization/users/role_retrieve_response.rb +24 -13
  159. data/lib/openai/models/audio/speech_create_params.rb +34 -16
  160. data/lib/openai/models/audio/transcription.rb +35 -20
  161. data/lib/openai/models/audio/transcription_create_params.rb +86 -24
  162. data/lib/openai/models/audio/transcription_diarized.rb +28 -14
  163. data/lib/openai/models/audio/transcription_diarized_segment.rb +14 -9
  164. data/lib/openai/models/audio/transcription_language.rb +2 -1
  165. data/lib/openai/models/audio/transcription_segment.rb +23 -13
  166. data/lib/openai/models/audio/transcription_stream_event.rb +4 -4
  167. data/lib/openai/models/audio/transcription_text_delta_event.rb +19 -16
  168. data/lib/openai/models/audio/transcription_text_done_event.rb +36 -24
  169. data/lib/openai/models/audio/transcription_text_segment_event.rb +13 -7
  170. data/lib/openai/models/audio/transcription_verbose.rb +16 -8
  171. data/lib/openai/models/audio/transcription_word.rb +6 -3
  172. data/lib/openai/models/audio/translation_create_params.rb +26 -8
  173. data/lib/openai/models/audio/translation_verbose.rb +8 -4
  174. data/lib/openai/models/auto_file_chunking_strategy_param.rb +2 -1
  175. data/lib/openai/models/batch.rb +55 -26
  176. data/lib/openai/models/batch_create_params.rb +40 -14
  177. data/lib/openai/models/batch_error.rb +8 -4
  178. data/lib/openai/models/batch_list_params.rb +8 -5
  179. data/lib/openai/models/batch_request_counts.rb +6 -3
  180. data/lib/openai/models/batch_usage.rb +16 -11
  181. data/lib/openai/models/beta/assistant.rb +99 -49
  182. data/lib/openai/models/beta/assistant_create_params.rb +127 -61
  183. data/lib/openai/models/beta/assistant_list_params.rb +16 -7
  184. data/lib/openai/models/beta/assistant_response_format_option.rb +5 -5
  185. data/lib/openai/models/beta/assistant_stream_event.rb +137 -185
  186. data/lib/openai/models/beta/assistant_tool_choice.rb +2 -1
  187. data/lib/openai/models/beta/assistant_tool_choice_function.rb +2 -1
  188. data/lib/openai/models/beta/assistant_update_params.rb +94 -41
  189. data/lib/openai/models/beta/beta_apply_patch_tool.rb +4 -3
  190. data/lib/openai/models/beta/beta_compacted_response.rb +12 -8
  191. data/lib/openai/models/beta/beta_computer_action.rb +78 -58
  192. data/lib/openai/models/beta/beta_computer_tool.rb +3 -2
  193. data/lib/openai/models/beta/beta_computer_use_preview_tool.rb +9 -5
  194. data/lib/openai/models/beta/beta_container_auto.rb +10 -5
  195. data/lib/openai/models/beta/beta_container_network_policy_allowlist.rb +6 -3
  196. data/lib/openai/models/beta/beta_container_network_policy_disabled.rb +2 -1
  197. data/lib/openai/models/beta/beta_container_network_policy_domain_secret.rb +6 -3
  198. data/lib/openai/models/beta/beta_container_reference.rb +4 -2
  199. data/lib/openai/models/beta/beta_custom_tool.rb +24 -16
  200. data/lib/openai/models/beta/beta_easy_input_message.rb +13 -7
  201. data/lib/openai/models/beta/beta_file_search_tool.rb +64 -37
  202. data/lib/openai/models/beta/beta_function_shell_tool.rb +4 -3
  203. data/lib/openai/models/beta/beta_function_tool.rb +19 -13
  204. data/lib/openai/models/beta/beta_inline_skill.rb +8 -4
  205. data/lib/openai/models/beta/beta_inline_skill_source.rb +6 -3
  206. data/lib/openai/models/beta/beta_local_environment.rb +4 -2
  207. data/lib/openai/models/beta/beta_local_skill.rb +6 -3
  208. data/lib/openai/models/beta/beta_namespace_tool.rb +23 -13
  209. data/lib/openai/models/beta/beta_response.rb +372 -165
  210. data/lib/openai/models/beta/beta_response_apply_patch_tool_call.rb +38 -21
  211. data/lib/openai/models/beta/beta_response_apply_patch_tool_call_output.rb +21 -13
  212. data/lib/openai/models/beta/beta_response_audio_delta_event.rb +10 -8
  213. data/lib/openai/models/beta/beta_response_audio_done_event.rb +8 -7
  214. data/lib/openai/models/beta/beta_response_audio_transcript_delta_event.rb +10 -8
  215. data/lib/openai/models/beta/beta_response_audio_transcript_done_event.rb +8 -7
  216. data/lib/openai/models/beta/beta_response_code_interpreter_call_code_delta_event.rb +15 -11
  217. data/lib/openai/models/beta/beta_response_code_interpreter_call_code_done_event.rb +14 -7
  218. data/lib/openai/models/beta/beta_response_code_interpreter_call_completed_event.rb +13 -10
  219. data/lib/openai/models/beta/beta_response_code_interpreter_call_in_progress_event.rb +13 -10
  220. data/lib/openai/models/beta/beta_response_code_interpreter_call_interpreting_event.rb +13 -10
  221. data/lib/openai/models/beta/beta_response_code_interpreter_tool_call.rb +26 -15
  222. data/lib/openai/models/beta/beta_response_compaction_item.rb +13 -7
  223. data/lib/openai/models/beta/beta_response_compaction_item_param.rb +11 -6
  224. data/lib/openai/models/beta/beta_response_completed_event.rb +10 -8
  225. data/lib/openai/models/beta/beta_response_computer_tool_call.rb +27 -17
  226. data/lib/openai/models/beta/beta_response_computer_tool_call_output_item.rb +26 -15
  227. data/lib/openai/models/beta/beta_response_computer_tool_call_output_screenshot.rb +7 -7
  228. data/lib/openai/models/beta/beta_response_configuration_update_item.rb +13 -10
  229. data/lib/openai/models/beta/beta_response_configuration_update_item_param.rb +13 -10
  230. data/lib/openai/models/beta/beta_response_container_reference.rb +2 -1
  231. data/lib/openai/models/beta/beta_response_content.rb +5 -3
  232. data/lib/openai/models/beta/beta_response_content_part_added_event.rb +20 -13
  233. data/lib/openai/models/beta/beta_response_content_part_done_event.rb +20 -13
  234. data/lib/openai/models/beta/beta_response_conversation_param.rb +2 -1
  235. data/lib/openai/models/beta/beta_response_created_event.rb +10 -8
  236. data/lib/openai/models/beta/beta_response_custom_tool_call.rb +22 -14
  237. data/lib/openai/models/beta/beta_response_custom_tool_call_input_delta_event.rb +14 -7
  238. data/lib/openai/models/beta/beta_response_custom_tool_call_input_done_event.rb +14 -7
  239. data/lib/openai/models/beta/beta_response_custom_tool_call_item.rb +23 -14
  240. data/lib/openai/models/beta/beta_response_custom_tool_call_output.rb +22 -14
  241. data/lib/openai/models/beta/beta_response_custom_tool_call_output_item.rb +18 -11
  242. data/lib/openai/models/beta/beta_response_error.rb +12 -9
  243. data/lib/openai/models/beta/beta_response_error_event.rb +14 -10
  244. data/lib/openai/models/beta/beta_response_failed_event.rb +10 -8
  245. data/lib/openai/models/beta/beta_response_file_search_call_completed_event.rb +12 -10
  246. data/lib/openai/models/beta/beta_response_file_search_call_in_progress_event.rb +12 -10
  247. data/lib/openai/models/beta/beta_response_file_search_call_searching_event.rb +12 -10
  248. data/lib/openai/models/beta/beta_response_file_search_tool_call.rb +30 -20
  249. data/lib/openai/models/beta/beta_response_format_text_config.rb +6 -4
  250. data/lib/openai/models/beta/beta_response_format_text_json_schema_config.rb +19 -10
  251. data/lib/openai/models/beta/beta_response_function_call_arguments_delta_event.rb +14 -11
  252. data/lib/openai/models/beta/beta_response_function_call_arguments_done_event.rb +12 -6
  253. data/lib/openai/models/beta/beta_response_function_call_output_item.rb +1 -1
  254. data/lib/openai/models/beta/beta_response_function_shell_call_output_content.rb +12 -6
  255. data/lib/openai/models/beta/beta_response_function_shell_tool_call.rb +28 -16
  256. data/lib/openai/models/beta/beta_response_function_shell_tool_call_output.rb +40 -27
  257. data/lib/openai/models/beta/beta_response_function_tool_call.rb +26 -16
  258. data/lib/openai/models/beta/beta_response_function_tool_call_item.rb +24 -15
  259. data/lib/openai/models/beta/beta_response_function_tool_call_output_item.rb +31 -18
  260. data/lib/openai/models/beta/beta_response_function_web_search.rb +37 -39
  261. data/lib/openai/models/beta/beta_response_image_gen_call_completed_event.rb +12 -6
  262. data/lib/openai/models/beta/beta_response_image_gen_call_generating_event.rb +12 -6
  263. data/lib/openai/models/beta/beta_response_image_gen_call_in_progress_event.rb +12 -6
  264. data/lib/openai/models/beta/beta_response_image_gen_call_partial_image_event.rb +25 -16
  265. data/lib/openai/models/beta/beta_response_in_progress_event.rb +10 -8
  266. data/lib/openai/models/beta/beta_response_incomplete_event.rb +10 -8
  267. data/lib/openai/models/beta/beta_response_inject_created_event.rb +9 -7
  268. data/lib/openai/models/beta/beta_response_inject_event.rb +6 -3
  269. data/lib/openai/models/beta/beta_response_inject_failed_event.rb +17 -11
  270. data/lib/openai/models/beta/beta_response_input_audio.rb +6 -9
  271. data/lib/openai/models/beta/beta_response_input_content.rb +1 -1
  272. data/lib/openai/models/beta/beta_response_input_file.rb +22 -11
  273. data/lib/openai/models/beta/beta_response_input_file_content.rb +22 -11
  274. data/lib/openai/models/beta/beta_response_input_image.rb +17 -10
  275. data/lib/openai/models/beta/beta_response_input_image_content.rb +17 -10
  276. data/lib/openai/models/beta/beta_response_input_item.rb +560 -291
  277. data/lib/openai/models/beta/beta_response_input_message_item.rb +16 -10
  278. data/lib/openai/models/beta/beta_response_input_text.rb +10 -7
  279. data/lib/openai/models/beta/beta_response_input_text_content.rb +10 -7
  280. data/lib/openai/models/beta/beta_response_item.rb +316 -150
  281. data/lib/openai/models/beta/beta_response_local_environment.rb +2 -1
  282. data/lib/openai/models/beta/beta_response_mcp_call_arguments_delta_event.rb +15 -10
  283. data/lib/openai/models/beta/beta_response_mcp_call_arguments_done_event.rb +14 -10
  284. data/lib/openai/models/beta/beta_response_mcp_call_completed_event.rb +12 -6
  285. data/lib/openai/models/beta/beta_response_mcp_call_failed_event.rb +12 -6
  286. data/lib/openai/models/beta/beta_response_mcp_call_in_progress_event.rb +12 -6
  287. data/lib/openai/models/beta/beta_response_mcp_list_tools_completed_event.rb +12 -6
  288. data/lib/openai/models/beta/beta_response_mcp_list_tools_failed_event.rb +12 -6
  289. data/lib/openai/models/beta/beta_response_mcp_list_tools_in_progress_event.rb +12 -6
  290. data/lib/openai/models/beta/beta_response_output_audio.rb +6 -6
  291. data/lib/openai/models/beta/beta_response_output_item.rb +328 -155
  292. data/lib/openai/models/beta/beta_response_output_item_added_event.rb +15 -9
  293. data/lib/openai/models/beta/beta_response_output_item_done_event.rb +12 -9
  294. data/lib/openai/models/beta/beta_response_output_message.rb +20 -11
  295. data/lib/openai/models/beta/beta_response_output_refusal.rb +4 -2
  296. data/lib/openai/models/beta/beta_response_output_text.rb +42 -25
  297. data/lib/openai/models/beta/beta_response_output_text_annotation_added_event.rb +54 -31
  298. data/lib/openai/models/beta/beta_response_prompt.rb +10 -8
  299. data/lib/openai/models/beta/beta_response_queued_event.rb +10 -5
  300. data/lib/openai/models/beta/beta_response_reasoning_item.rb +33 -17
  301. data/lib/openai/models/beta/beta_response_reasoning_summary_part_added_event.rb +20 -14
  302. data/lib/openai/models/beta/beta_response_reasoning_summary_part_done_event.rb +23 -15
  303. data/lib/openai/models/beta/beta_response_reasoning_summary_text_delta_event.rb +16 -12
  304. data/lib/openai/models/beta/beta_response_reasoning_summary_text_done_event.rb +16 -12
  305. data/lib/openai/models/beta/beta_response_reasoning_text_delta_event.rb +16 -11
  306. data/lib/openai/models/beta/beta_response_reasoning_text_done_event.rb +16 -11
  307. data/lib/openai/models/beta/beta_response_refusal_delta_event.rb +16 -11
  308. data/lib/openai/models/beta/beta_response_refusal_done_event.rb +16 -11
  309. data/lib/openai/models/beta/beta_response_shell_call_command_added_event.rb +14 -7
  310. data/lib/openai/models/beta/beta_response_shell_call_command_delta_event.rb +16 -8
  311. data/lib/openai/models/beta/beta_response_shell_call_command_done_event.rb +14 -7
  312. data/lib/openai/models/beta/beta_response_shell_call_output_content_delta_event.rb +20 -10
  313. data/lib/openai/models/beta/beta_response_shell_call_output_content_done_event.rb +31 -20
  314. data/lib/openai/models/beta/beta_response_steer_accepted_event.rb +13 -9
  315. data/lib/openai/models/beta/beta_response_steer_event.rb +14 -6
  316. data/lib/openai/models/beta/beta_response_steer_failed_event.rb +45 -22
  317. data/lib/openai/models/beta/beta_response_steer_input.rb +42 -24
  318. data/lib/openai/models/beta/beta_response_steer_input_content.rb +1 -1
  319. data/lib/openai/models/beta/beta_response_steer_pending_event.rb +24 -11
  320. data/lib/openai/models/beta/beta_response_text_config.rb +22 -8
  321. data/lib/openai/models/beta/beta_response_text_delta_event.rb +28 -22
  322. data/lib/openai/models/beta/beta_response_text_done_event.rb +28 -22
  323. data/lib/openai/models/beta/beta_response_tool_search_call.rb +18 -9
  324. data/lib/openai/models/beta/beta_response_tool_search_output_item.rb +18 -9
  325. data/lib/openai/models/beta/beta_response_tool_search_output_item_param.rb +16 -8
  326. data/lib/openai/models/beta/beta_response_usage.rb +18 -12
  327. data/lib/openai/models/beta/beta_response_web_search_call_completed_event.rb +12 -10
  328. data/lib/openai/models/beta/beta_response_web_search_call_in_progress_event.rb +12 -10
  329. data/lib/openai/models/beta/beta_response_web_search_call_searching_event.rb +12 -10
  330. data/lib/openai/models/beta/beta_responses_client_event.rb +401 -162
  331. data/lib/openai/models/beta/beta_responses_server_event.rb +862 -629
  332. data/lib/openai/models/beta/beta_skill_reference.rb +6 -3
  333. data/lib/openai/models/beta/beta_tool.rb +236 -129
  334. data/lib/openai/models/beta/beta_tool_choice_allowed.rb +21 -6
  335. data/lib/openai/models/beta/beta_tool_choice_apply_patch.rb +2 -1
  336. data/lib/openai/models/beta/beta_tool_choice_custom.rb +4 -2
  337. data/lib/openai/models/beta/beta_tool_choice_function.rb +4 -2
  338. data/lib/openai/models/beta/beta_tool_choice_mcp.rb +6 -6
  339. data/lib/openai/models/beta/beta_tool_choice_shell.rb +2 -1
  340. data/lib/openai/models/beta/beta_tool_choice_types.rb +16 -7
  341. data/lib/openai/models/beta/beta_tool_search_tool.rb +8 -4
  342. data/lib/openai/models/beta/beta_web_search_preview_tool.rb +21 -15
  343. data/lib/openai/models/beta/beta_web_search_tool.rb +31 -21
  344. data/lib/openai/models/beta/chatkit/chat_session.rb +20 -10
  345. data/lib/openai/models/beta/chatkit/chat_session_automatic_thread_titling.rb +2 -1
  346. data/lib/openai/models/beta/chatkit/chat_session_chatkit_configuration.rb +6 -3
  347. data/lib/openai/models/beta/chatkit/chat_session_chatkit_configuration_param.rb +23 -21
  348. data/lib/openai/models/beta/chatkit/chat_session_expires_after_param.rb +4 -2
  349. data/lib/openai/models/beta/chatkit/chat_session_file_upload.rb +6 -3
  350. data/lib/openai/models/beta/chatkit/chat_session_history.rb +5 -5
  351. data/lib/openai/models/beta/chatkit/chat_session_rate_limits.rb +2 -1
  352. data/lib/openai/models/beta/chatkit/chat_session_rate_limits_param.rb +2 -1
  353. data/lib/openai/models/beta/chatkit/chat_session_workflow_param.rb +12 -9
  354. data/lib/openai/models/beta/chatkit/chatkit_attachment.rb +10 -5
  355. data/lib/openai/models/beta/chatkit/chatkit_response_output_text.rb +22 -11
  356. data/lib/openai/models/beta/chatkit/chatkit_thread.rb +23 -14
  357. data/lib/openai/models/beta/chatkit/chatkit_thread_assistant_message_item.rb +12 -6
  358. data/lib/openai/models/beta/chatkit/chatkit_thread_item_list.rb +65 -41
  359. data/lib/openai/models/beta/chatkit/chatkit_thread_user_message_item.rb +29 -18
  360. data/lib/openai/models/beta/chatkit/chatkit_widget_item.rb +12 -6
  361. data/lib/openai/models/beta/chatkit/session_create_params.rb +12 -8
  362. data/lib/openai/models/beta/chatkit/thread_delete_response.rb +6 -3
  363. data/lib/openai/models/beta/chatkit/thread_list_items_params.rb +10 -7
  364. data/lib/openai/models/beta/chatkit/thread_list_params.rb +13 -8
  365. data/lib/openai/models/beta/chatkit_workflow.rb +12 -9
  366. data/lib/openai/models/beta/code_interpreter_tool.rb +2 -1
  367. data/lib/openai/models/beta/file_search_tool.rb +29 -16
  368. data/lib/openai/models/beta/function_tool.rb +2 -1
  369. data/lib/openai/models/beta/message_stream_event.rb +32 -41
  370. data/lib/openai/models/beta/response_compact_params.rb +89 -46
  371. data/lib/openai/models/beta/response_create_params.rb +382 -149
  372. data/lib/openai/models/beta/response_retrieve_params.rb +12 -6
  373. data/lib/openai/models/beta/responses/beta_response_item_list.rb +10 -5
  374. data/lib/openai/models/beta/responses/input_item_list_params.rb +13 -7
  375. data/lib/openai/models/beta/responses/input_token_count_params.rb +113 -42
  376. data/lib/openai/models/beta/run_step_stream_event.rb +36 -57
  377. data/lib/openai/models/beta/run_stream_event.rb +61 -72
  378. data/lib/openai/models/beta/thread.rb +32 -21
  379. data/lib/openai/models/beta/thread_create_and_run_params.rb +232 -123
  380. data/lib/openai/models/beta/thread_create_params.rb +89 -52
  381. data/lib/openai/models/beta/thread_stream_event.rb +7 -7
  382. data/lib/openai/models/beta/thread_update_params.rb +25 -19
  383. data/lib/openai/models/beta/threads/file_citation_annotation.rb +6 -3
  384. data/lib/openai/models/beta/threads/file_citation_delta_annotation.rb +10 -5
  385. data/lib/openai/models/beta/threads/file_path_annotation.rb +6 -3
  386. data/lib/openai/models/beta/threads/file_path_delta_annotation.rb +8 -4
  387. data/lib/openai/models/beta/threads/image_file.rb +10 -8
  388. data/lib/openai/models/beta/threads/image_file_content_block.rb +5 -3
  389. data/lib/openai/models/beta/threads/image_file_delta.rb +10 -8
  390. data/lib/openai/models/beta/threads/image_file_delta_block.rb +7 -4
  391. data/lib/openai/models/beta/threads/image_url.rb +6 -5
  392. data/lib/openai/models/beta/threads/image_url_content_block.rb +2 -1
  393. data/lib/openai/models/beta/threads/image_url_delta.rb +6 -5
  394. data/lib/openai/models/beta/threads/image_url_delta_block.rb +4 -2
  395. data/lib/openai/models/beta/threads/message.rb +52 -28
  396. data/lib/openai/models/beta/threads/message_content.rb +4 -3
  397. data/lib/openai/models/beta/threads/message_content_delta.rb +4 -3
  398. data/lib/openai/models/beta/threads/message_content_part_param.rb +4 -3
  399. data/lib/openai/models/beta/threads/message_create_params.rb +25 -12
  400. data/lib/openai/models/beta/threads/message_delta.rb +4 -2
  401. data/lib/openai/models/beta/threads/message_delta_event.rb +6 -3
  402. data/lib/openai/models/beta/threads/message_list_params.rb +18 -8
  403. data/lib/openai/models/beta/threads/message_update_params.rb +7 -4
  404. data/lib/openai/models/beta/threads/refusal_content_block.rb +2 -1
  405. data/lib/openai/models/beta/threads/refusal_delta_block.rb +4 -2
  406. data/lib/openai/models/beta/threads/required_action_function_tool_call.rb +15 -10
  407. data/lib/openai/models/beta/threads/run.rb +174 -89
  408. data/lib/openai/models/beta/threads/run_create_params.rb +173 -74
  409. data/lib/openai/models/beta/threads/run_list_params.rb +16 -7
  410. data/lib/openai/models/beta/threads/run_submit_tool_outputs_params.rb +7 -7
  411. data/lib/openai/models/beta/threads/run_update_params.rb +7 -4
  412. data/lib/openai/models/beta/threads/runs/code_interpreter_logs.rb +6 -3
  413. data/lib/openai/models/beta/threads/runs/code_interpreter_output_image.rb +9 -9
  414. data/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rb +24 -22
  415. data/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rb +15 -14
  416. data/lib/openai/models/beta/threads/runs/file_search_tool_call.rb +31 -25
  417. data/lib/openai/models/beta/threads/runs/file_search_tool_call_delta.rb +9 -7
  418. data/lib/openai/models/beta/threads/runs/function_tool_call.rb +15 -15
  419. data/lib/openai/models/beta/threads/runs/function_tool_call_delta.rb +17 -16
  420. data/lib/openai/models/beta/threads/runs/message_creation_step_details.rb +4 -2
  421. data/lib/openai/models/beta/threads/runs/run_step.rb +62 -29
  422. data/lib/openai/models/beta/threads/runs/run_step_delta.rb +2 -1
  423. data/lib/openai/models/beta/threads/runs/run_step_delta_event.rb +6 -3
  424. data/lib/openai/models/beta/threads/runs/run_step_delta_message_delta.rb +4 -2
  425. data/lib/openai/models/beta/threads/runs/step_list_params.rb +29 -13
  426. data/lib/openai/models/beta/threads/runs/step_retrieve_params.rb +9 -5
  427. data/lib/openai/models/beta/threads/runs/tool_call_delta_object.rb +6 -5
  428. data/lib/openai/models/beta/threads/runs/tool_calls_step_details.rb +6 -5
  429. data/lib/openai/models/beta/threads/text.rb +2 -1
  430. data/lib/openai/models/beta/threads/text_content_block.rb +2 -1
  431. data/lib/openai/models/beta/threads/text_content_block_param.rb +4 -2
  432. data/lib/openai/models/beta/threads/text_delta.rb +2 -1
  433. data/lib/openai/models/beta/threads/text_delta_block.rb +4 -2
  434. data/lib/openai/models/chat/chat_completion.rb +143 -75
  435. data/lib/openai/models/chat/chat_completion_allowed_tool_choice.rb +4 -5
  436. data/lib/openai/models/chat/chat_completion_allowed_tools.rb +18 -5
  437. data/lib/openai/models/chat/chat_completion_assistant_message_param.rb +31 -26
  438. data/lib/openai/models/chat/chat_completion_audio.rb +11 -8
  439. data/lib/openai/models/chat/chat_completion_audio_param.rb +11 -7
  440. data/lib/openai/models/chat/chat_completion_chunk.rb +174 -97
  441. data/lib/openai/models/chat/chat_completion_content_part.rb +22 -20
  442. data/lib/openai/models/chat/chat_completion_content_part_image.rb +17 -15
  443. data/lib/openai/models/chat/chat_completion_content_part_input_audio.rb +13 -13
  444. data/lib/openai/models/chat/chat_completion_content_part_refusal.rb +4 -2
  445. data/lib/openai/models/chat/chat_completion_content_part_text.rb +11 -9
  446. data/lib/openai/models/chat/chat_completion_custom_tool.rb +20 -16
  447. data/lib/openai/models/chat/chat_completion_deleted.rb +6 -3
  448. data/lib/openai/models/chat/chat_completion_developer_message_param.rb +7 -6
  449. data/lib/openai/models/chat/chat_completion_function_call_option.rb +2 -1
  450. data/lib/openai/models/chat/chat_completion_function_message_param.rb +6 -3
  451. data/lib/openai/models/chat/chat_completion_function_tool.rb +2 -1
  452. data/lib/openai/models/chat/chat_completion_message.rb +39 -24
  453. data/lib/openai/models/chat/chat_completion_message_custom_tool_call.rb +10 -5
  454. data/lib/openai/models/chat/chat_completion_message_function_tool_call.rb +13 -9
  455. data/lib/openai/models/chat/chat_completion_named_tool_choice.rb +4 -2
  456. data/lib/openai/models/chat/chat_completion_named_tool_choice_custom.rb +4 -2
  457. data/lib/openai/models/chat/chat_completion_prediction_content.rb +8 -6
  458. data/lib/openai/models/chat/chat_completion_store_message.rb +26 -16
  459. data/lib/openai/models/chat/chat_completion_stream_options.rb +15 -5
  460. data/lib/openai/models/chat/chat_completion_system_message_param.rb +7 -6
  461. data/lib/openai/models/chat/chat_completion_token_logprob.rb +25 -14
  462. data/lib/openai/models/chat/chat_completion_tool_message_param.rb +6 -3
  463. data/lib/openai/models/chat/chat_completion_user_message_param.rb +8 -7
  464. data/lib/openai/models/chat/completion_create_params.rb +388 -161
  465. data/lib/openai/models/chat/completion_list_params.rb +12 -7
  466. data/lib/openai/models/chat/completion_update_params.rb +7 -4
  467. data/lib/openai/models/chat/completions/message_list_params.rb +7 -6
  468. data/lib/openai/models/comparison_filter.rb +17 -6
  469. data/lib/openai/models/completion.rb +17 -10
  470. data/lib/openai/models/completion_choice.rb +5 -4
  471. data/lib/openai/models/completion_create_params.rb +124 -37
  472. data/lib/openai/models/completion_usage.rb +34 -18
  473. data/lib/openai/models/compound_filter.rb +5 -5
  474. data/lib/openai/models/container_create_params.rb +15 -10
  475. data/lib/openai/models/container_create_response.rb +28 -16
  476. data/lib/openai/models/container_list_params.rb +13 -7
  477. data/lib/openai/models/container_list_response.rb +28 -16
  478. data/lib/openai/models/container_retrieve_response.rb +28 -16
  479. data/lib/openai/models/containers/file_create_params.rb +8 -5
  480. data/lib/openai/models/containers/file_create_response.rb +14 -7
  481. data/lib/openai/models/containers/file_list_params.rb +11 -6
  482. data/lib/openai/models/containers/file_list_response.rb +14 -7
  483. data/lib/openai/models/containers/file_retrieve_response.rb +14 -7
  484. data/lib/openai/models/content_provenance_check.rb +44 -25
  485. data/lib/openai/models/content_provenance_check_create_params.rb +6 -1
  486. data/lib/openai/models/conversations/computer_screenshot_content.rb +16 -9
  487. data/lib/openai/models/conversations/conversation.rb +16 -10
  488. data/lib/openai/models/conversations/conversation_create_params.rb +9 -4
  489. data/lib/openai/models/conversations/conversation_item.rb +216 -100
  490. data/lib/openai/models/conversations/conversation_item_list.rb +10 -5
  491. data/lib/openai/models/conversations/conversation_update_params.rb +7 -4
  492. data/lib/openai/models/conversations/item_create_params.rb +7 -6
  493. data/lib/openai/models/conversations/item_list_params.rb +29 -7
  494. data/lib/openai/models/conversations/item_retrieve_params.rb +5 -5
  495. data/lib/openai/models/conversations/message.rb +22 -12
  496. data/lib/openai/models/conversations/summary_text_content.rb +4 -2
  497. data/lib/openai/models/create_embedding_response.rb +12 -6
  498. data/lib/openai/models/custom_tool_input_format.rb +8 -4
  499. data/lib/openai/models/embedding.rb +9 -7
  500. data/lib/openai/models/embedding_create_params.rb +36 -18
  501. data/lib/openai/models/error_object.rb +8 -4
  502. data/lib/openai/models/eval_create_params.rb +105 -74
  503. data/lib/openai/models/eval_create_response.rb +69 -42
  504. data/lib/openai/models/eval_custom_data_source_config.rb +5 -5
  505. data/lib/openai/models/eval_list_params.rb +10 -7
  506. data/lib/openai/models/eval_list_response.rb +69 -42
  507. data/lib/openai/models/eval_retrieve_response.rb +69 -42
  508. data/lib/openai/models/eval_stored_completions_data_source_config.rb +12 -6
  509. data/lib/openai/models/eval_update_params.rb +9 -5
  510. data/lib/openai/models/eval_update_response.rb +69 -42
  511. data/lib/openai/models/evals/create_eval_completions_run_data_source.rb +97 -64
  512. data/lib/openai/models/evals/create_eval_jsonl_run_data_source.rb +12 -7
  513. data/lib/openai/models/evals/eval_api_error.rb +4 -2
  514. data/lib/openai/models/evals/run_cancel_response.rb +204 -114
  515. data/lib/openai/models/evals/run_create_params.rb +156 -90
  516. data/lib/openai/models/evals/run_create_response.rb +204 -114
  517. data/lib/openai/models/evals/run_list_params.rb +10 -7
  518. data/lib/openai/models/evals/run_list_response.rb +204 -114
  519. data/lib/openai/models/evals/run_retrieve_response.rb +204 -114
  520. data/lib/openai/models/evals/runs/output_item_list_params.rb +10 -7
  521. data/lib/openai/models/evals/runs/output_item_list_response.rb +66 -38
  522. data/lib/openai/models/evals/runs/output_item_retrieve_response.rb +66 -39
  523. data/lib/openai/models/file_create_params.rb +23 -10
  524. data/lib/openai/models/file_list_params.rb +13 -7
  525. data/lib/openai/models/file_object.rb +22 -12
  526. data/lib/openai/models/fine_tuning/alpha/grader_run_params.rb +18 -10
  527. data/lib/openai/models/fine_tuning/alpha/grader_validate_params.rb +2 -1
  528. data/lib/openai/models/fine_tuning/alpha/grader_validate_response.rb +2 -1
  529. data/lib/openai/models/fine_tuning/checkpoints/permission_create_params.rb +2 -1
  530. data/lib/openai/models/fine_tuning/checkpoints/permission_create_response.rb +8 -4
  531. data/lib/openai/models/fine_tuning/checkpoints/permission_delete_response.rb +6 -3
  532. data/lib/openai/models/fine_tuning/checkpoints/permission_list_params.rb +8 -4
  533. data/lib/openai/models/fine_tuning/checkpoints/permission_list_response.rb +8 -4
  534. data/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rb +8 -4
  535. data/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rb +8 -4
  536. data/lib/openai/models/fine_tuning/dpo_hyperparameters.rb +12 -7
  537. data/lib/openai/models/fine_tuning/dpo_method.rb +2 -1
  538. data/lib/openai/models/fine_tuning/fine_tuning_job.rb +82 -41
  539. data/lib/openai/models/fine_tuning/fine_tuning_job_event.rb +14 -7
  540. data/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rb +13 -7
  541. data/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rb +7 -6
  542. data/lib/openai/models/fine_tuning/job_create_params.rb +107 -42
  543. data/lib/openai/models/fine_tuning/job_list_events_params.rb +4 -2
  544. data/lib/openai/models/fine_tuning/job_list_params.rb +7 -6
  545. data/lib/openai/models/fine_tuning/jobs/checkpoint_list_params.rb +4 -2
  546. data/lib/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rb +14 -7
  547. data/lib/openai/models/fine_tuning/reinforcement_hyperparameters.rb +17 -10
  548. data/lib/openai/models/fine_tuning/reinforcement_method.rb +4 -2
  549. data/lib/openai/models/fine_tuning/supervised_hyperparameters.rb +9 -6
  550. data/lib/openai/models/fine_tuning/supervised_method.rb +2 -1
  551. data/lib/openai/models/function_definition.rb +22 -9
  552. data/lib/openai/models/graders/grader_input_item.rb +11 -11
  553. data/lib/openai/models/graders/label_model_grader.rb +29 -25
  554. data/lib/openai/models/graders/multi_grader.rb +9 -7
  555. data/lib/openai/models/graders/python_grader.rb +8 -4
  556. data/lib/openai/models/graders/score_model_grader.rb +48 -38
  557. data/lib/openai/models/graders/string_check_grader.rb +10 -5
  558. data/lib/openai/models/graders/text_similarity_grader.rb +11 -8
  559. data/lib/openai/models/image.rb +10 -6
  560. data/lib/openai/models/image_create_variation_params.rb +23 -9
  561. data/lib/openai/models/image_edit_completed_event.rb +62 -27
  562. data/lib/openai/models/image_edit_params.rb +169 -72
  563. data/lib/openai/models/image_edit_partial_image_event.rb +49 -18
  564. data/lib/openai/models/image_gen_completed_event.rb +62 -27
  565. data/lib/openai/models/image_gen_partial_image_event.rb +49 -18
  566. data/lib/openai/models/image_generate_params.rb +141 -62
  567. data/lib/openai/models/image_input_reference_param.rb +2 -1
  568. data/lib/openai/models/image_model.rb +4 -0
  569. data/lib/openai/models/images_response.rb +69 -30
  570. data/lib/openai/models/model.rb +10 -5
  571. data/lib/openai/models/moderation.rb +115 -62
  572. data/lib/openai/models/moderation_create_params.rb +16 -13
  573. data/lib/openai/models/moderation_create_response.rb +6 -3
  574. data/lib/openai/models/moderation_image_url_input.rb +6 -3
  575. data/lib/openai/models/moderation_text_input.rb +4 -2
  576. data/lib/openai/models/other_file_chunking_strategy_object.rb +2 -1
  577. data/lib/openai/models/realtime/audio_transcription.rb +29 -10
  578. data/lib/openai/models/realtime/call_accept_params.rb +85 -30
  579. data/lib/openai/models/realtime/call_create_params.rb +4 -2
  580. data/lib/openai/models/realtime/call_refer_params.rb +3 -4
  581. data/lib/openai/models/realtime/call_reject_params.rb +3 -4
  582. data/lib/openai/models/realtime/client_secret_create_params.rb +16 -11
  583. data/lib/openai/models/realtime/client_secret_create_response.rb +6 -6
  584. data/lib/openai/models/realtime/conversation_created_event.rb +10 -5
  585. data/lib/openai/models/realtime/conversation_item_added.rb +9 -7
  586. data/lib/openai/models/realtime/conversation_item_create_event.rb +16 -7
  587. data/lib/openai/models/realtime/conversation_item_created_event.rb +10 -7
  588. data/lib/openai/models/realtime/conversation_item_delete_event.rb +6 -3
  589. data/lib/openai/models/realtime/conversation_item_deleted_event.rb +6 -3
  590. data/lib/openai/models/realtime/conversation_item_done.rb +9 -7
  591. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rb +36 -21
  592. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rb +17 -10
  593. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_failed_event.rb +18 -13
  594. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_segment.rb +18 -9
  595. data/lib/openai/models/realtime/conversation_item_retrieve_event.rb +6 -3
  596. data/lib/openai/models/realtime/conversation_item_truncate_event.rb +13 -8
  597. data/lib/openai/models/realtime/conversation_item_truncated_event.rb +10 -8
  598. data/lib/openai/models/realtime/conversation_item_with_reference.rb +47 -24
  599. data/lib/openai/models/realtime/input_audio_buffer_append_event.rb +7 -6
  600. data/lib/openai/models/realtime/input_audio_buffer_clear_event.rb +4 -2
  601. data/lib/openai/models/realtime/input_audio_buffer_cleared_event.rb +4 -2
  602. data/lib/openai/models/realtime/input_audio_buffer_commit_event.rb +4 -2
  603. data/lib/openai/models/realtime/input_audio_buffer_committed_event.rb +9 -7
  604. data/lib/openai/models/realtime/input_audio_buffer_dtmf_event_received_event.rb +6 -7
  605. data/lib/openai/models/realtime/input_audio_buffer_speech_started_event.rb +11 -7
  606. data/lib/openai/models/realtime/input_audio_buffer_speech_stopped_event.rb +10 -7
  607. data/lib/openai/models/realtime/input_audio_buffer_timeout_triggered.rb +12 -8
  608. data/lib/openai/models/realtime/log_prob_properties.rb +6 -6
  609. data/lib/openai/models/realtime/mcp_list_tools_completed.rb +6 -3
  610. data/lib/openai/models/realtime/mcp_list_tools_failed.rb +6 -3
  611. data/lib/openai/models/realtime/mcp_list_tools_in_progress.rb +6 -3
  612. data/lib/openai/models/realtime/output_audio_buffer_clear_event.rb +5 -3
  613. data/lib/openai/models/realtime/rate_limits_updated_event.rb +14 -11
  614. data/lib/openai/models/realtime/realtime_audio_config_input.rb +38 -12
  615. data/lib/openai/models/realtime/realtime_audio_config_output.rb +18 -6
  616. data/lib/openai/models/realtime/realtime_audio_formats.rb +8 -4
  617. data/lib/openai/models/realtime/realtime_audio_input_turn_detection.rb +61 -25
  618. data/lib/openai/models/realtime/realtime_client_event.rb +1 -1
  619. data/lib/openai/models/realtime/realtime_conversation_item_assistant_message.rb +26 -19
  620. data/lib/openai/models/realtime/realtime_conversation_item_function_call.rb +18 -11
  621. data/lib/openai/models/realtime/realtime_conversation_item_function_call_output.rb +15 -10
  622. data/lib/openai/models/realtime/realtime_conversation_item_system_message.rb +18 -13
  623. data/lib/openai/models/realtime/realtime_conversation_item_user_message.rb +32 -21
  624. data/lib/openai/models/realtime/realtime_error.rb +10 -8
  625. data/lib/openai/models/realtime/realtime_error_event.rb +6 -3
  626. data/lib/openai/models/realtime/realtime_function_tool.rb +9 -7
  627. data/lib/openai/models/realtime/realtime_mcp_approval_request.rb +10 -5
  628. data/lib/openai/models/realtime/realtime_mcp_approval_response.rb +10 -5
  629. data/lib/openai/models/realtime/realtime_mcp_list_tools.rb +16 -12
  630. data/lib/openai/models/realtime/realtime_mcp_tool_call.rb +16 -8
  631. data/lib/openai/models/realtime/realtime_reasoning.rb +3 -4
  632. data/lib/openai/models/realtime/realtime_response.rb +47 -19
  633. data/lib/openai/models/realtime/realtime_response_create_audio_output.rb +11 -7
  634. data/lib/openai/models/realtime/realtime_response_create_mcp_tool.rb +71 -43
  635. data/lib/openai/models/realtime/realtime_response_create_params.rb +56 -18
  636. data/lib/openai/models/realtime/realtime_response_status.rb +16 -8
  637. data/lib/openai/models/realtime/realtime_response_usage.rb +16 -8
  638. data/lib/openai/models/realtime/realtime_response_usage_input_token_details.rb +16 -8
  639. data/lib/openai/models/realtime/realtime_response_usage_output_token_details.rb +4 -2
  640. data/lib/openai/models/realtime/realtime_server_event.rb +30 -18
  641. data/lib/openai/models/realtime/realtime_session.rb +191 -82
  642. data/lib/openai/models/realtime/realtime_session_create_request.rb +86 -32
  643. data/lib/openai/models/realtime/realtime_session_create_response.rb +256 -110
  644. data/lib/openai/models/realtime/realtime_tools_config_union.rb +73 -45
  645. data/lib/openai/models/realtime/realtime_tracing_config.rb +9 -7
  646. data/lib/openai/models/realtime/realtime_transcription_session_audio_input.rb +38 -13
  647. data/lib/openai/models/realtime/realtime_transcription_session_audio_input_turn_detection.rb +61 -25
  648. data/lib/openai/models/realtime/realtime_transcription_session_create_request.rb +10 -8
  649. data/lib/openai/models/realtime/realtime_transcription_session_create_response.rb +28 -22
  650. data/lib/openai/models/realtime/realtime_transcription_session_turn_detection.rb +13 -8
  651. data/lib/openai/models/realtime/realtime_translation_client_secret_create_request.rb +16 -12
  652. data/lib/openai/models/realtime/realtime_translation_client_secret_create_response.rb +7 -7
  653. data/lib/openai/models/realtime/realtime_translation_input_audio_buffer_append_event.rb +6 -3
  654. data/lib/openai/models/realtime/realtime_translation_input_transcript_delta_event.rb +11 -8
  655. data/lib/openai/models/realtime/realtime_translation_output_audio_delta_event.rb +16 -11
  656. data/lib/openai/models/realtime/realtime_translation_output_transcript_delta_event.rb +11 -8
  657. data/lib/openai/models/realtime/realtime_translation_session.rb +25 -25
  658. data/lib/openai/models/realtime/realtime_translation_session_close_event.rb +4 -2
  659. data/lib/openai/models/realtime/realtime_translation_session_closed_event.rb +4 -2
  660. data/lib/openai/models/realtime/realtime_translation_session_create_request.rb +18 -23
  661. data/lib/openai/models/realtime/realtime_translation_session_created_event.rb +6 -3
  662. data/lib/openai/models/realtime/realtime_translation_session_update_event.rb +7 -7
  663. data/lib/openai/models/realtime/realtime_translation_session_update_request.rb +16 -22
  664. data/lib/openai/models/realtime/realtime_translation_session_updated_event.rb +6 -3
  665. data/lib/openai/models/realtime/realtime_truncation_retention_ratio.rb +16 -11
  666. data/lib/openai/models/realtime/response_audio_delta_event.rb +14 -7
  667. data/lib/openai/models/realtime/response_audio_done_event.rb +12 -6
  668. data/lib/openai/models/realtime/response_audio_transcript_delta_event.rb +14 -7
  669. data/lib/openai/models/realtime/response_audio_transcript_done_event.rb +14 -7
  670. data/lib/openai/models/realtime/response_cancel_event.rb +7 -6
  671. data/lib/openai/models/realtime/response_content_part_added_event.rb +22 -11
  672. data/lib/openai/models/realtime/response_content_part_done_event.rb +22 -11
  673. data/lib/openai/models/realtime/response_create_event.rb +6 -3
  674. data/lib/openai/models/realtime/response_created_event.rb +6 -3
  675. data/lib/openai/models/realtime/response_done_event.rb +6 -3
  676. data/lib/openai/models/realtime/response_function_call_arguments_delta_event.rb +14 -11
  677. data/lib/openai/models/realtime/response_function_call_arguments_done_event.rb +16 -12
  678. data/lib/openai/models/realtime/response_mcp_call_arguments_delta.rb +14 -7
  679. data/lib/openai/models/realtime/response_mcp_call_arguments_done.rb +12 -6
  680. data/lib/openai/models/realtime/response_mcp_call_completed.rb +8 -4
  681. data/lib/openai/models/realtime/response_mcp_call_failed.rb +8 -4
  682. data/lib/openai/models/realtime/response_mcp_call_in_progress.rb +8 -4
  683. data/lib/openai/models/realtime/response_output_item_added_event.rb +10 -5
  684. data/lib/openai/models/realtime/response_output_item_done_event.rb +10 -5
  685. data/lib/openai/models/realtime/response_text_delta_event.rb +14 -7
  686. data/lib/openai/models/realtime/response_text_done_event.rb +14 -7
  687. data/lib/openai/models/realtime/session_created_event.rb +6 -3
  688. data/lib/openai/models/realtime/session_update_event.rb +10 -6
  689. data/lib/openai/models/realtime/session_updated_event.rb +6 -3
  690. data/lib/openai/models/realtime/transcription_session_update.rb +45 -26
  691. data/lib/openai/models/realtime/transcription_session_updated_event.rb +42 -28
  692. data/lib/openai/models/reasoning.rb +33 -10
  693. data/lib/openai/models/reasoning_effort.rb +1 -1
  694. data/lib/openai/models/response_format_json_object.rb +2 -1
  695. data/lib/openai/models/response_format_json_schema.rb +21 -14
  696. data/lib/openai/models/response_format_text.rb +2 -1
  697. data/lib/openai/models/response_format_text_grammar.rb +5 -3
  698. data/lib/openai/models/response_format_text_python.rb +3 -2
  699. data/lib/openai/models/responses/apply_patch_tool.rb +4 -3
  700. data/lib/openai/models/responses/compacted_response.rb +12 -8
  701. data/lib/openai/models/responses/computer_action.rb +78 -58
  702. data/lib/openai/models/responses/computer_tool.rb +3 -2
  703. data/lib/openai/models/responses/computer_use_preview_tool.rb +9 -5
  704. data/lib/openai/models/responses/container_auto.rb +10 -5
  705. data/lib/openai/models/responses/container_network_policy_allowlist.rb +6 -3
  706. data/lib/openai/models/responses/container_network_policy_disabled.rb +2 -1
  707. data/lib/openai/models/responses/container_network_policy_domain_secret.rb +6 -3
  708. data/lib/openai/models/responses/container_reference.rb +4 -2
  709. data/lib/openai/models/responses/custom_tool.rb +16 -12
  710. data/lib/openai/models/responses/easy_input_message.rb +13 -7
  711. data/lib/openai/models/responses/file_search_tool.rb +25 -17
  712. data/lib/openai/models/responses/function_shell_tool.rb +4 -3
  713. data/lib/openai/models/responses/function_tool.rb +19 -13
  714. data/lib/openai/models/responses/inline_skill.rb +8 -4
  715. data/lib/openai/models/responses/inline_skill_source.rb +6 -3
  716. data/lib/openai/models/responses/input_item_list_params.rb +13 -7
  717. data/lib/openai/models/responses/input_token_count_params.rb +79 -30
  718. data/lib/openai/models/responses/local_environment.rb +4 -2
  719. data/lib/openai/models/responses/local_skill.rb +6 -3
  720. data/lib/openai/models/responses/namespace_tool.rb +23 -13
  721. data/lib/openai/models/responses/response.rb +336 -152
  722. data/lib/openai/models/responses/response_apply_patch_tool_call.rb +34 -19
  723. data/lib/openai/models/responses/response_apply_patch_tool_call_output.rb +17 -11
  724. data/lib/openai/models/responses/response_audio_delta_event.rb +6 -6
  725. data/lib/openai/models/responses/response_audio_done_event.rb +4 -5
  726. data/lib/openai/models/responses/response_audio_transcript_delta_event.rb +6 -6
  727. data/lib/openai/models/responses/response_audio_transcript_done_event.rb +4 -5
  728. data/lib/openai/models/responses/response_code_interpreter_call_code_delta_event.rb +11 -9
  729. data/lib/openai/models/responses/response_code_interpreter_call_code_done_event.rb +10 -5
  730. data/lib/openai/models/responses/response_code_interpreter_call_completed_event.rb +9 -8
  731. data/lib/openai/models/responses/response_code_interpreter_call_in_progress_event.rb +9 -8
  732. data/lib/openai/models/responses/response_code_interpreter_call_interpreting_event.rb +9 -8
  733. data/lib/openai/models/responses/response_code_interpreter_tool_call.rb +22 -13
  734. data/lib/openai/models/responses/response_compact_params.rb +89 -46
  735. data/lib/openai/models/responses/response_compaction_item.rb +9 -5
  736. data/lib/openai/models/responses/response_compaction_item_param.rb +7 -4
  737. data/lib/openai/models/responses/response_completed_event.rb +6 -6
  738. data/lib/openai/models/responses/response_computer_tool_call.rb +101 -82
  739. data/lib/openai/models/responses/response_computer_tool_call_output_item.rb +22 -14
  740. data/lib/openai/models/responses/response_computer_tool_call_output_screenshot.rb +7 -7
  741. data/lib/openai/models/responses/response_configuration_update_item.rb +9 -8
  742. data/lib/openai/models/responses/response_configuration_update_item_param.rb +9 -8
  743. data/lib/openai/models/responses/response_container_reference.rb +2 -1
  744. data/lib/openai/models/responses/response_content.rb +5 -3
  745. data/lib/openai/models/responses/response_content_part_added_event.rb +16 -11
  746. data/lib/openai/models/responses/response_content_part_done_event.rb +16 -11
  747. data/lib/openai/models/responses/response_conversation_param.rb +2 -1
  748. data/lib/openai/models/responses/response_create_params.rb +334 -130
  749. data/lib/openai/models/responses/response_created_event.rb +6 -6
  750. data/lib/openai/models/responses/response_custom_tool_call.rb +18 -12
  751. data/lib/openai/models/responses/response_custom_tool_call_input_delta_event.rb +10 -5
  752. data/lib/openai/models/responses/response_custom_tool_call_input_done_event.rb +10 -5
  753. data/lib/openai/models/responses/response_custom_tool_call_item.rb +21 -13
  754. data/lib/openai/models/responses/response_custom_tool_call_output.rb +18 -12
  755. data/lib/openai/models/responses/response_custom_tool_call_output_item.rb +16 -10
  756. data/lib/openai/models/responses/response_error.rb +12 -9
  757. data/lib/openai/models/responses/response_error_event.rb +10 -8
  758. data/lib/openai/models/responses/response_failed_event.rb +6 -6
  759. data/lib/openai/models/responses/response_file_search_call_completed_event.rb +8 -8
  760. data/lib/openai/models/responses/response_file_search_call_in_progress_event.rb +8 -8
  761. data/lib/openai/models/responses/response_file_search_call_searching_event.rb +8 -8
  762. data/lib/openai/models/responses/response_file_search_tool_call.rb +26 -19
  763. data/lib/openai/models/responses/response_format_text_config.rb +2 -2
  764. data/lib/openai/models/responses/response_format_text_json_schema_config.rb +19 -11
  765. data/lib/openai/models/responses/response_function_call_arguments_delta_event.rb +10 -9
  766. data/lib/openai/models/responses/response_function_call_arguments_done_event.rb +8 -4
  767. data/lib/openai/models/responses/response_function_call_output_item.rb +1 -1
  768. data/lib/openai/models/responses/response_function_shell_call_output_content.rb +12 -6
  769. data/lib/openai/models/responses/response_function_shell_tool_call.rb +24 -14
  770. data/lib/openai/models/responses/response_function_shell_tool_call_output.rb +36 -25
  771. data/lib/openai/models/responses/response_function_tool_call.rb +22 -14
  772. data/lib/openai/models/responses/response_function_tool_call_item.rb +22 -14
  773. data/lib/openai/models/responses/response_function_tool_call_output_item.rb +27 -17
  774. data/lib/openai/models/responses/response_function_web_search.rb +33 -37
  775. data/lib/openai/models/responses/response_image_gen_call_completed_event.rb +8 -4
  776. data/lib/openai/models/responses/response_image_gen_call_generating_event.rb +8 -4
  777. data/lib/openai/models/responses/response_image_gen_call_in_progress_event.rb +8 -4
  778. data/lib/openai/models/responses/response_image_gen_call_partial_image_event.rb +21 -14
  779. data/lib/openai/models/responses/response_in_progress_event.rb +6 -6
  780. data/lib/openai/models/responses/response_incomplete_event.rb +6 -6
  781. data/lib/openai/models/responses/response_input_audio.rb +6 -9
  782. data/lib/openai/models/responses/response_input_content.rb +1 -1
  783. data/lib/openai/models/responses/response_input_file.rb +22 -11
  784. data/lib/openai/models/responses/response_input_file_content.rb +22 -11
  785. data/lib/openai/models/responses/response_input_image.rb +17 -10
  786. data/lib/openai/models/responses/response_input_image_content.rb +17 -10
  787. data/lib/openai/models/responses/response_input_item.rb +397 -209
  788. data/lib/openai/models/responses/response_input_message_item.rb +12 -8
  789. data/lib/openai/models/responses/response_input_text.rb +10 -7
  790. data/lib/openai/models/responses/response_input_text_content.rb +10 -7
  791. data/lib/openai/models/responses/response_item.rb +205 -93
  792. data/lib/openai/models/responses/response_item_list.rb +10 -5
  793. data/lib/openai/models/responses/response_local_environment.rb +2 -1
  794. data/lib/openai/models/responses/response_mcp_call_arguments_delta_event.rb +11 -9
  795. data/lib/openai/models/responses/response_mcp_call_arguments_done_event.rb +10 -8
  796. data/lib/openai/models/responses/response_mcp_call_completed_event.rb +8 -4
  797. data/lib/openai/models/responses/response_mcp_call_failed_event.rb +8 -4
  798. data/lib/openai/models/responses/response_mcp_call_in_progress_event.rb +8 -4
  799. data/lib/openai/models/responses/response_mcp_list_tools_completed_event.rb +8 -4
  800. data/lib/openai/models/responses/response_mcp_list_tools_failed_event.rb +8 -4
  801. data/lib/openai/models/responses/response_mcp_list_tools_in_progress_event.rb +8 -4
  802. data/lib/openai/models/responses/response_output_audio.rb +6 -6
  803. data/lib/openai/models/responses/response_output_item.rb +217 -98
  804. data/lib/openai/models/responses/response_output_item_added_event.rb +11 -7
  805. data/lib/openai/models/responses/response_output_item_done_event.rb +8 -7
  806. data/lib/openai/models/responses/response_output_message.rb +16 -9
  807. data/lib/openai/models/responses/response_output_refusal.rb +4 -2
  808. data/lib/openai/models/responses/response_output_text.rb +42 -25
  809. data/lib/openai/models/responses/response_output_text_annotation_added_event.rb +50 -29
  810. data/lib/openai/models/responses/response_prompt.rb +10 -8
  811. data/lib/openai/models/responses/response_queued_event.rb +6 -3
  812. data/lib/openai/models/responses/response_reasoning_item.rb +29 -15
  813. data/lib/openai/models/responses/response_reasoning_summary_part_added_event.rb +16 -12
  814. data/lib/openai/models/responses/response_reasoning_summary_part_done_event.rb +19 -13
  815. data/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rb +12 -10
  816. data/lib/openai/models/responses/response_reasoning_summary_text_done_event.rb +12 -10
  817. data/lib/openai/models/responses/response_reasoning_text_delta_event.rb +12 -9
  818. data/lib/openai/models/responses/response_reasoning_text_done_event.rb +12 -9
  819. data/lib/openai/models/responses/response_refusal_delta_event.rb +12 -9
  820. data/lib/openai/models/responses/response_refusal_done_event.rb +12 -9
  821. data/lib/openai/models/responses/response_retrieve_params.rb +12 -6
  822. data/lib/openai/models/responses/response_shell_call_command_added_event.rb +10 -5
  823. data/lib/openai/models/responses/response_shell_call_command_delta_event.rb +12 -6
  824. data/lib/openai/models/responses/response_shell_call_command_done_event.rb +10 -5
  825. data/lib/openai/models/responses/response_shell_call_output_content_delta_event.rb +16 -8
  826. data/lib/openai/models/responses/response_shell_call_output_content_done_event.rb +27 -18
  827. data/lib/openai/models/responses/response_steer_accepted_event.rb +13 -9
  828. data/lib/openai/models/responses/response_steer_event.rb +14 -6
  829. data/lib/openai/models/responses/response_steer_failed_event.rb +45 -22
  830. data/lib/openai/models/responses/response_steer_input.rb +34 -20
  831. data/lib/openai/models/responses/response_steer_input_content.rb +1 -1
  832. data/lib/openai/models/responses/response_steer_pending_event.rb +24 -11
  833. data/lib/openai/models/responses/response_text_config.rb +22 -8
  834. data/lib/openai/models/responses/response_text_delta_event.rb +24 -20
  835. data/lib/openai/models/responses/response_text_done_event.rb +24 -20
  836. data/lib/openai/models/responses/response_tool_search_call.rb +14 -7
  837. data/lib/openai/models/responses/response_tool_search_output_item.rb +14 -7
  838. data/lib/openai/models/responses/response_tool_search_output_item_param.rb +12 -6
  839. data/lib/openai/models/responses/response_usage.rb +18 -12
  840. data/lib/openai/models/responses/response_web_search_call_completed_event.rb +8 -8
  841. data/lib/openai/models/responses/response_web_search_call_in_progress_event.rb +8 -8
  842. data/lib/openai/models/responses/response_web_search_call_searching_event.rb +8 -8
  843. data/lib/openai/models/responses/responses_client_event.rb +353 -140
  844. data/lib/openai/models/responses/responses_server_event.rb +744 -570
  845. data/lib/openai/models/responses/skill_reference.rb +6 -3
  846. data/lib/openai/models/responses/tool.rb +236 -129
  847. data/lib/openai/models/responses/tool_choice_allowed.rb +21 -6
  848. data/lib/openai/models/responses/tool_choice_apply_patch.rb +2 -1
  849. data/lib/openai/models/responses/tool_choice_custom.rb +4 -2
  850. data/lib/openai/models/responses/tool_choice_function.rb +4 -2
  851. data/lib/openai/models/responses/tool_choice_mcp.rb +6 -6
  852. data/lib/openai/models/responses/tool_choice_shell.rb +2 -1
  853. data/lib/openai/models/responses/tool_choice_types.rb +16 -7
  854. data/lib/openai/models/responses/tool_search_tool.rb +8 -4
  855. data/lib/openai/models/responses/web_search_preview_tool.rb +21 -16
  856. data/lib/openai/models/responses/web_search_tool.rb +31 -21
  857. data/lib/openai/models/safety/alert_retrieve_params.rb +2 -1
  858. data/lib/openai/models/safety/safety_alert.rb +6 -5
  859. data/lib/openai/models/skill.rb +14 -7
  860. data/lib/openai/models/skill_create_params.rb +6 -1
  861. data/lib/openai/models/skill_list.rb +10 -5
  862. data/lib/openai/models/skill_list_params.rb +7 -6
  863. data/lib/openai/models/skill_update_params.rb +2 -1
  864. data/lib/openai/models/skills/deleted_skill_version.rb +2 -1
  865. data/lib/openai/models/skills/skill_version.rb +14 -7
  866. data/lib/openai/models/skills/skill_version_list.rb +10 -5
  867. data/lib/openai/models/skills/version_create_params.rb +8 -2
  868. data/lib/openai/models/skills/version_delete_params.rb +2 -1
  869. data/lib/openai/models/skills/version_list_params.rb +6 -3
  870. data/lib/openai/models/skills/version_retrieve_params.rb +2 -1
  871. data/lib/openai/models/skills/versions/content_retrieve_params.rb +2 -1
  872. data/lib/openai/models/static_file_chunking_strategy.rb +6 -4
  873. data/lib/openai/models/static_file_chunking_strategy_object.rb +2 -1
  874. data/lib/openai/models/static_file_chunking_strategy_object_param.rb +2 -1
  875. data/lib/openai/models/upload.rb +21 -13
  876. data/lib/openai/models/upload_complete_params.rb +5 -5
  877. data/lib/openai/models/upload_create_params.rb +23 -13
  878. data/lib/openai/models/uploads/part_create_params.rb +6 -4
  879. data/lib/openai/models/uploads/upload_part.rb +8 -4
  880. data/lib/openai/models/vector_store.rb +42 -23
  881. data/lib/openai/models/vector_store_create_params.rb +28 -16
  882. data/lib/openai/models/vector_store_list_params.rb +16 -7
  883. data/lib/openai/models/vector_store_search_params.rb +13 -9
  884. data/lib/openai/models/vector_store_search_response.rb +18 -11
  885. data/lib/openai/models/vector_store_update_params.rb +16 -11
  886. data/lib/openai/models/vector_stores/file_batch_create_params.rb +47 -23
  887. data/lib/openai/models/vector_stores/file_batch_list_files_params.rb +18 -8
  888. data/lib/openai/models/vector_stores/file_content_response.rb +4 -2
  889. data/lib/openai/models/vector_stores/file_create_params.rb +18 -9
  890. data/lib/openai/models/vector_stores/file_list_params.rb +18 -8
  891. data/lib/openai/models/vector_stores/file_update_params.rb +6 -4
  892. data/lib/openai/models/vector_stores/vector_store_file.rb +35 -16
  893. data/lib/openai/models/vector_stores/vector_store_file_batch.rb +27 -15
  894. data/lib/openai/models/video.rb +27 -16
  895. data/lib/openai/models/video_create_character_params.rb +8 -2
  896. data/lib/openai/models/video_create_character_response.rb +6 -3
  897. data/lib/openai/models/video_create_error.rb +12 -6
  898. data/lib/openai/models/video_create_params.rb +15 -7
  899. data/lib/openai/models/video_delete_response.rb +6 -3
  900. data/lib/openai/models/video_download_content_params.rb +2 -1
  901. data/lib/openai/models/video_edit_params.rb +10 -3
  902. data/lib/openai/models/video_extend_params.rb +12 -6
  903. data/lib/openai/models/video_get_character_response.rb +6 -3
  904. data/lib/openai/models/video_list_params.rb +7 -6
  905. data/lib/openai/models/video_remix_params.rb +2 -1
  906. data/lib/openai/models/webhooks/batch_cancelled_webhook_event.rb +12 -12
  907. data/lib/openai/models/webhooks/batch_completed_webhook_event.rb +12 -12
  908. data/lib/openai/models/webhooks/batch_expired_webhook_event.rb +12 -12
  909. data/lib/openai/models/webhooks/batch_failed_webhook_event.rb +12 -12
  910. data/lib/openai/models/webhooks/eval_run_canceled_webhook_event.rb +12 -12
  911. data/lib/openai/models/webhooks/eval_run_failed_webhook_event.rb +12 -12
  912. data/lib/openai/models/webhooks/eval_run_succeeded_webhook_event.rb +12 -12
  913. data/lib/openai/models/webhooks/fine_tuning_job_cancelled_webhook_event.rb +12 -13
  914. data/lib/openai/models/webhooks/fine_tuning_job_failed_webhook_event.rb +12 -13
  915. data/lib/openai/models/webhooks/fine_tuning_job_succeeded_webhook_event.rb +12 -13
  916. data/lib/openai/models/webhooks/live_call_incoming_webhook_event.rb +26 -23
  917. data/lib/openai/models/webhooks/realtime_call_incoming_webhook_event.rb +30 -24
  918. data/lib/openai/models/webhooks/response_cancelled_webhook_event.rb +12 -13
  919. data/lib/openai/models/webhooks/response_completed_webhook_event.rb +12 -13
  920. data/lib/openai/models/webhooks/response_failed_webhook_event.rb +12 -12
  921. data/lib/openai/models/webhooks/response_incomplete_webhook_event.rb +12 -13
  922. data/lib/openai/models/webhooks/safety_alert_created_webhook_event.rb +10 -5
  923. data/lib/openai/models/webhooks/safety_org_alert_created_webhook_event.rb +10 -5
  924. data/lib/openai/resources/admin/organization/admin_api_keys.rb +13 -9
  925. data/lib/openai/resources/admin/organization/audit_logs.rb +44 -22
  926. data/lib/openai/resources/admin/organization/certificates.rb +26 -17
  927. data/lib/openai/resources/admin/organization/data_retention.rb +2 -1
  928. data/lib/openai/resources/admin/organization/groups/roles.rb +21 -13
  929. data/lib/openai/resources/admin/organization/groups/users.rb +22 -13
  930. data/lib/openai/resources/admin/organization/groups.rb +20 -11
  931. data/lib/openai/resources/admin/organization/invites.rb +21 -13
  932. data/lib/openai/resources/admin/organization/projects/api_keys.rb +24 -12
  933. data/lib/openai/resources/admin/organization/projects/certificates.rb +17 -10
  934. data/lib/openai/resources/admin/organization/projects/data_retention.rb +6 -3
  935. data/lib/openai/resources/admin/organization/projects/groups/roles.rb +29 -18
  936. data/lib/openai/resources/admin/organization/projects/groups.rb +25 -16
  937. data/lib/openai/resources/admin/organization/projects/hosted_tool_permissions.rb +14 -7
  938. data/lib/openai/resources/admin/organization/projects/model_permissions.rb +10 -5
  939. data/lib/openai/resources/admin/organization/projects/rate_limits.rb +32 -20
  940. data/lib/openai/resources/admin/organization/projects/roles.rb +35 -21
  941. data/lib/openai/resources/admin/organization/projects/service_accounts/api_keys.rb +10 -5
  942. data/lib/openai/resources/admin/organization/projects/service_accounts.rb +40 -19
  943. data/lib/openai/resources/admin/organization/projects/spend_alerts.rb +42 -24
  944. data/lib/openai/resources/admin/organization/projects/spend_limit.rb +13 -10
  945. data/lib/openai/resources/admin/organization/projects/users/roles.rb +29 -18
  946. data/lib/openai/resources/admin/organization/projects/users.rb +32 -18
  947. data/lib/openai/resources/admin/organization/projects.rb +40 -22
  948. data/lib/openai/resources/admin/organization/roles.rb +25 -15
  949. data/lib/openai/resources/admin/organization/spend_alerts.rb +32 -18
  950. data/lib/openai/resources/admin/organization/spend_limit.rb +7 -6
  951. data/lib/openai/resources/admin/organization/usage.rb +296 -145
  952. data/lib/openai/resources/admin/organization/users/roles.rb +21 -13
  953. data/lib/openai/resources/admin/organization/users.rb +24 -13
  954. data/lib/openai/resources/audio/speech.rb +25 -10
  955. data/lib/openai/resources/audio/transcriptions.rb +172 -56
  956. data/lib/openai/resources/audio/translations.rb +26 -8
  957. data/lib/openai/resources/batches.rb +43 -15
  958. data/lib/openai/resources/beta/assistants.rb +177 -59
  959. data/lib/openai/resources/beta/chatkit/sessions.rb +14 -9
  960. data/lib/openai/resources/beta/chatkit/threads.rb +29 -18
  961. data/lib/openai/resources/beta/responses/input_items.rb +17 -9
  962. data/lib/openai/resources/beta/responses/input_tokens.rb +65 -28
  963. data/lib/openai/resources/beta/responses.rb +640 -195
  964. data/lib/openai/resources/beta/threads/messages.rb +65 -30
  965. data/lib/openai/resources/beta/threads/runs/steps.rb +50 -23
  966. data/lib/openai/resources/beta/threads/runs.rb +309 -109
  967. data/lib/openai/resources/beta/threads.rb +240 -78
  968. data/lib/openai/resources/chat/completions/messages.rb +9 -7
  969. data/lib/openai/resources/chat/completions.rb +594 -169
  970. data/lib/openai/resources/completions.rb +212 -40
  971. data/lib/openai/resources/containers/files.rb +19 -11
  972. data/lib/openai/resources/containers.rb +27 -14
  973. data/lib/openai/resources/content_provenance_checks.rb +7 -2
  974. data/lib/openai/resources/conversations/items.rb +58 -26
  975. data/lib/openai/resources/conversations.rb +23 -12
  976. data/lib/openai/resources/embeddings.rb +26 -8
  977. data/lib/openai/resources/evals/runs/output_items.rb +21 -12
  978. data/lib/openai/resources/evals/runs.rb +37 -21
  979. data/lib/openai/resources/evals.rb +43 -23
  980. data/lib/openai/resources/files.rb +42 -21
  981. data/lib/openai/resources/fine_tuning/alpha/graders.rb +15 -7
  982. data/lib/openai/resources/fine_tuning/checkpoints/permissions.rb +36 -34
  983. data/lib/openai/resources/fine_tuning/jobs/checkpoints.rb +6 -6
  984. data/lib/openai/resources/fine_tuning/jobs.rb +84 -42
  985. data/lib/openai/resources/images.rb +423 -131
  986. data/lib/openai/resources/models.rb +4 -2
  987. data/lib/openai/resources/moderations.rb +10 -6
  988. data/lib/openai/resources/realtime/calls.rb +114 -48
  989. data/lib/openai/resources/realtime/client_secrets.rb +9 -6
  990. data/lib/openai/resources/responses/input_items.rb +15 -8
  991. data/lib/openai/resources/responses/input_tokens.rb +60 -26
  992. data/lib/openai/resources/responses.rb +601 -262
  993. data/lib/openai/resources/safety/alerts.rb +2 -1
  994. data/lib/openai/resources/skills/content.rb +2 -1
  995. data/lib/openai/resources/skills/versions/content.rb +4 -2
  996. data/lib/openai/resources/skills/versions.rb +26 -11
  997. data/lib/openai/resources/skills.rb +21 -11
  998. data/lib/openai/resources/uploads/parts.rb +13 -9
  999. data/lib/openai/resources/uploads.rb +35 -27
  1000. data/lib/openai/resources/vector_stores/file_batches.rb +60 -26
  1001. data/lib/openai/resources/vector_stores/files.rb +62 -31
  1002. data/lib/openai/resources/vector_stores.rb +67 -34
  1003. data/lib/openai/resources/videos.rb +64 -31
  1004. data/lib/openai/version.rb +1 -1
  1005. data/local-audio.md +146 -0
  1006. data/rbi/openai/helpers/local_audio/interface.rbi +110 -0
  1007. data/rbi/openai/helpers/realtime/connection.rbi +18 -2
  1008. data/rbi/openai/helpers/realtime/extensions.rbi +8 -0
  1009. data/rbi/openai/helpers/realtime/recovery.rbi +27 -0
  1010. data/rbi/openai/models/admin/organization/audit_log_list_params.rbi +2 -2
  1011. data/rbi/openai/models/admin/organization/project_create_params.rbi +4 -4
  1012. data/rbi/openai/models/admin/organization/projects/project_api_key.rbi +13 -1
  1013. data/rbi/openai/models/admin/organization/projects/service_account_create_params.rbi +18 -0
  1014. data/rbi/openai/models/admin/organization/projects/service_account_create_response.rbi +19 -1
  1015. data/rbi/openai/models/audio/speech_create_params.rbi +9 -6
  1016. data/rbi/openai/models/audio/transcription_create_params.rbi +2 -2
  1017. data/rbi/openai/models/audio/transcription_stream_event.rbi +1 -1
  1018. data/rbi/openai/models/audio/transcription_text_delta_event.rbi +3 -3
  1019. data/rbi/openai/models/audio/transcription_text_done_event.rbi +3 -3
  1020. data/rbi/openai/models/audio/transcription_text_segment_event.rbi +1 -1
  1021. data/rbi/openai/models/audio/translation_create_params.rbi +2 -2
  1022. data/rbi/openai/models/batch.rbi +4 -4
  1023. data/rbi/openai/models/batch_create_params.rbi +6 -4
  1024. data/rbi/openai/models/batch_usage.rbi +2 -2
  1025. data/rbi/openai/models/beta/assistant.rbi +24 -24
  1026. data/rbi/openai/models/beta/assistant_create_params.rbi +40 -40
  1027. data/rbi/openai/models/beta/assistant_response_format_option.rbi +4 -4
  1028. data/rbi/openai/models/beta/assistant_stream_event.rbi +63 -65
  1029. data/rbi/openai/models/beta/assistant_update_params.rbi +30 -30
  1030. data/rbi/openai/models/beta/beta_computer_tool.rbi +1 -1
  1031. data/rbi/openai/models/beta/beta_computer_use_preview_tool.rbi +1 -1
  1032. data/rbi/openai/models/beta/beta_custom_tool.rbi +1 -1
  1033. data/rbi/openai/models/beta/beta_file_search_tool.rbi +1 -1
  1034. data/rbi/openai/models/beta/beta_function_tool.rbi +1 -1
  1035. data/rbi/openai/models/beta/beta_response.rbi +72 -64
  1036. data/rbi/openai/models/beta/beta_response_compaction_item.rbi +1 -1
  1037. data/rbi/openai/models/beta/beta_response_compaction_item_param.rbi +1 -1
  1038. data/rbi/openai/models/beta/beta_response_computer_tool_call.rbi +1 -1
  1039. data/rbi/openai/models/beta/beta_response_file_search_tool_call.rbi +1 -1
  1040. data/rbi/openai/models/beta/beta_response_format_text_config.rbi +1 -1
  1041. data/rbi/openai/models/beta/beta_response_format_text_json_schema_config.rbi +3 -3
  1042. data/rbi/openai/models/beta/beta_response_function_tool_call.rbi +1 -1
  1043. data/rbi/openai/models/beta/beta_response_function_tool_call_item.rbi +1 -1
  1044. data/rbi/openai/models/beta/beta_response_function_web_search.rbi +2 -2
  1045. data/rbi/openai/models/beta/beta_response_input_image.rbi +1 -1
  1046. data/rbi/openai/models/beta/beta_response_input_image_content.rbi +1 -1
  1047. data/rbi/openai/models/beta/beta_response_input_item.rbi +86 -1
  1048. data/rbi/openai/models/beta/beta_response_item.rbi +78 -1
  1049. data/rbi/openai/models/beta/beta_response_output_item.rbi +84 -1
  1050. data/rbi/openai/models/beta/beta_response_prompt.rbi +1 -1
  1051. data/rbi/openai/models/beta/beta_response_reasoning_item.rbi +1 -1
  1052. data/rbi/openai/models/beta/beta_response_text_config.rbi +4 -4
  1053. data/rbi/openai/models/beta/beta_response_usage.rbi +2 -2
  1054. data/rbi/openai/models/beta/beta_responses_client_event.rbi +98 -84
  1055. data/rbi/openai/models/beta/beta_tool.rbi +94 -55
  1056. data/rbi/openai/models/beta/beta_tool_choice_types.rbi +4 -4
  1057. data/rbi/openai/models/beta/beta_web_search_preview_tool.rbi +1 -1
  1058. data/rbi/openai/models/beta/beta_web_search_tool.rbi +1 -1
  1059. data/rbi/openai/models/beta/file_search_tool.rbi +5 -5
  1060. data/rbi/openai/models/beta/message_stream_event.rbi +16 -16
  1061. data/rbi/openai/models/beta/response_compact_params.rbi +44 -44
  1062. data/rbi/openai/models/beta/response_create_params.rbi +96 -82
  1063. data/rbi/openai/models/beta/responses/input_token_count_params.rbi +20 -20
  1064. data/rbi/openai/models/beta/run_step_stream_event.rbi +14 -16
  1065. data/rbi/openai/models/beta/run_stream_event.rbi +31 -31
  1066. data/rbi/openai/models/beta/thread.rbi +9 -9
  1067. data/rbi/openai/models/beta/thread_create_and_run_params.rbi +61 -56
  1068. data/rbi/openai/models/beta/thread_create_params.rbi +24 -22
  1069. data/rbi/openai/models/beta/thread_stream_event.rbi +3 -3
  1070. data/rbi/openai/models/beta/thread_update_params.rbi +8 -8
  1071. data/rbi/openai/models/beta/threads/image_file.rbi +6 -6
  1072. data/rbi/openai/models/beta/threads/image_file_content_block.rbi +3 -2
  1073. data/rbi/openai/models/beta/threads/image_file_delta.rbi +6 -6
  1074. data/rbi/openai/models/beta/threads/image_file_delta_block.rbi +3 -2
  1075. data/rbi/openai/models/beta/threads/message.rbi +9 -9
  1076. data/rbi/openai/models/beta/threads/message_content.rbi +3 -2
  1077. data/rbi/openai/models/beta/threads/message_content_delta.rbi +3 -2
  1078. data/rbi/openai/models/beta/threads/message_content_part_param.rbi +3 -2
  1079. data/rbi/openai/models/beta/threads/required_action_function_tool_call.rbi +2 -2
  1080. data/rbi/openai/models/beta/threads/run.rbi +33 -31
  1081. data/rbi/openai/models/beta/threads/run_create_params.rbi +37 -34
  1082. data/rbi/openai/models/beta/threads/runs/code_interpreter_output_image.rbi +4 -4
  1083. data/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi +4 -4
  1084. data/rbi/openai/models/beta/threads/runs/function_tool_call.rbi +2 -4
  1085. data/rbi/openai/models/beta/threads/runs/function_tool_call_delta.rbi +2 -4
  1086. data/rbi/openai/models/beta/threads/runs/run_step.rbi +12 -10
  1087. data/rbi/openai/models/beta/threads/runs/step_list_params.rbi +2 -2
  1088. data/rbi/openai/models/beta/threads/runs/step_retrieve_params.rbi +2 -2
  1089. data/rbi/openai/models/chat/chat_completion.rbi +27 -21
  1090. data/rbi/openai/models/chat/chat_completion_assistant_message_param.rbi +4 -5
  1091. data/rbi/openai/models/chat/chat_completion_audio.rbi +1 -1
  1092. data/rbi/openai/models/chat/chat_completion_audio_param.rbi +1 -1
  1093. data/rbi/openai/models/chat/chat_completion_chunk.rbi +28 -22
  1094. data/rbi/openai/models/chat/chat_completion_content_part.rbi +3 -4
  1095. data/rbi/openai/models/chat/chat_completion_content_part_image.rbi +5 -4
  1096. data/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi +1 -1
  1097. data/rbi/openai/models/chat/chat_completion_content_part_text.rbi +1 -2
  1098. data/rbi/openai/models/chat/chat_completion_message.rbi +4 -4
  1099. data/rbi/openai/models/chat/chat_completion_store_message.rbi +3 -4
  1100. data/rbi/openai/models/chat/completion_create_params.rbi +95 -85
  1101. data/rbi/openai/models/completion_create_params.rbi +34 -32
  1102. data/rbi/openai/models/conversations/conversation_item.rbi +89 -2
  1103. data/rbi/openai/models/conversations/item_create_params.rbi +2 -2
  1104. data/rbi/openai/models/conversations/item_retrieve_params.rbi +2 -2
  1105. data/rbi/openai/models/embedding.rbi +2 -2
  1106. data/rbi/openai/models/embedding_create_params.rbi +14 -14
  1107. data/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi +5 -5
  1108. data/rbi/openai/models/evals/run_cancel_response.rbi +22 -20
  1109. data/rbi/openai/models/evals/run_create_params.rbi +22 -20
  1110. data/rbi/openai/models/evals/run_create_response.rbi +22 -20
  1111. data/rbi/openai/models/evals/run_list_response.rbi +22 -20
  1112. data/rbi/openai/models/evals/run_retrieve_response.rbi +22 -20
  1113. data/rbi/openai/models/fine_tuning/alpha/grader_run_params.rbi +10 -8
  1114. data/rbi/openai/models/fine_tuning/fine_tuning_job.rbi +6 -6
  1115. data/rbi/openai/models/fine_tuning/job_create_params.rbi +17 -15
  1116. data/rbi/openai/models/function_definition.rbi +6 -6
  1117. data/rbi/openai/models/graders/score_model_grader.rbi +2 -2
  1118. data/rbi/openai/models/image_create_variation_params.rbi +2 -2
  1119. data/rbi/openai/models/image_edit_completed_event.rbi +20 -9
  1120. data/rbi/openai/models/image_edit_params.rbi +91 -62
  1121. data/rbi/openai/models/image_edit_partial_image_event.rbi +20 -9
  1122. data/rbi/openai/models/image_gen_completed_event.rbi +20 -9
  1123. data/rbi/openai/models/image_gen_partial_image_event.rbi +20 -9
  1124. data/rbi/openai/models/image_generate_params.rbi +73 -50
  1125. data/rbi/openai/models/image_model.rbi +4 -0
  1126. data/rbi/openai/models/images_response.rbi +27 -16
  1127. data/rbi/openai/models/moderation_create_params.rbi +9 -9
  1128. data/rbi/openai/models/realtime/audio_transcription.rbi +2 -2
  1129. data/rbi/openai/models/realtime/call_accept_params.rbi +1 -1
  1130. data/rbi/openai/models/realtime/output_audio_buffer_clear_event.rbi +1 -1
  1131. data/rbi/openai/models/realtime/realtime_audio_config_input.rbi +2 -2
  1132. data/rbi/openai/models/realtime/realtime_response_create_mcp_tool.rbi +4 -4
  1133. data/rbi/openai/models/realtime/realtime_response_create_params.rbi +3 -3
  1134. data/rbi/openai/models/realtime/realtime_server_event.rbi +3 -3
  1135. data/rbi/openai/models/realtime/realtime_session.rbi +4 -4
  1136. data/rbi/openai/models/realtime/realtime_session_create_request.rbi +2 -2
  1137. data/rbi/openai/models/realtime/realtime_session_create_response.rbi +7 -7
  1138. data/rbi/openai/models/realtime/realtime_tools_config_union.rbi +5 -5
  1139. data/rbi/openai/models/realtime/realtime_transcription_session_audio_input.rbi +2 -2
  1140. data/rbi/openai/models/reasoning.rbi +3 -3
  1141. data/rbi/openai/models/reasoning_effort.rbi +1 -1
  1142. data/rbi/openai/models/response_format_json_schema.rbi +3 -3
  1143. data/rbi/openai/models/response_format_text_grammar.rbi +1 -1
  1144. data/rbi/openai/models/response_format_text_python.rbi +1 -1
  1145. data/rbi/openai/models/responses/computer_tool.rbi +1 -1
  1146. data/rbi/openai/models/responses/computer_use_preview_tool.rbi +1 -1
  1147. data/rbi/openai/models/responses/custom_tool.rbi +1 -1
  1148. data/rbi/openai/models/responses/file_search_tool.rbi +1 -1
  1149. data/rbi/openai/models/responses/function_tool.rbi +1 -1
  1150. data/rbi/openai/models/responses/input_token_count_params.rbi +16 -16
  1151. data/rbi/openai/models/responses/response.rbi +66 -58
  1152. data/rbi/openai/models/responses/response_compact_params.rbi +44 -44
  1153. data/rbi/openai/models/responses/response_compaction_item.rbi +1 -1
  1154. data/rbi/openai/models/responses/response_compaction_item_param.rbi +1 -1
  1155. data/rbi/openai/models/responses/response_computer_tool_call.rbi +1 -1
  1156. data/rbi/openai/models/responses/response_create_params.rbi +90 -76
  1157. data/rbi/openai/models/responses/response_file_search_tool_call.rbi +1 -1
  1158. data/rbi/openai/models/responses/response_format_text_config.rbi +1 -1
  1159. data/rbi/openai/models/responses/response_format_text_json_schema_config.rbi +3 -3
  1160. data/rbi/openai/models/responses/response_function_tool_call.rbi +1 -1
  1161. data/rbi/openai/models/responses/response_function_tool_call_item.rbi +1 -1
  1162. data/rbi/openai/models/responses/response_function_web_search.rbi +2 -2
  1163. data/rbi/openai/models/responses/response_input_image.rbi +1 -1
  1164. data/rbi/openai/models/responses/response_input_image_content.rbi +1 -1
  1165. data/rbi/openai/models/responses/response_input_item.rbi +88 -1
  1166. data/rbi/openai/models/responses/response_item.rbi +80 -1
  1167. data/rbi/openai/models/responses/response_output_item.rbi +84 -1
  1168. data/rbi/openai/models/responses/response_prompt.rbi +1 -1
  1169. data/rbi/openai/models/responses/response_reasoning_item.rbi +1 -1
  1170. data/rbi/openai/models/responses/response_text_config.rbi +4 -4
  1171. data/rbi/openai/models/responses/response_usage.rbi +2 -2
  1172. data/rbi/openai/models/responses/responses_client_event.rbi +92 -78
  1173. data/rbi/openai/models/responses/tool.rbi +94 -55
  1174. data/rbi/openai/models/responses/tool_choice_types.rbi +4 -4
  1175. data/rbi/openai/models/responses/web_search_preview_tool.rbi +1 -1
  1176. data/rbi/openai/models/responses/web_search_tool.rbi +1 -1
  1177. data/rbi/openai/models/upload.rbi +2 -2
  1178. data/rbi/openai/models/upload_create_params.rbi +2 -2
  1179. data/rbi/openai/models/vector_store_create_params.rbi +6 -6
  1180. data/rbi/openai/models/vector_stores/file_batch_create_params.rbi +18 -18
  1181. data/rbi/openai/models/vector_stores/file_create_params.rbi +6 -6
  1182. data/rbi/openai/models/vector_stores/vector_store_file.rbi +4 -4
  1183. data/rbi/openai/models/vector_stores/vector_store_file_batch.rbi +4 -4
  1184. data/rbi/openai/models/webhooks/live_call_incoming_webhook_event.rbi +10 -6
  1185. data/rbi/openai/models/webhooks/realtime_call_incoming_webhook_event.rbi +14 -6
  1186. data/rbi/openai/resources/admin/organization/audit_logs.rbi +1 -1
  1187. data/rbi/openai/resources/admin/organization/projects/service_accounts.rbi +7 -0
  1188. data/rbi/openai/resources/admin/organization/projects.rbi +2 -2
  1189. data/rbi/openai/resources/audio/speech.rbi +3 -2
  1190. data/rbi/openai/resources/audio/transcriptions.rbi +2 -2
  1191. data/rbi/openai/resources/audio/translations.rbi +1 -1
  1192. data/rbi/openai/resources/batches.rbi +3 -2
  1193. data/rbi/openai/resources/beta/assistants.rbi +18 -18
  1194. data/rbi/openai/resources/beta/responses/input_tokens.rbi +6 -6
  1195. data/rbi/openai/resources/beta/responses.rbi +112 -102
  1196. data/rbi/openai/resources/beta/threads/messages.rbi +9 -6
  1197. data/rbi/openai/resources/beta/threads/runs/steps.rbi +2 -2
  1198. data/rbi/openai/resources/beta/threads/runs.rbi +37 -33
  1199. data/rbi/openai/resources/beta/threads.rbi +27 -24
  1200. data/rbi/openai/resources/chat/completions.rbi +90 -82
  1201. data/rbi/openai/resources/completions.rbi +30 -28
  1202. data/rbi/openai/resources/content_provenance_checks.rbi +1 -1
  1203. data/rbi/openai/resources/conversations/items.rbi +2 -2
  1204. data/rbi/openai/resources/embeddings.rbi +5 -5
  1205. data/rbi/openai/resources/evals.rbi +1 -1
  1206. data/rbi/openai/resources/files.rbi +5 -5
  1207. data/rbi/openai/resources/fine_tuning/alpha/graders.rbi +5 -4
  1208. data/rbi/openai/resources/fine_tuning/checkpoints/permissions.rbi +8 -4
  1209. data/rbi/openai/resources/fine_tuning/jobs.rbi +10 -9
  1210. data/rbi/openai/resources/images.rbi +113 -83
  1211. data/rbi/openai/resources/moderations.rbi +5 -4
  1212. data/rbi/openai/resources/realtime/calls.rbi +6 -6
  1213. data/rbi/openai/resources/realtime/client_secrets.rbi +1 -1
  1214. data/rbi/openai/resources/responses/input_tokens.rbi +6 -6
  1215. data/rbi/openai/resources/responses.rbi +112 -100
  1216. data/rbi/openai/resources/uploads/parts.rbi +5 -4
  1217. data/rbi/openai/resources/uploads.rbi +10 -10
  1218. data/rbi/openai/resources/vector_stores/file_batches.rbi +6 -6
  1219. data/rbi/openai/resources/vector_stores/files.rbi +6 -6
  1220. data/rbi/openai/resources/vector_stores.rbi +3 -3
  1221. data/realtime.md +101 -0
  1222. data/responses-websocket.md +182 -0
  1223. data/sig/openai/helpers/local_audio/interface.rbs +62 -0
  1224. data/sig/openai/helpers/realtime/connection.rbs +9 -1
  1225. data/sig/openai/helpers/realtime/extensions.rbs +4 -0
  1226. data/sig/openai/helpers/realtime/recovery.rbs +19 -0
  1227. data/sig/openai/models/admin/organization/projects/project_api_key.rbs +7 -2
  1228. data/sig/openai/models/admin/organization/projects/service_account_create_params.rbs +5 -0
  1229. data/sig/openai/models/admin/organization/projects/service_account_create_response.rbs +7 -2
  1230. data/sig/openai/models/beta/beta_response_input_item.rbs +39 -2
  1231. data/sig/openai/models/beta/beta_response_item.rbs +39 -2
  1232. data/sig/openai/models/beta/beta_response_output_item.rbs +39 -2
  1233. data/sig/openai/models/beta/beta_tool.rbs +11 -1
  1234. data/sig/openai/models/conversations/conversation_item.rbs +39 -2
  1235. data/sig/openai/models/image_edit_completed_event.rbs +11 -4
  1236. data/sig/openai/models/image_edit_params.rbs +3 -1
  1237. data/sig/openai/models/image_edit_partial_image_event.rbs +11 -4
  1238. data/sig/openai/models/image_gen_completed_event.rbs +11 -4
  1239. data/sig/openai/models/image_gen_partial_image_event.rbs +11 -4
  1240. data/sig/openai/models/image_generate_params.rbs +4 -1
  1241. data/sig/openai/models/image_model.rbs +8 -0
  1242. data/sig/openai/models/images_response.rbs +10 -4
  1243. data/sig/openai/models/responses/response_input_item.rbs +39 -2
  1244. data/sig/openai/models/responses/response_item.rbs +39 -2
  1245. data/sig/openai/models/responses/response_output_item.rbs +39 -2
  1246. data/sig/openai/models/responses/tool.rbs +11 -1
  1247. data/sig/openai/resources/admin/organization/projects/service_accounts.rbs +1 -0
  1248. metadata +15 -1
@@ -55,21 +55,29 @@ module OpenAI
55
55
  # @!method initialize(id:, arguments:, name:, server_label:, approval_request_id: nil, error: nil, output: nil, type: :mcp_call)
56
56
  # A Realtime item representing an invocation of a tool on an MCP server.
57
57
  #
58
- # @param id [String] The unique ID of the tool call.
58
+ # @param id [String]
59
+ # The unique ID of the tool call.
59
60
  #
60
- # @param arguments [String] A JSON string of the arguments passed to the tool.
61
+ # @param arguments [String]
62
+ # A JSON string of the arguments passed to the tool.
61
63
  #
62
- # @param name [String] The name of the tool that was run.
64
+ # @param name [String]
65
+ # The name of the tool that was run.
63
66
  #
64
- # @param server_label [String] The label of the MCP server running the tool.
67
+ # @param server_label [String]
68
+ # The label of the MCP server running the tool.
65
69
  #
66
- # @param approval_request_id [String, nil] The ID of an associated approval request, if any.
70
+ # @param approval_request_id [String, nil]
71
+ # The ID of an associated approval request, if any.
67
72
  #
68
- # @param error [OpenAI::Models::Realtime::RealtimeMcpProtocolError, OpenAI::Models::Realtime::RealtimeMcpToolExecutionError, OpenAI::Models::Realtime::RealtimeMcphttpError, nil] The error from the tool call, if any.
73
+ # @param error [OpenAI::Models::Realtime::RealtimeMcpProtocolError, OpenAI::Models::Realtime::RealtimeMcpToolExecutionError, OpenAI::Models::Realtime::RealtimeMcphttpError, nil]
74
+ # The error from the tool call, if any.
69
75
  #
70
- # @param output [String, nil] The output from the tool call.
76
+ # @param output [String, nil]
77
+ # The output from the tool call.
71
78
  #
72
- # @param type [Symbol, :mcp_call] The type of the item. Always `mcp_call`.
79
+ # @param type [Symbol, :mcp_call]
80
+ # The type of the item. Always `mcp_call`.
73
81
 
74
82
  # The error from the tool call, if any.
75
83
  #
@@ -12,12 +12,11 @@ module OpenAI
12
12
  optional :effort, enum: -> { OpenAI::Realtime::RealtimeReasoningEffort }
13
13
 
14
14
  # @!method initialize(effort: nil)
15
- # Some parameter documentations has been truncated, see
16
- # {OpenAI::Models::Realtime::RealtimeReasoning} for more details.
17
- #
18
15
  # Configuration for reasoning-capable Realtime models such as `gpt-realtime-2`.
19
16
  #
20
- # @param effort [Symbol, OpenAI::Models::Realtime::RealtimeReasoningEffort] Constrains effort on reasoning for reasoning-capable Realtime models such as
17
+ # @param effort [Symbol, OpenAI::Models::Realtime::RealtimeReasoningEffort]
18
+ # Constrains effort on reasoning for reasoning-capable Realtime models such as
19
+ # `gpt-realtime-2`.
21
20
  end
22
21
  end
23
22
  end
@@ -92,32 +92,58 @@ module OpenAI
92
92
  optional :usage, -> { OpenAI::Realtime::RealtimeResponseUsage }
93
93
 
94
94
  # @!method initialize(id: nil, audio: nil, conversation_id: nil, max_output_tokens: nil, metadata: nil, object: nil, output: nil, output_modalities: nil, status: nil, status_details: nil, usage: nil)
95
- # Some parameter documentations has been truncated, see
96
- # {OpenAI::Models::Realtime::RealtimeResponse} for more details.
97
- #
98
95
  # The response resource.
99
96
  #
100
- # @param id [String] The unique ID of the response, will look like `resp_1234`.
97
+ # @param id [String]
98
+ # The unique ID of the response, will look like `resp_1234`.
99
+ #
100
+ # @param audio [OpenAI::Models::Realtime::RealtimeResponse::Audio]
101
+ # Configuration for audio output.
101
102
  #
102
- # @param audio [OpenAI::Models::Realtime::RealtimeResponse::Audio] Configuration for audio output.
103
+ # @param conversation_id [String]
104
+ # Which conversation the response is added to, determined by the `conversation`
105
+ # field in the `response.create` event. If `auto`, the response will be added to
106
+ # the default conversation and the value of `conversation_id` will be an id like
107
+ # `conv_1234`. If `none`, the response will not be added to any conversation and
108
+ # the value of `conversation_id` will be `null`. If responses are being triggered
109
+ # automatically by VAD the response will be added to the default conversation
103
110
  #
104
- # @param conversation_id [String] Which conversation the response is added to, determined by the `conversation`
111
+ # @param max_output_tokens [Integer, Symbol, :inf]
112
+ # Maximum number of output tokens for a single assistant response, inclusive of
113
+ # tool calls, that was used in this response.
105
114
  #
106
- # @param max_output_tokens [Integer, Symbol, :inf] Maximum number of output tokens for a single assistant response,
115
+ # @param metadata [Hash{Symbol=>String}, nil]
116
+ # Set of 16 key-value pairs that can be attached to an object. This can be useful
117
+ # for storing additional information about the object in a structured format, and
118
+ # querying for objects via API or the dashboard.
107
119
  #
108
- # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be
120
+ # Keys are strings with a maximum length of 64 characters. Values are strings with
121
+ # a maximum length of 512 characters.
109
122
  #
110
- # @param object [Symbol, OpenAI::Models::Realtime::RealtimeResponse::Object] The object type, must be `realtime.response`.
123
+ # @param object [Symbol, OpenAI::Models::Realtime::RealtimeResponse::Object]
124
+ # The object type, must be `realtime.response`.
111
125
  #
112
- # @param output [Array<OpenAI::Models::Realtime::RealtimeConversationItemSystemMessage, OpenAI::Models::Realtime::RealtimeConversationItemUserMessage, OpenAI::Models::Realtime::RealtimeConversationItemAssistantMessage, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCall, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCallOutput, OpenAI::Models::Realtime::RealtimeMcpApprovalResponse, OpenAI::Models::Realtime::RealtimeMcpListTools, OpenAI::Models::Realtime::RealtimeMcpToolCall, OpenAI::Models::Realtime::RealtimeMcpApprovalRequest>] The list of output items generated by the response.
126
+ # @param output [Array<OpenAI::Models::Realtime::RealtimeConversationItemSystemMessage, OpenAI::Models::Realtime::RealtimeConversationItemUserMessage, OpenAI::Models::Realtime::RealtimeConversationItemAssistantMessage, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCall, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCallOutput, OpenAI::Models::Realtime::RealtimeMcpApprovalResponse, OpenAI::Models::Realtime::RealtimeMcpListTools, OpenAI::Models::Realtime::RealtimeMcpToolCall, OpenAI::Models::Realtime::RealtimeMcpApprovalRequest>]
127
+ # The list of output items generated by the response.
113
128
  #
114
- # @param output_modalities [Array<Symbol, OpenAI::Models::Realtime::RealtimeResponse::OutputModality>] The set of modalities the model used to respond, currently the only possible val
129
+ # @param output_modalities [Array<Symbol, OpenAI::Models::Realtime::RealtimeResponse::OutputModality>]
130
+ # The set of modalities the model used to respond, currently the only possible
131
+ # values are `[\"audio\"]`, `[\"text\"]`. Audio output always include a text
132
+ # transcript. Setting the output to mode `text` will disable audio output from the
133
+ # model.
115
134
  #
116
- # @param status [Symbol, OpenAI::Models::Realtime::RealtimeResponse::Status] The final status of the response (`completed`, `cancelled`, `failed`, or
135
+ # @param status [Symbol, OpenAI::Models::Realtime::RealtimeResponse::Status]
136
+ # The final status of the response (`completed`, `cancelled`, `failed`, or
137
+ # `incomplete`, `in_progress`).
117
138
  #
118
- # @param status_details [OpenAI::Models::Realtime::RealtimeResponseStatus] Additional details about the status.
139
+ # @param status_details [OpenAI::Models::Realtime::RealtimeResponseStatus]
140
+ # Additional details about the status.
119
141
  #
120
- # @param usage [OpenAI::Models::Realtime::RealtimeResponseUsage] Usage statistics for the Response, this will correspond to billing. A
142
+ # @param usage [OpenAI::Models::Realtime::RealtimeResponseUsage]
143
+ # Usage statistics for the Response, this will correspond to billing. A Realtime
144
+ # API session will maintain a conversation context and append new Items to the
145
+ # Conversation, thus output from previous turns (text and audio tokens) will
146
+ # become the input for later turns.
121
147
 
122
148
  # @see OpenAI::Models::Realtime::RealtimeResponse#audio
123
149
  class Audio < OpenAI::Internal::Type::BaseModel
@@ -149,12 +175,14 @@ module OpenAI
149
175
  optional :voice, union: -> { OpenAI::Realtime::RealtimeResponse::Audio::Output::Voice }
150
176
 
151
177
  # @!method initialize(format_: nil, voice: nil)
152
- # Some parameter documentations has been truncated, see
153
- # {OpenAI::Models::Realtime::RealtimeResponse::Audio::Output} for more details.
154
- #
155
- # @param format_ [OpenAI::Models::Realtime::RealtimeAudioFormats::AudioPCM, OpenAI::Models::Realtime::RealtimeAudioFormats::AudioPCMU, OpenAI::Models::Realtime::RealtimeAudioFormats::AudioPCMA] The format of the output audio.
178
+ # @param format_ [OpenAI::Models::Realtime::RealtimeAudioFormats::AudioPCM, OpenAI::Models::Realtime::RealtimeAudioFormats::AudioPCMU, OpenAI::Models::Realtime::RealtimeAudioFormats::AudioPCMA]
179
+ # The format of the output audio.
156
180
  #
157
- # @param voice [String, Symbol, OpenAI::Models::Realtime::RealtimeResponse::Audio::Output::Voice] The voice the model uses to respond. Voice cannot be changed during the
181
+ # @param voice [String, Symbol, OpenAI::Models::Realtime::RealtimeResponse::Audio::Output::Voice]
182
+ # The voice the model uses to respond. Voice cannot be changed during the session
183
+ # once the model has responded with audio at least once. Current voice options are
184
+ # `alloy`, `ash`, `ballad`, `coral`, `echo`, `sage`, `shimmer`, `verse`, `marin`,
185
+ # and `cedar`. We recommend `marin` and `cedar` for best quality.
158
186
 
159
187
  # The voice the model uses to respond. Voice cannot be changed during the session
160
188
  # once the model has responded with audio at least once. Current voice options are
@@ -34,13 +34,16 @@ module OpenAI
34
34
  optional :voice, union: -> { OpenAI::Realtime::RealtimeResponseCreateAudioOutput::Output::Voice }
35
35
 
36
36
  # @!method initialize(format_: nil, voice: nil)
37
- # Some parameter documentations has been truncated, see
38
- # {OpenAI::Models::Realtime::RealtimeResponseCreateAudioOutput::Output} for more
39
- # details.
37
+ # @param format_ [OpenAI::Models::Realtime::RealtimeAudioFormats::AudioPCM, OpenAI::Models::Realtime::RealtimeAudioFormats::AudioPCMU, OpenAI::Models::Realtime::RealtimeAudioFormats::AudioPCMA]
38
+ # The format of the output audio.
40
39
  #
41
- # @param format_ [OpenAI::Models::Realtime::RealtimeAudioFormats::AudioPCM, OpenAI::Models::Realtime::RealtimeAudioFormats::AudioPCMU, OpenAI::Models::Realtime::RealtimeAudioFormats::AudioPCMA] The format of the output audio.
42
- #
43
- # @param voice [String, Symbol, OpenAI::Models::Realtime::RealtimeResponseCreateAudioOutput::Output::Voice::ID, OpenAI::Models::Realtime::RealtimeResponseCreateAudioOutput::Output::Voice] The voice the model uses to respond. Supported built-in voices are
40
+ # @param voice [String, Symbol, OpenAI::Models::Realtime::RealtimeResponseCreateAudioOutput::Output::Voice::ID, OpenAI::Models::Realtime::RealtimeResponseCreateAudioOutput::Output::Voice]
41
+ # The voice the model uses to respond. Supported built-in voices are `alloy`,
42
+ # `ash`, `ballad`, `coral`, `echo`, `sage`, `shimmer`, `verse`, `marin`, and
43
+ # `cedar`. You may also provide a custom voice object with an `id`, for example
44
+ # `{ "id": "voice_1234" }`. Voice cannot be changed during the session once the
45
+ # model has responded with audio at least once. We recommend `marin` and `cedar`
46
+ # for best quality.
44
47
 
45
48
  # The voice the model uses to respond. Supported built-in voices are `alloy`,
46
49
  # `ash`, `ballad`, `coral`, `echo`, `sage`, `shimmer`, `verse`, `marin`, and
@@ -88,7 +91,8 @@ module OpenAI
88
91
  # @!method initialize(id:)
89
92
  # Custom voice reference.
90
93
  #
91
- # @param id [String] The custom voice ID, e.g. `voice_1234`.
94
+ # @param id [String]
95
+ # The custom voice ID, e.g. `voice_1234`.
92
96
  end
93
97
 
94
98
  # @!method self.variants
@@ -50,7 +50,7 @@ module OpenAI
50
50
  # Identifier for service connectors, like those available in ChatGPT. One of
51
51
  # `server_url`, `connector_id`, or `tunnel_id` must be provided. Learn more about
52
52
  # service connectors
53
- # [here](https://platform.openai.com/docs/guides/tools-remote-mcp#connectors).
53
+ # [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).
54
54
  #
55
55
  # Currently supported `connector_id` values are:
56
56
  #
@@ -110,37 +110,64 @@ module OpenAI
110
110
  optional :tunnel_id, String
111
111
 
112
112
  # @!method initialize(server_label:, allowed_callers: nil, allowed_tools: nil, authorization: nil, connector_id: nil, defer_loading: nil, headers: nil, require_approval: nil, server_description: nil, server_url: nil, tunnel_id: nil, type: :mcp)
113
- # Some parameter documentations has been truncated, see
114
- # {OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool} for more details.
115
- #
116
113
  # Give the model access to additional tools via remote Model Context Protocol
117
114
  # (MCP) servers.
118
- # [Learn more about MCP](https://platform.openai.com/docs/guides/tools-remote-mcp).
115
+ # [Learn more about MCP](https://developers.openai.com/api/docs/guides/tools-connectors-mcp).
119
116
  #
120
- # @param server_label [String] A label for this MCP server, used to identify it in tool calls.
117
+ # @param server_label [String]
118
+ # A label for this MCP server, used to identify it in tool calls.
121
119
  #
122
- # @param allowed_callers [Array<Symbol, OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::AllowedCaller>, nil] The tool invocation context(s).
120
+ # @param allowed_callers [Array<Symbol, OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::AllowedCaller>, nil]
121
+ # The tool invocation context(s).
123
122
  #
124
- # @param allowed_tools [Array<String>, OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::AllowedTools::McpToolFilter, nil] List of allowed tool names or a filter object.
123
+ # @param allowed_tools [Array<String>, OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::AllowedTools::McpToolFilter, nil]
124
+ # List of allowed tool names or a filter object.
125
125
  #
126
- # @param authorization [String] An OAuth access token that can be used with a remote MCP server, either
126
+ # @param authorization [String]
127
+ # An OAuth access token that can be used with a remote MCP server, either with a
128
+ # custom MCP server URL or a service connector. Your application must handle the
129
+ # OAuth authorization flow and provide the token here.
127
130
  #
128
- # @param connector_id [Symbol, OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::ConnectorID] Identifier for service connectors, like those available in ChatGPT. One of
131
+ # @param connector_id [Symbol, OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::ConnectorID]
132
+ # Identifier for service connectors, like those available in ChatGPT. One of
133
+ # `server_url`, `connector_id`, or `tunnel_id` must be provided. Learn more about
134
+ # service connectors
135
+ # [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).
129
136
  #
130
- # @param defer_loading [Boolean] Whether this MCP tool is deferred and discovered via tool search.
137
+ # Currently supported `connector_id` values are:
131
138
  #
132
- # @param headers [Hash{Symbol=>String}, nil] Optional HTTP headers to send to the MCP server. Use for authentication
139
+ # - Dropbox: `connector_dropbox`
140
+ # - Gmail: `connector_gmail`
141
+ # - Google Calendar: `connector_googlecalendar`
142
+ # - Google Drive: `connector_googledrive`
143
+ # - Microsoft Teams: `connector_microsoftteams`
144
+ # - Outlook Calendar: `connector_outlookcalendar`
145
+ # - Outlook Email: `connector_outlookemail`
146
+ # - SharePoint: `connector_sharepoint`
133
147
  #
134
- # @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.
148
+ # @param defer_loading [Boolean]
149
+ # Whether this MCP tool is deferred and discovered via tool search.
135
150
  #
136
- # @param server_description [String] Optional description of the MCP server, used to provide more context.
151
+ # @param headers [Hash{Symbol=>String}, nil]
152
+ # Optional HTTP headers to send to the MCP server. Use for authentication or other
153
+ # purposes.
137
154
  #
138
- # @param server_url [String] The URL for the MCP server. One of `server_url`, `connector_id`, or
155
+ # @param require_approval [OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::RequireApproval::McpToolApprovalFilter, Symbol, OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::RequireApproval::McpToolApprovalSetting, nil]
156
+ # Specify which of the MCP server's tools require approval.
139
157
  #
140
- # @param tunnel_id [String] The Secure MCP Tunnel ID to use instead of a direct server URL. One of
158
+ # @param server_description [String]
159
+ # Optional description of the MCP server, used to provide more context.
141
160
  #
142
- # @param type [Symbol, :mcp] The type of the MCP tool. Always `mcp`.
143
-
161
+ # @param server_url [String]
162
+ # The URL for the MCP server. One of `server_url`, `connector_id`, or `tunnel_id`
163
+ # must be provided.
164
+ #
165
+ # @param tunnel_id [String]
166
+ # The Secure MCP Tunnel ID to use instead of a direct server URL. One of
167
+ # `server_url`, `connector_id`, or `tunnel_id` must be provided.
168
+ #
169
+ # @param type [Symbol, :mcp]
170
+ # The type of the MCP tool. Always `mcp`.
144
171
  module AllowedCaller
145
172
  extend OpenAI::Internal::Type::Enum
146
173
 
@@ -180,15 +207,16 @@ module OpenAI
180
207
  optional :tool_names, OpenAI::Internal::Type::ArrayOf[String]
181
208
 
182
209
  # @!method initialize(read_only: nil, tool_names: nil)
183
- # Some parameter documentations has been truncated, see
184
- # {OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::AllowedTools::McpToolFilter}
185
- # for more details.
186
- #
187
210
  # A filter object to specify which tools are allowed.
188
211
  #
189
- # @param read_only [Boolean] Indicates whether or not a tool modifies data or is read-only. If an
212
+ # @param read_only [Boolean]
213
+ # Indicates whether or not a tool modifies data or is read-only. If an MCP server
214
+ # is
215
+ # [annotated with `readOnlyHint`](https://modelcontextprotocol.io/specification/2025-06-18/schema#toolannotations-readonlyhint),
216
+ # it will match this filter.
190
217
  #
191
- # @param tool_names [Array<String>] List of allowed tool names.
218
+ # @param tool_names [Array<String>]
219
+ # List of allowed tool names.
192
220
  end
193
221
 
194
222
  # @!method self.variants
@@ -201,7 +229,7 @@ module OpenAI
201
229
  # Identifier for service connectors, like those available in ChatGPT. One of
202
230
  # `server_url`, `connector_id`, or `tunnel_id` must be provided. Learn more about
203
231
  # service connectors
204
- # [here](https://platform.openai.com/docs/guides/tools-remote-mcp#connectors).
232
+ # [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).
205
233
  #
206
234
  # Currently supported `connector_id` values are:
207
235
  #
@@ -267,16 +295,14 @@ module OpenAI
267
295
  )
268
296
 
269
297
  # @!method initialize(always: nil, never: nil)
270
- # Some parameter documentations has been truncated, see
271
- # {OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::RequireApproval::McpToolApprovalFilter}
272
- # for more details.
273
- #
274
298
  # Specify which of the MCP server's tools require approval. Can be `always`,
275
299
  # `never`, or a filter object associated with tools that require approval.
276
300
  #
277
- # @param always [OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::RequireApproval::McpToolApprovalFilter::Always] A filter object to specify which tools are allowed.
301
+ # @param always [OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::RequireApproval::McpToolApprovalFilter::Always]
302
+ # A filter object to specify which tools are allowed.
278
303
  #
279
- # @param never [OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::RequireApproval::McpToolApprovalFilter::Never] A filter object to specify which tools are allowed.
304
+ # @param never [OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::RequireApproval::McpToolApprovalFilter::Never]
305
+ # A filter object to specify which tools are allowed.
280
306
 
281
307
  # @see OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::RequireApproval::McpToolApprovalFilter#always
282
308
  class Always < OpenAI::Internal::Type::BaseModel
@@ -296,15 +322,16 @@ module OpenAI
296
322
  optional :tool_names, OpenAI::Internal::Type::ArrayOf[String]
297
323
 
298
324
  # @!method initialize(read_only: nil, tool_names: nil)
299
- # Some parameter documentations has been truncated, see
300
- # {OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::RequireApproval::McpToolApprovalFilter::Always}
301
- # for more details.
302
- #
303
325
  # A filter object to specify which tools are allowed.
304
326
  #
305
- # @param read_only [Boolean] Indicates whether or not a tool modifies data or is read-only. If an
327
+ # @param read_only [Boolean]
328
+ # Indicates whether or not a tool modifies data or is read-only. If an MCP server
329
+ # is
330
+ # [annotated with `readOnlyHint`](https://modelcontextprotocol.io/specification/2025-06-18/schema#toolannotations-readonlyhint),
331
+ # it will match this filter.
306
332
  #
307
- # @param tool_names [Array<String>] List of allowed tool names.
333
+ # @param tool_names [Array<String>]
334
+ # List of allowed tool names.
308
335
  end
309
336
 
310
337
  # @see OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::RequireApproval::McpToolApprovalFilter#never
@@ -325,15 +352,16 @@ module OpenAI
325
352
  optional :tool_names, OpenAI::Internal::Type::ArrayOf[String]
326
353
 
327
354
  # @!method initialize(read_only: nil, tool_names: nil)
328
- # Some parameter documentations has been truncated, see
329
- # {OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool::RequireApproval::McpToolApprovalFilter::Never}
330
- # for more details.
331
- #
332
355
  # A filter object to specify which tools are allowed.
333
356
  #
334
- # @param read_only [Boolean] Indicates whether or not a tool modifies data or is read-only. If an
357
+ # @param read_only [Boolean]
358
+ # Indicates whether or not a tool modifies data or is read-only. If an MCP server
359
+ # is
360
+ # [annotated with `readOnlyHint`](https://modelcontextprotocol.io/specification/2025-06-18/schema#toolannotations-readonlyhint),
361
+ # it will match this filter.
335
362
  #
336
- # @param tool_names [Array<String>] List of allowed tool names.
363
+ # @param tool_names [Array<String>]
364
+ # List of allowed tool names.
337
365
  end
338
366
  end
339
367
 
@@ -84,7 +84,7 @@ module OpenAI
84
84
 
85
85
  # @!attribute prompt
86
86
  # Reference to a prompt template and its variables.
87
- # [Learn more](https://platform.openai.com/docs/guides/text?api-mode=responses#reusable-prompts).
87
+ # [Learn more](https://developers.openai.com/api/docs/guides/text?api-mode=responses#version-prompts-in-code).
88
88
  #
89
89
  # @return [OpenAI::Models::Responses::ResponsePrompt, nil]
90
90
  optional :prompt, -> { OpenAI::Responses::ResponsePrompt }, nil?: true
@@ -112,34 +112,72 @@ module OpenAI
112
112
  )
113
113
 
114
114
  # @!method initialize(audio: nil, conversation: nil, input: nil, instructions: nil, max_output_tokens: nil, metadata: nil, output_modalities: nil, parallel_tool_calls: nil, prompt: nil, reasoning: nil, tool_choice: nil, tools: nil)
115
- # Some parameter documentations has been truncated, see
116
- # {OpenAI::Models::Realtime::RealtimeResponseCreateParams} for more details.
117
- #
118
115
  # Create a new Realtime response with these parameters
119
116
  #
120
- # @param audio [OpenAI::Models::Realtime::RealtimeResponseCreateAudioOutput] Configuration for audio input and output.
117
+ # @param audio [OpenAI::Models::Realtime::RealtimeResponseCreateAudioOutput]
118
+ # Configuration for audio input and output.
119
+ #
120
+ # @param conversation [String, Symbol, OpenAI::Models::Realtime::RealtimeResponseCreateParams::Conversation]
121
+ # Controls which conversation the response is added to. Currently supports `auto`
122
+ # and `none`, with `auto` as the default value. The `auto` value means that the
123
+ # contents of the response will be added to the default conversation. Set this to
124
+ # `none` to create an out-of-band response which will not add items to default
125
+ # conversation.
121
126
  #
122
- # @param conversation [String, Symbol, OpenAI::Models::Realtime::RealtimeResponseCreateParams::Conversation] Controls which conversation the response is added to. Currently supports
127
+ # @param input [Array<OpenAI::Models::Realtime::RealtimeConversationItemSystemMessage, OpenAI::Models::Realtime::RealtimeConversationItemUserMessage, OpenAI::Models::Realtime::RealtimeConversationItemAssistantMessage, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCall, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCallOutput, OpenAI::Models::Realtime::RealtimeMcpApprovalResponse, OpenAI::Models::Realtime::RealtimeMcpListTools, OpenAI::Models::Realtime::RealtimeMcpToolCall, OpenAI::Models::Realtime::RealtimeMcpApprovalRequest>]
128
+ # Input items to include in the prompt for the model. Using this field creates a
129
+ # new context for this Response instead of using the default conversation. An
130
+ # empty array `[]` will clear the context for this Response. Note that this can
131
+ # include references to items that previously appeared in the session using their
132
+ # id.
123
133
  #
124
- # @param input [Array<OpenAI::Models::Realtime::RealtimeConversationItemSystemMessage, OpenAI::Models::Realtime::RealtimeConversationItemUserMessage, OpenAI::Models::Realtime::RealtimeConversationItemAssistantMessage, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCall, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCallOutput, OpenAI::Models::Realtime::RealtimeMcpApprovalResponse, OpenAI::Models::Realtime::RealtimeMcpListTools, OpenAI::Models::Realtime::RealtimeMcpToolCall, OpenAI::Models::Realtime::RealtimeMcpApprovalRequest>] Input items to include in the prompt for the model. Using this field
134
+ # @param instructions [String]
135
+ # The default system instructions (i.e. system message) prepended to model calls.
136
+ # This field allows the client to guide the model on desired responses. The model
137
+ # can be instructed on response content and format, (e.g. "be extremely succinct",
138
+ # "act friendly", "here are examples of good responses") and on audio behavior
139
+ # (e.g. "talk quickly", "inject emotion into your voice", "laugh frequently"). The
140
+ # instructions are not guaranteed to be followed by the model, but they provide
141
+ # guidance to the model on the desired behavior. Note that the server sets default
142
+ # instructions which will be used if this field is not set and are visible in the
143
+ # `session.created` event at the start of the session.
125
144
  #
126
- # @param instructions [String] The default system instructions (i.e. system message) prepended to model calls.
145
+ # @param max_output_tokens [Integer, Symbol, :inf]
146
+ # Maximum number of output tokens for a single assistant response, inclusive of
147
+ # tool calls. Provide an integer between 1 and 4096 to limit output tokens, or
148
+ # `inf` for the maximum available tokens for a given model. Defaults to `inf`.
127
149
  #
128
- # @param max_output_tokens [Integer, Symbol, :inf] Maximum number of output tokens for a single assistant response,
150
+ # @param metadata [Hash{Symbol=>String}, nil]
151
+ # Set of 16 key-value pairs that can be attached to an object. This can be useful
152
+ # for storing additional information about the object in a structured format, and
153
+ # querying for objects via API or the dashboard.
129
154
  #
130
- # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be
155
+ # Keys are strings with a maximum length of 64 characters. Values are strings with
156
+ # a maximum length of 512 characters.
131
157
  #
132
- # @param output_modalities [Array<Symbol, OpenAI::Models::Realtime::RealtimeResponseCreateParams::OutputModality>] The set of modalities the model used to respond, currently the only possible val
158
+ # @param output_modalities [Array<Symbol, OpenAI::Models::Realtime::RealtimeResponseCreateParams::OutputModality>]
159
+ # The set of modalities the model used to respond, currently the only possible
160
+ # values are `[\"audio\"]`, `[\"text\"]`. Audio output always include a text
161
+ # transcript. Setting the output to mode `text` will disable audio output from the
162
+ # model.
133
163
  #
134
- # @param parallel_tool_calls [Boolean] Whether the model may call multiple tools in parallel. Only supported by
164
+ # @param parallel_tool_calls [Boolean]
165
+ # Whether the model may call multiple tools in parallel. Only supported by
166
+ # reasoning Realtime models such as `gpt-realtime-2`.
135
167
  #
136
- # @param prompt [OpenAI::Models::Responses::ResponsePrompt, nil] Reference to a prompt template and its variables.
168
+ # @param prompt [OpenAI::Models::Responses::ResponsePrompt, nil]
169
+ # Reference to a prompt template and its variables.
170
+ # [Learn more](https://developers.openai.com/api/docs/guides/text?api-mode=responses#version-prompts-in-code).
137
171
  #
138
- # @param reasoning [OpenAI::Models::Realtime::RealtimeReasoning] Configuration for reasoning-capable Realtime models such as `gpt-realtime-2`.
172
+ # @param reasoning [OpenAI::Models::Realtime::RealtimeReasoning]
173
+ # Configuration for reasoning-capable Realtime models such as `gpt-realtime-2`.
139
174
  #
140
- # @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp] How the model chooses tools. Provide one of the string modes or force a specific
175
+ # @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp]
176
+ # How the model chooses tools. Provide one of the string modes or force a specific
177
+ # function/MCP tool.
141
178
  #
142
- # @param tools [Array<OpenAI::Models::Realtime::RealtimeFunctionTool, OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool>] Tools available to the model.
179
+ # @param tools [Array<OpenAI::Models::Realtime::RealtimeFunctionTool, OpenAI::Models::Realtime::RealtimeResponseCreateMcpTool>]
180
+ # Tools available to the model.
143
181
 
144
182
  # Controls which conversation the response is added to. Currently supports `auto`
145
183
  # and `none`, with `auto` as the default value. The `auto` value means that the
@@ -227,14 +265,14 @@ module OpenAI
227
265
 
228
266
  # Give the model access to additional tools via remote Model Context Protocol
229
267
  # (MCP) servers.
230
- # [Learn more about MCP](https://platform.openai.com/docs/guides/tools-remote-mcp).
268
+ # [Learn more about MCP](https://developers.openai.com/api/docs/guides/tools-connectors-mcp).
231
269
  module Tool
232
270
  extend OpenAI::Internal::Type::Union
233
271
 
234
272
  variant -> { OpenAI::Realtime::RealtimeFunctionTool }
235
273
 
236
274
  # Give the model access to additional tools via remote Model Context Protocol
237
- # (MCP) servers. [Learn more about MCP](https://platform.openai.com/docs/guides/tools-remote-mcp).
275
+ # (MCP) servers. [Learn more about MCP](https://developers.openai.com/api/docs/guides/tools-connectors-mcp).
238
276
  variant -> { OpenAI::Realtime::RealtimeResponseCreateMcpTool }
239
277
 
240
278
  # @!method self.variants
@@ -29,16 +29,22 @@ module OpenAI
29
29
  optional :type, enum: -> { OpenAI::Realtime::RealtimeResponseStatus::Type }
30
30
 
31
31
  # @!method initialize(error: nil, reason: nil, type: nil)
32
- # Some parameter documentations has been truncated, see
33
- # {OpenAI::Models::Realtime::RealtimeResponseStatus} for more details.
34
- #
35
32
  # Additional details about the status.
36
33
  #
37
- # @param error [OpenAI::Models::Realtime::RealtimeResponseStatus::Error] A description of the error that caused the response to fail,
34
+ # @param error [OpenAI::Models::Realtime::RealtimeResponseStatus::Error]
35
+ # A description of the error that caused the response to fail, populated when the
36
+ # `status` is `failed`.
38
37
  #
39
- # @param reason [Symbol, OpenAI::Models::Realtime::RealtimeResponseStatus::Reason] The reason the Response did not complete. For a `cancelled` Response, one of `t
38
+ # @param reason [Symbol, OpenAI::Models::Realtime::RealtimeResponseStatus::Reason]
39
+ # The reason the Response did not complete. For a `cancelled` Response, one of
40
+ # `turn_detected` (the server VAD detected a new start of speech) or
41
+ # `client_cancelled` (the client sent a cancel event). For an `incomplete`
42
+ # Response, one of `max_output_tokens` or `content_filter` (the server-side safety
43
+ # filter activated and cut off the response).
40
44
  #
41
- # @param type [Symbol, OpenAI::Models::Realtime::RealtimeResponseStatus::Type] The type of error that caused the response to fail, corresponding
45
+ # @param type [Symbol, OpenAI::Models::Realtime::RealtimeResponseStatus::Type]
46
+ # The type of error that caused the response to fail, corresponding with the
47
+ # `status` field (`completed`, `cancelled`, `incomplete`, `failed`).
42
48
 
43
49
  # @see OpenAI::Models::Realtime::RealtimeResponseStatus#error
44
50
  class Error < OpenAI::Internal::Type::BaseModel
@@ -58,9 +64,11 @@ module OpenAI
58
64
  # A description of the error that caused the response to fail, populated when the
59
65
  # `status` is `failed`.
60
66
  #
61
- # @param code [String] Error code, if any.
67
+ # @param code [String]
68
+ # Error code, if any.
62
69
  #
63
- # @param type [String] The type of error.
70
+ # @param type [String]
71
+ # The type of error.
64
72
  end
65
73
 
66
74
  # The reason the Response did not complete. For a `cancelled` Response, one of
@@ -41,23 +41,31 @@ module OpenAI
41
41
  optional :total_tokens, Integer
42
42
 
43
43
  # @!method initialize(input_token_details: nil, input_tokens: nil, output_token_details: nil, output_tokens: nil, total_tokens: nil)
44
- # Some parameter documentations has been truncated, see
45
- # {OpenAI::Models::Realtime::RealtimeResponseUsage} for more details.
46
- #
47
44
  # Usage statistics for the Response, this will correspond to billing. A Realtime
48
45
  # API session will maintain a conversation context and append new Items to the
49
46
  # Conversation, thus output from previous turns (text and audio tokens) will
50
47
  # become the input for later turns.
51
48
  #
52
- # @param input_token_details [OpenAI::Models::Realtime::RealtimeResponseUsageInputTokenDetails] Details about the input tokens used in the Response. Cached tokens are tokens fr
49
+ # @param input_token_details [OpenAI::Models::Realtime::RealtimeResponseUsageInputTokenDetails]
50
+ # Details about the input tokens used in the Response. Cached tokens are tokens
51
+ # from previous turns in the conversation that are included as context for the
52
+ # current response. Cached tokens here are counted as a subset of input tokens,
53
+ # meaning input tokens will include cached and uncached tokens.
53
54
  #
54
- # @param input_tokens [Integer] The number of input tokens used in the Response, including text and
55
+ # @param input_tokens [Integer]
56
+ # The number of input tokens used in the Response, including text and audio
57
+ # tokens.
55
58
  #
56
- # @param output_token_details [OpenAI::Models::Realtime::RealtimeResponseUsageOutputTokenDetails] Details about the output tokens used in the Response.
59
+ # @param output_token_details [OpenAI::Models::Realtime::RealtimeResponseUsageOutputTokenDetails]
60
+ # Details about the output tokens used in the Response.
57
61
  #
58
- # @param output_tokens [Integer] The number of output tokens sent in the Response, including text and
62
+ # @param output_tokens [Integer]
63
+ # The number of output tokens sent in the Response, including text and audio
64
+ # tokens.
59
65
  #
60
- # @param total_tokens [Integer] The total number of tokens in the Response including input and output
66
+ # @param total_tokens [Integer]
67
+ # The total number of tokens in the Response including input and output text and
68
+ # audio tokens.
61
69
  end
62
70
  end
63
71
  end
@@ -43,15 +43,20 @@ module OpenAI
43
43
  # current response. Cached tokens here are counted as a subset of input tokens,
44
44
  # meaning input tokens will include cached and uncached tokens.
45
45
  #
46
- # @param audio_tokens [Integer] The number of audio tokens used as input for the Response.
46
+ # @param audio_tokens [Integer]
47
+ # The number of audio tokens used as input for the Response.
47
48
  #
48
- # @param cached_tokens [Integer] The number of cached tokens used as input for the Response.
49
+ # @param cached_tokens [Integer]
50
+ # The number of cached tokens used as input for the Response.
49
51
  #
50
- # @param cached_tokens_details [OpenAI::Models::Realtime::RealtimeResponseUsageInputTokenDetails::CachedTokensDetails] Details about the cached tokens used as input for the Response.
52
+ # @param cached_tokens_details [OpenAI::Models::Realtime::RealtimeResponseUsageInputTokenDetails::CachedTokensDetails]
53
+ # Details about the cached tokens used as input for the Response.
51
54
  #
52
- # @param image_tokens [Integer] The number of image tokens used as input for the Response.
55
+ # @param image_tokens [Integer]
56
+ # The number of image tokens used as input for the Response.
53
57
  #
54
- # @param text_tokens [Integer] The number of text tokens used as input for the Response.
58
+ # @param text_tokens [Integer]
59
+ # The number of text tokens used as input for the Response.
55
60
 
56
61
  # @see OpenAI::Models::Realtime::RealtimeResponseUsageInputTokenDetails#cached_tokens_details
57
62
  class CachedTokensDetails < OpenAI::Internal::Type::BaseModel
@@ -76,11 +81,14 @@ module OpenAI
76
81
  # @!method initialize(audio_tokens: nil, image_tokens: nil, text_tokens: nil)
77
82
  # Details about the cached tokens used as input for the Response.
78
83
  #
79
- # @param audio_tokens [Integer] The number of cached audio tokens used as input for the Response.
84
+ # @param audio_tokens [Integer]
85
+ # The number of cached audio tokens used as input for the Response.
80
86
  #
81
- # @param image_tokens [Integer] The number of cached image tokens used as input for the Response.
87
+ # @param image_tokens [Integer]
88
+ # The number of cached image tokens used as input for the Response.
82
89
  #
83
- # @param text_tokens [Integer] The number of cached text tokens used as input for the Response.
90
+ # @param text_tokens [Integer]
91
+ # The number of cached text tokens used as input for the Response.
84
92
  end
85
93
  end
86
94
  end