openai 0.110.0 → 0.112.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 (255) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +20 -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_input_file.rb +23 -1
  12. data/lib/openai/models/beta/beta_response_input_file_content.rb +23 -1
  13. data/lib/openai/models/beta/beta_response_input_image.rb +23 -1
  14. data/lib/openai/models/beta/beta_response_input_image_content.rb +23 -1
  15. data/lib/openai/models/beta/beta_response_input_text.rb +23 -1
  16. data/lib/openai/models/beta/beta_response_input_text_content.rb +23 -1
  17. data/lib/openai/models/beta/beta_response_item.rb +28 -1
  18. data/lib/openai/models/beta/beta_response_output_item.rb +28 -1
  19. data/lib/openai/models/beta/beta_response_tool_search_output_item_param.rb +26 -15
  20. data/lib/openai/models/beta/beta_tool.rb +26 -15
  21. data/lib/openai/models/beta/persisted_agent_tool.rb +18 -1
  22. data/lib/openai/models/beta/persisted_agent_tool_param.rb +18 -1
  23. data/lib/openai/models/chat/chat_completion_content_part.rb +23 -1
  24. data/lib/openai/models/chat/chat_completion_content_part_image.rb +23 -1
  25. data/lib/openai/models/chat/chat_completion_content_part_input_audio.rb +23 -1
  26. data/lib/openai/models/chat/chat_completion_content_part_text.rb +23 -1
  27. data/lib/openai/models/conversations/computer_screenshot_content.rb +23 -1
  28. data/lib/openai/models/decision_create_params.rb +802 -28
  29. data/lib/openai/models/decision_input_json.rb +45 -0
  30. data/lib/openai/models/decision_input_message.rb +304 -48
  31. data/lib/openai/models/decision_input_part.rb +4 -1
  32. data/lib/openai/models/decision_question_input_image.rb +54 -0
  33. data/lib/openai/models/decision_question_input_part.rb +23 -0
  34. data/lib/openai/models/decision_question_input_text.rb +21 -0
  35. data/lib/openai/models/image_edit_params.rb +20 -4
  36. data/lib/openai/models/image_generate_params.rb +23 -7
  37. data/lib/openai/models/image_model.rb +2 -0
  38. data/lib/openai/models/live/client_delegation.rb +20 -1
  39. data/lib/openai/models/live/client_event.rb +4 -4
  40. data/lib/openai/models/live/commentary_append_event.rb +1 -1
  41. data/lib/openai/models/live/decision_assistant_message.rb +154 -0
  42. data/lib/openai/models/live/decision_choice_option.rb +35 -0
  43. data/lib/openai/models/live/decision_developer_message.rb +70 -0
  44. data/lib/openai/models/live/decision_input_text.rb +26 -0
  45. data/lib/openai/models/live/decision_item_create_event.rb +490 -131
  46. data/lib/openai/models/live/decision_item_created_event.rb +486 -131
  47. data/lib/openai/models/live/decision_json_object.rb +10 -0
  48. data/lib/openai/models/live/decision_question.rb +172 -0
  49. data/lib/openai/models/live/decision_stored_assistant_message.rb +152 -0
  50. data/lib/openai/models/live/decision_stored_developer_message.rb +68 -0
  51. data/lib/openai/models/live/decision_stored_system_message.rb +68 -0
  52. data/lib/openai/models/live/decision_stored_user_message.rb +195 -0
  53. data/lib/openai/models/live/decision_system_message.rb +70 -0
  54. data/lib/openai/models/live/decision_trigger.rb +6 -185
  55. data/lib/openai/models/live/decision_user_message.rb +193 -0
  56. data/lib/openai/models/live/decisions_delegation_config.rb +5 -177
  57. data/lib/openai/models/live/decisions_delegation_update_config.rb +5 -184
  58. data/lib/openai/models/live/fork_client_event.rb +4 -4
  59. data/lib/openai/models/live/fork_server_event.rb +2 -2
  60. data/lib/openai/models/live/fork_session_config.rb +20 -1
  61. data/lib/openai/models/live/input_audio_muted_event.rb +3 -2
  62. data/lib/openai/models/live/input_audio_unmute_event.rb +2 -1
  63. data/lib/openai/models/live/input_audio_unmuted_event.rb +3 -2
  64. data/lib/openai/models/live/instructions_append_event.rb +5 -2
  65. data/lib/openai/models/live/media_session_config.rb +39 -2
  66. data/lib/openai/models/live/media_session_fork_config.rb +20 -1
  67. data/lib/openai/models/live/server_event.rb +2 -2
  68. data/lib/openai/models/live/session_accept_params.rb +39 -2
  69. data/lib/openai/models/live/session_config.rb +39 -2
  70. data/lib/openai/models/live/session_resource.rb +39 -2
  71. data/lib/openai/models/live/session_update_config.rb +41 -2
  72. data/lib/openai/models/live/sideband_client_event.rb +4 -4
  73. data/lib/openai/models/live/sideband_server_event.rb +2 -2
  74. data/lib/openai/models/live/thinking_append_event.rb +1 -1
  75. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rb +10 -12
  76. data/lib/openai/models/realtime/realtime_error_event.rb +1 -1
  77. data/lib/openai/models/realtime/realtime_server_event.rb +1 -1
  78. data/lib/openai/models/realtime/realtime_translation_server_event.rb +1 -1
  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/models.rb +8 -0
  88. data/lib/openai/resources/beta/agents.rb +2 -2
  89. data/lib/openai/resources/beta/responses.rb +2 -2
  90. data/lib/openai/resources/decisions.rb +5 -6
  91. data/lib/openai/resources/images.rb +18 -6
  92. data/lib/openai/resources/live/forks.rb +2 -2
  93. data/lib/openai/resources/live/sideband.rb +2 -2
  94. data/lib/openai/resources/live.rb +2 -2
  95. data/lib/openai/resources/realtime/translations.rb +2 -2
  96. data/lib/openai/resources/realtime.rb +2 -2
  97. data/lib/openai/resources/responses.rb +2 -2
  98. data/lib/openai/version.rb +1 -1
  99. data/lib/openai.rb +16 -0
  100. data/rbi/openai/models/beta/agent.rbi +2 -1
  101. data/rbi/openai/models/beta/agent_create_params.rbi +6 -3
  102. data/rbi/openai/models/beta/agent_session.rbi +2 -1
  103. data/rbi/openai/models/beta/agent_tool.rbi +40 -1
  104. data/rbi/openai/models/beta/agent_tool_param.rbi +40 -1
  105. data/rbi/openai/models/beta/agent_update_params.rbi +6 -3
  106. data/rbi/openai/models/beta/agents/session_create_params.rbi +6 -3
  107. data/rbi/openai/models/beta/beta_response_input_file.rbi +31 -1
  108. data/rbi/openai/models/beta/beta_response_input_file_content.rbi +39 -1
  109. data/rbi/openai/models/beta/beta_response_input_image.rbi +31 -1
  110. data/rbi/openai/models/beta/beta_response_input_image_content.rbi +39 -1
  111. data/rbi/openai/models/beta/beta_response_input_text.rbi +31 -1
  112. data/rbi/openai/models/beta/beta_response_input_text_content.rbi +39 -1
  113. data/rbi/openai/models/beta/beta_response_item.rbi +58 -1
  114. data/rbi/openai/models/beta/beta_response_output_item.rbi +58 -1
  115. data/rbi/openai/models/beta/beta_response_tool_search_output_item_param.rbi +24 -15
  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/chat/chat_completion_content_part.rbi +43 -1
  120. data/rbi/openai/models/chat/chat_completion_content_part_image.rbi +41 -1
  121. data/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi +46 -1
  122. data/rbi/openai/models/chat/chat_completion_content_part_text.rbi +39 -1
  123. data/rbi/openai/models/conversations/computer_screenshot_content.rbi +48 -1
  124. data/rbi/openai/models/decision_create_params.rbi +1273 -26
  125. data/rbi/openai/models/decision_input_json.rbi +75 -0
  126. data/rbi/openai/models/decision_input_message.rbi +455 -52
  127. data/rbi/openai/models/decision_input_part.rbi +2 -1
  128. data/rbi/openai/models/decision_question_input_image.rbi +82 -0
  129. data/rbi/openai/models/decision_question_input_part.rbi +25 -0
  130. data/rbi/openai/models/decision_question_input_text.rbi +49 -0
  131. data/rbi/openai/models/image_edit_params.rbi +12 -3
  132. data/rbi/openai/models/image_generate_params.rbi +15 -6
  133. data/rbi/openai/models/live/client_delegation.rbi +23 -1
  134. data/rbi/openai/models/live/commentary_append_event.rbi +1 -1
  135. data/rbi/openai/models/live/decision_assistant_message.rbi +247 -0
  136. data/rbi/openai/models/live/decision_choice_option.rbi +67 -0
  137. data/rbi/openai/models/live/decision_developer_message.rbi +109 -0
  138. data/rbi/openai/models/live/decision_input_text.rbi +55 -0
  139. data/rbi/openai/models/live/decision_item_create_event.rbi +765 -184
  140. data/rbi/openai/models/live/decision_item_created_event.rbi +737 -184
  141. data/rbi/openai/models/live/decision_json_object.rbi +16 -0
  142. data/rbi/openai/models/live/decision_question.rbi +300 -0
  143. data/rbi/openai/models/live/decision_stored_assistant_message.rbi +245 -0
  144. data/rbi/openai/models/live/decision_stored_developer_message.rbi +107 -0
  145. data/rbi/openai/models/live/decision_stored_system_message.rbi +107 -0
  146. data/rbi/openai/models/live/decision_stored_user_message.rbi +333 -0
  147. data/rbi/openai/models/live/decision_system_message.rbi +109 -0
  148. data/rbi/openai/models/live/decision_trigger.rbi +11 -320
  149. data/rbi/openai/models/live/decision_user_message.rbi +320 -0
  150. data/rbi/openai/models/live/decisions_delegation_config.rbi +10 -321
  151. data/rbi/openai/models/live/decisions_delegation_update_config.rbi +13 -324
  152. data/rbi/openai/models/live/fork_session_config.rbi +27 -1
  153. data/rbi/openai/models/live/input_audio_muted_event.rbi +3 -2
  154. data/rbi/openai/models/live/input_audio_unmute_event.rbi +2 -1
  155. data/rbi/openai/models/live/input_audio_unmuted_event.rbi +3 -2
  156. data/rbi/openai/models/live/instructions_append_event.rbi +5 -2
  157. data/rbi/openai/models/live/media_session_config.rbi +44 -2
  158. data/rbi/openai/models/live/media_session_fork_config.rbi +27 -1
  159. data/rbi/openai/models/live/session_accept_params.rbi +44 -2
  160. data/rbi/openai/models/live/session_config.rbi +44 -2
  161. data/rbi/openai/models/live/session_resource.rbi +44 -2
  162. data/rbi/openai/models/live/session_update_config.rbi +54 -2
  163. data/rbi/openai/models/live/thinking_append_event.rbi +1 -1
  164. data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rbi +10 -12
  165. data/rbi/openai/models/realtime/realtime_error_event.rbi +1 -1
  166. data/rbi/openai/models/responses/response_input_file.rbi +31 -1
  167. data/rbi/openai/models/responses/response_input_file_content.rbi +39 -1
  168. data/rbi/openai/models/responses/response_input_image.rbi +33 -1
  169. data/rbi/openai/models/responses/response_input_image_content.rbi +41 -1
  170. data/rbi/openai/models/responses/response_input_text.rbi +31 -1
  171. data/rbi/openai/models/responses/response_input_text_content.rbi +39 -1
  172. data/rbi/openai/models/responses/response_tool_search_output_item_param.rbi +24 -15
  173. data/rbi/openai/models/responses/tool.rbi +24 -15
  174. data/rbi/openai/models.rbi +8 -0
  175. data/rbi/openai/resources/beta/agents.rbi +4 -2
  176. data/rbi/openai/resources/beta/responses.rbi +8 -1
  177. data/rbi/openai/resources/decisions.rbi +4 -5
  178. data/rbi/openai/resources/images.rbi +18 -6
  179. data/rbi/openai/resources/live/forks.rbi +8 -1
  180. data/rbi/openai/resources/live/sideband.rbi +8 -1
  181. data/rbi/openai/resources/live.rbi +8 -1
  182. data/rbi/openai/resources/realtime/translations.rbi +8 -1
  183. data/rbi/openai/resources/realtime.rbi +8 -1
  184. data/rbi/openai/resources/responses.rbi +8 -1
  185. data/sig/openai/models/beta/agent_tool.rbs +14 -0
  186. data/sig/openai/models/beta/agent_tool_param.rbs +14 -0
  187. data/sig/openai/models/beta/beta_response_input_file.rbs +34 -3
  188. data/sig/openai/models/beta/beta_response_input_file_content.rbs +34 -3
  189. data/sig/openai/models/beta/beta_response_input_image.rbs +34 -3
  190. data/sig/openai/models/beta/beta_response_input_image_content.rbs +34 -3
  191. data/sig/openai/models/beta/beta_response_input_text.rbs +34 -3
  192. data/sig/openai/models/beta/beta_response_input_text_content.rbs +34 -3
  193. data/sig/openai/models/beta/beta_response_item.rbs +34 -3
  194. data/sig/openai/models/beta/beta_response_output_item.rbs +34 -3
  195. data/sig/openai/models/beta/beta_response_tool_search_output_item_param.rbs +24 -15
  196. data/sig/openai/models/beta/beta_tool.rbs +24 -15
  197. data/sig/openai/models/beta/persisted_agent_tool.rbs +14 -0
  198. data/sig/openai/models/beta/persisted_agent_tool_param.rbs +14 -0
  199. data/sig/openai/models/chat/chat_completion_content_part.rbs +34 -3
  200. data/sig/openai/models/chat/chat_completion_content_part_image.rbs +34 -3
  201. data/sig/openai/models/chat/chat_completion_content_part_input_audio.rbs +34 -3
  202. data/sig/openai/models/chat/chat_completion_content_part_text.rbs +34 -3
  203. data/sig/openai/models/conversations/computer_screenshot_content.rbs +34 -3
  204. data/sig/openai/models/decision_create_params.rbs +610 -24
  205. data/sig/openai/models/decision_input_json.rbs +34 -0
  206. data/sig/openai/models/decision_input_message.rbs +264 -35
  207. data/sig/openai/models/decision_input_part.rbs +3 -1
  208. data/sig/openai/models/decision_question_input_image.rbs +51 -0
  209. data/sig/openai/models/decision_question_input_part.rbs +14 -0
  210. data/sig/openai/models/decision_question_input_text.rbs +15 -0
  211. data/sig/openai/models/image_edit_params.rbs +8 -2
  212. data/sig/openai/models/image_generate_params.rbs +10 -4
  213. data/sig/openai/models/live/client_delegation.rbs +30 -3
  214. data/sig/openai/models/live/decision_assistant_message.rbs +134 -0
  215. data/sig/openai/models/live/decision_choice_option.rbs +37 -0
  216. data/sig/openai/models/live/decision_developer_message.rbs +67 -0
  217. data/sig/openai/models/live/decision_input_text.rbs +20 -0
  218. data/sig/openai/models/live/decision_item_create_event.rbs +413 -131
  219. data/sig/openai/models/live/decision_item_created_event.rbs +401 -131
  220. data/sig/openai/models/live/decision_json_object.rbs +9 -0
  221. data/sig/openai/models/live/decision_question.rbs +164 -0
  222. data/sig/openai/models/live/decision_stored_assistant_message.rbs +131 -0
  223. data/sig/openai/models/live/decision_stored_developer_message.rbs +64 -0
  224. data/sig/openai/models/live/decision_stored_system_message.rbs +64 -0
  225. data/sig/openai/models/live/decision_stored_user_message.rbs +177 -0
  226. data/sig/openai/models/live/decision_system_message.rbs +67 -0
  227. data/sig/openai/models/live/decision_trigger.rbs +8 -171
  228. data/sig/openai/models/live/decision_user_message.rbs +180 -0
  229. data/sig/openai/models/live/decisions_delegation_config.rbs +6 -167
  230. data/sig/openai/models/live/decisions_delegation_update_config.rbs +8 -169
  231. data/sig/openai/models/live/fork_session_config.rbs +26 -0
  232. data/sig/openai/models/live/media_session_config.rbs +53 -4
  233. data/sig/openai/models/live/media_session_fork_config.rbs +26 -0
  234. data/sig/openai/models/live/session_accept_params.rbs +53 -4
  235. data/sig/openai/models/live/session_config.rbs +53 -4
  236. data/sig/openai/models/live/session_resource.rbs +53 -4
  237. data/sig/openai/models/live/session_update_config.rbs +52 -0
  238. data/sig/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rbs +10 -12
  239. data/sig/openai/models/responses/response_input_file.rbs +34 -3
  240. data/sig/openai/models/responses/response_input_file_content.rbs +34 -3
  241. data/sig/openai/models/responses/response_input_image.rbs +34 -3
  242. data/sig/openai/models/responses/response_input_image_content.rbs +34 -3
  243. data/sig/openai/models/responses/response_input_text.rbs +34 -3
  244. data/sig/openai/models/responses/response_input_text_content.rbs +34 -3
  245. data/sig/openai/models/responses/response_tool_search_output_item_param.rbs +24 -15
  246. data/sig/openai/models/responses/tool.rbs +24 -15
  247. data/sig/openai/models.rbs +9 -1
  248. data/sig/openai/resources/beta/responses.rbs +2 -1
  249. data/sig/openai/resources/live/forks.rbs +2 -1
  250. data/sig/openai/resources/live/sideband.rbs +2 -1
  251. data/sig/openai/resources/live.rbs +2 -1
  252. data/sig/openai/resources/realtime/translations.rbs +2 -1
  253. data/sig/openai/resources/realtime.rbs +2 -1
  254. data/sig/openai/resources/responses.rbs +2 -1
  255. metadata +49 -1
