openai 0.87.0 → 0.89.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 (1418) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +19 -0
  3. data/README.md +1 -1
  4. data/lib/openai/client.rb +4 -0
  5. data/lib/openai/models/admin/organization/admin_api_key.rb +26 -13
  6. data/lib/openai/models/admin/organization/admin_api_key_create_params.rb +3 -4
  7. data/lib/openai/models/admin/organization/admin_api_key_create_response.rb +16 -8
  8. data/lib/openai/models/admin/organization/admin_api_key_delete_params.rb +2 -1
  9. data/lib/openai/models/admin/organization/admin_api_key_list_params.rb +6 -3
  10. data/lib/openai/models/admin/organization/admin_api_key_retrieve_params.rb +2 -1
  11. data/lib/openai/models/admin/organization/audit_log_list_params.rb +47 -22
  12. data/lib/openai/models/admin/organization/audit_log_list_response.rb +486 -254
  13. data/lib/openai/models/admin/organization/certificate.rb +24 -11
  14. data/lib/openai/models/admin/organization/certificate_activate_response.rb +14 -7
  15. data/lib/openai/models/admin/organization/certificate_create_params.rb +4 -2
  16. data/lib/openai/models/admin/organization/certificate_deactivate_response.rb +14 -7
  17. data/lib/openai/models/admin/organization/certificate_delete_response.rb +4 -2
  18. data/lib/openai/models/admin/organization/certificate_list_params.rb +11 -6
  19. data/lib/openai/models/admin/organization/certificate_list_response.rb +14 -7
  20. data/lib/openai/models/admin/organization/certificate_retrieve_params.rb +3 -5
  21. data/lib/openai/models/admin/organization/certificate_update_params.rb +2 -1
  22. data/lib/openai/models/admin/organization/data_retention_update_params.rb +2 -1
  23. data/lib/openai/models/admin/organization/group.rb +11 -8
  24. data/lib/openai/models/admin/organization/group_create_params.rb +2 -1
  25. data/lib/openai/models/admin/organization/group_delete_response.rb +6 -3
  26. data/lib/openai/models/admin/organization/group_list_params.rb +10 -6
  27. data/lib/openai/models/admin/organization/group_update_params.rb +2 -1
  28. data/lib/openai/models/admin/organization/group_update_response.rb +9 -7
  29. data/lib/openai/models/admin/organization/groups/organization_group_user.rb +6 -3
  30. data/lib/openai/models/admin/organization/groups/role_create_params.rb +2 -1
  31. data/lib/openai/models/admin/organization/groups/role_create_response.rb +16 -8
  32. data/lib/openai/models/admin/organization/groups/role_delete_response.rb +5 -6
  33. data/lib/openai/models/admin/organization/groups/role_list_params.rb +7 -6
  34. data/lib/openai/models/admin/organization/groups/role_list_response.rb +24 -13
  35. data/lib/openai/models/admin/organization/groups/role_retrieve_response.rb +24 -13
  36. data/lib/openai/models/admin/organization/groups/user_create_params.rb +2 -1
  37. data/lib/openai/models/admin/organization/groups/user_create_response.rb +6 -3
  38. data/lib/openai/models/admin/organization/groups/user_delete_response.rb +4 -2
  39. data/lib/openai/models/admin/organization/groups/user_list_params.rb +8 -6
  40. data/lib/openai/models/admin/organization/groups/user_retrieve_response.rb +12 -6
  41. data/lib/openai/models/admin/organization/invite.rb +22 -12
  42. data/lib/openai/models/admin/organization/invite_create_params.rb +13 -8
  43. data/lib/openai/models/admin/organization/invite_delete_response.rb +2 -1
  44. data/lib/openai/models/admin/organization/invite_list_params.rb +8 -5
  45. data/lib/openai/models/admin/organization/organization_data_retention.rb +4 -2
  46. data/lib/openai/models/admin/organization/organization_spend_alert.rb +18 -9
  47. data/lib/openai/models/admin/organization/organization_spend_alert_deleted.rb +6 -3
  48. data/lib/openai/models/admin/organization/organization_spend_limit.rb +13 -9
  49. data/lib/openai/models/admin/organization/organization_spend_limit_deleted.rb +4 -2
  50. data/lib/openai/models/admin/organization/organization_user.rb +32 -16
  51. data/lib/openai/models/admin/organization/project.rb +16 -8
  52. data/lib/openai/models/admin/organization/project_create_params.rb +18 -9
  53. data/lib/openai/models/admin/organization/project_list_params.rb +11 -6
  54. data/lib/openai/models/admin/organization/project_update_params.rb +7 -6
  55. data/lib/openai/models/admin/organization/projects/api_key_list_params.rb +14 -7
  56. data/lib/openai/models/admin/organization/projects/certificate_activate_response.rb +14 -7
  57. data/lib/openai/models/admin/organization/projects/certificate_deactivate_response.rb +14 -7
  58. data/lib/openai/models/admin/organization/projects/certificate_list_params.rb +11 -7
  59. data/lib/openai/models/admin/organization/projects/certificate_list_response.rb +14 -7
  60. data/lib/openai/models/admin/organization/projects/data_retention_update_params.rb +2 -1
  61. data/lib/openai/models/admin/organization/projects/group_create_params.rb +4 -2
  62. data/lib/openai/models/admin/organization/projects/group_delete_response.rb +4 -2
  63. data/lib/openai/models/admin/organization/projects/group_list_params.rb +7 -7
  64. data/lib/openai/models/admin/organization/projects/group_retrieve_params.rb +2 -1
  65. data/lib/openai/models/admin/organization/projects/groups/role_create_params.rb +2 -1
  66. data/lib/openai/models/admin/organization/projects/groups/role_create_response.rb +16 -8
  67. data/lib/openai/models/admin/organization/projects/groups/role_delete_response.rb +5 -6
  68. data/lib/openai/models/admin/organization/projects/groups/role_list_params.rb +7 -7
  69. data/lib/openai/models/admin/organization/projects/groups/role_list_response.rb +24 -13
  70. data/lib/openai/models/admin/organization/projects/groups/role_retrieve_response.rb +24 -13
  71. data/lib/openai/models/admin/organization/projects/hosted_tool_permission_update_params.rb +20 -10
  72. data/lib/openai/models/admin/organization/projects/model_permission_update_params.rb +4 -2
  73. data/lib/openai/models/admin/organization/projects/project_api_key.rb +50 -20
  74. data/lib/openai/models/admin/organization/projects/project_data_retention.rb +4 -2
  75. data/lib/openai/models/admin/organization/projects/project_group.rb +12 -6
  76. data/lib/openai/models/admin/organization/projects/project_hosted_tool_permissions.rb +20 -10
  77. data/lib/openai/models/admin/organization/projects/project_model_permissions.rb +6 -3
  78. data/lib/openai/models/admin/organization/projects/project_model_permissions_deleted.rb +4 -2
  79. data/lib/openai/models/admin/organization/projects/project_rate_limit.rb +18 -9
  80. data/lib/openai/models/admin/organization/projects/project_service_account.rb +10 -5
  81. data/lib/openai/models/admin/organization/projects/project_spend_alert.rb +18 -9
  82. data/lib/openai/models/admin/organization/projects/project_spend_alert_deleted.rb +6 -3
  83. data/lib/openai/models/admin/organization/projects/project_spend_limit.rb +13 -10
  84. data/lib/openai/models/admin/organization/projects/project_spend_limit_deleted.rb +4 -2
  85. data/lib/openai/models/admin/organization/projects/project_user.rb +12 -6
  86. data/lib/openai/models/admin/organization/projects/rate_limit_list_rate_limits_params.rb +12 -7
  87. data/lib/openai/models/admin/organization/projects/rate_limit_update_rate_limit_params.rb +12 -6
  88. data/lib/openai/models/admin/organization/projects/role_create_params.rb +6 -3
  89. data/lib/openai/models/admin/organization/projects/role_delete_response.rb +6 -3
  90. data/lib/openai/models/admin/organization/projects/role_list_params.rb +7 -7
  91. data/lib/openai/models/admin/organization/projects/role_update_params.rb +6 -3
  92. data/lib/openai/models/admin/organization/projects/service_account_create_params.rb +22 -3
  93. data/lib/openai/models/admin/organization/projects/service_account_create_response.rb +17 -7
  94. data/lib/openai/models/admin/organization/projects/service_account_list_params.rb +8 -6
  95. data/lib/openai/models/admin/organization/projects/service_account_update_params.rb +4 -2
  96. data/lib/openai/models/admin/organization/projects/service_accounts/api_key_create_params.rb +10 -5
  97. data/lib/openai/models/admin/organization/projects/service_accounts/api_key_create_response.rb +13 -10
  98. data/lib/openai/models/admin/organization/projects/spend_alert_create_params.rb +14 -7
  99. data/lib/openai/models/admin/organization/projects/spend_alert_list_params.rb +10 -8
  100. data/lib/openai/models/admin/organization/projects/spend_alert_update_params.rb +14 -7
  101. data/lib/openai/models/admin/organization/projects/spend_limit_update_params.rb +7 -7
  102. data/lib/openai/models/admin/organization/projects/user_create_params.rb +6 -3
  103. data/lib/openai/models/admin/organization/projects/user_list_params.rb +8 -6
  104. data/lib/openai/models/admin/organization/projects/user_update_params.rb +2 -1
  105. data/lib/openai/models/admin/organization/projects/users/role_create_params.rb +2 -1
  106. data/lib/openai/models/admin/organization/projects/users/role_create_response.rb +6 -3
  107. data/lib/openai/models/admin/organization/projects/users/role_delete_response.rb +5 -6
  108. data/lib/openai/models/admin/organization/projects/users/role_list_params.rb +7 -7
  109. data/lib/openai/models/admin/organization/projects/users/role_list_response.rb +24 -13
  110. data/lib/openai/models/admin/organization/projects/users/role_retrieve_response.rb +24 -13
  111. data/lib/openai/models/admin/organization/role.rb +15 -10
  112. data/lib/openai/models/admin/organization/role_create_params.rb +6 -3
  113. data/lib/openai/models/admin/organization/role_delete_response.rb +6 -3
  114. data/lib/openai/models/admin/organization/role_list_params.rb +7 -6
  115. data/lib/openai/models/admin/organization/role_update_params.rb +6 -3
  116. data/lib/openai/models/admin/organization/spend_alert_create_params.rb +14 -7
  117. data/lib/openai/models/admin/organization/spend_alert_list_params.rb +10 -7
  118. data/lib/openai/models/admin/organization/spend_alert_update_params.rb +14 -7
  119. data/lib/openai/models/admin/organization/spend_limit_update_params.rb +7 -6
  120. data/lib/openai/models/admin/organization/usage_audio_speeches_params.rb +26 -13
  121. data/lib/openai/models/admin/organization/usage_audio_speeches_response.rb +205 -121
  122. data/lib/openai/models/admin/organization/usage_audio_transcriptions_params.rb +26 -13
  123. data/lib/openai/models/admin/organization/usage_audio_transcriptions_response.rb +205 -121
  124. data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_params.rb +20 -10
  125. data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_response.rb +205 -121
  126. data/lib/openai/models/admin/organization/usage_completions_params.rb +30 -13
  127. data/lib/openai/models/admin/organization/usage_completions_response.rb +205 -121
  128. data/lib/openai/models/admin/organization/usage_costs_params.rb +23 -12
  129. data/lib/openai/models/admin/organization/usage_costs_response.rb +205 -121
  130. data/lib/openai/models/admin/organization/usage_embeddings_params.rb +26 -12
  131. data/lib/openai/models/admin/organization/usage_embeddings_response.rb +205 -121
  132. data/lib/openai/models/admin/organization/usage_file_search_calls_params.rb +27 -13
  133. data/lib/openai/models/admin/organization/usage_file_search_calls_response.rb +205 -121
  134. data/lib/openai/models/admin/organization/usage_images_params.rb +33 -14
  135. data/lib/openai/models/admin/organization/usage_images_response.rb +205 -121
  136. data/lib/openai/models/admin/organization/usage_moderations_params.rb +26 -12
  137. data/lib/openai/models/admin/organization/usage_moderations_response.rb +205 -121
  138. data/lib/openai/models/admin/organization/usage_vector_stores_params.rb +20 -9
  139. data/lib/openai/models/admin/organization/usage_vector_stores_response.rb +205 -121
  140. data/lib/openai/models/admin/organization/usage_web_search_calls_params.rb +29 -14
  141. data/lib/openai/models/admin/organization/usage_web_search_calls_response.rb +205 -121
  142. data/lib/openai/models/admin/organization/user_list_params.rb +10 -6
  143. data/lib/openai/models/admin/organization/user_update_params.rb +8 -4
  144. data/lib/openai/models/admin/organization/users/role_create_params.rb +2 -1
  145. data/lib/openai/models/admin/organization/users/role_create_response.rb +6 -3
  146. data/lib/openai/models/admin/organization/users/role_delete_response.rb +5 -6
  147. data/lib/openai/models/admin/organization/users/role_list_params.rb +7 -6
  148. data/lib/openai/models/admin/organization/users/role_list_response.rb +24 -13
  149. data/lib/openai/models/admin/organization/users/role_retrieve_response.rb +24 -13
  150. data/lib/openai/models/audio/speech_create_params.rb +34 -16
  151. data/lib/openai/models/audio/transcription.rb +35 -20
  152. data/lib/openai/models/audio/transcription_create_params.rb +86 -24
  153. data/lib/openai/models/audio/transcription_diarized.rb +28 -14
  154. data/lib/openai/models/audio/transcription_diarized_segment.rb +14 -9
  155. data/lib/openai/models/audio/transcription_language.rb +2 -1
  156. data/lib/openai/models/audio/transcription_segment.rb +23 -13
  157. data/lib/openai/models/audio/transcription_stream_event.rb +4 -4
  158. data/lib/openai/models/audio/transcription_text_delta_event.rb +19 -16
  159. data/lib/openai/models/audio/transcription_text_done_event.rb +36 -24
  160. data/lib/openai/models/audio/transcription_text_segment_event.rb +13 -7
  161. data/lib/openai/models/audio/transcription_verbose.rb +16 -8
  162. data/lib/openai/models/audio/transcription_word.rb +6 -3
  163. data/lib/openai/models/audio/translation_create_params.rb +26 -8
  164. data/lib/openai/models/audio/translation_verbose.rb +8 -4
  165. data/lib/openai/models/auto_file_chunking_strategy_param.rb +2 -1
  166. data/lib/openai/models/batch.rb +55 -26
  167. data/lib/openai/models/batch_create_params.rb +40 -14
  168. data/lib/openai/models/batch_error.rb +8 -4
  169. data/lib/openai/models/batch_list_params.rb +8 -5
  170. data/lib/openai/models/batch_request_counts.rb +6 -3
  171. data/lib/openai/models/batch_usage.rb +16 -11
  172. data/lib/openai/models/beta/assistant.rb +99 -49
  173. data/lib/openai/models/beta/assistant_create_params.rb +127 -61
  174. data/lib/openai/models/beta/assistant_list_params.rb +16 -7
  175. data/lib/openai/models/beta/assistant_response_format_option.rb +5 -5
  176. data/lib/openai/models/beta/assistant_stream_event.rb +137 -185
  177. data/lib/openai/models/beta/assistant_tool_choice.rb +2 -1
  178. data/lib/openai/models/beta/assistant_tool_choice_function.rb +2 -1
  179. data/lib/openai/models/beta/assistant_update_params.rb +94 -41
  180. data/lib/openai/models/beta/beta_apply_patch_tool.rb +4 -3
  181. data/lib/openai/models/beta/beta_compacted_response.rb +12 -8
  182. data/lib/openai/models/beta/beta_computer_action.rb +78 -58
  183. data/lib/openai/models/beta/beta_computer_tool.rb +3 -2
  184. data/lib/openai/models/beta/beta_computer_use_preview_tool.rb +9 -5
  185. data/lib/openai/models/beta/beta_container_auto.rb +10 -5
  186. data/lib/openai/models/beta/beta_container_network_policy_allowlist.rb +6 -3
  187. data/lib/openai/models/beta/beta_container_network_policy_disabled.rb +2 -1
  188. data/lib/openai/models/beta/beta_container_network_policy_domain_secret.rb +6 -3
  189. data/lib/openai/models/beta/beta_container_reference.rb +4 -2
  190. data/lib/openai/models/beta/beta_custom_tool.rb +24 -16
  191. data/lib/openai/models/beta/beta_easy_input_message.rb +13 -7
  192. data/lib/openai/models/beta/beta_file_search_tool.rb +64 -37
  193. data/lib/openai/models/beta/beta_function_shell_tool.rb +4 -3
  194. data/lib/openai/models/beta/beta_function_tool.rb +19 -13
  195. data/lib/openai/models/beta/beta_inline_skill.rb +8 -4
  196. data/lib/openai/models/beta/beta_inline_skill_source.rb +6 -3
  197. data/lib/openai/models/beta/beta_local_environment.rb +4 -2
  198. data/lib/openai/models/beta/beta_local_skill.rb +6 -3
  199. data/lib/openai/models/beta/beta_namespace_tool.rb +23 -13
  200. data/lib/openai/models/beta/beta_response.rb +372 -165
  201. data/lib/openai/models/beta/beta_response_apply_patch_tool_call.rb +38 -21
  202. data/lib/openai/models/beta/beta_response_apply_patch_tool_call_output.rb +21 -13
  203. data/lib/openai/models/beta/beta_response_audio_delta_event.rb +10 -8
  204. data/lib/openai/models/beta/beta_response_audio_done_event.rb +8 -7
  205. data/lib/openai/models/beta/beta_response_audio_transcript_delta_event.rb +10 -8
  206. data/lib/openai/models/beta/beta_response_audio_transcript_done_event.rb +8 -7
  207. data/lib/openai/models/beta/beta_response_code_interpreter_call_code_delta_event.rb +15 -11
  208. data/lib/openai/models/beta/beta_response_code_interpreter_call_code_done_event.rb +14 -7
  209. data/lib/openai/models/beta/beta_response_code_interpreter_call_completed_event.rb +13 -10
  210. data/lib/openai/models/beta/beta_response_code_interpreter_call_in_progress_event.rb +13 -10
  211. data/lib/openai/models/beta/beta_response_code_interpreter_call_interpreting_event.rb +13 -10
  212. data/lib/openai/models/beta/beta_response_code_interpreter_tool_call.rb +26 -15
  213. data/lib/openai/models/beta/beta_response_compaction_item.rb +13 -7
  214. data/lib/openai/models/beta/beta_response_compaction_item_param.rb +11 -6
  215. data/lib/openai/models/beta/beta_response_completed_event.rb +10 -8
  216. data/lib/openai/models/beta/beta_response_computer_tool_call.rb +27 -17
  217. data/lib/openai/models/beta/beta_response_computer_tool_call_output_item.rb +26 -15
  218. data/lib/openai/models/beta/beta_response_computer_tool_call_output_screenshot.rb +7 -7
  219. data/lib/openai/models/beta/beta_response_configuration_update_item.rb +13 -10
  220. data/lib/openai/models/beta/beta_response_configuration_update_item_param.rb +13 -10
  221. data/lib/openai/models/beta/beta_response_container_reference.rb +2 -1
  222. data/lib/openai/models/beta/beta_response_content.rb +5 -3
  223. data/lib/openai/models/beta/beta_response_content_part_added_event.rb +20 -13
  224. data/lib/openai/models/beta/beta_response_content_part_done_event.rb +20 -13
  225. data/lib/openai/models/beta/beta_response_conversation_param.rb +2 -1
  226. data/lib/openai/models/beta/beta_response_created_event.rb +10 -8
  227. data/lib/openai/models/beta/beta_response_custom_tool_call.rb +22 -14
  228. data/lib/openai/models/beta/beta_response_custom_tool_call_input_delta_event.rb +14 -7
  229. data/lib/openai/models/beta/beta_response_custom_tool_call_input_done_event.rb +14 -7
  230. data/lib/openai/models/beta/beta_response_custom_tool_call_item.rb +23 -14
  231. data/lib/openai/models/beta/beta_response_custom_tool_call_output.rb +22 -14
  232. data/lib/openai/models/beta/beta_response_custom_tool_call_output_item.rb +18 -11
  233. data/lib/openai/models/beta/beta_response_error.rb +12 -9
  234. data/lib/openai/models/beta/beta_response_error_event.rb +14 -10
  235. data/lib/openai/models/beta/beta_response_failed_event.rb +10 -8
  236. data/lib/openai/models/beta/beta_response_file_search_call_completed_event.rb +12 -10
  237. data/lib/openai/models/beta/beta_response_file_search_call_in_progress_event.rb +12 -10
  238. data/lib/openai/models/beta/beta_response_file_search_call_searching_event.rb +12 -10
  239. data/lib/openai/models/beta/beta_response_file_search_tool_call.rb +30 -20
  240. data/lib/openai/models/beta/beta_response_format_text_config.rb +6 -4
  241. data/lib/openai/models/beta/beta_response_format_text_json_schema_config.rb +19 -10
  242. data/lib/openai/models/beta/beta_response_function_call_arguments_delta_event.rb +14 -11
  243. data/lib/openai/models/beta/beta_response_function_call_arguments_done_event.rb +12 -6
  244. data/lib/openai/models/beta/beta_response_function_call_output_item.rb +1 -1
  245. data/lib/openai/models/beta/beta_response_function_shell_call_output_content.rb +12 -6
  246. data/lib/openai/models/beta/beta_response_function_shell_tool_call.rb +28 -16
  247. data/lib/openai/models/beta/beta_response_function_shell_tool_call_output.rb +40 -27
  248. data/lib/openai/models/beta/beta_response_function_tool_call.rb +26 -16
  249. data/lib/openai/models/beta/beta_response_function_tool_call_item.rb +24 -15
  250. data/lib/openai/models/beta/beta_response_function_tool_call_output_item.rb +31 -18
  251. data/lib/openai/models/beta/beta_response_function_web_search.rb +37 -39
  252. data/lib/openai/models/beta/beta_response_image_gen_call_completed_event.rb +12 -6
  253. data/lib/openai/models/beta/beta_response_image_gen_call_generating_event.rb +12 -6
  254. data/lib/openai/models/beta/beta_response_image_gen_call_in_progress_event.rb +12 -6
  255. data/lib/openai/models/beta/beta_response_image_gen_call_partial_image_event.rb +25 -16
  256. data/lib/openai/models/beta/beta_response_in_progress_event.rb +10 -8
  257. data/lib/openai/models/beta/beta_response_incomplete_event.rb +10 -8
  258. data/lib/openai/models/beta/beta_response_inject_created_event.rb +9 -7
  259. data/lib/openai/models/beta/beta_response_inject_event.rb +6 -3
  260. data/lib/openai/models/beta/beta_response_inject_failed_event.rb +17 -11
  261. data/lib/openai/models/beta/beta_response_input_audio.rb +6 -9
  262. data/lib/openai/models/beta/beta_response_input_content.rb +1 -1
  263. data/lib/openai/models/beta/beta_response_input_file.rb +22 -11
  264. data/lib/openai/models/beta/beta_response_input_file_content.rb +22 -11
  265. data/lib/openai/models/beta/beta_response_input_image.rb +17 -10
  266. data/lib/openai/models/beta/beta_response_input_image_content.rb +17 -10
  267. data/lib/openai/models/beta/beta_response_input_item.rb +570 -294
  268. data/lib/openai/models/beta/beta_response_input_message_item.rb +16 -10
  269. data/lib/openai/models/beta/beta_response_input_text.rb +10 -7
  270. data/lib/openai/models/beta/beta_response_input_text_content.rb +10 -7
  271. data/lib/openai/models/beta/beta_response_item.rb +340 -153
  272. data/lib/openai/models/beta/beta_response_local_environment.rb +2 -1
  273. data/lib/openai/models/beta/beta_response_mcp_call_arguments_delta_event.rb +15 -10
  274. data/lib/openai/models/beta/beta_response_mcp_call_arguments_done_event.rb +14 -10
  275. data/lib/openai/models/beta/beta_response_mcp_call_completed_event.rb +12 -6
  276. data/lib/openai/models/beta/beta_response_mcp_call_failed_event.rb +12 -6
  277. data/lib/openai/models/beta/beta_response_mcp_call_in_progress_event.rb +12 -6
  278. data/lib/openai/models/beta/beta_response_mcp_list_tools_completed_event.rb +12 -6
  279. data/lib/openai/models/beta/beta_response_mcp_list_tools_failed_event.rb +12 -6
  280. data/lib/openai/models/beta/beta_response_mcp_list_tools_in_progress_event.rb +12 -6
  281. data/lib/openai/models/beta/beta_response_output_audio.rb +6 -6
  282. data/lib/openai/models/beta/beta_response_output_item.rb +338 -158
  283. data/lib/openai/models/beta/beta_response_output_item_added_event.rb +15 -9
  284. data/lib/openai/models/beta/beta_response_output_item_done_event.rb +12 -9
  285. data/lib/openai/models/beta/beta_response_output_message.rb +20 -11
  286. data/lib/openai/models/beta/beta_response_output_refusal.rb +4 -2
  287. data/lib/openai/models/beta/beta_response_output_text.rb +42 -25
  288. data/lib/openai/models/beta/beta_response_output_text_annotation_added_event.rb +54 -31
  289. data/lib/openai/models/beta/beta_response_prompt.rb +10 -8
  290. data/lib/openai/models/beta/beta_response_queued_event.rb +10 -5
  291. data/lib/openai/models/beta/beta_response_reasoning_item.rb +33 -17
  292. data/lib/openai/models/beta/beta_response_reasoning_summary_part_added_event.rb +20 -14
  293. data/lib/openai/models/beta/beta_response_reasoning_summary_part_done_event.rb +23 -15
  294. data/lib/openai/models/beta/beta_response_reasoning_summary_text_delta_event.rb +16 -12
  295. data/lib/openai/models/beta/beta_response_reasoning_summary_text_done_event.rb +16 -12
  296. data/lib/openai/models/beta/beta_response_reasoning_text_delta_event.rb +16 -11
  297. data/lib/openai/models/beta/beta_response_reasoning_text_done_event.rb +16 -11
  298. data/lib/openai/models/beta/beta_response_refusal_delta_event.rb +16 -11
  299. data/lib/openai/models/beta/beta_response_refusal_done_event.rb +16 -11
  300. data/lib/openai/models/beta/beta_response_shell_call_command_added_event.rb +14 -7
  301. data/lib/openai/models/beta/beta_response_shell_call_command_delta_event.rb +16 -8
  302. data/lib/openai/models/beta/beta_response_shell_call_command_done_event.rb +14 -7
  303. data/lib/openai/models/beta/beta_response_shell_call_output_content_delta_event.rb +20 -10
  304. data/lib/openai/models/beta/beta_response_shell_call_output_content_done_event.rb +31 -20
  305. data/lib/openai/models/beta/beta_response_steer_accepted_event.rb +13 -9
  306. data/lib/openai/models/beta/beta_response_steer_event.rb +14 -6
  307. data/lib/openai/models/beta/beta_response_steer_failed_event.rb +45 -22
  308. data/lib/openai/models/beta/beta_response_steer_input.rb +42 -24
  309. data/lib/openai/models/beta/beta_response_steer_input_content.rb +1 -1
  310. data/lib/openai/models/beta/beta_response_steer_pending_event.rb +24 -11
  311. data/lib/openai/models/beta/beta_response_text_config.rb +22 -8
  312. data/lib/openai/models/beta/beta_response_text_delta_event.rb +28 -22
  313. data/lib/openai/models/beta/beta_response_text_done_event.rb +28 -22
  314. data/lib/openai/models/beta/beta_response_tool_search_call.rb +18 -9
  315. data/lib/openai/models/beta/beta_response_tool_search_output_item.rb +18 -9
  316. data/lib/openai/models/beta/beta_response_tool_search_output_item_param.rb +16 -8
  317. data/lib/openai/models/beta/beta_response_usage.rb +18 -12
  318. data/lib/openai/models/beta/beta_response_web_search_call_completed_event.rb +12 -10
  319. data/lib/openai/models/beta/beta_response_web_search_call_in_progress_event.rb +12 -10
  320. data/lib/openai/models/beta/beta_response_web_search_call_searching_event.rb +12 -10
  321. data/lib/openai/models/beta/beta_responses_client_event.rb +399 -163
  322. data/lib/openai/models/beta/beta_responses_server_event.rb +862 -629
  323. data/lib/openai/models/beta/beta_skill_reference.rb +6 -3
  324. data/lib/openai/models/beta/beta_tool.rb +170 -95
  325. data/lib/openai/models/beta/beta_tool_choice_allowed.rb +21 -6
  326. data/lib/openai/models/beta/beta_tool_choice_apply_patch.rb +2 -1
  327. data/lib/openai/models/beta/beta_tool_choice_custom.rb +4 -2
  328. data/lib/openai/models/beta/beta_tool_choice_function.rb +4 -2
  329. data/lib/openai/models/beta/beta_tool_choice_mcp.rb +6 -6
  330. data/lib/openai/models/beta/beta_tool_choice_shell.rb +2 -1
  331. data/lib/openai/models/beta/beta_tool_choice_types.rb +16 -7
  332. data/lib/openai/models/beta/beta_tool_search_tool.rb +8 -4
  333. data/lib/openai/models/beta/beta_web_search_preview_tool.rb +21 -15
  334. data/lib/openai/models/beta/beta_web_search_tool.rb +31 -21
  335. data/lib/openai/models/beta/chatkit/chat_session.rb +20 -10
  336. data/lib/openai/models/beta/chatkit/chat_session_automatic_thread_titling.rb +2 -1
  337. data/lib/openai/models/beta/chatkit/chat_session_chatkit_configuration.rb +6 -3
  338. data/lib/openai/models/beta/chatkit/chat_session_chatkit_configuration_param.rb +23 -21
  339. data/lib/openai/models/beta/chatkit/chat_session_expires_after_param.rb +4 -2
  340. data/lib/openai/models/beta/chatkit/chat_session_file_upload.rb +6 -3
  341. data/lib/openai/models/beta/chatkit/chat_session_history.rb +5 -5
  342. data/lib/openai/models/beta/chatkit/chat_session_rate_limits.rb +2 -1
  343. data/lib/openai/models/beta/chatkit/chat_session_rate_limits_param.rb +2 -1
  344. data/lib/openai/models/beta/chatkit/chat_session_workflow_param.rb +12 -9
  345. data/lib/openai/models/beta/chatkit/chatkit_attachment.rb +10 -5
  346. data/lib/openai/models/beta/chatkit/chatkit_response_output_text.rb +22 -11
  347. data/lib/openai/models/beta/chatkit/chatkit_thread.rb +23 -14
  348. data/lib/openai/models/beta/chatkit/chatkit_thread_assistant_message_item.rb +12 -6
  349. data/lib/openai/models/beta/chatkit/chatkit_thread_item_list.rb +65 -41
  350. data/lib/openai/models/beta/chatkit/chatkit_thread_user_message_item.rb +29 -18
  351. data/lib/openai/models/beta/chatkit/chatkit_widget_item.rb +12 -6
  352. data/lib/openai/models/beta/chatkit/session_create_params.rb +12 -8
  353. data/lib/openai/models/beta/chatkit/thread_delete_response.rb +6 -3
  354. data/lib/openai/models/beta/chatkit/thread_list_items_params.rb +10 -7
  355. data/lib/openai/models/beta/chatkit/thread_list_params.rb +13 -8
  356. data/lib/openai/models/beta/chatkit_workflow.rb +12 -9
  357. data/lib/openai/models/beta/code_interpreter_tool.rb +2 -1
  358. data/lib/openai/models/beta/file_search_tool.rb +29 -16
  359. data/lib/openai/models/beta/function_tool.rb +2 -1
  360. data/lib/openai/models/beta/message_stream_event.rb +32 -41
  361. data/lib/openai/models/beta/response_compact_params.rb +89 -46
  362. data/lib/openai/models/beta/response_create_params.rb +380 -150
  363. data/lib/openai/models/beta/response_retrieve_params.rb +12 -6
  364. data/lib/openai/models/beta/responses/beta_response_item_list.rb +10 -5
  365. data/lib/openai/models/beta/responses/input_item_list_params.rb +13 -7
  366. data/lib/openai/models/beta/responses/input_token_count_params.rb +113 -42
  367. data/lib/openai/models/beta/run_step_stream_event.rb +36 -57
  368. data/lib/openai/models/beta/run_stream_event.rb +61 -72
  369. data/lib/openai/models/beta/thread.rb +32 -21
  370. data/lib/openai/models/beta/thread_create_and_run_params.rb +232 -123
  371. data/lib/openai/models/beta/thread_create_params.rb +89 -52
  372. data/lib/openai/models/beta/thread_stream_event.rb +7 -7
  373. data/lib/openai/models/beta/thread_update_params.rb +25 -19
  374. data/lib/openai/models/beta/threads/file_citation_annotation.rb +6 -3
  375. data/lib/openai/models/beta/threads/file_citation_delta_annotation.rb +10 -5
  376. data/lib/openai/models/beta/threads/file_path_annotation.rb +6 -3
  377. data/lib/openai/models/beta/threads/file_path_delta_annotation.rb +8 -4
  378. data/lib/openai/models/beta/threads/image_file.rb +10 -8
  379. data/lib/openai/models/beta/threads/image_file_content_block.rb +5 -3
  380. data/lib/openai/models/beta/threads/image_file_delta.rb +10 -8
  381. data/lib/openai/models/beta/threads/image_file_delta_block.rb +7 -4
  382. data/lib/openai/models/beta/threads/image_url.rb +6 -5
  383. data/lib/openai/models/beta/threads/image_url_content_block.rb +2 -1
  384. data/lib/openai/models/beta/threads/image_url_delta.rb +6 -5
  385. data/lib/openai/models/beta/threads/image_url_delta_block.rb +4 -2
  386. data/lib/openai/models/beta/threads/message.rb +52 -28
  387. data/lib/openai/models/beta/threads/message_content.rb +4 -3
  388. data/lib/openai/models/beta/threads/message_content_delta.rb +4 -3
  389. data/lib/openai/models/beta/threads/message_content_part_param.rb +4 -3
  390. data/lib/openai/models/beta/threads/message_create_params.rb +25 -12
  391. data/lib/openai/models/beta/threads/message_delta.rb +4 -2
  392. data/lib/openai/models/beta/threads/message_delta_event.rb +6 -3
  393. data/lib/openai/models/beta/threads/message_list_params.rb +18 -8
  394. data/lib/openai/models/beta/threads/message_update_params.rb +7 -4
  395. data/lib/openai/models/beta/threads/refusal_content_block.rb +2 -1
  396. data/lib/openai/models/beta/threads/refusal_delta_block.rb +4 -2
  397. data/lib/openai/models/beta/threads/required_action_function_tool_call.rb +15 -10
  398. data/lib/openai/models/beta/threads/run.rb +174 -89
  399. data/lib/openai/models/beta/threads/run_create_params.rb +173 -74
  400. data/lib/openai/models/beta/threads/run_list_params.rb +16 -7
  401. data/lib/openai/models/beta/threads/run_submit_tool_outputs_params.rb +7 -7
  402. data/lib/openai/models/beta/threads/run_update_params.rb +7 -4
  403. data/lib/openai/models/beta/threads/runs/code_interpreter_logs.rb +6 -3
  404. data/lib/openai/models/beta/threads/runs/code_interpreter_output_image.rb +9 -9
  405. data/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rb +24 -22
  406. data/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rb +15 -14
  407. data/lib/openai/models/beta/threads/runs/file_search_tool_call.rb +31 -25
  408. data/lib/openai/models/beta/threads/runs/file_search_tool_call_delta.rb +9 -7
  409. data/lib/openai/models/beta/threads/runs/function_tool_call.rb +15 -15
  410. data/lib/openai/models/beta/threads/runs/function_tool_call_delta.rb +17 -16
  411. data/lib/openai/models/beta/threads/runs/message_creation_step_details.rb +4 -2
  412. data/lib/openai/models/beta/threads/runs/run_step.rb +62 -29
  413. data/lib/openai/models/beta/threads/runs/run_step_delta.rb +2 -1
  414. data/lib/openai/models/beta/threads/runs/run_step_delta_event.rb +6 -3
  415. data/lib/openai/models/beta/threads/runs/run_step_delta_message_delta.rb +4 -2
  416. data/lib/openai/models/beta/threads/runs/step_list_params.rb +29 -13
  417. data/lib/openai/models/beta/threads/runs/step_retrieve_params.rb +9 -5
  418. data/lib/openai/models/beta/threads/runs/tool_call_delta_object.rb +6 -5
  419. data/lib/openai/models/beta/threads/runs/tool_calls_step_details.rb +6 -5
  420. data/lib/openai/models/beta/threads/text.rb +2 -1
  421. data/lib/openai/models/beta/threads/text_content_block.rb +2 -1
  422. data/lib/openai/models/beta/threads/text_content_block_param.rb +4 -2
  423. data/lib/openai/models/beta/threads/text_delta.rb +2 -1
  424. data/lib/openai/models/beta/threads/text_delta_block.rb +4 -2
  425. data/lib/openai/models/chat/chat_completion.rb +143 -75
  426. data/lib/openai/models/chat/chat_completion_allowed_tool_choice.rb +4 -5
  427. data/lib/openai/models/chat/chat_completion_allowed_tools.rb +18 -5
  428. data/lib/openai/models/chat/chat_completion_assistant_message_param.rb +31 -26
  429. data/lib/openai/models/chat/chat_completion_audio.rb +11 -8
  430. data/lib/openai/models/chat/chat_completion_audio_param.rb +11 -7
  431. data/lib/openai/models/chat/chat_completion_chunk.rb +174 -97
  432. data/lib/openai/models/chat/chat_completion_content_part.rb +22 -20
  433. data/lib/openai/models/chat/chat_completion_content_part_image.rb +17 -15
  434. data/lib/openai/models/chat/chat_completion_content_part_input_audio.rb +13 -13
  435. data/lib/openai/models/chat/chat_completion_content_part_refusal.rb +4 -2
  436. data/lib/openai/models/chat/chat_completion_content_part_text.rb +11 -9
  437. data/lib/openai/models/chat/chat_completion_custom_tool.rb +20 -16
  438. data/lib/openai/models/chat/chat_completion_deleted.rb +6 -3
  439. data/lib/openai/models/chat/chat_completion_developer_message_param.rb +7 -6
  440. data/lib/openai/models/chat/chat_completion_function_call_option.rb +2 -1
  441. data/lib/openai/models/chat/chat_completion_function_message_param.rb +6 -3
  442. data/lib/openai/models/chat/chat_completion_function_tool.rb +2 -1
  443. data/lib/openai/models/chat/chat_completion_message.rb +39 -24
  444. data/lib/openai/models/chat/chat_completion_message_custom_tool_call.rb +10 -5
  445. data/lib/openai/models/chat/chat_completion_message_function_tool_call.rb +13 -9
  446. data/lib/openai/models/chat/chat_completion_named_tool_choice.rb +4 -2
  447. data/lib/openai/models/chat/chat_completion_named_tool_choice_custom.rb +4 -2
  448. data/lib/openai/models/chat/chat_completion_prediction_content.rb +8 -6
  449. data/lib/openai/models/chat/chat_completion_store_message.rb +26 -16
  450. data/lib/openai/models/chat/chat_completion_stream_options.rb +15 -5
  451. data/lib/openai/models/chat/chat_completion_system_message_param.rb +7 -6
  452. data/lib/openai/models/chat/chat_completion_token_logprob.rb +25 -14
  453. data/lib/openai/models/chat/chat_completion_tool_message_param.rb +6 -3
  454. data/lib/openai/models/chat/chat_completion_user_message_param.rb +8 -7
  455. data/lib/openai/models/chat/completion_create_params.rb +388 -161
  456. data/lib/openai/models/chat/completion_list_params.rb +12 -7
  457. data/lib/openai/models/chat/completion_update_params.rb +7 -4
  458. data/lib/openai/models/chat/completions/message_list_params.rb +7 -6
  459. data/lib/openai/models/comparison_filter.rb +17 -6
  460. data/lib/openai/models/completion.rb +17 -10
  461. data/lib/openai/models/completion_choice.rb +5 -4
  462. data/lib/openai/models/completion_create_params.rb +124 -37
  463. data/lib/openai/models/completion_usage.rb +34 -18
  464. data/lib/openai/models/compound_filter.rb +5 -5
  465. data/lib/openai/models/container_create_params.rb +15 -10
  466. data/lib/openai/models/container_create_response.rb +28 -16
  467. data/lib/openai/models/container_list_params.rb +13 -7
  468. data/lib/openai/models/container_list_response.rb +28 -16
  469. data/lib/openai/models/container_retrieve_response.rb +28 -16
  470. data/lib/openai/models/containers/file_create_params.rb +8 -5
  471. data/lib/openai/models/containers/file_create_response.rb +14 -7
  472. data/lib/openai/models/containers/file_list_params.rb +11 -6
  473. data/lib/openai/models/containers/file_list_response.rb +14 -7
  474. data/lib/openai/models/containers/file_retrieve_response.rb +14 -7
  475. data/lib/openai/models/content_provenance_check.rb +44 -25
  476. data/lib/openai/models/content_provenance_check_create_params.rb +6 -1
  477. data/lib/openai/models/conversations/computer_screenshot_content.rb +16 -9
  478. data/lib/openai/models/conversations/conversation.rb +16 -10
  479. data/lib/openai/models/conversations/conversation_create_params.rb +9 -4
  480. data/lib/openai/models/conversations/conversation_item.rb +228 -103
  481. data/lib/openai/models/conversations/conversation_item_list.rb +10 -5
  482. data/lib/openai/models/conversations/conversation_update_params.rb +7 -4
  483. data/lib/openai/models/conversations/item_create_params.rb +7 -6
  484. data/lib/openai/models/conversations/item_list_params.rb +29 -7
  485. data/lib/openai/models/conversations/item_retrieve_params.rb +5 -5
  486. data/lib/openai/models/conversations/message.rb +22 -12
  487. data/lib/openai/models/conversations/summary_text_content.rb +4 -2
  488. data/lib/openai/models/create_embedding_response.rb +12 -6
  489. data/lib/openai/models/custom_tool_input_format.rb +8 -4
  490. data/lib/openai/models/embedding.rb +9 -7
  491. data/lib/openai/models/embedding_create_params.rb +36 -18
  492. data/lib/openai/models/error_object.rb +8 -4
  493. data/lib/openai/models/eval_create_params.rb +105 -74
  494. data/lib/openai/models/eval_create_response.rb +69 -42
  495. data/lib/openai/models/eval_custom_data_source_config.rb +5 -5
  496. data/lib/openai/models/eval_list_params.rb +10 -7
  497. data/lib/openai/models/eval_list_response.rb +69 -42
  498. data/lib/openai/models/eval_retrieve_response.rb +69 -42
  499. data/lib/openai/models/eval_stored_completions_data_source_config.rb +12 -6
  500. data/lib/openai/models/eval_update_params.rb +9 -5
  501. data/lib/openai/models/eval_update_response.rb +69 -42
  502. data/lib/openai/models/evals/create_eval_completions_run_data_source.rb +97 -64
  503. data/lib/openai/models/evals/create_eval_jsonl_run_data_source.rb +12 -7
  504. data/lib/openai/models/evals/eval_api_error.rb +4 -2
  505. data/lib/openai/models/evals/run_cancel_response.rb +204 -114
  506. data/lib/openai/models/evals/run_create_params.rb +156 -90
  507. data/lib/openai/models/evals/run_create_response.rb +204 -114
  508. data/lib/openai/models/evals/run_list_params.rb +10 -7
  509. data/lib/openai/models/evals/run_list_response.rb +204 -114
  510. data/lib/openai/models/evals/run_retrieve_response.rb +204 -114
  511. data/lib/openai/models/evals/runs/output_item_list_params.rb +10 -7
  512. data/lib/openai/models/evals/runs/output_item_list_response.rb +66 -38
  513. data/lib/openai/models/evals/runs/output_item_retrieve_response.rb +66 -39
  514. data/lib/openai/models/file_create_params.rb +23 -10
  515. data/lib/openai/models/file_list_params.rb +13 -7
  516. data/lib/openai/models/file_object.rb +22 -12
  517. data/lib/openai/models/fine_tuning/alpha/grader_run_params.rb +18 -10
  518. data/lib/openai/models/fine_tuning/alpha/grader_validate_params.rb +2 -1
  519. data/lib/openai/models/fine_tuning/alpha/grader_validate_response.rb +2 -1
  520. data/lib/openai/models/fine_tuning/checkpoints/permission_create_params.rb +2 -1
  521. data/lib/openai/models/fine_tuning/checkpoints/permission_create_response.rb +8 -4
  522. data/lib/openai/models/fine_tuning/checkpoints/permission_delete_response.rb +6 -3
  523. data/lib/openai/models/fine_tuning/checkpoints/permission_list_params.rb +8 -4
  524. data/lib/openai/models/fine_tuning/checkpoints/permission_list_response.rb +8 -4
  525. data/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rb +8 -4
  526. data/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rb +8 -4
  527. data/lib/openai/models/fine_tuning/dpo_hyperparameters.rb +12 -7
  528. data/lib/openai/models/fine_tuning/dpo_method.rb +2 -1
  529. data/lib/openai/models/fine_tuning/fine_tuning_job.rb +82 -41
  530. data/lib/openai/models/fine_tuning/fine_tuning_job_event.rb +14 -7
  531. data/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rb +13 -7
  532. data/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rb +7 -6
  533. data/lib/openai/models/fine_tuning/job_create_params.rb +107 -42
  534. data/lib/openai/models/fine_tuning/job_list_events_params.rb +4 -2
  535. data/lib/openai/models/fine_tuning/job_list_params.rb +7 -6
  536. data/lib/openai/models/fine_tuning/jobs/checkpoint_list_params.rb +4 -2
  537. data/lib/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rb +14 -7
  538. data/lib/openai/models/fine_tuning/reinforcement_hyperparameters.rb +17 -10
  539. data/lib/openai/models/fine_tuning/reinforcement_method.rb +4 -2
  540. data/lib/openai/models/fine_tuning/supervised_hyperparameters.rb +9 -6
  541. data/lib/openai/models/fine_tuning/supervised_method.rb +2 -1
  542. data/lib/openai/models/function_definition.rb +22 -9
  543. data/lib/openai/models/graders/grader_input_item.rb +11 -11
  544. data/lib/openai/models/graders/label_model_grader.rb +29 -25
  545. data/lib/openai/models/graders/multi_grader.rb +9 -7
  546. data/lib/openai/models/graders/python_grader.rb +8 -4
  547. data/lib/openai/models/graders/score_model_grader.rb +48 -38
  548. data/lib/openai/models/graders/string_check_grader.rb +10 -5
  549. data/lib/openai/models/graders/text_similarity_grader.rb +11 -8
  550. data/lib/openai/models/image.rb +10 -6
  551. data/lib/openai/models/image_create_variation_params.rb +23 -9
  552. data/lib/openai/models/image_edit_completed_event.rb +29 -20
  553. data/lib/openai/models/image_edit_params.rb +108 -31
  554. data/lib/openai/models/image_edit_partial_image_event.rb +16 -11
  555. data/lib/openai/models/image_gen_completed_event.rb +29 -20
  556. data/lib/openai/models/image_gen_partial_image_event.rb +16 -11
  557. data/lib/openai/models/image_generate_params.rb +92 -29
  558. data/lib/openai/models/image_input_reference_param.rb +2 -1
  559. data/lib/openai/models/images_response.rb +34 -19
  560. data/lib/openai/models/live/audio_format.rb +109 -0
  561. data/lib/openai/models/live/built_in_voice.rb +38 -0
  562. data/lib/openai/models/live/client_config.rb +22 -0
  563. data/lib/openai/models/live/client_delegation.rb +22 -0
  564. data/lib/openai/models/live/client_event.rb +54 -0
  565. data/lib/openai/models/live/commentary_append_event.rb +59 -0
  566. data/lib/openai/models/live/commentary_appended_event.rb +65 -0
  567. data/lib/openai/models/live/custom_voice.rb +17 -0
  568. data/lib/openai/models/live/data_channel_config.rb +81 -0
  569. data/lib/openai/models/live/delegation_created_event.rb +140 -0
  570. data/lib/openai/models/live/error.rb +60 -0
  571. data/lib/openai/models/live/error_event.rb +52 -0
  572. data/lib/openai/models/live/fork_client_event.rb +53 -0
  573. data/lib/openai/models/live/fork_server_event.rb +295 -0
  574. data/lib/openai/models/live/fork_session_config.rb +107 -0
  575. data/lib/openai/models/live/fork_session_start_event.rb +48 -0
  576. data/lib/openai/models/live/function_tool.rb +60 -0
  577. data/lib/openai/models/live/info_event.rb +60 -0
  578. data/lib/openai/models/live/initial_item.rb +419 -0
  579. data/lib/openai/models/live/input_audio_append_event.rb +50 -0
  580. data/lib/openai/models/live/input_audio_mute_event.rb +33 -0
  581. data/lib/openai/models/live/input_audio_muted_event.rb +42 -0
  582. data/lib/openai/models/live/input_audio_unmute_event.rb +33 -0
  583. data/lib/openai/models/live/input_audio_unmuted_event.rb +42 -0
  584. data/lib/openai/models/live/input_transcript_delta_event.rb +76 -0
  585. data/lib/openai/models/live/instructions_append_event.rb +57 -0
  586. data/lib/openai/models/live/instructions_appended_event.rb +65 -0
  587. data/lib/openai/models/live/live_create_params.rb +57 -0
  588. data/lib/openai/models/live/live_create_response.rb +77 -0
  589. data/lib/openai/models/live/media_session_config.rb +227 -0
  590. data/lib/openai/models/live/media_session_fork_config.rb +75 -0
  591. data/lib/openai/models/live/output_audio_delta_event.rb +58 -0
  592. data/lib/openai/models/live/output_transcript_delta_event.rb +76 -0
  593. data/lib/openai/models/live/response_create_event.rb +33 -0
  594. data/lib/openai/models/live/response_event.rb +67 -0
  595. data/lib/openai/models/live/response_item_create_event.rb +44 -0
  596. data/lib/openai/models/live/responses_delegation_config.rb +332 -0
  597. data/lib/openai/models/live/responses_delegation_update_config.rb +332 -0
  598. data/lib/openai/models/live/server_event.rb +295 -0
  599. data/lib/openai/models/live/server_event_selector.rb +32 -0
  600. data/lib/openai/models/live/session_accept_params.rb +257 -0
  601. data/lib/openai/models/live/session_close_event.rb +33 -0
  602. data/lib/openai/models/live/session_closed_event.rb +113 -0
  603. data/lib/openai/models/live/session_config.rb +236 -0
  604. data/lib/openai/models/live/session_download_recording_params.rb +27 -0
  605. data/lib/openai/models/live/session_fork_params.rb +66 -0
  606. data/lib/openai/models/live/session_fork_response.rb +77 -0
  607. data/lib/openai/models/live/session_hangup_params.rb +22 -0
  608. data/lib/openai/models/live/session_refer_params.rb +34 -0
  609. data/lib/openai/models/live/session_reject_params.rb +32 -0
  610. data/lib/openai/models/live/session_resource.rb +268 -0
  611. data/lib/openai/models/live/session_start_event.rb +46 -0
  612. data/lib/openai/models/live/session_started_event.rb +51 -0
  613. data/lib/openai/models/live/session_update_config.rb +69 -0
  614. data/lib/openai/models/live/session_update_event.rb +46 -0
  615. data/lib/openai/models/live/session_updated_event.rb +51 -0
  616. data/lib/openai/models/live/session_usage.rb +24 -0
  617. data/lib/openai/models/live/session_usage_updated_event.rb +81 -0
  618. data/lib/openai/models/live/thinking_append_event.rb +59 -0
  619. data/lib/openai/models/live/thinking_appended_event.rb +65 -0
  620. data/lib/openai/models/model.rb +10 -5
  621. data/lib/openai/models/moderation.rb +115 -62
  622. data/lib/openai/models/moderation_create_params.rb +16 -13
  623. data/lib/openai/models/moderation_create_response.rb +6 -3
  624. data/lib/openai/models/moderation_image_url_input.rb +6 -3
  625. data/lib/openai/models/moderation_text_input.rb +4 -2
  626. data/lib/openai/models/other_file_chunking_strategy_object.rb +2 -1
  627. data/lib/openai/models/realtime/audio_transcription.rb +29 -10
  628. data/lib/openai/models/realtime/call_accept_params.rb +85 -30
  629. data/lib/openai/models/realtime/call_create_params.rb +4 -2
  630. data/lib/openai/models/realtime/call_refer_params.rb +3 -4
  631. data/lib/openai/models/realtime/call_reject_params.rb +3 -4
  632. data/lib/openai/models/realtime/client_secret_create_params.rb +16 -11
  633. data/lib/openai/models/realtime/client_secret_create_response.rb +6 -6
  634. data/lib/openai/models/realtime/conversation_created_event.rb +10 -5
  635. data/lib/openai/models/realtime/conversation_item_added.rb +9 -7
  636. data/lib/openai/models/realtime/conversation_item_create_event.rb +16 -7
  637. data/lib/openai/models/realtime/conversation_item_created_event.rb +10 -7
  638. data/lib/openai/models/realtime/conversation_item_delete_event.rb +6 -3
  639. data/lib/openai/models/realtime/conversation_item_deleted_event.rb +6 -3
  640. data/lib/openai/models/realtime/conversation_item_done.rb +9 -7
  641. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rb +36 -21
  642. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rb +17 -10
  643. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_failed_event.rb +18 -13
  644. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_segment.rb +18 -9
  645. data/lib/openai/models/realtime/conversation_item_retrieve_event.rb +6 -3
  646. data/lib/openai/models/realtime/conversation_item_truncate_event.rb +13 -8
  647. data/lib/openai/models/realtime/conversation_item_truncated_event.rb +10 -8
  648. data/lib/openai/models/realtime/conversation_item_with_reference.rb +47 -24
  649. data/lib/openai/models/realtime/input_audio_buffer_append_event.rb +7 -6
  650. data/lib/openai/models/realtime/input_audio_buffer_clear_event.rb +4 -2
  651. data/lib/openai/models/realtime/input_audio_buffer_cleared_event.rb +4 -2
  652. data/lib/openai/models/realtime/input_audio_buffer_commit_event.rb +4 -2
  653. data/lib/openai/models/realtime/input_audio_buffer_committed_event.rb +9 -7
  654. data/lib/openai/models/realtime/input_audio_buffer_dtmf_event_received_event.rb +6 -7
  655. data/lib/openai/models/realtime/input_audio_buffer_speech_started_event.rb +11 -7
  656. data/lib/openai/models/realtime/input_audio_buffer_speech_stopped_event.rb +10 -7
  657. data/lib/openai/models/realtime/input_audio_buffer_timeout_triggered.rb +12 -8
  658. data/lib/openai/models/realtime/log_prob_properties.rb +6 -6
  659. data/lib/openai/models/realtime/mcp_list_tools_completed.rb +6 -3
  660. data/lib/openai/models/realtime/mcp_list_tools_failed.rb +6 -3
  661. data/lib/openai/models/realtime/mcp_list_tools_in_progress.rb +6 -3
  662. data/lib/openai/models/realtime/output_audio_buffer_clear_event.rb +5 -3
  663. data/lib/openai/models/realtime/rate_limits_updated_event.rb +14 -11
  664. data/lib/openai/models/realtime/realtime_audio_config_input.rb +38 -12
  665. data/lib/openai/models/realtime/realtime_audio_config_output.rb +18 -6
  666. data/lib/openai/models/realtime/realtime_audio_formats.rb +8 -4
  667. data/lib/openai/models/realtime/realtime_audio_input_turn_detection.rb +61 -25
  668. data/lib/openai/models/realtime/realtime_client_event.rb +1 -1
  669. data/lib/openai/models/realtime/realtime_conversation_item_assistant_message.rb +26 -19
  670. data/lib/openai/models/realtime/realtime_conversation_item_function_call.rb +18 -11
  671. data/lib/openai/models/realtime/realtime_conversation_item_function_call_output.rb +15 -10
  672. data/lib/openai/models/realtime/realtime_conversation_item_system_message.rb +18 -13
  673. data/lib/openai/models/realtime/realtime_conversation_item_user_message.rb +32 -21
  674. data/lib/openai/models/realtime/realtime_error.rb +10 -8
  675. data/lib/openai/models/realtime/realtime_error_event.rb +6 -3
  676. data/lib/openai/models/realtime/realtime_function_tool.rb +9 -7
  677. data/lib/openai/models/realtime/realtime_mcp_approval_request.rb +10 -5
  678. data/lib/openai/models/realtime/realtime_mcp_approval_response.rb +10 -5
  679. data/lib/openai/models/realtime/realtime_mcp_list_tools.rb +16 -12
  680. data/lib/openai/models/realtime/realtime_mcp_tool_call.rb +16 -8
  681. data/lib/openai/models/realtime/realtime_reasoning.rb +3 -4
  682. data/lib/openai/models/realtime/realtime_response.rb +47 -19
  683. data/lib/openai/models/realtime/realtime_response_create_audio_output.rb +11 -7
  684. data/lib/openai/models/realtime/realtime_response_create_mcp_tool.rb +71 -43
  685. data/lib/openai/models/realtime/realtime_response_create_params.rb +56 -18
  686. data/lib/openai/models/realtime/realtime_response_status.rb +16 -8
  687. data/lib/openai/models/realtime/realtime_response_usage.rb +16 -8
  688. data/lib/openai/models/realtime/realtime_response_usage_input_token_details.rb +16 -8
  689. data/lib/openai/models/realtime/realtime_response_usage_output_token_details.rb +4 -2
  690. data/lib/openai/models/realtime/realtime_server_event.rb +30 -18
  691. data/lib/openai/models/realtime/realtime_session.rb +191 -82
  692. data/lib/openai/models/realtime/realtime_session_create_request.rb +86 -32
  693. data/lib/openai/models/realtime/realtime_session_create_response.rb +256 -110
  694. data/lib/openai/models/realtime/realtime_tools_config_union.rb +73 -45
  695. data/lib/openai/models/realtime/realtime_tracing_config.rb +9 -7
  696. data/lib/openai/models/realtime/realtime_transcription_session_audio_input.rb +38 -13
  697. data/lib/openai/models/realtime/realtime_transcription_session_audio_input_turn_detection.rb +61 -25
  698. data/lib/openai/models/realtime/realtime_transcription_session_create_request.rb +10 -8
  699. data/lib/openai/models/realtime/realtime_transcription_session_create_response.rb +28 -22
  700. data/lib/openai/models/realtime/realtime_transcription_session_turn_detection.rb +13 -8
  701. data/lib/openai/models/realtime/realtime_translation_client_secret_create_request.rb +16 -12
  702. data/lib/openai/models/realtime/realtime_translation_client_secret_create_response.rb +7 -7
  703. data/lib/openai/models/realtime/realtime_translation_input_audio_buffer_append_event.rb +6 -3
  704. data/lib/openai/models/realtime/realtime_translation_input_transcript_delta_event.rb +11 -8
  705. data/lib/openai/models/realtime/realtime_translation_output_audio_delta_event.rb +16 -11
  706. data/lib/openai/models/realtime/realtime_translation_output_transcript_delta_event.rb +11 -8
  707. data/lib/openai/models/realtime/realtime_translation_session.rb +25 -25
  708. data/lib/openai/models/realtime/realtime_translation_session_close_event.rb +4 -2
  709. data/lib/openai/models/realtime/realtime_translation_session_closed_event.rb +4 -2
  710. data/lib/openai/models/realtime/realtime_translation_session_create_request.rb +18 -23
  711. data/lib/openai/models/realtime/realtime_translation_session_created_event.rb +6 -3
  712. data/lib/openai/models/realtime/realtime_translation_session_update_event.rb +7 -7
  713. data/lib/openai/models/realtime/realtime_translation_session_update_request.rb +16 -22
  714. data/lib/openai/models/realtime/realtime_translation_session_updated_event.rb +6 -3
  715. data/lib/openai/models/realtime/realtime_truncation_retention_ratio.rb +16 -11
  716. data/lib/openai/models/realtime/response_audio_delta_event.rb +14 -7
  717. data/lib/openai/models/realtime/response_audio_done_event.rb +12 -6
  718. data/lib/openai/models/realtime/response_audio_transcript_delta_event.rb +14 -7
  719. data/lib/openai/models/realtime/response_audio_transcript_done_event.rb +14 -7
  720. data/lib/openai/models/realtime/response_cancel_event.rb +7 -6
  721. data/lib/openai/models/realtime/response_content_part_added_event.rb +22 -11
  722. data/lib/openai/models/realtime/response_content_part_done_event.rb +22 -11
  723. data/lib/openai/models/realtime/response_create_event.rb +6 -3
  724. data/lib/openai/models/realtime/response_created_event.rb +6 -3
  725. data/lib/openai/models/realtime/response_done_event.rb +6 -3
  726. data/lib/openai/models/realtime/response_function_call_arguments_delta_event.rb +14 -11
  727. data/lib/openai/models/realtime/response_function_call_arguments_done_event.rb +16 -12
  728. data/lib/openai/models/realtime/response_mcp_call_arguments_delta.rb +14 -7
  729. data/lib/openai/models/realtime/response_mcp_call_arguments_done.rb +12 -6
  730. data/lib/openai/models/realtime/response_mcp_call_completed.rb +8 -4
  731. data/lib/openai/models/realtime/response_mcp_call_failed.rb +8 -4
  732. data/lib/openai/models/realtime/response_mcp_call_in_progress.rb +8 -4
  733. data/lib/openai/models/realtime/response_output_item_added_event.rb +10 -5
  734. data/lib/openai/models/realtime/response_output_item_done_event.rb +10 -5
  735. data/lib/openai/models/realtime/response_text_delta_event.rb +14 -7
  736. data/lib/openai/models/realtime/response_text_done_event.rb +14 -7
  737. data/lib/openai/models/realtime/session_created_event.rb +6 -3
  738. data/lib/openai/models/realtime/session_update_event.rb +10 -6
  739. data/lib/openai/models/realtime/session_updated_event.rb +6 -3
  740. data/lib/openai/models/realtime/transcription_session_update.rb +45 -26
  741. data/lib/openai/models/realtime/transcription_session_updated_event.rb +42 -28
  742. data/lib/openai/models/reasoning.rb +33 -10
  743. data/lib/openai/models/reasoning_effort.rb +1 -1
  744. data/lib/openai/models/response_format_json_object.rb +2 -1
  745. data/lib/openai/models/response_format_json_schema.rb +21 -14
  746. data/lib/openai/models/response_format_text.rb +2 -1
  747. data/lib/openai/models/response_format_text_grammar.rb +5 -3
  748. data/lib/openai/models/response_format_text_python.rb +3 -2
  749. data/lib/openai/models/responses/apply_patch_tool.rb +4 -3
  750. data/lib/openai/models/responses/compacted_response.rb +12 -8
  751. data/lib/openai/models/responses/computer_action.rb +78 -58
  752. data/lib/openai/models/responses/computer_tool.rb +3 -2
  753. data/lib/openai/models/responses/computer_use_preview_tool.rb +9 -5
  754. data/lib/openai/models/responses/container_auto.rb +10 -5
  755. data/lib/openai/models/responses/container_network_policy_allowlist.rb +6 -3
  756. data/lib/openai/models/responses/container_network_policy_disabled.rb +2 -1
  757. data/lib/openai/models/responses/container_network_policy_domain_secret.rb +6 -3
  758. data/lib/openai/models/responses/container_reference.rb +4 -2
  759. data/lib/openai/models/responses/custom_tool.rb +16 -12
  760. data/lib/openai/models/responses/easy_input_message.rb +13 -7
  761. data/lib/openai/models/responses/file_search_tool.rb +25 -17
  762. data/lib/openai/models/responses/function_shell_tool.rb +4 -3
  763. data/lib/openai/models/responses/function_tool.rb +19 -13
  764. data/lib/openai/models/responses/inline_skill.rb +8 -4
  765. data/lib/openai/models/responses/inline_skill_source.rb +6 -3
  766. data/lib/openai/models/responses/input_item_list_params.rb +13 -7
  767. data/lib/openai/models/responses/input_token_count_params.rb +79 -30
  768. data/lib/openai/models/responses/local_environment.rb +4 -2
  769. data/lib/openai/models/responses/local_skill.rb +6 -3
  770. data/lib/openai/models/responses/namespace_tool.rb +23 -13
  771. data/lib/openai/models/responses/response.rb +336 -152
  772. data/lib/openai/models/responses/response_apply_patch_tool_call.rb +34 -19
  773. data/lib/openai/models/responses/response_apply_patch_tool_call_output.rb +17 -11
  774. data/lib/openai/models/responses/response_audio_delta_event.rb +6 -6
  775. data/lib/openai/models/responses/response_audio_done_event.rb +4 -5
  776. data/lib/openai/models/responses/response_audio_transcript_delta_event.rb +6 -6
  777. data/lib/openai/models/responses/response_audio_transcript_done_event.rb +4 -5
  778. data/lib/openai/models/responses/response_code_interpreter_call_code_delta_event.rb +11 -9
  779. data/lib/openai/models/responses/response_code_interpreter_call_code_done_event.rb +10 -5
  780. data/lib/openai/models/responses/response_code_interpreter_call_completed_event.rb +9 -8
  781. data/lib/openai/models/responses/response_code_interpreter_call_in_progress_event.rb +9 -8
  782. data/lib/openai/models/responses/response_code_interpreter_call_interpreting_event.rb +9 -8
  783. data/lib/openai/models/responses/response_code_interpreter_tool_call.rb +22 -13
  784. data/lib/openai/models/responses/response_compact_params.rb +89 -46
  785. data/lib/openai/models/responses/response_compaction_item.rb +9 -5
  786. data/lib/openai/models/responses/response_compaction_item_param.rb +7 -4
  787. data/lib/openai/models/responses/response_completed_event.rb +6 -6
  788. data/lib/openai/models/responses/response_computer_tool_call.rb +101 -82
  789. data/lib/openai/models/responses/response_computer_tool_call_output_item.rb +22 -14
  790. data/lib/openai/models/responses/response_computer_tool_call_output_screenshot.rb +7 -7
  791. data/lib/openai/models/responses/response_configuration_update_item.rb +9 -8
  792. data/lib/openai/models/responses/response_configuration_update_item_param.rb +9 -8
  793. data/lib/openai/models/responses/response_container_reference.rb +2 -1
  794. data/lib/openai/models/responses/response_content.rb +5 -3
  795. data/lib/openai/models/responses/response_content_part_added_event.rb +16 -11
  796. data/lib/openai/models/responses/response_content_part_done_event.rb +16 -11
  797. data/lib/openai/models/responses/response_conversation_param.rb +2 -1
  798. data/lib/openai/models/responses/response_create_params.rb +332 -131
  799. data/lib/openai/models/responses/response_created_event.rb +6 -6
  800. data/lib/openai/models/responses/response_custom_tool_call.rb +18 -12
  801. data/lib/openai/models/responses/response_custom_tool_call_input_delta_event.rb +10 -5
  802. data/lib/openai/models/responses/response_custom_tool_call_input_done_event.rb +10 -5
  803. data/lib/openai/models/responses/response_custom_tool_call_item.rb +21 -13
  804. data/lib/openai/models/responses/response_custom_tool_call_output.rb +18 -12
  805. data/lib/openai/models/responses/response_custom_tool_call_output_item.rb +16 -10
  806. data/lib/openai/models/responses/response_error.rb +12 -9
  807. data/lib/openai/models/responses/response_error_event.rb +10 -8
  808. data/lib/openai/models/responses/response_failed_event.rb +6 -6
  809. data/lib/openai/models/responses/response_file_search_call_completed_event.rb +8 -8
  810. data/lib/openai/models/responses/response_file_search_call_in_progress_event.rb +8 -8
  811. data/lib/openai/models/responses/response_file_search_call_searching_event.rb +8 -8
  812. data/lib/openai/models/responses/response_file_search_tool_call.rb +26 -19
  813. data/lib/openai/models/responses/response_format_text_config.rb +2 -2
  814. data/lib/openai/models/responses/response_format_text_json_schema_config.rb +19 -11
  815. data/lib/openai/models/responses/response_function_call_arguments_delta_event.rb +10 -9
  816. data/lib/openai/models/responses/response_function_call_arguments_done_event.rb +8 -4
  817. data/lib/openai/models/responses/response_function_call_output_item.rb +1 -1
  818. data/lib/openai/models/responses/response_function_shell_call_output_content.rb +12 -6
  819. data/lib/openai/models/responses/response_function_shell_tool_call.rb +24 -14
  820. data/lib/openai/models/responses/response_function_shell_tool_call_output.rb +36 -25
  821. data/lib/openai/models/responses/response_function_tool_call.rb +22 -14
  822. data/lib/openai/models/responses/response_function_tool_call_item.rb +22 -14
  823. data/lib/openai/models/responses/response_function_tool_call_output_item.rb +27 -17
  824. data/lib/openai/models/responses/response_function_web_search.rb +33 -37
  825. data/lib/openai/models/responses/response_image_gen_call_completed_event.rb +8 -4
  826. data/lib/openai/models/responses/response_image_gen_call_generating_event.rb +8 -4
  827. data/lib/openai/models/responses/response_image_gen_call_in_progress_event.rb +8 -4
  828. data/lib/openai/models/responses/response_image_gen_call_partial_image_event.rb +21 -14
  829. data/lib/openai/models/responses/response_in_progress_event.rb +6 -6
  830. data/lib/openai/models/responses/response_incomplete_event.rb +6 -6
  831. data/lib/openai/models/responses/response_input_audio.rb +6 -9
  832. data/lib/openai/models/responses/response_input_content.rb +1 -1
  833. data/lib/openai/models/responses/response_input_file.rb +22 -11
  834. data/lib/openai/models/responses/response_input_file_content.rb +22 -11
  835. data/lib/openai/models/responses/response_input_image.rb +17 -10
  836. data/lib/openai/models/responses/response_input_image_content.rb +17 -10
  837. data/lib/openai/models/responses/response_input_item.rb +407 -212
  838. data/lib/openai/models/responses/response_input_message_item.rb +12 -8
  839. data/lib/openai/models/responses/response_input_text.rb +10 -7
  840. data/lib/openai/models/responses/response_input_text_content.rb +10 -7
  841. data/lib/openai/models/responses/response_item.rb +229 -96
  842. data/lib/openai/models/responses/response_item_list.rb +10 -5
  843. data/lib/openai/models/responses/response_local_environment.rb +2 -1
  844. data/lib/openai/models/responses/response_mcp_call_arguments_delta_event.rb +11 -9
  845. data/lib/openai/models/responses/response_mcp_call_arguments_done_event.rb +10 -8
  846. data/lib/openai/models/responses/response_mcp_call_completed_event.rb +8 -4
  847. data/lib/openai/models/responses/response_mcp_call_failed_event.rb +8 -4
  848. data/lib/openai/models/responses/response_mcp_call_in_progress_event.rb +8 -4
  849. data/lib/openai/models/responses/response_mcp_list_tools_completed_event.rb +8 -4
  850. data/lib/openai/models/responses/response_mcp_list_tools_failed_event.rb +8 -4
  851. data/lib/openai/models/responses/response_mcp_list_tools_in_progress_event.rb +8 -4
  852. data/lib/openai/models/responses/response_output_audio.rb +6 -6
  853. data/lib/openai/models/responses/response_output_item.rb +227 -101
  854. data/lib/openai/models/responses/response_output_item_added_event.rb +11 -7
  855. data/lib/openai/models/responses/response_output_item_done_event.rb +8 -7
  856. data/lib/openai/models/responses/response_output_message.rb +16 -9
  857. data/lib/openai/models/responses/response_output_refusal.rb +4 -2
  858. data/lib/openai/models/responses/response_output_text.rb +42 -25
  859. data/lib/openai/models/responses/response_output_text_annotation_added_event.rb +50 -29
  860. data/lib/openai/models/responses/response_prompt.rb +10 -8
  861. data/lib/openai/models/responses/response_queued_event.rb +6 -3
  862. data/lib/openai/models/responses/response_reasoning_item.rb +29 -15
  863. data/lib/openai/models/responses/response_reasoning_summary_part_added_event.rb +16 -12
  864. data/lib/openai/models/responses/response_reasoning_summary_part_done_event.rb +19 -13
  865. data/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rb +12 -10
  866. data/lib/openai/models/responses/response_reasoning_summary_text_done_event.rb +12 -10
  867. data/lib/openai/models/responses/response_reasoning_text_delta_event.rb +12 -9
  868. data/lib/openai/models/responses/response_reasoning_text_done_event.rb +12 -9
  869. data/lib/openai/models/responses/response_refusal_delta_event.rb +12 -9
  870. data/lib/openai/models/responses/response_refusal_done_event.rb +12 -9
  871. data/lib/openai/models/responses/response_retrieve_params.rb +12 -6
  872. data/lib/openai/models/responses/response_shell_call_command_added_event.rb +10 -5
  873. data/lib/openai/models/responses/response_shell_call_command_delta_event.rb +12 -6
  874. data/lib/openai/models/responses/response_shell_call_command_done_event.rb +10 -5
  875. data/lib/openai/models/responses/response_shell_call_output_content_delta_event.rb +16 -8
  876. data/lib/openai/models/responses/response_shell_call_output_content_done_event.rb +27 -18
  877. data/lib/openai/models/responses/response_steer_accepted_event.rb +13 -9
  878. data/lib/openai/models/responses/response_steer_event.rb +14 -6
  879. data/lib/openai/models/responses/response_steer_failed_event.rb +45 -22
  880. data/lib/openai/models/responses/response_steer_input.rb +34 -20
  881. data/lib/openai/models/responses/response_steer_input_content.rb +1 -1
  882. data/lib/openai/models/responses/response_steer_pending_event.rb +24 -11
  883. data/lib/openai/models/responses/response_text_config.rb +22 -8
  884. data/lib/openai/models/responses/response_text_delta_event.rb +24 -20
  885. data/lib/openai/models/responses/response_text_done_event.rb +24 -20
  886. data/lib/openai/models/responses/response_tool_search_call.rb +14 -7
  887. data/lib/openai/models/responses/response_tool_search_output_item.rb +14 -7
  888. data/lib/openai/models/responses/response_tool_search_output_item_param.rb +12 -6
  889. data/lib/openai/models/responses/response_usage.rb +18 -12
  890. data/lib/openai/models/responses/response_web_search_call_completed_event.rb +8 -8
  891. data/lib/openai/models/responses/response_web_search_call_in_progress_event.rb +8 -8
  892. data/lib/openai/models/responses/response_web_search_call_searching_event.rb +8 -8
  893. data/lib/openai/models/responses/responses_client_event.rb +351 -141
  894. data/lib/openai/models/responses/responses_server_event.rb +744 -570
  895. data/lib/openai/models/responses/skill_reference.rb +6 -3
  896. data/lib/openai/models/responses/tool.rb +170 -95
  897. data/lib/openai/models/responses/tool_choice_allowed.rb +21 -6
  898. data/lib/openai/models/responses/tool_choice_apply_patch.rb +2 -1
  899. data/lib/openai/models/responses/tool_choice_custom.rb +4 -2
  900. data/lib/openai/models/responses/tool_choice_function.rb +4 -2
  901. data/lib/openai/models/responses/tool_choice_mcp.rb +6 -6
  902. data/lib/openai/models/responses/tool_choice_shell.rb +2 -1
  903. data/lib/openai/models/responses/tool_choice_types.rb +16 -7
  904. data/lib/openai/models/responses/tool_search_tool.rb +8 -4
  905. data/lib/openai/models/responses/web_search_preview_tool.rb +21 -16
  906. data/lib/openai/models/responses/web_search_tool.rb +31 -21
  907. data/lib/openai/models/safety/alert_retrieve_params.rb +2 -1
  908. data/lib/openai/models/safety/safety_alert.rb +6 -5
  909. data/lib/openai/models/skill.rb +14 -7
  910. data/lib/openai/models/skill_create_params.rb +6 -1
  911. data/lib/openai/models/skill_list.rb +10 -5
  912. data/lib/openai/models/skill_list_params.rb +7 -6
  913. data/lib/openai/models/skill_update_params.rb +2 -1
  914. data/lib/openai/models/skills/deleted_skill_version.rb +2 -1
  915. data/lib/openai/models/skills/skill_version.rb +14 -7
  916. data/lib/openai/models/skills/skill_version_list.rb +10 -5
  917. data/lib/openai/models/skills/version_create_params.rb +8 -2
  918. data/lib/openai/models/skills/version_delete_params.rb +2 -1
  919. data/lib/openai/models/skills/version_list_params.rb +6 -3
  920. data/lib/openai/models/skills/version_retrieve_params.rb +2 -1
  921. data/lib/openai/models/skills/versions/content_retrieve_params.rb +2 -1
  922. data/lib/openai/models/static_file_chunking_strategy.rb +6 -4
  923. data/lib/openai/models/static_file_chunking_strategy_object.rb +2 -1
  924. data/lib/openai/models/static_file_chunking_strategy_object_param.rb +2 -1
  925. data/lib/openai/models/upload.rb +21 -13
  926. data/lib/openai/models/upload_complete_params.rb +5 -5
  927. data/lib/openai/models/upload_create_params.rb +23 -13
  928. data/lib/openai/models/uploads/part_create_params.rb +6 -4
  929. data/lib/openai/models/uploads/upload_part.rb +8 -4
  930. data/lib/openai/models/vector_store.rb +42 -23
  931. data/lib/openai/models/vector_store_create_params.rb +28 -16
  932. data/lib/openai/models/vector_store_list_params.rb +16 -7
  933. data/lib/openai/models/vector_store_search_params.rb +13 -9
  934. data/lib/openai/models/vector_store_search_response.rb +18 -11
  935. data/lib/openai/models/vector_store_update_params.rb +16 -11
  936. data/lib/openai/models/vector_stores/file_batch_create_params.rb +47 -23
  937. data/lib/openai/models/vector_stores/file_batch_list_files_params.rb +18 -8
  938. data/lib/openai/models/vector_stores/file_content_response.rb +4 -2
  939. data/lib/openai/models/vector_stores/file_create_params.rb +18 -9
  940. data/lib/openai/models/vector_stores/file_list_params.rb +18 -8
  941. data/lib/openai/models/vector_stores/file_update_params.rb +6 -4
  942. data/lib/openai/models/vector_stores/vector_store_file.rb +35 -16
  943. data/lib/openai/models/vector_stores/vector_store_file_batch.rb +27 -15
  944. data/lib/openai/models/video.rb +27 -16
  945. data/lib/openai/models/video_create_character_params.rb +8 -2
  946. data/lib/openai/models/video_create_character_response.rb +6 -3
  947. data/lib/openai/models/video_create_error.rb +12 -6
  948. data/lib/openai/models/video_create_params.rb +15 -7
  949. data/lib/openai/models/video_delete_response.rb +6 -3
  950. data/lib/openai/models/video_download_content_params.rb +2 -1
  951. data/lib/openai/models/video_edit_params.rb +10 -3
  952. data/lib/openai/models/video_extend_params.rb +12 -6
  953. data/lib/openai/models/video_get_character_response.rb +6 -3
  954. data/lib/openai/models/video_list_params.rb +7 -6
  955. data/lib/openai/models/video_remix_params.rb +2 -1
  956. data/lib/openai/models/webhooks/batch_cancelled_webhook_event.rb +12 -12
  957. data/lib/openai/models/webhooks/batch_completed_webhook_event.rb +12 -12
  958. data/lib/openai/models/webhooks/batch_expired_webhook_event.rb +12 -12
  959. data/lib/openai/models/webhooks/batch_failed_webhook_event.rb +12 -12
  960. data/lib/openai/models/webhooks/eval_run_canceled_webhook_event.rb +12 -12
  961. data/lib/openai/models/webhooks/eval_run_failed_webhook_event.rb +12 -12
  962. data/lib/openai/models/webhooks/eval_run_succeeded_webhook_event.rb +12 -12
  963. data/lib/openai/models/webhooks/fine_tuning_job_cancelled_webhook_event.rb +12 -13
  964. data/lib/openai/models/webhooks/fine_tuning_job_failed_webhook_event.rb +12 -13
  965. data/lib/openai/models/webhooks/fine_tuning_job_succeeded_webhook_event.rb +12 -13
  966. data/lib/openai/models/webhooks/live_call_incoming_webhook_event.rb +34 -26
  967. data/lib/openai/models/webhooks/live_transport_incoming_webhook_event.rb +137 -0
  968. data/lib/openai/models/webhooks/realtime_call_incoming_webhook_event.rb +29 -25
  969. data/lib/openai/models/webhooks/response_cancelled_webhook_event.rb +12 -13
  970. data/lib/openai/models/webhooks/response_completed_webhook_event.rb +12 -13
  971. data/lib/openai/models/webhooks/response_failed_webhook_event.rb +12 -12
  972. data/lib/openai/models/webhooks/response_incomplete_webhook_event.rb +12 -13
  973. data/lib/openai/models/webhooks/safety_alert_created_webhook_event.rb +10 -5
  974. data/lib/openai/models/webhooks/safety_org_alert_created_webhook_event.rb +10 -5
  975. data/lib/openai/models/webhooks/unwrap_webhook_event.rb +9 -2
  976. data/lib/openai/models.rb +2 -0
  977. data/lib/openai/resources/admin/organization/admin_api_keys.rb +13 -9
  978. data/lib/openai/resources/admin/organization/audit_logs.rb +44 -22
  979. data/lib/openai/resources/admin/organization/certificates.rb +26 -17
  980. data/lib/openai/resources/admin/organization/data_retention.rb +2 -1
  981. data/lib/openai/resources/admin/organization/groups/roles.rb +21 -13
  982. data/lib/openai/resources/admin/organization/groups/users.rb +22 -13
  983. data/lib/openai/resources/admin/organization/groups.rb +20 -11
  984. data/lib/openai/resources/admin/organization/invites.rb +21 -13
  985. data/lib/openai/resources/admin/organization/projects/api_keys.rb +24 -12
  986. data/lib/openai/resources/admin/organization/projects/certificates.rb +17 -10
  987. data/lib/openai/resources/admin/organization/projects/data_retention.rb +6 -3
  988. data/lib/openai/resources/admin/organization/projects/groups/roles.rb +29 -18
  989. data/lib/openai/resources/admin/organization/projects/groups.rb +25 -16
  990. data/lib/openai/resources/admin/organization/projects/hosted_tool_permissions.rb +14 -7
  991. data/lib/openai/resources/admin/organization/projects/model_permissions.rb +10 -5
  992. data/lib/openai/resources/admin/organization/projects/rate_limits.rb +32 -20
  993. data/lib/openai/resources/admin/organization/projects/roles.rb +35 -21
  994. data/lib/openai/resources/admin/organization/projects/service_accounts/api_keys.rb +10 -5
  995. data/lib/openai/resources/admin/organization/projects/service_accounts.rb +40 -19
  996. data/lib/openai/resources/admin/organization/projects/spend_alerts.rb +42 -24
  997. data/lib/openai/resources/admin/organization/projects/spend_limit.rb +13 -10
  998. data/lib/openai/resources/admin/organization/projects/users/roles.rb +29 -18
  999. data/lib/openai/resources/admin/organization/projects/users.rb +32 -18
  1000. data/lib/openai/resources/admin/organization/projects.rb +40 -22
  1001. data/lib/openai/resources/admin/organization/roles.rb +25 -15
  1002. data/lib/openai/resources/admin/organization/spend_alerts.rb +32 -18
  1003. data/lib/openai/resources/admin/organization/spend_limit.rb +7 -6
  1004. data/lib/openai/resources/admin/organization/usage.rb +296 -145
  1005. data/lib/openai/resources/admin/organization/users/roles.rb +21 -13
  1006. data/lib/openai/resources/admin/organization/users.rb +24 -13
  1007. data/lib/openai/resources/audio/speech.rb +25 -10
  1008. data/lib/openai/resources/audio/transcriptions.rb +172 -56
  1009. data/lib/openai/resources/audio/translations.rb +26 -8
  1010. data/lib/openai/resources/batches.rb +43 -15
  1011. data/lib/openai/resources/beta/assistants.rb +177 -59
  1012. data/lib/openai/resources/beta/chatkit/sessions.rb +14 -9
  1013. data/lib/openai/resources/beta/chatkit/threads.rb +29 -18
  1014. data/lib/openai/resources/beta/responses/input_items.rb +17 -9
  1015. data/lib/openai/resources/beta/responses/input_tokens.rb +65 -28
  1016. data/lib/openai/resources/beta/responses.rb +640 -195
  1017. data/lib/openai/resources/beta/threads/messages.rb +65 -30
  1018. data/lib/openai/resources/beta/threads/runs/steps.rb +50 -23
  1019. data/lib/openai/resources/beta/threads/runs.rb +309 -109
  1020. data/lib/openai/resources/beta/threads.rb +240 -78
  1021. data/lib/openai/resources/chat/completions/messages.rb +9 -7
  1022. data/lib/openai/resources/chat/completions.rb +594 -169
  1023. data/lib/openai/resources/completions.rb +212 -40
  1024. data/lib/openai/resources/containers/files.rb +19 -11
  1025. data/lib/openai/resources/containers.rb +27 -14
  1026. data/lib/openai/resources/content_provenance_checks.rb +7 -2
  1027. data/lib/openai/resources/conversations/items.rb +58 -26
  1028. data/lib/openai/resources/conversations.rb +23 -12
  1029. data/lib/openai/resources/embeddings.rb +26 -8
  1030. data/lib/openai/resources/evals/runs/output_items.rb +21 -12
  1031. data/lib/openai/resources/evals/runs.rb +37 -21
  1032. data/lib/openai/resources/evals.rb +43 -23
  1033. data/lib/openai/resources/files.rb +42 -21
  1034. data/lib/openai/resources/fine_tuning/alpha/graders.rb +15 -7
  1035. data/lib/openai/resources/fine_tuning/checkpoints/permissions.rb +36 -34
  1036. data/lib/openai/resources/fine_tuning/jobs/checkpoints.rb +6 -6
  1037. data/lib/openai/resources/fine_tuning/jobs.rb +84 -42
  1038. data/lib/openai/resources/images.rb +421 -127
  1039. data/lib/openai/resources/live/forks.rb +16 -0
  1040. data/lib/openai/resources/live/sessions.rb +180 -0
  1041. data/lib/openai/resources/live/sideband.rb +16 -0
  1042. data/lib/openai/resources/live.rb +54 -0
  1043. data/lib/openai/resources/models.rb +4 -2
  1044. data/lib/openai/resources/moderations.rb +10 -6
  1045. data/lib/openai/resources/realtime/calls.rb +114 -48
  1046. data/lib/openai/resources/realtime/client_secrets.rb +9 -6
  1047. data/lib/openai/resources/responses/input_items.rb +15 -8
  1048. data/lib/openai/resources/responses/input_tokens.rb +60 -26
  1049. data/lib/openai/resources/responses.rb +601 -262
  1050. data/lib/openai/resources/safety/alerts.rb +2 -1
  1051. data/lib/openai/resources/skills/content.rb +2 -1
  1052. data/lib/openai/resources/skills/versions/content.rb +4 -2
  1053. data/lib/openai/resources/skills/versions.rb +26 -11
  1054. data/lib/openai/resources/skills.rb +21 -11
  1055. data/lib/openai/resources/uploads/parts.rb +13 -9
  1056. data/lib/openai/resources/uploads.rb +35 -27
  1057. data/lib/openai/resources/vector_stores/file_batches.rb +60 -26
  1058. data/lib/openai/resources/vector_stores/files.rb +62 -31
  1059. data/lib/openai/resources/vector_stores.rb +67 -34
  1060. data/lib/openai/resources/videos.rb +64 -31
  1061. data/lib/openai/resources/webhooks.rb +1 -1
  1062. data/lib/openai/version.rb +1 -1
  1063. data/lib/openai.rb +65 -0
  1064. data/rbi/openai/client.rbi +3 -0
  1065. data/rbi/openai/models/admin/organization/audit_log_list_params.rbi +2 -2
  1066. data/rbi/openai/models/admin/organization/project_create_params.rbi +4 -4
  1067. data/rbi/openai/models/admin/organization/projects/project_api_key.rbi +13 -1
  1068. data/rbi/openai/models/admin/organization/projects/service_account_create_params.rbi +18 -0
  1069. data/rbi/openai/models/admin/organization/projects/service_account_create_response.rbi +19 -1
  1070. data/rbi/openai/models/audio/speech_create_params.rbi +9 -6
  1071. data/rbi/openai/models/audio/transcription_create_params.rbi +2 -2
  1072. data/rbi/openai/models/audio/transcription_stream_event.rbi +1 -1
  1073. data/rbi/openai/models/audio/transcription_text_delta_event.rbi +3 -3
  1074. data/rbi/openai/models/audio/transcription_text_done_event.rbi +3 -3
  1075. data/rbi/openai/models/audio/transcription_text_segment_event.rbi +1 -1
  1076. data/rbi/openai/models/audio/translation_create_params.rbi +2 -2
  1077. data/rbi/openai/models/batch.rbi +4 -4
  1078. data/rbi/openai/models/batch_create_params.rbi +6 -4
  1079. data/rbi/openai/models/batch_usage.rbi +2 -2
  1080. data/rbi/openai/models/beta/assistant.rbi +24 -24
  1081. data/rbi/openai/models/beta/assistant_create_params.rbi +40 -40
  1082. data/rbi/openai/models/beta/assistant_response_format_option.rbi +4 -4
  1083. data/rbi/openai/models/beta/assistant_stream_event.rbi +63 -65
  1084. data/rbi/openai/models/beta/assistant_update_params.rbi +30 -30
  1085. data/rbi/openai/models/beta/beta_computer_tool.rbi +1 -1
  1086. data/rbi/openai/models/beta/beta_computer_use_preview_tool.rbi +1 -1
  1087. data/rbi/openai/models/beta/beta_custom_tool.rbi +1 -1
  1088. data/rbi/openai/models/beta/beta_file_search_tool.rbi +1 -1
  1089. data/rbi/openai/models/beta/beta_function_tool.rbi +1 -1
  1090. data/rbi/openai/models/beta/beta_response.rbi +72 -64
  1091. data/rbi/openai/models/beta/beta_response_compaction_item.rbi +1 -1
  1092. data/rbi/openai/models/beta/beta_response_compaction_item_param.rbi +1 -1
  1093. data/rbi/openai/models/beta/beta_response_computer_tool_call.rbi +1 -1
  1094. data/rbi/openai/models/beta/beta_response_file_search_tool_call.rbi +1 -1
  1095. data/rbi/openai/models/beta/beta_response_format_text_config.rbi +1 -1
  1096. data/rbi/openai/models/beta/beta_response_format_text_json_schema_config.rbi +3 -3
  1097. data/rbi/openai/models/beta/beta_response_function_tool_call.rbi +1 -1
  1098. data/rbi/openai/models/beta/beta_response_function_tool_call_item.rbi +1 -1
  1099. data/rbi/openai/models/beta/beta_response_function_web_search.rbi +2 -2
  1100. data/rbi/openai/models/beta/beta_response_input_image.rbi +1 -1
  1101. data/rbi/openai/models/beta/beta_response_input_image_content.rbi +1 -1
  1102. data/rbi/openai/models/beta/beta_response_input_item.rbi +109 -0
  1103. data/rbi/openai/models/beta/beta_response_item.rbi +105 -0
  1104. data/rbi/openai/models/beta/beta_response_output_item.rbi +119 -0
  1105. data/rbi/openai/models/beta/beta_response_prompt.rbi +1 -1
  1106. data/rbi/openai/models/beta/beta_response_reasoning_item.rbi +1 -1
  1107. data/rbi/openai/models/beta/beta_response_text_config.rbi +4 -4
  1108. data/rbi/openai/models/beta/beta_response_usage.rbi +2 -2
  1109. data/rbi/openai/models/beta/beta_responses_client_event.rbi +94 -86
  1110. data/rbi/openai/models/beta/beta_tool.rbi +4 -4
  1111. data/rbi/openai/models/beta/beta_tool_choice_types.rbi +4 -4
  1112. data/rbi/openai/models/beta/beta_web_search_preview_tool.rbi +1 -1
  1113. data/rbi/openai/models/beta/beta_web_search_tool.rbi +1 -1
  1114. data/rbi/openai/models/beta/file_search_tool.rbi +5 -5
  1115. data/rbi/openai/models/beta/message_stream_event.rbi +16 -16
  1116. data/rbi/openai/models/beta/response_compact_params.rbi +44 -44
  1117. data/rbi/openai/models/beta/response_create_params.rbi +92 -84
  1118. data/rbi/openai/models/beta/responses/input_token_count_params.rbi +20 -20
  1119. data/rbi/openai/models/beta/run_step_stream_event.rbi +14 -16
  1120. data/rbi/openai/models/beta/run_stream_event.rbi +31 -31
  1121. data/rbi/openai/models/beta/thread.rbi +9 -9
  1122. data/rbi/openai/models/beta/thread_create_and_run_params.rbi +61 -56
  1123. data/rbi/openai/models/beta/thread_create_params.rbi +24 -22
  1124. data/rbi/openai/models/beta/thread_stream_event.rbi +3 -3
  1125. data/rbi/openai/models/beta/thread_update_params.rbi +8 -8
  1126. data/rbi/openai/models/beta/threads/image_file.rbi +6 -6
  1127. data/rbi/openai/models/beta/threads/image_file_content_block.rbi +3 -2
  1128. data/rbi/openai/models/beta/threads/image_file_delta.rbi +6 -6
  1129. data/rbi/openai/models/beta/threads/image_file_delta_block.rbi +3 -2
  1130. data/rbi/openai/models/beta/threads/message.rbi +9 -9
  1131. data/rbi/openai/models/beta/threads/message_content.rbi +3 -2
  1132. data/rbi/openai/models/beta/threads/message_content_delta.rbi +3 -2
  1133. data/rbi/openai/models/beta/threads/message_content_part_param.rbi +3 -2
  1134. data/rbi/openai/models/beta/threads/required_action_function_tool_call.rbi +2 -2
  1135. data/rbi/openai/models/beta/threads/run.rbi +33 -31
  1136. data/rbi/openai/models/beta/threads/run_create_params.rbi +37 -34
  1137. data/rbi/openai/models/beta/threads/runs/code_interpreter_output_image.rbi +4 -4
  1138. data/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi +4 -4
  1139. data/rbi/openai/models/beta/threads/runs/function_tool_call.rbi +2 -4
  1140. data/rbi/openai/models/beta/threads/runs/function_tool_call_delta.rbi +2 -4
  1141. data/rbi/openai/models/beta/threads/runs/run_step.rbi +12 -10
  1142. data/rbi/openai/models/beta/threads/runs/step_list_params.rbi +2 -2
  1143. data/rbi/openai/models/beta/threads/runs/step_retrieve_params.rbi +2 -2
  1144. data/rbi/openai/models/chat/chat_completion.rbi +27 -21
  1145. data/rbi/openai/models/chat/chat_completion_assistant_message_param.rbi +4 -5
  1146. data/rbi/openai/models/chat/chat_completion_audio.rbi +1 -1
  1147. data/rbi/openai/models/chat/chat_completion_audio_param.rbi +1 -1
  1148. data/rbi/openai/models/chat/chat_completion_chunk.rbi +28 -22
  1149. data/rbi/openai/models/chat/chat_completion_content_part.rbi +3 -4
  1150. data/rbi/openai/models/chat/chat_completion_content_part_image.rbi +5 -4
  1151. data/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi +1 -1
  1152. data/rbi/openai/models/chat/chat_completion_content_part_text.rbi +1 -2
  1153. data/rbi/openai/models/chat/chat_completion_message.rbi +4 -4
  1154. data/rbi/openai/models/chat/chat_completion_store_message.rbi +3 -4
  1155. data/rbi/openai/models/chat/completion_create_params.rbi +95 -85
  1156. data/rbi/openai/models/completion_create_params.rbi +34 -32
  1157. data/rbi/openai/models/conversations/conversation_item.rbi +134 -1
  1158. data/rbi/openai/models/conversations/item_create_params.rbi +2 -2
  1159. data/rbi/openai/models/conversations/item_retrieve_params.rbi +2 -2
  1160. data/rbi/openai/models/embedding.rbi +2 -2
  1161. data/rbi/openai/models/embedding_create_params.rbi +14 -14
  1162. data/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi +5 -5
  1163. data/rbi/openai/models/evals/run_cancel_response.rbi +22 -20
  1164. data/rbi/openai/models/evals/run_create_params.rbi +22 -20
  1165. data/rbi/openai/models/evals/run_create_response.rbi +22 -20
  1166. data/rbi/openai/models/evals/run_list_response.rbi +22 -20
  1167. data/rbi/openai/models/evals/run_retrieve_response.rbi +22 -20
  1168. data/rbi/openai/models/fine_tuning/alpha/grader_run_params.rbi +10 -8
  1169. data/rbi/openai/models/fine_tuning/fine_tuning_job.rbi +6 -6
  1170. data/rbi/openai/models/fine_tuning/job_create_params.rbi +17 -15
  1171. data/rbi/openai/models/function_definition.rbi +6 -6
  1172. data/rbi/openai/models/graders/score_model_grader.rbi +2 -2
  1173. data/rbi/openai/models/image_create_variation_params.rbi +2 -2
  1174. data/rbi/openai/models/image_edit_params.rbi +2 -2
  1175. data/rbi/openai/models/image_generate_params.rbi +2 -2
  1176. data/rbi/openai/models/live/audio_format.rbi +185 -0
  1177. data/rbi/openai/models/live/built_in_voice.rbi +46 -0
  1178. data/rbi/openai/models/live/client_config.rbi +54 -0
  1179. data/rbi/openai/models/live/client_delegation.rbi +51 -0
  1180. data/rbi/openai/models/live/client_event.rbi +41 -0
  1181. data/rbi/openai/models/live/commentary_append_event.rbi +88 -0
  1182. data/rbi/openai/models/live/commentary_appended_event.rbi +97 -0
  1183. data/rbi/openai/models/live/custom_voice.rbi +46 -0
  1184. data/rbi/openai/models/live/data_channel_config.rbi +119 -0
  1185. data/rbi/openai/models/live/delegation_created_event.rbi +207 -0
  1186. data/rbi/openai/models/live/error.rbi +95 -0
  1187. data/rbi/openai/models/live/error_event.rbi +87 -0
  1188. data/rbi/openai/models/live/fork_client_event.rbi +40 -0
  1189. data/rbi/openai/models/live/fork_server_event.rbi +436 -0
  1190. data/rbi/openai/models/live/fork_session_config.rbi +234 -0
  1191. data/rbi/openai/models/live/fork_session_start_event.rbi +80 -0
  1192. data/rbi/openai/models/live/function_tool.rbi +95 -0
  1193. data/rbi/openai/models/live/info_event.rbi +92 -0
  1194. data/rbi/openai/models/live/initial_item.rbi +661 -0
  1195. data/rbi/openai/models/live/input_audio_append_event.rbi +79 -0
  1196. data/rbi/openai/models/live/input_audio_mute_event.rbi +62 -0
  1197. data/rbi/openai/models/live/input_audio_muted_event.rbi +74 -0
  1198. data/rbi/openai/models/live/input_audio_unmute_event.rbi +62 -0
  1199. data/rbi/openai/models/live/input_audio_unmuted_event.rbi +74 -0
  1200. data/rbi/openai/models/live/input_transcript_delta_event.rbi +115 -0
  1201. data/rbi/openai/models/live/instructions_append_event.rbi +86 -0
  1202. data/rbi/openai/models/live/instructions_appended_event.rbi +97 -0
  1203. data/rbi/openai/models/live/live_create_params.rbi +121 -0
  1204. data/rbi/openai/models/live/live_create_response.rbi +160 -0
  1205. data/rbi/openai/models/live/media_session_config.rbi +390 -0
  1206. data/rbi/openai/models/live/media_session_fork_config.rbi +143 -0
  1207. data/rbi/openai/models/live/output_audio_delta_event.rbi +93 -0
  1208. data/rbi/openai/models/live/output_transcript_delta_event.rbi +115 -0
  1209. data/rbi/openai/models/live/response_create_event.rbi +62 -0
  1210. data/rbi/openai/models/live/response_event.rbi +105 -0
  1211. data/rbi/openai/models/live/response_item_create_event.rbi +183 -0
  1212. data/rbi/openai/models/live/responses_delegation_config.rbi +562 -0
  1213. data/rbi/openai/models/live/responses_delegation_update_config.rbi +585 -0
  1214. data/rbi/openai/models/live/server_event.rbi +436 -0
  1215. data/rbi/openai/models/live/server_event_selector.rbi +64 -0
  1216. data/rbi/openai/models/live/session_accept_params.rbi +451 -0
  1217. data/rbi/openai/models/live/session_close_event.rbi +62 -0
  1218. data/rbi/openai/models/live/session_closed_event.rbi +148 -0
  1219. data/rbi/openai/models/live/session_config.rbi +427 -0
  1220. data/rbi/openai/models/live/session_download_recording_params.rbi +57 -0
  1221. data/rbi/openai/models/live/session_fork_params.rbi +131 -0
  1222. data/rbi/openai/models/live/session_fork_response.rbi +160 -0
  1223. data/rbi/openai/models/live/session_hangup_params.rbi +53 -0
  1224. data/rbi/openai/models/live/session_refer_params.rbi +64 -0
  1225. data/rbi/openai/models/live/session_reject_params.rbi +62 -0
  1226. data/rbi/openai/models/live/session_resource.rbi +461 -0
  1227. data/rbi/openai/models/live/session_start_event.rbi +78 -0
  1228. data/rbi/openai/models/live/session_started_event.rbi +86 -0
  1229. data/rbi/openai/models/live/session_update_config.rbi +134 -0
  1230. data/rbi/openai/models/live/session_update_event.rbi +78 -0
  1231. data/rbi/openai/models/live/session_updated_event.rbi +86 -0
  1232. data/rbi/openai/models/live/session_usage.rbi +53 -0
  1233. data/rbi/openai/models/live/session_usage_updated_event.rbi +148 -0
  1234. data/rbi/openai/models/live/thinking_append_event.rbi +88 -0
  1235. data/rbi/openai/models/live/thinking_appended_event.rbi +97 -0
  1236. data/rbi/openai/models/moderation_create_params.rbi +9 -9
  1237. data/rbi/openai/models/realtime/audio_transcription.rbi +2 -2
  1238. data/rbi/openai/models/realtime/call_accept_params.rbi +1 -1
  1239. data/rbi/openai/models/realtime/output_audio_buffer_clear_event.rbi +1 -1
  1240. data/rbi/openai/models/realtime/realtime_audio_config_input.rbi +2 -2
  1241. data/rbi/openai/models/realtime/realtime_response_create_mcp_tool.rbi +4 -4
  1242. data/rbi/openai/models/realtime/realtime_response_create_params.rbi +3 -3
  1243. data/rbi/openai/models/realtime/realtime_server_event.rbi +3 -3
  1244. data/rbi/openai/models/realtime/realtime_session.rbi +4 -4
  1245. data/rbi/openai/models/realtime/realtime_session_create_request.rbi +2 -2
  1246. data/rbi/openai/models/realtime/realtime_session_create_response.rbi +7 -7
  1247. data/rbi/openai/models/realtime/realtime_tools_config_union.rbi +5 -5
  1248. data/rbi/openai/models/realtime/realtime_transcription_session_audio_input.rbi +2 -2
  1249. data/rbi/openai/models/reasoning.rbi +3 -3
  1250. data/rbi/openai/models/reasoning_effort.rbi +1 -1
  1251. data/rbi/openai/models/response_format_json_schema.rbi +3 -3
  1252. data/rbi/openai/models/response_format_text_grammar.rbi +1 -1
  1253. data/rbi/openai/models/response_format_text_python.rbi +1 -1
  1254. data/rbi/openai/models/responses/computer_tool.rbi +1 -1
  1255. data/rbi/openai/models/responses/computer_use_preview_tool.rbi +1 -1
  1256. data/rbi/openai/models/responses/custom_tool.rbi +1 -1
  1257. data/rbi/openai/models/responses/file_search_tool.rbi +1 -1
  1258. data/rbi/openai/models/responses/function_tool.rbi +1 -1
  1259. data/rbi/openai/models/responses/input_token_count_params.rbi +16 -16
  1260. data/rbi/openai/models/responses/response.rbi +66 -58
  1261. data/rbi/openai/models/responses/response_compact_params.rbi +44 -44
  1262. data/rbi/openai/models/responses/response_compaction_item.rbi +1 -1
  1263. data/rbi/openai/models/responses/response_compaction_item_param.rbi +1 -1
  1264. data/rbi/openai/models/responses/response_computer_tool_call.rbi +1 -1
  1265. data/rbi/openai/models/responses/response_create_params.rbi +86 -78
  1266. data/rbi/openai/models/responses/response_file_search_tool_call.rbi +1 -1
  1267. data/rbi/openai/models/responses/response_format_text_config.rbi +1 -1
  1268. data/rbi/openai/models/responses/response_format_text_json_schema_config.rbi +3 -3
  1269. data/rbi/openai/models/responses/response_function_tool_call.rbi +1 -1
  1270. data/rbi/openai/models/responses/response_function_tool_call_item.rbi +1 -1
  1271. data/rbi/openai/models/responses/response_function_web_search.rbi +2 -2
  1272. data/rbi/openai/models/responses/response_input_image.rbi +1 -1
  1273. data/rbi/openai/models/responses/response_input_image_content.rbi +1 -1
  1274. data/rbi/openai/models/responses/response_input_item.rbi +113 -0
  1275. data/rbi/openai/models/responses/response_item.rbi +105 -0
  1276. data/rbi/openai/models/responses/response_output_item.rbi +125 -0
  1277. data/rbi/openai/models/responses/response_prompt.rbi +1 -1
  1278. data/rbi/openai/models/responses/response_reasoning_item.rbi +1 -1
  1279. data/rbi/openai/models/responses/response_text_config.rbi +4 -4
  1280. data/rbi/openai/models/responses/response_usage.rbi +2 -2
  1281. data/rbi/openai/models/responses/responses_client_event.rbi +88 -80
  1282. data/rbi/openai/models/responses/tool.rbi +4 -4
  1283. data/rbi/openai/models/responses/tool_choice_types.rbi +4 -4
  1284. data/rbi/openai/models/responses/web_search_preview_tool.rbi +1 -1
  1285. data/rbi/openai/models/responses/web_search_tool.rbi +1 -1
  1286. data/rbi/openai/models/upload.rbi +2 -2
  1287. data/rbi/openai/models/upload_create_params.rbi +2 -2
  1288. data/rbi/openai/models/vector_store_create_params.rbi +6 -6
  1289. data/rbi/openai/models/vector_stores/file_batch_create_params.rbi +18 -18
  1290. data/rbi/openai/models/vector_stores/file_create_params.rbi +6 -6
  1291. data/rbi/openai/models/vector_stores/vector_store_file.rbi +4 -4
  1292. data/rbi/openai/models/vector_stores/vector_store_file_batch.rbi +4 -4
  1293. data/rbi/openai/models/webhooks/live_call_incoming_webhook_event.rbi +17 -9
  1294. data/rbi/openai/models/webhooks/live_transport_incoming_webhook_event.rbi +226 -0
  1295. data/rbi/openai/models/webhooks/realtime_call_incoming_webhook_event.rbi +10 -6
  1296. data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +1 -0
  1297. data/rbi/openai/models.rbi +2 -0
  1298. data/rbi/openai/resources/admin/organization/audit_logs.rbi +1 -1
  1299. data/rbi/openai/resources/admin/organization/projects/service_accounts.rbi +7 -0
  1300. data/rbi/openai/resources/admin/organization/projects.rbi +2 -2
  1301. data/rbi/openai/resources/audio/speech.rbi +3 -2
  1302. data/rbi/openai/resources/audio/transcriptions.rbi +2 -2
  1303. data/rbi/openai/resources/audio/translations.rbi +1 -1
  1304. data/rbi/openai/resources/batches.rbi +3 -2
  1305. data/rbi/openai/resources/beta/assistants.rbi +18 -18
  1306. data/rbi/openai/resources/beta/responses/input_tokens.rbi +6 -6
  1307. data/rbi/openai/resources/beta/responses.rbi +108 -102
  1308. data/rbi/openai/resources/beta/threads/messages.rbi +9 -6
  1309. data/rbi/openai/resources/beta/threads/runs/steps.rbi +2 -2
  1310. data/rbi/openai/resources/beta/threads/runs.rbi +37 -33
  1311. data/rbi/openai/resources/beta/threads.rbi +27 -24
  1312. data/rbi/openai/resources/chat/completions.rbi +90 -82
  1313. data/rbi/openai/resources/completions.rbi +30 -28
  1314. data/rbi/openai/resources/content_provenance_checks.rbi +1 -1
  1315. data/rbi/openai/resources/conversations/items.rbi +2 -2
  1316. data/rbi/openai/resources/embeddings.rbi +5 -5
  1317. data/rbi/openai/resources/evals.rbi +1 -1
  1318. data/rbi/openai/resources/files.rbi +5 -5
  1319. data/rbi/openai/resources/fine_tuning/alpha/graders.rbi +5 -4
  1320. data/rbi/openai/resources/fine_tuning/checkpoints/permissions.rbi +8 -4
  1321. data/rbi/openai/resources/fine_tuning/jobs.rbi +10 -9
  1322. data/rbi/openai/resources/images.rbi +7 -7
  1323. data/rbi/openai/resources/live/forks.rbi +19 -0
  1324. data/rbi/openai/resources/live/sessions.rbi +110 -0
  1325. data/rbi/openai/resources/live/sideband.rbi +19 -0
  1326. data/rbi/openai/resources/live.rbi +43 -0
  1327. data/rbi/openai/resources/moderations.rbi +5 -4
  1328. data/rbi/openai/resources/realtime/calls.rbi +6 -6
  1329. data/rbi/openai/resources/realtime/client_secrets.rbi +1 -1
  1330. data/rbi/openai/resources/responses/input_tokens.rbi +6 -6
  1331. data/rbi/openai/resources/responses.rbi +183 -140
  1332. data/rbi/openai/resources/uploads/parts.rbi +5 -4
  1333. data/rbi/openai/resources/uploads.rbi +10 -10
  1334. data/rbi/openai/resources/vector_stores/file_batches.rbi +6 -6
  1335. data/rbi/openai/resources/vector_stores/files.rbi +6 -6
  1336. data/rbi/openai/resources/vector_stores.rbi +3 -3
  1337. data/rbi/openai/resources/webhooks.rbi +1 -0
  1338. data/sig/openai/client.rbs +2 -0
  1339. data/sig/openai/models/admin/organization/projects/project_api_key.rbs +7 -2
  1340. data/sig/openai/models/admin/organization/projects/service_account_create_params.rbs +5 -0
  1341. data/sig/openai/models/admin/organization/projects/service_account_create_response.rbs +7 -2
  1342. data/sig/openai/models/beta/beta_response_input_item.rbs +56 -0
  1343. data/sig/openai/models/beta/beta_response_item.rbs +56 -0
  1344. data/sig/openai/models/beta/beta_response_output_item.rbs +56 -0
  1345. data/sig/openai/models/conversations/conversation_item.rbs +56 -0
  1346. data/sig/openai/models/live/audio_format.rbs +73 -0
  1347. data/sig/openai/models/live/built_in_voice.rbs +58 -0
  1348. data/sig/openai/models/live/client_config.rbs +15 -0
  1349. data/sig/openai/models/live/client_delegation.rbs +15 -0
  1350. data/sig/openai/models/live/client_event.rbs +24 -0
  1351. data/sig/openai/models/live/commentary_append_event.rbs +37 -0
  1352. data/sig/openai/models/live/commentary_appended_event.rbs +44 -0
  1353. data/sig/openai/models/live/custom_voice.rbs +15 -0
  1354. data/sig/openai/models/live/data_channel_config.rbs +56 -0
  1355. data/sig/openai/models/live/delegation_created_event.rbs +89 -0
  1356. data/sig/openai/models/live/error.rbs +46 -0
  1357. data/sig/openai/models/live/error_event.rbs +39 -0
  1358. data/sig/openai/models/live/fork_client_event.rbs +24 -0
  1359. data/sig/openai/models/live/fork_server_event.rbs +212 -0
  1360. data/sig/openai/models/live/fork_session_config.rbs +89 -0
  1361. data/sig/openai/models/live/fork_session_start_event.rbs +32 -0
  1362. data/sig/openai/models/live/function_tool.rbs +42 -0
  1363. data/sig/openai/models/live/info_event.rbs +44 -0
  1364. data/sig/openai/models/live/initial_item.rbs +332 -0
  1365. data/sig/openai/models/live/input_audio_append_event.rbs +32 -0
  1366. data/sig/openai/models/live/input_audio_mute_event.rbs +24 -0
  1367. data/sig/openai/models/live/input_audio_muted_event.rbs +34 -0
  1368. data/sig/openai/models/live/input_audio_unmute_event.rbs +24 -0
  1369. data/sig/openai/models/live/input_audio_unmuted_event.rbs +34 -0
  1370. data/sig/openai/models/live/input_transcript_delta_event.rbs +49 -0
  1371. data/sig/openai/models/live/instructions_append_event.rbs +37 -0
  1372. data/sig/openai/models/live/instructions_appended_event.rbs +44 -0
  1373. data/sig/openai/models/live/live_create_params.rbs +45 -0
  1374. data/sig/openai/models/live/live_create_response.rbs +49 -0
  1375. data/sig/openai/models/live/media_session_config.rbs +157 -0
  1376. data/sig/openai/models/live/media_session_fork_config.rbs +66 -0
  1377. data/sig/openai/models/live/output_audio_delta_event.rbs +41 -0
  1378. data/sig/openai/models/live/output_transcript_delta_event.rbs +49 -0
  1379. data/sig/openai/models/live/response_create_event.rbs +18 -0
  1380. data/sig/openai/models/live/response_event.rbs +44 -0
  1381. data/sig/openai/models/live/response_item_create_event.rbs +32 -0
  1382. data/sig/openai/models/live/responses_delegation_config.rbs +244 -0
  1383. data/sig/openai/models/live/responses_delegation_update_config.rbs +246 -0
  1384. data/sig/openai/models/live/server_event.rbs +212 -0
  1385. data/sig/openai/models/live/server_event_selector.rbs +19 -0
  1386. data/sig/openai/models/live/session_accept_params.rbs +185 -0
  1387. data/sig/openai/models/live/session_close_event.rbs +17 -0
  1388. data/sig/openai/models/live/session_closed_event.rbs +68 -0
  1389. data/sig/openai/models/live/session_config.rbs +168 -0
  1390. data/sig/openai/models/live/session_download_recording_params.rbs +25 -0
  1391. data/sig/openai/models/live/session_fork_params.rbs +54 -0
  1392. data/sig/openai/models/live/session_fork_response.rbs +49 -0
  1393. data/sig/openai/models/live/session_hangup_params.rbs +25 -0
  1394. data/sig/openai/models/live/session_refer_params.rbs +33 -0
  1395. data/sig/openai/models/live/session_reject_params.rbs +33 -0
  1396. data/sig/openai/models/live/session_resource.rbs +183 -0
  1397. data/sig/openai/models/live/session_start_event.rbs +32 -0
  1398. data/sig/openai/models/live/session_started_event.rbs +39 -0
  1399. data/sig/openai/models/live/session_update_config.rbs +56 -0
  1400. data/sig/openai/models/live/session_update_event.rbs +32 -0
  1401. data/sig/openai/models/live/session_updated_event.rbs +39 -0
  1402. data/sig/openai/models/live/session_usage.rbs +15 -0
  1403. data/sig/openai/models/live/session_usage_updated_event.rbs +58 -0
  1404. data/sig/openai/models/live/thinking_append_event.rbs +37 -0
  1405. data/sig/openai/models/live/thinking_appended_event.rbs +44 -0
  1406. data/sig/openai/models/responses/response_input_item.rbs +56 -0
  1407. data/sig/openai/models/responses/response_item.rbs +56 -0
  1408. data/sig/openai/models/responses/response_output_item.rbs +56 -0
  1409. data/sig/openai/models/webhooks/live_transport_incoming_webhook_event.rbs +95 -0
  1410. data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +1 -0
  1411. data/sig/openai/models.rbs +2 -0
  1412. data/sig/openai/resources/admin/organization/projects/service_accounts.rbs +1 -0
  1413. data/sig/openai/resources/live/forks.rbs +9 -0
  1414. data/sig/openai/resources/live/sessions.rbs +44 -0
  1415. data/sig/openai/resources/live/sideband.rbs +9 -0
  1416. data/sig/openai/resources/live.rbs +19 -0
  1417. data/sig/openai/resources/webhooks.rbs +1 -0
  1418. metadata +196 -1
