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
@@ -19,9 +19,11 @@ module OpenAI
19
19
  # @!method initialize(audio_tokens: nil, text_tokens: nil)
20
20
  # Details about the output tokens used in the Response.
21
21
  #
22
- # @param audio_tokens [Integer] The number of audio tokens used in the Response.
22
+ # @param audio_tokens [Integer]
23
+ # The number of audio tokens used in the Response.
23
24
  #
24
- # @param text_tokens [Integer] The number of text tokens used in the Response.
25
+ # @param text_tokens [Integer]
26
+ # The number of text tokens used in the Response.
25
27
  end
26
28
  end
27
29
  end
@@ -201,7 +201,7 @@ module OpenAI
201
201
  # **WebRTC/SIP Only:** Emitted when the server begins streaming audio to the client. This event is
202
202
  # emitted after an audio content part has been added (`response.content_part.added`)
203
203
  # to the response.
204
- # [Learn more](https://platform.openai.com/docs/guides/realtime-conversations#client-and-server-events-for-audio-in-webrtc).
204
+ # [Learn more](https://developers.openai.com/api/docs/guides/realtime-conversations#client-and-server-events-for-audio-in-webrtc).
205
205
  variant(
206
206
  :"output_audio_buffer.started",
207
207
  -> { OpenAI::Realtime::RealtimeServerEvent::OutputAudioBufferStarted }
@@ -210,7 +210,7 @@ module OpenAI
210
210
  # **WebRTC/SIP Only:** Emitted when the output audio buffer has been completely drained on the server,
211
211
  # and no more audio is forthcoming. This event is emitted after the full response
212
212
  # data has been sent to the client (`response.done`).
213
- # [Learn more](https://platform.openai.com/docs/guides/realtime-conversations#client-and-server-events-for-audio-in-webrtc).
213
+ # [Learn more](https://developers.openai.com/api/docs/guides/realtime-conversations#client-and-server-events-for-audio-in-webrtc).
214
214
  variant(
215
215
  :"output_audio_buffer.stopped",
216
216
  -> { OpenAI::Realtime::RealtimeServerEvent::OutputAudioBufferStopped }
@@ -220,7 +220,7 @@ module OpenAI
220
220
  # mode when the user has interrupted (`input_audio_buffer.speech_started`),
221
221
  # or when the client has emitted the `output_audio_buffer.clear` event to manually
222
222
  # cut off the current audio response.
223
- # [Learn more](https://platform.openai.com/docs/guides/realtime-conversations#client-and-server-events-for-audio-in-webrtc).
223
+ # [Learn more](https://developers.openai.com/api/docs/guides/realtime-conversations#client-and-server-events-for-audio-in-webrtc).
224
224
  variant(
225
225
  :"output_audio_buffer.cleared",
226
226
  -> { OpenAI::Realtime::RealtimeServerEvent::OutputAudioBufferCleared }
@@ -310,11 +310,14 @@ module OpenAI
310
310
  # data after noise cancellation and VAD. It includes the full content of the Item,
311
311
  # including audio data.
312
312
  #
313
- # @param event_id [String] The unique ID of the server event.
313
+ # @param event_id [String]
314
+ # The unique ID of the server event.
314
315
  #
315
- # @param item [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] A single item within a Realtime conversation.
316
+ # @param item [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]
317
+ # A single item within a Realtime conversation.
316
318
  #
317
- # @param type [Symbol, :"conversation.item.retrieved"] The event type, must be `conversation.item.retrieved`.
319
+ # @param type [Symbol, :"conversation.item.retrieved"]
320
+ # The event type, must be `conversation.item.retrieved`.
318
321
  end
319
322
 
320
323
  class OutputAudioBufferStarted < OpenAI::Internal::Type::BaseModel
@@ -340,13 +343,16 @@ module OpenAI
340
343
  # **WebRTC/SIP Only:** Emitted when the server begins streaming audio to the
341
344
  # client. This event is emitted after an audio content part has been added
342
345
  # (`response.content_part.added`) to the response.
343
- # [Learn more](https://platform.openai.com/docs/guides/realtime-conversations#client-and-server-events-for-audio-in-webrtc).
346
+ # [Learn more](https://developers.openai.com/api/docs/guides/realtime-conversations#client-and-server-events-for-audio-in-webrtc).
344
347
  #
345
- # @param event_id [String] The unique ID of the server event.
348
+ # @param event_id [String]
349
+ # The unique ID of the server event.
346
350
  #
347
- # @param response_id [String] The unique ID of the response that produced the audio.
351
+ # @param response_id [String]
352
+ # The unique ID of the response that produced the audio.
348
353
  #
349
- # @param type [Symbol, :"output_audio_buffer.started"] The event type, must be `output_audio_buffer.started`.
354
+ # @param type [Symbol, :"output_audio_buffer.started"]
355
+ # The event type, must be `output_audio_buffer.started`.
350
356
  end
351
357
 
352
358
  class OutputAudioBufferStopped < OpenAI::Internal::Type::BaseModel
@@ -372,13 +378,16 @@ module OpenAI
372
378
  # **WebRTC/SIP Only:** Emitted when the output audio buffer has been completely
373
379
  # drained on the server, and no more audio is forthcoming. This event is emitted
374
380
  # after the full response data has been sent to the client (`response.done`).
375
- # [Learn more](https://platform.openai.com/docs/guides/realtime-conversations#client-and-server-events-for-audio-in-webrtc).
381
+ # [Learn more](https://developers.openai.com/api/docs/guides/realtime-conversations#client-and-server-events-for-audio-in-webrtc).
376
382
  #
377
- # @param event_id [String] The unique ID of the server event.
383
+ # @param event_id [String]
384
+ # The unique ID of the server event.
378
385
  #
379
- # @param response_id [String] The unique ID of the response that produced the audio.
386
+ # @param response_id [String]
387
+ # The unique ID of the response that produced the audio.
380
388
  #
381
- # @param type [Symbol, :"output_audio_buffer.stopped"] The event type, must be `output_audio_buffer.stopped`.
389
+ # @param type [Symbol, :"output_audio_buffer.stopped"]
390
+ # The event type, must be `output_audio_buffer.stopped`.
382
391
  end
383
392
 
384
393
  class OutputAudioBufferCleared < OpenAI::Internal::Type::BaseModel
@@ -406,13 +415,16 @@ module OpenAI
406
415
  # (`input_audio_buffer.speech_started`), or when the client has emitted the
407
416
  # `output_audio_buffer.clear` event to manually cut off the current audio
408
417
  # response.
409
- # [Learn more](https://platform.openai.com/docs/guides/realtime-conversations#client-and-server-events-for-audio-in-webrtc).
418
+ # [Learn more](https://developers.openai.com/api/docs/guides/realtime-conversations#client-and-server-events-for-audio-in-webrtc).
410
419
  #
411
- # @param event_id [String] The unique ID of the server event.
420
+ # @param event_id [String]
421
+ # The unique ID of the server event.
412
422
  #
413
- # @param response_id [String] The unique ID of the response that produced the audio.
423
+ # @param response_id [String]
424
+ # The unique ID of the response that produced the audio.
414
425
  #
415
- # @param type [Symbol, :"output_audio_buffer.cleared"] The event type, must be `output_audio_buffer.cleared`.
426
+ # @param type [Symbol, :"output_audio_buffer.cleared"]
427
+ # The event type, must be `output_audio_buffer.cleared`.
416
428
  end
417
429
 
418
430
  # @!method self.variants
@@ -52,7 +52,7 @@ module OpenAI
52
52
  # `null` to turn off once on. Input audio transcription is not native to the
53
53
  # model, since the model consumes audio directly. Transcription runs
54
54
  # asynchronously through
55
- # [the /audio/transcriptions endpoint](https://platform.openai.com/docs/api-reference/audio/createTranscription)
55
+ # [the /audio/transcriptions endpoint](https://developers.openai.com/api/reference/resources/audio/subresources/transcriptions/methods/create)
56
56
  # and should be treated as guidance of input audio content rather than precisely
57
57
  # what the model heard. The client can optionally set the language and prompt for
58
58
  # transcription, these offer additional guidance to the transcription service.
@@ -118,7 +118,7 @@ module OpenAI
118
118
 
119
119
  # @!attribute prompt
120
120
  # Reference to a prompt template and its variables.
121
- # [Learn more](https://platform.openai.com/docs/guides/text?api-mode=responses#reusable-prompts).
121
+ # [Learn more](https://developers.openai.com/api/docs/guides/text?api-mode=responses#version-prompts-in-code).
122
122
  #
123
123
  # @return [OpenAI::Models::Responses::ResponsePrompt, nil]
124
124
  optional :prompt, -> { OpenAI::Responses::ResponsePrompt }, nil?: true
@@ -191,51 +191,123 @@ module OpenAI
191
191
  optional :voice, union: -> { OpenAI::Realtime::RealtimeSession::Voice }
192
192
 
193
193
  # @!method initialize(id: nil, expires_at: nil, include: nil, input_audio_format: nil, input_audio_noise_reduction: nil, input_audio_transcription: nil, instructions: nil, max_response_output_tokens: nil, modalities: nil, model: nil, object: nil, output_audio_format: nil, prompt: nil, speed: nil, temperature: nil, tool_choice: nil, tools: nil, tracing: nil, turn_detection: nil, voice: nil)
194
- # Some parameter documentations has been truncated, see
195
- # {OpenAI::Models::Realtime::RealtimeSession} for more details.
196
- #
197
194
  # Realtime session object for the beta interface.
198
195
  #
199
- # @param id [String] Unique identifier for the session that looks like `sess_1234567890abcdef`.
200
- #
201
- # @param expires_at [Integer] Expiration timestamp for the session, in seconds since epoch.
202
- #
203
- # @param include [Array<Symbol, OpenAI::Models::Realtime::RealtimeSession::Include>, nil] Additional fields to include in server outputs.
204
- #
205
- # @param input_audio_format [Symbol, OpenAI::Models::Realtime::RealtimeSession::InputAudioFormat] The format of input audio. Options are `pcm16`, `g711_ulaw`, or `g711_alaw`.
206
- #
207
- # @param input_audio_noise_reduction [OpenAI::Models::Realtime::RealtimeSession::InputAudioNoiseReduction] Configuration for input audio noise reduction. This can be set to `null` to turn
208
- #
209
- # @param input_audio_transcription [OpenAI::Models::Realtime::AudioTranscription, nil] Configuration for input audio transcription, defaults to off and can be set to `
210
- #
211
- # @param instructions [String] The default system instructions (i.e. system message) prepended to model
212
- #
213
- # @param max_response_output_tokens [Integer, Symbol, :inf] Maximum number of output tokens for a single assistant response,
214
- #
215
- # @param modalities [Array<Symbol, OpenAI::Models::Realtime::RealtimeSession::Modality>] The set of modalities the model can respond with. To disable audio,
216
- #
217
- # @param model [String, Symbol, OpenAI::Models::Realtime::RealtimeSession::Model] The Realtime model used for this session.
218
- #
219
- # @param object [Symbol, OpenAI::Models::Realtime::RealtimeSession::Object] The object type. Always `realtime.session`.
220
- #
221
- # @param output_audio_format [Symbol, OpenAI::Models::Realtime::RealtimeSession::OutputAudioFormat] The format of output audio. Options are `pcm16`, `g711_ulaw`, or `g711_alaw`.
222
- #
223
- # @param prompt [OpenAI::Models::Responses::ResponsePrompt, nil] Reference to a prompt template and its variables.
224
- #
225
- # @param speed [Float] The speed of the model's spoken response. 1.0 is the default speed. 0.25 is
226
- #
227
- # @param temperature [Float] Sampling temperature for the model, limited to [0.6, 1.2]. For audio models a te
228
- #
229
- # @param tool_choice [String] How the model chooses tools. Options are `auto`, `none`, `required`, or
230
- #
231
- # @param tools [Array<OpenAI::Models::Realtime::RealtimeFunctionTool>] Tools (functions) available to the model.
232
- #
233
- # @param tracing [Symbol, :auto, OpenAI::Models::Realtime::RealtimeSession::Tracing::TracingConfiguration, nil] Configuration options for tracing. Set to null to disable tracing. Once
234
- #
235
- # @param turn_detection [OpenAI::Models::Realtime::RealtimeSession::TurnDetection::ServerVad, OpenAI::Models::Realtime::RealtimeSession::TurnDetection::SemanticVad, nil] Configuration for turn detection, ether Server VAD or Semantic VAD. This can be
236
- #
237
- # @param voice [String, Symbol, OpenAI::Models::Realtime::RealtimeSession::Voice] The voice the model uses to respond. Voice cannot be changed during the
238
-
196
+ # @param id [String]
197
+ # Unique identifier for the session that looks like `sess_1234567890abcdef`.
198
+ #
199
+ # @param expires_at [Integer]
200
+ # Expiration timestamp for the session, in seconds since epoch.
201
+ #
202
+ # @param include [Array<Symbol, OpenAI::Models::Realtime::RealtimeSession::Include>, nil]
203
+ # Additional fields to include in server outputs.
204
+ #
205
+ # - `item.input_audio_transcription.logprobs`: Include logprobs for input audio
206
+ # transcription.
207
+ #
208
+ # @param input_audio_format [Symbol, OpenAI::Models::Realtime::RealtimeSession::InputAudioFormat]
209
+ # The format of input audio. Options are `pcm16`, `g711_ulaw`, or `g711_alaw`. For
210
+ # `pcm16`, input audio must be 16-bit PCM at a 24kHz sample rate, single channel
211
+ # (mono), and little-endian byte order.
212
+ #
213
+ # @param input_audio_noise_reduction [OpenAI::Models::Realtime::RealtimeSession::InputAudioNoiseReduction]
214
+ # Configuration for input audio noise reduction. This can be set to `null` to turn
215
+ # off. Noise reduction filters audio added to the input audio buffer before it is
216
+ # sent to VAD and the model. Filtering the audio can improve VAD and turn
217
+ # detection accuracy (reducing false positives) and model performance by improving
218
+ # perception of the input audio.
219
+ #
220
+ # @param input_audio_transcription [OpenAI::Models::Realtime::AudioTranscription, nil]
221
+ # Configuration for input audio transcription, defaults to off and can be set to
222
+ # `null` to turn off once on. Input audio transcription is not native to the
223
+ # model, since the model consumes audio directly. Transcription runs
224
+ # asynchronously through
225
+ # [the /audio/transcriptions endpoint](https://developers.openai.com/api/reference/resources/audio/subresources/transcriptions/methods/create)
226
+ # and should be treated as guidance of input audio content rather than precisely
227
+ # what the model heard. The client can optionally set the language and prompt for
228
+ # transcription, these offer additional guidance to the transcription service.
229
+ #
230
+ # @param instructions [String]
231
+ # The default system instructions (i.e. system message) prepended to model calls.
232
+ # This field allows the client to guide the model on desired responses. The model
233
+ # can be instructed on response content and format, (e.g. "be extremely succinct",
234
+ # "act friendly", "here are examples of good responses") and on audio behavior
235
+ # (e.g. "talk quickly", "inject emotion into your voice", "laugh frequently"). The
236
+ # instructions are not guaranteed to be followed by the model, but they provide
237
+ # guidance to the model on the desired behavior.
238
+ #
239
+ # Note that the server sets default instructions which will be used if this field
240
+ # is not set and are visible in the `session.created` event at the start of the
241
+ # session.
242
+ #
243
+ # @param max_response_output_tokens [Integer, Symbol, :inf]
244
+ # Maximum number of output tokens for a single assistant response, inclusive of
245
+ # tool calls. Provide an integer between 1 and 4096 to limit output tokens, or
246
+ # `inf` for the maximum available tokens for a given model. Defaults to `inf`.
247
+ #
248
+ # @param modalities [Array<Symbol, OpenAI::Models::Realtime::RealtimeSession::Modality>]
249
+ # The set of modalities the model can respond with. To disable audio, set this to
250
+ # ["text"].
251
+ #
252
+ # @param model [String, Symbol, OpenAI::Models::Realtime::RealtimeSession::Model]
253
+ # The Realtime model used for this session.
254
+ #
255
+ # @param object [Symbol, OpenAI::Models::Realtime::RealtimeSession::Object]
256
+ # The object type. Always `realtime.session`.
257
+ #
258
+ # @param output_audio_format [Symbol, OpenAI::Models::Realtime::RealtimeSession::OutputAudioFormat]
259
+ # The format of output audio. Options are `pcm16`, `g711_ulaw`, or `g711_alaw`.
260
+ # For `pcm16`, output audio is sampled at a rate of 24kHz.
261
+ #
262
+ # @param prompt [OpenAI::Models::Responses::ResponsePrompt, nil]
263
+ # Reference to a prompt template and its variables.
264
+ # [Learn more](https://developers.openai.com/api/docs/guides/text?api-mode=responses#version-prompts-in-code).
265
+ #
266
+ # @param speed [Float]
267
+ # The speed of the model's spoken response. 1.0 is the default speed. 0.25 is the
268
+ # minimum speed. 1.5 is the maximum speed. This value can only be changed in
269
+ # between model turns, not while a response is in progress.
270
+ #
271
+ # @param temperature [Float]
272
+ # Sampling temperature for the model, limited to [0.6, 1.2]. For audio models a
273
+ # temperature of 0.8 is highly recommended for best performance.
274
+ #
275
+ # @param tool_choice [String]
276
+ # How the model chooses tools. Options are `auto`, `none`, `required`, or specify
277
+ # a function.
278
+ #
279
+ # @param tools [Array<OpenAI::Models::Realtime::RealtimeFunctionTool>]
280
+ # Tools (functions) available to the model.
281
+ #
282
+ # @param tracing [Symbol, :auto, OpenAI::Models::Realtime::RealtimeSession::Tracing::TracingConfiguration, nil]
283
+ # Configuration options for tracing. Set to null to disable tracing. Once tracing
284
+ # is enabled for a session, the configuration cannot be modified.
285
+ #
286
+ # `auto` will create a trace for the session with default values for the workflow
287
+ # name, group id, and metadata.
288
+ #
289
+ # @param turn_detection [OpenAI::Models::Realtime::RealtimeSession::TurnDetection::ServerVad, OpenAI::Models::Realtime::RealtimeSession::TurnDetection::SemanticVad, nil]
290
+ # Configuration for turn detection, ether Server VAD or Semantic VAD. This can be
291
+ # set to `null` to turn off, in which case the client must manually trigger model
292
+ # response.
293
+ #
294
+ # Server VAD means that the model will detect the start and end of speech based on
295
+ # audio volume and respond at the end of user speech.
296
+ #
297
+ # Semantic VAD is more advanced and uses a turn detection model (in conjunction
298
+ # with VAD) to semantically estimate whether the user has finished speaking, then
299
+ # dynamically sets a timeout based on this probability. For example, if user audio
300
+ # trails off with "uhhm", the model will score a low probability of turn end and
301
+ # wait longer for the user to continue speaking. This can be useful for more
302
+ # natural conversations, but may have a higher latency.
303
+ #
304
+ # For `gpt-realtime-whisper` transcription sessions, turn detection must be set to
305
+ # `null`; VAD is not supported.
306
+ #
307
+ # @param voice [String, Symbol, OpenAI::Models::Realtime::RealtimeSession::Voice]
308
+ # The voice the model uses to respond. Voice cannot be changed during the session
309
+ # once the model has responded with audio at least once. Current voice options are
310
+ # `alloy`, `ash`, `ballad`, `coral`, `echo`, `sage`, `shimmer`, and `verse`.
239
311
  module Include
240
312
  extend OpenAI::Internal::Type::Enum
241
313
 
@@ -272,17 +344,16 @@ module OpenAI
272
344
  optional :type, enum: -> { OpenAI::Realtime::NoiseReductionType }
273
345
 
274
346
  # @!method initialize(type: nil)
275
- # Some parameter documentations has been truncated, see
276
- # {OpenAI::Models::Realtime::RealtimeSession::InputAudioNoiseReduction} for more
277
- # details.
278
- #
279
347
  # Configuration for input audio noise reduction. This can be set to `null` to turn
280
348
  # off. Noise reduction filters audio added to the input audio buffer before it is
281
349
  # sent to VAD and the model. Filtering the audio can improve VAD and turn
282
350
  # detection accuracy (reducing false positives) and model performance by improving
283
351
  # perception of the input audio.
284
352
  #
285
- # @param type [Symbol, OpenAI::Models::Realtime::NoiseReductionType] Type of noise reduction. `near_field` is for close-talking microphones such as h
353
+ # @param type [Symbol, OpenAI::Models::Realtime::NoiseReductionType]
354
+ # Type of noise reduction. `near_field` is for close-talking microphones such as
355
+ # headphones, `far_field` is for far-field microphones such as laptop or
356
+ # conference room microphones.
286
357
  end
287
358
 
288
359
  # Maximum number of output tokens for a single assistant response, inclusive of
@@ -448,17 +519,19 @@ module OpenAI
448
519
  optional :workflow_name, String
449
520
 
450
521
  # @!method initialize(group_id: nil, metadata: nil, workflow_name: nil)
451
- # Some parameter documentations has been truncated, see
452
- # {OpenAI::Models::Realtime::RealtimeSession::Tracing::TracingConfiguration} for
453
- # more details.
454
- #
455
522
  # Granular configuration for tracing.
456
523
  #
457
- # @param group_id [String] The group id to attach to this trace to enable filtering and
524
+ # @param group_id [String]
525
+ # The group id to attach to this trace to enable filtering and grouping in the
526
+ # traces dashboard.
458
527
  #
459
- # @param metadata [Object] The arbitrary metadata to attach to this trace to enable
528
+ # @param metadata [Object]
529
+ # The arbitrary metadata to attach to this trace to enable filtering in the traces
530
+ # dashboard.
460
531
  #
461
- # @param workflow_name [String] The name of the workflow to attach to this trace. This is used to
532
+ # @param workflow_name [String]
533
+ # The name of the workflow to attach to this trace. This is used to name the trace
534
+ # in the traces dashboard.
462
535
  end
463
536
 
464
537
  # @!method self.variants
@@ -565,26 +638,56 @@ module OpenAI
565
638
  optional :threshold, Float
566
639
 
567
640
  # @!method initialize(create_response: nil, idle_timeout_ms: nil, interrupt_response: nil, prefix_padding_ms: nil, silence_duration_ms: nil, threshold: nil, type: :server_vad)
568
- # Some parameter documentations has been truncated, see
569
- # {OpenAI::Models::Realtime::RealtimeSession::TurnDetection::ServerVad} for more
570
- # details.
571
- #
572
641
  # Server-side voice activity detection (VAD) which flips on when user speech is
573
642
  # detected and off after a period of silence.
574
643
  #
575
- # @param create_response [Boolean] Whether or not to automatically generate a response when a VAD stop event occurs
576
- #
577
- # @param idle_timeout_ms [Integer, nil] Optional timeout after which a model response will be triggered automatically. T
578
- #
579
- # @param interrupt_response [Boolean] Whether or not to automatically interrupt (cancel) any ongoing response with out
580
- #
581
- # @param prefix_padding_ms [Integer] Used only for `server_vad` mode. Amount of audio to include before the VAD detec
582
- #
583
- # @param silence_duration_ms [Integer] Used only for `server_vad` mode. Duration of silence to detect speech stop (in m
584
- #
585
- # @param threshold [Float] Used only for `server_vad` mode. Activation threshold for VAD (0.0 to 1.0), this
586
- #
587
- # @param type [Symbol, :server_vad] Type of turn detection, `server_vad` to turn on simple Server VAD.
644
+ # @param create_response [Boolean]
645
+ # Whether or not to automatically generate a response when a VAD stop event
646
+ # occurs. If `interrupt_response` is set to `false` this may fail to create a
647
+ # response if the model is already responding.
648
+ #
649
+ # If both `create_response` and `interrupt_response` are set to `false`, the model
650
+ # will never respond automatically but VAD events will still be emitted.
651
+ #
652
+ # @param idle_timeout_ms [Integer, nil]
653
+ # Optional timeout after which a model response will be triggered automatically.
654
+ # This is useful for situations in which a long pause from the user is unexpected,
655
+ # such as a phone call. The model will effectively prompt the user to continue the
656
+ # conversation based on the current context.
657
+ #
658
+ # The timeout value will be applied after the last model response's audio has
659
+ # finished playing, i.e. it's set to the `response.done` time plus audio playback
660
+ # duration.
661
+ #
662
+ # An `input_audio_buffer.timeout_triggered` event (plus events associated with the
663
+ # Response) will be emitted when the timeout is reached. Idle timeout is currently
664
+ # only supported for `server_vad` mode.
665
+ #
666
+ # @param interrupt_response [Boolean]
667
+ # Whether or not to automatically interrupt (cancel) any ongoing response with
668
+ # output to the default conversation (i.e. `conversation` of `auto`) when a VAD
669
+ # start event occurs. If `true` then the response will be cancelled, otherwise it
670
+ # will continue until complete.
671
+ #
672
+ # If both `create_response` and `interrupt_response` are set to `false`, the model
673
+ # will never respond automatically but VAD events will still be emitted.
674
+ #
675
+ # @param prefix_padding_ms [Integer]
676
+ # Used only for `server_vad` mode. Amount of audio to include before the VAD
677
+ # detected speech (in milliseconds). Defaults to 300ms.
678
+ #
679
+ # @param silence_duration_ms [Integer]
680
+ # Used only for `server_vad` mode. Duration of silence to detect speech stop (in
681
+ # milliseconds). Defaults to 500ms. With shorter values the model will respond
682
+ # more quickly, but may jump in on short pauses from the user.
683
+ #
684
+ # @param threshold [Float]
685
+ # Used only for `server_vad` mode. Activation threshold for VAD (0.0 to 1.0), this
686
+ # defaults to 0.5. A higher threshold will require louder audio to activate the
687
+ # model, and thus might perform better in noisy environments.
688
+ #
689
+ # @param type [Symbol, :server_vad]
690
+ # Type of turn detection, `server_vad` to turn on simple Server VAD.
588
691
  end
589
692
 
590
693
  class SemanticVad < OpenAI::Internal::Type::BaseModel
@@ -619,20 +722,26 @@ module OpenAI
619
722
  optional :interrupt_response, OpenAI::Internal::Type::Boolean
620
723
 
621
724
  # @!method initialize(create_response: nil, eagerness: nil, interrupt_response: nil, type: :semantic_vad)
622
- # Some parameter documentations has been truncated, see
623
- # {OpenAI::Models::Realtime::RealtimeSession::TurnDetection::SemanticVad} for more
624
- # details.
625
- #
626
725
  # Server-side semantic turn detection which uses a model to determine when the
627
726
  # user has finished speaking.
628
727
  #
629
- # @param create_response [Boolean] Whether or not to automatically generate a response when a VAD stop event occurs
728
+ # @param create_response [Boolean]
729
+ # Whether or not to automatically generate a response when a VAD stop event
730
+ # occurs.
630
731
  #
631
- # @param eagerness [Symbol, OpenAI::Models::Realtime::RealtimeSession::TurnDetection::SemanticVad::Eagerness] Used only for `semantic_vad` mode. The eagerness of the model to respond. `low`
732
+ # @param eagerness [Symbol, OpenAI::Models::Realtime::RealtimeSession::TurnDetection::SemanticVad::Eagerness]
733
+ # Used only for `semantic_vad` mode. The eagerness of the model to respond. `low`
734
+ # will wait longer for the user to continue speaking, `high` will respond more
735
+ # quickly. `auto` is the default and is equivalent to `medium`. `low`, `medium`,
736
+ # and `high` have max timeouts of 8s, 4s, and 2s respectively.
632
737
  #
633
- # @param interrupt_response [Boolean] Whether or not to automatically interrupt any ongoing response with output to th
738
+ # @param interrupt_response [Boolean]
739
+ # Whether or not to automatically interrupt any ongoing response with output to
740
+ # the default conversation (i.e. `conversation` of `auto`) when a VAD start event
741
+ # occurs.
634
742
  #
635
- # @param type [Symbol, :semantic_vad] Type of turn detection, `semantic_vad` to turn on Semantic VAD.
743
+ # @param type [Symbol, :semantic_vad]
744
+ # Type of turn detection, `semantic_vad` to turn on Semantic VAD.
636
745
 
637
746
  # Used only for `semantic_vad` mode. The eagerness of the model to respond. `low`
638
747
  # will wait longer for the user to continue speaking, `high` will respond more
@@ -79,7 +79,7 @@ module OpenAI
79
79
 
80
80
  # @!attribute prompt
81
81
  # Reference to a prompt template and its variables.
82
- # [Learn more](https://platform.openai.com/docs/guides/text?api-mode=responses#reusable-prompts).
82
+ # [Learn more](https://developers.openai.com/api/docs/guides/text?api-mode=responses#version-prompts-in-code).
83
83
  #
84
84
  # @return [OpenAI::Models::Responses::ResponsePrompt, nil]
85
85
  optional :prompt, -> { OpenAI::Responses::ResponsePrompt }, nil?: true
@@ -139,39 +139,93 @@ module OpenAI
139
139
  optional :truncation, union: -> { OpenAI::Realtime::RealtimeTruncation }
140
140
 
141
141
  # @!method initialize(audio: nil, include: nil, instructions: nil, max_output_tokens: nil, model: nil, output_modalities: nil, parallel_tool_calls: nil, prompt: nil, reasoning: nil, tool_choice: nil, tools: nil, tracing: nil, truncation: nil, type: :realtime)
142
- # Some parameter documentations has been truncated, see
143
- # {OpenAI::Models::Realtime::RealtimeSessionCreateRequest} for more details.
144
- #
145
142
  # Realtime session object configuration.
146
143
  #
147
- # @param audio [OpenAI::Models::Realtime::RealtimeAudioConfig] Configuration for input and output audio.
148
- #
149
- # @param include [Array<Symbol, OpenAI::Models::Realtime::RealtimeSessionCreateRequest::Include>] Additional fields to include in server outputs.
150
- #
151
- # @param instructions [String] The default system instructions (i.e. system message) prepended to model calls.
152
- #
153
- # @param max_output_tokens [Integer, Symbol, :inf] Maximum number of output tokens for a single assistant response,
154
- #
155
- # @param model [String, Symbol, OpenAI::Models::Realtime::RealtimeSessionCreateRequest::Model] The Realtime model used for this session.
156
- #
157
- # @param output_modalities [Array<Symbol, OpenAI::Models::Realtime::RealtimeSessionCreateRequest::OutputModality>] The set of modalities the model can respond with. It defaults to `["audio"]`, in
158
- #
159
- # @param parallel_tool_calls [Boolean] Whether the model may call multiple tools in parallel. Only supported by
160
- #
161
- # @param prompt [OpenAI::Models::Responses::ResponsePrompt, nil] Reference to a prompt template and its variables.
162
- #
163
- # @param reasoning [OpenAI::Models::Realtime::RealtimeReasoning] Configuration for reasoning-capable Realtime models such as `gpt-realtime-2`.
164
- #
165
- # @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
166
- #
167
- # @param tools [Array<OpenAI::Models::Realtime::RealtimeFunctionTool, OpenAI::Models::Realtime::RealtimeToolsConfigUnion::Mcp>] Tools available to the model.
168
- #
169
- # @param tracing [Symbol, :auto, OpenAI::Models::Realtime::RealtimeTracingConfig::TracingConfiguration, nil] Realtime API can write session traces to the [Traces Dashboard](https://platform
170
- #
171
- # @param truncation [Symbol, OpenAI::Models::Realtime::RealtimeTruncation::RealtimeTruncationStrategy, OpenAI::Models::Realtime::RealtimeTruncationRetentionRatio] When the number of tokens in a conversation exceeds the model's input token limi
172
- #
173
- # @param type [Symbol, :realtime] The type of session to create. Always `realtime` for the Realtime API.
174
-
144
+ # @param audio [OpenAI::Models::Realtime::RealtimeAudioConfig]
145
+ # Configuration for input and output audio.
146
+ #
147
+ # @param include [Array<Symbol, OpenAI::Models::Realtime::RealtimeSessionCreateRequest::Include>]
148
+ # Additional fields to include in server outputs.
149
+ #
150
+ # `item.input_audio_transcription.logprobs`: Include logprobs for input audio
151
+ # transcription.
152
+ #
153
+ # @param instructions [String]
154
+ # The default system instructions (i.e. system message) prepended to model calls.
155
+ # This field allows the client to guide the model on desired responses. The model
156
+ # can be instructed on response content and format, (e.g. "be extremely succinct",
157
+ # "act friendly", "here are examples of good responses") and on audio behavior
158
+ # (e.g. "talk quickly", "inject emotion into your voice", "laugh frequently"). The
159
+ # instructions are not guaranteed to be followed by the model, but they provide
160
+ # guidance to the model on the desired behavior.
161
+ #
162
+ # Note that the server sets default instructions which will be used if this field
163
+ # is not set and are visible in the `session.created` event at the start of the
164
+ # session.
165
+ #
166
+ # @param max_output_tokens [Integer, Symbol, :inf]
167
+ # Maximum number of output tokens for a single assistant response, inclusive of
168
+ # tool calls. Provide an integer between 1 and 4096 to limit output tokens, or
169
+ # `inf` for the maximum available tokens for a given model. Defaults to `inf`.
170
+ #
171
+ # @param model [String, Symbol, OpenAI::Models::Realtime::RealtimeSessionCreateRequest::Model]
172
+ # The Realtime model used for this session.
173
+ #
174
+ # @param output_modalities [Array<Symbol, OpenAI::Models::Realtime::RealtimeSessionCreateRequest::OutputModality>]
175
+ # The set of modalities the model can respond with. It defaults to `["audio"]`,
176
+ # indicating that the model will respond with audio plus a transcript. `["text"]`
177
+ # can be used to make the model respond with text only. It is not possible to
178
+ # request both `text` and `audio` at the same time.
179
+ #
180
+ # @param parallel_tool_calls [Boolean]
181
+ # Whether the model may call multiple tools in parallel. Only supported by
182
+ # reasoning Realtime models such as `gpt-realtime-2`.
183
+ #
184
+ # @param prompt [OpenAI::Models::Responses::ResponsePrompt, nil]
185
+ # Reference to a prompt template and its variables.
186
+ # [Learn more](https://developers.openai.com/api/docs/guides/text?api-mode=responses#version-prompts-in-code).
187
+ #
188
+ # @param reasoning [OpenAI::Models::Realtime::RealtimeReasoning]
189
+ # Configuration for reasoning-capable Realtime models such as `gpt-realtime-2`.
190
+ #
191
+ # @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp]
192
+ # How the model chooses tools. Provide one of the string modes or force a specific
193
+ # function/MCP tool.
194
+ #
195
+ # @param tools [Array<OpenAI::Models::Realtime::RealtimeFunctionTool, OpenAI::Models::Realtime::RealtimeToolsConfigUnion::Mcp>]
196
+ # Tools available to the model.
197
+ #
198
+ # @param tracing [Symbol, :auto, OpenAI::Models::Realtime::RealtimeTracingConfig::TracingConfiguration, nil]
199
+ # Realtime API can write session traces to the
200
+ # [Traces Dashboard](https://platform.openai.com/logs?api=traces). Set to null to
201
+ # disable tracing. Once tracing is enabled for a session, the configuration cannot
202
+ # be modified.
203
+ #
204
+ # `auto` will create a trace for the session with default values for the workflow
205
+ # name, group id, and metadata.
206
+ #
207
+ # @param truncation [Symbol, OpenAI::Models::Realtime::RealtimeTruncation::RealtimeTruncationStrategy, OpenAI::Models::Realtime::RealtimeTruncationRetentionRatio]
208
+ # When the number of tokens in a conversation exceeds the model's input token
209
+ # limit, the conversation be truncated, meaning messages (starting from the
210
+ # oldest) will not be included in the model's context. A 32k context model with
211
+ # 4,096 max output tokens can only include 28,224 tokens in the context before
212
+ # truncation occurs.
213
+ #
214
+ # Clients can configure truncation behavior to truncate with a lower max token
215
+ # limit, which is an effective way to control token usage and cost.
216
+ #
217
+ # Truncation will reduce the number of cached tokens on the next turn (busting the
218
+ # cache), since messages are dropped from the beginning of the context. However,
219
+ # clients can also configure truncation to retain messages up to a fraction of the
220
+ # maximum context size, which will reduce the need for future truncations and thus
221
+ # improve the cache rate.
222
+ #
223
+ # Truncation can be disabled entirely, which means the server will never truncate
224
+ # but would instead return an error if the conversation exceeds the model's input
225
+ # token limit.
226
+ #
227
+ # @param type [Symbol, :realtime]
228
+ # The type of session to create. Always `realtime` for the Realtime API.
175
229
  module Include
176
230
  extend OpenAI::Internal::Type::Enum
177
231