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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +20 -0
- data/README.md +1 -1
- data/lib/openai/models/beta/agent.rb +2 -2
- data/lib/openai/models/beta/agent_create_params.rb +2 -2
- data/lib/openai/models/beta/agent_session.rb +2 -2
- data/lib/openai/models/beta/agent_tool.rb +18 -1
- data/lib/openai/models/beta/agent_tool_param.rb +18 -1
- data/lib/openai/models/beta/agent_update_params.rb +2 -2
- data/lib/openai/models/beta/agents/session_create_params.rb +2 -2
- data/lib/openai/models/beta/beta_response_input_file.rb +23 -1
- data/lib/openai/models/beta/beta_response_input_file_content.rb +23 -1
- data/lib/openai/models/beta/beta_response_input_image.rb +23 -1
- data/lib/openai/models/beta/beta_response_input_image_content.rb +23 -1
- data/lib/openai/models/beta/beta_response_input_text.rb +23 -1
- data/lib/openai/models/beta/beta_response_input_text_content.rb +23 -1
- data/lib/openai/models/beta/beta_response_item.rb +28 -1
- data/lib/openai/models/beta/beta_response_output_item.rb +28 -1
- data/lib/openai/models/beta/beta_response_tool_search_output_item_param.rb +26 -15
- data/lib/openai/models/beta/beta_tool.rb +26 -15
- data/lib/openai/models/beta/persisted_agent_tool.rb +18 -1
- data/lib/openai/models/beta/persisted_agent_tool_param.rb +18 -1
- data/lib/openai/models/chat/chat_completion_content_part.rb +23 -1
- data/lib/openai/models/chat/chat_completion_content_part_image.rb +23 -1
- data/lib/openai/models/chat/chat_completion_content_part_input_audio.rb +23 -1
- data/lib/openai/models/chat/chat_completion_content_part_text.rb +23 -1
- data/lib/openai/models/conversations/computer_screenshot_content.rb +23 -1
- data/lib/openai/models/decision_create_params.rb +802 -28
- data/lib/openai/models/decision_input_json.rb +45 -0
- data/lib/openai/models/decision_input_message.rb +304 -48
- data/lib/openai/models/decision_input_part.rb +4 -1
- data/lib/openai/models/decision_question_input_image.rb +54 -0
- data/lib/openai/models/decision_question_input_part.rb +23 -0
- data/lib/openai/models/decision_question_input_text.rb +21 -0
- data/lib/openai/models/image_edit_params.rb +20 -4
- data/lib/openai/models/image_generate_params.rb +23 -7
- data/lib/openai/models/image_model.rb +2 -0
- data/lib/openai/models/live/client_delegation.rb +20 -1
- data/lib/openai/models/live/client_event.rb +4 -4
- data/lib/openai/models/live/commentary_append_event.rb +1 -1
- data/lib/openai/models/live/decision_assistant_message.rb +154 -0
- data/lib/openai/models/live/decision_choice_option.rb +35 -0
- data/lib/openai/models/live/decision_developer_message.rb +70 -0
- data/lib/openai/models/live/decision_input_text.rb +26 -0
- data/lib/openai/models/live/decision_item_create_event.rb +490 -131
- data/lib/openai/models/live/decision_item_created_event.rb +486 -131
- data/lib/openai/models/live/decision_json_object.rb +10 -0
- data/lib/openai/models/live/decision_question.rb +172 -0
- data/lib/openai/models/live/decision_stored_assistant_message.rb +152 -0
- data/lib/openai/models/live/decision_stored_developer_message.rb +68 -0
- data/lib/openai/models/live/decision_stored_system_message.rb +68 -0
- data/lib/openai/models/live/decision_stored_user_message.rb +195 -0
- data/lib/openai/models/live/decision_system_message.rb +70 -0
- data/lib/openai/models/live/decision_trigger.rb +6 -185
- data/lib/openai/models/live/decision_user_message.rb +193 -0
- data/lib/openai/models/live/decisions_delegation_config.rb +5 -177
- data/lib/openai/models/live/decisions_delegation_update_config.rb +5 -184
- data/lib/openai/models/live/fork_client_event.rb +4 -4
- data/lib/openai/models/live/fork_server_event.rb +2 -2
- data/lib/openai/models/live/fork_session_config.rb +20 -1
- data/lib/openai/models/live/input_audio_muted_event.rb +3 -2
- data/lib/openai/models/live/input_audio_unmute_event.rb +2 -1
- data/lib/openai/models/live/input_audio_unmuted_event.rb +3 -2
- data/lib/openai/models/live/instructions_append_event.rb +5 -2
- data/lib/openai/models/live/media_session_config.rb +39 -2
- data/lib/openai/models/live/media_session_fork_config.rb +20 -1
- data/lib/openai/models/live/server_event.rb +2 -2
- data/lib/openai/models/live/session_accept_params.rb +39 -2
- data/lib/openai/models/live/session_config.rb +39 -2
- data/lib/openai/models/live/session_resource.rb +39 -2
- data/lib/openai/models/live/session_update_config.rb +41 -2
- data/lib/openai/models/live/sideband_client_event.rb +4 -4
- data/lib/openai/models/live/sideband_server_event.rb +2 -2
- data/lib/openai/models/live/thinking_append_event.rb +1 -1
- data/lib/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rb +10 -12
- data/lib/openai/models/realtime/realtime_error_event.rb +1 -1
- data/lib/openai/models/realtime/realtime_server_event.rb +1 -1
- data/lib/openai/models/realtime/realtime_translation_server_event.rb +1 -1
- data/lib/openai/models/responses/response_input_file.rb +23 -1
- data/lib/openai/models/responses/response_input_file_content.rb +23 -1
- data/lib/openai/models/responses/response_input_image.rb +23 -1
- data/lib/openai/models/responses/response_input_image_content.rb +23 -1
- data/lib/openai/models/responses/response_input_text.rb +23 -1
- data/lib/openai/models/responses/response_input_text_content.rb +23 -1
- data/lib/openai/models/responses/response_tool_search_output_item_param.rb +26 -15
- data/lib/openai/models/responses/tool.rb +26 -15
- data/lib/openai/models.rb +8 -0
- data/lib/openai/resources/beta/agents.rb +2 -2
- data/lib/openai/resources/beta/responses.rb +2 -2
- data/lib/openai/resources/decisions.rb +5 -6
- data/lib/openai/resources/images.rb +18 -6
- data/lib/openai/resources/live/forks.rb +2 -2
- data/lib/openai/resources/live/sideband.rb +2 -2
- data/lib/openai/resources/live.rb +2 -2
- data/lib/openai/resources/realtime/translations.rb +2 -2
- data/lib/openai/resources/realtime.rb +2 -2
- data/lib/openai/resources/responses.rb +2 -2
- data/lib/openai/version.rb +1 -1
- data/lib/openai.rb +16 -0
- data/rbi/openai/models/beta/agent.rbi +2 -1
- data/rbi/openai/models/beta/agent_create_params.rbi +6 -3
- data/rbi/openai/models/beta/agent_session.rbi +2 -1
- data/rbi/openai/models/beta/agent_tool.rbi +40 -1
- data/rbi/openai/models/beta/agent_tool_param.rbi +40 -1
- data/rbi/openai/models/beta/agent_update_params.rbi +6 -3
- data/rbi/openai/models/beta/agents/session_create_params.rbi +6 -3
- data/rbi/openai/models/beta/beta_response_input_file.rbi +31 -1
- data/rbi/openai/models/beta/beta_response_input_file_content.rbi +39 -1
- data/rbi/openai/models/beta/beta_response_input_image.rbi +31 -1
- data/rbi/openai/models/beta/beta_response_input_image_content.rbi +39 -1
- data/rbi/openai/models/beta/beta_response_input_text.rbi +31 -1
- data/rbi/openai/models/beta/beta_response_input_text_content.rbi +39 -1
- data/rbi/openai/models/beta/beta_response_item.rbi +58 -1
- data/rbi/openai/models/beta/beta_response_output_item.rbi +58 -1
- data/rbi/openai/models/beta/beta_response_tool_search_output_item_param.rbi +24 -15
- data/rbi/openai/models/beta/beta_tool.rbi +24 -15
- data/rbi/openai/models/beta/persisted_agent_tool.rbi +40 -1
- data/rbi/openai/models/beta/persisted_agent_tool_param.rbi +40 -1
- data/rbi/openai/models/chat/chat_completion_content_part.rbi +43 -1
- data/rbi/openai/models/chat/chat_completion_content_part_image.rbi +41 -1
- data/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi +46 -1
- data/rbi/openai/models/chat/chat_completion_content_part_text.rbi +39 -1
- data/rbi/openai/models/conversations/computer_screenshot_content.rbi +48 -1
- data/rbi/openai/models/decision_create_params.rbi +1273 -26
- data/rbi/openai/models/decision_input_json.rbi +75 -0
- data/rbi/openai/models/decision_input_message.rbi +455 -52
- data/rbi/openai/models/decision_input_part.rbi +2 -1
- data/rbi/openai/models/decision_question_input_image.rbi +82 -0
- data/rbi/openai/models/decision_question_input_part.rbi +25 -0
- data/rbi/openai/models/decision_question_input_text.rbi +49 -0
- data/rbi/openai/models/image_edit_params.rbi +12 -3
- data/rbi/openai/models/image_generate_params.rbi +15 -6
- data/rbi/openai/models/live/client_delegation.rbi +23 -1
- data/rbi/openai/models/live/commentary_append_event.rbi +1 -1
- data/rbi/openai/models/live/decision_assistant_message.rbi +247 -0
- data/rbi/openai/models/live/decision_choice_option.rbi +67 -0
- data/rbi/openai/models/live/decision_developer_message.rbi +109 -0
- data/rbi/openai/models/live/decision_input_text.rbi +55 -0
- data/rbi/openai/models/live/decision_item_create_event.rbi +765 -184
- data/rbi/openai/models/live/decision_item_created_event.rbi +737 -184
- data/rbi/openai/models/live/decision_json_object.rbi +16 -0
- data/rbi/openai/models/live/decision_question.rbi +300 -0
- data/rbi/openai/models/live/decision_stored_assistant_message.rbi +245 -0
- data/rbi/openai/models/live/decision_stored_developer_message.rbi +107 -0
- data/rbi/openai/models/live/decision_stored_system_message.rbi +107 -0
- data/rbi/openai/models/live/decision_stored_user_message.rbi +333 -0
- data/rbi/openai/models/live/decision_system_message.rbi +109 -0
- data/rbi/openai/models/live/decision_trigger.rbi +11 -320
- data/rbi/openai/models/live/decision_user_message.rbi +320 -0
- data/rbi/openai/models/live/decisions_delegation_config.rbi +10 -321
- data/rbi/openai/models/live/decisions_delegation_update_config.rbi +13 -324
- data/rbi/openai/models/live/fork_session_config.rbi +27 -1
- data/rbi/openai/models/live/input_audio_muted_event.rbi +3 -2
- data/rbi/openai/models/live/input_audio_unmute_event.rbi +2 -1
- data/rbi/openai/models/live/input_audio_unmuted_event.rbi +3 -2
- data/rbi/openai/models/live/instructions_append_event.rbi +5 -2
- data/rbi/openai/models/live/media_session_config.rbi +44 -2
- data/rbi/openai/models/live/media_session_fork_config.rbi +27 -1
- data/rbi/openai/models/live/session_accept_params.rbi +44 -2
- data/rbi/openai/models/live/session_config.rbi +44 -2
- data/rbi/openai/models/live/session_resource.rbi +44 -2
- data/rbi/openai/models/live/session_update_config.rbi +54 -2
- data/rbi/openai/models/live/thinking_append_event.rbi +1 -1
- data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rbi +10 -12
- data/rbi/openai/models/realtime/realtime_error_event.rbi +1 -1
- data/rbi/openai/models/responses/response_input_file.rbi +31 -1
- data/rbi/openai/models/responses/response_input_file_content.rbi +39 -1
- data/rbi/openai/models/responses/response_input_image.rbi +33 -1
- data/rbi/openai/models/responses/response_input_image_content.rbi +41 -1
- data/rbi/openai/models/responses/response_input_text.rbi +31 -1
- data/rbi/openai/models/responses/response_input_text_content.rbi +39 -1
- data/rbi/openai/models/responses/response_tool_search_output_item_param.rbi +24 -15
- data/rbi/openai/models/responses/tool.rbi +24 -15
- data/rbi/openai/models.rbi +8 -0
- data/rbi/openai/resources/beta/agents.rbi +4 -2
- data/rbi/openai/resources/beta/responses.rbi +8 -1
- data/rbi/openai/resources/decisions.rbi +4 -5
- data/rbi/openai/resources/images.rbi +18 -6
- data/rbi/openai/resources/live/forks.rbi +8 -1
- data/rbi/openai/resources/live/sideband.rbi +8 -1
- data/rbi/openai/resources/live.rbi +8 -1
- data/rbi/openai/resources/realtime/translations.rbi +8 -1
- data/rbi/openai/resources/realtime.rbi +8 -1
- data/rbi/openai/resources/responses.rbi +8 -1
- data/sig/openai/models/beta/agent_tool.rbs +14 -0
- data/sig/openai/models/beta/agent_tool_param.rbs +14 -0
- data/sig/openai/models/beta/beta_response_input_file.rbs +34 -3
- data/sig/openai/models/beta/beta_response_input_file_content.rbs +34 -3
- data/sig/openai/models/beta/beta_response_input_image.rbs +34 -3
- data/sig/openai/models/beta/beta_response_input_image_content.rbs +34 -3
- data/sig/openai/models/beta/beta_response_input_text.rbs +34 -3
- data/sig/openai/models/beta/beta_response_input_text_content.rbs +34 -3
- data/sig/openai/models/beta/beta_response_item.rbs +34 -3
- data/sig/openai/models/beta/beta_response_output_item.rbs +34 -3
- data/sig/openai/models/beta/beta_response_tool_search_output_item_param.rbs +24 -15
- data/sig/openai/models/beta/beta_tool.rbs +24 -15
- data/sig/openai/models/beta/persisted_agent_tool.rbs +14 -0
- data/sig/openai/models/beta/persisted_agent_tool_param.rbs +14 -0
- data/sig/openai/models/chat/chat_completion_content_part.rbs +34 -3
- data/sig/openai/models/chat/chat_completion_content_part_image.rbs +34 -3
- data/sig/openai/models/chat/chat_completion_content_part_input_audio.rbs +34 -3
- data/sig/openai/models/chat/chat_completion_content_part_text.rbs +34 -3
- data/sig/openai/models/conversations/computer_screenshot_content.rbs +34 -3
- data/sig/openai/models/decision_create_params.rbs +610 -24
- data/sig/openai/models/decision_input_json.rbs +34 -0
- data/sig/openai/models/decision_input_message.rbs +264 -35
- data/sig/openai/models/decision_input_part.rbs +3 -1
- data/sig/openai/models/decision_question_input_image.rbs +51 -0
- data/sig/openai/models/decision_question_input_part.rbs +14 -0
- data/sig/openai/models/decision_question_input_text.rbs +15 -0
- data/sig/openai/models/image_edit_params.rbs +8 -2
- data/sig/openai/models/image_generate_params.rbs +10 -4
- data/sig/openai/models/live/client_delegation.rbs +30 -3
- data/sig/openai/models/live/decision_assistant_message.rbs +134 -0
- data/sig/openai/models/live/decision_choice_option.rbs +37 -0
- data/sig/openai/models/live/decision_developer_message.rbs +67 -0
- data/sig/openai/models/live/decision_input_text.rbs +20 -0
- data/sig/openai/models/live/decision_item_create_event.rbs +413 -131
- data/sig/openai/models/live/decision_item_created_event.rbs +401 -131
- data/sig/openai/models/live/decision_json_object.rbs +9 -0
- data/sig/openai/models/live/decision_question.rbs +164 -0
- data/sig/openai/models/live/decision_stored_assistant_message.rbs +131 -0
- data/sig/openai/models/live/decision_stored_developer_message.rbs +64 -0
- data/sig/openai/models/live/decision_stored_system_message.rbs +64 -0
- data/sig/openai/models/live/decision_stored_user_message.rbs +177 -0
- data/sig/openai/models/live/decision_system_message.rbs +67 -0
- data/sig/openai/models/live/decision_trigger.rbs +8 -171
- data/sig/openai/models/live/decision_user_message.rbs +180 -0
- data/sig/openai/models/live/decisions_delegation_config.rbs +6 -167
- data/sig/openai/models/live/decisions_delegation_update_config.rbs +8 -169
- data/sig/openai/models/live/fork_session_config.rbs +26 -0
- data/sig/openai/models/live/media_session_config.rbs +53 -4
- data/sig/openai/models/live/media_session_fork_config.rbs +26 -0
- data/sig/openai/models/live/session_accept_params.rbs +53 -4
- data/sig/openai/models/live/session_config.rbs +53 -4
- data/sig/openai/models/live/session_resource.rbs +53 -4
- data/sig/openai/models/live/session_update_config.rbs +52 -0
- data/sig/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rbs +10 -12
- data/sig/openai/models/responses/response_input_file.rbs +34 -3
- data/sig/openai/models/responses/response_input_file_content.rbs +34 -3
- data/sig/openai/models/responses/response_input_image.rbs +34 -3
- data/sig/openai/models/responses/response_input_image_content.rbs +34 -3
- data/sig/openai/models/responses/response_input_text.rbs +34 -3
- data/sig/openai/models/responses/response_input_text_content.rbs +34 -3
- data/sig/openai/models/responses/response_tool_search_output_item_param.rbs +24 -15
- data/sig/openai/models/responses/tool.rbs +24 -15
- data/sig/openai/models.rbs +9 -1
- data/sig/openai/resources/beta/responses.rbs +2 -1
- data/sig/openai/resources/live/forks.rbs +2 -1
- data/sig/openai/resources/live/sideband.rbs +2 -1
- data/sig/openai/resources/live.rbs +2 -1
- data/sig/openai/resources/realtime/translations.rbs +2 -1
- data/sig/openai/resources/realtime.rbs +2 -1
- data/sig/openai/resources/responses.rbs +2 -1
- metadata +49 -1
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
class DecisionQuestionInputImage < OpenAI::Internal::Type::BaseModel
|
|
7
|
+
|
|
8
|
+
OrHash = T.type_alias do
|
|
9
|
+
T.any(
|
|
10
|
+
OpenAI::DecisionQuestionInputImage,
|
|
11
|
+
OpenAI::Internal::AnyHash
|
|
12
|
+
)
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
# A base64-encoded image in a data URL or a publicly accessible HTTP(S) image URL.
|
|
16
|
+
sig { returns(String) }
|
|
17
|
+
attr_accessor :image_url
|
|
18
|
+
|
|
19
|
+
sig { returns(Symbol) }
|
|
20
|
+
attr_accessor :type
|
|
21
|
+
|
|
22
|
+
# The image detail level, using the selected model's image profile. Defaults to
|
|
23
|
+
# auto.
|
|
24
|
+
sig { returns(T.nilable(OpenAI::DecisionQuestionInputImage::Detail::OrSymbol)) }
|
|
25
|
+
attr_accessor :detail
|
|
26
|
+
|
|
27
|
+
# An image provided as a base64 data URL or a publicly accessible HTTP(S) URL.
|
|
28
|
+
# File IDs are not supported.
|
|
29
|
+
sig do
|
|
30
|
+
params(
|
|
31
|
+
|
|
32
|
+
image_url: String,
|
|
33
|
+
|
|
34
|
+
detail: T.nilable(OpenAI::DecisionQuestionInputImage::Detail::OrSymbol),
|
|
35
|
+
|
|
36
|
+
type: Symbol
|
|
37
|
+
)
|
|
38
|
+
.returns(T.attached_class)
|
|
39
|
+
end
|
|
40
|
+
def self.new(
|
|
41
|
+
|
|
42
|
+
# A base64-encoded image in a data URL or a publicly accessible HTTP(S) image URL.
|
|
43
|
+
image_url:,
|
|
44
|
+
|
|
45
|
+
# The image detail level, using the selected model's image profile. Defaults to
|
|
46
|
+
# auto.
|
|
47
|
+
detail: nil,
|
|
48
|
+
|
|
49
|
+
type: :input_image
|
|
50
|
+
)
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
sig do
|
|
54
|
+
override.returns(
|
|
55
|
+
{image_url: String, type: Symbol, detail: T.nilable(OpenAI::DecisionQuestionInputImage::Detail::OrSymbol)}
|
|
56
|
+
)
|
|
57
|
+
end
|
|
58
|
+
def to_hash
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
# The image detail level, using the selected model's image profile. Defaults to
|
|
62
|
+
# auto.
|
|
63
|
+
module Detail
|
|
64
|
+
extend OpenAI::Internal::Type::Enum
|
|
65
|
+
|
|
66
|
+
TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::DecisionQuestionInputImage::Detail) }
|
|
67
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
68
|
+
|
|
69
|
+
LOW = T.let(:low, OpenAI::DecisionQuestionInputImage::Detail::TaggedSymbol)
|
|
70
|
+
HIGH = T.let(:high, OpenAI::DecisionQuestionInputImage::Detail::TaggedSymbol)
|
|
71
|
+
AUTO = T.let(:auto, OpenAI::DecisionQuestionInputImage::Detail::TaggedSymbol)
|
|
72
|
+
ORIGINAL = T.let(:original, OpenAI::DecisionQuestionInputImage::Detail::TaggedSymbol)
|
|
73
|
+
|
|
74
|
+
sig { override.returns(T::Array[OpenAI::DecisionQuestionInputImage::Detail::TaggedSymbol]) }
|
|
75
|
+
def self.values
|
|
76
|
+
end
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
end
|
|
82
|
+
end
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
# A text, image, or JSON content part in a question instruction.
|
|
7
|
+
module DecisionQuestionInputPart
|
|
8
|
+
extend OpenAI::Internal::Type::Union
|
|
9
|
+
|
|
10
|
+
Variants = T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
OpenAI::DecisionQuestionInputText,
|
|
13
|
+
OpenAI::DecisionQuestionInputImage,
|
|
14
|
+
OpenAI::DecisionInputJSON
|
|
15
|
+
)
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
sig { override.returns(T::Array[OpenAI::DecisionQuestionInputPart::Variants]) }
|
|
19
|
+
def self.variants
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
end
|
|
25
|
+
end
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
class DecisionQuestionInputText < OpenAI::Internal::Type::BaseModel
|
|
7
|
+
|
|
8
|
+
OrHash = T.type_alias do
|
|
9
|
+
T.any(
|
|
10
|
+
OpenAI::DecisionQuestionInputText,
|
|
11
|
+
OpenAI::Internal::AnyHash
|
|
12
|
+
)
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
sig { returns(String) }
|
|
16
|
+
attr_accessor :text
|
|
17
|
+
|
|
18
|
+
sig { returns(Symbol) }
|
|
19
|
+
attr_accessor :type
|
|
20
|
+
|
|
21
|
+
sig do
|
|
22
|
+
params(
|
|
23
|
+
|
|
24
|
+
text: String,
|
|
25
|
+
|
|
26
|
+
type: Symbol
|
|
27
|
+
)
|
|
28
|
+
.returns(T.attached_class)
|
|
29
|
+
end
|
|
30
|
+
def self.new(
|
|
31
|
+
|
|
32
|
+
text:,
|
|
33
|
+
|
|
34
|
+
type: :input_text
|
|
35
|
+
)
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
sig do
|
|
39
|
+
override.returns(
|
|
40
|
+
{text: String, type: Symbol}
|
|
41
|
+
)
|
|
42
|
+
end
|
|
43
|
+
def to_hash
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
end
|
|
49
|
+
end
|
|
@@ -68,11 +68,14 @@ module OpenAI
|
|
|
68
68
|
sig { params(mask: OpenAI::Internal::FileInput).void }
|
|
69
69
|
attr_writer :mask
|
|
70
70
|
|
|
71
|
-
# The GPT image model to use for image editing (`gpt-image-1
|
|
71
|
+
# The GPT image model to use for image editing (`gpt-image-1-mini`,
|
|
72
72
|
# `gpt-image-1.5`, `gpt-image-2`, `gpt-image-2-2026-04-21`,
|
|
73
73
|
# `gpt-image-2.5-sunburst`, `gpt-image-2.5-sunburst-2026-09-08`,
|
|
74
74
|
# `gpt-image-2.5-flare`, `gpt-image-2.5-flare-2026-09-08`, or
|
|
75
75
|
# `chatgpt-image-latest`).
|
|
76
|
+
#
|
|
77
|
+
# `gpt-image-1` was shut down on October 23, 2026. Use `gpt-image-2.5-sunburst` or
|
|
78
|
+
# `gpt-image-2.5-flare` instead.
|
|
76
79
|
sig { returns(T.nilable(T.any(String, OpenAI::ImageModel::OrSymbol))) }
|
|
77
80
|
attr_accessor :model
|
|
78
81
|
|
|
@@ -230,11 +233,14 @@ module OpenAI
|
|
|
230
233
|
# content type.
|
|
231
234
|
mask: nil,
|
|
232
235
|
|
|
233
|
-
# The GPT image model to use for image editing (`gpt-image-1
|
|
236
|
+
# The GPT image model to use for image editing (`gpt-image-1-mini`,
|
|
234
237
|
# `gpt-image-1.5`, `gpt-image-2`, `gpt-image-2-2026-04-21`,
|
|
235
238
|
# `gpt-image-2.5-sunburst`, `gpt-image-2.5-sunburst-2026-09-08`,
|
|
236
239
|
# `gpt-image-2.5-flare`, `gpt-image-2.5-flare-2026-09-08`, or
|
|
237
240
|
# `chatgpt-image-latest`).
|
|
241
|
+
#
|
|
242
|
+
# `gpt-image-1` was shut down on October 23, 2026. Use `gpt-image-2.5-sunburst` or
|
|
243
|
+
# `gpt-image-2.5-flare` instead.
|
|
238
244
|
model: nil,
|
|
239
245
|
|
|
240
246
|
# The number of images to generate. Must be between 1 and 10.
|
|
@@ -390,11 +396,14 @@ module OpenAI
|
|
|
390
396
|
end
|
|
391
397
|
end
|
|
392
398
|
|
|
393
|
-
# The GPT image model to use for image editing (`gpt-image-1
|
|
399
|
+
# The GPT image model to use for image editing (`gpt-image-1-mini`,
|
|
394
400
|
# `gpt-image-1.5`, `gpt-image-2`, `gpt-image-2-2026-04-21`,
|
|
395
401
|
# `gpt-image-2.5-sunburst`, `gpt-image-2.5-sunburst-2026-09-08`,
|
|
396
402
|
# `gpt-image-2.5-flare`, `gpt-image-2.5-flare-2026-09-08`, or
|
|
397
403
|
# `chatgpt-image-latest`).
|
|
404
|
+
#
|
|
405
|
+
# `gpt-image-1` was shut down on October 23, 2026. Use `gpt-image-2.5-sunburst` or
|
|
406
|
+
# `gpt-image-2.5-flare` instead.
|
|
398
407
|
module Model
|
|
399
408
|
extend OpenAI::Internal::Type::Union
|
|
400
409
|
|
|
@@ -33,10 +33,13 @@ module OpenAI
|
|
|
33
33
|
attr_accessor :background
|
|
34
34
|
|
|
35
35
|
# The GPT image model to use for image generation. Specify a model explicitly.
|
|
36
|
-
# Supported models include `gpt-image-1`, `gpt-image-1
|
|
37
|
-
# `gpt-image-2
|
|
36
|
+
# Supported models include `gpt-image-1-mini`, `gpt-image-1.5`, `gpt-image-2`,
|
|
37
|
+
# `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`,
|
|
38
38
|
# `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`,
|
|
39
39
|
# `gpt-image-2.5-flare-2026-09-08`, and `chatgpt-image-latest`.
|
|
40
|
+
#
|
|
41
|
+
# `gpt-image-1` was shut down on October 23, 2026. Use `gpt-image-2.5-sunburst` or
|
|
42
|
+
# `gpt-image-2.5-flare` instead.
|
|
40
43
|
sig { returns(T.nilable(T.any(String, OpenAI::ImageModel::OrSymbol))) }
|
|
41
44
|
attr_accessor :model
|
|
42
45
|
|
|
@@ -175,10 +178,13 @@ module OpenAI
|
|
|
175
178
|
background: nil,
|
|
176
179
|
|
|
177
180
|
# The GPT image model to use for image generation. Specify a model explicitly.
|
|
178
|
-
# Supported models include `gpt-image-1`, `gpt-image-1
|
|
179
|
-
# `gpt-image-2
|
|
181
|
+
# Supported models include `gpt-image-1-mini`, `gpt-image-1.5`, `gpt-image-2`,
|
|
182
|
+
# `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`,
|
|
180
183
|
# `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`,
|
|
181
184
|
# `gpt-image-2.5-flare-2026-09-08`, and `chatgpt-image-latest`.
|
|
185
|
+
#
|
|
186
|
+
# `gpt-image-1` was shut down on October 23, 2026. Use `gpt-image-2.5-sunburst` or
|
|
187
|
+
# `gpt-image-2.5-flare` instead.
|
|
182
188
|
model: nil,
|
|
183
189
|
|
|
184
190
|
# Control the content-moderation level for images generated by the GPT image
|
|
@@ -302,10 +308,13 @@ module OpenAI
|
|
|
302
308
|
end
|
|
303
309
|
|
|
304
310
|
# The GPT image model to use for image generation. Specify a model explicitly.
|
|
305
|
-
# Supported models include `gpt-image-1`, `gpt-image-1
|
|
306
|
-
# `gpt-image-2
|
|
311
|
+
# Supported models include `gpt-image-1-mini`, `gpt-image-1.5`, `gpt-image-2`,
|
|
312
|
+
# `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`,
|
|
307
313
|
# `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`,
|
|
308
314
|
# `gpt-image-2.5-flare-2026-09-08`, and `chatgpt-image-latest`.
|
|
315
|
+
#
|
|
316
|
+
# `gpt-image-1` was shut down on October 23, 2026. Use `gpt-image-2.5-sunburst` or
|
|
317
|
+
# `gpt-image-2.5-flare` instead.
|
|
309
318
|
module Model
|
|
310
319
|
extend OpenAI::Internal::Type::Union
|
|
311
320
|
|
|
@@ -18,17 +18,39 @@ module OpenAI
|
|
|
18
18
|
sig { returns(Symbol) }
|
|
19
19
|
attr_accessor :type
|
|
20
20
|
|
|
21
|
+
# Milliseconds to wait before requesting an automatic spoken acknowledgement for a
|
|
22
|
+
# delegation. The model may still speak before this delay. Any commentary or
|
|
23
|
+
# thinking appended to the session cancels all pending acknowledgements, including
|
|
24
|
+
# those for other delegations. Defaults to 400 for Decisions sessions and 0
|
|
25
|
+
# (request immediately) for other sessions. Omission in a session update preserves
|
|
26
|
+
# the current value. Updates apply to subsequent delegations.
|
|
27
|
+
sig { returns(T.nilable(Integer)) }
|
|
28
|
+
attr_reader :acknowledgement_delay_ms
|
|
29
|
+
|
|
30
|
+
sig { params(acknowledgement_delay_ms: Integer).void }
|
|
31
|
+
attr_writer :acknowledgement_delay_ms
|
|
32
|
+
|
|
21
33
|
# Delegate tasks to your application. The Live session emits delegation events
|
|
22
34
|
# that your backend handles.
|
|
23
35
|
sig do
|
|
24
36
|
params(
|
|
25
37
|
|
|
38
|
+
acknowledgement_delay_ms: Integer,
|
|
39
|
+
|
|
26
40
|
type: Symbol
|
|
27
41
|
)
|
|
28
42
|
.returns(T.attached_class)
|
|
29
43
|
end
|
|
30
44
|
def self.new(
|
|
31
45
|
|
|
46
|
+
# Milliseconds to wait before requesting an automatic spoken acknowledgement for a
|
|
47
|
+
# delegation. The model may still speak before this delay. Any commentary or
|
|
48
|
+
# thinking appended to the session cancels all pending acknowledgements, including
|
|
49
|
+
# those for other delegations. Defaults to 400 for Decisions sessions and 0
|
|
50
|
+
# (request immediately) for other sessions. Omission in a session update preserves
|
|
51
|
+
# the current value. Updates apply to subsequent delegations.
|
|
52
|
+
acknowledgement_delay_ms: nil,
|
|
53
|
+
|
|
32
54
|
# The delegation owner. Always `client` for tasks handled by your application.
|
|
33
55
|
|
|
34
56
|
type: :client
|
|
@@ -37,7 +59,7 @@ module OpenAI
|
|
|
37
59
|
|
|
38
60
|
sig do
|
|
39
61
|
override.returns(
|
|
40
|
-
{type: Symbol}
|
|
62
|
+
{type: Symbol, acknowledgement_delay_ms: Integer}
|
|
41
63
|
)
|
|
42
64
|
end
|
|
43
65
|
def to_hash
|
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Live
|
|
7
|
+
|
|
8
|
+
class DecisionAssistantMessage < OpenAI::Internal::Type::BaseModel
|
|
9
|
+
|
|
10
|
+
OrHash = T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
OpenAI::Live::DecisionAssistantMessage,
|
|
13
|
+
OpenAI::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# The text input to the model.
|
|
18
|
+
sig { returns(OpenAI::Live::DecisionAssistantMessage::Content::Variants) }
|
|
19
|
+
attr_accessor :content
|
|
20
|
+
|
|
21
|
+
sig { returns(Symbol) }
|
|
22
|
+
attr_accessor :role
|
|
23
|
+
|
|
24
|
+
# The unique ID of this message item.
|
|
25
|
+
sig { returns(T.nilable(String)) }
|
|
26
|
+
attr_accessor :id
|
|
27
|
+
|
|
28
|
+
# Labels an `assistant` message as intermediate commentary (`commentary`) or the
|
|
29
|
+
# final answer (`final_answer`). For models like `gpt-5.3-codex` and beyond, when
|
|
30
|
+
# sending follow-up requests, preserve and resend phase on all assistant messages
|
|
31
|
+
# — dropping it can degrade performance. Not used for user messages.
|
|
32
|
+
sig { returns(T.nilable(OpenAI::Live::DecisionAssistantMessage::Phase::OrSymbol)) }
|
|
33
|
+
attr_accessor :phase
|
|
34
|
+
|
|
35
|
+
sig { returns(T.nilable(OpenAI::Live::DecisionAssistantMessage::Type::OrSymbol)) }
|
|
36
|
+
attr_reader :type
|
|
37
|
+
|
|
38
|
+
sig { params(type: OpenAI::Live::DecisionAssistantMessage::Type::OrSymbol).void }
|
|
39
|
+
attr_writer :type
|
|
40
|
+
|
|
41
|
+
sig do
|
|
42
|
+
params(
|
|
43
|
+
|
|
44
|
+
content: OpenAI::Live::DecisionAssistantMessage::Content::Variants,
|
|
45
|
+
|
|
46
|
+
id: T.nilable(String),
|
|
47
|
+
|
|
48
|
+
phase: T.nilable(OpenAI::Live::DecisionAssistantMessage::Phase::OrSymbol),
|
|
49
|
+
|
|
50
|
+
type: OpenAI::Live::DecisionAssistantMessage::Type::OrSymbol,
|
|
51
|
+
|
|
52
|
+
role: Symbol
|
|
53
|
+
)
|
|
54
|
+
.returns(T.attached_class)
|
|
55
|
+
end
|
|
56
|
+
def self.new(
|
|
57
|
+
|
|
58
|
+
# The text input to the model.
|
|
59
|
+
content:,
|
|
60
|
+
|
|
61
|
+
# The unique ID of this message item.
|
|
62
|
+
id: nil,
|
|
63
|
+
|
|
64
|
+
# Labels an `assistant` message as intermediate commentary (`commentary`) or the
|
|
65
|
+
# final answer (`final_answer`). For models like `gpt-5.3-codex` and beyond, when
|
|
66
|
+
# sending follow-up requests, preserve and resend phase on all assistant messages
|
|
67
|
+
# — dropping it can degrade performance. Not used for user messages.
|
|
68
|
+
phase: nil,
|
|
69
|
+
|
|
70
|
+
type: nil,
|
|
71
|
+
|
|
72
|
+
role: :assistant
|
|
73
|
+
)
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
sig do
|
|
77
|
+
override.returns(
|
|
78
|
+
{
|
|
79
|
+
content: OpenAI::Live::DecisionAssistantMessage::Content::Variants,
|
|
80
|
+
role: Symbol,
|
|
81
|
+
id: T.nilable(String),
|
|
82
|
+
phase: T.nilable(OpenAI::Live::DecisionAssistantMessage::Phase::OrSymbol),
|
|
83
|
+
type: OpenAI::Live::DecisionAssistantMessage::Type::OrSymbol
|
|
84
|
+
}
|
|
85
|
+
)
|
|
86
|
+
end
|
|
87
|
+
def to_hash
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
# The text input to the model.
|
|
91
|
+
module Content
|
|
92
|
+
extend OpenAI::Internal::Type::Union
|
|
93
|
+
|
|
94
|
+
Variants = T.type_alias {
|
|
95
|
+
T.any(String, T::Array[OpenAI::Live::DecisionAssistantMessage::Content::Part::Variants])
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
module Part
|
|
99
|
+
extend OpenAI::Internal::Type::Union
|
|
100
|
+
|
|
101
|
+
Variants = T.type_alias {
|
|
102
|
+
T.any(
|
|
103
|
+
OpenAI::Live::DecisionAssistantMessage::Content::Part::OutputText,
|
|
104
|
+
OpenAI::Live::DecisionAssistantMessage::Content::Part::Refusal
|
|
105
|
+
)
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
class OutputText < OpenAI::Internal::Type::BaseModel
|
|
109
|
+
OrHash = T.type_alias do
|
|
110
|
+
T.any(
|
|
111
|
+
OpenAI::Live::DecisionAssistantMessage::Content::Part::OutputText,
|
|
112
|
+
OpenAI::Internal::AnyHash
|
|
113
|
+
)
|
|
114
|
+
end
|
|
115
|
+
|
|
116
|
+
# The text content.
|
|
117
|
+
sig { returns(String) }
|
|
118
|
+
attr_accessor :text
|
|
119
|
+
|
|
120
|
+
sig { returns(Symbol) }
|
|
121
|
+
attr_accessor :type
|
|
122
|
+
|
|
123
|
+
sig do
|
|
124
|
+
params(
|
|
125
|
+
|
|
126
|
+
text: String,
|
|
127
|
+
|
|
128
|
+
type: Symbol
|
|
129
|
+
)
|
|
130
|
+
.returns(T.attached_class)
|
|
131
|
+
end
|
|
132
|
+
def self.new(
|
|
133
|
+
|
|
134
|
+
# The text content.
|
|
135
|
+
text:,
|
|
136
|
+
|
|
137
|
+
type: :output_text
|
|
138
|
+
)
|
|
139
|
+
end
|
|
140
|
+
|
|
141
|
+
sig do
|
|
142
|
+
override.returns(
|
|
143
|
+
{text: String, type: Symbol}
|
|
144
|
+
)
|
|
145
|
+
end
|
|
146
|
+
def to_hash
|
|
147
|
+
end
|
|
148
|
+
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
class Refusal < OpenAI::Internal::Type::BaseModel
|
|
152
|
+
OrHash = T.type_alias do
|
|
153
|
+
T.any(
|
|
154
|
+
OpenAI::Live::DecisionAssistantMessage::Content::Part::Refusal,
|
|
155
|
+
OpenAI::Internal::AnyHash
|
|
156
|
+
)
|
|
157
|
+
end
|
|
158
|
+
|
|
159
|
+
# The refusal text.
|
|
160
|
+
sig { returns(String) }
|
|
161
|
+
attr_accessor :refusal
|
|
162
|
+
|
|
163
|
+
sig { returns(Symbol) }
|
|
164
|
+
attr_accessor :type
|
|
165
|
+
|
|
166
|
+
sig do
|
|
167
|
+
params(
|
|
168
|
+
|
|
169
|
+
refusal: String,
|
|
170
|
+
|
|
171
|
+
type: Symbol
|
|
172
|
+
)
|
|
173
|
+
.returns(T.attached_class)
|
|
174
|
+
end
|
|
175
|
+
def self.new(
|
|
176
|
+
|
|
177
|
+
# The refusal text.
|
|
178
|
+
refusal:,
|
|
179
|
+
|
|
180
|
+
type: :refusal
|
|
181
|
+
)
|
|
182
|
+
end
|
|
183
|
+
|
|
184
|
+
sig do
|
|
185
|
+
override.returns(
|
|
186
|
+
{refusal: String, type: Symbol}
|
|
187
|
+
)
|
|
188
|
+
end
|
|
189
|
+
def to_hash
|
|
190
|
+
end
|
|
191
|
+
|
|
192
|
+
end
|
|
193
|
+
|
|
194
|
+
sig { override.returns(T::Array[OpenAI::Live::DecisionAssistantMessage::Content::Part::Variants]) }
|
|
195
|
+
def self.variants
|
|
196
|
+
end
|
|
197
|
+
|
|
198
|
+
end
|
|
199
|
+
|
|
200
|
+
sig { override.returns(T::Array[OpenAI::Live::DecisionAssistantMessage::Content::Variants]) }
|
|
201
|
+
def self.variants
|
|
202
|
+
end
|
|
203
|
+
|
|
204
|
+
PartsArray = T.let(
|
|
205
|
+
OpenAI::Internal::Type::ArrayOf[union: OpenAI::Live::DecisionAssistantMessage::Content::Part],
|
|
206
|
+
OpenAI::Internal::Type::Converter
|
|
207
|
+
)
|
|
208
|
+
|
|
209
|
+
end
|
|
210
|
+
|
|
211
|
+
# Labels an `assistant` message as intermediate commentary (`commentary`) or the
|
|
212
|
+
# final answer (`final_answer`). For models like `gpt-5.3-codex` and beyond, when
|
|
213
|
+
# sending follow-up requests, preserve and resend phase on all assistant messages
|
|
214
|
+
# — dropping it can degrade performance. Not used for user messages.
|
|
215
|
+
module Phase
|
|
216
|
+
extend OpenAI::Internal::Type::Enum
|
|
217
|
+
|
|
218
|
+
TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Live::DecisionAssistantMessage::Phase) }
|
|
219
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
220
|
+
|
|
221
|
+
COMMENTARY = T.let(:commentary, OpenAI::Live::DecisionAssistantMessage::Phase::TaggedSymbol)
|
|
222
|
+
FINAL_ANSWER = T.let(:final_answer, OpenAI::Live::DecisionAssistantMessage::Phase::TaggedSymbol)
|
|
223
|
+
|
|
224
|
+
sig { override.returns(T::Array[OpenAI::Live::DecisionAssistantMessage::Phase::TaggedSymbol]) }
|
|
225
|
+
def self.values
|
|
226
|
+
end
|
|
227
|
+
end
|
|
228
|
+
|
|
229
|
+
module Type
|
|
230
|
+
extend OpenAI::Internal::Type::Enum
|
|
231
|
+
|
|
232
|
+
TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Live::DecisionAssistantMessage::Type) }
|
|
233
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
234
|
+
|
|
235
|
+
MESSAGE = T.let(:message, OpenAI::Live::DecisionAssistantMessage::Type::TaggedSymbol)
|
|
236
|
+
|
|
237
|
+
sig { override.returns(T::Array[OpenAI::Live::DecisionAssistantMessage::Type::TaggedSymbol]) }
|
|
238
|
+
def self.values
|
|
239
|
+
end
|
|
240
|
+
end
|
|
241
|
+
|
|
242
|
+
end
|
|
243
|
+
|
|
244
|
+
end
|
|
245
|
+
|
|
246
|
+
end
|
|
247
|
+
end
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Live
|
|
7
|
+
|
|
8
|
+
class DecisionChoiceOption < OpenAI::Internal::Type::BaseModel
|
|
9
|
+
|
|
10
|
+
OrHash = T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
OpenAI::Live::DecisionChoiceOption,
|
|
13
|
+
OpenAI::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
sig { returns(T.any(String, T::Boolean)) }
|
|
18
|
+
attr_accessor :value
|
|
19
|
+
|
|
20
|
+
sig { returns(T.nilable(String)) }
|
|
21
|
+
attr_reader :description
|
|
22
|
+
|
|
23
|
+
sig { params(description: String).void }
|
|
24
|
+
attr_writer :description
|
|
25
|
+
|
|
26
|
+
sig do
|
|
27
|
+
params(
|
|
28
|
+
|
|
29
|
+
value: T.any(String, T::Boolean),
|
|
30
|
+
|
|
31
|
+
description: String
|
|
32
|
+
)
|
|
33
|
+
.returns(T.attached_class)
|
|
34
|
+
end
|
|
35
|
+
def self.new(
|
|
36
|
+
|
|
37
|
+
value:,
|
|
38
|
+
|
|
39
|
+
description: nil
|
|
40
|
+
)
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
sig do
|
|
44
|
+
override.returns(
|
|
45
|
+
{value: T.any(String, T::Boolean), description: String}
|
|
46
|
+
)
|
|
47
|
+
end
|
|
48
|
+
def to_hash
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
module Value
|
|
52
|
+
extend OpenAI::Internal::Type::Union
|
|
53
|
+
|
|
54
|
+
Variants = T.type_alias { T.any(String, T::Boolean) }
|
|
55
|
+
|
|
56
|
+
sig { override.returns(T::Array[OpenAI::Live::DecisionChoiceOption::Value::Variants]) }
|
|
57
|
+
def self.variants
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
end
|
|
67
|
+
end
|