openai 0.111.0 → 0.113.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 (248) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +15 -0
  3. data/README.md +1 -1
  4. data/lib/openai/models/beta/agent.rb +2 -2
  5. data/lib/openai/models/beta/agent_create_params.rb +2 -2
  6. data/lib/openai/models/beta/agent_session.rb +2 -2
  7. data/lib/openai/models/beta/agent_tool.rb +18 -1
  8. data/lib/openai/models/beta/agent_tool_param.rb +18 -1
  9. data/lib/openai/models/beta/agent_update_params.rb +2 -2
  10. data/lib/openai/models/beta/agents/session_create_params.rb +2 -2
  11. data/lib/openai/models/beta/beta_response.rb +3 -0
  12. data/lib/openai/models/beta/beta_response_input_file.rb +23 -1
  13. data/lib/openai/models/beta/beta_response_input_file_content.rb +23 -1
  14. data/lib/openai/models/beta/beta_response_input_image.rb +23 -1
  15. data/lib/openai/models/beta/beta_response_input_image_content.rb +23 -1
  16. data/lib/openai/models/beta/beta_response_input_text.rb +23 -1
  17. data/lib/openai/models/beta/beta_response_input_text_content.rb +23 -1
  18. data/lib/openai/models/beta/beta_response_item.rb +28 -1
  19. data/lib/openai/models/beta/beta_response_output_item.rb +28 -1
  20. data/lib/openai/models/beta/beta_response_tool_search_output_item_param.rb +26 -15
  21. data/lib/openai/models/beta/beta_responses_client_event.rb +3 -0
  22. data/lib/openai/models/beta/beta_tool.rb +26 -15
  23. data/lib/openai/models/beta/persisted_agent_tool.rb +18 -1
  24. data/lib/openai/models/beta/persisted_agent_tool_param.rb +18 -1
  25. data/lib/openai/models/beta/response_compact_params.rb +3 -0
  26. data/lib/openai/models/beta/response_create_params.rb +3 -0
  27. data/lib/openai/models/chat/chat_completion_content_part.rb +23 -1
  28. data/lib/openai/models/chat/chat_completion_content_part_image.rb +23 -1
  29. data/lib/openai/models/chat/chat_completion_content_part_input_audio.rb +23 -1
  30. data/lib/openai/models/chat/chat_completion_content_part_text.rb +23 -1
  31. data/lib/openai/models/chat_model.rb +1 -0
  32. data/lib/openai/models/conversations/computer_screenshot_content.rb +23 -1
  33. data/lib/openai/models/decision_create_params.rb +8 -4
  34. data/lib/openai/models/image_edit_params.rb +20 -4
  35. data/lib/openai/models/image_generate_params.rb +23 -7
  36. data/lib/openai/models/image_model.rb +2 -0
  37. data/lib/openai/models/live/client_delegation.rb +20 -1
  38. data/lib/openai/models/live/client_event.rb +4 -4
  39. data/lib/openai/models/live/commentary_append_event.rb +1 -1
  40. data/lib/openai/models/live/decision_assistant_message.rb +154 -0
  41. data/lib/openai/models/live/decision_choice_option.rb +35 -0
  42. data/lib/openai/models/live/decision_developer_message.rb +70 -0
  43. data/lib/openai/models/live/decision_input_text.rb +26 -0
  44. data/lib/openai/models/live/decision_item_create_event.rb +490 -131
  45. data/lib/openai/models/live/decision_item_created_event.rb +486 -131
  46. data/lib/openai/models/live/decision_json_object.rb +10 -0
  47. data/lib/openai/models/live/decision_question.rb +172 -0
  48. data/lib/openai/models/live/decision_stored_assistant_message.rb +152 -0
  49. data/lib/openai/models/live/decision_stored_developer_message.rb +68 -0
  50. data/lib/openai/models/live/decision_stored_system_message.rb +68 -0
  51. data/lib/openai/models/live/decision_stored_user_message.rb +195 -0
  52. data/lib/openai/models/live/decision_system_message.rb +70 -0
  53. data/lib/openai/models/live/decision_trigger.rb +6 -258
  54. data/lib/openai/models/live/decision_user_message.rb +193 -0
  55. data/lib/openai/models/live/decisions_delegation_config.rb +5 -250
  56. data/lib/openai/models/live/decisions_delegation_update_config.rb +5 -257
  57. data/lib/openai/models/live/fork_client_event.rb +4 -4
  58. data/lib/openai/models/live/fork_server_event.rb +2 -2
  59. data/lib/openai/models/live/fork_session_config.rb +20 -1
  60. data/lib/openai/models/live/input_audio_muted_event.rb +3 -2
  61. data/lib/openai/models/live/input_audio_unmute_event.rb +2 -1
  62. data/lib/openai/models/live/input_audio_unmuted_event.rb +3 -2
  63. data/lib/openai/models/live/instructions_append_event.rb +5 -2
  64. data/lib/openai/models/live/media_session_config.rb +39 -2
  65. data/lib/openai/models/live/media_session_fork_config.rb +20 -1
  66. data/lib/openai/models/live/server_event.rb +2 -2
  67. data/lib/openai/models/live/session_accept_params.rb +39 -2
  68. data/lib/openai/models/live/session_config.rb +39 -2
  69. data/lib/openai/models/live/session_resource.rb +39 -2
  70. data/lib/openai/models/live/session_update_config.rb +41 -2
  71. data/lib/openai/models/live/sideband_client_event.rb +4 -4
  72. data/lib/openai/models/live/sideband_server_event.rb +2 -2
  73. data/lib/openai/models/live/thinking_append_event.rb +1 -1
  74. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rb +10 -12
  75. data/lib/openai/models/realtime/realtime_error_event.rb +1 -1
  76. data/lib/openai/models/realtime/realtime_server_event.rb +1 -1
  77. data/lib/openai/models/realtime/realtime_translation_server_event.rb +1 -1
  78. data/lib/openai/models/responses/response_compact_params.rb +3 -0
  79. data/lib/openai/models/responses/response_input_file.rb +23 -1
  80. data/lib/openai/models/responses/response_input_file_content.rb +23 -1
  81. data/lib/openai/models/responses/response_input_image.rb +23 -1
  82. data/lib/openai/models/responses/response_input_image_content.rb +23 -1
  83. data/lib/openai/models/responses/response_input_text.rb +23 -1
  84. data/lib/openai/models/responses/response_input_text_content.rb +23 -1
  85. data/lib/openai/models/responses/response_tool_search_output_item_param.rb +26 -15
  86. data/lib/openai/models/responses/tool.rb +26 -15
  87. data/lib/openai/resources/beta/agents.rb +2 -2
  88. data/lib/openai/resources/beta/responses.rb +2 -2
  89. data/lib/openai/resources/images.rb +18 -6
  90. data/lib/openai/resources/live/forks.rb +2 -2
  91. data/lib/openai/resources/live/sideband.rb +2 -2
  92. data/lib/openai/resources/live.rb +2 -2
  93. data/lib/openai/resources/realtime/translations.rb +2 -2
  94. data/lib/openai/resources/realtime.rb +2 -2
  95. data/lib/openai/resources/responses.rb +2 -2
  96. data/lib/openai/version.rb +1 -1
  97. data/lib/openai.rb +12 -0
  98. data/rbi/openai/models/beta/agent.rbi +2 -1
  99. data/rbi/openai/models/beta/agent_create_params.rbi +6 -3
  100. data/rbi/openai/models/beta/agent_session.rbi +2 -1
  101. data/rbi/openai/models/beta/agent_tool.rbi +40 -1
  102. data/rbi/openai/models/beta/agent_tool_param.rbi +40 -1
  103. data/rbi/openai/models/beta/agent_update_params.rbi +6 -3
  104. data/rbi/openai/models/beta/agents/session_create_params.rbi +6 -3
  105. data/rbi/openai/models/beta/beta_response.rbi +1 -0
  106. data/rbi/openai/models/beta/beta_response_input_file.rbi +31 -1
  107. data/rbi/openai/models/beta/beta_response_input_file_content.rbi +39 -1
  108. data/rbi/openai/models/beta/beta_response_input_image.rbi +31 -1
  109. data/rbi/openai/models/beta/beta_response_input_image_content.rbi +39 -1
  110. data/rbi/openai/models/beta/beta_response_input_text.rbi +31 -1
  111. data/rbi/openai/models/beta/beta_response_input_text_content.rbi +39 -1
  112. data/rbi/openai/models/beta/beta_response_item.rbi +58 -1
  113. data/rbi/openai/models/beta/beta_response_output_item.rbi +58 -1
  114. data/rbi/openai/models/beta/beta_response_tool_search_output_item_param.rbi +24 -15
  115. data/rbi/openai/models/beta/beta_responses_client_event.rbi +4 -0
  116. data/rbi/openai/models/beta/beta_tool.rbi +24 -15
  117. data/rbi/openai/models/beta/persisted_agent_tool.rbi +40 -1
  118. data/rbi/openai/models/beta/persisted_agent_tool_param.rbi +40 -1
  119. data/rbi/openai/models/beta/response_compact_params.rbi +1 -0
  120. data/rbi/openai/models/beta/response_create_params.rbi +1 -0
  121. data/rbi/openai/models/chat/chat_completion_content_part.rbi +43 -1
  122. data/rbi/openai/models/chat/chat_completion_content_part_image.rbi +41 -1
  123. data/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi +46 -1
  124. data/rbi/openai/models/chat/chat_completion_content_part_text.rbi +39 -1
  125. data/rbi/openai/models/chat_model.rbi +1 -0
  126. data/rbi/openai/models/conversations/computer_screenshot_content.rbi +48 -1
  127. data/rbi/openai/models/image_edit_params.rbi +12 -3
  128. data/rbi/openai/models/image_generate_params.rbi +15 -6
  129. data/rbi/openai/models/live/client_delegation.rbi +23 -1
  130. data/rbi/openai/models/live/commentary_append_event.rbi +1 -1
  131. data/rbi/openai/models/live/decision_assistant_message.rbi +247 -0
  132. data/rbi/openai/models/live/decision_choice_option.rbi +67 -0
  133. data/rbi/openai/models/live/decision_developer_message.rbi +109 -0
  134. data/rbi/openai/models/live/decision_input_text.rbi +55 -0
  135. data/rbi/openai/models/live/decision_item_create_event.rbi +765 -184
  136. data/rbi/openai/models/live/decision_item_created_event.rbi +737 -184
  137. data/rbi/openai/models/live/decision_json_object.rbi +16 -0
  138. data/rbi/openai/models/live/decision_question.rbi +300 -0
  139. data/rbi/openai/models/live/decision_stored_assistant_message.rbi +245 -0
  140. data/rbi/openai/models/live/decision_stored_developer_message.rbi +107 -0
  141. data/rbi/openai/models/live/decision_stored_system_message.rbi +107 -0
  142. data/rbi/openai/models/live/decision_stored_user_message.rbi +333 -0
  143. data/rbi/openai/models/live/decision_system_message.rbi +109 -0
  144. data/rbi/openai/models/live/decision_trigger.rbi +11 -383
  145. data/rbi/openai/models/live/decision_user_message.rbi +320 -0
  146. data/rbi/openai/models/live/decisions_delegation_config.rbi +10 -384
  147. data/rbi/openai/models/live/decisions_delegation_update_config.rbi +13 -387
  148. data/rbi/openai/models/live/fork_session_config.rbi +27 -1
  149. data/rbi/openai/models/live/input_audio_muted_event.rbi +3 -2
  150. data/rbi/openai/models/live/input_audio_unmute_event.rbi +2 -1
  151. data/rbi/openai/models/live/input_audio_unmuted_event.rbi +3 -2
  152. data/rbi/openai/models/live/instructions_append_event.rbi +5 -2
  153. data/rbi/openai/models/live/media_session_config.rbi +44 -2
  154. data/rbi/openai/models/live/media_session_fork_config.rbi +27 -1
  155. data/rbi/openai/models/live/session_accept_params.rbi +44 -2
  156. data/rbi/openai/models/live/session_config.rbi +44 -2
  157. data/rbi/openai/models/live/session_resource.rbi +44 -2
  158. data/rbi/openai/models/live/session_update_config.rbi +54 -2
  159. data/rbi/openai/models/live/thinking_append_event.rbi +1 -1
  160. data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rbi +10 -12
  161. data/rbi/openai/models/realtime/realtime_error_event.rbi +1 -1
  162. data/rbi/openai/models/responses/response_compact_params.rbi +1 -0
  163. data/rbi/openai/models/responses/response_input_file.rbi +31 -1
  164. data/rbi/openai/models/responses/response_input_file_content.rbi +39 -1
  165. data/rbi/openai/models/responses/response_input_image.rbi +33 -1
  166. data/rbi/openai/models/responses/response_input_image_content.rbi +41 -1
  167. data/rbi/openai/models/responses/response_input_text.rbi +31 -1
  168. data/rbi/openai/models/responses/response_input_text_content.rbi +39 -1
  169. data/rbi/openai/models/responses/response_tool_search_output_item_param.rbi +24 -15
  170. data/rbi/openai/models/responses/tool.rbi +24 -15
  171. data/rbi/openai/resources/beta/agents.rbi +4 -2
  172. data/rbi/openai/resources/beta/responses.rbi +8 -1
  173. data/rbi/openai/resources/images.rbi +18 -6
  174. data/rbi/openai/resources/live/forks.rbi +8 -1
  175. data/rbi/openai/resources/live/sideband.rbi +8 -1
  176. data/rbi/openai/resources/live.rbi +8 -1
  177. data/rbi/openai/resources/realtime/translations.rbi +8 -1
  178. data/rbi/openai/resources/realtime.rbi +8 -1
  179. data/rbi/openai/resources/responses.rbi +8 -1
  180. data/sig/openai/models/beta/agent_tool.rbs +14 -0
  181. data/sig/openai/models/beta/agent_tool_param.rbs +14 -0
  182. data/sig/openai/models/beta/beta_response.rbs +2 -0
  183. data/sig/openai/models/beta/beta_response_input_file.rbs +34 -3
  184. data/sig/openai/models/beta/beta_response_input_file_content.rbs +34 -3
  185. data/sig/openai/models/beta/beta_response_input_image.rbs +34 -3
  186. data/sig/openai/models/beta/beta_response_input_image_content.rbs +34 -3
  187. data/sig/openai/models/beta/beta_response_input_text.rbs +34 -3
  188. data/sig/openai/models/beta/beta_response_input_text_content.rbs +34 -3
  189. data/sig/openai/models/beta/beta_response_item.rbs +34 -3
  190. data/sig/openai/models/beta/beta_response_output_item.rbs +34 -3
  191. data/sig/openai/models/beta/beta_response_tool_search_output_item_param.rbs +24 -15
  192. data/sig/openai/models/beta/beta_responses_client_event.rbs +2 -0
  193. data/sig/openai/models/beta/beta_tool.rbs +24 -15
  194. data/sig/openai/models/beta/persisted_agent_tool.rbs +14 -0
  195. data/sig/openai/models/beta/persisted_agent_tool_param.rbs +14 -0
  196. data/sig/openai/models/beta/response_compact_params.rbs +2 -0
  197. data/sig/openai/models/beta/response_create_params.rbs +2 -0
  198. data/sig/openai/models/chat/chat_completion_content_part.rbs +34 -3
  199. data/sig/openai/models/chat/chat_completion_content_part_image.rbs +34 -3
  200. data/sig/openai/models/chat/chat_completion_content_part_input_audio.rbs +34 -3
  201. data/sig/openai/models/chat/chat_completion_content_part_text.rbs +34 -3
  202. data/sig/openai/models/chat_model.rbs +2 -0
  203. data/sig/openai/models/conversations/computer_screenshot_content.rbs +34 -3
  204. data/sig/openai/models/image_edit_params.rbs +8 -2
  205. data/sig/openai/models/image_generate_params.rbs +10 -4
  206. data/sig/openai/models/live/client_delegation.rbs +30 -3
  207. data/sig/openai/models/live/decision_assistant_message.rbs +134 -0
  208. data/sig/openai/models/live/decision_choice_option.rbs +37 -0
  209. data/sig/openai/models/live/decision_developer_message.rbs +67 -0
  210. data/sig/openai/models/live/decision_input_text.rbs +20 -0
  211. data/sig/openai/models/live/decision_item_create_event.rbs +413 -131
  212. data/sig/openai/models/live/decision_item_created_event.rbs +401 -131
  213. data/sig/openai/models/live/decision_json_object.rbs +9 -0
  214. data/sig/openai/models/live/decision_question.rbs +164 -0
  215. data/sig/openai/models/live/decision_stored_assistant_message.rbs +131 -0
  216. data/sig/openai/models/live/decision_stored_developer_message.rbs +64 -0
  217. data/sig/openai/models/live/decision_stored_system_message.rbs +64 -0
  218. data/sig/openai/models/live/decision_stored_user_message.rbs +177 -0
  219. data/sig/openai/models/live/decision_system_message.rbs +67 -0
  220. data/sig/openai/models/live/decision_trigger.rbs +8 -208
  221. data/sig/openai/models/live/decision_user_message.rbs +180 -0
  222. data/sig/openai/models/live/decisions_delegation_config.rbs +6 -204
  223. data/sig/openai/models/live/decisions_delegation_update_config.rbs +8 -206
  224. data/sig/openai/models/live/fork_session_config.rbs +26 -0
  225. data/sig/openai/models/live/media_session_config.rbs +53 -4
  226. data/sig/openai/models/live/media_session_fork_config.rbs +26 -0
  227. data/sig/openai/models/live/session_accept_params.rbs +53 -4
  228. data/sig/openai/models/live/session_config.rbs +53 -4
  229. data/sig/openai/models/live/session_resource.rbs +53 -4
  230. data/sig/openai/models/live/session_update_config.rbs +52 -0
  231. data/sig/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rbs +10 -12
  232. data/sig/openai/models/responses/response_compact_params.rbs +2 -0
  233. data/sig/openai/models/responses/response_input_file.rbs +34 -3
  234. data/sig/openai/models/responses/response_input_file_content.rbs +34 -3
  235. data/sig/openai/models/responses/response_input_image.rbs +34 -3
  236. data/sig/openai/models/responses/response_input_image_content.rbs +34 -3
  237. data/sig/openai/models/responses/response_input_text.rbs +34 -3
  238. data/sig/openai/models/responses/response_input_text_content.rbs +34 -3
  239. data/sig/openai/models/responses/response_tool_search_output_item_param.rbs +24 -15
  240. data/sig/openai/models/responses/tool.rbs +24 -15
  241. data/sig/openai/resources/beta/responses.rbs +2 -1
  242. data/sig/openai/resources/live/forks.rbs +2 -1
  243. data/sig/openai/resources/live/sideband.rbs +2 -1
  244. data/sig/openai/resources/live.rbs +2 -1
  245. data/sig/openai/resources/realtime/translations.rbs +2 -1
  246. data/sig/openai/resources/realtime.rbs +2 -1
  247. data/sig/openai/resources/responses.rbs +2 -1
  248. metadata +37 -1