@@ -12,196 +12,17 @@ module OpenAI
12
12
  # @!attribute questions
13
13
  # Native Decision API questions evaluated together, in order.
14
14
  #
15
- # @return [Array<OpenAI::Models::Live::DecisionsDelegationUpdateConfig::Question::Predicate, OpenAI::Models::Live::DecisionsDelegationUpdateConfig::Question::Choice, OpenAI::Models::Live::DecisionsDelegationUpdateConfig::Question::Score>, nil]
16
- optional(
17
- :questions,
18
- -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Live::DecisionsDelegationUpdateConfig::Question] }
19
- )
15
+ # @return [Array<OpenAI::Models::Live::DecisionQuestion::Choice, OpenAI::Models::Live::DecisionQuestion::Predicate, OpenAI::Models::Live::DecisionQuestion::Score>, nil]
16
+ optional :questions, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Live::DecisionQuestion] }
20
17
 
21
18
  # @!method initialize(model: nil, questions: nil)
22
19
  # @param model [String]
23
20
  #
24
- # @param questions [Array<OpenAI::Models::Live::DecisionsDelegationUpdateConfig::Question::Predicate, OpenAI::Models::Live::DecisionsDelegationUpdateConfig::Question::Choice, OpenAI::Models::Live::DecisionsDelegationUpdateConfig::Question::Score>]
21
+ # @param questions [Array<OpenAI::Models::Live::DecisionQuestion::Choice, OpenAI::Models::Live::DecisionQuestion::Predicate, OpenAI::Models::Live::DecisionQuestion::Score>]
25
22
  # Native Decision API questions evaluated together, in order.