@@ -15,103 +15,310 @@ module OpenAI
15
15
 
16
16
  # See {OpenAI::Resources::Chat::Completions#stream_raw} for streaming counterpart.
17
17
  #
18
- # Some parameter documentations has been truncated, see
19
- # {OpenAI::Models::Chat::CompletionCreateParams} for more details.
20
- #
21
18
  # **Starting a new project?** We recommend trying
22
- # [Responses](https://platform.openai.com/docs/api-reference/responses) to take
23
- # advantage of the latest OpenAI platform features. Compare
24
- # [Chat Completions with Responses](https://platform.openai.com/docs/guides/responses-vs-chat-completions?api-mode=responses).
19
+ # [Responses](https://developers.openai.com/api/reference/resources/responses) to
20
+ # take advantage of the latest OpenAI platform features. Compare
21
+ # [Chat Completions with Responses](https://developers.openai.com/api/docs/guides/migrate-to-responses?api-mode=responses).
25
22
  #
26
23
  # ---
27
24
  #
28
25
  # Creates a model response for the given chat conversation. Learn more in the
29
- # [text generation](https://platform.openai.com/docs/guides/text-generation),
30
- # [vision](https://platform.openai.com/docs/guides/vision), and
31
- # [audio](https://platform.openai.com/docs/guides/audio) guides.
26
+ # [text generation](https://developers.openai.com/api/docs/guides/text),
27
+ # [vision](https://developers.openai.com/api/docs/guides/images-vision), and
28
+ # [audio](https://developers.openai.com/api/docs/guides/audio) guides.
32
29
  #