@@ -654,11 +654,14 @@ module OpenAI
654
654
  optional :input_image_mask, -> { OpenAI::Beta::BetaTool::ImageGeneration::InputImageMask }
655
655
 
656
656
  # @!attribute model
657
- # The image generation model to use. One of `gpt-image-1`, `gpt-image-1-mini`,
658
- # `gpt-image-1.5`, `gpt-image-2`, `gpt-image-2-2026-04-21`,
659
- # `gpt-image-2.5-sunburst`, `gpt-image-2.5-sunburst-2026-09-08`,
660
- # `gpt-image-2.5-flare`, `gpt-image-2.5-flare-2026-09-08`, or
661
- # `chatgpt-image-latest`. Default: `gpt-image-1`.
657
+ # The image generation model to use. One of `gpt-image-1-mini`, `gpt-image-1.5`,
658
+ # `gpt-image-2`, `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`,
659
+ # `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`,
660
+ # `gpt-image-2.5-flare-2026-09-08`, or `chatgpt-image-latest`. Default:
661
+ # `gpt-image-2`.
662
+ #
663
+ # `gpt-image-1` was shut down on October 23, 2026. Use `gpt-image-2.5-sunburst` or
664
+ # `gpt-image-2.5-flare` instead.
662
665
  #
663
666
  # @return [String, Symbol, OpenAI::Models::Beta::BetaTool::ImageGeneration::Model, nil]