26
23
 
27
- # A question about the request's input, with an optional correlation name.
28
- module Question
29
- extend OpenAI::Internal::Type::Union
30
-
31
- discriminator :type
32
-
33
- # Estimate how likely it is that a statement about the input is true.
34
- variant :predicate, -> { OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Predicate }
35
-
36
- # Choose from the supplied options based on the input.
37
- variant :choice, -> { OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Choice }
38
-
39
- # Rate the input against the supplied ordered levels.
40
- variant :score, -> { OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Score }
41
-
42
- class Predicate < OpenAI::Internal::Type::BaseModel
43
- # @!attribute instructions
44
- #
45
- # @return [String]
46
- required :instructions, String
47
-
48
- # @!attribute type
49
- # The type of the object. Always `predicate`.
50
- #
51
- # @return [Symbol, :predicate]
52
- required :type, const: :predicate
53
-
54
- # @!attribute name
55
- #
56
- # @return [String, nil]
57
- optional :name, String
58
-
59
- # @!method initialize(instructions:, name: nil, type: :predicate)
60
- # Estimate how likely it is that a statement about the input is true.
61
- #
62
- # @param instructions [String]
63
- #
64
- # @param name [String]
65
- #
66
- # @param type [Symbol, :predicate]
67
- # The type of the object. Always `predicate`.
68
- end
69
-
70
- class Choice < OpenAI::Internal::Type::BaseModel
71
- # @!attribute choices
72
- # Provide between 2 and 255 choices. Each choice must be unique.
73
- #
74
- # @return [Array<OpenAI::Models::Live::DecisionsDelegationUpdateConfig::Question::Choice::Choice>]
75
- required(
76
- :choices,
77
- -> {
78
- OpenAI::Internal::Type::ArrayOf[OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Choice::Choice]
79
- }
80
- )
81
-
82
- # @!attribute instructions
83
- #
84
- # @return [String]
85
- required :instructions, String
86
-
87
- # @!attribute type
88
- # The type of the object. Always `choice`.
89
- #
90
- # @return [Symbol, :choice]
91
- required :type, const: :choice
92
-
93
- # @!attribute name
94
- #
95
- # @return [String, nil]
96
- optional :name, String
97
-
98
- # @!method initialize(choices:, instructions:, name: nil, type: :choice)
99
- # Choose from the supplied options based on the input.
100
- #
101
- # @param choices [Array<OpenAI::Models::Live::DecisionsDelegationUpdateConfig::Question::Choice::Choice>]
102
- # Provide between 2 and 255 choices. Each choice must be unique.
103
- #
104
- # @param instructions [String]
105
- #
106
- # @param name [String]
107
- #
108
- # @param type [Symbol, :choice]
109
- # The type of the object. Always `choice`.
110
- class Choice < OpenAI::Internal::Type::BaseModel
111
- # @!attribute value
112
- # Choice values are typed: a string and a boolean with the same text are distinct.
113
- #
114
- # @return [String, Boolean]
115
- required(
116
- :value,
117
- union: -> { OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Choice::Choice::Value }
118
- )
119
-
120
- # @!attribute description
121
- #
122
- # @return [String, nil]
123
- optional :description, String
124
-
125
- # @!method initialize(value:, description: nil)
126
- # @param value [String, Boolean]
127
- # Choice values are typed: a string and a boolean with the same text are distinct.
128
- #
129
- # @param description [String]
130
-
131
- # Choice values are typed: a string and a boolean with the same text are distinct.
132
- #
133
- # @see OpenAI::Models::Live::DecisionsDelegationUpdateConfig::Question::Choice::Choice#value
134
- module Value
135
- extend OpenAI::Internal::Type::Union
136
-
137
- variant String
138
-
139
- variant OpenAI::Internal::Type::Boolean
140
-
141
- # @!method self.variants
142
- # @return [Array(String, Boolean)]
143
- end
144
- end
145
- end
146
-
147
- class Score < OpenAI::Internal::Type::BaseModel
148
- # @!attribute instructions
149
- #
150
- # @return [String]
151
- required :instructions, String
152
-
153
- # @!attribute levels
154
- #
155
- # @return [Array<OpenAI::Models::Live::DecisionsDelegationUpdateConfig::Question::Score::Level>]
156
- required(
157
- :levels,
158
- -> {
159
- OpenAI::Internal::Type::ArrayOf[OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Score::Level]
160
- }
161
- )
162
-
163
- # @!attribute type
164
- # The type of the object. Always `score`.
165
- #
166
- # @return [Symbol, :score]
167
- required :type, const: :score
168
-
169
- # @!attribute name
170
- #
171
- # @return [String, nil]
172
- optional :name, String
173
-
174
- # @!method initialize(instructions:, levels:, name: nil, type: :score)
175
- # Rate the input against the supplied ordered levels.
176
- #
177
- # @param instructions [String]
178
- #
179
- # @param levels [Array<OpenAI::Models::Live::DecisionsDelegationUpdateConfig::Question::Score::Level>]
180
- #
181
- # @param name [String]
182
- #
183
- # @param type [Symbol, :score]
184
- # The type of the object. Always `score`.
185
- class Level < OpenAI::Internal::Type::BaseModel
186
- # @!attribute label
187
- #
188
- # @return [String]
189
- required :label, String
190
-
191
- # @!attribute description
192
- #
193
- # @return [String, nil]
194
- optional :description, String
195
-
196
- # @!method initialize(label:, description: nil)
197
- # @param label [String]
198
- # @param description [String]
199
- end
200
- end
201
-
202
- # @!method self.variants
203
- # @return [Array(OpenAI::Models::Live::DecisionsDelegationUpdateConfig::Question::Predicate, OpenAI::Models::Live::DecisionsDelegationUpdateConfig::Question::Choice, OpenAI::Models::Live::DecisionsDelegationUpdateConfig::Question::Score)]
204
- end
24
+ require_relative "decision_question"
25
+ Question = ::OpenAI::Models::Live::DecisionQuestion
205
26
  end
