openai 0.111.0 → 0.113.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (248) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +15 -0
  3. data/README.md +1 -1
  4. data/lib/openai/models/beta/agent.rb +2 -2
  5. data/lib/openai/models/beta/agent_create_params.rb +2 -2
  6. data/lib/openai/models/beta/agent_session.rb +2 -2
  7. data/lib/openai/models/beta/agent_tool.rb +18 -1
  8. data/lib/openai/models/beta/agent_tool_param.rb +18 -1
  9. data/lib/openai/models/beta/agent_update_params.rb +2 -2
  10. data/lib/openai/models/beta/agents/session_create_params.rb +2 -2
  11. data/lib/openai/models/beta/beta_response.rb +3 -0
  12. data/lib/openai/models/beta/beta_response_input_file.rb +23 -1
  13. data/lib/openai/models/beta/beta_response_input_file_content.rb +23 -1
  14. data/lib/openai/models/beta/beta_response_input_image.rb +23 -1
  15. data/lib/openai/models/beta/beta_response_input_image_content.rb +23 -1
  16. data/lib/openai/models/beta/beta_response_input_text.rb +23 -1
  17. data/lib/openai/models/beta/beta_response_input_text_content.rb +23 -1
  18. data/lib/openai/models/beta/beta_response_item.rb +28 -1
  19. data/lib/openai/models/beta/beta_response_output_item.rb +28 -1
  20. data/lib/openai/models/beta/beta_response_tool_search_output_item_param.rb +26 -15
  21. data/lib/openai/models/beta/beta_responses_client_event.rb +3 -0
  22. data/lib/openai/models/beta/beta_tool.rb +26 -15
  23. data/lib/openai/models/beta/persisted_agent_tool.rb +18 -1
  24. data/lib/openai/models/beta/persisted_agent_tool_param.rb +18 -1
  25. data/lib/openai/models/beta/response_compact_params.rb +3 -0
  26. data/lib/openai/models/beta/response_create_params.rb +3 -0
  27. data/lib/openai/models/chat/chat_completion_content_part.rb +23 -1
  28. data/lib/openai/models/chat/chat_completion_content_part_image.rb +23 -1
  29. data/lib/openai/models/chat/chat_completion_content_part_input_audio.rb +23 -1
  30. data/lib/openai/models/chat/chat_completion_content_part_text.rb +23 -1
  31. data/lib/openai/models/chat_model.rb +1 -0
  32. data/lib/openai/models/conversations/computer_screenshot_content.rb +23 -1
  33. data/lib/openai/models/decision_create_params.rb +8 -4
  34. data/lib/openai/models/image_edit_params.rb +20 -4
  35. data/lib/openai/models/image_generate_params.rb +23 -7
  36. data/lib/openai/models/image_model.rb +2 -0
  37. data/lib/openai/models/live/client_delegation.rb +20 -1
  38. data/lib/openai/models/live/client_event.rb +4 -4
  39. data/lib/openai/models/live/commentary_append_event.rb +1 -1
  40. data/lib/openai/models/live/decision_assistant_message.rb +154 -0
  41. data/lib/openai/models/live/decision_choice_option.rb +35 -0
  42. data/lib/openai/models/live/decision_developer_message.rb +70 -0
  43. data/lib/openai/models/live/decision_input_text.rb +26 -0
  44. data/lib/openai/models/live/decision_item_create_event.rb +490 -131
  45. data/lib/openai/models/live/decision_item_created_event.rb +486 -131
  46. data/lib/openai/models/live/decision_json_object.rb +10 -0
  47. data/lib/openai/models/live/decision_question.rb +172 -0
  48. data/lib/openai/models/live/decision_stored_assistant_message.rb +152 -0
  49. data/lib/openai/models/live/decision_stored_developer_message.rb +68 -0
  50. data/lib/openai/models/live/decision_stored_system_message.rb +68 -0
  51. data/lib/openai/models/live/decision_stored_user_message.rb +195 -0
  52. data/lib/openai/models/live/decision_system_message.rb +70 -0
  53. data/lib/openai/models/live/decision_trigger.rb +6 -258
  54. data/lib/openai/models/live/decision_user_message.rb +193 -0
  55. data/lib/openai/models/live/decisions_delegation_config.rb +5 -250
  56. data/lib/openai/models/live/decisions_delegation_update_config.rb +5 -257
  57. data/lib/openai/models/live/fork_client_event.rb +4 -4
  58. data/lib/openai/models/live/fork_server_event.rb +2 -2
  59. data/lib/openai/models/live/fork_session_config.rb +20 -1
  60. data/lib/openai/models/live/input_audio_muted_event.rb +3 -2
  61. data/lib/openai/models/live/input_audio_unmute_event.rb +2 -1
  62. data/lib/openai/models/live/input_audio_unmuted_event.rb +3 -2
  63. data/lib/openai/models/live/instructions_append_event.rb +5 -2
  64. data/lib/openai/models/live/media_session_config.rb +39 -2
  65. data/lib/openai/models/live/media_session_fork_config.rb +20 -1
  66. data/lib/openai/models/live/server_event.rb +2 -2
  67. data/lib/openai/models/live/session_accept_params.rb +39 -2
  68. data/lib/openai/models/live/session_config.rb +39 -2
  69. data/lib/openai/models/live/session_resource.rb +39 -2
  70. data/lib/openai/models/live/session_update_config.rb +41 -2
  71. data/lib/openai/models/live/sideband_client_event.rb +4 -4
  72. data/lib/openai/models/live/sideband_server_event.rb +2 -2
  73. data/lib/openai/models/live/thinking_append_event.rb +1 -1
  74. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rb +10 -12
  75. data/lib/openai/models/realtime/realtime_error_event.rb +1 -1
  76. data/lib/openai/models/realtime/realtime_server_event.rb +1 -1
  77. data/lib/openai/models/realtime/realtime_translation_server_event.rb +1 -1
  78. data/lib/openai/models/responses/response_compact_params.rb +3 -0
  79. data/lib/openai/models/responses/response_input_file.rb +23 -1
  80. data/lib/openai/models/responses/response_input_file_content.rb +23 -1
  81. data/lib/openai/models/responses/response_input_image.rb +23 -1
  82. data/lib/openai/models/responses/response_input_image_content.rb +23 -1
  83. data/lib/openai/models/responses/response_input_text.rb +23 -1
  84. data/lib/openai/models/responses/response_input_text_content.rb +23 -1
  85. data/lib/openai/models/responses/response_tool_search_output_item_param.rb +26 -15
  86. data/lib/openai/models/responses/tool.rb +26 -15
  87. data/lib/openai/resources/beta/agents.rb +2 -2
  88. data/lib/openai/resources/beta/responses.rb +2 -2
  89. data/lib/openai/resources/images.rb +18 -6
  90. data/lib/openai/resources/live/forks.rb +2 -2
  91. data/lib/openai/resources/live/sideband.rb +2 -2
  92. data/lib/openai/resources/live.rb +2 -2
  93. data/lib/openai/resources/realtime/translations.rb +2 -2
  94. data/lib/openai/resources/realtime.rb +2 -2
  95. data/lib/openai/resources/responses.rb +2 -2
  96. data/lib/openai/version.rb +1 -1
  97. data/lib/openai.rb +12 -0
  98. data/rbi/openai/models/beta/agent.rbi +2 -1
  99. data/rbi/openai/models/beta/agent_create_params.rbi +6 -3
  100. data/rbi/openai/models/beta/agent_session.rbi +2 -1
  101. data/rbi/openai/models/beta/agent_tool.rbi +40 -1
  102. data/rbi/openai/models/beta/agent_tool_param.rbi +40 -1
  103. data/rbi/openai/models/beta/agent_update_params.rbi +6 -3
  104. data/rbi/openai/models/beta/agents/session_create_params.rbi +6 -3
  105. data/rbi/openai/models/beta/beta_response.rbi +1 -0
  106. data/rbi/openai/models/beta/beta_response_input_file.rbi +31 -1
  107. data/rbi/openai/models/beta/beta_response_input_file_content.rbi +39 -1
  108. data/rbi/openai/models/beta/beta_response_input_image.rbi +31 -1
  109. data/rbi/openai/models/beta/beta_response_input_image_content.rbi +39 -1
  110. data/rbi/openai/models/beta/beta_response_input_text.rbi +31 -1
  111. data/rbi/openai/models/beta/beta_response_input_text_content.rbi +39 -1
  112. data/rbi/openai/models/beta/beta_response_item.rbi +58 -1
  113. data/rbi/openai/models/beta/beta_response_output_item.rbi +58 -1
  114. data/rbi/openai/models/beta/beta_response_tool_search_output_item_param.rbi +24 -15
  115. data/rbi/openai/models/beta/beta_responses_client_event.rbi +4 -0
  116. data/rbi/openai/models/beta/beta_tool.rbi +24 -15
  117. data/rbi/openai/models/beta/persisted_agent_tool.rbi +40 -1
  118. data/rbi/openai/models/beta/persisted_agent_tool_param.rbi +40 -1
  119. data/rbi/openai/models/beta/response_compact_params.rbi +1 -0
  120. data/rbi/openai/models/beta/response_create_params.rbi +1 -0
  121. data/rbi/openai/models/chat/chat_completion_content_part.rbi +43 -1
  122. data/rbi/openai/models/chat/chat_completion_content_part_image.rbi +41 -1
  123. data/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi +46 -1
  124. data/rbi/openai/models/chat/chat_completion_content_part_text.rbi +39 -1
  125. data/rbi/openai/models/chat_model.rbi +1 -0
  126. data/rbi/openai/models/conversations/computer_screenshot_content.rbi +48 -1
  127. data/rbi/openai/models/image_edit_params.rbi +12 -3
  128. data/rbi/openai/models/image_generate_params.rbi +15 -6
  129. data/rbi/openai/models/live/client_delegation.rbi +23 -1
  130. data/rbi/openai/models/live/commentary_append_event.rbi +1 -1
  131. data/rbi/openai/models/live/decision_assistant_message.rbi +247 -0
  132. data/rbi/openai/models/live/decision_choice_option.rbi +67 -0
  133. data/rbi/openai/models/live/decision_developer_message.rbi +109 -0
  134. data/rbi/openai/models/live/decision_input_text.rbi +55 -0
  135. data/rbi/openai/models/live/decision_item_create_event.rbi +765 -184
  136. data/rbi/openai/models/live/decision_item_created_event.rbi +737 -184
  137. data/rbi/openai/models/live/decision_json_object.rbi +16 -0
  138. data/rbi/openai/models/live/decision_question.rbi +300 -0
  139. data/rbi/openai/models/live/decision_stored_assistant_message.rbi +245 -0
  140. data/rbi/openai/models/live/decision_stored_developer_message.rbi +107 -0
  141. data/rbi/openai/models/live/decision_stored_system_message.rbi +107 -0
  142. data/rbi/openai/models/live/decision_stored_user_message.rbi +333 -0
  143. data/rbi/openai/models/live/decision_system_message.rbi +109 -0
  144. data/rbi/openai/models/live/decision_trigger.rbi +11 -383
  145. data/rbi/openai/models/live/decision_user_message.rbi +320 -0
  146. data/rbi/openai/models/live/decisions_delegation_config.rbi +10 -384
  147. data/rbi/openai/models/live/decisions_delegation_update_config.rbi +13 -387
  148. data/rbi/openai/models/live/fork_session_config.rbi +27 -1
  149. data/rbi/openai/models/live/input_audio_muted_event.rbi +3 -2
  150. data/rbi/openai/models/live/input_audio_unmute_event.rbi +2 -1
  151. data/rbi/openai/models/live/input_audio_unmuted_event.rbi +3 -2
  152. data/rbi/openai/models/live/instructions_append_event.rbi +5 -2
  153. data/rbi/openai/models/live/media_session_config.rbi +44 -2
  154. data/rbi/openai/models/live/media_session_fork_config.rbi +27 -1
  155. data/rbi/openai/models/live/session_accept_params.rbi +44 -2
  156. data/rbi/openai/models/live/session_config.rbi +44 -2
  157. data/rbi/openai/models/live/session_resource.rbi +44 -2
  158. data/rbi/openai/models/live/session_update_config.rbi +54 -2
  159. data/rbi/openai/models/live/thinking_append_event.rbi +1 -1
  160. data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rbi +10 -12
  161. data/rbi/openai/models/realtime/realtime_error_event.rbi +1 -1
  162. data/rbi/openai/models/responses/response_compact_params.rbi +1 -0
  163. data/rbi/openai/models/responses/response_input_file.rbi +31 -1
  164. data/rbi/openai/models/responses/response_input_file_content.rbi +39 -1
  165. data/rbi/openai/models/responses/response_input_image.rbi +33 -1
  166. data/rbi/openai/models/responses/response_input_image_content.rbi +41 -1
  167. data/rbi/openai/models/responses/response_input_text.rbi +31 -1
  168. data/rbi/openai/models/responses/response_input_text_content.rbi +39 -1
  169. data/rbi/openai/models/responses/response_tool_search_output_item_param.rbi +24 -15
  170. data/rbi/openai/models/responses/tool.rbi +24 -15
  171. data/rbi/openai/resources/beta/agents.rbi +4 -2
  172. data/rbi/openai/resources/beta/responses.rbi +8 -1
  173. data/rbi/openai/resources/images.rbi +18 -6
  174. data/rbi/openai/resources/live/forks.rbi +8 -1
  175. data/rbi/openai/resources/live/sideband.rbi +8 -1
  176. data/rbi/openai/resources/live.rbi +8 -1
  177. data/rbi/openai/resources/realtime/translations.rbi +8 -1
  178. data/rbi/openai/resources/realtime.rbi +8 -1
  179. data/rbi/openai/resources/responses.rbi +8 -1
  180. data/sig/openai/models/beta/agent_tool.rbs +14 -0
  181. data/sig/openai/models/beta/agent_tool_param.rbs +14 -0
  182. data/sig/openai/models/beta/beta_response.rbs +2 -0
  183. data/sig/openai/models/beta/beta_response_input_file.rbs +34 -3
  184. data/sig/openai/models/beta/beta_response_input_file_content.rbs +34 -3
  185. data/sig/openai/models/beta/beta_response_input_image.rbs +34 -3
  186. data/sig/openai/models/beta/beta_response_input_image_content.rbs +34 -3
  187. data/sig/openai/models/beta/beta_response_input_text.rbs +34 -3
  188. data/sig/openai/models/beta/beta_response_input_text_content.rbs +34 -3
  189. data/sig/openai/models/beta/beta_response_item.rbs +34 -3
  190. data/sig/openai/models/beta/beta_response_output_item.rbs +34 -3
  191. data/sig/openai/models/beta/beta_response_tool_search_output_item_param.rbs +24 -15
  192. data/sig/openai/models/beta/beta_responses_client_event.rbs +2 -0
  193. data/sig/openai/models/beta/beta_tool.rbs +24 -15
  194. data/sig/openai/models/beta/persisted_agent_tool.rbs +14 -0
  195. data/sig/openai/models/beta/persisted_agent_tool_param.rbs +14 -0
  196. data/sig/openai/models/beta/response_compact_params.rbs +2 -0
  197. data/sig/openai/models/beta/response_create_params.rbs +2 -0
  198. data/sig/openai/models/chat/chat_completion_content_part.rbs +34 -3
  199. data/sig/openai/models/chat/chat_completion_content_part_image.rbs +34 -3
  200. data/sig/openai/models/chat/chat_completion_content_part_input_audio.rbs +34 -3
  201. data/sig/openai/models/chat/chat_completion_content_part_text.rbs +34 -3
  202. data/sig/openai/models/chat_model.rbs +2 -0
  203. data/sig/openai/models/conversations/computer_screenshot_content.rbs +34 -3
  204. data/sig/openai/models/image_edit_params.rbs +8 -2
  205. data/sig/openai/models/image_generate_params.rbs +10 -4
  206. data/sig/openai/models/live/client_delegation.rbs +30 -3
  207. data/sig/openai/models/live/decision_assistant_message.rbs +134 -0
  208. data/sig/openai/models/live/decision_choice_option.rbs +37 -0
  209. data/sig/openai/models/live/decision_developer_message.rbs +67 -0
  210. data/sig/openai/models/live/decision_input_text.rbs +20 -0
  211. data/sig/openai/models/live/decision_item_create_event.rbs +413 -131
  212. data/sig/openai/models/live/decision_item_created_event.rbs +401 -131
  213. data/sig/openai/models/live/decision_json_object.rbs +9 -0
  214. data/sig/openai/models/live/decision_question.rbs +164 -0
  215. data/sig/openai/models/live/decision_stored_assistant_message.rbs +131 -0
  216. data/sig/openai/models/live/decision_stored_developer_message.rbs +64 -0
  217. data/sig/openai/models/live/decision_stored_system_message.rbs +64 -0
  218. data/sig/openai/models/live/decision_stored_user_message.rbs +177 -0
  219. data/sig/openai/models/live/decision_system_message.rbs +67 -0
  220. data/sig/openai/models/live/decision_trigger.rbs +8 -208
  221. data/sig/openai/models/live/decision_user_message.rbs +180 -0
  222. data/sig/openai/models/live/decisions_delegation_config.rbs +6 -204
  223. data/sig/openai/models/live/decisions_delegation_update_config.rbs +8 -206
  224. data/sig/openai/models/live/fork_session_config.rbs +26 -0
  225. data/sig/openai/models/live/media_session_config.rbs +53 -4
  226. data/sig/openai/models/live/media_session_fork_config.rbs +26 -0
  227. data/sig/openai/models/live/session_accept_params.rbs +53 -4
  228. data/sig/openai/models/live/session_config.rbs +53 -4
  229. data/sig/openai/models/live/session_resource.rbs +53 -4
  230. data/sig/openai/models/live/session_update_config.rbs +52 -0
  231. data/sig/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rbs +10 -12
  232. data/sig/openai/models/responses/response_compact_params.rbs +2 -0
  233. data/sig/openai/models/responses/response_input_file.rbs +34 -3
  234. data/sig/openai/models/responses/response_input_file_content.rbs +34 -3
  235. data/sig/openai/models/responses/response_input_image.rbs +34 -3
  236. data/sig/openai/models/responses/response_input_image_content.rbs +34 -3
  237. data/sig/openai/models/responses/response_input_text.rbs +34 -3
  238. data/sig/openai/models/responses/response_input_text_content.rbs +34 -3
  239. data/sig/openai/models/responses/response_tool_search_output_item_param.rbs +24 -15
  240. data/sig/openai/models/responses/tool.rbs +24 -15
  241. data/sig/openai/resources/beta/responses.rbs +2 -1
  242. data/sig/openai/resources/live/forks.rbs +2 -1
  243. data/sig/openai/resources/live/sideband.rbs +2 -1
  244. data/sig/openai/resources/live.rbs +2 -1
  245. data/sig/openai/resources/realtime/translations.rbs +2 -1
  246. data/sig/openai/resources/realtime.rbs +2 -1
  247. data/sig/openai/resources/responses.rbs +2 -1
  248. metadata +37 -1