664
667
  optional :model, union: -> { OpenAI::Beta::BetaTool::ImageGeneration::Model }
@@ -741,11 +744,14 @@ module OpenAI
741
744
  # `file_id` (string, optional).
742
745
  #
743
746
  # @param model [String, Symbol, OpenAI::Models::Beta::BetaTool::ImageGeneration::Model]
744
- # The image generation model to use. One of `gpt-image-1`, `gpt-image-1-mini`,
745
- # `gpt-image-1.5`, `gpt-image-2`, `gpt-image-2-2026-04-21`,
746
- # `gpt-image-2.5-sunburst`, `gpt-image-2.5-sunburst-2026-09-08`,
747
- # `gpt-image-2.5-flare`, `gpt-image-2.5-flare-2026-09-08`, or
748
- # `chatgpt-image-latest`. Default: `gpt-image-1`.
747
+ # The image generation model to use. One of `gpt-image-1-mini`, `gpt-image-1.5`,
748
+ # `gpt-image-2`, `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`,
749
+ # `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`,
750
+ # `gpt-image-2.5-flare-2026-09-08`, or `chatgpt-image-latest`. Default:
751
+ # `gpt-image-2`.
752
+ #
753
+ # `gpt-image-1` was shut down on October 23, 2026. Use `gpt-image-2.5-sunburst` or
754
+ # `gpt-image-2.5-flare` instead.
749
755
  #