206
27
  end
207
28
  end
@@ -24,19 +24,19 @@ module OpenAI
24
24
  # Mute audio input to the Live model without closing the session. The server acknowledges with `session.input_audio.muted`.
25
25
  variant :"session.input_audio.mute", -> { OpenAI::Live::InputAudioMuteEvent }
26
26
 
27
- # Resume audio input to a Live model after muting it. The server acknowledges with `session.input_audio.unmuted`.
27
+ # 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.
28
28
  variant :"session.input_audio.unmute", -> { OpenAI::Live::InputAudioUnmuteEvent }
29
29
 
30
30
  # 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.
31
31
  variant :"session.output_audio.fixture.play", -> { OpenAI::Live::OutputAudioFixturePlayEvent }
32
32
 
33
- # Append instructions to the Live conversation while it is running, optionally associating them with an existing client delegation.
33
+ # 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.
34
34
  variant :"session.instructions.append", -> { OpenAI::Live::InstructionsAppendEvent }
35
35
 
36
- # Provide silent reasoning or progress context to the Live model, optionally for an existing client delegation.
36
+ # Provide silent reasoning or progress context to the Live model, optionally for an existing client delegation. Rejected while an audio fixture is active.
37
37
  variant :"session.thinking.append", -> { OpenAI::Live::ThinkingAppendEvent }