33
30
  # Parameter support can differ depending on the model used to generate the
34
31
  # response, particularly for newer reasoning models. Parameters that are only
35
32
  # supported for reasoning models are noted below. For the current state of
36
33
  # unsupported parameters in reasoning models,
37
- # [refer to the reasoning guide](https://platform.openai.com/docs/guides/reasoning).
34
+ # [refer to the reasoning guide](https://developers.openai.com/api/docs/guides/reasoning).
38
35
  #
39
36
  # Returns a chat completion object, or a streamed sequence of chat completion
40
37
  # chunk objects if the request is streamed.
41
38
  #
42
39
  # @overload create(messages:, model:, audio: nil, frequency_penalty: nil, function_call: nil, functions: nil, logit_bias: nil, logprobs: nil, max_completion_tokens: nil, max_tokens: nil, metadata: nil, modalities: nil, moderation: nil, n: nil, parallel_tool_calls: nil, prediction: nil, presence_penalty: nil, prompt_cache_key: nil, prompt_cache_options: nil, prompt_cache_retention: nil, reasoning_effort: nil, response_format: nil, safety_identifier: nil, seed: nil, service_tier: nil, stop: nil, store: nil, stream_options: nil, temperature: nil, tool_choice: nil, tools: nil, top_logprobs: nil, top_p: nil, user: nil, verbosity: nil, web_search_options: nil, request_options: {})
