openai 0.111.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 (230) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -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 +8 -4
  29. data/lib/openai/models/image_edit_params.rb +20 -4
  30. data/lib/openai/models/image_generate_params.rb +23 -7
  31. data/lib/openai/models/image_model.rb +2 -0
  32. data/lib/openai/models/live/client_delegation.rb +20 -1
  33. data/lib/openai/models/live/client_event.rb +4 -4
  34. data/lib/openai/models/live/commentary_append_event.rb +1 -1
  35. data/lib/openai/models/live/decision_assistant_message.rb +154 -0
  36. data/lib/openai/models/live/decision_choice_option.rb +35 -0
  37. data/lib/openai/models/live/decision_developer_message.rb +70 -0
  38. data/lib/openai/models/live/decision_input_text.rb +26 -0
  39. data/lib/openai/models/live/decision_item_create_event.rb +490 -131
  40. data/lib/openai/models/live/decision_item_created_event.rb +486 -131
  41. data/lib/openai/models/live/decision_json_object.rb +10 -0
  42. data/lib/openai/models/live/decision_question.rb +172 -0
  43. data/lib/openai/models/live/decision_stored_assistant_message.rb +152 -0
  44. data/lib/openai/models/live/decision_stored_developer_message.rb +68 -0
  45. data/lib/openai/models/live/decision_stored_system_message.rb +68 -0
  46. data/lib/openai/models/live/decision_stored_user_message.rb +195 -0
  47. data/lib/openai/models/live/decision_system_message.rb +70 -0
  48. data/lib/openai/models/live/decision_trigger.rb +6 -258
  49. data/lib/openai/models/live/decision_user_message.rb +193 -0
  50. data/lib/openai/models/live/decisions_delegation_config.rb +5 -250
  51. data/lib/openai/models/live/decisions_delegation_update_config.rb +5 -257
  52. data/lib/openai/models/live/fork_client_event.rb +4 -4
  53. data/lib/openai/models/live/fork_server_event.rb +2 -2
  54. data/lib/openai/models/live/fork_session_config.rb +20 -1
  55. data/lib/openai/models/live/input_audio_muted_event.rb +3 -2
  56. data/lib/openai/models/live/input_audio_unmute_event.rb +2 -1
  57. data/lib/openai/models/live/input_audio_unmuted_event.rb +3 -2
  58. data/lib/openai/models/live/instructions_append_event.rb +5 -2
  59. data/lib/openai/models/live/media_session_config.rb +39 -2
  60. data/lib/openai/models/live/media_session_fork_config.rb +20 -1
  61. data/lib/openai/models/live/server_event.rb +2 -2
  62. data/lib/openai/models/live/session_accept_params.rb +39 -2
  63. data/lib/openai/models/live/session_config.rb +39 -2
  64. data/lib/openai/models/live/session_resource.rb +39 -2
  65. data/lib/openai/models/live/session_update_config.rb +41 -2
  66. data/lib/openai/models/live/sideband_client_event.rb +4 -4
  67. data/lib/openai/models/live/sideband_server_event.rb +2 -2
  68. data/lib/openai/models/live/thinking_append_event.rb +1 -1
  69. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rb +10 -12
  70. data/lib/openai/models/realtime/realtime_error_event.rb +1 -1
  71. data/lib/openai/models/realtime/realtime_server_event.rb +1 -1
  72. data/lib/openai/models/realtime/realtime_translation_server_event.rb +1 -1
  73. data/lib/openai/models/responses/response_input_file.rb +23 -1
  74. data/lib/openai/models/responses/response_input_file_content.rb +23 -1
  75. data/lib/openai/models/responses/response_input_image.rb +23 -1
  76. data/lib/openai/models/responses/response_input_image_content.rb +23 -1
  77. data/lib/openai/models/responses/response_input_text.rb +23 -1
  78. data/lib/openai/models/responses/response_input_text_content.rb +23 -1
  79. data/lib/openai/models/responses/response_tool_search_output_item_param.rb +26 -15
  80. data/lib/openai/models/responses/tool.rb +26 -15
  81. data/lib/openai/resources/beta/agents.rb +2 -2
  82. data/lib/openai/resources/beta/responses.rb +2 -2
  83. data/lib/openai/resources/images.rb +18 -6
  84. data/lib/openai/resources/live/forks.rb +2 -2
  85. data/lib/openai/resources/live/sideband.rb +2 -2
  86. data/lib/openai/resources/live.rb +2 -2
  87. data/lib/openai/resources/realtime/translations.rb +2 -2
  88. data/lib/openai/resources/realtime.rb +2 -2
  89. data/lib/openai/resources/responses.rb +2 -2
  90. data/lib/openai/version.rb +1 -1
  91. data/lib/openai.rb +12 -0
  92. data/rbi/openai/models/beta/agent.rbi +2 -1
  93. data/rbi/openai/models/beta/agent_create_params.rbi +6 -3
  94. data/rbi/openai/models/beta/agent_session.rbi +2 -1
  95. data/rbi/openai/models/beta/agent_tool.rbi +40 -1
  96. data/rbi/openai/models/beta/agent_tool_param.rbi +40 -1
  97. data/rbi/openai/models/beta/agent_update_params.rbi +6 -3
  98. data/rbi/openai/models/beta/agents/session_create_params.rbi +6 -3
  99. data/rbi/openai/models/beta/beta_response_input_file.rbi +31 -1
  100. data/rbi/openai/models/beta/beta_response_input_file_content.rbi +39 -1
  101. data/rbi/openai/models/beta/beta_response_input_image.rbi +31 -1
  102. data/rbi/openai/models/beta/beta_response_input_image_content.rbi +39 -1
  103. data/rbi/openai/models/beta/beta_response_input_text.rbi +31 -1
  104. data/rbi/openai/models/beta/beta_response_input_text_content.rbi +39 -1
  105. data/rbi/openai/models/beta/beta_response_item.rbi +58 -1
  106. data/rbi/openai/models/beta/beta_response_output_item.rbi +58 -1
  107. data/rbi/openai/models/beta/beta_response_tool_search_output_item_param.rbi +24 -15
  108. data/rbi/openai/models/beta/beta_tool.rbi +24 -15
  109. data/rbi/openai/models/beta/persisted_agent_tool.rbi +40 -1
  110. data/rbi/openai/models/beta/persisted_agent_tool_param.rbi +40 -1
  111. data/rbi/openai/models/chat/chat_completion_content_part.rbi +43 -1
  112. data/rbi/openai/models/chat/chat_completion_content_part_image.rbi +41 -1
  113. data/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi +46 -1
  114. data/rbi/openai/models/chat/chat_completion_content_part_text.rbi +39 -1
  115. data/rbi/openai/models/conversations/computer_screenshot_content.rbi +48 -1
  116. data/rbi/openai/models/image_edit_params.rbi +12 -3
  117. data/rbi/openai/models/image_generate_params.rbi +15 -6
  118. data/rbi/openai/models/live/client_delegation.rbi +23 -1
  119. data/rbi/openai/models/live/commentary_append_event.rbi +1 -1
  120. data/rbi/openai/models/live/decision_assistant_message.rbi +247 -0
  121. data/rbi/openai/models/live/decision_choice_option.rbi +67 -0
  122. data/rbi/openai/models/live/decision_developer_message.rbi +109 -0
  123. data/rbi/openai/models/live/decision_input_text.rbi +55 -0
  124. data/rbi/openai/models/live/decision_item_create_event.rbi +765 -184
  125. data/rbi/openai/models/live/decision_item_created_event.rbi +737 -184
  126. data/rbi/openai/models/live/decision_json_object.rbi +16 -0
  127. data/rbi/openai/models/live/decision_question.rbi +300 -0
  128. data/rbi/openai/models/live/decision_stored_assistant_message.rbi +245 -0
  129. data/rbi/openai/models/live/decision_stored_developer_message.rbi +107 -0
  130. data/rbi/openai/models/live/decision_stored_system_message.rbi +107 -0
  131. data/rbi/openai/models/live/decision_stored_user_message.rbi +333 -0
  132. data/rbi/openai/models/live/decision_system_message.rbi +109 -0
  133. data/rbi/openai/models/live/decision_trigger.rbi +11 -383
  134. data/rbi/openai/models/live/decision_user_message.rbi +320 -0
  135. data/rbi/openai/models/live/decisions_delegation_config.rbi +10 -384
  136. data/rbi/openai/models/live/decisions_delegation_update_config.rbi +13 -387
  137. data/rbi/openai/models/live/fork_session_config.rbi +27 -1
  138. data/rbi/openai/models/live/input_audio_muted_event.rbi +3 -2
  139. data/rbi/openai/models/live/input_audio_unmute_event.rbi +2 -1
  140. data/rbi/openai/models/live/input_audio_unmuted_event.rbi +3 -2
  141. data/rbi/openai/models/live/instructions_append_event.rbi +5 -2
  142. data/rbi/openai/models/live/media_session_config.rbi +44 -2
  143. data/rbi/openai/models/live/media_session_fork_config.rbi +27 -1
  144. data/rbi/openai/models/live/session_accept_params.rbi +44 -2
  145. data/rbi/openai/models/live/session_config.rbi +44 -2
  146. data/rbi/openai/models/live/session_resource.rbi +44 -2
  147. data/rbi/openai/models/live/session_update_config.rbi +54 -2
  148. data/rbi/openai/models/live/thinking_append_event.rbi +1 -1
  149. data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rbi +10 -12
  150. data/rbi/openai/models/realtime/realtime_error_event.rbi +1 -1
  151. data/rbi/openai/models/responses/response_input_file.rbi +31 -1
  152. data/rbi/openai/models/responses/response_input_file_content.rbi +39 -1
  153. data/rbi/openai/models/responses/response_input_image.rbi +33 -1
  154. data/rbi/openai/models/responses/response_input_image_content.rbi +41 -1
  155. data/rbi/openai/models/responses/response_input_text.rbi +31 -1
  156. data/rbi/openai/models/responses/response_input_text_content.rbi +39 -1
  157. data/rbi/openai/models/responses/response_tool_search_output_item_param.rbi +24 -15
  158. data/rbi/openai/models/responses/tool.rbi +24 -15
  159. data/rbi/openai/resources/beta/agents.rbi +4 -2
  160. data/rbi/openai/resources/beta/responses.rbi +8 -1
  161. data/rbi/openai/resources/images.rbi +18 -6
  162. data/rbi/openai/resources/live/forks.rbi +8 -1
  163. data/rbi/openai/resources/live/sideband.rbi +8 -1
  164. data/rbi/openai/resources/live.rbi +8 -1
  165. data/rbi/openai/resources/realtime/translations.rbi +8 -1
  166. data/rbi/openai/resources/realtime.rbi +8 -1
  167. data/rbi/openai/resources/responses.rbi +8 -1
  168. data/sig/openai/models/beta/agent_tool.rbs +14 -0
  169. data/sig/openai/models/beta/agent_tool_param.rbs +14 -0
  170. data/sig/openai/models/beta/beta_response_input_file.rbs +34 -3
  171. data/sig/openai/models/beta/beta_response_input_file_content.rbs +34 -3
  172. data/sig/openai/models/beta/beta_response_input_image.rbs +34 -3
  173. data/sig/openai/models/beta/beta_response_input_image_content.rbs +34 -3
  174. data/sig/openai/models/beta/beta_response_input_text.rbs +34 -3
  175. data/sig/openai/models/beta/beta_response_input_text_content.rbs +34 -3
  176. data/sig/openai/models/beta/beta_response_item.rbs +34 -3
  177. data/sig/openai/models/beta/beta_response_output_item.rbs +34 -3
  178. data/sig/openai/models/beta/beta_response_tool_search_output_item_param.rbs +24 -15
  179. data/sig/openai/models/beta/beta_tool.rbs +24 -15
  180. data/sig/openai/models/beta/persisted_agent_tool.rbs +14 -0
  181. data/sig/openai/models/beta/persisted_agent_tool_param.rbs +14 -0
  182. data/sig/openai/models/chat/chat_completion_content_part.rbs +34 -3
  183. data/sig/openai/models/chat/chat_completion_content_part_image.rbs +34 -3
  184. data/sig/openai/models/chat/chat_completion_content_part_input_audio.rbs +34 -3
  185. data/sig/openai/models/chat/chat_completion_content_part_text.rbs +34 -3
  186. data/sig/openai/models/conversations/computer_screenshot_content.rbs +34 -3
  187. data/sig/openai/models/image_edit_params.rbs +8 -2
  188. data/sig/openai/models/image_generate_params.rbs +10 -4
  189. data/sig/openai/models/live/client_delegation.rbs +30 -3
  190. data/sig/openai/models/live/decision_assistant_message.rbs +134 -0
  191. data/sig/openai/models/live/decision_choice_option.rbs +37 -0
  192. data/sig/openai/models/live/decision_developer_message.rbs +67 -0
  193. data/sig/openai/models/live/decision_input_text.rbs +20 -0
  194. data/sig/openai/models/live/decision_item_create_event.rbs +413 -131
  195. data/sig/openai/models/live/decision_item_created_event.rbs +401 -131
  196. data/sig/openai/models/live/decision_json_object.rbs +9 -0
  197. data/sig/openai/models/live/decision_question.rbs +164 -0
  198. data/sig/openai/models/live/decision_stored_assistant_message.rbs +131 -0
  199. data/sig/openai/models/live/decision_stored_developer_message.rbs +64 -0
  200. data/sig/openai/models/live/decision_stored_system_message.rbs +64 -0
  201. data/sig/openai/models/live/decision_stored_user_message.rbs +177 -0
  202. data/sig/openai/models/live/decision_system_message.rbs +67 -0
  203. data/sig/openai/models/live/decision_trigger.rbs +8 -208
  204. data/sig/openai/models/live/decision_user_message.rbs +180 -0
  205. data/sig/openai/models/live/decisions_delegation_config.rbs +6 -204
  206. data/sig/openai/models/live/decisions_delegation_update_config.rbs +8 -206
  207. data/sig/openai/models/live/fork_session_config.rbs +26 -0
  208. data/sig/openai/models/live/media_session_config.rbs +53 -4
  209. data/sig/openai/models/live/media_session_fork_config.rbs +26 -0
  210. data/sig/openai/models/live/session_accept_params.rbs +53 -4
  211. data/sig/openai/models/live/session_config.rbs +53 -4
  212. data/sig/openai/models/live/session_resource.rbs +53 -4
  213. data/sig/openai/models/live/session_update_config.rbs +52 -0
  214. data/sig/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rbs +10 -12
  215. data/sig/openai/models/responses/response_input_file.rbs +34 -3
  216. data/sig/openai/models/responses/response_input_file_content.rbs +34 -3
  217. data/sig/openai/models/responses/response_input_image.rbs +34 -3
  218. data/sig/openai/models/responses/response_input_image_content.rbs +34 -3
  219. data/sig/openai/models/responses/response_input_text.rbs +34 -3
  220. data/sig/openai/models/responses/response_input_text_content.rbs +34 -3
  221. data/sig/openai/models/responses/response_tool_search_output_item_param.rbs +24 -15
  222. data/sig/openai/models/responses/tool.rbs +24 -15
  223. data/sig/openai/resources/beta/responses.rbs +2 -1
  224. data/sig/openai/resources/live/forks.rbs +2 -1
  225. data/sig/openai/resources/live/sideband.rbs +2 -1
  226. data/sig/openai/resources/live.rbs +2 -1
  227. data/sig/openai/resources/realtime/translations.rbs +2 -1
  228. data/sig/openai/resources/realtime.rbs +2 -1
  229. data/sig/openai/resources/responses.rbs +2 -1
  230. metadata +37 -1