38
38
 
39
- # Provide context the Live model can communicate to the user, optionally for an existing client delegation.
39
+ # Provide context the Live model can communicate to the user, optionally for an existing client delegation. Rejected while an audio fixture is active.
40
40
  variant :"session.commentary.append", -> { OpenAI::Live::CommentaryAppendEvent }
41
41
 
42
42
  # Evaluate the configured questions using the current conversation and Decision inputs. Reusing an event_id is rejected for the lifetime of the session.
@@ -19,10 +19,10 @@ module OpenAI
19
19
  # Returned when a Live session update is accepted. Contains the resolved session configuration after the update.
20
20
  variant :"session.updated", -> { OpenAI::Live::SessionUpdatedEvent }
21
21
 
22
- # Returned when a session.input_audio.mute command is accepted. Input audio is no longer sent to the model; sideband audio reflection continues.
22
+ # Acknowledges a session.input_audio.mute command. An independent input mute sends silence to the model and preserves sideband audio reflection. Fixture playback does not emit this event.
23
23
  variant :"session.input_audio.muted", -> { OpenAI::Live::InputAudioMutedEvent }
24
24
 
25
- # Returned when a session.input_audio.unmute command is accepted. Input audio is sent to the model again.
25
+ # Acknowledges a session.input_audio.unmute command, removing the independent input mute. An active audio fixture still pauses inference until playback finishes. Fixture playback does not emit this event.
26
26
  variant :"session.input_audio.unmuted", -> { OpenAI::Live::InputAudioUnmutedEvent }
27
27
 
28
28
  # The existing playback path has accepted the validated audio fixture. This acknowledgment does not identify when the listener receives the first sample. The optional client_event_id echoes the play command.
@@ -82,6 +82,17 @@ module OpenAI
82
82
  # @return [Symbol, :responses]
83
83
  required :type, const: :responses
84
84
 
85
+ # @!attribute acknowledgement_delay_ms
86
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
87
+ # delegation. The model may still speak before this delay. Any commentary or
88
+ # thinking appended to the session cancels all pending acknowledgements, including
89
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
90
+ # (request immediately) for other sessions. Omission in a session update preserves
91
+ # the current value. Updates apply to subsequent delegations.
92
+ #
93
+ # @return [Integer, nil]
94
+ optional :acknowledgement_delay_ms, Integer
95
+
85
96
  # @!attribute responses
86
97
  # Responses backend settings to update. Omitted settings keep their existing
87
98
  # values.
@@ -89,11 +100,19 @@ module OpenAI
89
100
  # @return [OpenAI::Models::Live::ResponsesDelegationUpdateConfig, nil]
90
101
  optional :responses, -> { OpenAI::Live::ResponsesDelegationUpdateConfig }
91
102
 
