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
@@ -686,7 +686,7 @@ module OpenAI
|
|
686
686
|
# the model to call your own code. Learn more about
|
687
687
|
# [function calling](https://platform.openai.com/docs/guides/function-calling).
|
688
688
|
#
|
689
|
-
# @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>, nil]
|
689
|
+
# @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>, nil]
|
690
690
|
optional :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::Tool] }
|
691
691
|
|
692
692
|
# @!attribute top_p
|
@@ -708,7 +708,7 @@ module OpenAI
|
|
708
708
|
#
|
709
709
|
# @param text [OpenAI::Models::Evals::RunCreateResponse::DataSource::Responses::SamplingParams::Text] Configuration options for a text response from the model. Can be plain
|
710
710
|
#
|
711
|
-
# @param tools [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>] An array of tools the model may call while generating a response. You
|
711
|
+
# @param tools [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>] An array of tools the model may call while generating a response. You
|
712
712
|
#
|
713
713
|
# @param top_p [Float] An alternative to temperature for nucleus sampling; 1.0 includes all tokens.
|
714
714
|
|
@@ -685,7 +685,7 @@ module OpenAI
|
|
685
685
|
# the model to call your own code. Learn more about
|
686
686
|
# [function calling](https://platform.openai.com/docs/guides/function-calling).
|
687
687
|
#
|
688
|
-
# @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>, nil]
|
688
|
+
# @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>, nil]
|
689
689
|
optional :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::Tool] }
|
690
690
|
|
691
691
|
# @!attribute top_p
|
@@ -707,7 +707,7 @@ module OpenAI
|
|
707
707
|
#
|
708
708
|
# @param text [OpenAI::Models::Evals::RunListResponse::DataSource::Responses::SamplingParams::Text] Configuration options for a text response from the model. Can be plain
|
709
709
|
#
|
710
|
-
# @param tools [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>] An array of tools the model may call while generating a response. You
|
710
|
+
# @param tools [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>] An array of tools the model may call while generating a response. You
|
711
711
|
#
|
712
712
|
# @param top_p [Float] An alternative to temperature for nucleus sampling; 1.0 includes all tokens.
|
713
713
|
|
@@ -690,7 +690,7 @@ module OpenAI
|
|
690
690
|
# the model to call your own code. Learn more about
|
691
691
|
# [function calling](https://platform.openai.com/docs/guides/function-calling).
|
692
692
|
#
|
693
|
-
# @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>, nil]
|
693
|
+
# @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>, nil]
|
694
694
|
optional :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::Tool] }
|
695
695
|
|
696
696
|
# @!attribute top_p
|
@@ -712,7 +712,7 @@ module OpenAI
|
|
712
712
|
#
|
713
713
|
# @param text [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Responses::SamplingParams::Text] Configuration options for a text response from the model. Can be plain
|
714
714
|
#
|
715
|
-
# @param tools [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>] An array of tools the model may call while generating a response. You
|
715
|
+
# @param tools [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>] An array of tools the model may call while generating a response. You
|
716
716
|
#
|
717
717
|
# @param top_p [Float] An alternative to temperature for nucleus sampling; 1.0 includes all tokens.
|
718
718
|
|
@@ -4,12 +4,11 @@ module OpenAI
|
|
4
4
|
module Models
|
5
5
|
class Reasoning < OpenAI::Internal::Type::BaseModel
|
6
6
|
# @!attribute effort
|
7
|
-
# **o-series models only**
|
8
|
-
#
|
9
7
|
# Constrains effort on reasoning for
|
10
8
|
# [reasoning models](https://platform.openai.com/docs/guides/reasoning). Currently
|
11
|
-
# supported values are `low`, `medium`, and `high`. Reducing reasoning
|
12
|
-
# result in faster responses and fewer tokens used on reasoning in a
|
9
|
+
# supported values are `minimal`, `low`, `medium`, and `high`. Reducing reasoning
|
10
|
+
# effort can result in faster responses and fewer tokens used on reasoning in a
|
11
|
+
# response.
|
13
12
|
#
|
14
13
|
# @return [Symbol, OpenAI::Models::ReasoningEffort, nil]
|
15
14
|
optional :effort, enum: -> { OpenAI::ReasoningEffort }, nil?: true
|
@@ -43,7 +42,7 @@ module OpenAI
|
|
43
42
|
# Configuration options for
|
44
43
|
# [reasoning models](https://platform.openai.com/docs/guides/reasoning).
|
45
44
|
#
|
46
|
-
# @param effort [Symbol, OpenAI::Models::ReasoningEffort, nil]
|
45
|
+
# @param effort [Symbol, OpenAI::Models::ReasoningEffort, nil] Constrains effort on reasoning for
|
47
46
|
#
|
48
47
|
# @param generate_summary [Symbol, OpenAI::Models::Reasoning::GenerateSummary, nil] **Deprecated:** use `summary` instead.
|
49
48
|
#
|
@@ -2,15 +2,15 @@
|
|
2
2
|
|
3
3
|
module OpenAI
|
4
4
|
module Models
|
5
|
-
# **o-series models only**
|
6
|
-
#
|
7
5
|
# Constrains effort on reasoning for
|
8
6
|
# [reasoning models](https://platform.openai.com/docs/guides/reasoning). Currently
|
9
|
-
# supported values are `low`, `medium`, and `high`. Reducing reasoning
|
10
|
-
# result in faster responses and fewer tokens used on reasoning in a
|
7
|
+
# supported values are `minimal`, `low`, `medium`, and `high`. Reducing reasoning
|
8
|
+
# effort can result in faster responses and fewer tokens used on reasoning in a
|
9
|
+
# response.
|
11
10
|
module ReasoningEffort
|
12
11
|
extend OpenAI::Internal::Type::Enum
|
13
12
|
|
13
|
+
MINIMAL = :minimal
|
14
14
|
LOW = :low
|
15
15
|
MEDIUM = :medium
|
16
16
|
HIGH = :high
|
@@ -0,0 +1,27 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
class ResponseFormatTextGrammar < OpenAI::Internal::Type::BaseModel
|
6
|
+
# @!attribute grammar
|
7
|
+
# The custom grammar for the model to follow.
|
8
|
+
#
|
9
|
+
# @return [String]
|
10
|
+
required :grammar, String
|
11
|
+
|
12
|
+
# @!attribute type
|
13
|
+
# The type of response format being defined. Always `grammar`.
|
14
|
+
#
|
15
|
+
# @return [Symbol, :grammar]
|
16
|
+
required :type, const: :grammar
|
17
|
+
|
18
|
+
# @!method initialize(grammar:, type: :grammar)
|
19
|
+
# A custom grammar for the model to follow when generating text. Learn more in the
|
20
|
+
# [custom grammars guide](https://platform.openai.com/docs/guides/custom-grammars).
|
21
|
+
#
|
22
|
+
# @param grammar [String] The custom grammar for the model to follow.
|
23
|
+
#
|
24
|
+
# @param type [Symbol, :grammar] The type of response format being defined. Always `grammar`.
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
class ResponseFormatTextPython < OpenAI::Internal::Type::BaseModel
|
6
|
+
# @!attribute type
|
7
|
+
# The type of response format being defined. Always `python`.
|
8
|
+
#
|
9
|
+
# @return [Symbol, :python]
|
10
|
+
required :type, const: :python
|
11
|
+
|
12
|
+
# @!method initialize(type: :python)
|
13
|
+
# Configure the model to generate valid Python code. See the
|
14
|
+
# [custom grammars guide](https://platform.openai.com/docs/guides/custom-grammars)
|
15
|
+
# for more details.
|
16
|
+
#
|
17
|
+
# @param type [Symbol, :python] The type of response format being defined. Always `python`.
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,48 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
module Responses
|
6
|
+
class CustomTool < OpenAI::Internal::Type::BaseModel
|
7
|
+
# @!attribute name
|
8
|
+
# The name of the custom tool, used to identify it in tool calls.
|
9
|
+
#
|
10
|
+
# @return [String]
|
11
|
+
required :name, String
|
12
|
+
|
13
|
+
# @!attribute type
|
14
|
+
# The type of the custom tool. Always `custom`.
|
15
|
+
#
|
16
|
+
# @return [Symbol, :custom]
|
17
|
+
required :type, const: :custom
|
18
|
+
|
19
|
+
# @!attribute description
|
20
|
+
# Optional description of the custom tool, used to provide more context.
|
21
|
+
#
|
22
|
+
# @return [String, nil]
|
23
|
+
optional :description, String
|
24
|
+
|
25
|
+
# @!attribute format_
|
26
|
+
# The input format for the custom tool. Default is unconstrained text.
|
27
|
+
#
|
28
|
+
# @return [OpenAI::Models::CustomToolInputFormat::Text, OpenAI::Models::CustomToolInputFormat::Grammar, nil]
|
29
|
+
optional :format_, union: -> { OpenAI::CustomToolInputFormat }, api_name: :format
|
30
|
+
|
31
|
+
# @!method initialize(name:, description: nil, format_: nil, type: :custom)
|
32
|
+
# Some parameter documentations has been truncated, see
|
33
|
+
# {OpenAI::Models::Responses::CustomTool} for more details.
|
34
|
+
#
|
35
|
+
# A custom tool that processes input using a specified format. Learn more about
|
36
|
+
# [custom tools](https://platform.openai.com/docs/guides/function-calling#custom-tools).
|
37
|
+
#
|
38
|
+
# @param name [String] The name of the custom tool, used to identify it in tool calls.
|
39
|
+
#
|
40
|
+
# @param description [String] Optional description of the custom tool, used to provide more context.
|
41
|
+
#
|
42
|
+
# @param format_ [OpenAI::Models::CustomToolInputFormat::Text, OpenAI::Models::CustomToolInputFormat::Grammar] The input format for the custom tool. Default is unconstrained text.
|
43
|
+
#
|
44
|
+
# @param type [Symbol, :custom] The type of the custom tool. Always `custom`.
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
@@ -38,7 +38,7 @@ module OpenAI
|
|
38
38
|
# response will not be carried over to the next response. This makes it simple to
|
39
39
|
# swap out system (or developer) messages in new responses.
|
40
40
|
#
|
41
|
-
# @return [String, 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>, nil]
|
41
|
+
# @return [String, 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>, nil]
|
42
42
|
required :instructions, union: -> { OpenAI::Responses::Response::Instructions }, nil?: true
|
43
43
|
|
44
44
|
# @!attribute metadata
|
@@ -77,7 +77,7 @@ module OpenAI
|
|
77
77
|
# an `assistant` message with the content generated by the model, you might
|
78
78
|
# consider using the `output_text` property where supported in SDKs.
|
79
79
|
#
|
80
|
-
# @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>]
|
80
|
+
# @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>]
|
81
81
|
required :output, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::ResponseOutputItem] }
|
82
82
|
|
83
83
|
# @!attribute parallel_tool_calls
|
@@ -100,7 +100,7 @@ module OpenAI
|
|
100
100
|
# response. See the `tools` parameter to see how to specify which tools the model
|
101
101
|
# can call.
|
102
102
|
#
|
103
|
-
# @return [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp]
|
103
|
+
# @return [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceAllowed, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp, OpenAI::Models::Responses::ToolChoiceCustom]
|
104
104
|
required :tool_choice, union: -> { OpenAI::Responses::Response::ToolChoice }
|
105
105
|
|
106
106
|
# @!attribute tools
|
@@ -116,10 +116,12 @@ module OpenAI
|
|
116
116
|
# Learn more about
|
117
117
|
# [built-in tools](https://platform.openai.com/docs/guides/tools).
|
118
118
|
# - **Function calls (custom tools)**: Functions that are defined by you, enabling
|
119
|
-
# the model to call your own code
|
119
|
+
# the model to call your own code with strongly typed arguments and outputs.
|
120
|
+
# Learn more about
|
120
121
|
# [function calling](https://platform.openai.com/docs/guides/function-calling).
|
122
|
+
# You can also use custom tools to call your own code.
|
121
123
|
#
|
122
|
-
# @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>]
|
124
|
+
# @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>]
|
123
125
|
required :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::Tool] }
|
124
126
|
|
125
127
|
# @!attribute top_p
|
@@ -295,7 +297,7 @@ module OpenAI
|
|
295
297
|
texts.join
|
296
298
|
end
|
297
299
|
|
298
|
-
# @!method initialize(id:, created_at:, error:, incomplete_details:, instructions:, metadata:, model:, output:, parallel_tool_calls:, temperature:, tool_choice:, tools:, top_p:, background: nil, max_output_tokens: nil, max_tool_calls: nil, previous_response_id: nil, prompt: nil, reasoning: nil, service_tier: nil, status: nil, text: nil, top_logprobs: nil, truncation: nil, usage: nil, user: nil, object: :response)
|
300
|
+
# @!method initialize(id:, created_at:, error:, incomplete_details:, instructions:, metadata:, model:, output:, parallel_tool_calls:, temperature:, tool_choice:, tools:, top_p:, background: nil, max_output_tokens: nil, max_tool_calls: nil, previous_response_id: nil, prompt: nil, prompt_cache_key: nil, reasoning: nil, safety_identifier: nil, service_tier: nil, status: nil, text: nil, top_logprobs: nil, truncation: nil, usage: nil, user: nil, object: :response)
|
299
301
|
# Some parameter documentations has been truncated, see
|
300
302
|
# {OpenAI::Models::Responses::Response} for more details.
|
301
303
|
#
|
@@ -307,21 +309,21 @@ module OpenAI
|
|
307
309
|
#
|
308
310
|
# @param incomplete_details [OpenAI::Models::Responses::Response::IncompleteDetails, nil] Details about why the response is incomplete.
|
309
311
|
#
|
310
|
-
# @param instructions [String, 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>, nil] A system (or developer) message inserted into the model's context.
|
312
|
+
# @param instructions [String, 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>, nil] A system (or developer) message inserted into the model's context.
|
311
313
|
#
|
312
314
|
# @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be
|
313
315
|
#
|
314
316
|
# @param model [String, Symbol, OpenAI::Models::ChatModel, OpenAI::Models::ResponsesModel::ResponsesOnlyModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI
|
315
317
|
#
|
316
|
-
# @param output [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>] An array of content items generated by the model.
|
318
|
+
# @param output [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>] An array of content items generated by the model.
|
317
319
|
#
|
318
320
|
# @param parallel_tool_calls [Boolean] Whether to allow the model to run tool calls in parallel.
|
319
321
|
#
|
320
322
|
# @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m
|
321
323
|
#
|
322
|
-
# @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp] How the model should select which tool (or tools) to use when generating
|
324
|
+
# @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceAllowed, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp, OpenAI::Models::Responses::ToolChoiceCustom] How the model should select which tool (or tools) to use when generating
|
323
325
|
#
|
324
|
-
# @param tools [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>] An array of tools the model may call while generating a response. You
|
326
|
+
# @param tools [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>] An array of tools the model may call while generating a response. You
|
325
327
|
#
|
326
328
|
# @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling,
|
327
329
|
#
|
@@ -403,7 +405,7 @@ module OpenAI
|
|
403
405
|
variant -> { OpenAI::Models::Responses::Response::Instructions::ResponseInputItemArray }
|
404
406
|
|
405
407
|
# @!method self.variants
|
406
|
-
# @return [Array(String, 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>)]
|
408
|
+
# @return [Array(String, 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>)]
|
407
409
|
|
408
410
|
# @type [OpenAI::Internal::Type::Converter]
|
409
411
|
ResponseInputItemArray =
|
@@ -428,6 +430,9 @@ module OpenAI
|
|
428
430
|
# `required` means the model must call one or more tools.
|
429
431
|
variant enum: -> { OpenAI::Responses::ToolChoiceOptions }
|
430
432
|
|
433
|
+
# Constrains the tools available to the model to a pre-defined set.
|
434
|
+
variant -> { OpenAI::Responses::ToolChoiceAllowed }
|
435
|
+
|
431
436
|
# Indicates that the model should use a built-in tool to generate a response.
|
432
437
|
# [Learn more about built-in tools](https://platform.openai.com/docs/guides/tools).
|
433
438
|
variant -> { OpenAI::Responses::ToolChoiceTypes }
|
@@ -438,8 +443,11 @@ module OpenAI
|
|
438
443
|
# Use this option to force the model to call a specific tool on a remote MCP server.
|
439
444
|
variant -> { OpenAI::Responses::ToolChoiceMcp }
|
440
445
|
|
446
|
+
# Use this option to force the model to call a specific custom tool.
|
447
|
+
variant -> { OpenAI::Responses::ToolChoiceCustom }
|
448
|
+
|
441
449
|
# @!method self.variants
|
442
|
-
# @return [Array(Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp)]
|
450
|
+
# @return [Array(Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceAllowed, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp, OpenAI::Models::Responses::ToolChoiceCustom)]
|
443
451
|
end
|
444
452
|
|
445
453
|
# Specifies the processing type used for serving the request.
|
@@ -51,7 +51,7 @@ module OpenAI
|
|
51
51
|
# - [Conversation state](https://platform.openai.com/docs/guides/conversation-state)
|
52
52
|
# - [Function calling](https://platform.openai.com/docs/guides/function-calling)
|
53
53
|
#
|
54
|
-
# @return [String, 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>, nil]
|
54
|
+
# @return [String, 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>, nil]
|
55
55
|
optional :input, union: -> { OpenAI::Responses::ResponseCreateParams::Input }
|
56
56
|
|
57
57
|
# @!attribute instructions
|
@@ -178,6 +178,12 @@ module OpenAI
|
|
178
178
|
# @return [Boolean, nil]
|
179
179
|
optional :store, OpenAI::Internal::Type::Boolean, nil?: true
|
180
180
|
|
181
|
+
# @!attribute stream_options
|
182
|
+
# Options for streaming responses. Only set this when you set `stream: true`.
|
183
|
+
#
|
184
|
+
# @return [OpenAI::Models::Responses::ResponseCreateParams::StreamOptions, nil]
|
185
|
+
optional :stream_options, -> { OpenAI::Responses::ResponseCreateParams::StreamOptions }, nil?: true
|
186
|
+
|
181
187
|
# @!attribute temperature
|
182
188
|
# What sampling temperature to use, between 0 and 2. Higher values like 0.8 will
|
183
189
|
# make the output more random, while lower values like 0.2 will make it more
|
@@ -208,7 +214,7 @@ module OpenAI
|
|
208
214
|
# response. See the `tools` parameter to see how to specify which tools the model
|
209
215
|
# can call.
|
210
216
|
#
|
211
|
-
# @return [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp, nil]
|
217
|
+
# @return [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceAllowed, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp, OpenAI::Models::Responses::ToolChoiceCustom, nil]
|
212
218
|
optional :tool_choice, union: -> { OpenAI::Responses::ResponseCreateParams::ToolChoice }
|
213
219
|
|
214
220
|
# @!attribute tools
|
@@ -224,10 +230,12 @@ module OpenAI
|
|
224
230
|
# Learn more about
|
225
231
|
# [built-in tools](https://platform.openai.com/docs/guides/tools).
|
226
232
|
# - **Function calls (custom tools)**: Functions that are defined by you, enabling
|
227
|
-
# the model to call your own code
|
233
|
+
# the model to call your own code with strongly typed arguments and outputs.
|
234
|
+
# Learn more about
|
228
235
|
# [function calling](https://platform.openai.com/docs/guides/function-calling).
|
236
|
+
# You can also use custom tools to call your own code.
|
229
237
|
#
|
230
|
-
# @return [Array<OpenAI::
|
238
|
+
# @return [Array<OpenAI::StructuredOutput::JsonSchemaConverter, 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>, nil]
|
231
239
|
optional :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::Tool] }
|
232
240
|
|
233
241
|
# @!attribute top_logprobs
|
@@ -271,7 +279,7 @@ module OpenAI
|
|
271
279
|
# @return [String, nil]
|
272
280
|
optional :user, String
|
273
281
|
|
274
|
-
# @!method initialize(background: nil, include: nil, input: nil, instructions: nil, max_output_tokens: nil, max_tool_calls: nil, metadata: nil, model: nil, parallel_tool_calls: nil, previous_response_id: nil, prompt: nil, prompt_cache_key: nil, reasoning: nil, safety_identifier: nil, service_tier: nil, store: nil, temperature: nil, text: nil, tool_choice: nil, tools: nil, top_logprobs: nil, top_p: nil, truncation: nil, user: nil, request_options: {})
|
282
|
+
# @!method initialize(background: nil, include: nil, input: nil, instructions: nil, max_output_tokens: nil, max_tool_calls: nil, metadata: nil, model: nil, parallel_tool_calls: nil, previous_response_id: nil, prompt: nil, prompt_cache_key: nil, reasoning: nil, safety_identifier: nil, service_tier: nil, store: nil, stream_options: nil, temperature: nil, text: nil, tool_choice: nil, tools: nil, top_logprobs: nil, top_p: nil, truncation: nil, user: nil, request_options: {})
|
275
283
|
# Some parameter documentations has been truncated, see
|
276
284
|
# {OpenAI::Models::Responses::ResponseCreateParams} for more details.
|
277
285
|
#
|
@@ -279,7 +287,7 @@ module OpenAI
|
|
279
287
|
#
|
280
288
|
# @param include [Array<Symbol, OpenAI::Models::Responses::ResponseIncludable>, nil] Specify additional output data to include in the model response. Currently
|
281
289
|
#
|
282
|
-
# @param input [String, 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>] Text, image, or file inputs to the model, used to generate a response.
|
290
|
+
# @param input [String, 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>] Text, image, or file inputs to the model, used to generate a response.
|
283
291
|
#
|
284
292
|
# @param instructions [String, nil] A system (or developer) message inserted into the model's context.
|
285
293
|
#
|
@@ -307,13 +315,15 @@ module OpenAI
|
|
307
315
|
#
|
308
316
|
# @param store [Boolean, nil] Whether to store the generated model response for later retrieval via
|
309
317
|
#
|
318
|
+
# @param stream_options [OpenAI::Models::Responses::ResponseCreateParams::StreamOptions, nil] Options for streaming responses. Only set this when you set `stream: true`.
|
319
|
+
#
|
310
320
|
# @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m
|
311
321
|
#
|
312
322
|
# @param text [OpenAI::Models::Responses::ResponseTextConfig] Configuration options for a text response from the model. Can be plain
|
313
323
|
#
|
314
|
-
# @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp] How the model should select which tool (or tools) to use when generating
|
324
|
+
# @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceAllowed, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp, OpenAI::Models::Responses::ToolChoiceCustom] How the model should select which tool (or tools) to use when generating
|
315
325
|
#
|
316
|
-
# @param tools [Array<OpenAI::
|
326
|
+
# @param tools [Array<OpenAI::StructuredOutput::JsonSchemaConverter, 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>] An array of tools the model may call while generating a response. You
|
317
327
|
#
|
318
328
|
# @param top_logprobs [Integer, nil] An integer between 0 and 20 specifying the number of most likely tokens to
|
319
329
|
#
|
@@ -346,7 +356,7 @@ module OpenAI
|
|
346
356
|
variant -> { OpenAI::Responses::ResponseInput }
|
347
357
|
|
348
358
|
# @!method self.variants
|
349
|
-
# @return [Array(String, 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>)]
|
359
|
+
# @return [Array(String, 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>)]
|
350
360
|
end
|
351
361
|
|
352
362
|
# Specifies the processing type used for serving the request.
|
@@ -379,6 +389,28 @@ module OpenAI
|
|
379
389
|
# @return [Array<Symbol>]
|
380
390
|
end
|
381
391
|
|
392
|
+
class StreamOptions < OpenAI::Internal::Type::BaseModel
|
393
|
+
# @!attribute include_obfuscation
|
394
|
+
# When true, stream obfuscation will be enabled. Stream obfuscation adds random
|
395
|
+
# characters to an `obfuscation` field on streaming delta events to normalize
|
396
|
+
# payload sizes as a mitigation to certain side-channel attacks. These obfuscation
|
397
|
+
# fields are included by default, but add a small amount of overhead to the data
|
398
|
+
# stream. You can set `include_obfuscation` to false to optimize for bandwidth if
|
399
|
+
# you trust the network links between your application and the OpenAI API.
|
400
|
+
#
|
401
|
+
# @return [Boolean, nil]
|
402
|
+
optional :include_obfuscation, OpenAI::Internal::Type::Boolean
|
403
|
+
|
404
|
+
# @!method initialize(include_obfuscation: nil)
|
405
|
+
# Some parameter documentations has been truncated, see
|
406
|
+
# {OpenAI::Models::Responses::ResponseCreateParams::StreamOptions} for more
|
407
|
+
# details.
|
408
|
+
#
|
409
|
+
# Options for streaming responses. Only set this when you set `stream: true`.
|
410
|
+
#
|
411
|
+
# @param include_obfuscation [Boolean] When true, stream obfuscation will be enabled. Stream obfuscation adds
|
412
|
+
end
|
413
|
+
|
382
414
|
# How the model should select which tool (or tools) to use when generating a
|
383
415
|
# response. See the `tools` parameter to see how to specify which tools the model
|
384
416
|
# can call.
|
@@ -395,6 +427,9 @@ module OpenAI
|
|
395
427
|
# `required` means the model must call one or more tools.
|
396
428
|
variant enum: -> { OpenAI::Responses::ToolChoiceOptions }
|
397
429
|
|
430
|
+
# Constrains the tools available to the model to a pre-defined set.
|
431
|
+
variant -> { OpenAI::Responses::ToolChoiceAllowed }
|
432
|
+
|
398
433
|
# Indicates that the model should use a built-in tool to generate a response.
|
399
434
|
# [Learn more about built-in tools](https://platform.openai.com/docs/guides/tools).
|
400
435
|
variant -> { OpenAI::Responses::ToolChoiceTypes }
|
@@ -405,8 +440,11 @@ module OpenAI
|
|
405
440
|
# Use this option to force the model to call a specific tool on a remote MCP server.
|
406
441
|
variant -> { OpenAI::Responses::ToolChoiceMcp }
|
407
442
|
|
443
|
+
# Use this option to force the model to call a specific custom tool.
|
444
|
+
variant -> { OpenAI::Responses::ToolChoiceCustom }
|
445
|
+
|
408
446
|
# @!method self.variants
|
409
|
-
# @return [Array(Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp)]
|
447
|
+
# @return [Array(Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceAllowed, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp, OpenAI::Models::Responses::ToolChoiceCustom)]
|
410
448
|
end
|
411
449
|
|
412
450
|
# The truncation strategy to use for the model response.
|
@@ -0,0 +1,55 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
module Responses
|
6
|
+
class ResponseCustomToolCall < OpenAI::Internal::Type::BaseModel
|
7
|
+
# @!attribute call_id
|
8
|
+
# An identifier used to map this custom tool call to a tool call output.
|
9
|
+
#
|
10
|
+
# @return [String]
|
11
|
+
required :call_id, String
|
12
|
+
|
13
|
+
# @!attribute input
|
14
|
+
# The input for the custom tool call generated by the model.
|
15
|
+
#
|
16
|
+
# @return [String]
|
17
|
+
required :input, String
|
18
|
+
|
19
|
+
# @!attribute name
|
20
|
+
# The name of the custom tool being called.
|
21
|
+
#
|
22
|
+
# @return [String]
|
23
|
+
required :name, String
|
24
|
+
|
25
|
+
# @!attribute type
|
26
|
+
# The type of the custom tool call. Always `custom_tool_call`.
|
27
|
+
#
|
28
|
+
# @return [Symbol, :custom_tool_call]
|
29
|
+
required :type, const: :custom_tool_call
|
30
|
+
|
31
|
+
# @!attribute id
|
32
|
+
# The unique ID of the custom tool call in the OpenAI platform.
|
33
|
+
#
|
34
|
+
# @return [String, nil]
|
35
|
+
optional :id, String
|
36
|
+
|
37
|
+
# @!method initialize(call_id:, input:, name:, id: nil, type: :custom_tool_call)
|
38
|
+
# Some parameter documentations has been truncated, see
|
39
|
+
# {OpenAI::Models::Responses::ResponseCustomToolCall} for more details.
|
40
|
+
#
|
41
|
+
# A call to a custom tool created by the model.
|
42
|
+
#
|
43
|
+
# @param call_id [String] An identifier used to map this custom tool call to a tool call output.
|
44
|
+
#
|
45
|
+
# @param input [String] The input for the custom tool call generated by the model.
|
46
|
+
#
|
47
|
+
# @param name [String] The name of the custom tool being called.
|
48
|
+
#
|
49
|
+
# @param id [String] The unique ID of the custom tool call in the OpenAI platform.
|
50
|
+
#
|
51
|
+
# @param type [Symbol, :custom_tool_call] The type of the custom tool call. Always `custom_tool_call`.
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
@@ -0,0 +1,52 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
module Responses
|
6
|
+
class ResponseCustomToolCallInputDeltaEvent < OpenAI::Internal::Type::BaseModel
|
7
|
+
# @!attribute delta
|
8
|
+
# The incremental input data (delta) for the custom tool call.
|
9
|
+
#
|
10
|
+
# @return [String]
|
11
|
+
required :delta, 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 delta 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.delta"]
|
35
|
+
required :type, const: :"response.custom_tool_call_input.delta"
|
36
|
+
|
37
|
+
# @!method initialize(delta:, item_id:, output_index:, sequence_number:, type: :"response.custom_tool_call_input.delta")
|
38
|
+
# Event representing a delta (partial update) to the input of a custom tool call.
|
39
|
+
#
|
40
|
+
# @param delta [String] The incremental input data (delta) 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 delta applies to.
|
45
|
+
#
|
46
|
+
# @param sequence_number [Integer] The sequence number of this event.
|
47
|
+
#
|
48
|
+
# @param type [Symbol, :"response.custom_tool_call_input.delta"] The event type identifier.
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|