750
756
  # @param moderation [Symbol, OpenAI::Models::Beta::BetaTool::ImageGeneration::Moderation]
751
757
  # Moderation level for the generated image. Default: `auto`.
@@ -859,11 +865,14 @@ module OpenAI
859
865
  # Base64-encoded mask image.
860
866
  end
861
867
 
862
- # The image generation model to use. One of `gpt-image-1`, `gpt-image-1-mini`,
863
- # `gpt-image-1.5`, `gpt-image-2`, `gpt-image-2-2026-04-21`,
864
- # `gpt-image-2.5-sunburst`, `gpt-image-2.5-sunburst-2026-09-08`,
865
- # `gpt-image-2.5-flare`, `gpt-image-2.5-flare-2026-09-08`, or
866
- # `chatgpt-image-latest`. Default: `gpt-image-1`.
868
+ # The image generation model to use. One of `gpt-image-1-mini`, `gpt-image-1.5`,
869
+ # `gpt-image-2`, `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`,
870
+ # `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`,
871
+ # `gpt-image-2.5-flare-2026-09-08`, or `chatgpt-image-latest`. Default:
872
+ # `gpt-image-2`.
873
+ #
874
+ # `gpt-image-1` was shut down on October 23, 2026. Use `gpt-image-2.5-sunburst` or
875
+ # `gpt-image-2.5-flare` instead.
867
876
  #
868
877
  # @see OpenAI::Models::Beta::BetaTool::ImageGeneration#model
869
878
  module Model
@@ -904,6 +913,8 @@ module OpenAI
904
913
 
905
914
  # @!group
906
915
 
916
+ # @deprecated GPT Image 1 was shut down on October 23, 2026. Use gpt-image-2.5-sunburst or
917
+ # gpt-image-2.5-flare instead.
907
918
  GPT_IMAGE_1 = :"gpt-image-1"
908
919
  GPT_IMAGE_1_MINI = :"gpt-image-1-mini"
909
920
  GPT_IMAGE_2 = :"gpt-image-2"
@@ -27,6 +27,9 @@ module OpenAI
27
27
  # Browser use in an OpenAI-hosted session.
28
28
  variant :computer_use, -> { OpenAI::Beta::PersistedAgentTool::ComputerUse }
29
29
 
30
+ # Lets the agent manage its own scheduled wakeups.
31
+ variant :automations, -> { OpenAI::Beta::PersistedAgentTool::Automations }
32
+
30
33
  class Function < OpenAI::Internal::Type::BaseModel
31
34
  # @!attribute defer_loading
32
35
  # Whether the function is deferred and discovered through tool search.
@@ -347,8 +350,22 @@ module OpenAI
347
350
  # The type of the object. Always `computer_use`.
348
351
  end
349
352
 
353
+ class Automations < OpenAI::Internal::Type::BaseModel
354
+ # @!attribute type
355
+ # The type of the object. Always `automations`.
356
+ #
357
+ # @return [Symbol, :automations]
358
+ required :type, const: :automations
359
+
360
+ # @!method initialize(type: :automations)
361
+ # Lets the agent manage its own scheduled wakeups.
362
+ #
363
+ # @param type [Symbol, :automations]
364
+ # The type of the object. Always `automations`.
365
+ end
366
+
350
367
  # @!method self.variants
351
- # @return [Array(OpenAI::Models::Beta::PersistedAgentTool::Function, OpenAI::Models::Beta::PersistedAgentTool::ToolSearch, OpenAI::Models::Beta::PersistedAgentTool::ProgrammaticToolCalling, OpenAI::Models::Beta::PersistedAgentTool::Mcp, OpenAI::Models::Beta::PersistedAgentTool::WebSearch, OpenAI::Models::Beta::PersistedAgentTool::ComputerUse)]
368
+ # @return [Array(OpenAI::Models::Beta::PersistedAgentTool::Function, OpenAI::Models::Beta::PersistedAgentTool::ToolSearch, OpenAI::Models::Beta::PersistedAgentTool::ProgrammaticToolCalling, OpenAI::Models::Beta::PersistedAgentTool::Mcp, OpenAI::Models::Beta::PersistedAgentTool::WebSearch, OpenAI::Models::Beta::PersistedAgentTool::ComputerUse, OpenAI::Models::Beta::PersistedAgentTool::Automations)]
352
369
  end
353
370
  end
354
371
  end
@@ -27,6 +27,9 @@ module OpenAI
27
27
  # Browser use in an OpenAI-hosted session.
28
28
  variant :computer_use, -> { OpenAI::Beta::PersistedAgentToolParam::ComputerUse }
29
29
 
30
+ # Lets the agent manage its own scheduled wakeups.
31
+ variant :automations, -> { OpenAI::Beta::PersistedAgentToolParam::Automations }
32
+
30
33
  class Function < OpenAI::Internal::Type::BaseModel
31
34
  # @!attribute description
32
35
  # A description of what the function does.
@@ -373,8 +376,22 @@ module OpenAI
373
376
  # The type of the object. Always `computer_use`.
374
377
  end
375
378
 
379
+ class Automations < OpenAI::Internal::Type::BaseModel
380
+ # @!attribute type
381
+ # The type of the object. Always `automations`.
382
+ #
383
+ # @return [Symbol, :automations]
384
+ required :type, const: :automations
385
+
386
+ # @!method initialize(type: :automations)
387
+ # Lets the agent manage its own scheduled wakeups.
388
+ #
389
+ # @param type [Symbol, :automations]
390
+ # The type of the object. Always `automations`.
391
+ end
392
+
376
393
  # @!method self.variants