@@ -64,6 +64,8 @@ module OpenAI
64
64
  end
65
65
 
66
66
  class Decisions < OpenAI::Internal::Type::BaseModel
67
+ Question = ::OpenAI::Models::Live::DecisionQuestion
68
+
67
69
  OrHash = T.type_alias do
68
70
  T.any(
69
71
  OpenAI::Live::DecisionTrigger::Decisions,
@@ -76,9 +78,9 @@ module OpenAI
76
78
  returns(
77
79
  T::Array[
78
80
  T.any(
79
- OpenAI::Live::DecisionTrigger::Decisions::Question::Predicate,
80
- OpenAI::Live::DecisionTrigger::Decisions::Question::Choice,
81
- OpenAI::Live::DecisionTrigger::Decisions::Question::Score
81
+ OpenAI::Live::DecisionQuestion::Choice,
82
+ OpenAI::Live::DecisionQuestion::Predicate,
83
+ OpenAI::Live::DecisionQuestion::Score
82
84
  )
83
85
  ]
84
86
  )
@@ -92,9 +94,9 @@ module OpenAI
92
94
 
93
95
  questions: T::Array[
94
96
  T.any(
95
- OpenAI::Live::DecisionTrigger::Decisions::Question::Predicate::OrHash,
96
- OpenAI::Live::DecisionTrigger::Decisions::Question::Choice::OrHash,
97
- OpenAI::Live::DecisionTrigger::Decisions::Question::Score::OrHash
97
+ OpenAI::Live::DecisionQuestion::Choice::OrHash,
98
+ OpenAI::Live::DecisionQuestion::Predicate::OrHash,
99
+ OpenAI::Live::DecisionQuestion::Score::OrHash
98
100
  )
99
101
  ]
100
102
  )