43
40
  #
44
- # @param messages [Array<OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam, OpenAI::Models::Chat::ChatCompletionSystemMessageParam, OpenAI::Models::Chat::ChatCompletionUserMessageParam, OpenAI::Models::Chat::ChatCompletionAssistantMessageParam, OpenAI::Models::Chat::ChatCompletionToolMessageParam, OpenAI::Models::Chat::ChatCompletionFunctionMessageParam>] A list of messages comprising the conversation so far. Depending on the
45
- #
46
- # @param model [String, Symbol, OpenAI::Models::ChatModel] Model ID used to generate the response, like `gpt-6-astra` or `o3`. OpenAI
47
- #
48
- # @param audio [OpenAI::Models::Chat::ChatCompletionAudioParam, nil] Parameters for audio output. Required when audio output is requested with
49
- #
50
- # @param frequency_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on
51
- #
52
- # @param function_call [Symbol, OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Models::Chat::ChatCompletionFunctionCallOption] Deprecated in favor of `tool_choice`.
53
- #
54
- # @param functions [Array<OpenAI::Models::Chat::CompletionCreateParams::Function>] Deprecated in favor of `tools`.
55
- #
56
- # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion.
57
- #
58
- # @param logprobs [Boolean, nil] Whether to return log probabilities of the output tokens or not. If true,
59
- #
60
- # @param max_completion_tokens [Integer, nil] An upper bound for the number of tokens that can be generated for a completion,
61
- #
62
- # @param max_tokens [Integer, nil] The maximum number of [tokens](/tokenizer) that can be generated in the
63
- #
64
- # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be
65
- #
66
- # @param modalities [Array<Symbol, OpenAI::Models::Chat::CompletionCreateParams::Modality>, nil] Output types that you would like the model to generate.
67
- #
68
- # @param moderation [OpenAI::Models::Chat::CompletionCreateParams::Moderation, nil] Configuration for running moderation on the request input and generated output.
69
- #
70
- # @param n [Integer, nil] How many chat completion choices to generate for each input message. Note that y
71
- #
72
- # @param parallel_tool_calls [Boolean] Whether to enable [parallel function calling](https://platform.openai.com/docs/g
73
- #
74
- # @param prediction [OpenAI::Models::Chat::ChatCompletionPredictionContent, nil] Static predicted output content, such as the content of a text file that is
75
- #
76
- # @param presence_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on
41
+ # @param messages [Array<OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam, OpenAI::Models::Chat::ChatCompletionSystemMessageParam, OpenAI::Models::Chat::ChatCompletionUserMessageParam, OpenAI::Models::Chat::ChatCompletionAssistantMessageParam, OpenAI::Models::Chat::ChatCompletionToolMessageParam, OpenAI::Models::Chat::ChatCompletionFunctionMessageParam>]
42
+ # A list of messages comprising the conversation so far. Depending on the
43
+ # [model](https://developers.openai.com/api/docs/models) you use, different
44
+ # message types (modalities) are supported, like
45
+ # [text](https://developers.openai.com/api/docs/guides/text),
46
+ # [images](https://developers.openai.com/api/docs/guides/images-vision), and
47
+ # [audio](https://developers.openai.com/api/docs/guides/audio).
77
48
  #