377
- # @return [Array(OpenAI::Models::Beta::PersistedAgentToolParam::Function, OpenAI::Models::Beta::PersistedAgentToolParam::ToolSearch, OpenAI::Models::Beta::PersistedAgentToolParam::ProgrammaticToolCalling, OpenAI::Models::Beta::PersistedAgentToolParam::Mcp, OpenAI::Models::Beta::PersistedAgentToolParam::WebSearch, OpenAI::Models::Beta::PersistedAgentToolParam::ComputerUse)]
394
+ # @return [Array(OpenAI::Models::Beta::PersistedAgentToolParam::Function, OpenAI::Models::Beta::PersistedAgentToolParam::ToolSearch, OpenAI::Models::Beta::PersistedAgentToolParam::ProgrammaticToolCalling, OpenAI::Models::Beta::PersistedAgentToolParam::Mcp, OpenAI::Models::Beta::PersistedAgentToolParam::WebSearch, OpenAI::Models::Beta::PersistedAgentToolParam::ComputerUse, OpenAI::Models::Beta::PersistedAgentToolParam::Automations)]
378
395
  end
379
396
  end
380
397
  end
@@ -180,6 +180,8 @@ module OpenAI
180
180
 
181
181
  variant const: -> { OpenAI::Models::Beta::ResponseCompactParams::Model::GPT_6_1_SOL }
182
182
 
183
+ variant const: -> { OpenAI::Models::Beta::ResponseCompactParams::Model::GPT_6_1_TERRA }
184
+
183
185
  variant const: -> { OpenAI::Models::Beta::ResponseCompactParams::Model::GPT_6_SOL }
184
186
 
185
187
  variant const: -> { OpenAI::Models::Beta::ResponseCompactParams::Model::GPT_6_LUNA }
@@ -411,6 +413,7 @@ module OpenAI
411
413
 
412
414
  GPT_6_ASTRA = :"gpt-6-astra"
413
415
  GPT_6_1_SOL = :"gpt-6.1-sol"
416
+ GPT_6_1_TERRA = :"gpt-6.1-terra"
414
417
  GPT_6_SOL = :"gpt-6-sol"
415
418
  GPT_6_LUNA = :"gpt-6-luna"
416
419
  GPT_5_6_SOL = :"gpt-5.6-sol"
@@ -767,6 +767,8 @@ module OpenAI
767
767
 
768
768
  variant const: -> { OpenAI::Models::Beta::ResponseCreateParams::Model::GPT_6_1_SOL }
769
769
 
770
+ variant const: -> { OpenAI::Models::Beta::ResponseCreateParams::Model::GPT_6_1_TERRA }
771
+
770
772
  variant const: -> { OpenAI::Models::Beta::ResponseCreateParams::Model::GPT_6_SOL }
771
773
 
772
774
  variant const: -> { OpenAI::Models::Beta::ResponseCreateParams::Model::GPT_6_LUNA }
@@ -996,6 +998,7 @@ module OpenAI
996
998
 
997
999
  GPT_6_ASTRA = :"gpt-6-astra"
998
1000
  GPT_6_1_SOL = :"gpt-6.1-sol"
1001
+ GPT_6_1_TERRA = :"gpt-6.1-terra"
999
1002
  GPT_6_SOL = :"gpt-6-sol"
1000
1003
  GPT_6_LUNA = :"gpt-6-luna"
1001
1004
  GPT_5_6_SOL = :"gpt-5.6-sol"
@@ -99,13 +99,35 @@ module OpenAI
99
99
  # @return [Symbol, :explicit]
100
100
  required :mode, const: :explicit
101
101
 
102
- # @!method initialize(mode: :explicit)
102
+ # @!attribute ttl
103
+ # The minimum lifetime of this cache breakpoint. Defaults to the request TTL.
104
+ #
105
+ # @return [Symbol, OpenAI::Models::Chat::ChatCompletionContentPart::File::PromptCacheBreakpoint::Ttl, nil]
106
+ optional :ttl, enum: -> { OpenAI::Chat::ChatCompletionContentPart::File::PromptCacheBreakpoint::Ttl }
107
+
108
+ # @!method initialize(ttl: nil, mode: :explicit)
103
109
  # Marks the exact end of a reusable prompt prefix. The breakpoint inherits its TTL
104
110
  # from the request's `prompt_cache_options.ttl`; the boundary is not rounded to a
105
111
  # token block.
106
112
  #
113
+ # @param ttl [Symbol, OpenAI::Models::Chat::ChatCompletionContentPart::File::PromptCacheBreakpoint::Ttl]
114
+ # The minimum lifetime of this cache breakpoint. Defaults to the request TTL.
115
+ #
107
116
  # @param mode [Symbol, :explicit]
108
117
  # The breakpoint mode. Always `explicit`.
118
+
119
+ # The minimum lifetime of this cache breakpoint. Defaults to the request TTL.
120
+ #
121
+ # @see OpenAI::Models::Chat::ChatCompletionContentPart::File::PromptCacheBreakpoint#ttl
122
+ module Ttl
123
+ extend OpenAI::Internal::Type::Enum
124
+
125
+ TTL_30M = :"30m"
126
+ TTL_12H = :"12h"
127
+
128
+ # @!method self.values
129
+ # @return [Array<Symbol>]
130
+ end
109
131
  end
110
132
  end
111
133
 
@@ -88,13 +88,35 @@ module OpenAI
88
88
  # @return [Symbol, :explicit]
89
89
  required :mode, const: :explicit
90
90
 
91
- # @!method initialize(mode: :explicit)
91
+ # @!attribute ttl
92
+ # The minimum lifetime of this cache breakpoint. Defaults to the request TTL.
93
+ #
94
+ # @return [Symbol, OpenAI::Models::Chat::ChatCompletionContentPartImage::PromptCacheBreakpoint::Ttl, nil]
95
+ optional :ttl, enum: -> { OpenAI::Chat::ChatCompletionContentPartImage::PromptCacheBreakpoint::Ttl }
96
+
97
+ # @!method initialize(ttl: nil, mode: :explicit)
92
98
  # Marks the exact end of a reusable prompt prefix. The breakpoint inherits its TTL
93
99
  # from the request's `prompt_cache_options.ttl`; the boundary is not rounded to a
94
100
  # token block.
95
101
  #
102
+ # @param ttl [Symbol, OpenAI::Models::Chat::ChatCompletionContentPartImage::PromptCacheBreakpoint::Ttl]
103
+ # The minimum lifetime of this cache breakpoint. Defaults to the request TTL.
104
+ #
96
105
  # @param mode [Symbol, :explicit]
97
106
  # The breakpoint mode. Always `explicit`.
107
+
108
+ # The minimum lifetime of this cache breakpoint. Defaults to the request TTL.
109
+ #
110
+ # @see OpenAI::Models::Chat::ChatCompletionContentPartImage::PromptCacheBreakpoint#ttl
111
+ module Ttl
112
+ extend OpenAI::Internal::Type::Enum
113
+
114
+ TTL_30M = :"30m"
115
+ TTL_12H = :"12h"
116
+
117
+ # @!method self.values
118
+ # @return [Array<Symbol>]
119
+ end
98
120
  end
99
121
  end
100
122
  end