@@ -6,8 +6,8 @@ module OpenAI
6
6
  class DecisionItemCreateEvent < OpenAI::Internal::Type::BaseModel
7
7
  # @!attribute item
8
8
  #
9
- # @return [OpenAI::Models::Live::DecisionItemCreateEvent::Item]
10
- required :item, -> { OpenAI::Live::DecisionItemCreateEvent::Item }
9
+ # @return [OpenAI::Models::Live::DecisionUserMessage, OpenAI::Models::Live::DecisionDeveloperMessage, OpenAI::Models::Live::DecisionSystemMessage, OpenAI::Models::Live::DecisionAssistantMessage, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCall, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCall, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput]
10
+ required :item, union: -> { OpenAI::Live::DecisionItemCreateEvent::ItemUnion }
11
11
 
12
12
  # @!attribute type
13
13
  #
@@ -25,7 +25,7 @@ module OpenAI
25
25
  # Append an input item for future decisions without starting an evaluation or
26
26
  # changing Live voice context.
27
27
  #
28
- # @param item [OpenAI::Models::Live::DecisionItemCreateEvent::Item]
28
+ # @param item [OpenAI::Models::Live::DecisionUserMessage, OpenAI::Models::Live::DecisionDeveloperMessage, OpenAI::Models::Live::DecisionSystemMessage, OpenAI::Models::Live::DecisionAssistantMessage, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCall, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCall, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput]
29
29
  #