78
- # @param prompt_cache_key [String, nil] Used by OpenAI to cache responses for similar requests to optimize your cache hi
49
+ # @param model [String, Symbol, OpenAI::Models::ChatModel]
50
+ # Model ID used to generate the response, like `gpt-6-astra` or `o3`. OpenAI
51
+ # offers a wide range of models with different capabilities, performance
52
+ # characteristics, and price points. Refer to the
53
+ # [model guide](https://developers.openai.com/api/docs/models) to browse and
54
+ # compare available models.
79
55
  #
80
- # @param prompt_cache_options [OpenAI::Models::Chat::CompletionCreateParams::PromptCacheOptions] Options for prompt caching. Supported for `gpt-5.6` and later models. By default
56
+ # @param audio [OpenAI::Models::Chat::ChatCompletionAudioParam, nil]
57
+ # Parameters for audio output. Required when audio output is requested with
58
+ # `modalities: ["audio"]`.
59
+ # [Learn more](https://developers.openai.com/api/docs/guides/audio).
81
60
  #
82
- # @param prompt_cache_retention [Symbol, OpenAI::Models::Chat::CompletionCreateParams::PromptCacheRetention, nil] Deprecated. Use `prompt_cache_options.ttl` instead.
61
+ # @param frequency_penalty [Float, nil]
62
+ # Number between -2.0 and 2.0. Positive values penalize new tokens based on their
63
+ # existing frequency in the text so far, decreasing the model's likelihood to
64
+ # repeat the same line verbatim.
83
65
  #