92
- # @!method initialize(responses: nil, type: :responses)
103
+ # @!method initialize(acknowledgement_delay_ms: nil, responses: nil, type: :responses)
93
104
  # Overrides for the stored session’s Responses backend. Only supported when the
94
105
  # stored session already uses Responses delegation; the delegation type cannot
95
106
  # change.
96
107
  #
108
+ # @param acknowledgement_delay_ms [Integer]
109
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
110
+ # delegation. The model may still speak before this delay. Any commentary or
111
+ # thinking appended to the session cancels all pending acknowledgements, including
112
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
113
+ # (request immediately) for other sessions. Omission in a session update preserves
114
+ # the current value. Updates apply to subsequent delegations.
115
+ #
97
116
  # @param responses [OpenAI::Models::Live::ResponsesDelegationUpdateConfig]
98
117
  # Responses backend settings to update. Omitted settings keep their existing
99
118
  # values.
@@ -24,8 +24,9 @@ module OpenAI
24
24
  optional :client_event_id, String
25
25
 
26
26
  # @!method initialize(event_id:, client_event_id: nil, type: :"session.input_audio.muted")
27
- # Returned when a session.input_audio.mute command is accepted. Input audio is no
28
- # longer sent to the model; sideband audio reflection continues.
27
+ # Acknowledges a session.input_audio.mute command. An independent input mute sends
28
+ # silence to the model and preserves sideband audio reflection. Fixture playback
29
+ # does not emit this event.
29
30
  #
30
31
  # @param event_id [String]
31
32
  # The unique ID of the Live server event.
@@ -19,7 +19,8 @@ module OpenAI
19
19
 
20
20
  # @!method initialize(event_id: nil, type: :"session.input_audio.unmute")
21
21
  # Resume audio input to a Live model after muting it. The server acknowledges with
22
- # `session.input_audio.unmuted`.
22
+ # `session.input_audio.unmuted`. An active audio fixture still pauses inference
23
+ # until playback finishes.
23
24
  #
24
25
  # @param event_id [String, nil]
25
26
  # Optional client identifier for correlating this command with a server event's
@@ -24,8 +24,9 @@ module OpenAI
24
24
  optional :client_event_id, String
25
25
 
26
26
  # @!method initialize(event_id:, client_event_id: nil, type: :"session.input_audio.unmuted")
27
- # Returned when a session.input_audio.unmute command is accepted. Input audio is
28
- # sent to the model again.
27
+ # Acknowledges a session.input_audio.unmute command, removing the independent
28
+ # input mute. An active audio fixture still pauses inference until playback
29
+ # finishes. Fixture playback does not emit this event.
29
30
  #
30
31
  # @param event_id [String]
31
32
  # The unique ID of the Live server event.
@@ -33,8 +33,11 @@ module OpenAI
33
33
  optional :event_id, String, nil?: true
34
34
 
35
35
  # @!method initialize(content:, delegation_id:, event_id: nil, type: :"session.instructions.append")
36
- # Append instructions to the Live conversation while it is running, optionally
37
- # associating them with an existing client delegation.
36
+ # Append developer instructions to the Live conversation while it is running,
37
+ # optionally associating them with an existing client delegation. Rejected while
38
+ # an audio fixture is active. These instructions remain in conversation history
39
+ # through compaction and are included in future backend delegations. For external
40
+ # audio, describe content already delivered so the assistant does not repeat it.
38
41
  #
39
42
  # @param content [String]
40
43
  # Instruction text to append, limited to 500 tokens. This is a plain string, not
@@ -227,13 +227,32 @@ module OpenAI
227
227
  # @return [Symbol, :responses]
228
228
  required :type, const: :responses
229
229
 
230
- # @!method initialize(responses:, type: :responses)
230
+ # @!attribute acknowledgement_delay_ms
231
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
232
+ # delegation. The model may still speak before this delay. Any commentary or
233
+ # thinking appended to the session cancels all pending acknowledgements, including
234
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
235
+ # (request immediately) for other sessions. Omission in a session update preserves
236
+ # the current value. Updates apply to subsequent delegations.
237
+ #
238
+ # @return [Integer, nil]
239
+ optional :acknowledgement_delay_ms, Integer
240
+
241
+ # @!method initialize(responses:, acknowledgement_delay_ms: nil, type: :responses)
231
242
  # Delegate tasks to a Responses model managed by the Live session.
232
243
  #
233
244
  # @param responses [OpenAI::Models::Live::ResponsesDelegationConfig]
234
245
  # Backend model, prompt, and tools used when the Live session delegates a task to
235
246
  # Responses.
236
247
  #
248
+ # @param acknowledgement_delay_ms [Integer]
249
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
250
+ # delegation. The model may still speak before this delay. Any commentary or
251
+ # thinking appended to the session cancels all pending acknowledgements, including
252
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
253
+ # (request immediately) for other sessions. Omission in a session update preserves
254
+ # the current value. Updates apply to subsequent delegations.
255
+ #
237
256
  # @param type [Symbol, :responses]
238
257
  # The delegation owner. Always `responses` for tasks handled by the Responses API.
239
258
  end
@@ -249,8 +268,26 @@ module OpenAI
249
268
  # @return [Symbol, :decisions]
250
269
  required :type, const: :decisions
251
270
 
252
- # @!method initialize(decisions:, type: :decisions)
271
+ # @!attribute acknowledgement_delay_ms
272
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
273
+ # delegation. The model may still speak before this delay. Any commentary or
274
+ # thinking appended to the session cancels all pending acknowledgements, including
275
+ # those for other delegations. Defaults to 400. Updates apply to subsequent
276
+ # delegations.
277
+ #
278
+ # @return [Integer, nil]
279
+ optional :acknowledgement_delay_ms, Integer
280
+
281
+ # @!method initialize(decisions:, acknowledgement_delay_ms: nil, type: :decisions)
253
282
  # @param decisions [OpenAI::Models::Live::DecisionsDelegationConfig]