@@ -86,13 +86,35 @@ module OpenAI
86
86
  # @return [Symbol, :explicit]
87
87
  required :mode, const: :explicit
88
88
 
89
- # @!method initialize(mode: :explicit)
89
+ # @!attribute ttl
90
+ # The minimum lifetime of this cache breakpoint. Defaults to the request TTL.
91
+ #
92
+ # @return [Symbol, OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::PromptCacheBreakpoint::Ttl, nil]
93
+ optional :ttl, enum: -> { OpenAI::Chat::ChatCompletionContentPartInputAudio::PromptCacheBreakpoint::Ttl }
94
+
95
+ # @!method initialize(ttl: nil, mode: :explicit)
90
96
  # Marks the exact end of a reusable prompt prefix. The breakpoint inherits its TTL
91
97
  # from the request's `prompt_cache_options.ttl`; the boundary is not rounded to a
92
98
  # token block.
93
99
  #
100
+ # @param ttl [Symbol, OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::PromptCacheBreakpoint::Ttl]
101
+ # The minimum lifetime of this cache breakpoint. Defaults to the request TTL.
102
+ #
94
103
  # @param mode [Symbol, :explicit]
95
104
  # The breakpoint mode. Always `explicit`.
105
+
106
+ # The minimum lifetime of this cache breakpoint. Defaults to the request TTL.
107
+ #
108
+ # @see OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::PromptCacheBreakpoint#ttl
109
+ module Ttl
110
+ extend OpenAI::Internal::Type::Enum
111
+
112
+ TTL_30M = :"30m"
113
+ TTL_12H = :"12h"
114
+
115
+ # @!method self.values
116
+ # @return [Array<Symbol>]
117
+ end
96
118
  end
97
119
  end
98
120
  end
@@ -49,13 +49,35 @@ module OpenAI
49
49
  # @return [Symbol, :explicit]
50
50
  required :mode, const: :explicit
51
51
 
52
- # @!method initialize(mode: :explicit)
52
+ # @!attribute ttl
53
+ # The minimum lifetime of this cache breakpoint. Defaults to the request TTL.
54
+ #
55
+ # @return [Symbol, OpenAI::Models::Chat::ChatCompletionContentPartText::PromptCacheBreakpoint::Ttl, nil]
56
+ optional :ttl, enum: -> { OpenAI::Chat::ChatCompletionContentPartText::PromptCacheBreakpoint::Ttl }
57
+
58
+ # @!method initialize(ttl: nil, mode: :explicit)
53
59
  # Marks the exact end of a reusable prompt prefix. The breakpoint inherits its TTL
54
60
  # from the request's `prompt_cache_options.ttl`; the boundary is not rounded to a
55
61
  # token block.
56
62
  #
63
+ # @param ttl [Symbol, OpenAI::Models::Chat::ChatCompletionContentPartText::PromptCacheBreakpoint::Ttl]
64
+ # The minimum lifetime of this cache breakpoint. Defaults to the request TTL.
65
+ #
57
66
  # @param mode [Symbol, :explicit]
58
67
  # The breakpoint mode. Always `explicit`.
68
+
69
+ # The minimum lifetime of this cache breakpoint. Defaults to the request TTL.
70
+ #
71
+ # @see OpenAI::Models::Chat::ChatCompletionContentPartText::PromptCacheBreakpoint#ttl
72
+ module Ttl
73
+ extend OpenAI::Internal::Type::Enum
74
+
75
+ TTL_30M = :"30m"
76
+ TTL_12H = :"12h"
77
+
78
+ # @!method self.values
79
+ # @return [Array<Symbol>]
80
+ end
59
81
  end
60
82
  end
61
83
  end
@@ -7,6 +7,7 @@ module OpenAI
7
7
 
8
8
  GPT_6_ASTRA = :"gpt-6-astra"
9
9
  GPT_6_1_SOL = :"gpt-6.1-sol"
10
+ GPT_6_1_TERRA = :"gpt-6.1-terra"
10
11
  GPT_6_SOL = :"gpt-6-sol"
11
12
  GPT_6_LUNA = :"gpt-6-luna"
12
13
  GPT_5_6_SOL = :"gpt-5.6-sol"
@@ -87,13 +87,35 @@ module OpenAI
87
87
  # @return [Symbol, :explicit]
88
88
  required :mode, const: :explicit
89
89
 
90
- # @!method initialize(mode: :explicit)
90
+ # @!attribute ttl
91
+ # The minimum lifetime of this cache breakpoint. Defaults to the request TTL.
92
+ #
93
+ # @return [Symbol, OpenAI::Models::Conversations::ComputerScreenshotContent::PromptCacheBreakpoint::Ttl, nil]
94
+ optional :ttl, enum: -> { OpenAI::Conversations::ComputerScreenshotContent::PromptCacheBreakpoint::Ttl }
95
+
96
+ # @!method initialize(ttl: nil, mode: :explicit)
91
97
  # Marks the exact end of a reusable prompt prefix. The breakpoint inherits its TTL
92
98
  # from the request's `prompt_cache_options.ttl`; the boundary is not rounded to a
93
99
  # token block.
94
100
  #
101
+ # @param ttl [Symbol, OpenAI::Models::Conversations::ComputerScreenshotContent::PromptCacheBreakpoint::Ttl]
102
+ # The minimum lifetime of this cache breakpoint. Defaults to the request TTL.
103
+ #
95
104
  # @param mode [Symbol, :explicit]
96
105
  # The breakpoint mode. Always `explicit`.
106
+
107
+ # The minimum lifetime of this cache breakpoint. Defaults to the request TTL.
108
+ #
109
+ # @see OpenAI::Models::Conversations::ComputerScreenshotContent::PromptCacheBreakpoint#ttl
110
+ module Ttl
111
+ extend OpenAI::Internal::Type::Enum
112
+
113
+ TTL_30M = :"30m"
114
+ TTL_12H = :"12h"
115
+
116
+ # @!method self.values
117
+ # @return [Array<Symbol>]
118
+ end
97
119
  end
98
120
  end
99
121
  end
@@ -606,10 +606,12 @@ module OpenAI
606
606
  module Part
607
607
  extend OpenAI::Internal::Type::Union
608
608
 
609
- variant -> { OpenAI::DecisionInputText }
609
+ discriminator :type
610
+
611
+ variant :input_text, -> { OpenAI::DecisionInputText }
610
612
 
611
613
  # An image provided as a base64 data URL or a publicly accessible HTTP(S) URL. File IDs are not supported.
612
- variant -> { OpenAI::DecisionInputImage }
614
+ variant :input_image, -> { OpenAI::DecisionInputImage }
613
615
 
614
616
  # @!method self.variants
615
617
  # @return [Array(OpenAI::Models::DecisionInputText, OpenAI::Models::DecisionInputImage)]
@@ -768,10 +770,12 @@ module OpenAI
768
770
  module Part
769
771
  extend OpenAI::Internal::Type::Union
770
772
 