30
30
  # @param event_id [String, nil]
31
31
  # Optional client identifier for correlating this command with a server event's
@@ -34,160 +34,519 @@ module OpenAI
34
34
  # @param type [Symbol, :"decision.item.create"]
35
35
 
36
36
  # @see OpenAI::Models::Live::DecisionItemCreateEvent#item
37
- class Item < OpenAI::Internal::Type::BaseModel
38
- # @!attribute content
39
- # The text input to the model.
40
- #
41
- # @return [String, Array<OpenAI::Models::Live::DecisionItemCreateEvent::Item::Content::Part::InputText, OpenAI::Models::Live::DecisionItemCreateEvent::Item::Content::Part::InputImage>]
42
- required :content, union: -> { OpenAI::Live::DecisionItemCreateEvent::Item::Content }
43
-
44
- # @!attribute role
45
- # The message role. Always `user`.
46
- #
47
- # @return [Symbol, :user]
48
- required :role, const: :user
49
-
50
- # @!attribute id
51
- # The unique ID of this message item.
52
- #
53
- # @return [String, nil]
54
- optional :id, String, nil?: true
55
-
56
- # @!attribute type
57
- #
58
- # @return [Symbol, OpenAI::Models::Live::DecisionItemCreateEvent::Item::Type, nil]
59
- optional :type, enum: -> { OpenAI::Live::DecisionItemCreateEvent::Item::Type }
60
-
61
- # @!method initialize(content:, id: nil, type: nil, role: :user)
62
- # @param content [String, Array<OpenAI::Models::Live::DecisionItemCreateEvent::Item::Content::Part::InputText, OpenAI::Models::Live::DecisionItemCreateEvent::Item::Content::Part::InputImage>]
63
- # The text input to the model.
64
- #
65
- # @param id [String, nil]
66
- # The unique ID of this message item.
67
- #
68
- # @param type [Symbol, OpenAI::Models::Live::DecisionItemCreateEvent::Item::Type]
69
- #
70
- # @param role [Symbol, :user]
71
- # The message role. Always `user`.
72
-
73
- # The text input to the model.
74
- #
75
- # @see OpenAI::Models::Live::DecisionItemCreateEvent::Item#content
76
- module Content
37
+ module ItemUnion
38
+ extend OpenAI::Internal::Type::Union
39
+
40
+ discriminator :type
41
+
42
+ variant :message, -> { OpenAI::Live::DecisionItemCreateEvent::ItemUnion::Message }
43
+
44
+ variant :function_call, -> { OpenAI::Live::DecisionItemCreateEvent::ItemUnion::FunctionCall }
45
+
46
+ variant :function_call_output, -> { OpenAI::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput }
47
+
48
+ variant :custom_tool_call, -> { OpenAI::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCall }
49
+
50
+ variant(
51
+ :custom_tool_call_output,
52
+ -> { OpenAI::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput }
53
+ )
54
+
55
+ # @api private
56
+ module Message
77
57
  extend OpenAI::Internal::Type::Union
