openai 0.16.0 → 0.17.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 +24 -0
- data/README.md +14 -20
- data/lib/openai/internal/transport/base_client.rb +1 -1
- data/lib/openai/internal/type/enum.rb +6 -6
- data/lib/openai/internal/type/union.rb +13 -17
- data/lib/openai/models/beta/assistant_create_params.rb +4 -5
- data/lib/openai/models/beta/assistant_update_params.rb +22 -5
- data/lib/openai/models/beta/threads/run_create_params.rb +4 -5
- data/lib/openai/models/chat/chat_completion_allowed_tool_choice.rb +33 -0
- data/lib/openai/models/chat/chat_completion_allowed_tools.rb +64 -0
- data/lib/openai/models/chat/chat_completion_assistant_message_param.rb +3 -5
- data/lib/openai/models/chat/chat_completion_custom_tool.rb +163 -0
- data/lib/openai/models/chat/chat_completion_function_tool.rb +29 -0
- data/lib/openai/models/chat/chat_completion_message.rb +3 -5
- data/lib/openai/models/chat/chat_completion_message_custom_tool_call.rb +60 -0
- data/lib/openai/models/chat/chat_completion_message_function_tool_call.rb +73 -0
- data/lib/openai/models/chat/chat_completion_message_tool_call.rb +10 -56
- data/lib/openai/models/chat/chat_completion_named_tool_choice.rb +2 -2
- data/lib/openai/models/chat/chat_completion_named_tool_choice_custom.rb +42 -0
- data/lib/openai/models/chat/chat_completion_stream_options.rb +14 -1
- data/lib/openai/models/chat/chat_completion_tool.rb +12 -14
- data/lib/openai/models/chat/chat_completion_tool_choice_option.rb +7 -1
- data/lib/openai/models/chat/completion_create_params.rb +35 -12
- data/lib/openai/models/chat_model.rb +7 -0
- data/lib/openai/models/custom_tool_input_format.rb +76 -0
- data/lib/openai/models/evals/create_eval_completions_run_data_source.rb +3 -3
- data/lib/openai/models/evals/run_cancel_response.rb +2 -2
- data/lib/openai/models/evals/run_create_params.rb +2 -2
- data/lib/openai/models/evals/run_create_response.rb +2 -2
- data/lib/openai/models/evals/run_list_response.rb +2 -2
- data/lib/openai/models/evals/run_retrieve_response.rb +2 -2
- data/lib/openai/models/reasoning.rb +4 -5
- data/lib/openai/models/reasoning_effort.rb +4 -4
- data/lib/openai/models/response_format_text_grammar.rb +27 -0
- data/lib/openai/models/response_format_text_python.rb +20 -0
- data/lib/openai/models/responses/custom_tool.rb +48 -0
- data/lib/openai/models/responses/response.rb +20 -12
- data/lib/openai/models/responses/response_create_params.rb +48 -10
- data/lib/openai/models/responses/response_custom_tool_call.rb +55 -0
- data/lib/openai/models/responses/response_custom_tool_call_input_delta_event.rb +52 -0
- data/lib/openai/models/responses/response_custom_tool_call_input_done_event.rb +52 -0
- data/lib/openai/models/responses/response_custom_tool_call_output.rb +47 -0
- data/lib/openai/models/responses/response_input_item.rb +7 -1
- data/lib/openai/models/responses/response_output_item.rb +4 -1
- data/lib/openai/models/responses/response_output_item_added_event.rb +2 -2
- data/lib/openai/models/responses/response_output_item_done_event.rb +2 -2
- data/lib/openai/models/responses/response_reasoning_item.rb +36 -5
- data/lib/openai/models/responses/response_reasoning_text_delta_event.rb +63 -0
- data/lib/openai/models/responses/response_reasoning_text_done_event.rb +63 -0
- data/lib/openai/models/responses/response_retrieve_params.rb +14 -1
- data/lib/openai/models/responses/response_stream_event.rb +13 -11
- data/lib/openai/models/responses/response_text_config.rb +27 -1
- data/lib/openai/models/responses/tool.rb +5 -1
- data/lib/openai/models/responses/tool_choice_allowed.rb +73 -0
- data/lib/openai/models/responses/tool_choice_custom.rb +28 -0
- data/lib/openai/models/vector_store_search_params.rb +6 -1
- data/lib/openai/models.rb +6 -0
- data/lib/openai/resources/beta/assistants.rb +2 -2
- data/lib/openai/resources/beta/threads/runs.rb +2 -2
- data/lib/openai/resources/chat/completions.rb +16 -10
- data/lib/openai/resources/responses.rb +38 -22
- data/lib/openai/version.rb +1 -1
- data/lib/openai.rb +19 -2
- data/rbi/openai/internal/transport/base_client.rbi +1 -1
- data/rbi/openai/models/beta/assistant_create_params.rbi +6 -8
- data/rbi/openai/models/beta/assistant_update_params.rbi +36 -8
- data/rbi/openai/models/beta/threads/run_create_params.rbi +6 -8
- data/rbi/openai/models/chat/chat_completion_allowed_tool_choice.rbi +60 -0
- data/rbi/openai/models/chat/chat_completion_allowed_tools.rbi +118 -0
- data/rbi/openai/models/chat/chat_completion_assistant_message_param.rbi +27 -4
- data/rbi/openai/models/chat/chat_completion_custom_tool.rbi +335 -0
- data/rbi/openai/models/chat/chat_completion_function_tool.rbi +51 -0
- data/rbi/openai/models/chat/chat_completion_message.rbi +17 -4
- data/rbi/openai/models/chat/chat_completion_message_custom_tool_call.rbi +105 -0
- data/rbi/openai/models/chat/chat_completion_message_function_tool_call.rbi +118 -0
- data/rbi/openai/models/chat/chat_completion_message_tool_call.rbi +9 -92
- data/rbi/openai/models/chat/chat_completion_named_tool_choice.rbi +2 -2
- data/rbi/openai/models/chat/chat_completion_named_tool_choice_custom.rbi +89 -0
- data/rbi/openai/models/chat/chat_completion_stream_options.rbi +30 -2
- data/rbi/openai/models/chat/chat_completion_tool.rbi +11 -30
- data/rbi/openai/models/chat/chat_completion_tool_choice_option.rbi +3 -1
- data/rbi/openai/models/chat/completion_create_params.rbi +106 -25
- data/rbi/openai/models/chat_model.rbi +11 -0
- data/rbi/openai/models/custom_tool_input_format.rbi +136 -0
- data/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi +8 -4
- data/rbi/openai/models/evals/run_cancel_response.rbi +2 -0
- data/rbi/openai/models/evals/run_create_params.rbi +4 -0
- data/rbi/openai/models/evals/run_create_response.rbi +2 -0
- data/rbi/openai/models/evals/run_list_response.rbi +2 -0
- data/rbi/openai/models/evals/run_retrieve_response.rbi +2 -0
- data/rbi/openai/models/reasoning.rbi +6 -8
- data/rbi/openai/models/reasoning_effort.rbi +4 -4
- data/rbi/openai/models/response_format_text_grammar.rbi +35 -0
- data/rbi/openai/models/response_format_text_python.rbi +30 -0
- data/rbi/openai/models/responses/custom_tool.rbi +96 -0
- data/rbi/openai/models/responses/response.rbi +15 -5
- data/rbi/openai/models/responses/response_create_params.rbi +94 -7
- data/rbi/openai/models/responses/response_custom_tool_call.rbi +78 -0
- data/rbi/openai/models/responses/response_custom_tool_call_input_delta_event.rbi +75 -0
- data/rbi/openai/models/responses/response_custom_tool_call_input_done_event.rbi +75 -0
- data/rbi/openai/models/responses/response_custom_tool_call_output.rbi +65 -0
- data/rbi/openai/models/responses/response_input_item.rbi +2 -0
- data/rbi/openai/models/responses/response_output_item.rbi +2 -1
- data/rbi/openai/models/responses/response_output_item_added_event.rbi +2 -1
- data/rbi/openai/models/responses/response_output_item_done_event.rbi +2 -1
- data/rbi/openai/models/responses/response_reasoning_item.rbi +63 -4
- data/rbi/openai/models/responses/response_reasoning_text_delta_event.rbi +83 -0
- data/rbi/openai/models/responses/{response_reasoning_summary_done_event.rbi → response_reasoning_text_done_event.rbi} +20 -20
- data/rbi/openai/models/responses/response_retrieve_params.rbi +21 -0
- data/rbi/openai/models/responses/response_stream_event.rbi +4 -2
- data/rbi/openai/models/responses/response_text_config.rbi +64 -1
- data/rbi/openai/models/responses/tool.rbi +1 -0
- data/rbi/openai/models/responses/tool_choice_allowed.rbi +124 -0
- data/rbi/openai/models/responses/tool_choice_custom.rbi +39 -0
- data/rbi/openai/models/vector_store_search_params.rbi +12 -1
- data/rbi/openai/models.rbi +6 -0
- data/rbi/openai/resources/beta/assistants.rbi +6 -8
- data/rbi/openai/resources/beta/threads/runs.rbi +8 -10
- data/rbi/openai/resources/chat/completions.rbi +44 -19
- data/rbi/openai/resources/responses.rbi +215 -41
- data/sig/openai/internal/transport/base_client.rbs +1 -1
- data/sig/openai/models/beta/assistant_update_params.rbs +12 -0
- data/sig/openai/models/chat/chat_completion_allowed_tool_choice.rbs +29 -0
- data/sig/openai/models/chat/chat_completion_allowed_tools.rbs +38 -0
- data/sig/openai/models/chat/chat_completion_assistant_message_param.rbs +6 -6
- data/sig/openai/models/chat/chat_completion_custom_tool.rbs +137 -0
- data/sig/openai/models/chat/chat_completion_function_tool.rbs +26 -0
- data/sig/openai/models/chat/chat_completion_message.rbs +6 -6
- data/sig/openai/models/chat/chat_completion_message_custom_tool_call.rbs +46 -0
- data/sig/openai/models/chat/chat_completion_message_function_tool_call.rbs +46 -0
- data/sig/openai/models/chat/chat_completion_message_tool_call.rbs +6 -35
- data/sig/openai/models/chat/chat_completion_named_tool_choice_custom.rbs +39 -0
- data/sig/openai/models/chat/chat_completion_stream_options.rbs +11 -3
- data/sig/openai/models/chat/chat_completion_tool.rbs +6 -15
- data/sig/openai/models/chat/chat_completion_tool_choice_option.rbs +2 -0
- data/sig/openai/models/chat/completion_create_params.rbs +23 -6
- data/sig/openai/models/chat_model.rbs +15 -1
- data/sig/openai/models/custom_tool_input_format.rbs +61 -0
- data/sig/openai/models/evals/create_eval_completions_run_data_source.rbs +6 -6
- data/sig/openai/models/reasoning_effort.rbs +2 -1
- data/sig/openai/models/response_format_text_grammar.rbs +15 -0
- data/sig/openai/models/response_format_text_python.rbs +13 -0
- data/sig/openai/models/responses/custom_tool.rbs +43 -0
- data/sig/openai/models/responses/response.rbs +2 -0
- data/sig/openai/models/responses/response_create_params.rbs +19 -0
- data/sig/openai/models/responses/response_custom_tool_call.rbs +44 -0
- data/sig/openai/models/responses/response_custom_tool_call_input_delta_event.rbs +42 -0
- data/sig/openai/models/responses/response_custom_tool_call_input_done_event.rbs +42 -0
- data/sig/openai/models/responses/response_custom_tool_call_output.rbs +39 -0
- data/sig/openai/models/responses/response_input_item.rbs +2 -0
- data/sig/openai/models/responses/response_output_item.rbs +1 -0
- data/sig/openai/models/responses/response_reasoning_item.rbs +21 -0
- data/sig/openai/models/responses/{response_reasoning_summary_delta_event.rbs → response_reasoning_text_delta_event.rbs} +15 -15
- data/sig/openai/models/responses/{response_reasoning_summary_done_event.rbs → response_reasoning_text_done_event.rbs} +11 -11
- data/sig/openai/models/responses/response_retrieve_params.rbs +7 -0
- data/sig/openai/models/responses/response_stream_event.rbs +4 -2
- data/sig/openai/models/responses/response_text_config.rbs +22 -3
- data/sig/openai/models/responses/tool.rbs +1 -0
- data/sig/openai/models/responses/tool_choice_allowed.rbs +43 -0
- data/sig/openai/models/responses/tool_choice_custom.rbs +17 -0
- data/sig/openai/models/vector_store_search_params.rbs +2 -1
- data/sig/openai/models.rbs +6 -0
- data/sig/openai/resources/chat/completions.rbs +4 -2
- data/sig/openai/resources/responses.rbs +32 -0
- metadata +59 -8
- data/lib/openai/models/responses/response_reasoning_summary_delta_event.rb +0 -65
- data/lib/openai/models/responses/response_reasoning_summary_done_event.rb +0 -60
- data/rbi/openai/models/responses/response_reasoning_summary_delta_event.rbi +0 -85
@@ -0,0 +1,52 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
module Responses
|
6
|
+
class ResponseCustomToolCallInputDoneEvent < OpenAI::Internal::Type::BaseModel
|
7
|
+
# @!attribute input
|
8
|
+
# The complete input data for the custom tool call.
|
9
|
+
#
|
10
|
+
# @return [String]
|
11
|
+
required :input, String
|
12
|
+
|
13
|
+
# @!attribute item_id
|
14
|
+
# Unique identifier for the API item associated with this event.
|
15
|
+
#
|
16
|
+
# @return [String]
|
17
|
+
required :item_id, String
|
18
|
+
|
19
|
+
# @!attribute output_index
|
20
|
+
# The index of the output this event applies to.
|
21
|
+
#
|
22
|
+
# @return [Integer]
|
23
|
+
required :output_index, Integer
|
24
|
+
|
25
|
+
# @!attribute sequence_number
|
26
|
+
# The sequence number of this event.
|
27
|
+
#
|
28
|
+
# @return [Integer]
|
29
|
+
required :sequence_number, Integer
|
30
|
+
|
31
|
+
# @!attribute type
|
32
|
+
# The event type identifier.
|
33
|
+
#
|
34
|
+
# @return [Symbol, :"response.custom_tool_call_input.done"]
|
35
|
+
required :type, const: :"response.custom_tool_call_input.done"
|
36
|
+
|
37
|
+
# @!method initialize(input:, item_id:, output_index:, sequence_number:, type: :"response.custom_tool_call_input.done")
|
38
|
+
# Event indicating that input for a custom tool call is complete.
|
39
|
+
#
|
40
|
+
# @param input [String] The complete input data for the custom tool call.
|
41
|
+
#
|
42
|
+
# @param item_id [String] Unique identifier for the API item associated with this event.
|
43
|
+
#
|
44
|
+
# @param output_index [Integer] The index of the output this event applies to.
|
45
|
+
#
|
46
|
+
# @param sequence_number [Integer] The sequence number of this event.
|
47
|
+
#
|
48
|
+
# @param type [Symbol, :"response.custom_tool_call_input.done"] The event type identifier.
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
@@ -0,0 +1,47 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
module Responses
|
6
|
+
class ResponseCustomToolCallOutput < OpenAI::Internal::Type::BaseModel
|
7
|
+
# @!attribute call_id
|
8
|
+
# The call ID, used to map this custom tool call output to a custom tool call.
|
9
|
+
#
|
10
|
+
# @return [String]
|
11
|
+
required :call_id, String
|
12
|
+
|
13
|
+
# @!attribute output
|
14
|
+
# The output from the custom tool call generated by your code.
|
15
|
+
#
|
16
|
+
# @return [String]
|
17
|
+
required :output, String
|
18
|
+
|
19
|
+
# @!attribute type
|
20
|
+
# The type of the custom tool call output. Always `custom_tool_call_output`.
|
21
|
+
#
|
22
|
+
# @return [Symbol, :custom_tool_call_output]
|
23
|
+
required :type, const: :custom_tool_call_output
|
24
|
+
|
25
|
+
# @!attribute id
|
26
|
+
# The unique ID of the custom tool call output in the OpenAI platform.
|
27
|
+
#
|
28
|
+
# @return [String, nil]
|
29
|
+
optional :id, String
|
30
|
+
|
31
|
+
# @!method initialize(call_id:, output:, id: nil, type: :custom_tool_call_output)
|
32
|
+
# Some parameter documentations has been truncated, see
|
33
|
+
# {OpenAI::Models::Responses::ResponseCustomToolCallOutput} for more details.
|
34
|
+
#
|
35
|
+
# The output of a custom tool call from your code, being sent back to the model.
|
36
|
+
#
|
37
|
+
# @param call_id [String] The call ID, used to map this custom tool call output to a custom tool call.
|
38
|
+
#
|
39
|
+
# @param output [String] The output from the custom tool call generated by your code.
|
40
|
+
#
|
41
|
+
# @param id [String] The unique ID of the custom tool call output in the OpenAI platform.
|
42
|
+
#
|
43
|
+
# @param type [Symbol, :custom_tool_call_output] The type of the custom tool call output. Always `custom_tool_call_output`.
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
@@ -80,6 +80,12 @@ module OpenAI
|
|
80
80
|
# An invocation of a tool on an MCP server.
|
81
81
|
variant :mcp_call, -> { OpenAI::Responses::ResponseInputItem::McpCall }
|
82
82
|
|
83
|
+
# The output of a custom tool call from your code, being sent back to the model.
|
84
|
+
variant :custom_tool_call_output, -> { OpenAI::Responses::ResponseCustomToolCallOutput }
|
85
|
+
|
86
|
+
# A call to a custom tool created by the model.
|
87
|
+
variant :custom_tool_call, -> { OpenAI::Responses::ResponseCustomToolCall }
|
88
|
+
|
83
89
|
# An internal identifier for an item to reference.
|
84
90
|
variant :item_reference, -> { OpenAI::Responses::ResponseInputItem::ItemReference }
|
85
91
|
|
@@ -869,7 +875,7 @@ module OpenAI
|
|
869
875
|
end
|
870
876
|
|
871
877
|
# @!method self.variants
|
872
|
-
# @return [Array(OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference)]
|
878
|
+
# @return [Array(OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseInputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCall, OpenAI::Models::Responses::ResponseInputItem::LocalShellCallOutput, OpenAI::Models::Responses::ResponseInputItem::McpListTools, OpenAI::Models::Responses::ResponseInputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseInputItem::McpApprovalResponse, OpenAI::Models::Responses::ResponseInputItem::McpCall, OpenAI::Models::Responses::ResponseCustomToolCallOutput, OpenAI::Models::Responses::ResponseCustomToolCall, OpenAI::Models::Responses::ResponseInputItem::ItemReference)]
|
873
879
|
end
|
874
880
|
end
|
875
881
|
end
|
@@ -52,6 +52,9 @@ module OpenAI
|
|
52
52
|
# A request for human approval of a tool invocation.
|
53
53
|
variant :mcp_approval_request, -> { OpenAI::Responses::ResponseOutputItem::McpApprovalRequest }
|
54
54
|
|
55
|
+
# A call to a custom tool created by the model.
|
56
|
+
variant :custom_tool_call, -> { OpenAI::Responses::ResponseCustomToolCall }
|
57
|
+
|
55
58
|
class ImageGenerationCall < OpenAI::Internal::Type::BaseModel
|
56
59
|
# @!attribute id
|
57
60
|
# The unique ID of the image generation call.
|
@@ -435,7 +438,7 @@ module OpenAI
|
|
435
438
|
end
|
436
439
|
|
437
440
|
# @!method self.variants
|
438
|
-
# @return [Array(OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseOutputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCall, OpenAI::Models::Responses::ResponseOutputItem::McpCall, OpenAI::Models::Responses::ResponseOutputItem::McpListTools, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalRequest)]
|
441
|
+
# @return [Array(OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseOutputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCall, OpenAI::Models::Responses::ResponseOutputItem::McpCall, OpenAI::Models::Responses::ResponseOutputItem::McpListTools, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseCustomToolCall)]
|
439
442
|
end
|
440
443
|
end
|
441
444
|
end
|
@@ -7,7 +7,7 @@ module OpenAI
|
|
7
7
|
# @!attribute item
|
8
8
|
# The output item that was added.
|
9
9
|
#
|
10
|
-
# @return [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseOutputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCall, OpenAI::Models::Responses::ResponseOutputItem::McpCall, OpenAI::Models::Responses::ResponseOutputItem::McpListTools, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalRequest]
|
10
|
+
# @return [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseOutputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCall, OpenAI::Models::Responses::ResponseOutputItem::McpCall, OpenAI::Models::Responses::ResponseOutputItem::McpListTools, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseCustomToolCall]
|
11
11
|
required :item, union: -> { OpenAI::Responses::ResponseOutputItem }
|
12
12
|
|
13
13
|
# @!attribute output_index
|
@@ -34,7 +34,7 @@ module OpenAI
|
|
34
34
|
#
|
35
35
|
# Emitted when a new output item is added.
|
36
36
|
#
|
37
|
-
# @param item [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseOutputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCall, OpenAI::Models::Responses::ResponseOutputItem::McpCall, OpenAI::Models::Responses::ResponseOutputItem::McpListTools, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalRequest] The output item that was added.
|
37
|
+
# @param item [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseOutputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCall, OpenAI::Models::Responses::ResponseOutputItem::McpCall, OpenAI::Models::Responses::ResponseOutputItem::McpListTools, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseCustomToolCall] The output item that was added.
|
38
38
|
#
|
39
39
|
# @param output_index [Integer] The index of the output item that was added.
|
40
40
|
#
|
@@ -7,7 +7,7 @@ module OpenAI
|
|
7
7
|
# @!attribute item
|
8
8
|
# The output item that was marked done.
|
9
9
|
#
|
10
|
-
# @return [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseOutputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCall, OpenAI::Models::Responses::ResponseOutputItem::McpCall, OpenAI::Models::Responses::ResponseOutputItem::McpListTools, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalRequest]
|
10
|
+
# @return [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseOutputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCall, OpenAI::Models::Responses::ResponseOutputItem::McpCall, OpenAI::Models::Responses::ResponseOutputItem::McpListTools, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseCustomToolCall]
|
11
11
|
required :item, union: -> { OpenAI::Responses::ResponseOutputItem }
|
12
12
|
|
13
13
|
# @!attribute output_index
|
@@ -34,7 +34,7 @@ module OpenAI
|
|
34
34
|
#
|
35
35
|
# Emitted when an output item is marked done.
|
36
36
|
#
|
37
|
-
# @param item [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseOutputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCall, OpenAI::Models::Responses::ResponseOutputItem::McpCall, OpenAI::Models::Responses::ResponseOutputItem::McpListTools, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalRequest] The output item that was marked done.
|
37
|
+
# @param item [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseOutputItem::ImageGenerationCall, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Models::Responses::ResponseOutputItem::LocalShellCall, OpenAI::Models::Responses::ResponseOutputItem::McpCall, OpenAI::Models::Responses::ResponseOutputItem::McpListTools, OpenAI::Models::Responses::ResponseOutputItem::McpApprovalRequest, OpenAI::Models::Responses::ResponseCustomToolCall] The output item that was marked done.
|
38
38
|
#
|
39
39
|
# @param output_index [Integer] The index of the output item that was marked done.
|
40
40
|
#
|
@@ -11,7 +11,7 @@ module OpenAI
|
|
11
11
|
required :id, String
|
12
12
|
|
13
13
|
# @!attribute summary
|
14
|
-
# Reasoning
|
14
|
+
# Reasoning summary content.
|
15
15
|
#
|
16
16
|
# @return [Array<OpenAI::Models::Responses::ResponseReasoningItem::Summary>]
|
17
17
|
required :summary,
|
@@ -23,6 +23,13 @@ module OpenAI
|
|
23
23
|
# @return [Symbol, :reasoning]
|
24
24
|
required :type, const: :reasoning
|
25
25
|
|
26
|
+
# @!attribute content
|
27
|
+
# Reasoning text content.
|
28
|
+
#
|
29
|
+
# @return [Array<OpenAI::Models::Responses::ResponseReasoningItem::Content>, nil]
|
30
|
+
optional :content,
|
31
|
+
-> { OpenAI::Internal::Type::ArrayOf[OpenAI::Responses::ResponseReasoningItem::Content] }
|
32
|
+
|
26
33
|
# @!attribute encrypted_content
|
27
34
|
# The encrypted content of the reasoning item - populated when a response is
|
28
35
|
# generated with `reasoning.encrypted_content` in the `include` parameter.
|
@@ -37,7 +44,7 @@ module OpenAI
|
|
37
44
|
# @return [Symbol, OpenAI::Models::Responses::ResponseReasoningItem::Status, nil]
|
38
45
|
optional :status, enum: -> { OpenAI::Responses::ResponseReasoningItem::Status }
|
39
46
|
|
40
|
-
# @!method initialize(id:, summary:, encrypted_content: nil, status: nil, type: :reasoning)
|
47
|
+
# @!method initialize(id:, summary:, content: nil, encrypted_content: nil, status: nil, type: :reasoning)
|
41
48
|
# Some parameter documentations has been truncated, see
|
42
49
|
# {OpenAI::Models::Responses::ResponseReasoningItem} for more details.
|
43
50
|
#
|
@@ -48,7 +55,9 @@ module OpenAI
|
|
48
55
|
#
|
49
56
|
# @param id [String] The unique identifier of the reasoning content.
|
50
57
|
#
|
51
|
-
# @param summary [Array<OpenAI::Models::Responses::ResponseReasoningItem::Summary>] Reasoning
|
58
|
+
# @param summary [Array<OpenAI::Models::Responses::ResponseReasoningItem::Summary>] Reasoning summary content.
|
59
|
+
#
|
60
|
+
# @param content [Array<OpenAI::Models::Responses::ResponseReasoningItem::Content>] Reasoning text content.
|
52
61
|
#
|
53
62
|
# @param encrypted_content [String, nil] The encrypted content of the reasoning item - populated when a response is
|
54
63
|
#
|
@@ -58,7 +67,7 @@ module OpenAI
|
|
58
67
|
|
59
68
|
class Summary < OpenAI::Internal::Type::BaseModel
|
60
69
|
# @!attribute text
|
61
|
-
# A
|
70
|
+
# A summary of the reasoning output from the model so far.
|
62
71
|
#
|
63
72
|
# @return [String]
|
64
73
|
required :text, String
|
@@ -73,11 +82,33 @@ module OpenAI
|
|
73
82
|
# Some parameter documentations has been truncated, see
|
74
83
|
# {OpenAI::Models::Responses::ResponseReasoningItem::Summary} for more details.
|
75
84
|
#
|
76
|
-
# @param text [String] A
|
85
|
+
# @param text [String] A summary of the reasoning output from the model so far.
|
77
86
|
#
|
78
87
|
# @param type [Symbol, :summary_text] The type of the object. Always `summary_text`.
|
79
88
|
end
|
80
89
|
|
90
|
+
class Content < OpenAI::Internal::Type::BaseModel
|
91
|
+
# @!attribute text
|
92
|
+
# Reasoning text output from the model.
|
93
|
+
#
|
94
|
+
# @return [String]
|
95
|
+
required :text, String
|
96
|
+
|
97
|
+
# @!attribute type
|
98
|
+
# The type of the object. Always `reasoning_text`.
|
99
|
+
#
|
100
|
+
# @return [Symbol, :reasoning_text]
|
101
|
+
required :type, const: :reasoning_text
|
102
|
+
|
103
|
+
# @!method initialize(text:, type: :reasoning_text)
|
104
|
+
# Some parameter documentations has been truncated, see
|
105
|
+
# {OpenAI::Models::Responses::ResponseReasoningItem::Content} for more details.
|
106
|
+
#
|
107
|
+
# @param text [String] Reasoning text output from the model.
|
108
|
+
#
|
109
|
+
# @param type [Symbol, :reasoning_text] The type of the object. Always `reasoning_text`.
|
110
|
+
end
|
111
|
+
|
81
112
|
# The status of the item. One of `in_progress`, `completed`, or `incomplete`.
|
82
113
|
# Populated when items are returned via API.
|
83
114
|
#
|
@@ -0,0 +1,63 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
module Responses
|
6
|
+
class ResponseReasoningTextDeltaEvent < OpenAI::Internal::Type::BaseModel
|
7
|
+
# @!attribute content_index
|
8
|
+
# The index of the reasoning content part this delta is associated with.
|
9
|
+
#
|
10
|
+
# @return [Integer]
|
11
|
+
required :content_index, Integer
|
12
|
+
|
13
|
+
# @!attribute delta
|
14
|
+
# The text delta that was added to the reasoning content.
|
15
|
+
#
|
16
|
+
# @return [String]
|
17
|
+
required :delta, String
|
18
|
+
|
19
|
+
# @!attribute item_id
|
20
|
+
# The ID of the item this reasoning text delta is associated with.
|
21
|
+
#
|
22
|
+
# @return [String]
|
23
|
+
required :item_id, String
|
24
|
+
|
25
|
+
# @!attribute output_index
|
26
|
+
# The index of the output item this reasoning text delta is associated with.
|
27
|
+
#
|
28
|
+
# @return [Integer]
|
29
|
+
required :output_index, Integer
|
30
|
+
|
31
|
+
# @!attribute sequence_number
|
32
|
+
# The sequence number of this event.
|
33
|
+
#
|
34
|
+
# @return [Integer]
|
35
|
+
required :sequence_number, Integer
|
36
|
+
|
37
|
+
# @!attribute type
|
38
|
+
# The type of the event. Always `response.reasoning_text.delta`.
|
39
|
+
#
|
40
|
+
# @return [Symbol, :"response.reasoning_text.delta"]
|
41
|
+
required :type, const: :"response.reasoning_text.delta"
|
42
|
+
|
43
|
+
# @!method initialize(content_index:, delta:, item_id:, output_index:, sequence_number:, type: :"response.reasoning_text.delta")
|
44
|
+
# Some parameter documentations has been truncated, see
|
45
|
+
# {OpenAI::Models::Responses::ResponseReasoningTextDeltaEvent} for more details.
|
46
|
+
#
|
47
|
+
# Emitted when a delta is added to a reasoning text.
|
48
|
+
#
|
49
|
+
# @param content_index [Integer] The index of the reasoning content part this delta is associated with.
|
50
|
+
#
|
51
|
+
# @param delta [String] The text delta that was added to the reasoning content.
|
52
|
+
#
|
53
|
+
# @param item_id [String] The ID of the item this reasoning text delta is associated with.
|
54
|
+
#
|
55
|
+
# @param output_index [Integer] The index of the output item this reasoning text delta is associated with.
|
56
|
+
#
|
57
|
+
# @param sequence_number [Integer] The sequence number of this event.
|
58
|
+
#
|
59
|
+
# @param type [Symbol, :"response.reasoning_text.delta"] The type of the event. Always `response.reasoning_text.delta`.
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
@@ -0,0 +1,63 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
module Responses
|
6
|
+
class ResponseReasoningTextDoneEvent < OpenAI::Internal::Type::BaseModel
|
7
|
+
# @!attribute content_index
|
8
|
+
# The index of the reasoning content part.
|
9
|
+
#
|
10
|
+
# @return [Integer]
|
11
|
+
required :content_index, Integer
|
12
|
+
|
13
|
+
# @!attribute item_id
|
14
|
+
# The ID of the item this reasoning text is associated with.
|
15
|
+
#
|
16
|
+
# @return [String]
|
17
|
+
required :item_id, String
|
18
|
+
|
19
|
+
# @!attribute output_index
|
20
|
+
# The index of the output item this reasoning text is associated with.
|
21
|
+
#
|
22
|
+
# @return [Integer]
|
23
|
+
required :output_index, Integer
|
24
|
+
|
25
|
+
# @!attribute sequence_number
|
26
|
+
# The sequence number of this event.
|
27
|
+
#
|
28
|
+
# @return [Integer]
|
29
|
+
required :sequence_number, Integer
|
30
|
+
|
31
|
+
# @!attribute text
|
32
|
+
# The full text of the completed reasoning content.
|
33
|
+
#
|
34
|
+
# @return [String]
|
35
|
+
required :text, String
|
36
|
+
|
37
|
+
# @!attribute type
|
38
|
+
# The type of the event. Always `response.reasoning_text.done`.
|
39
|
+
#
|
40
|
+
# @return [Symbol, :"response.reasoning_text.done"]
|
41
|
+
required :type, const: :"response.reasoning_text.done"
|
42
|
+
|
43
|
+
# @!method initialize(content_index:, item_id:, output_index:, sequence_number:, text:, type: :"response.reasoning_text.done")
|
44
|
+
# Some parameter documentations has been truncated, see
|
45
|
+
# {OpenAI::Models::Responses::ResponseReasoningTextDoneEvent} for more details.
|
46
|
+
#
|
47
|
+
# Emitted when a reasoning text is completed.
|
48
|
+
#
|
49
|
+
# @param content_index [Integer] The index of the reasoning content part.
|
50
|
+
#
|
51
|
+
# @param item_id [String] The ID of the item this reasoning text is associated with.
|
52
|
+
#
|
53
|
+
# @param output_index [Integer] The index of the output item this reasoning text is associated with.
|
54
|
+
#
|
55
|
+
# @param sequence_number [Integer] The sequence number of this event.
|
56
|
+
#
|
57
|
+
# @param text [String] The full text of the completed reasoning content.
|
58
|
+
#
|
59
|
+
# @param type [Symbol, :"response.reasoning_text.done"] The type of the event. Always `response.reasoning_text.done`.
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
@@ -17,18 +17,31 @@ module OpenAI
|
|
17
17
|
# @return [Array<Symbol, OpenAI::Models::Responses::ResponseIncludable>, nil]
|
18
18
|
optional :include, -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Responses::ResponseIncludable] }
|
19
19
|
|
20
|
+
# @!attribute include_obfuscation
|
21
|
+
# When true, stream obfuscation will be enabled. Stream obfuscation adds random
|
22
|
+
# characters to an `obfuscation` field on streaming delta events to normalize
|
23
|
+
# payload sizes as a mitigation to certain side-channel attacks. These obfuscation
|
24
|
+
# fields are included by default, but add a small amount of overhead to the data
|
25
|
+
# stream. You can set `include_obfuscation` to false to optimize for bandwidth if
|
26
|
+
# you trust the network links between your application and the OpenAI API.
|
27
|
+
#
|
28
|
+
# @return [Boolean, nil]
|
29
|
+
optional :include_obfuscation, OpenAI::Internal::Type::Boolean
|
30
|
+
|
20
31
|
# @!attribute starting_after
|
21
32
|
# The sequence number of the event after which to start streaming.
|
22
33
|
#
|
23
34
|
# @return [Integer, nil]
|
24
35
|
optional :starting_after, Integer
|
25
36
|
|
26
|
-
# @!method initialize(include: nil, starting_after: nil, request_options: {})
|
37
|
+
# @!method initialize(include: nil, include_obfuscation: nil, starting_after: nil, request_options: {})
|
27
38
|
# Some parameter documentations has been truncated, see
|
28
39
|
# {OpenAI::Models::Responses::ResponseRetrieveParams} for more details.
|
29
40
|
#
|
30
41
|
# @param include [Array<Symbol, OpenAI::Models::Responses::ResponseIncludable>] Additional fields to include in the response. See the `include`
|
31
42
|
#
|
43
|
+
# @param include_obfuscation [Boolean] When true, stream obfuscation will be enabled. Stream obfuscation adds
|
44
|
+
#
|
32
45
|
# @param starting_after [Integer] The sequence number of the event after which to start streaming.
|
33
46
|
#
|
34
47
|
# @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
|
@@ -110,6 +110,12 @@ module OpenAI
|
|
110
110
|
variant :"response.reasoning_summary_text.done",
|
111
111
|
-> { OpenAI::Responses::ResponseReasoningSummaryTextDoneEvent }
|
112
112
|
|
113
|
+
# Emitted when a delta is added to a reasoning text.
|
114
|
+
variant :"response.reasoning_text.delta", -> { OpenAI::Responses::ResponseReasoningTextDeltaEvent }
|
115
|
+
|
116
|
+
# Emitted when a reasoning text is completed.
|
117
|
+
variant :"response.reasoning_text.done", -> { OpenAI::Responses::ResponseReasoningTextDoneEvent }
|
118
|
+
|
113
119
|
# Emitted when there is a partial refusal text.
|
114
120
|
variant :"response.refusal.delta", -> { OpenAI::Responses::ResponseRefusalDeltaEvent }
|
115
121
|
|
@@ -191,20 +197,16 @@ module OpenAI
|
|
191
197
|
# Emitted when a response is queued and waiting to be processed.
|
192
198
|
variant :"response.queued", -> { OpenAI::Responses::ResponseQueuedEvent }
|
193
199
|
|
194
|
-
#
|
195
|
-
variant :"response.
|
196
|
-
-> {
|
197
|
-
OpenAI::Responses::ResponseReasoningSummaryDeltaEvent
|
198
|
-
}
|
200
|
+
# Event representing a delta (partial update) to the input of a custom tool call.
|
201
|
+
variant :"response.custom_tool_call_input.delta",
|
202
|
+
-> { OpenAI::Responses::ResponseCustomToolCallInputDeltaEvent }
|
199
203
|
|
200
|
-
#
|
201
|
-
variant :"response.
|
202
|
-
-> {
|
203
|
-
OpenAI::Responses::ResponseReasoningSummaryDoneEvent
|
204
|
-
}
|
204
|
+
# Event indicating that input for a custom tool call is complete.
|
205
|
+
variant :"response.custom_tool_call_input.done",
|
206
|
+
-> { OpenAI::Responses::ResponseCustomToolCallInputDoneEvent }
|
205
207
|
|
206
208
|
# @!method self.variants
|
207
|
-
# @return [Array(OpenAI::Models::Responses::ResponseAudioDeltaEvent, OpenAI::Models::Responses::ResponseAudioDoneEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDeltaEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCompletedEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInProgressEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInterpretingEvent, OpenAI::Models::Responses::ResponseCompletedEvent, OpenAI::Models::Responses::ResponseContentPartAddedEvent, OpenAI::Models::Responses::ResponseContentPartDoneEvent, OpenAI::Models::Responses::ResponseCreatedEvent, OpenAI::Models::Responses::ResponseErrorEvent, OpenAI::Models::Responses::ResponseFileSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseFileSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseFileSearchCallSearchingEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDeltaEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDoneEvent, OpenAI::Models::Responses::ResponseInProgressEvent, OpenAI::Models::Responses::ResponseFailedEvent, OpenAI::Models::Responses::ResponseIncompleteEvent, OpenAI::Models::Responses::ResponseOutputItemAddedEvent, OpenAI::Models::Responses::ResponseOutputItemDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDeltaEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDoneEvent, OpenAI::Models::Responses::ResponseRefusalDeltaEvent, OpenAI::Models::Responses::ResponseRefusalDoneEvent, OpenAI::Models::Responses::ResponseTextDeltaEvent, OpenAI::Models::Responses::ResponseTextDoneEvent, OpenAI::Models::Responses::ResponseWebSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseWebSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseWebSearchCallSearchingEvent, OpenAI::Models::Responses::ResponseImageGenCallCompletedEvent, OpenAI::Models::Responses::ResponseImageGenCallGeneratingEvent, OpenAI::Models::Responses::ResponseImageGenCallInProgressEvent, OpenAI::Models::Responses::ResponseImageGenCallPartialImageEvent, OpenAI::Models::Responses::ResponseMcpCallArgumentsDeltaEvent, OpenAI::Models::Responses::ResponseMcpCallArgumentsDoneEvent, OpenAI::Models::Responses::ResponseMcpCallCompletedEvent, OpenAI::Models::Responses::ResponseMcpCallFailedEvent, OpenAI::Models::Responses::ResponseMcpCallInProgressEvent, OpenAI::Models::Responses::ResponseMcpListToolsCompletedEvent, OpenAI::Models::Responses::ResponseMcpListToolsFailedEvent, OpenAI::Models::Responses::ResponseMcpListToolsInProgressEvent, OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent, OpenAI::Models::Responses::ResponseQueuedEvent, OpenAI::Models::Responses::
|
209
|
+
# @return [Array(OpenAI::Models::Responses::ResponseAudioDeltaEvent, OpenAI::Models::Responses::ResponseAudioDoneEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDeltaEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCompletedEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInProgressEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInterpretingEvent, OpenAI::Models::Responses::ResponseCompletedEvent, OpenAI::Models::Responses::ResponseContentPartAddedEvent, OpenAI::Models::Responses::ResponseContentPartDoneEvent, OpenAI::Models::Responses::ResponseCreatedEvent, OpenAI::Models::Responses::ResponseErrorEvent, OpenAI::Models::Responses::ResponseFileSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseFileSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseFileSearchCallSearchingEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDeltaEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDoneEvent, OpenAI::Models::Responses::ResponseInProgressEvent, OpenAI::Models::Responses::ResponseFailedEvent, OpenAI::Models::Responses::ResponseIncompleteEvent, OpenAI::Models::Responses::ResponseOutputItemAddedEvent, OpenAI::Models::Responses::ResponseOutputItemDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDeltaEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDoneEvent, OpenAI::Models::Responses::ResponseReasoningTextDeltaEvent, OpenAI::Models::Responses::ResponseReasoningTextDoneEvent, OpenAI::Models::Responses::ResponseRefusalDeltaEvent, OpenAI::Models::Responses::ResponseRefusalDoneEvent, OpenAI::Models::Responses::ResponseTextDeltaEvent, OpenAI::Models::Responses::ResponseTextDoneEvent, OpenAI::Models::Responses::ResponseWebSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseWebSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseWebSearchCallSearchingEvent, OpenAI::Models::Responses::ResponseImageGenCallCompletedEvent, OpenAI::Models::Responses::ResponseImageGenCallGeneratingEvent, OpenAI::Models::Responses::ResponseImageGenCallInProgressEvent, OpenAI::Models::Responses::ResponseImageGenCallPartialImageEvent, OpenAI::Models::Responses::ResponseMcpCallArgumentsDeltaEvent, OpenAI::Models::Responses::ResponseMcpCallArgumentsDoneEvent, OpenAI::Models::Responses::ResponseMcpCallCompletedEvent, OpenAI::Models::Responses::ResponseMcpCallFailedEvent, OpenAI::Models::Responses::ResponseMcpCallInProgressEvent, OpenAI::Models::Responses::ResponseMcpListToolsCompletedEvent, OpenAI::Models::Responses::ResponseMcpListToolsFailedEvent, OpenAI::Models::Responses::ResponseMcpListToolsInProgressEvent, OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent, OpenAI::Models::Responses::ResponseQueuedEvent, OpenAI::Models::Responses::ResponseCustomToolCallInputDeltaEvent, OpenAI::Models::Responses::ResponseCustomToolCallInputDoneEvent)]
|
208
210
|
end
|
209
211
|
end
|
210
212
|
end
|
@@ -22,7 +22,15 @@ module OpenAI
|
|
22
22
|
# @return [OpenAI::Models::ResponseFormatText, OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig, OpenAI::Models::ResponseFormatJSONObject, nil]
|
23
23
|
optional :format_, union: -> { OpenAI::Responses::ResponseFormatTextConfig }, api_name: :format
|
24
24
|
|
25
|
-
# @!
|
25
|
+
# @!attribute verbosity
|
26
|
+
# Constrains the verbosity of the model's response. Lower values will result in
|
27
|
+
# more concise responses, while higher values will result in more verbose
|
28
|
+
# responses. Currently supported values are `low`, `medium`, and `high`.
|
29
|
+
#
|
30
|
+
# @return [Symbol, OpenAI::Models::Responses::ResponseTextConfig::Verbosity, nil]
|
31
|
+
optional :verbosity, enum: -> { OpenAI::Responses::ResponseTextConfig::Verbosity }, nil?: true
|
32
|
+
|
33
|
+
# @!method initialize(format_: nil, verbosity: nil)
|
26
34
|
# Some parameter documentations has been truncated, see
|
27
35
|
# {OpenAI::Models::Responses::ResponseTextConfig} for more details.
|
28
36
|
#
|
@@ -33,6 +41,24 @@ module OpenAI
|
|
33
41
|
# - [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs)
|
34
42
|
#
|
35
43
|
# @param format_ [OpenAI::Models::ResponseFormatText, OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig, OpenAI::Models::ResponseFormatJSONObject] An object specifying the format that the model must output.
|
44
|
+
#
|
45
|
+
# @param verbosity [Symbol, OpenAI::Models::Responses::ResponseTextConfig::Verbosity, nil] Constrains the verbosity of the model's response. Lower values will result in
|
46
|
+
|
47
|
+
# Constrains the verbosity of the model's response. Lower values will result in
|
48
|
+
# more concise responses, while higher values will result in more verbose
|
49
|
+
# responses. Currently supported values are `low`, `medium`, and `high`.
|
50
|
+
#
|
51
|
+
# @see OpenAI::Models::Responses::ResponseTextConfig#verbosity
|
52
|
+
module Verbosity
|
53
|
+
extend OpenAI::Internal::Type::Enum
|
54
|
+
|
55
|
+
LOW = :low
|
56
|
+
MEDIUM = :medium
|
57
|
+
HIGH = :high
|
58
|
+
|
59
|
+
# @!method self.values
|
60
|
+
# @return [Array<Symbol>]
|
61
|
+
end
|
36
62
|
end
|
37
63
|
end
|
38
64
|
end
|
@@ -33,6 +33,10 @@ module OpenAI
|
|
33
33
|
# A tool that allows the model to execute shell commands in a local environment.
|
34
34
|
variant :local_shell, -> { OpenAI::Responses::Tool::LocalShell }
|
35
35
|
|
36
|
+
# A custom tool that processes input using a specified format. Learn more about
|
37
|
+
# [custom tools](https://platform.openai.com/docs/guides/function-calling#custom-tools).
|
38
|
+
variant :custom, -> { OpenAI::Responses::CustomTool }
|
39
|
+
|
36
40
|
# This tool searches the web for relevant results to use in a response. Learn more about the [web search tool](https://platform.openai.com/docs/guides/tools-web-search).
|
37
41
|
variant -> { OpenAI::Responses::WebSearchTool }
|
38
42
|
|
@@ -542,7 +546,7 @@ module OpenAI
|
|
542
546
|
end
|
543
547
|
|
544
548
|
# @!method self.variants
|
545
|
-
# @return [Array(OpenAI::Models::Responses::FunctionTool, OpenAI::Models::Responses::FileSearchTool, OpenAI::Models::Responses::ComputerTool, OpenAI::Models::Responses::Tool::Mcp, OpenAI::Models::Responses::Tool::CodeInterpreter, OpenAI::Models::Responses::Tool::ImageGeneration, OpenAI::Models::Responses::Tool::LocalShell, OpenAI::Models::Responses::WebSearchTool)]
|
549
|
+
# @return [Array(OpenAI::Models::Responses::FunctionTool, OpenAI::Models::Responses::FileSearchTool, OpenAI::Models::Responses::ComputerTool, OpenAI::Models::Responses::Tool::Mcp, OpenAI::Models::Responses::Tool::CodeInterpreter, OpenAI::Models::Responses::Tool::ImageGeneration, OpenAI::Models::Responses::Tool::LocalShell, OpenAI::Models::Responses::CustomTool, OpenAI::Models::Responses::WebSearchTool)]
|
546
550
|
end
|
547
551
|
end
|
548
552
|
end
|
@@ -0,0 +1,73 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
module Responses
|
6
|
+
class ToolChoiceAllowed < OpenAI::Internal::Type::BaseModel
|
7
|
+
# @!attribute mode
|
8
|
+
# Constrains the tools available to the model to a pre-defined set.
|
9
|
+
#
|
10
|
+
# `auto` allows the model to pick from among the allowed tools and generate a
|
11
|
+
# message.
|
12
|
+
#
|
13
|
+
# `required` requires the model to call one or more of the allowed tools.
|
14
|
+
#
|
15
|
+
# @return [Symbol, OpenAI::Models::Responses::ToolChoiceAllowed::Mode]
|
16
|
+
required :mode, enum: -> { OpenAI::Responses::ToolChoiceAllowed::Mode }
|
17
|
+
|
18
|
+
# @!attribute tools
|
19
|
+
# A list of tool definitions that the model should be allowed to call.
|
20
|
+
#
|
21
|
+
# For the Responses API, the list of tool definitions might look like:
|
22
|
+
#
|
23
|
+
# ```json
|
24
|
+
# [
|
25
|
+
# { "type": "function", "name": "get_weather" },
|
26
|
+
# { "type": "mcp", "server_label": "deepwiki" },
|
27
|
+
# { "type": "image_generation" }
|
28
|
+
# ]
|
29
|
+
# ```
|
30
|
+
#
|
31
|
+
# @return [Array<Hash{Symbol=>Object}>]
|
32
|
+
required :tools,
|
33
|
+
OpenAI::Internal::Type::ArrayOf[OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown]]
|
34
|
+
|
35
|
+
# @!attribute type
|
36
|
+
# Allowed tool configuration type. Always `allowed_tools`.
|
37
|
+
#
|
38
|
+
# @return [Symbol, :allowed_tools]
|
39
|
+
required :type, const: :allowed_tools
|
40
|
+
|
41
|
+
# @!method initialize(mode:, tools:, type: :allowed_tools)
|
42
|
+
# Some parameter documentations has been truncated, see
|
43
|
+
# {OpenAI::Models::Responses::ToolChoiceAllowed} for more details.
|
44
|
+
#
|
45
|
+
# Constrains the tools available to the model to a pre-defined set.
|
46
|
+
#
|
47
|
+
# @param mode [Symbol, OpenAI::Models::Responses::ToolChoiceAllowed::Mode] Constrains the tools available to the model to a pre-defined set.
|
48
|
+
#
|
49
|
+
# @param tools [Array<Hash{Symbol=>Object}>] A list of tool definitions that the model should be allowed to call.
|
50
|
+
#
|
51
|
+
# @param type [Symbol, :allowed_tools] Allowed tool configuration type. Always `allowed_tools`.
|
52
|
+
|
53
|
+
# Constrains the tools available to the model to a pre-defined set.
|
54
|
+
#
|
55
|
+
# `auto` allows the model to pick from among the allowed tools and generate a
|
56
|
+
# message.
|
57
|
+
#
|
58
|
+
# `required` requires the model to call one or more of the allowed tools.
|
59
|
+
#
|
60
|
+
# @see OpenAI::Models::Responses::ToolChoiceAllowed#mode
|
61
|
+
module Mode
|
62
|
+
extend OpenAI::Internal::Type::Enum
|
63
|
+
|
64
|
+
AUTO = :auto
|
65
|
+
REQUIRED = :required
|
66
|
+
|
67
|
+
# @!method self.values
|
68
|
+
# @return [Array<Symbol>]
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
73
|
+
end
|