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
@@ -26,9 +26,9 @@ module OpenAI
26
26
  T.nilable(
27
27
  T::Array[
28
28
  T.any(
29
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Predicate,
30
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Choice,
31
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Score
29
+ OpenAI::Live::DecisionQuestion::Choice,
30
+ OpenAI::Live::DecisionQuestion::Predicate,
31
+ OpenAI::Live::DecisionQuestion::Score
32
32
  )
33
33
  ]
34
34
  )
@@ -40,9 +40,9 @@ module OpenAI
40
40
  params(
41
41
  questions: T::Array[
42
42
  T.any(
43
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Predicate::OrHash,
44
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Choice::OrHash,
45
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Score::OrHash
43
+ OpenAI::Live::DecisionQuestion::Choice::OrHash,
44
+ OpenAI::Live::DecisionQuestion::Predicate::OrHash,
45
+ OpenAI::Live::DecisionQuestion::Score::OrHash
46
46
  )
47
47
  ]
48
48
  )
@@ -57,9 +57,9 @@ module OpenAI
57
57
 
58
58
  questions: T::Array[
59
59
  T.any(
60
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Predicate::OrHash,
61
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Choice::OrHash,
62
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Score::OrHash
60
+ OpenAI::Live::DecisionQuestion::Choice::OrHash,
61
+ OpenAI::Live::DecisionQuestion::Predicate::OrHash,
62
+ OpenAI::Live::DecisionQuestion::Score::OrHash
63
63
  )
64
64
  ]
65
65
  )
@@ -81,9 +81,9 @@ module OpenAI
81
81
  model: String,
82
82
  questions: T::Array[
83
83
  T.any(
84
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Predicate,
85
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Choice,
86
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Score
84
+ OpenAI::Live::DecisionQuestion::Choice,
85
+ OpenAI::Live::DecisionQuestion::Predicate,
86
+ OpenAI::Live::DecisionQuestion::Score
87
87
  )
88
88
  ]
89
89
  }
@@ -92,318 +92,7 @@ module OpenAI
92
92
  def to_hash
93
93
  end
94
94
 