84
- # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] Constrains effort on reasoning for reasoning models. Currently supported
85
- #
86
- # @param response_format [OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONSchema, OpenAI::Models::ResponseFormatJSONObject] An object specifying the format that the model must output.
87
- #
88
- # @param safety_identifier [String, nil] A stable identifier used to help detect users of your application that may be vi
89
- #
90
- # @param seed [Integer, nil] This feature is in Beta.
91
- #
92
- # @param service_tier [Symbol, OpenAI::Models::Chat::CompletionCreateParams::ServiceTier, nil] Specifies the processing type used for serving the request.
93
- #
94
- # @param stop [String, Array<String>, nil] Not supported with latest reasoning models `o3` and `o4-mini`.
95
- #
96
- # @param store [Boolean, nil] Whether or not to store the output of this chat completion request for
97
- #
98
- # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`.
99
- #
100
- # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m
101
- #
102
- # @param tool_choice [Symbol, OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Models::Chat::ChatCompletionAllowedToolChoice, OpenAI::Models::Chat::ChatCompletionNamedToolChoice, OpenAI::Models::Chat::ChatCompletionNamedToolChoiceCustom] Controls which (if any) tool is called by the model.
103
- #
104
- # @param tools [Array<OpenAI::Models::Chat::ChatCompletionFunctionTool, OpenAI::Models::Chat::ChatCompletionCustomTool>] A list of tools the model may call. You can provide either
105
- #
106
- # @param top_logprobs [Integer, nil] An integer between 0 and 20 specifying the maximum number of most likely
107
- #
108
- # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling,
109
- #
110
- # @param user [String] This field is being replaced by `safety_identifier` and `prompt_cache_key`. Use
111
- #
112
- # @param verbosity [Symbol, OpenAI::Models::Chat::CompletionCreateParams::Verbosity, nil] Constrains the verbosity of the model's response. Lower values will result in
113
- #
114
- # @param web_search_options [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions] This tool searches the web for relevant results to use in a response.
66
+ # @param function_call [Symbol, OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Models::Chat::ChatCompletionFunctionCallOption]
67
+ # Deprecated in favor of `tool_choice`.
68
+ #
69
+ # Controls which (if any) function is called by the model.
70
+ #
71
+ # `none` means the model will not call a function and instead generates a message.
72
+ #
73
+ # `auto` means the model can pick between generating a message or calling a
74
+ # function.
75
+ #
76
+ # Specifying a particular function via `{"name": "my_function"}` forces the model
77
+ # to call that function.
78
+ #
79
+ # `none` is the default when no functions are present. `auto` is the default if
80
+ # functions are present.
81
+ #
82
+ # @param functions [Array<OpenAI::Models::Chat::CompletionCreateParams::Function>]
83
+ # Deprecated in favor of `tools`.
84
+ #
85
+ # A list of functions the model may generate JSON inputs for.
86
+ #
87
+ # @param logit_bias [Hash{Symbol=>Integer}, nil]
88
+ # Modify the likelihood of specified tokens appearing in the completion.
89
+ #
90
+ # Accepts a JSON object that maps tokens (specified by their token ID in the
91
+ # tokenizer) to an associated bias value from -100 to 100. Mathematically, the
92
+ # bias is added to the logits generated by the model prior to sampling. The exact
93
+ # effect will vary per model, but values between -1 and 1 should decrease or
94
+ # increase likelihood of selection; values like -100 or 100 should result in a ban
95
+ # or exclusive selection of the relevant token.
96
+ #
97
+ # @param logprobs [Boolean, nil]
98
+ # Whether to return log probabilities of the output tokens or not. If true,
99
+ # returns the log probabilities of each output token returned in the `content` of
100
+ # `message`.
101
+ #
102
+ # @param max_completion_tokens [Integer, nil]
103
+ # An upper bound for the number of tokens that can be generated for a completion,
104
+ # including visible output tokens and
105
+ # [reasoning tokens](https://developers.openai.com/api/docs/guides/reasoning).
106
+ #
107
+ # @param max_tokens [Integer, nil]
108
+ # The maximum number of [tokens](https://platform.openai.com/tokenizer) that can
109
+ # be generated in the chat completion. This value can be used to control
110
+ # [costs](https://openai.com/api/pricing/) for text generated via API.
111
+ #
112
+ # This value is now deprecated in favor of `max_completion_tokens`, and is not
113
+ # compatible with
114
+ # [o-series models](https://developers.openai.com/api/docs/guides/reasoning).
115
+ #
116
+ # @param metadata [Hash{Symbol=>String}, nil]
117
+ # Set of 16 key-value pairs that can be attached to an object. This can be useful
118
+ # for storing additional information about the object in a structured format, and
119
+ # querying for objects via API or the dashboard.
120
+ #
121
+ # Keys are strings with a maximum length of 64 characters. Values are strings with
122
+ # a maximum length of 512 characters.
123
+ #
124
+ # @param modalities [Array<Symbol, OpenAI::Models::Chat::CompletionCreateParams::Modality>, nil]
125
+ # Output types that you would like the model to generate. Most models are capable
126
+ # of generating text, which is the default:
127
+ #
128
+ # `["text"]`
129
+ #
130
+ # The `gpt-4o-audio-preview` model can also be used to
131
+ # [generate audio](https://developers.openai.com/api/docs/guides/audio). To
132
+ # request that this model generate both text and audio responses, you can use:
133
+ #
134
+ # `["text", "audio"]`
135
+ #
136
+ # @param moderation [OpenAI::Models::Chat::CompletionCreateParams::Moderation, nil]
137
+ # Configuration for running moderation on the request input and generated output.
138
+ #
139
+ # @param n [Integer, nil]
140
+ # How many chat completion choices to generate for each input message. Note that
141
+ # you will be charged based on the number of generated tokens across all of the
142
+ # choices. Keep `n` as `1` to minimize costs.
143
+ #
144
+ # @param parallel_tool_calls [Boolean]
145
+ # Whether to enable
146
+ # [parallel function calling](https://developers.openai.com/api/docs/guides/function-calling#parallel-function-calling)
147
+ # during tool use.
148
+ #
149
+ # @param prediction [OpenAI::Models::Chat::ChatCompletionPredictionContent, nil]
150
+ # Static predicted output content, such as the content of a text file that is
151
+ # being regenerated.
152
+ #
153
+ # @param presence_penalty [Float, nil]
154
+ # Number between -2.0 and 2.0. Positive values penalize new tokens based on
155
+ # whether they appear in the text so far, increasing the model's likelihood to
156
+ # talk about new topics.
157
+ #
158
+ # @param prompt_cache_key [String, nil]
159
+ # Used by OpenAI to cache responses for similar requests to optimize your cache
160
+ # hit rates. Replaces the `user` field.
161
+ # [Learn more](https://developers.openai.com/api/docs/guides/prompt-caching).
162
+ #
163
+ # @param prompt_cache_options [OpenAI::Models::Chat::CompletionCreateParams::PromptCacheOptions]
164
+ # Options for prompt caching. Supported for `gpt-5.6` and later models. By
165
+ # default, OpenAI automatically chooses one implicit cache breakpoint. You can add
166
+ # explicit breakpoints to content blocks with `prompt_cache_breakpoint`. Each
167
+ # request can write up to four breakpoints. For cache matching, OpenAI considers
168
+ # up to the latest 80 breakpoints in the conversation, without a content-block
169
+ # lookback limit. Set `mode` to `explicit` to disable the implicit breakpoint. The
170
+ # `ttl` defaults to `30m`, which is currently the only supported value. See the
171
+ # [prompt caching guide](https://developers.openai.com/api/docs/guides/prompt-caching)
172
+ # for current details.
173
+ #
174
+ # @param prompt_cache_retention [Symbol, OpenAI::Models::Chat::CompletionCreateParams::PromptCacheRetention, nil]
175
+ # Deprecated. Use `prompt_cache_options.ttl` instead.
176
+ #
177
+ # The retention policy for the prompt cache. Set to `24h` to enable extended
178
+ # prompt caching, which keeps cached prefixes active for longer, up to a maximum
179
+ # of 24 hours.
180
+ # [Learn more](https://developers.openai.com/api/docs/guides/prompt-caching#prompt-cache-retention).
181
+ # This field expresses a maximum retention policy, while
182
+ # `prompt_cache_options.ttl` expresses a minimum cache lifetime. The two fields
183
+ # are independent and do not interact. For `gpt-5.5`, `gpt-5.5-pro`, and future
184
+ # models, only `24h` is supported.
185
+ #
186
+ # For older models that support both `in_memory` and `24h`, the default depends on
187
+ # your organization's data retention policy:
188
+ #
189
+ # - Organizations without ZDR enabled default to `24h`.
190
+ # - Organizations with ZDR enabled default to `in_memory` when
191
+ # `prompt_cache_retention` is not specified.
192
+ #
193
+ # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil]
194
+ # Constrains effort on reasoning for reasoning models. Currently supported values
195
+ # are `none`, `minimal`, `low`, `medium`, `high`, `xhigh`, and `max`. Reducing
196
+ # reasoning effort can result in faster responses and fewer tokens used on
197
+ # reasoning in a response. Not all reasoning models support every value. See the
198
+ # [reasoning guide](https://developers.openai.com/api/docs/guides/reasoning) for
199
+ # model-specific support.
200
+ #
201
+ # @param response_format [OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONSchema, OpenAI::Models::ResponseFormatJSONObject]
202
+ # An object specifying the format that the model must output.
203
+ #
204
+ # Setting to `{ "type": "json_schema", "json_schema": {...} }` enables Structured
205
+ # Outputs which ensures the model will match your supplied JSON schema. Learn more
206
+ # in the
207
+ # [Structured Outputs guide](https://developers.openai.com/api/docs/guides/structured-outputs).
208
+ #
209
+ # Setting to `{ "type": "json_object" }` enables the older JSON mode, which
210
+ # ensures the message the model generates is valid JSON. Using `json_schema` is
211
+ # preferred for models that support it.
212
+ #
213
+ # @param safety_identifier [String, nil]
214
+ # A stable identifier used to help detect users of your application that may be
215
+ # violating OpenAI's usage policies. The IDs should be a string that uniquely
216
+ # identifies each user, with a maximum length of 64 characters. We recommend
217
+ # hashing their username or email address, in order to avoid sending us any
218
+ # identifying information.
219
+ # [Learn more](https://developers.openai.com/api/docs/guides/safety-best-practices#implement-safety-identifiers).
220
+ #
221
+ # @param seed [Integer, nil]
222
+ # This feature is in Beta. If specified, our system will make a best effort to
223
+ # sample deterministically, such that repeated requests with the same `seed` and
224
+ # parameters should return the same result. Determinism is not guaranteed, and you
225
+ # should refer to the `system_fingerprint` response parameter to monitor changes
226
+ # in the backend.
227
+ #
228
+ # @param service_tier [Symbol, OpenAI::Models::Chat::CompletionCreateParams::ServiceTier, nil]
229
+ # Specifies the processing type used for serving the request.
230
+ #
231
+ # - If set to 'auto', then the request will be processed with the service tier
232
+ # configured in the Project settings. Unless otherwise configured, the Project
233
+ # will use 'default'.
234
+ # - If set to 'default', then the request will be processed with the standard
235
+ # pricing and performance for the selected model.
236
+ # - If set to
237
+ # '[flex](https://developers.openai.com/api/docs/guides/flex-processing)', then
238
+ # the request will be processed with the Flex Processing service tier.
239
+ # - To opt-in to
240
+ # [Fast mode](https://developers.openai.com/api/docs/guides/fast-mode) at the
241
+ # request level, include the `service_tier=fast` or `service_tier=priority`
242
+ # parameter for Responses or Chat Completions. The response will show
243
+ # `service_tier=priority` regardless of if you specify `service_tier=fast` or
244
+ # `priority` in your request.
245
+ # - When not set, the default behavior is 'auto'.
246
+ #
247
+ # When the `service_tier` parameter is set, the response body will include the
248
+ # `service_tier` value based on the processing mode actually used to serve the
249
+ # request. This response value may be different from the value set in the
250
+ # parameter.
251
+ #
252
+ # @param stop [String, Array<String>, nil]
253
+ # Not supported with latest reasoning models `o3` and `o4-mini`.
254
+ #
255
+ # Up to 4 sequences where the API will stop generating further tokens. The
256
+ # returned text will not contain the stop sequence.
257
+ #
258
+ # @param store [Boolean, nil]
259
+ # Whether or not to store the output of this chat completion request for use in
260
+ # our
261
+ # [model distillation](https://developers.openai.com/api/docs/guides/supervised-fine-tuning#distilling-from-a-larger-model)
262
+ # or [evals](https://developers.openai.com/api/docs/guides/evals) products.
263
+ #
264
+ # Supports text and image inputs. Note: image inputs over 8MB will be dropped.
265
+ #
266
+ # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil]
267
+ # Options for streaming response. Only set this when you set `stream: true`.
268
+ #
269
+ # @param temperature [Float, nil]
270
+ # What sampling temperature to use, between 0 and 2. Higher values like 0.8 will
271
+ # make the output more random, while lower values like 0.2 will make it more
272
+ # focused and deterministic. We generally recommend altering this or `top_p` but
273
+ # not both.
274
+ #
275
+ # @param tool_choice [Symbol, OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Models::Chat::ChatCompletionAllowedToolChoice, OpenAI::Models::Chat::ChatCompletionNamedToolChoice, OpenAI::Models::Chat::ChatCompletionNamedToolChoiceCustom]
276
+ # Controls which (if any) tool is called by the model. `none` means the model will
277
+ # not call any tool and instead generates a message. `auto` means the model can
278
+ # pick between generating a message or calling one or more tools. `required` means
279
+ # the model must call one or more tools. Specifying a particular tool via
280
+ # `{"type": "function", "function": {"name": "my_function"}}` forces the model to
281
+ # call that tool.
282
+ #
283
+ # `none` is the default when no tools are present. `auto` is the default if tools
284
+ # are present.
285
+ #
286
+ # @param tools [Array<OpenAI::Models::Chat::ChatCompletionFunctionTool, OpenAI::Models::Chat::ChatCompletionCustomTool>]
287
+ # A list of tools the model may call. You can provide either
288
+ # [custom tools](https://developers.openai.com/api/docs/guides/function-calling#custom-tools)
289
+ # or
290
+ # [function tools](https://developers.openai.com/api/docs/guides/function-calling).
291
+ #
292
+ # @param top_logprobs [Integer, nil]
293
+ # An integer between 0 and 20 specifying the maximum number of most likely tokens
294
+ # to return at each token position, each with an associated log probability. In
295
+ # some cases, the number of returned tokens may be fewer than requested.
296
+ # `logprobs` must be set to `true` if this parameter is used.
297
+ #
298
+ # @param top_p [Float, nil]
299
+ # An alternative to sampling with temperature, called nucleus sampling, where the
300
+ # model considers the results of the tokens with top_p probability mass. So 0.1
301
+ # means only the tokens comprising the top 10% probability mass are considered.
302
+ #
303
+ # We generally recommend altering this or `temperature` but not both.
304
+ #
305
+ # @param user [String]
306
+ # This field is being replaced by `safety_identifier` and `prompt_cache_key`. Use
307
+ # `prompt_cache_key` instead to maintain caching optimizations. A stable
308
+ # identifier for your end-users. Used to boost cache hit rates by better bucketing
309
+ # similar requests and to help OpenAI detect and prevent abuse.
310
+ # [Learn more](https://developers.openai.com/api/docs/guides/safety-best-practices#implement-safety-identifiers).
311
+ #
312
+ # @param verbosity [Symbol, OpenAI::Models::Chat::CompletionCreateParams::Verbosity, nil]
313
+ # Constrains the verbosity of the model's response. Lower values will result in
314
+ # more concise responses, while higher values will result in more verbose
315
+ # responses. Currently supported values are `low`, `medium`, and `high`. The
316
+ # default is `medium`.
317
+ #
318
+ # @param web_search_options [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions]
319
+ # This tool searches the web for relevant results to use in a response. Learn more
320
+ # about the
321
+ # [web search tool](https://developers.openai.com/api/docs/guides/tools-web-search).
115
322
  #