283
+ #
284
+ # @param acknowledgement_delay_ms [Integer]
285
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
286
+ # delegation. The model may still speak before this delay. Any commentary or
287
+ # thinking appended to the session cancels all pending acknowledgements, including
288
+ # those for other delegations. Defaults to 400. Updates apply to subsequent
289
+ # delegations.
290
+ #
254
291
  # @param type [Symbol, :decisions]
255
292
  end
256
293
 
@@ -51,6 +51,17 @@ module OpenAI
51
51
  # @return [Symbol, :responses]
52
52
  required :type, const: :responses
53
53
 
54
+ # @!attribute acknowledgement_delay_ms
55
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
56
+ # delegation. The model may still speak before this delay. Any commentary or
57
+ # thinking appended to the session cancels all pending acknowledgements, including
58
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
59
+ # (request immediately) for other sessions. Omission in a session update preserves
60
+ # the current value. Updates apply to subsequent delegations.
61
+ #
62
+ # @return [Integer, nil]
63
+ optional :acknowledgement_delay_ms, Integer
64
+
54
65
  # @!attribute responses
55
66
  # Responses backend settings to update. Omitted settings keep their existing
56
67
  # values.
@@ -58,10 +69,18 @@ module OpenAI
58
69
  # @return [OpenAI::Models::Live::ResponsesDelegationUpdateConfig, nil]
59
70
  optional :responses, -> { OpenAI::Live::ResponsesDelegationUpdateConfig }
60
71
 
61
- # @!method initialize(responses: nil, type: :responses)
72
+ # @!method initialize(acknowledgement_delay_ms: nil, responses: nil, type: :responses)
62
73
  # Update the Responses backend for an existing Live session without changing
63
74
  # delegation ownership.
64
75
  #
76
+ # @param acknowledgement_delay_ms [Integer]
77
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
78
+ # delegation. The model may still speak before this delay. Any commentary or
79
+ # thinking appended to the session cancels all pending acknowledgements, including
80
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
81
+ # (request immediately) for other sessions. Omission in a session update preserves
82
+ # the current value. Updates apply to subsequent delegations.
83
+ #
65
84
  # @param responses [OpenAI::Models::Live::ResponsesDelegationUpdateConfig]
66
85
  # Responses backend settings to update. Omitted settings keep their existing
67
86
  # values.
@@ -19,10 +19,10 @@ module OpenAI
19
19
  # Returned when a Live session update is accepted. Contains the resolved session configuration after the update.
20
20
  variant :"session.updated", -> { OpenAI::Live::SessionUpdatedEvent }
21
21
 
22
- # Returned when a session.input_audio.mute command is accepted. Input audio is no longer sent to the model; sideband audio reflection continues.
22
+ # Acknowledges a session.input_audio.mute command. An independent input mute sends silence to the model and preserves sideband audio reflection. Fixture playback does not emit this event.
23
23
  variant :"session.input_audio.muted", -> { OpenAI::Live::InputAudioMutedEvent }
24
24
 
25
- # Returned when a session.input_audio.unmute command is accepted. Input audio is sent to the model again.
25
+ # Acknowledges a session.input_audio.unmute command, removing the independent input mute. An active audio fixture still pauses inference until playback finishes. Fixture playback does not emit this event.
26
26
  variant :"session.input_audio.unmuted", -> { OpenAI::Live::InputAudioUnmutedEvent }
27
27
 
28
28
  # The existing playback path has accepted the validated audio fixture. This acknowledgment does not identify when the listener receives the first sample. The optional client_event_id echoes the play command.
@@ -256,13 +256,32 @@ module OpenAI
256
256
  # @return [Symbol, :responses]
257
257
  required :type, const: :responses
258
258
 
259
- # @!method initialize(responses:, type: :responses)
259
+ # @!attribute acknowledgement_delay_ms
260
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
261
+ # delegation. The model may still speak before this delay. Any commentary or
262
+ # thinking appended to the session cancels all pending acknowledgements, including
263
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
264
+ # (request immediately) for other sessions. Omission in a session update preserves
265
+ # the current value. Updates apply to subsequent delegations.
266
+ #
267
+ # @return [Integer, nil]
268
+ optional :acknowledgement_delay_ms, Integer
269
+
270
+ # @!method initialize(responses:, acknowledgement_delay_ms: nil, type: :responses)
260
271
  # Delegate tasks to a Responses model managed by the Live session.
261
272
  #
262
273
  # @param responses [OpenAI::Models::Live::ResponsesDelegationConfig]
263
274
  # Backend model, prompt, and tools used when the Live session delegates a task to
264
275
  # Responses.
265
276
  #
277
+ # @param acknowledgement_delay_ms [Integer]
278
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
279
+ # delegation. The model may still speak before this delay. Any commentary or
280
+ # thinking appended to the session cancels all pending acknowledgements, including
281
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
282
+ # (request immediately) for other sessions. Omission in a session update preserves
283
+ # the current value. Updates apply to subsequent delegations.
284
+ #
266
285
  # @param type [Symbol, :responses]
267
286
  # The delegation owner. Always `responses` for tasks handled by the Responses API.
268
287
  end
@@ -278,8 +297,26 @@ module OpenAI
278
297
  # @return [Symbol, :decisions]
279
298
  required :type, const: :decisions
280
299
 
281
- # @!method initialize(decisions:, type: :decisions)
300
+ # @!attribute acknowledgement_delay_ms
301
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
302
+ # delegation. The model may still speak before this delay. Any commentary or
303
+ # thinking appended to the session cancels all pending acknowledgements, including
304
+ # those for other delegations. Defaults to 400. Updates apply to subsequent
305
+ # delegations.
306
+ #
307
+ # @return [Integer, nil]
308
+ optional :acknowledgement_delay_ms, Integer
309
+
310
+ # @!method initialize(decisions:, acknowledgement_delay_ms: nil, type: :decisions)
282
311
  # @param decisions [OpenAI::Models::Live::DecisionsDelegationConfig]