95
- # A question about the request's input, with an optional correlation name.
96
- module Question
97
- extend OpenAI::Internal::Type::Union
98
-
99
- Variants = T.type_alias {
100
- T.any(
101
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Predicate,
102
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Choice,
103
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Score
104
- )
105
- }
106
-
107
- class Predicate < OpenAI::Internal::Type::BaseModel
108
- OrHash = T.type_alias do
109
- T.any(
110
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Predicate,
111
- OpenAI::Internal::AnyHash
112
- )
113
- end
114
-
115
- sig { returns(String) }
116
- attr_accessor :instructions
117
-
118
- # The type of the object. Always `predicate`.
119
- sig { returns(Symbol) }
120
- attr_accessor :type
121
-
122
- sig { returns(T.nilable(String)) }
123
- attr_reader :name
124
-
125
- sig { params(name: String).void }
126
- attr_writer :name
127
-
128
- # Estimate how likely it is that a statement about the input is true.
129
- sig do
130
- params(
131
-
132
- instructions: String,
133
-
134
- name: String,
135
-
136
- type: Symbol
137
- )
138
- .returns(T.attached_class)
139
- end
140
- def self.new(
141
-
142
- instructions:,
143
-
144
- name: nil,
145
-
146
- # The type of the object. Always `predicate`.
147
-
148
- type: :predicate
149
- )
150
- end
151
-
152
- sig do
153
- override.returns(
154
- {instructions: String, type: Symbol, name: String}
155
- )
156
- end
157
- def to_hash
158
- end
159
-
160
- end
161
-
162
- class Choice < OpenAI::Internal::Type::BaseModel
163
- OrHash = T.type_alias do
164
- T.any(
165
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Choice,
166
- OpenAI::Internal::AnyHash
167
- )
168
- end
169
-
170
- # Provide between 2 and 255 choices. Each choice must be unique.
171
- sig { returns(T::Array[OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Choice::Choice]) }
172
- attr_accessor :choices
173
-
174
- sig { returns(String) }
175
- attr_accessor :instructions
176
-
177
- # The type of the object. Always `choice`.
178
- sig { returns(Symbol) }
179
- attr_accessor :type
180
-
181
- sig { returns(T.nilable(String)) }
182
- attr_reader :name
183
-
184
- sig { params(name: String).void }
185
- attr_writer :name
186
-
187
- # Choose from the supplied options based on the input.
188
- sig do
189
- params(
190
-
191
- choices: T::Array[OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Choice::Choice::OrHash],
192
-
193
- instructions: String,
194
-
195
- name: String,
196
-
197
- type: Symbol
198
- )
199
- .returns(T.attached_class)
200
- end
201
- def self.new(
202
-
203
- # Provide between 2 and 255 choices. Each choice must be unique.
204
- choices:,
205
-
206
- instructions:,
207
-
208
- name: nil,
209
-
210
- # The type of the object. Always `choice`.
211
-
212
- type: :choice
213
- )
214
- end
215
-
216
- sig do
217
- override.returns(
218
- {
219
- choices: T::Array[OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Choice::Choice],
220
- instructions: String,
221
- type: Symbol,
222
- name: String
223
- }
224
- )
225
- end
226
- def to_hash
227
- end
228
-
229
- class Choice < OpenAI::Internal::Type::BaseModel
230
- OrHash = T.type_alias do
231
- T.any(
232
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Choice::Choice,
233
- OpenAI::Internal::AnyHash
234
- )
235
- end
236
-
237
- # Choice values are typed: a string and a boolean with the same text are distinct.
238
- sig { returns(T.any(String, T::Boolean)) }
239
- attr_accessor :value
240
-
241
- sig { returns(T.nilable(String)) }
242
- attr_reader :description
243
-
244
- sig { params(description: String).void }
245
- attr_writer :description
246
-
247
- sig do
248
- params(
249
-
250
- value: T.any(String, T::Boolean),
251
-
252
- description: String
253
- )
254
- .returns(T.attached_class)
255
- end
256
- def self.new(
257
-
258
- # Choice values are typed: a string and a boolean with the same text are distinct.
259
- value:,
260
-
261
- description: nil
262
- )
263
- end
264
-
265
- sig do
266
- override.returns(
267
- {value: T.any(String, T::Boolean), description: String}
268
- )
269
- end
270
- def to_hash
271
- end
272
-
273
- # Choice values are typed: a string and a boolean with the same text are distinct.
274
- module Value
275
- extend OpenAI::Internal::Type::Union
276
-
277
- Variants = T.type_alias { T.any(String, T::Boolean) }
278
-
279
- sig {
280
- override.returns(
281
- T::Array[OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Choice::Choice::Value::Variants]
282
- )
283
- }
284
- def self.variants
285
- end
286
-
287
- end
288
- end
289
- end
290
-
291
- class Score < OpenAI::Internal::Type::BaseModel
292
- OrHash = T.type_alias do
293
- T.any(
294
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Score,
295
- OpenAI::Internal::AnyHash
296
- )
297
- end
298
-
299
- sig { returns(String) }
300
- attr_accessor :instructions
301
-
302
- sig { returns(T::Array[OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Score::Level]) }
303
- attr_accessor :levels
304
-
305
- # The type of the object. Always `score`.
306
- sig { returns(Symbol) }
307
- attr_accessor :type
308
-
309
- sig { returns(T.nilable(String)) }
310
- attr_reader :name
311
-
312
- sig { params(name: String).void }
313
- attr_writer :name
314
-
315
- # Rate the input against the supplied ordered levels.
316
- sig do
317
- params(
318
-
319
- instructions: String,
320
-
321
- levels: T::Array[OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Score::Level::OrHash],
322
-
323
- name: String,
324
-
325
- type: Symbol
326
- )
327
- .returns(T.attached_class)
328
- end
329
- def self.new(
330
-
331
- instructions:,
332
-
333
- levels:,
334
-
335
- name: nil,
336
-
337
- # The type of the object. Always `score`.
338
-
339
- type: :score
340
- )
341
- end
342
-
343
- sig do
344
- override.returns(
345
- {
346
- instructions: String,
347
- levels: T::Array[OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Score::Level],
348
- type: Symbol,
349
- name: String
350
- }
351
- )
352
- end
353
- def to_hash
354
- end
355
-
356
- class Level < OpenAI::Internal::Type::BaseModel
357
- OrHash = T.type_alias do
358
- T.any(
359
- OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Score::Level,
360
- OpenAI::Internal::AnyHash
361
- )
362
- end
363
-
364
- sig { returns(String) }
365
- attr_accessor :label
366
-
367
- sig { returns(T.nilable(String)) }
368
- attr_reader :description
369
-
370
- sig { params(description: String).void }
371
- attr_writer :description
372
-
373
- sig do
374
- params(
375
-
376
- label: String,
377
-
378
- description: String
379
- )
380
- .returns(T.attached_class)
381
- end
382
- def self.new(
383
-
384
- label:,
385
-
386
- description: nil
387
- )
388
- end
389
-
390
- sig do
391
- override.returns(
392
- {label: String, description: String}
393
- )
394
- end
395
- def to_hash
396
- end
397
-
398
- end
399
- end
400
-
401
- sig { override.returns(T::Array[OpenAI::Live::DecisionsDelegationUpdateConfig::Question::Variants]) }
402
- def self.variants
403
- end
404
-
405
- end
406
-
95
+ Question = ::OpenAI::Models::Live::DecisionQuestion
407
96
  end