116
323
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
117
324
  #
@@ -177,103 +384,310 @@ module OpenAI
177
384
 
178
385
  # See {OpenAI::Resources::Chat::Completions#create} for non-streaming counterpart.
179
386
  #
180
- # Some parameter documentations has been truncated, see
181
- # {OpenAI::Models::Chat::CompletionCreateParams} for more details.
182
- #
183
387
  # **Starting a new project?** We recommend trying
184
- # [Responses](https://platform.openai.com/docs/api-reference/responses) to take
185
- # advantage of the latest OpenAI platform features. Compare
186
- # [Chat Completions with Responses](https://platform.openai.com/docs/guides/responses-vs-chat-completions?api-mode=responses).
388
+ # [Responses](https://developers.openai.com/api/reference/resources/responses) to
389
+ # take advantage of the latest OpenAI platform features. Compare
390
+ # [Chat Completions with Responses](https://developers.openai.com/api/docs/guides/migrate-to-responses?api-mode=responses).
187
391
  #
188
392
  # ---
189
393
  #
190
394
  # Creates a model response for the given chat conversation. Learn more in the
191
- # [text generation](https://platform.openai.com/docs/guides/text-generation),
192
- # [vision](https://platform.openai.com/docs/guides/vision), and
193
- # [audio](https://platform.openai.com/docs/guides/audio) guides.
395
+ # [text generation](https://developers.openai.com/api/docs/guides/text),
396
+ # [vision](https://developers.openai.com/api/docs/guides/images-vision), and
397
+ # [audio](https://developers.openai.com/api/docs/guides/audio) guides.
194
398
  #
195
399
  # Parameter support can differ depending on the model used to generate the
196
400
  # response, particularly for newer reasoning models. Parameters that are only
197
401
  # supported for reasoning models are noted below. For the current state of
198
402
  # unsupported parameters in reasoning models,
199
- # [refer to the reasoning guide](https://platform.openai.com/docs/guides/reasoning).
403
+ # [refer to the reasoning guide](https://developers.openai.com/api/docs/guides/reasoning).
200
404
  #
201
405
  # Returns a chat completion object, or a streamed sequence of chat completion
202
406
  # chunk objects if the request is streamed.
203
407
  #
204
408
  # @overload stream_raw(messages:, model:, audio: nil, frequency_penalty: nil, function_call: nil, functions: nil, logit_bias: nil, logprobs: nil, max_completion_tokens: nil, max_tokens: nil, metadata: nil, modalities: nil, moderation: nil, n: nil, parallel_tool_calls: nil, prediction: nil, presence_penalty: nil, prompt_cache_key: nil, prompt_cache_options: nil, prompt_cache_retention: nil, reasoning_effort: nil, response_format: nil, safety_identifier: nil, seed: nil, service_tier: nil, stop: nil, store: nil, stream_options: nil, temperature: nil, tool_choice: nil, tools: nil, top_logprobs: nil, top_p: nil, user: nil, verbosity: nil, web_search_options: nil, request_options: {})
205
409
  #
206
- # @param messages [Array<OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam, OpenAI::Models::Chat::ChatCompletionSystemMessageParam, OpenAI::Models::Chat::ChatCompletionUserMessageParam, OpenAI::Models::Chat::ChatCompletionAssistantMessageParam, OpenAI::Models::Chat::ChatCompletionToolMessageParam, OpenAI::Models::Chat::ChatCompletionFunctionMessageParam>] A list of messages comprising the conversation so far. Depending on the
207
- #
208
- # @param model [String, Symbol, OpenAI::Models::ChatModel] Model ID used to generate the response, like `gpt-6-astra` or `o3`. OpenAI
410
+ # @param messages [Array<OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam, OpenAI::Models::Chat::ChatCompletionSystemMessageParam, OpenAI::Models::Chat::ChatCompletionUserMessageParam, OpenAI::Models::Chat::ChatCompletionAssistantMessageParam, OpenAI::Models::Chat::ChatCompletionToolMessageParam, OpenAI::Models::Chat::ChatCompletionFunctionMessageParam>]
411
+ # A list of messages comprising the conversation so far. Depending on the
412
+ # [model](https://developers.openai.com/api/docs/models) you use, different
413
+ # message types (modalities) are supported, like
414
+ # [text](https://developers.openai.com/api/docs/guides/text),
415
+ # [images](https://developers.openai.com/api/docs/guides/images-vision), and
416
+ # [audio](https://developers.openai.com/api/docs/guides/audio).
209
417
  #
210
- # @param audio [OpenAI::Models::Chat::ChatCompletionAudioParam, nil] Parameters for audio output. Required when audio output is requested with
418
+ # @param model [String, Symbol, OpenAI::Models::ChatModel]
419
+ # Model ID used to generate the response, like `gpt-6-astra` or `o3`. OpenAI
420
+ # offers a wide range of models with different capabilities, performance
421
+ # characteristics, and price points. Refer to the
422
+ # [model guide](https://developers.openai.com/api/docs/models) to browse and
423
+ # compare available models.
211
424
  #
212
- # @param frequency_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on
425
+ # @param audio [OpenAI::Models::Chat::ChatCompletionAudioParam, nil]
426
+ # Parameters for audio output. Required when audio output is requested with
427
+ # `modalities: ["audio"]`.
428
+ # [Learn more](https://developers.openai.com/api/docs/guides/audio).
213
429
  #
214
- # @param function_call [Symbol, OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Models::Chat::ChatCompletionFunctionCallOption] Deprecated in favor of `tool_choice`.
430
+ # @param frequency_penalty [Float, nil]
431
+ # Number between -2.0 and 2.0. Positive values penalize new tokens based on their
432
+ # existing frequency in the text so far, decreasing the model's likelihood to
433
+ # repeat the same line verbatim.
215
434
  #