58
+ discriminator :role
78
59
 
79
- # The text input to the model.
80
- variant String
60
+ variant :user, -> { OpenAI::Live::DecisionUserMessage }
81
61
 
82
- variant -> { OpenAI::Models::Live::DecisionItemCreateEvent::Item::Content::PartsArray }
62
+ variant :developer, -> { OpenAI::Live::DecisionDeveloperMessage }
83
63
 
84
- module Part
85
- extend OpenAI::Internal::Type::Union
64
+ variant :system, -> { OpenAI::Live::DecisionSystemMessage }
86
65
 
87
- discriminator :type
66
+ variant :assistant, -> { OpenAI::Live::DecisionAssistantMessage }
67
+ end
88
68
 
89
- variant :input_text, -> { OpenAI::Live::DecisionItemCreateEvent::Item::Content::Part::InputText }
69
+ class FunctionCall < OpenAI::Internal::Type::BaseModel
70
+ # @!attribute arguments
71
+ # The function arguments as a JSON string.
72
+ #
73
+ # @return [String]
74
+ required :arguments, String
75
+
76
+ # @!attribute call_id
77
+ # The unique ID of the function tool call generated by the model.
78
+ #
79
+ # @return [String]
80
+ required :call_id, String
81
+
82
+ # @!attribute name
83
+ #
84
+ # @return [String]
85
+ required :name, String
86
+
87
+ # @!attribute type
88
+ # The item type. Always `function_call`.
89
+ #
90
+ # @return [Symbol, :function_call]
91
+ required :type, const: :function_call
92
+
93
+ # @!attribute id
94
+ # The local Decision item ID.
95
+ #
96
+ # @return [String, nil]
97
+ optional :id, String, nil?: true
98
+
99
+ # @!attribute namespace
100
+ # The namespace of the function to call.
101
+ #
102
+ # @return [String, nil]
103
+ optional :namespace, String, nil?: true
104
+
105
+ # @!attribute status
106
+ #
107
+ # @return [Symbol, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCall::Status, nil]
108
+ optional(
109
+ :status,
110
+ enum: -> { OpenAI::Live::DecisionItemCreateEvent::ItemUnion::FunctionCall::Status },
111
+ nil?: true
112
+ )
113
+
114
+ # @!method initialize(arguments:, call_id:, name:, id: nil, namespace: nil, status: nil, type: :function_call)
115
+ # @param arguments [String]
116
+ # The function arguments as a JSON string.
117
+ #
118
+ # @param call_id [String]
119
+ # The unique ID of the function tool call generated by the model.
120
+ #
121
+ # @param name [String]
122
+ #
123
+ # @param id [String, nil]
124
+ # The local Decision item ID.
125
+ #
126
+ # @param namespace [String, nil]
127
+ # The namespace of the function to call.
128
+ #
129
+ # @param status [Symbol, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCall::Status, nil]
130
+ #
131
+ # @param type [Symbol, :function_call]
132
+ # The item type. Always `function_call`.
133
+
134
+ # @see OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCall#status
135
+ module Status
136
+ extend OpenAI::Internal::Type::Enum
137
+
138
+ IN_PROGRESS = :in_progress
139
+ COMPLETED = :completed
140
+ INCOMPLETE = :incomplete
141
+
142
+ # @!method self.values
143
+ # @return [Array<Symbol>]
144
+ end
145
+ end
90
146
 