408
97
 
409
98
  end
@@ -184,6 +184,18 @@ module OpenAI
184
184
  sig { returns(Symbol) }
185
185
  attr_accessor :type
186
186
 
187
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
188
+ # delegation. The model may still speak before this delay. Any commentary or
189
+ # thinking appended to the session cancels all pending acknowledgements, including
190
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
191
+ # (request immediately) for other sessions. Omission in a session update preserves
192
+ # the current value. Updates apply to subsequent delegations.
193
+ sig { returns(T.nilable(Integer)) }
194
+ attr_reader :acknowledgement_delay_ms
195
+
196
+ sig { params(acknowledgement_delay_ms: Integer).void }
197
+ attr_writer :acknowledgement_delay_ms
198
+
187
199
  # Responses backend settings to update. Omitted settings keep their existing
188
200
  # values.
189
201
  sig { returns(T.nilable(OpenAI::Live::ResponsesDelegationUpdateConfig)) }
@@ -198,6 +210,8 @@ module OpenAI
198
210
  sig do
199
211
  params(
200
212
 
213
+ acknowledgement_delay_ms: Integer,
214
+
201
215
  responses: OpenAI::Live::ResponsesDelegationUpdateConfig::OrHash,
202
216
 
203
217
  type: Symbol
@@ -206,6 +220,14 @@ module OpenAI
206
220
  end
207
221
  def self.new(
208
222
 
223
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
224
+ # delegation. The model may still speak before this delay. Any commentary or
225
+ # thinking appended to the session cancels all pending acknowledgements, including
226
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
227
+ # (request immediately) for other sessions. Omission in a session update preserves
228
+ # the current value. Updates apply to subsequent delegations.
229
+ acknowledgement_delay_ms: nil,
230
+
209
231
  # Responses backend settings to update. Omitted settings keep their existing
210
232
  # values.
211
233
  responses: nil,
@@ -218,7 +240,11 @@ module OpenAI
218
240
 
219
241
  sig do
220
242
  override.returns(
221
- {type: Symbol, responses: OpenAI::Live::ResponsesDelegationUpdateConfig}
243
+ {
244
+ type: Symbol,
245
+ acknowledgement_delay_ms: Integer,
246
+ responses: OpenAI::Live::ResponsesDelegationUpdateConfig
247
+ }
222
248
  )
223
249
  end
224
250
  def to_hash
@@ -30,8 +30,9 @@ module OpenAI
30
30
  sig { params(client_event_id: String).void }
31
31
  attr_writer :client_event_id
32
32
 
33
- # Returned when a session.input_audio.mute command is accepted. Input audio is no
34
- # longer sent to the model; sideband audio reflection continues.
33
+ # Acknowledges a session.input_audio.mute command. An independent input mute sends
34
+ # silence to the model and preserves sideband audio reflection. Fixture playback
35
+ # does not emit this event.
35
36
  sig do
36
37
  params(
37
38
 
@@ -24,7 +24,8 @@ module OpenAI
24
24
  attr_accessor :event_id
25
25
 
26
26
  # Resume audio input to a Live model after muting it. The server acknowledges with
27
- # `session.input_audio.unmuted`.
27
+ # `session.input_audio.unmuted`. An active audio fixture still pauses inference
28
+ # until playback finishes.
28
29
  sig do
29
30
  params(
30
31
 
@@ -30,8 +30,9 @@ module OpenAI
30
30
  sig { params(client_event_id: String).void }
31
31
  attr_writer :client_event_id
32
32
 
33
- # Returned when a session.input_audio.unmute command is accepted. Input audio is
34
- # sent to the model again.
33
+ # Acknowledges a session.input_audio.unmute command, removing the independent
34
+ # input mute. An active audio fixture still pauses inference until playback
35
+ # finishes. Fixture playback does not emit this event.
35
36
  sig do
36
37
  params(
37
38
 
@@ -34,8 +34,11 @@ module OpenAI
34
34
  sig { returns(T.nilable(String)) }
35
35
  attr_accessor :event_id
36
36
 
37
- # Append instructions to the Live conversation while it is running, optionally
38
- # associating them with an existing client delegation.
37
+ # Append developer instructions to the Live conversation while it is running,
38
+ # optionally associating them with an existing client delegation. Rejected while
39
+ # an audio fixture is active. These instructions remain in conversation history
40
+ # through compaction and are included in future backend delegations. For external
41
+ # audio, describe content already delivered so the assistant does not repeat it.
39
42
  sig do
40
43
  params(
41
44
 
@@ -381,12 +381,26 @@ module OpenAI
381
381
  sig { returns(Symbol) }
382
382
  attr_accessor :type
383
383
 
384
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
385
+ # delegation. The model may still speak before this delay. Any commentary or
386
+ # thinking appended to the session cancels all pending acknowledgements, including
387
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
388
+ # (request immediately) for other sessions. Omission in a session update preserves
389
+ # the current value. Updates apply to subsequent delegations.
390
+ sig { returns(T.nilable(Integer)) }
391
+ attr_reader :acknowledgement_delay_ms
392
+
393
+ sig { params(acknowledgement_delay_ms: Integer).void }
394
+ attr_writer :acknowledgement_delay_ms
395
+
384
396
  # Delegate tasks to a Responses model managed by the Live session.
385
397
  sig do
386
398
  params(
387
399
 
388
400
  responses: OpenAI::Live::ResponsesDelegationConfig::OrHash,
389
401
 
402
+ acknowledgement_delay_ms: Integer,
403
+
390
404
  type: Symbol
391
405
  )
392
406
  .returns(T.attached_class)
@@ -397,6 +411,14 @@ module OpenAI
397
411
  # Responses.
398
412
  responses:,
399
413
 
414
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
415
+ # delegation. The model may still speak before this delay. Any commentary or
416
+ # thinking appended to the session cancels all pending acknowledgements, including
417
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
418
+ # (request immediately) for other sessions. Omission in a session update preserves
419
+ # the current value. Updates apply to subsequent delegations.
420
+ acknowledgement_delay_ms: nil,
421
+
400
422
  # The delegation owner. Always `responses` for tasks handled by the Responses API.
401
423
 
402
424
  type: :responses
@@ -405,7 +427,7 @@ module OpenAI
405
427
 
406
428
  sig do
407
429
  override.returns(
408
- {responses: OpenAI::Live::ResponsesDelegationConfig, type: Symbol}
430
+ {responses: OpenAI::Live::ResponsesDelegationConfig, type: Symbol, acknowledgement_delay_ms: Integer}
409
431
  )
410
432
  end
411
433
  def to_hash
@@ -430,11 +452,24 @@ module OpenAI
430
452
  sig { returns(Symbol) }
431
453
  attr_accessor :type
432
454
 
455
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
456
+ # delegation. The model may still speak before this delay. Any commentary or
457
+ # thinking appended to the session cancels all pending acknowledgements, including
458
+ # those for other delegations. Defaults to 400. Updates apply to subsequent
459
+ # delegations.
460
+ sig { returns(T.nilable(Integer)) }
461
+ attr_reader :acknowledgement_delay_ms
462
+
463
+ sig { params(acknowledgement_delay_ms: Integer).void }
464
+ attr_writer :acknowledgement_delay_ms
465
+
433
466
  sig do
434
467
  params(
435
468
 
436
469
  decisions: OpenAI::Live::DecisionsDelegationConfig::OrHash,
437
470
 
471
+ acknowledgement_delay_ms: Integer,
472
+
438
473
  type: Symbol
439
474
  )
440
475
  .returns(T.attached_class)
@@ -443,13 +478,20 @@ module OpenAI
443
478
 
444
479
  decisions:,
445
480
 
481
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
482
+ # delegation. The model may still speak before this delay. Any commentary or
483
+ # thinking appended to the session cancels all pending acknowledgements, including
484
+ # those for other delegations. Defaults to 400. Updates apply to subsequent
485
+ # delegations.
486
+ acknowledgement_delay_ms: nil,
487
+
446
488
  type: :decisions
447
489
  )
448
490
  end
449
491
 
450
492
  sig do
451
493
  override.returns(
452
- {decisions: OpenAI::Live::DecisionsDelegationConfig, type: Symbol}
494
+ {decisions: OpenAI::Live::DecisionsDelegationConfig, type: Symbol, acknowledgement_delay_ms: Integer}
453
495
  )
454
496
  end
455
497
  def to_hash
@@ -94,6 +94,18 @@ module OpenAI
94
94
  sig { returns(Symbol) }
95
95
  attr_accessor :type
96
96
 
97
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
98
+ # delegation. The model may still speak before this delay. Any commentary or
99
+ # thinking appended to the session cancels all pending acknowledgements, including
100
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
101
+ # (request immediately) for other sessions. Omission in a session update preserves
102
+ # the current value. Updates apply to subsequent delegations.
103
+ sig { returns(T.nilable(Integer)) }
104
+ attr_reader :acknowledgement_delay_ms
105
+
106
+ sig { params(acknowledgement_delay_ms: Integer).void }
107
+ attr_writer :acknowledgement_delay_ms
108
+
97
109
  # Responses backend settings to update. Omitted settings keep their existing
98
110
  # values.
99
111
  sig { returns(T.nilable(OpenAI::Live::ResponsesDelegationUpdateConfig)) }
@@ -107,6 +119,8 @@ module OpenAI
107
119
  sig do
108
120
  params(
109
121
 
122
+ acknowledgement_delay_ms: Integer,
123
+
110
124
  responses: OpenAI::Live::ResponsesDelegationUpdateConfig::OrHash,
111
125
 
112
126
  type: Symbol
@@ -115,6 +129,14 @@ module OpenAI
115
129
  end
116
130
  def self.new(
117
131
 
132
+ # Milliseconds to wait before requesting an automatic spoken acknowledgement for a
133
+ # delegation. The model may still speak before this delay. Any commentary or
134
+ # thinking appended to the session cancels all pending acknowledgements, including
135
+ # those for other delegations. Defaults to 400 for Decisions sessions and 0
136
+ # (request immediately) for other sessions. Omission in a session update preserves
137
+ # the current value. Updates apply to subsequent delegations.
138
+ acknowledgement_delay_ms: nil,
139
+
118
140
  # Responses backend settings to update. Omitted settings keep their existing
119
141
  # values.
120
142
  responses: nil,
@@ -127,7 +149,11 @@ module OpenAI
127
149
 
128
150
  sig do
129
151
  override.returns(
130
- {type: Symbol, responses: OpenAI::Live::ResponsesDelegationUpdateConfig}
152
+ {
153
+ type: Symbol,
154
+ acknowledgement_delay_ms: Integer,
155
+ responses: OpenAI::Live::ResponsesDelegationUpdateConfig
156
+ }
131
157
  )
132
158
  end
133
159
  def to_hash