771
- variant -> { OpenAI::DecisionInputText }
773
+ discriminator :type
774
+
775
+ variant :input_text, -> { OpenAI::DecisionInputText }
772
776
 
773
777
  # An image provided as a base64 data URL or a publicly accessible HTTP(S) URL. File IDs are not supported.
774
- variant -> { OpenAI::DecisionInputImage }
778
+ variant :input_image, -> { OpenAI::DecisionInputImage }
775
779
 
776
780
  # @!method self.variants
777
781
  # @return [Array(OpenAI::Models::DecisionInputText, OpenAI::Models::DecisionInputImage)]
@@ -70,12 +70,15 @@ module OpenAI
70
70
  optional :mask, OpenAI::Internal::Type::FileInput
71
71
 
72
72
  # @!attribute model
73
- # The GPT image model to use for image editing (`gpt-image-1`, `gpt-image-1-mini`,
73
+ # The GPT image model to use for image editing (`gpt-image-1-mini`,
74
74
  # `gpt-image-1.5`, `gpt-image-2`, `gpt-image-2-2026-04-21`,
75
75
  # `gpt-image-2.5-sunburst`, `gpt-image-2.5-sunburst-2026-09-08`,
76
76
  # `gpt-image-2.5-flare`, `gpt-image-2.5-flare-2026-09-08`, or
77
77
  # `chatgpt-image-latest`).
78
78
  #
79
+ # `gpt-image-1` was shut down on October 23, 2026. Use `gpt-image-2.5-sunburst` or
80
+ # `gpt-image-2.5-flare` instead.
81
+ #
79
82
  # @return [String, Symbol, OpenAI::Models::ImageModel, nil]
80
83
  optional :model, union: -> { OpenAI::ImageEditParams::Model }, nil?: true
81
84
 
@@ -215,12 +218,15 @@ module OpenAI
215
218
  # content type.
216
219
  #
217
220
  # @param model [String, Symbol, OpenAI::Models::ImageModel, nil]
218
- # The GPT image model to use for image editing (`gpt-image-1`, `gpt-image-1-mini`,
221
+ # The GPT image model to use for image editing (`gpt-image-1-mini`,
219
222
  # `gpt-image-1.5`, `gpt-image-2`, `gpt-image-2-2026-04-21`,
220
223
  # `gpt-image-2.5-sunburst`, `gpt-image-2.5-sunburst-2026-09-08`,
221
224
  # `gpt-image-2.5-flare`, `gpt-image-2.5-flare-2026-09-08`, or
222
225
  # `chatgpt-image-latest`).
223
226
  #
227
+ # `gpt-image-1` was shut down on October 23, 2026. Use `gpt-image-2.5-sunburst` or
228
+ # `gpt-image-2.5-flare` instead.
229
+ #
224
230
  # @param n [Integer, nil]
225
231
  # The number of images to generate. Must be between 1 and 10.
226
232
  #
@@ -337,17 +343,27 @@ module OpenAI
337
343
  # @return [Array<Symbol>]
338
344
  end
339
345
 
340
- # The GPT image model to use for image editing (`gpt-image-1`, `gpt-image-1-mini`,
346
+ # The GPT image model to use for image editing (`gpt-image-1-mini`,
341
347
  # `gpt-image-1.5`, `gpt-image-2`, `gpt-image-2-2026-04-21`,
342
348
  # `gpt-image-2.5-sunburst`, `gpt-image-2.5-sunburst-2026-09-08`,
343
349
  # `gpt-image-2.5-flare`, `gpt-image-2.5-flare-2026-09-08`, or
344
350
  # `chatgpt-image-latest`).
351
+ #
352
+ # `gpt-image-1` was shut down on October 23, 2026. Use `gpt-image-2.5-sunburst` or
353
+ # `gpt-image-2.5-flare` instead.
345
354
  module Model
346
355
  extend OpenAI::Internal::Type::Union
347
356
 
348
357
  variant String
349
358
 
350
- # The GPT image model to use for image editing (`gpt-image-1`, `gpt-image-1-mini`, `gpt-image-1.5`, `gpt-image-2`, `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`, `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`, `gpt-image-2.5-flare-2026-09-08`, or `chatgpt-image-latest`).
359
+ # The GPT image model to use for image editing
360
+ # (`gpt-image-1-mini`, `gpt-image-1.5`, `gpt-image-2`,
361
+ # `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`,
362
+ # `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`,
363
+ # `gpt-image-2.5-flare-2026-09-08`, or `chatgpt-image-latest`).
364
+ #
365
+ # `gpt-image-1` was shut down on October 23, 2026. Use
366
+ # `gpt-image-2.5-sunburst` or `gpt-image-2.5-flare` instead.
351
367
  variant enum: -> { OpenAI::ImageModel }
352
368
 
353
369
  # @!method self.variants
@@ -32,11 +32,14 @@ module OpenAI
32
32
 
33
33
  # @!attribute model
34
34
  # The GPT image model to use for image generation. Specify a model explicitly.
35
- # Supported models include `gpt-image-1`, `gpt-image-1-mini`, `gpt-image-1.5`,
36
- # `gpt-image-2`, `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`,
35
+ # Supported models include `gpt-image-1-mini`, `gpt-image-1.5`, `gpt-image-2`,
36
+ # `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`,
37
37
  # `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`,
38
38
  # `gpt-image-2.5-flare-2026-09-08`, and `chatgpt-image-latest`.
39
39
  #
40
+ # `gpt-image-1` was shut down on October 23, 2026. Use `gpt-image-2.5-sunburst` or
41
+ # `gpt-image-2.5-flare` instead.
42
+ #
40
43
  # @return [String, Symbol, OpenAI::Models::ImageModel, nil]
41
44
  optional :model, union: -> { OpenAI::ImageGenerateParams::Model }, nil?: true
42
45
 
@@ -165,11 +168,14 @@ module OpenAI
165
168
  #
166
169
  # @param model [String, Symbol, OpenAI::Models::ImageModel, nil]
167
170
  # The GPT image model to use for image generation. Specify a model explicitly.
168
- # Supported models include `gpt-image-1`, `gpt-image-1-mini`, `gpt-image-1.5`,
169
- # `gpt-image-2`, `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`,
171
+ # Supported models include `gpt-image-1-mini`, `gpt-image-1.5`, `gpt-image-2`,
172
+ # `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`,
170
173
  # `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`,
171
174
  # `gpt-image-2.5-flare-2026-09-08`, and `chatgpt-image-latest`.
172
175
  #
176
+ # `gpt-image-1` was shut down on October 23, 2026. Use `gpt-image-2.5-sunburst` or
177
+ # `gpt-image-2.5-flare` instead.
178
+ #
173
179
  # @param moderation [Symbol, OpenAI::Models::ImageGenerateParams::Moderation, nil]
174
180
  # Control the content-moderation level for images generated by the GPT image
175
181
  # models. Must be either `low` for less restrictive filtering or `auto` (default
@@ -261,16 +267,26 @@ module OpenAI
261
267
  end
262
268
 
263
269
  # The GPT image model to use for image generation. Specify a model explicitly.