216
- # @param functions [Array<OpenAI::Models::Chat::CompletionCreateParams::Function>] Deprecated in favor of `tools`.
217
- #
218
- # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion.
219
- #
220
- # @param logprobs [Boolean, nil] Whether to return log probabilities of the output tokens or not. If true,
221
- #
222
- # @param max_completion_tokens [Integer, nil] An upper bound for the number of tokens that can be generated for a completion,
223
- #
224
- # @param max_tokens [Integer, nil] The maximum number of [tokens](/tokenizer) that can be generated in the
225
- #
226
- # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be
227
- #
228
- # @param modalities [Array<Symbol, OpenAI::Models::Chat::CompletionCreateParams::Modality>, nil] Output types that you would like the model to generate.
229
- #
230
- # @param moderation [OpenAI::Models::Chat::CompletionCreateParams::Moderation, nil] Configuration for running moderation on the request input and generated output.
231
- #
232
- # @param n [Integer, nil] How many chat completion choices to generate for each input message. Note that y
233
- #
234
- # @param parallel_tool_calls [Boolean] Whether to enable [parallel function calling](https://platform.openai.com/docs/g
235
- #
236
- # @param prediction [OpenAI::Models::Chat::ChatCompletionPredictionContent, nil] Static predicted output content, such as the content of a text file that is
237
- #
238
- # @param presence_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on
239
- #
240
- # @param prompt_cache_key [String, nil] Used by OpenAI to cache responses for similar requests to optimize your cache hi
241
- #
242
- # @param prompt_cache_options [OpenAI::Models::Chat::CompletionCreateParams::PromptCacheOptions] Options for prompt caching. Supported for `gpt-5.6` and later models. By default
243
- #
244
- # @param prompt_cache_retention [Symbol, OpenAI::Models::Chat::CompletionCreateParams::PromptCacheRetention, nil] Deprecated. Use `prompt_cache_options.ttl` instead.
245
- #
246
- # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] Constrains effort on reasoning for reasoning models. Currently supported
247
- #
248
- # @param response_format [OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONSchema, OpenAI::Models::ResponseFormatJSONObject] An object specifying the format that the model must output.
249
- #
250
- # @param safety_identifier [String, nil] A stable identifier used to help detect users of your application that may be vi
251
- #
252
- # @param seed [Integer, nil] This feature is in Beta.
253
- #
254
- # @param service_tier [Symbol, OpenAI::Models::Chat::CompletionCreateParams::ServiceTier, nil] Specifies the processing type used for serving the request.
255
- #
256
- # @param stop [String, Array<String>, nil] Not supported with latest reasoning models `o3` and `o4-mini`.
257
- #
258
- # @param store [Boolean, nil] Whether or not to store the output of this chat completion request for
259
- #
260
- # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`.
261
- #
262
- # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m
263
- #
264
- # @param tool_choice [Symbol, OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Models::Chat::ChatCompletionAllowedToolChoice, OpenAI::Models::Chat::ChatCompletionNamedToolChoice, OpenAI::Models::Chat::ChatCompletionNamedToolChoiceCustom] Controls which (if any) tool is called by the model.
265
- #
266
- # @param tools [Array<OpenAI::Models::Chat::ChatCompletionFunctionTool, OpenAI::Models::Chat::ChatCompletionCustomTool>] A list of tools the model may call. You can provide either
267
- #
268
- # @param top_logprobs [Integer, nil] An integer between 0 and 20 specifying the maximum number of most likely
269
- #
270
- # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling,
271
- #
272
- # @param user [String] This field is being replaced by `safety_identifier` and `prompt_cache_key`. Use
273
- #
274
- # @param verbosity [Symbol, OpenAI::Models::Chat::CompletionCreateParams::Verbosity, nil] Constrains the verbosity of the model's response. Lower values will result in
275
- #
276
- # @param web_search_options [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions] This tool searches the web for relevant results to use in a response.
435
+ # @param function_call [Symbol, OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Models::Chat::ChatCompletionFunctionCallOption]
436
+ # Deprecated in favor of `tool_choice`.
437
+ #
438
+ # Controls which (if any) function is called by the model.
439
+ #
440
+ # `none` means the model will not call a function and instead generates a message.
441
+ #
442
+ # `auto` means the model can pick between generating a message or calling a
443
+ # function.
444
+ #
445
+ # Specifying a particular function via `{"name": "my_function"}` forces the model
446
+ # to call that function.
447
+ #
448
+ # `none` is the default when no functions are present. `auto` is the default if
449
+ # functions are present.
450
+ #
451
+ # @param functions [Array<OpenAI::Models::Chat::CompletionCreateParams::Function>]
452
+ # Deprecated in favor of `tools`.
453
+ #
454
+ # A list of functions the model may generate JSON inputs for.
455
+ #
456
+ # @param logit_bias [Hash{Symbol=>Integer}, nil]
457
+ # Modify the likelihood of specified tokens appearing in the completion.
458
+ #
459
+ # Accepts a JSON object that maps tokens (specified by their token ID in the
460
+ # tokenizer) to an associated bias value from -100 to 100. Mathematically, the
461
+ # bias is added to the logits generated by the model prior to sampling. The exact
462
+ # effect will vary per model, but values between -1 and 1 should decrease or
463
+ # increase likelihood of selection; values like -100 or 100 should result in a ban
464
+ # or exclusive selection of the relevant token.
465
+ #
466
+ # @param logprobs [Boolean, nil]
467
+ # Whether to return log probabilities of the output tokens or not. If true,
468
+ # returns the log probabilities of each output token returned in the `content` of
469
+ # `message`.
470
+ #
471
+ # @param max_completion_tokens [Integer, nil]
472
+ # An upper bound for the number of tokens that can be generated for a completion,
473
+ # including visible output tokens and
474
+ # [reasoning tokens](https://developers.openai.com/api/docs/guides/reasoning).
475
+ #
476
+ # @param max_tokens [Integer, nil]
477
+ # The maximum number of [tokens](https://platform.openai.com/tokenizer) that can
478
+ # be generated in the chat completion. This value can be used to control
479
+ # [costs](https://openai.com/api/pricing/) for text generated via API.
480
+ #
481
+ # This value is now deprecated in favor of `max_completion_tokens`, and is not
482
+ # compatible with
483
+ # [o-series models](https://developers.openai.com/api/docs/guides/reasoning).
484
+ #
485
+ # @param metadata [Hash{Symbol=>String}, nil]
486
+ # Set of 16 key-value pairs that can be attached to an object. This can be useful
487
+ # for storing additional information about the object in a structured format, and
488
+ # querying for objects via API or the dashboard.
489
+ #
490
+ # Keys are strings with a maximum length of 64 characters. Values are strings with
491
+ # a maximum length of 512 characters.
492
+ #
493
+ # @param modalities [Array<Symbol, OpenAI::Models::Chat::CompletionCreateParams::Modality>, nil]
494
+ # Output types that you would like the model to generate. Most models are capable
495
+ # of generating text, which is the default:
496
+ #
497
+ # `["text"]`
498
+ #
499
+ # The `gpt-4o-audio-preview` model can also be used to
500
+ # [generate audio](https://developers.openai.com/api/docs/guides/audio). To
501
+ # request that this model generate both text and audio responses, you can use:
502
+ #
503
+ # `["text", "audio"]`
504
+ #
505
+ # @param moderation [OpenAI::Models::Chat::CompletionCreateParams::Moderation, nil]
506
+ # Configuration for running moderation on the request input and generated output.
507
+ #
508
+ # @param n [Integer, nil]
509
+ # How many chat completion choices to generate for each input message. Note that
510
+ # you will be charged based on the number of generated tokens across all of the
511
+ # choices. Keep `n` as `1` to minimize costs.
512
+ #
513
+ # @param parallel_tool_calls [Boolean]
514
+ # Whether to enable
515
+ # [parallel function calling](https://developers.openai.com/api/docs/guides/function-calling#parallel-function-calling)
516
+ # during tool use.
517
+ #
518
+ # @param prediction [OpenAI::Models::Chat::ChatCompletionPredictionContent, nil]
519
+ # Static predicted output content, such as the content of a text file that is
520
+ # being regenerated.
521
+ #
522
+ # @param presence_penalty [Float, nil]
523
+ # Number between -2.0 and 2.0. Positive values penalize new tokens based on
524
+ # whether they appear in the text so far, increasing the model's likelihood to
525
+ # talk about new topics.
526
+ #
527
+ # @param prompt_cache_key [String, nil]
528
+ # Used by OpenAI to cache responses for similar requests to optimize your cache
529
+ # hit rates. Replaces the `user` field.
530
+ # [Learn more](https://developers.openai.com/api/docs/guides/prompt-caching).
531
+ #
532
+ # @param prompt_cache_options [OpenAI::Models::Chat::CompletionCreateParams::PromptCacheOptions]
533
+ # Options for prompt caching. Supported for `gpt-5.6` and later models. By
534
+ # default, OpenAI automatically chooses one implicit cache breakpoint. You can add
535
+ # explicit breakpoints to content blocks with `prompt_cache_breakpoint`. Each
536
+ # request can write up to four breakpoints. For cache matching, OpenAI considers
537
+ # up to the latest 80 breakpoints in the conversation, without a content-block
538
+ # lookback limit. Set `mode` to `explicit` to disable the implicit breakpoint. The
539
+ # `ttl` defaults to `30m`, which is currently the only supported value. See the
540
+ # [prompt caching guide](https://developers.openai.com/api/docs/guides/prompt-caching)
541
+ # for current details.
542
+ #
543
+ # @param prompt_cache_retention [Symbol, OpenAI::Models::Chat::CompletionCreateParams::PromptCacheRetention, nil]
544
+ # Deprecated. Use `prompt_cache_options.ttl` instead.
545
+ #
546
+ # The retention policy for the prompt cache. Set to `24h` to enable extended
547
+ # prompt caching, which keeps cached prefixes active for longer, up to a maximum
548
+ # of 24 hours.
549
+ # [Learn more](https://developers.openai.com/api/docs/guides/prompt-caching#prompt-cache-retention).
550
+ # This field expresses a maximum retention policy, while
551
+ # `prompt_cache_options.ttl` expresses a minimum cache lifetime. The two fields
552
+ # are independent and do not interact. For `gpt-5.5`, `gpt-5.5-pro`, and future
553
+ # models, only `24h` is supported.
554
+ #
555
+ # For older models that support both `in_memory` and `24h`, the default depends on
556
+ # your organization's data retention policy:
557
+ #
558
+ # - Organizations without ZDR enabled default to `24h`.
559
+ # - Organizations with ZDR enabled default to `in_memory` when
560
+ # `prompt_cache_retention` is not specified.
561
+ #
562
+ # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil]
563
+ # Constrains effort on reasoning for reasoning models. Currently supported values
564
+ # are `none`, `minimal`, `low`, `medium`, `high`, `xhigh`, and `max`. Reducing
565
+ # reasoning effort can result in faster responses and fewer tokens used on
566
+ # reasoning in a response. Not all reasoning models support every value. See the
567
+ # [reasoning guide](https://developers.openai.com/api/docs/guides/reasoning) for
568
+ # model-specific support.
569
+ #
570
+ # @param response_format [OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONSchema, OpenAI::Models::ResponseFormatJSONObject]
571
+ # An object specifying the format that the model must output.
572
+ #
573
+ # Setting to `{ "type": "json_schema", "json_schema": {...} }` enables Structured
574
+ # Outputs which ensures the model will match your supplied JSON schema. Learn more
575
+ # in the
576
+ # [Structured Outputs guide](https://developers.openai.com/api/docs/guides/structured-outputs).
577
+ #
578
+ # Setting to `{ "type": "json_object" }` enables the older JSON mode, which
579
+ # ensures the message the model generates is valid JSON. Using `json_schema` is
580
+ # preferred for models that support it.
581
+ #
582
+ # @param safety_identifier [String, nil]
583
+ # A stable identifier used to help detect users of your application that may be
584
+ # violating OpenAI's usage policies. The IDs should be a string that uniquely
585
+ # identifies each user, with a maximum length of 64 characters. We recommend
586
+ # hashing their username or email address, in order to avoid sending us any
587
+ # identifying information.
588
+ # [Learn more](https://developers.openai.com/api/docs/guides/safety-best-practices#implement-safety-identifiers).
589
+ #
590
+ # @param seed [Integer, nil]
591
+ # This feature is in Beta. If specified, our system will make a best effort to
592
+ # sample deterministically, such that repeated requests with the same `seed` and
593
+ # parameters should return the same result. Determinism is not guaranteed, and you
594
+ # should refer to the `system_fingerprint` response parameter to monitor changes
595
+ # in the backend.
596
+ #
597
+ # @param service_tier [Symbol, OpenAI::Models::Chat::CompletionCreateParams::ServiceTier, nil]
598
+ # Specifies the processing type used for serving the request.
599
+ #
600
+ # - If set to 'auto', then the request will be processed with the service tier
601
+ # configured in the Project settings. Unless otherwise configured, the Project
602
+ # will use 'default'.
603
+ # - If set to 'default', then the request will be processed with the standard
604
+ # pricing and performance for the selected model.
605
+ # - If set to
606
+ # '[flex](https://developers.openai.com/api/docs/guides/flex-processing)', then
607
+ # the request will be processed with the Flex Processing service tier.
608
+ # - To opt-in to
609
+ # [Fast mode](https://developers.openai.com/api/docs/guides/fast-mode) at the
610
+ # request level, include the `service_tier=fast` or `service_tier=priority`
611
+ # parameter for Responses or Chat Completions. The response will show
612
+ # `service_tier=priority` regardless of if you specify `service_tier=fast` or
613
+ # `priority` in your request.
614
+ # - When not set, the default behavior is 'auto'.
615
+ #
616
+ # When the `service_tier` parameter is set, the response body will include the
617
+ # `service_tier` value based on the processing mode actually used to serve the
618
+ # request. This response value may be different from the value set in the
619
+ # parameter.
620
+ #
621
+ # @param stop [String, Array<String>, nil]
622
+ # Not supported with latest reasoning models `o3` and `o4-mini`.
623
+ #
624
+ # Up to 4 sequences where the API will stop generating further tokens. The
625
+ # returned text will not contain the stop sequence.
626
+ #
627
+ # @param store [Boolean, nil]
628
+ # Whether or not to store the output of this chat completion request for use in
629
+ # our
630
+ # [model distillation](https://developers.openai.com/api/docs/guides/supervised-fine-tuning#distilling-from-a-larger-model)
631
+ # or [evals](https://developers.openai.com/api/docs/guides/evals) products.
632
+ #
633
+ # Supports text and image inputs. Note: image inputs over 8MB will be dropped.
634
+ #
635
+ # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil]
636
+ # Options for streaming response. Only set this when you set `stream: true`.
637
+ #
638
+ # @param temperature [Float, nil]
639
+ # What sampling temperature to use, between 0 and 2. Higher values like 0.8 will
640
+ # make the output more random, while lower values like 0.2 will make it more
641
+ # focused and deterministic. We generally recommend altering this or `top_p` but
642
+ # not both.
643
+ #
644
+ # @param tool_choice [Symbol, OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Models::Chat::ChatCompletionAllowedToolChoice, OpenAI::Models::Chat::ChatCompletionNamedToolChoice, OpenAI::Models::Chat::ChatCompletionNamedToolChoiceCustom]
645
+ # Controls which (if any) tool is called by the model. `none` means the model will
646
+ # not call any tool and instead generates a message. `auto` means the model can
647
+ # pick between generating a message or calling one or more tools. `required` means
648
+ # the model must call one or more tools. Specifying a particular tool via
649
+ # `{"type": "function", "function": {"name": "my_function"}}` forces the model to
650
+ # call that tool.
651
+ #
652
+ # `none` is the default when no tools are present. `auto` is the default if tools
653
+ # are present.
654
+ #
655
+ # @param tools [Array<OpenAI::Models::Chat::ChatCompletionFunctionTool, OpenAI::Models::Chat::ChatCompletionCustomTool>]
656
+ # A list of tools the model may call. You can provide either
657
+ # [custom tools](https://developers.openai.com/api/docs/guides/function-calling#custom-tools)
658
+ # or
659
+ # [function tools](https://developers.openai.com/api/docs/guides/function-calling).
660
+ #
661
+ # @param top_logprobs [Integer, nil]
662
+ # An integer between 0 and 20 specifying the maximum number of most likely tokens
663
+ # to return at each token position, each with an associated log probability. In
664
+ # some cases, the number of returned tokens may be fewer than requested.
665
+ # `logprobs` must be set to `true` if this parameter is used.
666
+ #
667
+ # @param top_p [Float, nil]
668
+ # An alternative to sampling with temperature, called nucleus sampling, where the
669
+ # model considers the results of the tokens with top_p probability mass. So 0.1
670
+ # means only the tokens comprising the top 10% probability mass are considered.
671
+ #
672
+ # We generally recommend altering this or `temperature` but not both.
673
+ #
674
+ # @param user [String]
675
+ # This field is being replaced by `safety_identifier` and `prompt_cache_key`. Use
676
+ # `prompt_cache_key` instead to maintain caching optimizations. A stable
677
+ # identifier for your end-users. Used to boost cache hit rates by better bucketing
678
+ # similar requests and to help OpenAI detect and prevent abuse.
679
+ # [Learn more](https://developers.openai.com/api/docs/guides/safety-best-practices#implement-safety-identifiers).
680
+ #
681
+ # @param verbosity [Symbol, OpenAI::Models::Chat::CompletionCreateParams::Verbosity, nil]
682
+ # Constrains the verbosity of the model's response. Lower values will result in
683
+ # more concise responses, while higher values will result in more verbose
684
+ # responses. Currently supported values are `low`, `medium`, and `high`. The
685
+ # default is `medium`.
686
+ #
687
+ # @param web_search_options [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions]
688
+ # This tool searches the web for relevant results to use in a response. Learn more
689
+ # about the
690
+ # [web search tool](https://developers.openai.com/api/docs/guides/tools-web-search).
277
691
  #
278
692
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
279
693
  #
@@ -305,7 +719,8 @@ module OpenAI
305
719
  #
306
720
  # @overload retrieve(completion_id, request_options: {})
307
721
  #
308
- # @param completion_id [String] The ID of the chat completion to retrieve.
722
+ # @param completion_id [String]
723
+ # The ID of the chat completion to retrieve.
309
724
  #
310
725
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
311
726
  #
@@ -322,18 +737,22 @@ module OpenAI
322
737
  )
323
738
  end
324
739
 
325
- # Some parameter documentations has been truncated, see
326
- # {OpenAI::Models::Chat::CompletionUpdateParams} for more details.
327
- #
328
740
  # Modify a stored chat completion. Only Chat Completions that have been created
329
741
  # with the `store` parameter set to `true` can be modified. Currently, the only
330
742
  # supported modification is to update the `metadata` field.
331
743
  #
332
744
  # @overload update(completion_id, metadata:, request_options: {})
333
745
  #
334
- # @param completion_id [String] The ID of the chat completion to update.
746
+ # @param completion_id [String]
747
+ # The ID of the chat completion to update.
748
+ #
749
+ # @param metadata [Hash{Symbol=>String}, nil]
750
+ # Set of 16 key-value pairs that can be attached to an object. This can be useful
751
+ # for storing additional information about the object in a structured format, and
752
+ # querying for objects via API or the dashboard.
335
753
  #
336
- # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be
754
+ # Keys are strings with a maximum length of 64 characters. Values are strings with
755
+ # a maximum length of 512 characters.
337
756
  #
338
757
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
339
758
  #
@@ -352,23 +771,28 @@ module OpenAI
352
771
  )
353
772
  end
354
773
 
355
- # Some parameter documentations has been truncated, see
356
- # {OpenAI::Models::Chat::CompletionListParams} for more details.
357
- #
358
774
  # List stored Chat Completions. Only Chat Completions that have been stored with
359
775
  # the `store` parameter set to `true` will be returned.
360
776
  #
361
777
  # @overload list(after: nil, limit: nil, metadata: nil, model: nil, order: nil, request_options: {})
362
778
  #
363
- # @param after [String] Identifier for the last chat completion from the previous pagination request.
779
+ # @param after [String]
780
+ # Identifier for the last chat completion from the previous pagination request.
781
+ #
782
+ # @param limit [Integer]
783
+ # Number of Chat Completions to retrieve.
364
784
  #
365
- # @param limit [Integer] Number of Chat Completions to retrieve.
785
+ # @param metadata [Hash{Symbol=>String}, nil]
786
+ # A list of metadata keys to filter the Chat Completions by. Example:
366
787
  #
367
- # @param metadata [Hash{Symbol=>String}, nil] A list of metadata keys to filter the Chat Completions by. Example:
788
+ # `metadata[key1]=value1&metadata[key2]=value2`
368
789
  #
369
- # @param model [String] The model used to generate the Chat Completions.
790
+ # @param model [String]
791
+ # The model used to generate the Chat Completions.
370
792
  #
371
- # @param order [Symbol, OpenAI::Models::Chat::CompletionListParams::Order] Sort order for Chat Completions by timestamp. Use `asc` for ascending order or `
793
+ # @param order [Symbol, OpenAI::Models::Chat::CompletionListParams::Order]
794
+ # Sort order for Chat Completions by timestamp. Use `asc` for ascending order or
795
+ # `desc` for descending order. Defaults to `asc`.
372
796
  #
373
797
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
374
798
  #
@@ -394,7 +818,8 @@ module OpenAI
394
818
  #
395
819
  # @overload delete(completion_id, request_options: {})
396
820
  #
397
- # @param completion_id [String] The ID of the chat completion to delete.
821
+ # @param completion_id [String]
822
+ # The ID of the chat completion to delete.
398
823
  #
399
824
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
400
825
  #