openai 0.83.0 → 0.85.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 +59 -0
- data/README.md +1 -1
- data/SECURITY.md +10 -0
- data/docs/architecture/security-model.md +267 -0
- data/lib/openai/auth/workload_identity_auth.rb +17 -2
- data/lib/openai/client.rb +24 -6
- data/lib/openai/errors.rb +1 -1
- data/lib/openai/helpers/streaming/chat_completion_stream.rb +18 -10
- data/lib/openai/helpers/streaming/response_events.rb +2 -2
- data/lib/openai/helpers/streaming/response_stream.rb +80 -44
- data/lib/openai/helpers/structured_output/array_of.rb +2 -2
- data/lib/openai/helpers/structured_output/base_model.rb +19 -5
- data/lib/openai/helpers/structured_output/chat_completion_parser.rb +12 -3
- data/lib/openai/helpers/structured_output/json_schema_converter.rb +34 -11
- data/lib/openai/helpers/structured_output/response_parser.rb +1 -1
- data/lib/openai/internal/type/base_model.rb +2 -2
- data/lib/openai/internal/type/converter.rb +1 -1
- data/lib/openai/internal/util.rb +2 -2
- data/lib/openai/internal/vector_store_file_uploader.rb +1 -1
- data/lib/openai/models/admin/organization/usage_costs_params.rb +10 -1
- data/lib/openai/models/batch.rb +4 -4
- data/lib/openai/models/beta/beta_custom_tool.rb +13 -1
- data/lib/openai/models/beta/beta_function_tool.rb +8 -1
- data/lib/openai/models/beta/beta_namespace_tool.rb +10 -1
- data/lib/openai/models/beta/beta_response.rb +26 -18
- data/lib/openai/models/beta/beta_response_configuration_update_item.rb +103 -0
- data/lib/openai/models/beta/beta_response_configuration_update_item_param.rb +104 -0
- data/lib/openai/models/beta/beta_response_custom_tool_call.rb +9 -1
- data/lib/openai/models/beta/beta_response_custom_tool_call_item.rb +3 -1
- data/lib/openai/models/beta/beta_response_error.rb +96 -1
- data/lib/openai/models/beta/beta_response_function_tool_call.rb +9 -1
- data/lib/openai/models/beta/beta_response_function_tool_call_item.rb +3 -1
- data/lib/openai/models/beta/beta_response_incomplete_event.rb +4 -0
- data/lib/openai/models/beta/beta_response_inject_event.rb +2 -2
- data/lib/openai/models/beta/beta_response_inject_failed_event.rb +2 -2
- data/lib/openai/models/beta/beta_response_input_item.rb +6 -1
- data/lib/openai/models/beta/beta_response_item.rb +5 -1
- data/lib/openai/models/beta/beta_response_steer_accepted_event.rb +81 -0
- data/lib/openai/models/beta/beta_response_steer_error_code.rb +61 -0
- data/lib/openai/models/beta/beta_response_steer_event.rb +75 -0
- data/lib/openai/models/beta/beta_response_steer_failed_event.rb +151 -0
- data/lib/openai/models/beta/beta_response_steer_input.rb +360 -0
- data/lib/openai/models/beta/beta_response_steer_input_content.rb +28 -0
- data/lib/openai/models/beta/beta_response_steer_pending_event.rb +113 -0
- data/lib/openai/models/beta/beta_response_steer_pending_reason.rb +26 -0
- data/lib/openai/models/beta/beta_response_steer_required_input.rb +215 -0
- data/lib/openai/models/beta/beta_response_stream_event.rb +4 -0
- data/lib/openai/models/beta/beta_response_usage.rb +1 -12
- data/lib/openai/models/beta/beta_responses_client_event.rb +45 -16
- data/lib/openai/models/beta/beta_responses_server_event.rb +164 -2
- data/lib/openai/models/beta/response_compact_params.rb +13 -10
- data/lib/openai/models/beta/response_create_params.rb +14 -15
- data/lib/openai/models/beta/responses/beta_response_item_list.rb +2 -2
- data/lib/openai/models/beta/responses/input_token_count_params.rb +3 -3
- data/lib/openai/models/chat/completion_create_params.rb +8 -8
- data/lib/openai/models/chat_model.rb +1 -0
- data/lib/openai/models/completion_usage.rb +1 -12
- data/lib/openai/models/conversations/conversation_create_params.rb +2 -2
- data/lib/openai/models/conversations/conversation_item.rb +5 -1
- data/lib/openai/models/conversations/conversation_item_list.rb +2 -2
- data/lib/openai/models/conversations/item_create_params.rb +2 -2
- data/lib/openai/models/error_object.rb +90 -1
- data/lib/openai/models/eval_create_response.rb +1 -1
- data/lib/openai/models/eval_list_response.rb +1 -1
- data/lib/openai/models/eval_retrieve_response.rb +1 -1
- data/lib/openai/models/eval_update_response.rb +1 -1
- data/lib/openai/models/evals/create_eval_completions_run_data_source.rb +2 -2
- data/lib/openai/models/reasoning.rb +0 -2
- data/lib/openai/models/responses/custom_tool.rb +13 -1
- data/lib/openai/models/responses/function_tool.rb +8 -1
- data/lib/openai/models/responses/input_token_count_params.rb +3 -3
- data/lib/openai/models/responses/namespace_tool.rb +10 -1
- data/lib/openai/models/responses/response.rb +20 -13
- data/lib/openai/models/responses/response_compact_params.rb +13 -10
- data/lib/openai/models/responses/response_configuration_update_item.rb +56 -0
- data/lib/openai/models/responses/response_configuration_update_item_param.rb +57 -0
- data/lib/openai/models/responses/response_create_params.rb +8 -10
- data/lib/openai/models/responses/response_custom_tool_call.rb +9 -1
- data/lib/openai/models/responses/response_custom_tool_call_item.rb +3 -1
- data/lib/openai/models/responses/response_error.rb +96 -1
- data/lib/openai/models/responses/response_function_tool_call.rb +9 -1
- data/lib/openai/models/responses/response_function_tool_call_item.rb +3 -1
- data/lib/openai/models/responses/response_incomplete_event.rb +4 -0
- data/lib/openai/models/responses/response_input_item.rb +6 -1
- data/lib/openai/models/responses/response_item.rb +5 -1
- data/lib/openai/models/responses/response_item_list.rb +2 -2
- data/lib/openai/models/responses/response_steer_accepted_event.rb +79 -0
- data/lib/openai/models/responses/response_steer_error_code.rb +59 -0
- data/lib/openai/models/responses/response_steer_event.rb +73 -0
- data/lib/openai/models/responses/response_steer_failed_event.rb +149 -0
- data/lib/openai/models/responses/response_steer_input.rb +304 -0
- data/lib/openai/models/responses/response_steer_input_content.rb +26 -0
- data/lib/openai/models/responses/response_steer_pending_event.rb +111 -0
- data/lib/openai/models/responses/response_steer_pending_reason.rb +24 -0
- data/lib/openai/models/responses/response_steer_required_input.rb +213 -0
- data/lib/openai/models/responses/response_stream_event.rb +4 -0
- data/lib/openai/models/responses/response_usage.rb +1 -12
- data/lib/openai/models/responses/responses_client_event.rb +872 -771
- data/lib/openai/models/responses/responses_server_event.rb +162 -2
- data/lib/openai/models/safety/alert_retrieve_params.rb +24 -0
- data/lib/openai/models/safety/safety_alert.rb +96 -0
- data/lib/openai/models/video_create_error.rb +93 -1
- data/lib/openai/models/webhooks/safety_alert_created_webhook_event.rb +63 -0
- data/lib/openai/models/webhooks/safety_org_alert_created_webhook_event.rb +63 -0
- data/lib/openai/models/webhooks/unwrap_webhook_event.rb +7 -1
- data/lib/openai/models.rb +2 -0
- data/lib/openai/net_http_client.rb +1 -1
- data/lib/openai/providers/bedrock.rb +20 -12
- data/lib/openai/resources/admin/organization/usage.rb +3 -1
- data/lib/openai/resources/beta/responses/input_items.rb +1 -1
- data/lib/openai/resources/beta/responses/input_tokens.rb +1 -1
- data/lib/openai/resources/beta/responses.rb +8 -8
- data/lib/openai/resources/chat/completions.rb +2 -2
- data/lib/openai/resources/conversations/items.rb +3 -3
- data/lib/openai/resources/conversations.rb +1 -1
- data/lib/openai/resources/responses/input_items.rb +1 -1
- data/lib/openai/resources/responses/input_tokens.rb +1 -1
- data/lib/openai/resources/responses.rb +10 -9
- data/lib/openai/resources/safety/alerts.rb +37 -0
- data/lib/openai/resources/safety.rb +18 -0
- data/lib/openai/resources/webhooks.rb +1 -1
- data/lib/openai/version.rb +1 -1
- data/lib/openai.rb +29 -0
- data/rbi/openai/client.rbi +3 -0
- data/rbi/openai/errors.rbi +1 -1
- data/rbi/openai/helpers/streaming/events.rbi +2 -2
- data/rbi/openai/helpers/streaming/response_stream.rbi +3 -3
- data/rbi/openai/models/admin/organization/usage_costs_params.rbi +15 -0
- data/rbi/openai/models/batch.rbi +6 -6
- data/rbi/openai/models/beta/beta_custom_tool.rbi +15 -0
- data/rbi/openai/models/beta/beta_function_tool.rbi +11 -0
- data/rbi/openai/models/beta/beta_namespace_tool.rbi +15 -0
- data/rbi/openai/models/beta/beta_response.rbi +21 -18
- data/rbi/openai/models/beta/beta_response_configuration_update_item.rbi +200 -0
- data/rbi/openai/models/beta/beta_response_configuration_update_item_param.rbi +207 -0
- data/rbi/openai/models/beta/beta_response_custom_tool_call.rbi +13 -0
- data/rbi/openai/models/beta/beta_response_custom_tool_call_item.rbi +6 -0
- data/rbi/openai/models/beta/beta_response_error.rbi +161 -3
- data/rbi/openai/models/beta/beta_response_function_tool_call.rbi +13 -0
- data/rbi/openai/models/beta/beta_response_function_tool_call_item.rbi +6 -0
- data/rbi/openai/models/beta/beta_response_incomplete_event.rbi +4 -0
- data/rbi/openai/models/beta/beta_response_inject_event.rbi +3 -0
- data/rbi/openai/models/beta/beta_response_inject_failed_event.rbi +3 -0
- data/rbi/openai/models/beta/beta_response_input_item.rbi +1 -0
- data/rbi/openai/models/beta/beta_response_item.rbi +1 -0
- data/rbi/openai/models/beta/beta_response_steer_accepted_event.rbi +148 -0
- data/rbi/openai/models/beta/beta_response_steer_error_code.rbi +65 -0
- data/rbi/openai/models/beta/beta_response_steer_event.rbi +118 -0
- data/rbi/openai/models/beta/beta_response_steer_failed_event.rbi +267 -0
- data/rbi/openai/models/beta/beta_response_steer_input.rbi +602 -0
- data/rbi/openai/models/beta/beta_response_steer_input_content.rbi +31 -0
- data/rbi/openai/models/beta/beta_response_steer_pending_event.rbi +222 -0
- data/rbi/openai/models/beta/beta_response_steer_pending_reason.rbi +35 -0
- data/rbi/openai/models/beta/beta_response_steer_required_input.rbi +379 -0
- data/rbi/openai/models/beta/beta_response_usage.rbi +3 -13
- data/rbi/openai/models/beta/beta_responses_client_event.rbi +14 -15
- data/rbi/openai/models/beta/beta_responses_server_event.rbi +206 -3
- data/rbi/openai/models/beta/response_compact_params.rbi +10 -9
- data/rbi/openai/models/beta/response_create_params.rbi +10 -15
- data/rbi/openai/models/beta/responses/beta_response_item_list.rbi +1 -0
- data/rbi/openai/models/chat/completion_create_params.rbi +9 -9
- data/rbi/openai/models/chat_model.rbi +1 -0
- data/rbi/openai/models/completion_usage.rbi +0 -10
- data/rbi/openai/models/conversations/conversation_create_params.rbi +3 -0
- data/rbi/openai/models/conversations/conversation_item.rbi +1 -0
- data/rbi/openai/models/conversations/conversation_item_list.rbi +1 -0
- data/rbi/openai/models/conversations/item_create_params.rbi +3 -0
- data/rbi/openai/models/error_object.rbi +156 -3
- data/rbi/openai/models/eval_create_response.rbi +1 -1
- data/rbi/openai/models/eval_list_response.rbi +1 -1
- data/rbi/openai/models/eval_retrieve_response.rbi +1 -1
- data/rbi/openai/models/eval_update_response.rbi +1 -1
- data/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi +2 -2
- data/rbi/openai/models/reasoning.rbi +0 -2
- data/rbi/openai/models/responses/custom_tool.rbi +15 -0
- data/rbi/openai/models/responses/function_tool.rbi +11 -0
- data/rbi/openai/models/responses/namespace_tool.rbi +15 -0
- data/rbi/openai/models/responses/response.rbi +17 -13
- data/rbi/openai/models/responses/response_compact_params.rbi +10 -9
- data/rbi/openai/models/responses/response_configuration_update_item.rbi +112 -0
- data/rbi/openai/models/responses/response_configuration_update_item_param.rbi +117 -0
- data/rbi/openai/models/responses/response_create_params.rbi +6 -10
- data/rbi/openai/models/responses/response_custom_tool_call.rbi +13 -0
- data/rbi/openai/models/responses/response_custom_tool_call_item.rbi +6 -0
- data/rbi/openai/models/responses/response_error.rbi +161 -3
- data/rbi/openai/models/responses/response_function_tool_call.rbi +13 -0
- data/rbi/openai/models/responses/response_function_tool_call_item.rbi +6 -0
- data/rbi/openai/models/responses/response_incomplete_event.rbi +4 -0
- data/rbi/openai/models/responses/response_input_item.rbi +1 -0
- data/rbi/openai/models/responses/response_item.rbi +1 -0
- data/rbi/openai/models/responses/response_item_list.rbi +1 -0
- data/rbi/openai/models/responses/response_steer_accepted_event.rbi +146 -0
- data/rbi/openai/models/responses/response_steer_error_code.rbi +63 -0
- data/rbi/openai/models/responses/response_steer_event.rbi +119 -0
- data/rbi/openai/models/responses/response_steer_failed_event.rbi +268 -0
- data/rbi/openai/models/responses/response_steer_input.rbi +474 -0
- data/rbi/openai/models/responses/response_steer_input_content.rbi +29 -0
- data/rbi/openai/models/responses/response_steer_pending_event.rbi +220 -0
- data/rbi/openai/models/responses/response_steer_pending_reason.rbi +33 -0
- data/rbi/openai/models/responses/response_steer_required_input.rbi +377 -0
- data/rbi/openai/models/responses/response_usage.rbi +3 -13
- data/rbi/openai/models/responses/responses_client_event.rbi +1205 -1041
- data/rbi/openai/models/responses/responses_server_event.rbi +202 -3
- data/rbi/openai/models/safety/alert_retrieve_params.rbi +55 -0
- data/rbi/openai/models/safety/safety_alert.rbi +147 -0
- data/rbi/openai/models/video_create_error.rbi +149 -3
- data/rbi/openai/models/webhooks/safety_alert_created_webhook_event.rbi +130 -0
- data/rbi/openai/models/webhooks/safety_org_alert_created_webhook_event.rbi +130 -0
- data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +3 -1
- data/rbi/openai/models.rbi +2 -0
- data/rbi/openai/resources/admin/organization/usage.rbi +4 -0
- data/rbi/openai/resources/beta/responses.rbi +7 -11
- data/rbi/openai/resources/chat/completions.rbi +6 -6
- data/rbi/openai/resources/conversations/items.rbi +1 -0
- data/rbi/openai/resources/conversations.rbi +1 -0
- data/rbi/openai/resources/responses.rbi +9 -13
- data/rbi/openai/resources/safety/alerts.rbi +30 -0
- data/rbi/openai/resources/safety.rbi +18 -0
- data/rbi/openai/resources/webhooks.rbi +3 -1
- data/sig/openai/client.rbs +2 -0
- data/sig/openai/errors.rbs +1 -1
- data/sig/openai/internal/transport/base_client.rbs +4 -19
- data/sig/openai/models/admin/organization/usage_costs_params.rbs +7 -0
- data/sig/openai/models/beta/beta_custom_tool.rbs +7 -0
- data/sig/openai/models/beta/beta_function_tool.rbs +7 -0
- data/sig/openai/models/beta/beta_namespace_tool.rbs +7 -0
- data/sig/openai/models/beta/beta_response.rbs +7 -2
- data/sig/openai/models/beta/beta_response_configuration_update_item.rbs +91 -0
- data/sig/openai/models/beta/beta_response_configuration_update_item_param.rbs +87 -0
- data/sig/openai/models/beta/beta_response_custom_tool_call.rbs +7 -0
- data/sig/openai/models/beta/beta_response_custom_tool_call_item.rbs +3 -0
- data/sig/openai/models/beta/beta_response_error.rbs +82 -3
- data/sig/openai/models/beta/beta_response_function_tool_call.rbs +7 -0
- data/sig/openai/models/beta/beta_response_function_tool_call_item.rbs +3 -0
- data/sig/openai/models/beta/beta_response_input_item.rbs +1 -0
- data/sig/openai/models/beta/beta_response_item.rbs +1 -0
- data/sig/openai/models/beta/beta_response_steer_accepted_event.rbs +53 -0
- data/sig/openai/models/beta/beta_response_steer_error_code.rbs +31 -0
- data/sig/openai/models/beta/beta_response_steer_event.rbs +34 -0
- data/sig/openai/models/beta/beta_response_steer_failed_event.rbs +102 -0
- data/sig/openai/models/beta/beta_response_steer_input.rbs +214 -0
- data/sig/openai/models/beta/beta_response_steer_input_content.rbs +18 -0
- data/sig/openai/models/beta/beta_response_steer_pending_event.rbs +63 -0
- data/sig/openai/models/beta/beta_response_steer_pending_reason.rbs +16 -0
- data/sig/openai/models/beta/beta_response_steer_required_input.rbs +161 -0
- data/sig/openai/models/beta/beta_response_usage.rbs +3 -8
- data/sig/openai/models/beta/beta_responses_client_event.rbs +4 -1
- data/sig/openai/models/beta/beta_responses_server_event.rbs +80 -3
- data/sig/openai/models/beta/response_compact_params.rbs +3 -1
- data/sig/openai/models/beta/response_create_params.rbs +3 -1
- data/sig/openai/models/chat_model.rbs +3 -1
- data/sig/openai/models/completion_usage.rbs +0 -5
- data/sig/openai/models/conversations/conversation_item.rbs +1 -0
- data/sig/openai/models/error_object.rbs +82 -3
- data/sig/openai/models/responses/custom_tool.rbs +7 -0
- data/sig/openai/models/responses/function_tool.rbs +7 -0
- data/sig/openai/models/responses/namespace_tool.rbs +7 -0
- data/sig/openai/models/responses/response.rbs +4 -1
- data/sig/openai/models/responses/response_compact_params.rbs +3 -1
- data/sig/openai/models/responses/response_configuration_update_item.rbs +46 -0
- data/sig/openai/models/responses/response_configuration_update_item_param.rbs +46 -0
- data/sig/openai/models/responses/response_custom_tool_call.rbs +7 -0
- data/sig/openai/models/responses/response_custom_tool_call_item.rbs +3 -0
- data/sig/openai/models/responses/response_error.rbs +79 -3
- data/sig/openai/models/responses/response_function_tool_call.rbs +7 -0
- data/sig/openai/models/responses/response_function_tool_call_item.rbs +3 -0
- data/sig/openai/models/responses/response_input_item.rbs +1 -0
- data/sig/openai/models/responses/response_item.rbs +1 -0
- data/sig/openai/models/responses/response_steer_accepted_event.rbs +51 -0
- data/sig/openai/models/responses/response_steer_error_code.rbs +29 -0
- data/sig/openai/models/responses/response_steer_event.rbs +32 -0
- data/sig/openai/models/responses/response_steer_failed_event.rbs +100 -0
- data/sig/openai/models/responses/response_steer_input.rbs +182 -0
- data/sig/openai/models/responses/response_steer_input_content.rbs +16 -0
- data/sig/openai/models/responses/response_steer_pending_event.rbs +61 -0
- data/sig/openai/models/responses/response_steer_pending_reason.rbs +13 -0
- data/sig/openai/models/responses/response_steer_required_input.rbs +159 -0
- data/sig/openai/models/responses/response_usage.rbs +3 -8
- data/sig/openai/models/responses/responses_client_event.rbs +355 -344
- data/sig/openai/models/responses/responses_server_event.rbs +80 -3
- data/sig/openai/models/safety/alert_retrieve_params.rbs +22 -0
- data/sig/openai/models/safety/safety_alert.rbs +81 -0
- data/sig/openai/models/video_create_error.rbs +87 -3
- data/sig/openai/models/webhooks/safety_alert_created_webhook_event.rbs +52 -0
- data/sig/openai/models/webhooks/safety_org_alert_created_webhook_event.rbs +52 -0
- data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +2 -0
- data/sig/openai/models.rbs +2 -0
- data/sig/openai/resources/admin/organization/usage.rbs +1 -0
- data/sig/openai/resources/safety/alerts.rbs +14 -0
- data/sig/openai/resources/safety.rbs +9 -0
- data/sig/openai/resources/webhooks.rbs +3 -1
- metadata +86 -1
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Responses
|
|
7
|
+
|
|
8
|
+
class ResponseConfigurationUpdateItemParam < OpenAI::Internal::Type::BaseModel
|
|
9
|
+
|
|
10
|
+
OrHash = T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
OpenAI::Responses::ResponseConfigurationUpdateItemParam,
|
|
13
|
+
OpenAI::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# The item type. Always `configuration_update`.
|
|
18
|
+
sig { returns(Symbol) }
|
|
19
|
+
attr_accessor :type
|
|
20
|
+
|
|
21
|
+
# The unique ID of the configuration update item.
|
|
22
|
+
sig { returns(T.nilable(String)) }
|
|
23
|
+
attr_accessor :id
|
|
24
|
+
|
|
25
|
+
# Updates to reasoning configuration. Only effort is supported.
|
|
26
|
+
sig { returns(T.nilable(OpenAI::Responses::ResponseConfigurationUpdateItemParam::Reasoning)) }
|
|
27
|
+
attr_reader :reasoning
|
|
28
|
+
|
|
29
|
+
sig { params(reasoning: OpenAI::Responses::ResponseConfigurationUpdateItemParam::Reasoning::OrHash).void }
|
|
30
|
+
attr_writer :reasoning
|
|
31
|
+
|
|
32
|
+
# An update to the conversation's response configuration. The configuration
|
|
33
|
+
# remains in effect for subsequent responses until it is replaced by another
|
|
34
|
+
# configuration update.
|
|
35
|
+
sig do
|
|
36
|
+
params(
|
|
37
|
+
|
|
38
|
+
id: T.nilable(String),
|
|
39
|
+
|
|
40
|
+
reasoning: OpenAI::Responses::ResponseConfigurationUpdateItemParam::Reasoning::OrHash,
|
|
41
|
+
|
|
42
|
+
type: Symbol
|
|
43
|
+
)
|
|
44
|
+
.returns(T.attached_class)
|
|
45
|
+
end
|
|
46
|
+
def self.new(
|
|
47
|
+
|
|
48
|
+
# The unique ID of the configuration update item.
|
|
49
|
+
id: nil,
|
|
50
|
+
|
|
51
|
+
# Updates to reasoning configuration. Only effort is supported.
|
|
52
|
+
reasoning: nil,
|
|
53
|
+
|
|
54
|
+
# The item type. Always `configuration_update`.
|
|
55
|
+
|
|
56
|
+
type: :configuration_update
|
|
57
|
+
)
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
sig do
|
|
61
|
+
override.returns(
|
|
62
|
+
{
|
|
63
|
+
type: Symbol,
|
|
64
|
+
id: T.nilable(String),
|
|
65
|
+
reasoning: OpenAI::Responses::ResponseConfigurationUpdateItemParam::Reasoning
|
|
66
|
+
}
|
|
67
|
+
)
|
|
68
|
+
end
|
|
69
|
+
def to_hash
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
class Reasoning < OpenAI::Internal::Type::BaseModel
|
|
73
|
+
OrHash = T.type_alias do
|
|
74
|
+
T.any(
|
|
75
|
+
OpenAI::Responses::ResponseConfigurationUpdateItemParam::Reasoning,
|
|
76
|
+
OpenAI::Internal::AnyHash
|
|
77
|
+
)
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
# The reasoning effort to use for subsequent responses until another configuration
|
|
81
|
+
# update replaces it.
|
|
82
|
+
sig { returns(T.nilable(OpenAI::ReasoningEffort::OrSymbol)) }
|
|
83
|
+
attr_accessor :effort
|
|
84
|
+
|
|
85
|
+
# Updates to reasoning configuration. Only effort is supported.
|
|
86
|
+
sig do
|
|
87
|
+
params(
|
|
88
|
+
|
|
89
|
+
effort: T.nilable(OpenAI::ReasoningEffort::OrSymbol)
|
|
90
|
+
)
|
|
91
|
+
.returns(T.attached_class)
|
|
92
|
+
end
|
|
93
|
+
def self.new(
|
|
94
|
+
|
|
95
|
+
# The reasoning effort to use for subsequent responses until another configuration
|
|
96
|
+
# update replaces it.
|
|
97
|
+
|
|
98
|
+
effort: nil
|
|
99
|
+
)
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
sig do
|
|
103
|
+
override.returns(
|
|
104
|
+
{effort: T.nilable(OpenAI::ReasoningEffort::OrSymbol)}
|
|
105
|
+
)
|
|
106
|
+
end
|
|
107
|
+
def to_hash
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
end
|
|
113
|
+
|
|
114
|
+
end
|
|
115
|
+
|
|
116
|
+
end
|
|
117
|
+
end
|
|
@@ -99,9 +99,9 @@ module OpenAI
|
|
|
99
99
|
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
100
100
|
attr_accessor :metadata
|
|
101
101
|
|
|
102
|
-
# Model ID used to generate the response, like `gpt-
|
|
103
|
-
#
|
|
104
|
-
#
|
|
102
|
+
# Model ID used to generate the response, like `gpt-6-astra`. OpenAI offers a wide
|
|
103
|
+
# range of models with different capabilities, performance characteristics, and
|
|
104
|
+
# price points. Refer to the
|
|
105
105
|
# [model guide](https://platform.openai.com/docs/models) to browse and compare
|
|
106
106
|
# available models.
|
|
107
107
|
sig {
|
|
@@ -186,8 +186,6 @@ module OpenAI
|
|
|
186
186
|
sig { returns(T.nilable(OpenAI::Responses::ResponseCreateParams::PromptCacheRetention::OrSymbol)) }
|
|
187
187
|
attr_accessor :prompt_cache_retention
|
|
188
188
|
|
|
189
|
-
# **gpt-5 and o-series models only**
|
|
190
|
-
#
|
|
191
189
|
# Configuration options for
|
|
192
190
|
# [reasoning models](https://platform.openai.com/docs/guides/reasoning).
|
|
193
191
|
sig { returns(T.nilable(OpenAI::Reasoning)) }
|
|
@@ -587,9 +585,9 @@ module OpenAI
|
|
|
587
585
|
# a maximum length of 512 characters.
|
|
588
586
|
metadata: nil,
|
|
589
587
|
|
|
590
|
-
# Model ID used to generate the response, like `gpt-
|
|
591
|
-
#
|
|
592
|
-
#
|
|
588
|
+
# Model ID used to generate the response, like `gpt-6-astra`. OpenAI offers a wide
|
|
589
|
+
# range of models with different capabilities, performance characteristics, and
|
|
590
|
+
# price points. Refer to the
|
|
593
591
|
# [model guide](https://platform.openai.com/docs/models) to browse and compare
|
|
594
592
|
# available models.
|
|
595
593
|
model: nil,
|
|
@@ -645,8 +643,6 @@ module OpenAI
|
|
|
645
643
|
# `prompt_cache_retention` is not specified.
|
|
646
644
|
prompt_cache_retention: nil,
|
|
647
645
|
|
|
648
|
-
# **gpt-5 and o-series models only**
|
|
649
|
-
#
|
|
650
646
|
# Configuration options for
|
|
651
647
|
# [reasoning models](https://platform.openai.com/docs/guides/reasoning).
|
|
652
648
|
reasoning: nil,
|
|
@@ -37,6 +37,13 @@ module OpenAI
|
|
|
37
37
|
sig { params(id: String).void }
|
|
38
38
|
attr_writer :id
|
|
39
39
|
|
|
40
|
+
# Whether the custom tool call runs asynchronously.
|
|
41
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
42
|
+
attr_reader :async
|
|
43
|
+
|
|
44
|
+
sig { params(async: T::Boolean).void }
|
|
45
|
+
attr_writer :async
|
|
46
|
+
|
|
40
47
|
# The execution context that produced this tool call.
|
|
41
48
|
sig {
|
|
42
49
|
returns(
|
|
@@ -69,6 +76,8 @@ module OpenAI
|
|
|
69
76
|
|
|
70
77
|
id: String,
|
|
71
78
|
|
|
79
|
+
async: T::Boolean,
|
|
80
|
+
|
|
72
81
|
caller_: T.nilable(
|
|
73
82
|
T.any(
|
|
74
83
|
OpenAI::Responses::ResponseCustomToolCall::Caller::Direct::OrHash,
|
|
@@ -96,6 +105,9 @@ module OpenAI
|
|
|
96
105
|
# The unique ID of the custom tool call in the OpenAI platform.
|
|
97
106
|
id: nil,
|
|
98
107
|
|
|
108
|
+
# Whether the custom tool call runs asynchronously.
|
|
109
|
+
async: nil,
|
|
110
|
+
|
|
99
111
|
# The execution context that produced this tool call.
|
|
100
112
|
caller_: nil,
|
|
101
113
|
|
|
@@ -116,6 +128,7 @@ module OpenAI
|
|
|
116
128
|
name: String,
|
|
117
129
|
type: Symbol,
|
|
118
130
|
id: String,
|
|
131
|
+
async: T::Boolean,
|
|
119
132
|
caller_: T.nilable(
|
|
120
133
|
T.any(
|
|
121
134
|
OpenAI::Responses::ResponseCustomToolCall::Caller::Direct,
|
|
@@ -44,6 +44,8 @@ module OpenAI
|
|
|
44
44
|
|
|
45
45
|
status: OpenAI::Responses::ResponseCustomToolCallItem::Status::OrSymbol,
|
|
46
46
|
|
|
47
|
+
async: T::Boolean,
|
|
48
|
+
|
|
47
49
|
caller_: T.nilable(
|
|
48
50
|
T.any(
|
|
49
51
|
OpenAI::Responses::ResponseCustomToolCall::Caller::Direct::OrHash,
|
|
@@ -77,6 +79,9 @@ module OpenAI
|
|
|
77
79
|
# Populated when items are returned via API.
|
|
78
80
|
status:,
|
|
79
81
|
|
|
82
|
+
# Whether the custom tool call runs asynchronously.
|
|
83
|
+
async: nil,
|
|
84
|
+
|
|
80
85
|
# The execution context that produced this tool call.
|
|
81
86
|
caller_: nil,
|
|
82
87
|
|
|
@@ -101,6 +106,7 @@ module OpenAI
|
|
|
101
106
|
id: String,
|
|
102
107
|
status: OpenAI::Responses::ResponseCustomToolCallItem::Status::TaggedSymbol,
|
|
103
108
|
type: Symbol,
|
|
109
|
+
async: T::Boolean,
|
|
104
110
|
caller_: T.nilable(
|
|
105
111
|
T.any(
|
|
106
112
|
OpenAI::Responses::ResponseCustomToolCall::Caller::Direct,
|
|
@@ -22,13 +22,21 @@ module OpenAI
|
|
|
22
22
|
sig { returns(String) }
|
|
23
23
|
attr_accessor :message
|
|
24
24
|
|
|
25
|
+
sig { returns(T.nilable(OpenAI::Responses::ResponseError::Misalignment)) }
|
|
26
|
+
attr_reader :misalignment
|
|
27
|
+
|
|
28
|
+
sig { params(misalignment: OpenAI::Responses::ResponseError::Misalignment::OrHash).void }
|
|
29
|
+
attr_writer :misalignment
|
|
30
|
+
|
|
25
31
|
# An error object returned when the model fails to generate a Response.
|
|
26
32
|
sig do
|
|
27
33
|
params(
|
|
28
34
|
|
|
29
35
|
code: OpenAI::Responses::ResponseError::Code::OrSymbol,
|
|
30
36
|
|
|
31
|
-
message: String
|
|
37
|
+
message: String,
|
|
38
|
+
|
|
39
|
+
misalignment: OpenAI::Responses::ResponseError::Misalignment::OrHash
|
|
32
40
|
)
|
|
33
41
|
.returns(T.attached_class)
|
|
34
42
|
end
|
|
@@ -38,14 +46,19 @@ module OpenAI
|
|
|
38
46
|
code:,
|
|
39
47
|
|
|
40
48
|
# A human-readable description of the error.
|
|
49
|
+
message:,
|
|
41
50
|
|
|
42
|
-
|
|
51
|
+
misalignment: nil
|
|
43
52
|
)
|
|
44
53
|
end
|
|
45
54
|
|
|
46
55
|
sig do
|
|
47
56
|
override.returns(
|
|
48
|
-
{
|
|
57
|
+
{
|
|
58
|
+
code: OpenAI::Responses::ResponseError::Code::TaggedSymbol,
|
|
59
|
+
message: String,
|
|
60
|
+
misalignment: OpenAI::Responses::ResponseError::Misalignment
|
|
61
|
+
}
|
|
49
62
|
)
|
|
50
63
|
end
|
|
51
64
|
def to_hash
|
|
@@ -66,6 +79,10 @@ module OpenAI
|
|
|
66
79
|
OpenAI::Responses::ResponseError::Code::TaggedSymbol
|
|
67
80
|
)
|
|
68
81
|
BIO_POLICY = T.let(:bio_policy, OpenAI::Responses::ResponseError::Code::TaggedSymbol)
|
|
82
|
+
MISALIGNMENT_POLICY_VIOLATION = T.let(
|
|
83
|
+
:misalignment_policy_violation,
|
|
84
|
+
OpenAI::Responses::ResponseError::Code::TaggedSymbol
|
|
85
|
+
)
|
|
69
86
|
VECTOR_STORE_TIMEOUT = T.let(:vector_store_timeout, OpenAI::Responses::ResponseError::Code::TaggedSymbol)
|
|
70
87
|
INVALID_IMAGE = T.let(:invalid_image, OpenAI::Responses::ResponseError::Code::TaggedSymbol)
|
|
71
88
|
INVALID_IMAGE_FORMAT = T.let(:invalid_image_format, OpenAI::Responses::ResponseError::Code::TaggedSymbol)
|
|
@@ -96,6 +113,147 @@ module OpenAI
|
|
|
96
113
|
end
|
|
97
114
|
end
|
|
98
115
|
|
|
116
|
+
class Misalignment < OpenAI::Internal::Type::BaseModel
|
|
117
|
+
OrHash = T.type_alias do
|
|
118
|
+
T.any(
|
|
119
|
+
OpenAI::Responses::ResponseError::Misalignment,
|
|
120
|
+
OpenAI::Internal::AnyHash
|
|
121
|
+
)
|
|
122
|
+
end
|
|
123
|
+
|
|
124
|
+
# The public explanation for this block.
|
|
125
|
+
sig { returns(T.nilable(String)) }
|
|
126
|
+
attr_reader :detailed_explanation
|
|
127
|
+
|
|
128
|
+
sig { params(detailed_explanation: String).void }
|
|
129
|
+
attr_writer :detailed_explanation
|
|
130
|
+
|
|
131
|
+
# An optional classification; clients must accept additional values.
|
|
132
|
+
sig { returns(T.nilable(OpenAI::Responses::ResponseError::Misalignment::ErrorType::Variants)) }
|
|
133
|
+
attr_reader :error_type
|
|
134
|
+
|
|
135
|
+
sig {
|
|
136
|
+
params(error_type: T.any(String, OpenAI::Responses::ResponseError::Misalignment::ErrorType::OrSymbol)).void
|
|
137
|
+
}
|
|
138
|
+
attr_writer :error_type
|
|
139
|
+
|
|
140
|
+
# An optional public continuation instruction.
|
|
141
|
+
sig { returns(T.nilable(OpenAI::Responses::ResponseError::Misalignment::Steer)) }
|
|
142
|
+
attr_reader :steer
|
|
143
|
+
|
|
144
|
+
sig { params(steer: OpenAI::Responses::ResponseError::Misalignment::Steer::OrHash).void }
|
|
145
|
+
attr_writer :steer
|
|
146
|
+
|
|
147
|
+
sig do
|
|
148
|
+
params(
|
|
149
|
+
|
|
150
|
+
detailed_explanation: String,
|
|
151
|
+
|
|
152
|
+
error_type: T.any(String, OpenAI::Responses::ResponseError::Misalignment::ErrorType::OrSymbol),
|
|
153
|
+
|
|
154
|
+
steer: OpenAI::Responses::ResponseError::Misalignment::Steer::OrHash
|
|
155
|
+
)
|
|
156
|
+
.returns(T.attached_class)
|
|
157
|
+
end
|
|
158
|
+
def self.new(
|
|
159
|
+
|
|
160
|
+
# The public explanation for this block.
|
|
161
|
+
detailed_explanation: nil,
|
|
162
|
+
|
|
163
|
+
# An optional classification; clients must accept additional values.
|
|
164
|
+
error_type: nil,
|
|
165
|
+
|
|
166
|
+
# An optional public continuation instruction.
|
|
167
|
+
|
|
168
|
+
steer: nil
|
|
169
|
+
)
|
|
170
|
+
end
|
|
171
|
+
|
|
172
|
+
sig do
|
|
173
|
+
override.returns(
|
|
174
|
+
{
|
|
175
|
+
detailed_explanation: String,
|
|
176
|
+
error_type: OpenAI::Responses::ResponseError::Misalignment::ErrorType::Variants,
|
|
177
|
+
steer: OpenAI::Responses::ResponseError::Misalignment::Steer
|
|
178
|
+
}
|
|
179
|
+
)
|
|
180
|
+
end
|
|
181
|
+
def to_hash
|
|
182
|
+
end
|
|
183
|
+
|
|
184
|
+
# An optional classification; clients must accept additional values.
|
|
185
|
+
module ErrorType
|
|
186
|
+
extend OpenAI::Internal::Type::Union
|
|
187
|
+
|
|
188
|
+
Variants = T.type_alias {
|
|
189
|
+
T.any(String, OpenAI::Responses::ResponseError::Misalignment::ErrorType::TaggedSymbol)
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
sig { override.returns(T::Array[OpenAI::Responses::ResponseError::Misalignment::ErrorType::Variants]) }
|
|
193
|
+
def self.variants
|
|
194
|
+
end
|
|
195
|
+
|
|
196
|
+
TaggedSymbol = T.type_alias do
|
|
197
|
+
T.all(Symbol, OpenAI::Responses::ResponseError::Misalignment::ErrorType)
|
|
198
|
+
end
|
|
199
|
+
|
|
200
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
201
|
+
|
|
202
|
+
POTENTIALLY_UNINTENDED_DATA_TRANSFER = T.let(
|
|
203
|
+
:potentially_unintended_data_transfer,
|
|
204
|
+
OpenAI::Responses::ResponseError::Misalignment::ErrorType::TaggedSymbol
|
|
205
|
+
)
|
|
206
|
+
POTENTIALLY_UNINTENDED_DATA_ACCESS = T.let(
|
|
207
|
+
:potentially_unintended_data_access,
|
|
208
|
+
OpenAI::Responses::ResponseError::Misalignment::ErrorType::TaggedSymbol
|
|
209
|
+
)
|
|
210
|
+
POTENTIALLY_UNINTENDED_DESTRUCTIVE_ACTIVITY = T.let(
|
|
211
|
+
:potentially_unintended_destructive_activity,
|
|
212
|
+
OpenAI::Responses::ResponseError::Misalignment::ErrorType::TaggedSymbol
|
|
213
|
+
)
|
|
214
|
+
OTHER = T.let(:other, OpenAI::Responses::ResponseError::Misalignment::ErrorType::TaggedSymbol)
|
|
215
|
+
|
|
216
|
+
end
|
|
217
|
+
|
|
218
|
+
class Steer < OpenAI::Internal::Type::BaseModel
|
|
219
|
+
OrHash = T.type_alias do
|
|
220
|
+
T.any(
|
|
221
|
+
OpenAI::Responses::ResponseError::Misalignment::Steer,
|
|
222
|
+
OpenAI::Internal::AnyHash
|
|
223
|
+
)
|
|
224
|
+
end
|
|
225
|
+
|
|
226
|
+
# The public continuation instruction.
|
|
227
|
+
sig { returns(String) }
|
|
228
|
+
attr_accessor :message
|
|
229
|
+
|
|
230
|
+
# An optional public continuation instruction.
|
|
231
|
+
sig do
|
|
232
|
+
params(
|
|
233
|
+
|
|
234
|
+
message: String
|
|
235
|
+
)
|
|
236
|
+
.returns(T.attached_class)
|
|
237
|
+
end
|
|
238
|
+
def self.new(
|
|
239
|
+
|
|
240
|
+
# The public continuation instruction.
|
|
241
|
+
|
|
242
|
+
message:
|
|
243
|
+
)
|
|
244
|
+
end
|
|
245
|
+
|
|
246
|
+
sig do
|
|
247
|
+
override.returns(
|
|
248
|
+
{message: String}
|
|
249
|
+
)
|
|
250
|
+
end
|
|
251
|
+
def to_hash
|
|
252
|
+
end
|
|
253
|
+
|
|
254
|
+
end
|
|
255
|
+
end
|
|
256
|
+
|
|
99
257
|
end
|
|
100
258
|
|
|
101
259
|
end
|
|
@@ -41,6 +41,13 @@ module OpenAI
|
|
|
41
41
|
sig { params(id: String).void }
|
|
42
42
|
attr_writer :id
|
|
43
43
|
|
|
44
|
+
# Whether the function tool call runs asynchronously.
|
|
45
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
46
|
+
attr_reader :async
|
|
47
|
+
|
|
48
|
+
sig { params(async: T::Boolean).void }
|
|
49
|
+
attr_writer :async
|
|
50
|
+
|
|
44
51
|
# The execution context that produced this tool call.
|
|
45
52
|
sig {
|
|
46
53
|
returns(
|
|
@@ -83,6 +90,8 @@ module OpenAI
|
|
|
83
90
|
|
|
84
91
|
id: String,
|
|
85
92
|
|
|
93
|
+
async: T::Boolean,
|
|
94
|
+
|
|
86
95
|
caller_: T.nilable(
|
|
87
96
|
T.any(
|
|
88
97
|
OpenAI::Responses::ResponseFunctionToolCall::Caller::Direct::OrHash,
|
|
@@ -112,6 +121,9 @@ module OpenAI
|
|
|
112
121
|
# The unique ID of the function tool call.
|
|
113
122
|
id: nil,
|
|
114
123
|
|
|
124
|
+
# Whether the function tool call runs asynchronously.
|
|
125
|
+
async: nil,
|
|
126
|
+
|
|
115
127
|
# The execution context that produced this tool call.
|
|
116
128
|
caller_: nil,
|
|
117
129
|
|
|
@@ -136,6 +148,7 @@ module OpenAI
|
|
|
136
148
|
name: String,
|
|
137
149
|
type: Symbol,
|
|
138
150
|
id: String,
|
|
151
|
+
async: T::Boolean,
|
|
139
152
|
caller_: T.nilable(
|
|
140
153
|
T.any(
|
|
141
154
|
OpenAI::Responses::ResponseFunctionToolCall::Caller::Direct,
|
|
@@ -46,6 +46,8 @@ module OpenAI
|
|
|
46
46
|
|
|
47
47
|
status: OpenAI::Responses::ResponseFunctionToolCallItem::Status::OrSymbol,
|
|
48
48
|
|
|
49
|
+
async: T::Boolean,
|
|
50
|
+
|
|
49
51
|
caller_: T.nilable(
|
|
50
52
|
T.any(
|
|
51
53
|
OpenAI::Responses::ResponseFunctionToolCall::Caller::Direct::OrHash,
|
|
@@ -79,6 +81,9 @@ module OpenAI
|
|
|
79
81
|
# Populated when items are returned via API.
|
|
80
82
|
status:,
|
|
81
83
|
|
|
84
|
+
# Whether the function tool call runs asynchronously.
|
|
85
|
+
async: nil,
|
|
86
|
+
|
|
82
87
|
# The execution context that produced this tool call.
|
|
83
88
|
caller_: nil,
|
|
84
89
|
|
|
@@ -103,6 +108,7 @@ module OpenAI
|
|
|
103
108
|
id: String,
|
|
104
109
|
status: OpenAI::Responses::ResponseFunctionToolCallItem::Status::TaggedSymbol,
|
|
105
110
|
type: Symbol,
|
|
111
|
+
async: T::Boolean,
|
|
106
112
|
caller_: T.nilable(
|
|
107
113
|
T.any(
|
|
108
114
|
OpenAI::Responses::ResponseFunctionToolCall::Caller::Direct,
|
|
@@ -30,6 +30,10 @@ module OpenAI
|
|
|
30
30
|
attr_accessor :type
|
|
31
31
|
|
|
32
32
|
# An event that is emitted when a response finishes as incomplete.
|
|
33
|
+
#
|
|
34
|
+
# Over WebSocket, steering can finish a response with
|
|
35
|
+
# `response.incomplete_details.reason` set to `steered`, followed automatically by
|
|
36
|
+
# a successor `response.created` that commits the queued steering input.
|
|
33
37
|
sig do
|
|
34
38
|
params(
|
|
35
39
|
|
|
@@ -27,6 +27,7 @@ module OpenAI
|
|
|
27
27
|
OpenAI::Responses::ResponseInputItem::ToolSearchCall,
|
|
28
28
|
OpenAI::Responses::ResponseToolSearchOutputItemParam,
|
|
29
29
|
OpenAI::Responses::ResponseInputItem::AdditionalTools,
|
|
30
|
+
OpenAI::Responses::ResponseConfigurationUpdateItemParam,
|
|
30
31
|
OpenAI::Responses::ResponseReasoningItem,
|
|
31
32
|
OpenAI::Responses::ResponseCompactionItemParam,
|
|
32
33
|
OpenAI::Responses::ResponseInputItem::ImageGenerationCall,
|
|
@@ -22,6 +22,7 @@ module OpenAI
|
|
|
22
22
|
OpenAI::Responses::ResponseToolSearchCall,
|
|
23
23
|
OpenAI::Responses::ResponseToolSearchOutputItem,
|
|
24
24
|
OpenAI::Responses::ResponseItem::AdditionalTools,
|
|
25
|
+
OpenAI::Responses::ResponseConfigurationUpdateItem,
|
|
25
26
|
OpenAI::Responses::ResponseReasoningItem,
|
|
26
27
|
OpenAI::Responses::ResponseItem::Program,
|
|
27
28
|
OpenAI::Responses::ResponseItem::ProgramOutput,
|
|
@@ -53,6 +53,7 @@ module OpenAI
|
|
|
53
53
|
OpenAI::Responses::ResponseToolSearchCall::OrHash,
|
|
54
54
|
OpenAI::Responses::ResponseToolSearchOutputItem::OrHash,
|
|
55
55
|
OpenAI::Responses::ResponseItem::AdditionalTools::OrHash,
|
|
56
|
+
OpenAI::Responses::ResponseConfigurationUpdateItem::OrHash,
|
|
56
57
|
OpenAI::Responses::ResponseReasoningItem::OrHash,
|
|
57
58
|
OpenAI::Responses::ResponseItem::Program::OrHash,
|
|
58
59
|
OpenAI::Responses::ResponseItem::ProgramOutput::OrHash,
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Responses
|
|
7
|
+
|
|
8
|
+
class ResponseSteerAcceptedEvent < OpenAI::Internal::Type::BaseModel
|
|
9
|
+
|
|
10
|
+
OrHash = T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
OpenAI::Responses::ResponseSteerAcceptedEvent,
|
|
13
|
+
OpenAI::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# The sequence number for this event.
|
|
18
|
+
sig { returns(Integer) }
|
|
19
|
+
attr_accessor :sequence_number
|
|
20
|
+
|
|
21
|
+
# The accepted steering submission.
|
|
22
|
+
sig { returns(OpenAI::Responses::ResponseSteerAcceptedEvent::Steer) }
|
|
23
|
+
attr_reader :steer
|
|
24
|
+
|
|
25
|
+
sig { params(steer: OpenAI::Responses::ResponseSteerAcceptedEvent::Steer::OrHash).void }
|
|
26
|
+
attr_writer :steer
|
|
27
|
+
|
|
28
|
+
# The event discriminator. Always `response.steer.accepted`.
|
|
29
|
+
sig { returns(Symbol) }
|
|
30
|
+
attr_accessor :type
|
|
31
|
+
|
|
32
|
+
# The WebSocket lane that emitted this event. This field is present when the
|
|
33
|
+
# target response's `response.create` event supplied a `stream_id`.
|
|
34
|
+
sig { returns(T.nilable(String)) }
|
|
35
|
+
attr_reader :stream_id
|
|
36
|
+
|
|
37
|
+
sig { params(stream_id: String).void }
|
|
38
|
+
attr_writer :stream_id
|
|
39
|
+
|
|
40
|
+
# Emitted when steering input has been validated and queued. Acceptance means the
|
|
41
|
+
# server owns the input, not that it has been applied. The successor's
|
|
42
|
+
# `response.created` event is the commit point. If accepted input cannot be
|
|
43
|
+
# committed, `response.steer.failed` returns it with the same steering ID.
|
|
44
|
+
#
|
|
45
|
+
# When the response stops for client-owned tool output or approval, the input
|
|
46
|
+
# remains queued and `response.steer.pending` is emitted after
|
|
47
|
+
# `response.completed`. Fill the pending event's `required_input` stubs with saved
|
|
48
|
+
# results and send one matching explicit `response.create` per parent. Do not
|
|
49
|
+
# resend accepted input while it is still queued.
|
|
50
|
+
sig do
|
|
51
|
+
params(
|
|
52
|
+
|
|
53
|
+
sequence_number: Integer,
|
|
54
|
+
|
|
55
|
+
steer: OpenAI::Responses::ResponseSteerAcceptedEvent::Steer::OrHash,
|
|
56
|
+
|
|
57
|
+
stream_id: String,
|
|
58
|
+
|
|
59
|
+
type: Symbol
|
|
60
|
+
)
|
|
61
|
+
.returns(T.attached_class)
|
|
62
|
+
end
|
|
63
|
+
def self.new(
|
|
64
|
+
|
|
65
|
+
# The sequence number for this event.
|
|
66
|
+
sequence_number:,
|
|
67
|
+
|
|
68
|
+
# The accepted steering submission.
|
|
69
|
+
steer:,
|
|
70
|
+
|
|
71
|
+
# The WebSocket lane that emitted this event. This field is present when the
|
|
72
|
+
# target response's `response.create` event supplied a `stream_id`.
|
|
73
|
+
stream_id: nil,
|
|
74
|
+
|
|
75
|
+
# The event discriminator. Always `response.steer.accepted`.
|
|
76
|
+
|
|
77
|
+
type: :"response.steer.accepted"
|
|
78
|
+
)
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
sig do
|
|
82
|
+
override.returns(
|
|
83
|
+
{
|
|
84
|
+
sequence_number: Integer,
|
|
85
|
+
steer: OpenAI::Responses::ResponseSteerAcceptedEvent::Steer,
|
|
86
|
+
type: Symbol,
|
|
87
|
+
stream_id: String
|
|
88
|
+
}
|
|
89
|
+
)
|
|
90
|
+
end
|
|
91
|
+
def to_hash
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
class Steer < OpenAI::Internal::Type::BaseModel
|
|
95
|
+
OrHash = T.type_alias do
|
|
96
|
+
T.any(
|
|
97
|
+
OpenAI::Responses::ResponseSteerAcceptedEvent::Steer,
|
|
98
|
+
OpenAI::Internal::AnyHash
|
|
99
|
+
)
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
# The ID assigned to the steering submission.
|
|
103
|
+
sig { returns(String) }
|
|
104
|
+
attr_accessor :id
|
|
105
|
+
|
|
106
|
+
# The ID of the response being steered.
|
|
107
|
+
sig { returns(String) }
|
|
108
|
+
attr_accessor :previous_response_id
|
|
109
|
+
|
|
110
|
+
# The accepted steering submission.
|
|
111
|
+
sig do
|
|
112
|
+
params(
|
|
113
|
+
|
|
114
|
+
id: String,
|
|
115
|
+
|
|
116
|
+
previous_response_id: String
|
|
117
|
+
)
|
|
118
|
+
.returns(T.attached_class)
|
|
119
|
+
end
|
|
120
|
+
def self.new(
|
|
121
|
+
|
|
122
|
+
# The ID assigned to the steering submission.
|
|
123
|
+
id:,
|
|
124
|
+
|
|
125
|
+
# The ID of the response being steered.
|
|
126
|
+
|
|
127
|
+
previous_response_id:
|
|
128
|
+
)
|
|
129
|
+
end
|
|
130
|
+
|
|
131
|
+
sig do
|
|
132
|
+
override.returns(
|
|
133
|
+
{id: String, previous_response_id: String}
|
|
134
|
+
)
|
|
135
|
+
end
|
|
136
|
+
def to_hash
|
|
137
|
+
end
|
|
138
|
+
|
|
139
|
+
end
|
|
140
|
+
|
|
141
|
+
end
|
|
142
|
+
|
|
143
|
+
end
|
|
144
|
+
|
|
145
|
+
end
|
|
146
|
+
end
|