91
- variant :input_image, -> { OpenAI::Live::DecisionItemCreateEvent::Item::Content::Part::InputImage }
147
+ class FunctionCallOutput < OpenAI::Internal::Type::BaseModel
148
+ # @!attribute call_id
149
+ # The unique ID of the function tool call generated by the model.
150
+ #
151
+ # @return [String]
152
+ required :call_id, String
153
+
154
+ # @!attribute output
155
+ # The text input to the model.
156
+ #
157
+ # @return [String, Array<OpenAI::Models::Live::DecisionInputText, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput::Output::Part::InputImage>]
158
+ required(
159
+ :output,
160
+ union: -> { OpenAI::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput::Output }
161
+ )
162
+
163
+ # @!attribute type
164
+ # The type of the function tool call output. Always `function_call_output`.
165
+ #
166
+ # @return [Symbol, :function_call_output]
167
+ required :type, const: :function_call_output
168
+
169
+ # @!attribute id
170
+ # The local Decision item ID.
171
+ #
172
+ # @return [String, nil]
173
+ optional :id, String, nil?: true
174
+
175
+ # @!attribute status
176
+ #
177
+ # @return [Symbol, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput::Status, nil]
178
+ optional(
179
+ :status,
180
+ enum: -> { OpenAI::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput::Status },
181
+ nil?: true
182
+ )
183
+
184
+ # @!method initialize(call_id:, output:, id: nil, status: nil, type: :function_call_output)
185
+ # @param call_id [String]
186
+ # The unique ID of the function tool call generated by the model.
187
+ #
188
+ # @param output [String, Array<OpenAI::Models::Live::DecisionInputText, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput::Output::Part::InputImage>]
189
+ # The text input to the model.
190
+ #
191
+ # @param id [String, nil]
192
+ # The local Decision item ID.
193
+ #
194
+ # @param status [Symbol, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput::Status, nil]
195
+ #
196
+ # @param type [Symbol, :function_call_output]
197
+ # The type of the function tool call output. Always `function_call_output`.
92
198
 