@@ -113,9 +115,9 @@ module OpenAI
113
115
  {
114
116
  questions: T::Array[
115
117
  T.any(
116
- OpenAI::Live::DecisionTrigger::Decisions::Question::Predicate,
117
- OpenAI::Live::DecisionTrigger::Decisions::Question::Choice,
118
- OpenAI::Live::DecisionTrigger::Decisions::Question::Score
118
+ OpenAI::Live::DecisionQuestion::Choice,
119
+ OpenAI::Live::DecisionQuestion::Predicate,
120
+ OpenAI::Live::DecisionQuestion::Score
119
121
  )
120
122
  ]
121
123
  }
@@ -124,380 +126,6 @@ module OpenAI
124
126
  def to_hash
125
127
  end
126
128
 
127
- # A question about the request's input, with an optional correlation name.
128
- module Question
129
- extend OpenAI::Internal::Type::Union
130
-
131
- Variants = T.type_alias {
132
- T.any(
133
- OpenAI::Live::DecisionTrigger::Decisions::Question::Predicate,
134
- OpenAI::Live::DecisionTrigger::Decisions::Question::Choice,
135
- OpenAI::Live::DecisionTrigger::Decisions::Question::Score
136
- )
137
- }
138
-
139
- class Predicate < OpenAI::Internal::Type::BaseModel
140
- OrHash = T.type_alias do
141
- T.any(
142
- OpenAI::Live::DecisionTrigger::Decisions::Question::Predicate,
143
- OpenAI::Internal::AnyHash
144
- )
145
- end
146
-
147
- sig { returns(OpenAI::Live::DecisionTrigger::Decisions::Question::Predicate::Instructions::Variants) }
148
- attr_accessor :instructions
149
-
150
- # The type of the object. Always `predicate`.
151
- sig { returns(Symbol) }
152
- attr_accessor :type
153
-
154
- sig { returns(T.nilable(String)) }
155
- attr_reader :name
156
-
157
- sig { params(name: String).void }
158
- attr_writer :name
159
-
160
- # Estimate how likely it is that a statement about the input is true.
161
- sig do
162
- params(
163
-
164
- instructions: OpenAI::Live::DecisionTrigger::Decisions::Question::Predicate::Instructions::Variants,
165
-
166
- name: String,
167
-
168
- type: Symbol
169
- )
170
- .returns(T.attached_class)
171
- end
172
- def self.new(
173
-
174
- instructions:,
175
-
176
- name: nil,
177
-
178
- # The type of the object. Always `predicate`.
179
-
180
- type: :predicate
181
- )
182
- end
183
-
184
- sig do
185
- override.returns(
186
- {
187
- instructions: OpenAI::Live::DecisionTrigger::Decisions::Question::Predicate::Instructions::Variants,
188
- type: Symbol,
189
- name: String
190
- }
191
- )
192
- end
193
- def to_hash
194
- end
195
-
196
- module Instructions
197
- extend OpenAI::Internal::Type::Union
198
-
199
- Variants = T.type_alias { T.any(String, T::Array[OpenAI::DecisionQuestionInputPart::Variants]) }
200
-
201
- sig {
202
- override.returns(
203
- T::Array[OpenAI::Live::DecisionTrigger::Decisions::Question::Predicate::Instructions::Variants]
204
- )
205
- }
206
- def self.variants
207
- end
208
-
209
- DecisionQuestionInputPartArray = T.let(
210
- OpenAI::Internal::Type::ArrayOf[union: OpenAI::DecisionQuestionInputPart],
211
- OpenAI::Internal::Type::Converter
212
- )
213
-
214
- end
215
- end
216
-
217
- class Choice < OpenAI::Internal::Type::BaseModel
218
- OrHash = T.type_alias do
219
- T.any(
220
- OpenAI::Live::DecisionTrigger::Decisions::Question::Choice,
221
- OpenAI::Internal::AnyHash
222
- )
223
- end
224
-
225
- # Provide between 2 and 255 choices. Each choice must be unique.
226
- sig { returns(T::Array[OpenAI::Live::DecisionTrigger::Decisions::Question::Choice::Choice]) }
227
- attr_accessor :choices
228
-
229
- sig { returns(OpenAI::Live::DecisionTrigger::Decisions::Question::Choice::Instructions::Variants) }
230
- attr_accessor :instructions
231
-
232
- # The type of the object. Always `choice`.
233
- sig { returns(Symbol) }
234
- attr_accessor :type
235
-
236
- sig { returns(T.nilable(String)) }
237
- attr_reader :name
238
-
239
- sig { params(name: String).void }
240
- attr_writer :name
241
-
242
- # Choose from the supplied options based on the input.
243
- sig do
244
- params(
245
-
246
- choices: T::Array[OpenAI::Live::DecisionTrigger::Decisions::Question::Choice::Choice::OrHash],
247
-
248
- instructions: OpenAI::Live::DecisionTrigger::Decisions::Question::Choice::Instructions::Variants,
249
-
250
- name: String,
251
-
252
- type: Symbol
253
- )
254
- .returns(T.attached_class)
255
- end
256
- def self.new(
257
-
258
- # Provide between 2 and 255 choices. Each choice must be unique.
259
- choices:,
260
-
261
- instructions:,
262
-
263
- name: nil,
264
-
265
- # The type of the object. Always `choice`.
266
-
267
- type: :choice
268
- )
269
- end
270
-
271
- sig do
272
- override.returns(
273
- {
274
- choices: T::Array[OpenAI::Live::DecisionTrigger::Decisions::Question::Choice::Choice],
275
- instructions: OpenAI::Live::DecisionTrigger::Decisions::Question::Choice::Instructions::Variants,
276
- type: Symbol,
277
- name: String
278
- }
279
- )
280
- end
281
- def to_hash
282
- end
283
-
284
- class Choice < OpenAI::Internal::Type::BaseModel
285
- OrHash = T.type_alias do
286
- T.any(
287
- OpenAI::Live::DecisionTrigger::Decisions::Question::Choice::Choice,
288
- OpenAI::Internal::AnyHash
289
- )
290
- end
291
-
292
- # Choice values are typed: a string and a boolean with the same text are distinct.
293
- sig { returns(T.any(String, T::Boolean)) }
294
- attr_accessor :value
295
-
296
- sig { returns(T.nilable(String)) }
297
- attr_reader :description
298
-
299
- sig { params(description: String).void }
300
- attr_writer :description
301
-
302
- sig do
303
- params(
304
-
305
- value: T.any(String, T::Boolean),
306
-
307
- description: String
308
- )
309
- .returns(T.attached_class)
310
- end
311
- def self.new(
312
-
313
- # Choice values are typed: a string and a boolean with the same text are distinct.
314
- value:,
315
-
316
- description: nil
317
- )
318
- end
319
-
320
- sig do
321
- override.returns(
322
- {value: T.any(String, T::Boolean), description: String}
323
- )
324
- end
325
- def to_hash
326
- end
327
-
328
- # Choice values are typed: a string and a boolean with the same text are distinct.
329
- module Value
330
- extend OpenAI::Internal::Type::Union
331
-
332
- Variants = T.type_alias { T.any(String, T::Boolean) }
333
-
334
- sig {
335
- override.returns(
336
- T::Array[OpenAI::Live::DecisionTrigger::Decisions::Question::Choice::Choice::Value::Variants]
337
- )
338
- }
339
- def self.variants
340
- end
341
-
342
- end
343
- end
344
-
345
- module Instructions
346
- extend OpenAI::Internal::Type::Union
347
-
348
- Variants = T.type_alias { T.any(String, T::Array[OpenAI::DecisionQuestionInputPart::Variants]) }
349
-
350
- sig {
351
- override.returns(
352
- T::Array[OpenAI::Live::DecisionTrigger::Decisions::Question::Choice::Instructions::Variants]
353
- )
354
- }
355
- def self.variants
356
- end
357
-
358
- DecisionQuestionInputPartArray = T.let(
359
- OpenAI::Internal::Type::ArrayOf[union: OpenAI::DecisionQuestionInputPart],
360
- OpenAI::Internal::Type::Converter
361
- )
362
-
363
- end
364
- end
365
-
366
- class Score < OpenAI::Internal::Type::BaseModel
367
- OrHash = T.type_alias do
368
- T.any(
369
- OpenAI::Live::DecisionTrigger::Decisions::Question::Score,
370
- OpenAI::Internal::AnyHash
371
- )
372
- end
373
-
374
- sig { returns(OpenAI::Live::DecisionTrigger::Decisions::Question::Score::Instructions::Variants) }
375
- attr_accessor :instructions
376
-
377
- sig { returns(T::Array[OpenAI::Live::DecisionTrigger::Decisions::Question::Score::Level]) }
378
- attr_accessor :levels
379
-
380
- # The type of the object. Always `score`.
381
- sig { returns(Symbol) }
382
- attr_accessor :type
383
-
384
- sig { returns(T.nilable(String)) }
385
- attr_reader :name
386
-
387
- sig { params(name: String).void }
388
- attr_writer :name
389
-
390
- # Rate the input against the supplied ordered levels.
391
- sig do
392
- params(
393
-
394
- instructions: OpenAI::Live::DecisionTrigger::Decisions::Question::Score::Instructions::Variants,
395
-
396
- levels: T::Array[OpenAI::Live::DecisionTrigger::Decisions::Question::Score::Level::OrHash],
397
-
398
- name: String,
399
-
400
- type: Symbol
401
- )
402
- .returns(T.attached_class)
403
- end
404
- def self.new(
405
-
406
- instructions:,
407
-
408
- levels:,
409
-
410
- name: nil,
411
-
412
- # The type of the object. Always `score`.
413
-
414
- type: :score
415
- )
416
- end
417
-
418
- sig do
419
- override.returns(
420
- {
421
- instructions: OpenAI::Live::DecisionTrigger::Decisions::Question::Score::Instructions::Variants,
422
- levels: T::Array[OpenAI::Live::DecisionTrigger::Decisions::Question::Score::Level],
423
- type: Symbol,
424
- name: String
425
- }
426
- )
427
- end
428
- def to_hash
429
- end
430
-
431
- module Instructions
432
- extend OpenAI::Internal::Type::Union
433
-
434
- Variants = T.type_alias { T.any(String, T::Array[OpenAI::DecisionQuestionInputPart::Variants]) }
435
-
436
- sig {
437
- override.returns(
438
- T::Array[OpenAI::Live::DecisionTrigger::Decisions::Question::Score::Instructions::Variants]
439
- )
440
- }
441
- def self.variants
442
- end
443
-
444
- DecisionQuestionInputPartArray = T.let(
445
- OpenAI::Internal::Type::ArrayOf[union: OpenAI::DecisionQuestionInputPart],
446
- OpenAI::Internal::Type::Converter
447
- )
448
-
449
- end
450
-
451
- class Level < OpenAI::Internal::Type::BaseModel
452
- OrHash = T.type_alias do
453
- T.any(
454
- OpenAI::Live::DecisionTrigger::Decisions::Question::Score::Level,
455
- OpenAI::Internal::AnyHash
456
- )
457
- end
458
-
459
- sig { returns(String) }
460
- attr_accessor :label
461
-
462
- sig { returns(T.nilable(String)) }
463
- attr_reader :description
464
-
465
- sig { params(description: String).void }
466
- attr_writer :description
467
-
468
- sig do
469
- params(
470
-
471
- label: String,
472
-
473
- description: String
474
- )
475
- .returns(T.attached_class)
476
- end
477
- def self.new(
478
-
479
- label:,
480
-
481
- description: nil
482
- )
483
- end
484
-
485
- sig do
486
- override.returns(
487
- {label: String, description: String}
488
- )
489
- end
490
- def to_hash
491
- end
492
-
493
- end
494
- end
495
-
496
- sig { override.returns(T::Array[OpenAI::Live::DecisionTrigger::Decisions::Question::Variants]) }
497
- def self.variants
498
- end
499
-
500
- end
501
129
  end
502
130
 
503
131
  module EventType