264
- # Supported models include `gpt-image-1`, `gpt-image-1-mini`, `gpt-image-1.5`,
265
- # `gpt-image-2`, `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`,
270
+ # Supported models include `gpt-image-1-mini`, `gpt-image-1.5`, `gpt-image-2`,
271
+ # `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`,
266
272
  # `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`,
267
273
  # `gpt-image-2.5-flare-2026-09-08`, and `chatgpt-image-latest`.
274
+ #
275
+ # `gpt-image-1` was shut down on October 23, 2026. Use `gpt-image-2.5-sunburst` or
276
+ # `gpt-image-2.5-flare` instead.
268
277
  module Model
269
278
  extend OpenAI::Internal::Type::Union
270
279
 
271
280
  variant String
272
281
 
273
- # The GPT image model to use for image generation. Specify a model explicitly. Supported models include `gpt-image-1`, `gpt-image-1-mini`, `gpt-image-1.5`, `gpt-image-2`, `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`, `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`, `gpt-image-2.5-flare-2026-09-08`, and `chatgpt-image-latest`.
282
+ # The GPT image model to use for image generation. Specify a model explicitly.
283
+ # Supported models include `gpt-image-1-mini`, `gpt-image-1.5`, `gpt-image-2`,
284
+ # `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`,
285
+ # `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`,
286
+ # `gpt-image-2.5-flare-2026-09-08`, and `chatgpt-image-latest`.
287
+ #
288
+ # `gpt-image-1` was shut down on October 23, 2026. Use
289
+ # `gpt-image-2.5-sunburst` or `gpt-image-2.5-flare` instead.
274
290
  variant enum: -> { OpenAI::ImageModel }
275
291
 
276
292
  # @!method self.variants
@@ -12,6 +12,8 @@ module OpenAI
12
12
  GPT_IMAGE_2_5_SUNBURST_2026_09_08 = :"gpt-image-2.5-sunburst-2026-09-08"
13
13
  GPT_IMAGE_2_5_FLARE = :"gpt-image-2.5-flare"
14
14
  GPT_IMAGE_2_5_FLARE_2026_09_08 = :"gpt-image-2.5-flare-2026-09-08"
15
+ # @deprecated GPT Image 1 was shut down on October 23, 2026. Use gpt-image-2.5-sunburst or
16
+ # gpt-image-2.5-flare instead.
15
17
  GPT_IMAGE_1 = :"gpt-image-1"
16
18
  GPT_IMAGE_1_MINI = :"gpt-image-1-mini"
17
19
  CHATGPT_IMAGE_LATEST = :"chatgpt-image-latest"
@@ -10,10 +10,29 @@ module OpenAI
10
10
  # @return [Symbol, :client]
11
11
  required :type, const: :client
12
12
 
13
- # @!method initialize(type: :client)
13
+ # @!attribute acknowledgement_delay_ms
14
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
15
+ # delegation. The model may still speak before this delay. Any commentary or
16
+ # thinking appended to the session cancels all pending acknowledgements, including
17
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
18
+ # (request immediately) for other sessions. Omission in a session update preserves
19
+ # the current value. Updates apply to subsequent delegations.
20
+ #
21
+ # @return [Integer, nil]
22
+ optional :acknowledgement_delay_ms, Integer
23
+
24
+ # @!method initialize(acknowledgement_delay_ms: nil, type: :client)
14
25
  # Delegate tasks to your application. The Live session emits delegation events
15
26
  # that your backend handles.
16
27
  #
28
+ # @param acknowledgement_delay_ms [Integer]
29
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
30
+ # delegation. The model may still speak before this delay. Any commentary or
31
+ # thinking appended to the session cancels all pending acknowledgements, including
32
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
33
+ # (request immediately) for other sessions. Omission in a session update preserves
34
+ # the current value. Updates apply to subsequent delegations.
35
+ #
17
36
  # @param type [Symbol, :client]
18
37
  # The delegation owner. Always `client` for tasks handled by your application.
19
38
  end
@@ -25,19 +25,19 @@ module OpenAI
25
25
  # Mute audio input to the Live model without closing the session. The server acknowledges with `session.input_audio.muted`.
26
26
  variant :"session.input_audio.mute", -> { OpenAI::Live::InputAudioMuteEvent }
27
27
 
28
- # Resume audio input to a Live model after muting it. The server acknowledges with `session.input_audio.unmuted`.
28
+ # Resume audio input to a Live model after muting it. The server acknowledges with `session.input_audio.unmuted`. An active audio fixture still pauses inference until playback finishes.
29
29
  variant :"session.input_audio.unmute", -> { OpenAI::Live::InputAudioUnmuteEvent }
30
30
 
31
31
  # Play one complete audio fixture through the session output. Send this event over the primary WebSocket or a server sideband. Audio must be raw mono PCM16 little-endian at 24 kHz, regardless of the session audio format, and at most 30 seconds. The entire payload is validated before model speech is interrupted and input is muted. Only one fixture can be active. fixture.playing acknowledges acceptance and fixture.played reports server mixer drain. These notifications are not exact transport-media boundaries. Input arriving during playback is dropped and not replayed.
32
32
  variant :"session.output_audio.fixture.play", -> { OpenAI::Live::OutputAudioFixturePlayEvent }
33
33
 
34
- # Append instructions to the Live conversation while it is running, optionally associating them with an existing client delegation.
34
+ # Append developer instructions to the Live conversation while it is running, optionally associating them with an existing client delegation. Rejected while an audio fixture is active. These instructions remain in conversation history through compaction and are included in future backend delegations. For external audio, describe content already delivered so the assistant does not repeat it.
35
35
  variant :"session.instructions.append", -> { OpenAI::Live::InstructionsAppendEvent }
36
36
 
37
- # Provide silent reasoning or progress context to the Live model, optionally for an existing client delegation.
37
+ # Provide silent reasoning or progress context to the Live model, optionally for an existing client delegation. Rejected while an audio fixture is active.
38
38
  variant :"session.thinking.append", -> { OpenAI::Live::ThinkingAppendEvent }
39
39
 
40
- # Provide context the Live model can communicate to the user, optionally for an existing client delegation.
40
+ # Provide context the Live model can communicate to the user, optionally for an existing client delegation. Rejected while an audio fixture is active.
41
41
  variant :"session.commentary.append", -> { OpenAI::Live::CommentaryAppendEvent }
42
42
 
43
43
  # Evaluate the configured questions using the current conversation and Decision inputs. Reusing an event_id is rejected for the lifetime of the session.
@@ -35,7 +35,7 @@ module OpenAI
35
35
 
36
36
  # @!method initialize(content:, delegation_id:, event_id: nil, type: :"session.commentary.append")
37
37
  # Provide context the Live model can communicate to the user, optionally for an
38
- # existing client delegation.
38
+ # existing client delegation. Rejected while an audio fixture is active.
39
39
  #
40
40
  # @param content [String]
41
41
  # Speakable context for the Live model, limited to 500 tokens. Use this for a