93
- class InputText < OpenAI::Internal::Type::BaseModel
94
- # @!attribute text
95
- # The text input to the model.
96
- #
97
- # @return [String]
98
- required :text, String
199
+ # The text input to the model.
200
+ #
201
+ # @see OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput#output
202
+ module Output
203
+ extend OpenAI::Internal::Type::Union
99
204
 
100
- # @!attribute type
101
- # The type of the input item. Always `input_text`.
102
- #
103
- # @return [Symbol, :input_text]
104
- required :type, const: :input_text
205
+ # The text input to the model.
206
+ variant String
105
207
 
106
- # @!method initialize(text:, type: :input_text)
107
- # @param text [String]
108
- # The text input to the model.
109
- #
110
- # @param type [Symbol, :input_text]
111
- # The type of the input item. Always `input_text`.
112
- end
208
+ variant(
209
+ -> { OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput::Output::PartsArray }
210
+ )
211
+
212
+ module Part
213
+ extend OpenAI::Internal::Type::Union
214
+
215
+ discriminator :type
216
+
217
+ variant :input_text, -> { OpenAI::Live::DecisionInputText }
113
218
 
114
- class InputImage < OpenAI::Internal::Type::BaseModel
115
- # @!attribute image_url
116
- # An inline image encoded as a data URL.
117
- #
118
- # @return [String]
119
- required :image_url, String
120
-
121
- # @!attribute type
122
- # The type of the input item. Always `input_image`.
123
- #
124
- # @return [Symbol, :input_image]
125
- required :type, const: :input_image
126
-
127
- # @!attribute detail
128
- # The detail level of the image to be sent to the model. One of `high`, `low`,
129
- # `auto`, or `original`. Defaults to `auto`.
130
- #
131
- # @return [Symbol, OpenAI::Models::Live::DecisionItemCreateEvent::Item::Content::Part::InputImage::Detail, nil]
132
- optional(
133
- :detail,
134
- enum: -> {
135
- OpenAI::Live::DecisionItemCreateEvent::Item::Content::Part::InputImage::Detail
136
- },
137
- nil?: true
219
+ variant(
220
+ :input_image,
221
+ -> { OpenAI::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput::Output::Part::InputImage }
138
222
  )
139
223
 
140
- # @!method initialize(image_url:, detail: nil, type: :input_image)
141
- # @param image_url [String]
142
- # An inline image encoded as a data URL.
143
- #
144
- # @param detail [Symbol, OpenAI::Models::Live::DecisionItemCreateEvent::Item::Content::Part::InputImage::Detail, nil]
145
- # The detail level of the image to be sent to the model. One of `high`, `low`,
146
- # `auto`, or `original`. Defaults to `auto`.
147
- #
148
- # @param type [Symbol, :input_image]
149
- # The type of the input item. Always `input_image`.
150
-
151
- # The detail level of the image to be sent to the model. One of `high`, `low`,
152
- # `auto`, or `original`. Defaults to `auto`.
153
- #
154
- # @see OpenAI::Models::Live::DecisionItemCreateEvent::Item::Content::Part::InputImage#detail
155
- module Detail
156
- extend OpenAI::Internal::Type::Enum
157
-
158
- LOW = :low
159
- HIGH = :high
160
- AUTO = :auto
161
- ORIGINAL = :original
162
-
163
- # @!method self.values
164
- # @return [Array<Symbol>]
224
+ class InputImage < OpenAI::Internal::Type::BaseModel
225
+ # @!attribute image_url
226
+ # A base64-encoded image data URL or a publicly accessible HTTP(S) image URL.
227
+ #
228
+ # @return [String]
229
+ required :image_url, String
230
+
231
+ # @!attribute type
232
+ #
233
+ # @return [Symbol, :input_image]
234
+ required :type, const: :input_image
235
+
236
+ # @!attribute detail
237
+ # The detail level of the image to be sent to the model. One of `high`, `low`,
238
+ # `auto`, or `original`. Defaults to `auto`.
239
+ #
240
+ # @return [Symbol, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput::Output::Part::InputImage::Detail, nil]
241
+ optional(
242
+ :detail,
243
+ enum: -> {
244
+ OpenAI::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput::Output::Part::InputImage::Detail
245
+ },
246
+ nil?: true
247
+ )
248
+
249
+ # @!method initialize(image_url:, detail: nil, type: :input_image)
250
+ # @param image_url [String]
251
+ # A base64-encoded image data URL or a publicly accessible HTTP(S) image URL.
252
+ #
253
+ # @param detail [Symbol, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput::Output::Part::InputImage::Detail, nil]
254
+ # The detail level of the image to be sent to the model. One of `high`, `low`,
255
+ # `auto`, or `original`. Defaults to `auto`.
256
+ #
257
+ # @param type [Symbol, :input_image]
258
+
259
+ # The detail level of the image to be sent to the model. One of `high`, `low`,
260
+ # `auto`, or `original`. Defaults to `auto`.
261
+ #
262
+ # @see OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput::Output::Part::InputImage#detail
263
+ module Detail
264
+ extend OpenAI::Internal::Type::Enum
265
+
266
+ LOW = :low
267
+ HIGH = :high
268
+ AUTO = :auto
269
+ ORIGINAL = :original
270
+
271
+ # @!method self.values
272
+ # @return [Array<Symbol>]
273
+ end
165
274
  end
275
+
276
+ # @!method self.variants
277
+ # @return [Array(OpenAI::Models::Live::DecisionInputText, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput::Output::Part::InputImage)]
166
278
  end
167
279
 
168
280
  # @!method self.variants
169
- # @return [Array(OpenAI::Models::Live::DecisionItemCreateEvent::Item::Content::Part::InputText, OpenAI::Models::Live::DecisionItemCreateEvent::Item::Content::Part::InputImage)]
281
+ # @return [Array(String, Array<OpenAI::Models::Live::DecisionInputText, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput::Output::Part::InputImage>)]
282
+
283
+ # @type [OpenAI::Internal::Type::Converter]
284
+ PartsArray = OpenAI::Internal::Type::ArrayOf[
285
+ union: -> {
286
+ OpenAI::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput::Output::Part
287
+ }
288
+ ]
170
289
  end
171
290
 
172
- # @!method self.variants
173
- # @return [Array(String, Array<OpenAI::Models::Live::DecisionItemCreateEvent::Item::Content::Part::InputText, OpenAI::Models::Live::DecisionItemCreateEvent::Item::Content::Part::InputImage>)]
291
+ # @see OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput#status
292
+ module Status
293
+ extend OpenAI::Internal::Type::Enum
294
+
295
+ IN_PROGRESS = :in_progress
296
+ COMPLETED = :completed
297
+ INCOMPLETE = :incomplete
298
+
299
+ # @!method self.values
300
+ # @return [Array<Symbol>]
301
+ end
302
+ end
174
303
 
175
- # @type [OpenAI::Internal::Type::Converter]
176
- PartsArray = OpenAI::Internal::Type::ArrayOf[
177
- union: -> { OpenAI::Live::DecisionItemCreateEvent::Item::Content::Part }
178
- ]
304
+ class CustomToolCall < OpenAI::Internal::Type::BaseModel
305
+ # @!attribute call_id
306
+ # The unique ID of the function tool call generated by the model.
307
+ #
308
+ # @return [String]
309
+ required :call_id, String
310
+
311
+ # @!attribute input
312
+ # The input to the custom tool call.
313
+ #
314
+ # @return [String]
315
+ required :input, String
316
+
317
+ # @!attribute name
318
+ # The name of the custom tool to call.
319
+ #
320
+ # @return [String]
321
+ required :name, String
322
+
323
+ # @!attribute type
324
+ # The item type. Always `custom_tool_call`.
325
+ #
326
+ # @return [Symbol, :custom_tool_call]
327
+ required :type, const: :custom_tool_call
328
+
329
+ # @!attribute id
330
+ # The local Decision item ID.
331
+ #
332
+ # @return [String, nil]
333
+ optional :id, String, nil?: true
334
+
335
+ # @!attribute namespace
336
+ # The namespace of the function to call.
337
+ #
338
+ # @return [String, nil]
339
+ optional :namespace, String, nil?: true
340
+
341
+ # @!attribute status
342
+ #
343
+ # @return [Symbol, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCall::Status, nil]
344
+ optional(
345
+ :status,
346
+ enum: -> { OpenAI::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCall::Status },
347
+ nil?: true
348
+ )
349
+
350
+ # @!method initialize(call_id:, input:, name:, id: nil, namespace: nil, status: nil, type: :custom_tool_call)
351
+ # @param call_id [String]
352
+ # The unique ID of the function tool call generated by the model.
353
+ #
354
+ # @param input [String]
355
+ # The input to the custom tool call.
356
+ #
357
+ # @param name [String]
358
+ # The name of the custom tool to call.
359
+ #
360
+ # @param id [String, nil]
361
+ # The local Decision item ID.
362
+ #
363
+ # @param namespace [String, nil]
364
+ # The namespace of the function to call.
365
+ #
366
+ # @param status [Symbol, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCall::Status, nil]
367
+ #
368
+ # @param type [Symbol, :custom_tool_call]
369
+ # The item type. Always `custom_tool_call`.
370
+
371
+ # @see OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCall#status
372
+ module Status
373
+ extend OpenAI::Internal::Type::Enum
374
+
375
+ IN_PROGRESS = :in_progress
376
+ COMPLETED = :completed
377
+ INCOMPLETE = :incomplete
378
+
379
+ # @!method self.values
380
+ # @return [Array<Symbol>]
381
+ end
179
382
  end
180
383
 
181
- # @see OpenAI::Models::Live::DecisionItemCreateEvent::Item#type
182
- module Type
183
- extend OpenAI::Internal::Type::Enum
384
+ class CustomToolCallOutput < OpenAI::Internal::Type::BaseModel
385
+ # @!attribute call_id
386
+ # The unique ID of the function tool call generated by the model.
387
+ #
388
+ # @return [String]
389
+ required :call_id, String
390
+
391
+ # @!attribute output
392
+ # The text input to the model.
393
+ #
394
+ # @return [String, Array<OpenAI::Models::Live::DecisionInputText, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput::Output::Part::InputImage>]
395
+ required(
396
+ :output,
397
+ union: -> { OpenAI::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput::Output }
398
+ )
399
+
400
+ # @!attribute type
401
+ #
402
+ # @return [Symbol, :custom_tool_call_output]
403
+ required :type, const: :custom_tool_call_output
404
+
405
+ # @!attribute id
406
+ # The local Decision item ID.
407
+ #
408
+ # @return [String, nil]
409
+ optional :id, String, nil?: true
410
+
411
+ # @!attribute status
412
+ #
413
+ # @return [Symbol, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput::Status, nil]
414
+ optional(
415
+ :status,
416
+ enum: -> { OpenAI::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput::Status },
417
+ nil?: true
418
+ )
419
+
420
+ # @!method initialize(call_id:, output:, id: nil, status: nil, type: :custom_tool_call_output)
421
+ # @param call_id [String]
422
+ # The unique ID of the function tool call generated by the model.
423
+ #
424
+ # @param output [String, Array<OpenAI::Models::Live::DecisionInputText, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput::Output::Part::InputImage>]
425
+ # The text input to the model.
426
+ #
427
+ # @param id [String, nil]
428
+ # The local Decision item ID.
429
+ #
430
+ # @param status [Symbol, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput::Status, nil]
431
+ #
432
+ # @param type [Symbol, :custom_tool_call_output]
433
+
434
+ # The text input to the model.
435
+ #
436
+ # @see OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput#output
437
+ module Output
438
+ extend OpenAI::Internal::Type::Union
439
+
440
+ # The text input to the model.
441
+ variant String
442
+
443
+ variant(
444
+ -> {
445
+ OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput::Output::PartsArray
446
+ }
447
+ )
184
448
 
185
- MESSAGE = :message
449
+ module Part
450
+ extend OpenAI::Internal::Type::Union
451
+
452
+ discriminator :type
453
+
454
+ variant :input_text, -> { OpenAI::Live::DecisionInputText }
455
+
456
+ variant(
457
+ :input_image,
458
+ -> {
459
+ OpenAI::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput::Output::Part::InputImage
460
+ }
461
+ )
462
+
463
+ class InputImage < OpenAI::Internal::Type::BaseModel
464
+ # @!attribute image_url
465
+ # A base64-encoded image data URL or a publicly accessible HTTP(S) image URL.
466
+ #
467
+ # @return [String]
468
+ required :image_url, String
469
+
470
+ # @!attribute type
471
+ #
472
+ # @return [Symbol, :input_image]
473
+ required :type, const: :input_image
474
+
475
+ # @!attribute detail
476
+ # The detail level of the image to be sent to the model. One of `high`, `low`,
477
+ # `auto`, or `original`. Defaults to `auto`.
478
+ #
479
+ # @return [Symbol, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput::Output::Part::InputImage::Detail, nil]
480
+ optional(
481
+ :detail,
482
+ enum: -> {
483
+ OpenAI::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput::Output::Part::InputImage::Detail
484
+ },
485
+ nil?: true
486
+ )
487
+
488
+ # @!method initialize(image_url:, detail: nil, type: :input_image)
489
+ # @param image_url [String]
490
+ # A base64-encoded image data URL or a publicly accessible HTTP(S) image URL.
491
+ #
492
+ # @param detail [Symbol, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput::Output::Part::InputImage::Detail, nil]
493
+ # The detail level of the image to be sent to the model. One of `high`, `low`,
494
+ # `auto`, or `original`. Defaults to `auto`.
495
+ #
496
+ # @param type [Symbol, :input_image]
497
+
498
+ # The detail level of the image to be sent to the model. One of `high`, `low`,
499
+ # `auto`, or `original`. Defaults to `auto`.
500
+ #
501
+ # @see OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput::Output::Part::InputImage#detail
502
+ module Detail
503
+ extend OpenAI::Internal::Type::Enum
504
+
505
+ LOW = :low
506
+ HIGH = :high
507
+ AUTO = :auto
508
+ ORIGINAL = :original
509
+
510
+ # @!method self.values
511
+ # @return [Array<Symbol>]
512
+ end
513
+ end
186
514
 
187
- # @!method self.values
188
- # @return [Array<Symbol>]
515
+ # @!method self.variants
516
+ # @return [Array(OpenAI::Models::Live::DecisionInputText, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput::Output::Part::InputImage)]
517
+ end
518
+
519
+ # @!method self.variants
520
+ # @return [Array(String, Array<OpenAI::Models::Live::DecisionInputText, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput::Output::Part::InputImage>)]
521
+
522
+ # @type [OpenAI::Internal::Type::Converter]
523
+ PartsArray = OpenAI::Internal::Type::ArrayOf[
524
+ union: -> {
525
+ OpenAI::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput::Output::Part
526
+ }
527
+ ]
528
+ end
529
+
530
+ # @see OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput#status
531
+ module Status
532
+ extend OpenAI::Internal::Type::Enum
533
+
534
+ IN_PROGRESS = :in_progress
535
+ COMPLETED = :completed
536
+ INCOMPLETE = :incomplete
537
+
538
+ # @!method self.values
539
+ # @return [Array<Symbol>]
540
+ end
189
541
  end
542
+
543
+ # @!method self.variants
544
+ # @return [Array(OpenAI::Models::Live::DecisionUserMessage, OpenAI::Models::Live::DecisionDeveloperMessage, OpenAI::Models::Live::DecisionSystemMessage, OpenAI::Models::Live::DecisionAssistantMessage, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCall, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::FunctionCallOutput, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCall, OpenAI::Models::Live::DecisionItemCreateEvent::ItemUnion::CustomToolCallOutput)]
190
545
  end
546
+
547
+ require_relative "decision_user_message"
548
+
549
+ Item = ::OpenAI::Models::Live::DecisionUserMessage
191
550
  end
192
551
  end
193
552
  end