312
+ #
313
+ # @param acknowledgement_delay_ms [Integer]
314
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
315
+ # delegation. The model may still speak before this delay. Any commentary or
316
+ # thinking appended to the session cancels all pending acknowledgements, including
317
+ # those for other delegations. Defaults to 400. Updates apply to subsequent
318
+ # delegations.
319
+ #
283
320
  # @param type [Symbol, :decisions]
284
321
  end
285
322
 
@@ -236,13 +236,32 @@ module OpenAI
236
236
  # @return [Symbol, :responses]
237
237
  required :type, const: :responses
238
238
 
239
- # @!method initialize(responses:, type: :responses)
239
+ # @!attribute acknowledgement_delay_ms
240
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
241
+ # delegation. The model may still speak before this delay. Any commentary or
242
+ # thinking appended to the session cancels all pending acknowledgements, including
243
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
244
+ # (request immediately) for other sessions. Omission in a session update preserves
245
+ # the current value. Updates apply to subsequent delegations.
246
+ #
247
+ # @return [Integer, nil]
248
+ optional :acknowledgement_delay_ms, Integer
249
+
250
+ # @!method initialize(responses:, acknowledgement_delay_ms: nil, type: :responses)
240
251
  # Delegate tasks to a Responses model managed by the Live session.
241
252
  #
242
253
  # @param responses [OpenAI::Models::Live::ResponsesDelegationConfig]
243
254
  # Backend model, prompt, and tools used when the Live session delegates a task to
244
255
  # Responses.
245
256
  #
257
+ # @param acknowledgement_delay_ms [Integer]
258
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
259
+ # delegation. The model may still speak before this delay. Any commentary or
260
+ # thinking appended to the session cancels all pending acknowledgements, including
261
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
262
+ # (request immediately) for other sessions. Omission in a session update preserves
263
+ # the current value. Updates apply to subsequent delegations.
264
+ #
246
265
  # @param type [Symbol, :responses]
247
266
  # The delegation owner. Always `responses` for tasks handled by the Responses API.
248
267
  end
@@ -258,8 +277,26 @@ module OpenAI
258
277
  # @return [Symbol, :decisions]
259
278
  required :type, const: :decisions
260
279
 
261
- # @!method initialize(decisions:, type: :decisions)
280
+ # @!attribute acknowledgement_delay_ms
281
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
282
+ # delegation. The model may still speak before this delay. Any commentary or
283
+ # thinking appended to the session cancels all pending acknowledgements, including
284
+ # those for other delegations. Defaults to 400. Updates apply to subsequent
285
+ # delegations.
286
+ #
287
+ # @return [Integer, nil]
288
+ optional :acknowledgement_delay_ms, Integer
289
+
290
+ # @!method initialize(decisions:, acknowledgement_delay_ms: nil, type: :decisions)
262
291
  # @param decisions [OpenAI::Models::Live::DecisionsDelegationConfig]
292
+ #
293
+ # @param acknowledgement_delay_ms [Integer]
294
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
295
+ # delegation. The model may still speak before this delay. Any commentary or
296
+ # thinking appended to the session cancels all pending acknowledgements, including
297
+ # those for other delegations. Defaults to 400. Updates apply to subsequent
298
+ # delegations.
299
+ #
263
300
  # @param type [Symbol, :decisions]
264
301
  end
265
302
 
@@ -268,13 +268,32 @@ module OpenAI
268
268
  # @return [Symbol, :responses]
269
269
  required :type, const: :responses
270
270
 
271
- # @!method initialize(responses:, type: :responses)
271
+ # @!attribute acknowledgement_delay_ms
272
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
273
+ # delegation. The model may still speak before this delay. Any commentary or
274
+ # thinking appended to the session cancels all pending acknowledgements, including
275
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
276
+ # (request immediately) for other sessions. Omission in a session update preserves
277
+ # the current value. Updates apply to subsequent delegations.
278
+ #
279
+ # @return [Integer, nil]
280
+ optional :acknowledgement_delay_ms, Integer
281
+
282
+ # @!method initialize(responses:, acknowledgement_delay_ms: nil, type: :responses)
272
283
  # Delegate tasks to a Responses model managed by the Live session.
273
284
  #
274
285
  # @param responses [OpenAI::Models::Live::ResponsesDelegationConfig]
275
286
  # Backend model, prompt, and tools used when the Live session delegates a task to
276
287
  # Responses.
277
288
  #
289
+ # @param acknowledgement_delay_ms [Integer]
290
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
291
+ # delegation. The model may still speak before this delay. Any commentary or
292
+ # thinking appended to the session cancels all pending acknowledgements, including
293
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
294
+ # (request immediately) for other sessions. Omission in a session update preserves
295
+ # the current value. Updates apply to subsequent delegations.
296
+ #
278
297
  # @param type [Symbol, :responses]
279
298
  # The delegation owner. Always `responses` for tasks handled by the Responses API.
280
299
  end
@@ -290,8 +309,26 @@ module OpenAI
290
309
  # @return [Symbol, :decisions]
291
310
  required :type, const: :decisions
292
311
 
293
- # @!method initialize(decisions:, type: :decisions)
312
+ # @!attribute acknowledgement_delay_ms
313
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
314
+ # delegation. The model may still speak before this delay. Any commentary or
315
+ # thinking appended to the session cancels all pending acknowledgements, including
316
+ # those for other delegations. Defaults to 400. Updates apply to subsequent
317
+ # delegations.
318
+ #
319
+ # @return [Integer, nil]
320
+ optional :acknowledgement_delay_ms, Integer
321
+
322
+ # @!method initialize(decisions:, acknowledgement_delay_ms: nil, type: :decisions)
294
323
  # @param decisions [OpenAI::Models::Live::DecisionsDelegationConfig]
324
+ #
325
+ # @param acknowledgement_delay_ms [Integer]
326
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
327
+ # delegation. The model may still speak before this delay. Any commentary or
328
+ # thinking appended to the session cancels all pending acknowledgements, including
329
+ # those for other delegations. Defaults to 400. Updates apply to subsequent
330
+ # delegations.
331
+ #
295
332
  # @param type [Symbol, :decisions]
296
333
  end
297
334