openai 0.89.0 → 0.90.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 +7 -0
- data/README.md +1 -1
- data/lib/openai/helpers/agents/message.rb +20 -0
- data/lib/openai/helpers/agents/session_stream.rb +168 -0
- data/lib/openai/helpers/agents/tools.rb +65 -0
- data/lib/openai/internal/token_page.rb +91 -0
- data/lib/openai/models/beta/agent.rb +148 -0
- data/lib/openai/models/beta/agent_close_subagent_call_item.rb +66 -0
- data/lib/openai/models/beta/agent_command_execution_item.rb +93 -0
- data/lib/openai/models/beta/agent_content.rb +46 -0
- data/lib/openai/models/beta/agent_create_params.rb +128 -0
- data/lib/openai/models/beta/agent_create_subagent_call_item.rb +84 -0
- data/lib/openai/models/beta/agent_delete_params.rb +22 -0
- data/lib/openai/models/beta/agent_deleted.rb +40 -0
- data/lib/openai/models/beta/agent_function_call_item.rb +75 -0
- data/lib/openai/models/beta/agent_function_call_output.rb +22 -0
- data/lib/openai/models/beta/agent_function_call_output_param.rb +22 -0
- data/lib/openai/models/beta/agent_function_call_status.rb +27 -0
- data/lib/openai/models/beta/agent_interrupt_subagent_call_item.rb +67 -0
- data/lib/openai/models/beta/agent_list_params.rb +57 -0
- data/lib/openai/models/beta/agent_mcp_call_item.rb +93 -0
- data/lib/openai/models/beta/agent_output_command_execution_output_delta_event.rb +75 -0
- data/lib/openai/models/beta/agent_output_item.rb +53 -0
- data/lib/openai/models/beta/agent_output_item_status.rb +24 -0
- data/lib/openai/models/beta/agent_reasoning.rb +67 -0
- data/lib/openai/models/beta/agent_reasoning_item.rb +57 -0
- data/lib/openai/models/beta/agent_reasoning_param.rb +67 -0
- data/lib/openai/models/beta/agent_resume_subagent_call_item.rb +66 -0
- data/lib/openai/models/beta/agent_retrieve_params.rb +22 -0
- data/lib/openai/models/beta/agent_send_subagent_input_call_item.rb +75 -0
- data/lib/openai/models/beta/agent_session.rb +339 -0
- data/lib/openai/models/beta/agent_session_assistant_message.rb +91 -0
- data/lib/openai/models/beta/agent_session_created_event.rb +39 -0
- data/lib/openai/models/beta/agent_session_deleted.rb +42 -0
- data/lib/openai/models/beta/agent_session_environment_connected_event.rb +57 -0
- data/lib/openai/models/beta/agent_session_environment_disconnected_event.rb +57 -0
- data/lib/openai/models/beta/agent_session_environment_failed_event.rb +57 -0
- data/lib/openai/models/beta/agent_session_environment_pending_event.rb +57 -0
- data/lib/openai/models/beta/agent_session_environment_ready_event.rb +57 -0
- data/lib/openai/models/beta/agent_session_environment_state.rb +106 -0
- data/lib/openai/models/beta/agent_session_error_event.rb +48 -0
- data/lib/openai/models/beta/agent_session_event.rb +128 -0
- data/lib/openai/models/beta/agent_session_failed_event.rb +39 -0
- data/lib/openai/models/beta/agent_session_idle_event.rb +39 -0
- data/lib/openai/models/beta/agent_session_in_progress_event.rb +39 -0
- data/lib/openai/models/beta/agent_session_input_message_param.rb +51 -0
- data/lib/openai/models/beta/agent_session_input_param.rb +131 -0
- data/lib/openai/models/beta/agent_session_item.rb +186 -0
- data/lib/openai/models/beta/agent_session_message.rb +106 -0
- data/lib/openai/models/beta/agent_session_message_content.rb +97 -0
- data/lib/openai/models/beta/agent_session_requires_action_event.rb +39 -0
- data/lib/openai/models/beta/agent_session_subagent_active_event.rb +39 -0
- data/lib/openai/models/beta/agent_session_subagent_closed_event.rb +39 -0
- data/lib/openai/models/beta/agent_session_subagent_created_event.rb +39 -0
- data/lib/openai/models/beta/agent_session_turn_cancelled_event.rb +66 -0
- data/lib/openai/models/beta/agent_session_turn_completed_event.rb +66 -0
- data/lib/openai/models/beta/agent_session_turn_content_part_added_event.rb +84 -0
- data/lib/openai/models/beta/agent_session_turn_content_part_done_event.rb +84 -0
- data/lib/openai/models/beta/agent_session_turn_created_event.rb +57 -0
- data/lib/openai/models/beta/agent_session_turn_failed_event.rb +66 -0
- data/lib/openai/models/beta/agent_session_turn_in_progress_event.rb +57 -0
- data/lib/openai/models/beta/agent_session_turn_item_added_event.rb +66 -0
- data/lib/openai/models/beta/agent_session_turn_item_done_event.rb +66 -0
- data/lib/openai/models/beta/agent_session_turn_output_text_delta_event.rb +84 -0
- data/lib/openai/models/beta/agent_session_turn_output_text_done_event.rb +84 -0
- data/lib/openai/models/beta/agent_session_turn_reasoning_summary_part_added_event.rb +86 -0
- data/lib/openai/models/beta/agent_session_turn_reasoning_summary_part_done_event.rb +93 -0
- data/lib/openai/models/beta/agent_session_turn_reasoning_summary_text_delta_event.rb +86 -0
- data/lib/openai/models/beta/agent_session_turn_reasoning_summary_text_done_event.rb +84 -0
- data/lib/openai/models/beta/agent_text.rb +44 -0
- data/lib/openai/models/beta/agent_text_param.rb +49 -0
- data/lib/openai/models/beta/agent_tool.rb +314 -0
- data/lib/openai/models/beta/agent_tool_param.rb +359 -0
- data/lib/openai/models/beta/agent_update_params.rb +137 -0
- data/lib/openai/models/beta/agent_wait_for_subagents_call_item.rb +66 -0
- data/lib/openai/models/beta/agent_web_search_call_item.rb +57 -0
- data/lib/openai/models/beta/agents/environment_info.rb +107 -0
- data/lib/openai/models/beta/agents/environment_retrieve_params.rb +24 -0
- data/lib/openai/models/beta/agents/environments/environment_file.rb +55 -0
- data/lib/openai/models/beta/agents/environments/environment_template.rb +368 -0
- data/lib/openai/models/beta/agents/environments/environment_template_deleted.rb +46 -0
- data/lib/openai/models/beta/agents/environments/file_create_params.rb +26 -0
- data/lib/openai/models/beta/agents/environments/file_list_params.rb +77 -0
- data/lib/openai/models/beta/agents/environments/template_create_params.rb +209 -0
- data/lib/openai/models/beta/agents/environments/template_delete_params.rb +26 -0
- data/lib/openai/models/beta/agents/environments/template_list_params.rb +61 -0
- data/lib/openai/models/beta/agents/environments/template_retrieve_params.rb +26 -0
- data/lib/openai/models/beta/agents/environments/template_update_params.rb +212 -0
- data/lib/openai/models/beta/agents/session_create_params.rb +203 -0
- data/lib/openai/models/beta/agents/session_delete_params.rb +24 -0
- data/lib/openai/models/beta/agents/session_list_params.rb +73 -0
- data/lib/openai/models/beta/agents/session_retrieve_params.rb +24 -0
- data/lib/openai/models/beta/agents/session_update_params.rb +38 -0
- data/lib/openai/models/beta/agents/sessions/artifact_content_params.rb +32 -0
- data/lib/openai/models/beta/agents/sessions/artifact_delete_params.rb +32 -0
- data/lib/openai/models/beta/agents/sessions/artifact_list_params.rb +77 -0
- data/lib/openai/models/beta/agents/sessions/artifact_retrieve_params.rb +32 -0
- data/lib/openai/models/beta/agents/sessions/event_create_params.rb +43 -0
- data/lib/openai/models/beta/agents/sessions/event_stream_params.rb +26 -0
- data/lib/openai/models/beta/agents/sessions/item_list_params.rb +68 -0
- data/lib/openai/models/beta/agents/sessions/session_artifact.rb +91 -0
- data/lib/openai/models/beta/agents/sessions/session_artifact_deleted.rb +46 -0
- data/lib/openai/models/beta/agents/sessions/subagent_list_params.rb +68 -0
- data/lib/openai/models/beta/agents/sessions/subagent_retrieve_params.rb +32 -0
- data/lib/openai/models/beta/agents/sessions/subagents/item_list_params.rb +77 -0
- data/lib/openai/models/beta/agents/sessions/subagents/turn_list_params.rb +77 -0
- data/lib/openai/models/beta/agents/sessions/subagents/turn_retrieve_params.rb +40 -0
- data/lib/openai/models/beta/agents/sessions/subagents/turns/item_list_params.rb +86 -0
- data/lib/openai/models/beta/agents/sessions/turn.rb +148 -0
- data/lib/openai/models/beta/agents/sessions/turn_list_params.rb +68 -0
- data/lib/openai/models/beta/agents/sessions/turn_retrieve_params.rb +32 -0
- data/lib/openai/models/beta/agents/vault.rb +63 -0
- data/lib/openai/models/beta/agents/vault_create_params.rb +40 -0
- data/lib/openai/models/beta/agents/vault_delete_params.rb +24 -0
- data/lib/openai/models/beta/agents/vault_deleted.rb +42 -0
- data/lib/openai/models/beta/agents/vault_list_params.rb +75 -0
- data/lib/openai/models/beta/agents/vault_retrieve_params.rb +24 -0
- data/lib/openai/models/beta/agents/vault_status.rb +20 -0
- data/lib/openai/models/beta/agents/vault_status_filter.rb +27 -0
- data/lib/openai/models/beta/agents/vaults/credential.rb +80 -0
- data/lib/openai/models/beta/agents/vaults/credential_auth.rb +155 -0
- data/lib/openai/models/beta/agents/vaults/credential_auth_create_param.rb +184 -0
- data/lib/openai/models/beta/agents/vaults/credential_auth_rotate_param.rb +147 -0
- data/lib/openai/models/beta/agents/vaults/credential_create_params.rb +47 -0
- data/lib/openai/models/beta/agents/vaults/credential_delete_params.rb +32 -0
- data/lib/openai/models/beta/agents/vaults/credential_deleted.rb +44 -0
- data/lib/openai/models/beta/agents/vaults/credential_list_params.rb +84 -0
- data/lib/openai/models/beta/agents/vaults/credential_retrieve_params.rb +32 -0
- data/lib/openai/models/beta/agents/vaults/credential_update_params.rb +43 -0
- data/lib/openai/models/beta/agents/vaults/mcp_oauth_token_endpoint_auth.rb +78 -0
- data/lib/openai/models/beta/agents/vaults/mcp_oauth_token_endpoint_auth_create_param.rb +96 -0
- data/lib/openai/models/beta/agents/vaults/mcp_oauth_token_endpoint_auth_rotate_param.rb +84 -0
- data/lib/openai/models/beta/environment.rb +246 -0
- data/lib/openai/models/beta/environment_param.rb +269 -0
- data/lib/openai/models/beta/hosted_environment_file.rb +64 -0
- data/lib/openai/models/beta/hosted_environment_file_id.rb +57 -0
- data/lib/openai/models/beta/hosted_environment_file_param.rb +87 -0
- data/lib/openai/models/beta/hosted_plugin.rb +39 -0
- data/lib/openai/models/beta/hosted_plugin_param.rb +48 -0
- data/lib/openai/models/beta/hosted_skill.rb +55 -0
- data/lib/openai/models/beta/hosted_skill_param.rb +96 -0
- data/lib/openai/models/beta/hosted_skill_reference.rb +57 -0
- data/lib/openai/models/beta/inline_capability_source_param.rb +39 -0
- data/lib/openai/models/beta/input_content.rb +71 -0
- data/lib/openai/models/beta/input_content_param.rb +69 -0
- data/lib/openai/models/beta/mcp_transport.rb +96 -0
- data/lib/openai/models/beta/mcp_transport_param.rb +123 -0
- data/lib/openai/models/beta/multi_agent_config.rb +32 -0
- data/lib/openai/models/beta/multi_agent_config_param.rb +30 -0
- data/lib/openai/models/beta/output_text.rb +30 -0
- data/lib/openai/models/beta/persisted_agent_tool.rb +329 -0
- data/lib/openai/models/beta/persisted_agent_tool_param.rb +355 -0
- data/lib/openai/models/beta/persisted_mcp_transport.rb +105 -0
- data/lib/openai/models/beta/persisted_mcp_transport_param.rb +105 -0
- data/lib/openai/models/beta/session_error.rb +48 -0
- data/lib/openai/models/beta/session_turn_error.rb +88 -0
- data/lib/openai/models/beta/setup_command_param.rb +30 -0
- data/lib/openai/models/beta/subagent.rb +121 -0
- data/lib/openai/models/beta/summary_text.rb +30 -0
- data/lib/openai/models/beta/text_format.rb +60 -0
- data/lib/openai/models/beta/text_format_param.rb +60 -0
- data/lib/openai/models/beta/token_usage.rb +87 -0
- data/lib/openai/models/beta/web_search_action.rb +130 -0
- data/lib/openai/models/chat/completion_create_params.rb +1 -1
- data/lib/openai/resources/beta/agents/environments/files.rb +89 -0
- data/lib/openai/resources/beta/agents/environments/templates.rb +206 -0
- data/lib/openai/resources/beta/agents/environments.rb +50 -0
- data/lib/openai/resources/beta/agents/sessions/artifacts.rb +155 -0
- data/lib/openai/resources/beta/agents/sessions/events.rb +80 -0
- data/lib/openai/resources/beta/agents/sessions/items.rb +57 -0
- data/lib/openai/resources/beta/agents/sessions/subagents/items.rb +66 -0
- data/lib/openai/resources/beta/agents/sessions/subagents/turns/items.rb +82 -0
- data/lib/openai/resources/beta/agents/sessions/subagents/turns.rb +108 -0
- data/lib/openai/resources/beta/agents/sessions/subagents.rb +95 -0
- data/lib/openai/resources/beta/agents/sessions/turns.rb +89 -0
- data/lib/openai/resources/beta/agents/sessions.rb +294 -0
- data/lib/openai/resources/beta/agents/vaults/credentials.rb +195 -0
- data/lib/openai/resources/beta/agents/vaults.rb +137 -0
- data/lib/openai/resources/beta/agents.rb +213 -0
- data/lib/openai/resources/beta.rb +4 -0
- data/lib/openai/resources/live/sessions.rb +10 -4
- data/lib/openai/version.rb +1 -1
- data/lib/openai.rb +176 -0
- data/rbi/openai/helpers/agents.rbi +71 -0
- data/rbi/openai/internal/token_page.rbi +25 -0
- data/rbi/openai/models/beta/agent.rbi +209 -0
- data/rbi/openai/models/beta/agent_close_subagent_call_item.rbi +102 -0
- data/rbi/openai/models/beta/agent_command_execution_item.rbi +132 -0
- data/rbi/openai/models/beta/agent_content.rbi +75 -0
- data/rbi/openai/models/beta/agent_create_params.rbi +212 -0
- data/rbi/openai/models/beta/agent_create_subagent_call_item.rbi +124 -0
- data/rbi/openai/models/beta/agent_delete_params.rbi +53 -0
- data/rbi/openai/models/beta/agent_deleted.rbi +68 -0
- data/rbi/openai/models/beta/agent_function_call_item.rbi +112 -0
- data/rbi/openai/models/beta/agent_function_call_output.rbi +33 -0
- data/rbi/openai/models/beta/agent_function_call_output_param.rbi +33 -0
- data/rbi/openai/models/beta/agent_function_call_status.rbi +35 -0
- data/rbi/openai/models/beta/agent_interrupt_subagent_call_item.rbi +103 -0
- data/rbi/openai/models/beta/agent_list_params.rbi +102 -0
- data/rbi/openai/models/beta/agent_mcp_call_item.rbi +132 -0
- data/rbi/openai/models/beta/agent_output_command_execution_output_delta_event.rbi +112 -0
- data/rbi/openai/models/beta/agent_output_item.rbi +38 -0
- data/rbi/openai/models/beta/agent_output_item_status.rbi +32 -0
- data/rbi/openai/models/beta/agent_reasoning.rbi +103 -0
- data/rbi/openai/models/beta/agent_reasoning_item.rbi +92 -0
- data/rbi/openai/models/beta/agent_reasoning_param.rbi +103 -0
- data/rbi/openai/models/beta/agent_resume_subagent_call_item.rbi +102 -0
- data/rbi/openai/models/beta/agent_retrieve_params.rbi +53 -0
- data/rbi/openai/models/beta/agent_send_subagent_input_call_item.rbi +114 -0
- data/rbi/openai/models/beta/agent_session.rbi +494 -0
- data/rbi/openai/models/beta/agent_session_assistant_message.rbi +130 -0
- data/rbi/openai/models/beta/agent_session_created_event.rbi +71 -0
- data/rbi/openai/models/beta/agent_session_deleted.rbi +71 -0
- data/rbi/openai/models/beta/agent_session_environment_connected_event.rbi +95 -0
- data/rbi/openai/models/beta/agent_session_environment_disconnected_event.rbi +95 -0
- data/rbi/openai/models/beta/agent_session_environment_failed_event.rbi +95 -0
- data/rbi/openai/models/beta/agent_session_environment_pending_event.rbi +95 -0
- data/rbi/openai/models/beta/agent_session_environment_ready_event.rbi +95 -0
- data/rbi/openai/models/beta/agent_session_environment_state.rbi +168 -0
- data/rbi/openai/models/beta/agent_session_error_event.rbi +80 -0
- data/rbi/openai/models/beta/agent_session_event.rbi +56 -0
- data/rbi/openai/models/beta/agent_session_failed_event.rbi +71 -0
- data/rbi/openai/models/beta/agent_session_idle_event.rbi +71 -0
- data/rbi/openai/models/beta/agent_session_in_progress_event.rbi +71 -0
- data/rbi/openai/models/beta/agent_session_input_message_param.rbi +100 -0
- data/rbi/openai/models/beta/agent_session_input_param.rbi +232 -0
- data/rbi/openai/models/beta/agent_session_item.rbi +239 -0
- data/rbi/openai/models/beta/agent_session_message.rbi +153 -0
- data/rbi/openai/models/beta/agent_session_message_content.rbi +172 -0
- data/rbi/openai/models/beta/agent_session_requires_action_event.rbi +71 -0
- data/rbi/openai/models/beta/agent_session_subagent_active_event.rbi +71 -0
- data/rbi/openai/models/beta/agent_session_subagent_closed_event.rbi +71 -0
- data/rbi/openai/models/beta/agent_session_subagent_created_event.rbi +71 -0
- data/rbi/openai/models/beta/agent_session_turn_cancelled_event.rbi +108 -0
- data/rbi/openai/models/beta/agent_session_turn_completed_event.rbi +108 -0
- data/rbi/openai/models/beta/agent_session_turn_content_part_added_event.rbi +125 -0
- data/rbi/openai/models/beta/agent_session_turn_content_part_done_event.rbi +125 -0
- data/rbi/openai/models/beta/agent_session_turn_created_event.rbi +95 -0
- data/rbi/openai/models/beta/agent_session_turn_failed_event.rbi +108 -0
- data/rbi/openai/models/beta/agent_session_turn_in_progress_event.rbi +95 -0
- data/rbi/openai/models/beta/agent_session_turn_item_added_event.rbi +117 -0
- data/rbi/openai/models/beta/agent_session_turn_item_done_event.rbi +115 -0
- data/rbi/openai/models/beta/agent_session_turn_output_text_delta_event.rbi +122 -0
- data/rbi/openai/models/beta/agent_session_turn_output_text_done_event.rbi +122 -0
- data/rbi/openai/models/beta/agent_session_turn_reasoning_summary_part_added_event.rbi +127 -0
- data/rbi/openai/models/beta/agent_session_turn_reasoning_summary_part_done_event.rbi +135 -0
- data/rbi/openai/models/beta/agent_session_turn_reasoning_summary_text_delta_event.rbi +124 -0
- data/rbi/openai/models/beta/agent_session_turn_reasoning_summary_text_done_event.rbi +122 -0
- data/rbi/openai/models/beta/agent_text.rbi +75 -0
- data/rbi/openai/models/beta/agent_text_param.rbi +87 -0
- data/rbi/openai/models/beta/agent_tool.rbi +467 -0
- data/rbi/openai/models/beta/agent_tool_param.rbi +530 -0
- data/rbi/openai/models/beta/agent_update_params.rbi +225 -0
- data/rbi/openai/models/beta/agent_wait_for_subagents_call_item.rbi +102 -0
- data/rbi/openai/models/beta/agent_web_search_call_item.rbi +99 -0
- data/rbi/openai/models/beta/agents/environment_info.rbi +156 -0
- data/rbi/openai/models/beta/agents/environment_retrieve_params.rbi +57 -0
- data/rbi/openai/models/beta/agents/environments/environment_file.rbi +87 -0
- data/rbi/openai/models/beta/agents/environments/environment_template.rbi +582 -0
- data/rbi/openai/models/beta/agents/environments/environment_template_deleted.rbi +78 -0
- data/rbi/openai/models/beta/agents/environments/file_create_params.rbi +61 -0
- data/rbi/openai/models/beta/agents/environments/file_list_params.rbi +130 -0
- data/rbi/openai/models/beta/agents/environments/template_create_params.rbi +350 -0
- data/rbi/openai/models/beta/agents/environments/template_delete_params.rbi +61 -0
- data/rbi/openai/models/beta/agents/environments/template_list_params.rbi +117 -0
- data/rbi/openai/models/beta/agents/environments/template_retrieve_params.rbi +61 -0
- data/rbi/openai/models/beta/agents/environments/template_update_params.rbi +354 -0
- data/rbi/openai/models/beta/agents/session_create_params.rbi +336 -0
- data/rbi/openai/models/beta/agents/session_delete_params.rbi +57 -0
- data/rbi/openai/models/beta/agents/session_list_params.rbi +124 -0
- data/rbi/openai/models/beta/agents/session_retrieve_params.rbi +57 -0
- data/rbi/openai/models/beta/agents/session_update_params.rbi +74 -0
- data/rbi/openai/models/beta/agents/sessions/artifact_content_params.rbi +68 -0
- data/rbi/openai/models/beta/agents/sessions/artifact_delete_params.rbi +68 -0
- data/rbi/openai/models/beta/agents/sessions/artifact_list_params.rbi +127 -0
- data/rbi/openai/models/beta/agents/sessions/artifact_retrieve_params.rbi +68 -0
- data/rbi/openai/models/beta/agents/sessions/event_create_params.rbi +107 -0
- data/rbi/openai/models/beta/agents/sessions/event_stream_params.rbi +61 -0
- data/rbi/openai/models/beta/agents/sessions/item_list_params.rbi +121 -0
- data/rbi/openai/models/beta/agents/sessions/session_artifact.rbi +132 -0
- data/rbi/openai/models/beta/agents/sessions/session_artifact_deleted.rbi +78 -0
- data/rbi/openai/models/beta/agents/sessions/subagent_list_params.rbi +123 -0
- data/rbi/openai/models/beta/agents/sessions/subagent_retrieve_params.rbi +68 -0
- data/rbi/openai/models/beta/agents/sessions/subagents/item_list_params.rbi +139 -0
- data/rbi/openai/models/beta/agents/sessions/subagents/turn_list_params.rbi +139 -0
- data/rbi/openai/models/beta/agents/sessions/subagents/turn_retrieve_params.rbi +79 -0
- data/rbi/openai/models/beta/agents/sessions/subagents/turns/item_list_params.rbi +161 -0
- data/rbi/openai/models/beta/agents/sessions/turn.rbi +200 -0
- data/rbi/openai/models/beta/agents/sessions/turn_list_params.rbi +121 -0
- data/rbi/openai/models/beta/agents/sessions/turn_retrieve_params.rbi +68 -0
- data/rbi/openai/models/beta/agents/vault.rbi +99 -0
- data/rbi/openai/models/beta/agents/vault_create_params.rbi +75 -0
- data/rbi/openai/models/beta/agents/vault_delete_params.rbi +57 -0
- data/rbi/openai/models/beta/agents/vault_deleted.rbi +72 -0
- data/rbi/openai/models/beta/agents/vault_list_params.rbi +149 -0
- data/rbi/openai/models/beta/agents/vault_retrieve_params.rbi +57 -0
- data/rbi/openai/models/beta/agents/vault_status.rbi +30 -0
- data/rbi/openai/models/beta/agents/vault_status_filter.rbi +39 -0
- data/rbi/openai/models/beta/agents/vaults/credential.rbi +123 -0
- data/rbi/openai/models/beta/agents/vaults/credential_auth.rbi +248 -0
- data/rbi/openai/models/beta/agents/vaults/credential_auth_create_param.rbi +293 -0
- data/rbi/openai/models/beta/agents/vaults/credential_auth_rotate_param.rbi +252 -0
- data/rbi/openai/models/beta/agents/vaults/credential_create_params.rbi +99 -0
- data/rbi/openai/models/beta/agents/vaults/credential_delete_params.rbi +68 -0
- data/rbi/openai/models/beta/agents/vaults/credential_deleted.rbi +76 -0
- data/rbi/openai/models/beta/agents/vaults/credential_list_params.rbi +163 -0
- data/rbi/openai/models/beta/agents/vaults/credential_retrieve_params.rbi +68 -0
- data/rbi/openai/models/beta/agents/vaults/credential_update_params.rbi +95 -0
- data/rbi/openai/models/beta/agents/vaults/mcp_oauth_token_endpoint_auth.rbi +151 -0
- data/rbi/openai/models/beta/agents/vaults/mcp_oauth_token_endpoint_auth_create_param.rbi +171 -0
- data/rbi/openai/models/beta/agents/vaults/mcp_oauth_token_endpoint_auth_rotate_param.rbi +137 -0
- data/rbi/openai/models/beta/environment.rbi +400 -0
- data/rbi/openai/models/beta/environment_param.rbi +448 -0
- data/rbi/openai/models/beta/hosted_environment_file.rbi +93 -0
- data/rbi/openai/models/beta/hosted_environment_file_id.rbi +86 -0
- data/rbi/openai/models/beta/hosted_environment_file_param.rbi +140 -0
- data/rbi/openai/models/beta/hosted_plugin.rbi +68 -0
- data/rbi/openai/models/beta/hosted_plugin_param.rbi +80 -0
- data/rbi/openai/models/beta/hosted_skill.rbi +84 -0
- data/rbi/openai/models/beta/hosted_skill_param.rbi +152 -0
- data/rbi/openai/models/beta/hosted_skill_reference.rbi +86 -0
- data/rbi/openai/models/beta/inline_capability_source_param.rbi +68 -0
- data/rbi/openai/models/beta/input_content.rbi +124 -0
- data/rbi/openai/models/beta/input_content_param.rbi +122 -0
- data/rbi/openai/models/beta/mcp_transport.rbi +149 -0
- data/rbi/openai/models/beta/mcp_transport_param.rbi +188 -0
- data/rbi/openai/models/beta/multi_agent_config.rbi +61 -0
- data/rbi/openai/models/beta/multi_agent_config_param.rbi +62 -0
- data/rbi/openai/models/beta/output_text.rbi +59 -0
- data/rbi/openai/models/beta/persisted_agent_tool.rbi +507 -0
- data/rbi/openai/models/beta/persisted_agent_tool_param.rbi +546 -0
- data/rbi/openai/models/beta/persisted_mcp_transport.rbi +158 -0
- data/rbi/openai/models/beta/persisted_mcp_transport_param.rbi +164 -0
- data/rbi/openai/models/beta/session_error.rbi +77 -0
- data/rbi/openai/models/beta/session_turn_error.rbi +125 -0
- data/rbi/openai/models/beta/setup_command_param.rbi +59 -0
- data/rbi/openai/models/beta/subagent.rbi +158 -0
- data/rbi/openai/models/beta/summary_text.rbi +59 -0
- data/rbi/openai/models/beta/text_format.rbi +113 -0
- data/rbi/openai/models/beta/text_format_param.rbi +113 -0
- data/rbi/openai/models/beta/token_usage.rbi +174 -0
- data/rbi/openai/models/beta/web_search_action.rbi +227 -0
- data/rbi/openai/resources/beta/agents/environments/files.rbi +79 -0
- data/rbi/openai/resources/beta/agents/environments/templates.rbi +194 -0
- data/rbi/openai/resources/beta/agents/environments.rbi +44 -0
- data/rbi/openai/resources/beta/agents/sessions/artifacts.rbi +105 -0
- data/rbi/openai/resources/beta/agents/sessions/events.rbi +71 -0
- data/rbi/openai/resources/beta/agents/sessions/items.rbi +53 -0
- data/rbi/openai/resources/beta/agents/sessions/subagents/items.rbi +60 -0
- data/rbi/openai/resources/beta/agents/sessions/subagents/turns/items.rbi +67 -0
- data/rbi/openai/resources/beta/agents/sessions/subagents/turns.rbi +85 -0
- data/rbi/openai/resources/beta/agents/sessions/subagents.rbi +74 -0
- data/rbi/openai/resources/beta/agents/sessions/turns.rbi +70 -0
- data/rbi/openai/resources/beta/agents/sessions.rbi +208 -0
- data/rbi/openai/resources/beta/agents/vaults/credentials.rbi +148 -0
- data/rbi/openai/resources/beta/agents/vaults.rbi +106 -0
- data/rbi/openai/resources/beta/agents.rbi +180 -0
- data/rbi/openai/resources/beta.rbi +3 -0
- data/rbi/openai/resources/live/sessions.rbi +10 -4
- data/rbi/openai/resources/responses.rbi +8 -8
- data/sig/openai/helpers/agents.rbs +50 -0
- data/sig/openai/internal/token_page.rbs +15 -0
- data/sig/openai/models/beta/agent.rbs +96 -0
- data/sig/openai/models/beta/agent_close_subagent_call_item.rbs +47 -0
- data/sig/openai/models/beta/agent_command_execution_item.rbs +62 -0
- data/sig/openai/models/beta/agent_content.rbs +33 -0
- data/sig/openai/models/beta/agent_create_params.rbs +91 -0
- data/sig/openai/models/beta/agent_create_subagent_call_item.rbs +57 -0
- data/sig/openai/models/beta/agent_delete_params.rbs +25 -0
- data/sig/openai/models/beta/agent_deleted.rbs +24 -0
- data/sig/openai/models/beta/agent_function_call_item.rbs +52 -0
- data/sig/openai/models/beta/agent_function_call_output.rbs +16 -0
- data/sig/openai/models/beta/agent_function_call_output_param.rbs +16 -0
- data/sig/openai/models/beta/agent_function_call_status.rbs +26 -0
- data/sig/openai/models/beta/agent_interrupt_subagent_call_item.rbs +47 -0
- data/sig/openai/models/beta/agent_list_params.rbs +58 -0
- data/sig/openai/models/beta/agent_mcp_call_item.rbs +62 -0
- data/sig/openai/models/beta/agent_output_command_execution_output_delta_event.rbs +52 -0
- data/sig/openai/models/beta/agent_output_item.rbs +25 -0
- data/sig/openai/models/beta/agent_output_item_status.rbs +22 -0
- data/sig/openai/models/beta/agent_reasoning.rbs +60 -0
- data/sig/openai/models/beta/agent_reasoning_item.rbs +42 -0
- data/sig/openai/models/beta/agent_reasoning_param.rbs +60 -0
- data/sig/openai/models/beta/agent_resume_subagent_call_item.rbs +47 -0
- data/sig/openai/models/beta/agent_retrieve_params.rbs +25 -0
- data/sig/openai/models/beta/agent_send_subagent_input_call_item.rbs +52 -0
- data/sig/openai/models/beta/agent_session.rbs +234 -0
- data/sig/openai/models/beta/agent_session_assistant_message.rbs +66 -0
- data/sig/openai/models/beta/agent_session_created_event.rbs +32 -0
- data/sig/openai/models/beta/agent_session_deleted.rbs +28 -0
- data/sig/openai/models/beta/agent_session_environment_connected_event.rbs +42 -0
- data/sig/openai/models/beta/agent_session_environment_disconnected_event.rbs +42 -0
- data/sig/openai/models/beta/agent_session_environment_failed_event.rbs +42 -0
- data/sig/openai/models/beta/agent_session_environment_pending_event.rbs +42 -0
- data/sig/openai/models/beta/agent_session_environment_ready_event.rbs +42 -0
- data/sig/openai/models/beta/agent_session_environment_state.rbs +74 -0
- data/sig/openai/models/beta/agent_session_error_event.rbs +37 -0
- data/sig/openai/models/beta/agent_session_event.rbs +43 -0
- data/sig/openai/models/beta/agent_session_failed_event.rbs +32 -0
- data/sig/openai/models/beta/agent_session_idle_event.rbs +32 -0
- data/sig/openai/models/beta/agent_session_in_progress_event.rbs +32 -0
- data/sig/openai/models/beta/agent_session_input_message_param.rbs +46 -0
- data/sig/openai/models/beta/agent_session_input_param.rbs +91 -0
- data/sig/openai/models/beta/agent_session_item.rbs +116 -0
- data/sig/openai/models/beta/agent_session_message.rbs +77 -0
- data/sig/openai/models/beta/agent_session_message_content.rbs +52 -0
- data/sig/openai/models/beta/agent_session_requires_action_event.rbs +32 -0
- data/sig/openai/models/beta/agent_session_subagent_active_event.rbs +32 -0
- data/sig/openai/models/beta/agent_session_subagent_closed_event.rbs +32 -0
- data/sig/openai/models/beta/agent_session_subagent_created_event.rbs +32 -0
- data/sig/openai/models/beta/agent_session_turn_cancelled_event.rbs +47 -0
- data/sig/openai/models/beta/agent_session_turn_completed_event.rbs +47 -0
- data/sig/openai/models/beta/agent_session_turn_content_part_added_event.rbs +57 -0
- data/sig/openai/models/beta/agent_session_turn_content_part_done_event.rbs +57 -0
- data/sig/openai/models/beta/agent_session_turn_created_event.rbs +42 -0
- data/sig/openai/models/beta/agent_session_turn_failed_event.rbs +47 -0
- data/sig/openai/models/beta/agent_session_turn_in_progress_event.rbs +42 -0
- data/sig/openai/models/beta/agent_session_turn_item_added_event.rbs +47 -0
- data/sig/openai/models/beta/agent_session_turn_item_done_event.rbs +47 -0
- data/sig/openai/models/beta/agent_session_turn_output_text_delta_event.rbs +57 -0
- data/sig/openai/models/beta/agent_session_turn_output_text_done_event.rbs +57 -0
- data/sig/openai/models/beta/agent_session_turn_reasoning_summary_part_added_event.rbs +57 -0
- data/sig/openai/models/beta/agent_session_turn_reasoning_summary_part_done_event.rbs +64 -0
- data/sig/openai/models/beta/agent_session_turn_reasoning_summary_text_delta_event.rbs +57 -0
- data/sig/openai/models/beta/agent_session_turn_reasoning_summary_text_done_event.rbs +57 -0
- data/sig/openai/models/beta/agent_text.rbs +39 -0
- data/sig/openai/models/beta/agent_text_param.rbs +44 -0
- data/sig/openai/models/beta/agent_tool.rbs +226 -0
- data/sig/openai/models/beta/agent_tool_param.rbs +251 -0
- data/sig/openai/models/beta/agent_update_params.rbs +98 -0
- data/sig/openai/models/beta/agent_wait_for_subagents_call_item.rbs +47 -0
- data/sig/openai/models/beta/agent_web_search_call_item.rbs +42 -0
- data/sig/openai/models/beta/agents/environment_info.rbs +80 -0
- data/sig/openai/models/beta/agents/environment_retrieve_params.rbs +27 -0
- data/sig/openai/models/beta/agents/environments/environment_file.rbs +43 -0
- data/sig/openai/models/beta/agents/environments/environment_template.rbs +255 -0
- data/sig/openai/models/beta/agents/environments/environment_template_deleted.rbs +38 -0
- data/sig/openai/models/beta/agents/environments/file_create_params.rbs +29 -0
- data/sig/openai/models/beta/agents/environments/file_list_params.rbs +72 -0
- data/sig/openai/models/beta/agents/environments/template_create_params.rbs +138 -0
- data/sig/openai/models/beta/agents/environments/template_delete_params.rbs +32 -0
- data/sig/openai/models/beta/agents/environments/template_list_params.rbs +64 -0
- data/sig/openai/models/beta/agents/environments/template_retrieve_params.rbs +32 -0
- data/sig/openai/models/beta/agents/environments/template_update_params.rbs +143 -0
- data/sig/openai/models/beta/agents/session_create_params.rbs +144 -0
- data/sig/openai/models/beta/agents/session_delete_params.rbs +27 -0
- data/sig/openai/models/beta/agents/session_list_params.rbs +67 -0
- data/sig/openai/models/beta/agents/session_retrieve_params.rbs +27 -0
- data/sig/openai/models/beta/agents/session_update_params.rbs +35 -0
- data/sig/openai/models/beta/agents/sessions/artifact_content_params.rbs +37 -0
- data/sig/openai/models/beta/agents/sessions/artifact_delete_params.rbs +37 -0
- data/sig/openai/models/beta/agents/sessions/artifact_list_params.rbs +70 -0
- data/sig/openai/models/beta/agents/sessions/artifact_retrieve_params.rbs +37 -0
- data/sig/openai/models/beta/agents/sessions/event_create_params.rbs +44 -0
- data/sig/openai/models/beta/agents/sessions/event_stream_params.rbs +29 -0
- data/sig/openai/models/beta/agents/sessions/item_list_params.rbs +69 -0
- data/sig/openai/models/beta/agents/sessions/session_artifact.rbs +63 -0
- data/sig/openai/models/beta/agents/sessions/session_artifact_deleted.rbs +38 -0
- data/sig/openai/models/beta/agents/sessions/subagent_list_params.rbs +69 -0
- data/sig/openai/models/beta/agents/sessions/subagent_retrieve_params.rbs +37 -0
- data/sig/openai/models/beta/agents/sessions/subagents/item_list_params.rbs +76 -0
- data/sig/openai/models/beta/agents/sessions/subagents/turn_list_params.rbs +76 -0
- data/sig/openai/models/beta/agents/sessions/subagents/turn_retrieve_params.rbs +44 -0
- data/sig/openai/models/beta/agents/sessions/subagents/turns/item_list_params.rbs +83 -0
- data/sig/openai/models/beta/agents/sessions/turn.rbs +108 -0
- data/sig/openai/models/beta/agents/sessions/turn_list_params.rbs +69 -0
- data/sig/openai/models/beta/agents/sessions/turn_retrieve_params.rbs +37 -0
- data/sig/openai/models/beta/agents/vault.rbs +44 -0
- data/sig/openai/models/beta/agents/vault_create_params.rbs +37 -0
- data/sig/openai/models/beta/agents/vault_delete_params.rbs +27 -0
- data/sig/openai/models/beta/agents/vault_deleted.rbs +30 -0
- data/sig/openai/models/beta/agents/vault_list_params.rbs +69 -0
- data/sig/openai/models/beta/agents/vault_retrieve_params.rbs +27 -0
- data/sig/openai/models/beta/agents/vault_status.rbs +18 -0
- data/sig/openai/models/beta/agents/vault_status_filter.rbs +19 -0
- data/sig/openai/models/beta/agents/vaults/credential.rbs +56 -0
- data/sig/openai/models/beta/agents/vaults/credential_auth.rbs +104 -0
- data/sig/openai/models/beta/agents/vaults/credential_auth_create_param.rbs +121 -0
- data/sig/openai/models/beta/agents/vaults/credential_auth_rotate_param.rbs +90 -0
- data/sig/openai/models/beta/agents/vaults/credential_create_params.rbs +42 -0
- data/sig/openai/models/beta/agents/vaults/credential_delete_params.rbs +37 -0
- data/sig/openai/models/beta/agents/vaults/credential_deleted.rbs +32 -0
- data/sig/openai/models/beta/agents/vaults/credential_list_params.rbs +76 -0
- data/sig/openai/models/beta/agents/vaults/credential_retrieve_params.rbs +37 -0
- data/sig/openai/models/beta/agents/vaults/credential_update_params.rbs +42 -0
- data/sig/openai/models/beta/agents/vaults/mcp_oauth_token_endpoint_auth.rbs +50 -0
- data/sig/openai/models/beta/agents/vaults/mcp_oauth_token_endpoint_auth_create_param.rbs +68 -0
- data/sig/openai/models/beta/agents/vaults/mcp_oauth_token_endpoint_auth_rotate_param.rbs +57 -0
- data/sig/openai/models/beta/environment.rbs +181 -0
- data/sig/openai/models/beta/environment_param.rbs +183 -0
- data/sig/openai/models/beta/hosted_environment_file.rbs +42 -0
- data/sig/openai/models/beta/hosted_environment_file_id.rbs +42 -0
- data/sig/openai/models/beta/hosted_environment_file_param.rbs +47 -0
- data/sig/openai/models/beta/hosted_plugin.rbs +23 -0
- data/sig/openai/models/beta/hosted_plugin_param.rbs +37 -0
- data/sig/openai/models/beta/hosted_skill.rbs +32 -0
- data/sig/openai/models/beta/hosted_skill_param.rbs +70 -0
- data/sig/openai/models/beta/hosted_skill_reference.rbs +42 -0
- data/sig/openai/models/beta/inline_capability_source_param.rbs +28 -0
- data/sig/openai/models/beta/input_content.rbs +39 -0
- data/sig/openai/models/beta/input_content_param.rbs +39 -0
- data/sig/openai/models/beta/mcp_transport.rbs +63 -0
- data/sig/openai/models/beta/mcp_transport_param.rbs +89 -0
- data/sig/openai/models/beta/multi_agent_config.rbs +21 -0
- data/sig/openai/models/beta/multi_agent_config_param.rbs +23 -0
- data/sig/openai/models/beta/output_text.rbs +17 -0
- data/sig/openai/models/beta/persisted_agent_tool.rbs +237 -0
- data/sig/openai/models/beta/persisted_agent_tool_param.rbs +251 -0
- data/sig/openai/models/beta/persisted_mcp_transport.rbs +75 -0
- data/sig/openai/models/beta/persisted_mcp_transport_param.rbs +79 -0
- data/sig/openai/models/beta/session_error.rbs +32 -0
- data/sig/openai/models/beta/session_turn_error.rbs +96 -0
- data/sig/openai/models/beta/setup_command_param.rbs +17 -0
- data/sig/openai/models/beta/subagent.rbs +76 -0
- data/sig/openai/models/beta/summary_text.rbs +17 -0
- data/sig/openai/models/beta/text_format.rbs +39 -0
- data/sig/openai/models/beta/text_format_param.rbs +40 -0
- data/sig/openai/models/beta/token_usage.rbs +62 -0
- data/sig/openai/models/beta/web_search_action.rbs +85 -0
- data/sig/openai/resources/beta/agents/environments/files.rbs +28 -0
- data/sig/openai/resources/beta/agents/environments/templates.rbs +57 -0
- data/sig/openai/resources/beta/agents/environments.rbs +20 -0
- data/sig/openai/resources/beta/agents/sessions/artifacts.rbs +40 -0
- data/sig/openai/resources/beta/agents/sessions/events.rbs +25 -0
- data/sig/openai/resources/beta/agents/sessions/items.rbs +21 -0
- data/sig/openai/resources/beta/agents/sessions/subagents/items.rbs +24 -0
- data/sig/openai/resources/beta/agents/sessions/subagents/turns/items.rbs +27 -0
- data/sig/openai/resources/beta/agents/sessions/subagents/turns.rbs +33 -0
- data/sig/openai/resources/beta/agents/sessions/subagents.rbs +31 -0
- data/sig/openai/resources/beta/agents/sessions/turns.rbs +27 -0
- data/sig/openai/resources/beta/agents/sessions.rbs +65 -0
- data/sig/openai/resources/beta/agents/vaults/credentials.rbs +48 -0
- data/sig/openai/resources/beta/agents/vaults.rbs +37 -0
- data/sig/openai/resources/beta/agents.rbs +59 -0
- data/sig/openai/resources/beta.rbs +2 -0
- metadata +525 -1
|
@@ -0,0 +1,314 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
module Beta
|
|
6
|
+
# A tool available to the agent.
|
|
7
|
+
module AgentTool
|
|
8
|
+
extend OpenAI::Internal::Type::Union
|
|
9
|
+
|
|
10
|
+
discriminator :type
|
|
11
|
+
|
|
12
|
+
# A function defined by the application.
|
|
13
|
+
variant :function, -> { OpenAI::Beta::AgentTool::Function }
|
|
14
|
+
|
|
15
|
+
# Enables calling tools from model-generated code.
|
|
16
|
+
variant :programmatic_tool_calling, -> { OpenAI::Beta::AgentTool::ProgrammaticToolCalling }
|
|
17
|
+
|
|
18
|
+
# Tools provided by a remote MCP server.
|
|
19
|
+
variant :mcp, -> { OpenAI::Beta::AgentTool::Mcp }
|
|
20
|
+
|
|
21
|
+
# Web search.
|
|
22
|
+
variant :web_search, -> { OpenAI::Beta::AgentTool::WebSearch }
|
|
23
|
+
|
|
24
|
+
class Function < OpenAI::Internal::Type::BaseModel
|
|
25
|
+
# @!attribute defer_loading
|
|
26
|
+
# Whether the function is deferred and discovered through tool search.
|
|
27
|
+
#
|
|
28
|
+
# @return [Boolean]
|
|
29
|
+
required :defer_loading, OpenAI::Internal::Type::Boolean
|
|
30
|
+
|
|
31
|
+
# @!attribute description
|
|
32
|
+
# A description of what the function does.
|
|
33
|
+
#
|
|
34
|
+
# @return [String]
|
|
35
|
+
required :description, String
|
|
36
|
+
|
|
37
|
+
# @!attribute name
|
|
38
|
+
# The name of the function.
|
|
39
|
+
#
|
|
40
|
+
# @return [String]
|
|
41
|
+
required :name, String
|
|
42
|
+
|
|
43
|
+
# @!attribute parameters
|
|
44
|
+
# A JSON Schema object describing the function's arguments.
|
|
45
|
+
#
|
|
46
|
+
# @return [Hash{Symbol=>Object}]
|
|
47
|
+
required :parameters, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown]
|
|
48
|
+
|
|
49
|
+
# @!attribute type
|
|
50
|
+
# The type of the object. Always `function`.
|
|
51
|
+
#
|
|
52
|
+
# @return [Symbol, :function]
|
|
53
|
+
required :type, const: :function
|
|
54
|
+
|
|
55
|
+
# @!method initialize(defer_loading:, description:, name:, parameters:, type: :function)
|
|
56
|
+
# A function defined by the application.
|
|
57
|
+
#
|
|
58
|
+
# @param defer_loading [Boolean]
|
|
59
|
+
# Whether the function is deferred and discovered through tool search.
|
|
60
|
+
#
|
|
61
|
+
# @param description [String]
|
|
62
|
+
# A description of what the function does.
|
|
63
|
+
#
|
|
64
|
+
# @param name [String]
|
|
65
|
+
# The name of the function.
|
|
66
|
+
#
|
|
67
|
+
# @param parameters [Hash{Symbol=>Object}]
|
|
68
|
+
# A JSON Schema object describing the function's arguments.
|
|
69
|
+
#
|
|
70
|
+
# @param type [Symbol, :function]
|
|
71
|
+
# The type of the object. Always `function`.
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
class ProgrammaticToolCalling < OpenAI::Internal::Type::BaseModel
|
|
75
|
+
# @!attribute enabled
|
|
76
|
+
# Whether tools can be called from model-generated code.
|
|
77
|
+
#
|
|
78
|
+
# @return [Boolean]
|
|
79
|
+
required :enabled, OpenAI::Internal::Type::Boolean
|
|
80
|
+
|
|
81
|
+
# @!attribute type
|
|
82
|
+
# The type of the object. Always `programmatic_tool_calling`.
|
|
83
|
+
#
|
|
84
|
+
# @return [Symbol, :programmatic_tool_calling]
|
|
85
|
+
required :type, const: :programmatic_tool_calling
|
|
86
|
+
|
|
87
|
+
# @!method initialize(enabled:, type: :programmatic_tool_calling)
|
|
88
|
+
# Enables calling tools from model-generated code.
|
|
89
|
+
#
|
|
90
|
+
# @param enabled [Boolean]
|
|
91
|
+
# Whether tools can be called from model-generated code.
|
|
92
|
+
#
|
|
93
|
+
# @param type [Symbol, :programmatic_tool_calling]
|
|
94
|
+
# The type of the object. Always `programmatic_tool_calling`.
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
class Mcp < OpenAI::Internal::Type::BaseModel
|
|
98
|
+
# @!attribute allowed_tools
|
|
99
|
+
# The MCP tools the agent may call.
|
|
100
|
+
#
|
|
101
|
+
# @return [Array<String>, nil]
|
|
102
|
+
required :allowed_tools, OpenAI::Internal::Type::ArrayOf[String], nil?: true
|
|
103
|
+
|
|
104
|
+
# @!attribute connection_origin
|
|
105
|
+
# Where outbound MCP HTTP connections originate.
|
|
106
|
+
#
|
|
107
|
+
# @return [Symbol, OpenAI::Models::Beta::AgentTool::Mcp::ConnectionOrigin]
|
|
108
|
+
required :connection_origin, enum: -> { OpenAI::Beta::AgentTool::Mcp::ConnectionOrigin }
|
|
109
|
+
|
|
110
|
+
# @!attribute credential_id
|
|
111
|
+
# The attached vault credential selected for this MCP server, if any. Optional
|
|
112
|
+
# when exactly one attached credential matches the server URL.
|
|
113
|
+
#
|
|
114
|
+
# @return [String, nil]
|
|
115
|
+
required :credential_id, String, nil?: true
|
|
116
|
+
|
|
117
|
+
# @!attribute request_metadata
|
|
118
|
+
# Metadata included with requests to this MCP server.
|
|
119
|
+
#
|
|
120
|
+
# @return [Hash{Symbol=>Object}]
|
|
121
|
+
required :request_metadata, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown]
|
|
122
|
+
|
|
123
|
+
# @!attribute required
|
|
124
|
+
# Whether this MCP server must initialize before the first turn.
|
|
125
|
+
#
|
|
126
|
+
# @return [Boolean]
|
|
127
|
+
required :required, OpenAI::Internal::Type::Boolean
|
|
128
|
+
|
|
129
|
+
# @!attribute server_label
|
|
130
|
+
# A label used to identify the MCP server in tool calls.
|
|
131
|
+
#
|
|
132
|
+
# @return [String]
|
|
133
|
+
required :server_label, String
|
|
134
|
+
|
|
135
|
+
# @!attribute transport
|
|
136
|
+
# The transport used to connect to the MCP server.
|
|
137
|
+
#
|
|
138
|
+
# @return [OpenAI::Models::Beta::McpTransport::HTTP, OpenAI::Models::Beta::McpTransport::Stdio]
|
|
139
|
+
required :transport, union: -> { OpenAI::Beta::McpTransport }
|
|
140
|
+
|
|
141
|
+
# @!attribute type
|
|
142
|
+
# The type of the object. Always `mcp`.
|
|
143
|
+
#
|
|
144
|
+
# @return [Symbol, :mcp]
|
|
145
|
+
required :type, const: :mcp
|
|
146
|
+
|
|
147
|
+
# @!method initialize(allowed_tools:, connection_origin:, credential_id:, request_metadata:, required:, server_label:, transport:, type: :mcp)
|
|
148
|
+
# Tools provided by a remote MCP server.
|
|
149
|
+
#
|
|
150
|
+
# @param allowed_tools [Array<String>, nil]
|
|
151
|
+
# The MCP tools the agent may call.
|
|
152
|
+
#
|
|
153
|
+
# @param connection_origin [Symbol, OpenAI::Models::Beta::AgentTool::Mcp::ConnectionOrigin]
|
|
154
|
+
# Where outbound MCP HTTP connections originate.
|
|
155
|
+
#
|
|
156
|
+
# @param credential_id [String, nil]
|
|
157
|
+
# The attached vault credential selected for this MCP server, if any. Optional
|
|
158
|
+
# when exactly one attached credential matches the server URL.
|
|
159
|
+
#
|
|
160
|
+
# @param request_metadata [Hash{Symbol=>Object}]
|
|
161
|
+
# Metadata included with requests to this MCP server.
|
|
162
|
+
#
|
|
163
|
+
# @param required [Boolean]
|
|
164
|
+
# Whether this MCP server must initialize before the first turn.
|
|
165
|
+
#
|
|
166
|
+
# @param server_label [String]
|
|
167
|
+
# A label used to identify the MCP server in tool calls.
|
|
168
|
+
#
|
|
169
|
+
# @param transport [OpenAI::Models::Beta::McpTransport::HTTP, OpenAI::Models::Beta::McpTransport::Stdio]
|
|
170
|
+
# The transport used to connect to the MCP server.
|
|
171
|
+
#
|
|
172
|
+
# @param type [Symbol, :mcp]
|
|
173
|
+
# The type of the object. Always `mcp`.
|
|
174
|
+
|
|
175
|
+
# Where outbound MCP HTTP connections originate.
|
|
176
|
+
#
|
|
177
|
+
# @see OpenAI::Models::Beta::AgentTool::Mcp#connection_origin
|
|
178
|
+
module ConnectionOrigin
|
|
179
|
+
extend OpenAI::Internal::Type::Enum
|
|
180
|
+
|
|
181
|
+
SERVICE = :service
|
|
182
|
+
ENVIRONMENT = :environment
|
|
183
|
+
|
|
184
|
+
# @!method self.values
|
|
185
|
+
# @return [Array<Symbol>]
|
|
186
|
+
end
|
|
187
|
+
end
|
|
188
|
+
|
|
189
|
+
class WebSearch < OpenAI::Internal::Type::BaseModel
|
|
190
|
+
# @!attribute allowed_domains
|
|
191
|
+
# Allowed search domains, or `null` when the search is unrestricted.
|
|
192
|
+
#
|
|
193
|
+
# @return [Array<String>, nil]
|
|
194
|
+
required :allowed_domains, OpenAI::Internal::Type::ArrayOf[String], nil?: true
|
|
195
|
+
|
|
196
|
+
# @!attribute context_size
|
|
197
|
+
# The amount of search context made available to the model. Defaults to `medium`.
|
|
198
|
+
#
|
|
199
|
+
# @return [Symbol, OpenAI::Models::Beta::AgentTool::WebSearch::ContextSize]
|
|
200
|
+
required :context_size, enum: -> { OpenAI::Beta::AgentTool::WebSearch::ContextSize }
|
|
201
|
+
|
|
202
|
+
# @!attribute location
|
|
203
|
+
# Approximate user location used to localize web search results.
|
|
204
|
+
#
|
|
205
|
+
# @return [OpenAI::Models::Beta::AgentTool::WebSearch::Location, nil]
|
|
206
|
+
required :location, -> { OpenAI::Beta::AgentTool::WebSearch::Location }, nil?: true
|
|
207
|
+
|
|
208
|
+
# @!attribute mode
|
|
209
|
+
# The source used for web search results.
|
|
210
|
+
#
|
|
211
|
+
# @return [Symbol, OpenAI::Models::Beta::AgentTool::WebSearch::Mode]
|
|
212
|
+
required :mode, enum: -> { OpenAI::Beta::AgentTool::WebSearch::Mode }
|
|
213
|
+
|
|
214
|
+
# @!attribute type
|
|
215
|
+
# The type of the object. Always `web_search`.
|
|
216
|
+
#
|
|
217
|
+
# @return [Symbol, :web_search]
|
|
218
|
+
required :type, const: :web_search
|
|
219
|
+
|
|
220
|
+
# @!method initialize(allowed_domains:, context_size:, location:, mode:, type: :web_search)
|
|
221
|
+
# Web search.
|
|
222
|
+
#
|
|
223
|
+
# @param allowed_domains [Array<String>, nil]
|
|
224
|
+
# Allowed search domains, or `null` when the search is unrestricted.
|
|
225
|
+
#
|
|
226
|
+
# @param context_size [Symbol, OpenAI::Models::Beta::AgentTool::WebSearch::ContextSize]
|
|
227
|
+
# The amount of search context made available to the model. Defaults to `medium`.
|
|
228
|
+
#
|
|
229
|
+
# @param location [OpenAI::Models::Beta::AgentTool::WebSearch::Location, nil]
|
|
230
|
+
# Approximate user location used to localize web search results.
|
|
231
|
+
#
|
|
232
|
+
# @param mode [Symbol, OpenAI::Models::Beta::AgentTool::WebSearch::Mode]
|
|
233
|
+
# The source used for web search results.
|
|
234
|
+
#
|
|
235
|
+
# @param type [Symbol, :web_search]
|
|
236
|
+
# The type of the object. Always `web_search`.
|
|
237
|
+
|
|
238
|
+
# The amount of search context made available to the model. Defaults to `medium`.
|
|
239
|
+
#
|
|
240
|
+
# @see OpenAI::Models::Beta::AgentTool::WebSearch#context_size
|
|
241
|
+
module ContextSize
|
|
242
|
+
extend OpenAI::Internal::Type::Enum
|
|
243
|
+
|
|
244
|
+
LOW = :low
|
|
245
|
+
MEDIUM = :medium
|
|
246
|
+
HIGH = :high
|
|
247
|
+
|
|
248
|
+
# @!method self.values
|
|
249
|
+
# @return [Array<Symbol>]
|
|
250
|
+
end
|
|
251
|
+
|
|
252
|
+
# @see OpenAI::Models::Beta::AgentTool::WebSearch#location
|
|
253
|
+
class Location < OpenAI::Internal::Type::BaseModel
|
|
254
|
+
# @!attribute city
|
|
255
|
+
# The city name.
|
|
256
|
+
#
|
|
257
|
+
# @return [String, nil]
|
|
258
|
+
required :city, String, nil?: true
|
|
259
|
+
|
|
260
|
+
# @!attribute country
|
|
261
|
+
# The two-letter ISO country code, such as `US`.
|
|
262
|
+
#
|
|
263
|
+
# @return [String, nil]
|
|
264
|
+
required :country, String, nil?: true
|
|
265
|
+
|
|
266
|
+
# @!attribute region
|
|
267
|
+
# The region or state name.
|
|
268
|
+
#
|
|
269
|
+
# @return [String, nil]
|
|
270
|
+
required :region, String, nil?: true
|
|
271
|
+
|
|
272
|
+
# @!attribute timezone
|
|
273
|
+
# The IANA timezone, such as `America/Los_Angeles`.
|
|
274
|
+
#
|
|
275
|
+
# @return [String, nil]
|
|
276
|
+
required :timezone, String, nil?: true
|
|
277
|
+
|
|
278
|
+
# @!method initialize(city:, country:, region:, timezone:)
|
|
279
|
+
# Approximate user location used to localize web search results.
|
|
280
|
+
#
|
|
281
|
+
# @param city [String, nil]
|
|
282
|
+
# The city name.
|
|
283
|
+
#
|
|
284
|
+
# @param country [String, nil]
|
|
285
|
+
# The two-letter ISO country code, such as `US`.
|
|
286
|
+
#
|
|
287
|
+
# @param region [String, nil]
|
|
288
|
+
# The region or state name.
|
|
289
|
+
#
|
|
290
|
+
# @param timezone [String, nil]
|
|
291
|
+
# The IANA timezone, such as `America/Los_Angeles`.
|
|
292
|
+
end
|
|
293
|
+
|
|
294
|
+
# The source used for web search results.
|
|
295
|
+
#
|
|
296
|
+
# @see OpenAI::Models::Beta::AgentTool::WebSearch#mode
|
|
297
|
+
module Mode
|
|
298
|
+
extend OpenAI::Internal::Type::Enum
|
|
299
|
+
|
|
300
|
+
DISABLED = :disabled
|
|
301
|
+
CACHED = :cached
|
|
302
|
+
LIVE = :live
|
|
303
|
+
|
|
304
|
+
# @!method self.values
|
|
305
|
+
# @return [Array<Symbol>]
|
|
306
|
+
end
|
|
307
|
+
end
|
|
308
|
+
|
|
309
|
+
# @!method self.variants
|
|
310
|
+
# @return [Array(OpenAI::Models::Beta::AgentTool::Function, OpenAI::Models::Beta::AgentTool::ProgrammaticToolCalling, OpenAI::Models::Beta::AgentTool::Mcp, OpenAI::Models::Beta::AgentTool::WebSearch)]
|
|
311
|
+
end
|
|
312
|
+
end
|
|
313
|
+
end
|
|
314
|
+
end
|
|
@@ -0,0 +1,359 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
module Beta
|
|
6
|
+
# A tool available to the agent.
|
|
7
|
+
module AgentToolParam
|
|
8
|
+
extend OpenAI::Internal::Type::Union
|
|
9
|
+
|
|
10
|
+
discriminator :type
|
|
11
|
+
|
|
12
|
+
# A function defined by the application.
|
|
13
|
+
variant :function, -> { OpenAI::Beta::AgentToolParam::Function }
|
|
14
|
+
|
|
15
|
+
# Discovers deferred function tools and loads them into the model context.
|
|
16
|
+
variant :tool_search, -> { OpenAI::Beta::AgentToolParam::ToolSearch }
|
|
17
|
+
|
|
18
|
+
# Enables calling tools from model-generated code.
|
|
19
|
+
variant :programmatic_tool_calling, -> { OpenAI::Beta::AgentToolParam::ProgrammaticToolCalling }
|
|
20
|
+
|
|
21
|
+
# Tools provided by a remote MCP server.
|
|
22
|
+
variant :mcp, -> { OpenAI::Beta::AgentToolParam::Mcp }
|
|
23
|
+
|
|
24
|
+
# Web search.
|
|
25
|
+
variant :web_search, -> { OpenAI::Beta::AgentToolParam::WebSearch }
|
|
26
|
+
|
|
27
|
+
class Function < OpenAI::Internal::Type::BaseModel
|
|
28
|
+
# @!attribute description
|
|
29
|
+
# A description of what the function does.
|
|
30
|
+
#
|
|
31
|
+
# @return [String]
|
|
32
|
+
required :description, String
|
|
33
|
+
|
|
34
|
+
# @!attribute name
|
|
35
|
+
# The name of the function.
|
|
36
|
+
#
|
|
37
|
+
# @return [String]
|
|
38
|
+
required :name, String
|
|
39
|
+
|
|
40
|
+
# @!attribute parameters
|
|
41
|
+
# A JSON Schema object describing the function's arguments.
|
|
42
|
+
#
|
|
43
|
+
# @return [Hash{Symbol=>Object}]
|
|
44
|
+
required :parameters, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown]
|
|
45
|
+
|
|
46
|
+
# @!attribute type
|
|
47
|
+
# The type of the object. Always `function`.
|
|
48
|
+
#
|
|
49
|
+
# @return [Symbol, :function]
|
|
50
|
+
required :type, const: :function
|
|
51
|
+
|
|
52
|
+
# @!attribute defer_loading
|
|
53
|
+
# Whether this function is deferred and discovered through tool search. Defaults
|
|
54
|
+
# to `false`.
|
|
55
|
+
#
|
|
56
|
+
# @return [Boolean, nil]
|
|
57
|
+
optional :defer_loading, OpenAI::Internal::Type::Boolean
|
|
58
|
+
|
|
59
|
+
# @!method initialize(description:, name:, parameters:, defer_loading: nil, type: :function)
|
|
60
|
+
# A function defined by the application.
|
|
61
|
+
#
|
|
62
|
+
# @param description [String]
|
|
63
|
+
# A description of what the function does.
|
|
64
|
+
#
|
|
65
|
+
# @param name [String]
|
|
66
|
+
# The name of the function.
|
|
67
|
+
#
|
|
68
|
+
# @param parameters [Hash{Symbol=>Object}]
|
|
69
|
+
# A JSON Schema object describing the function's arguments.
|
|
70
|
+
#
|
|
71
|
+
# @param defer_loading [Boolean]
|
|
72
|
+
# Whether this function is deferred and discovered through tool search. Defaults
|
|
73
|
+
# to `false`.
|
|
74
|
+
#
|
|
75
|
+
# @param type [Symbol, :function]
|
|
76
|
+
# The type of the object. Always `function`.
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
class ToolSearch < OpenAI::Internal::Type::BaseModel
|
|
80
|
+
# @!attribute type
|
|
81
|
+
# The type of the object. Always `tool_search`.
|
|
82
|
+
#
|
|
83
|
+
# @return [Symbol, :tool_search]
|
|
84
|
+
required :type, const: :tool_search
|
|
85
|
+
|
|
86
|
+
# @!method initialize(type: :tool_search)
|
|
87
|
+
# Discovers deferred function tools and loads them into the model context.
|
|
88
|
+
#
|
|
89
|
+
# @param type [Symbol, :tool_search]
|
|
90
|
+
# The type of the object. Always `tool_search`.
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
class ProgrammaticToolCalling < OpenAI::Internal::Type::BaseModel
|
|
94
|
+
# @!attribute type
|
|
95
|
+
# The type of the object. Always `programmatic_tool_calling`.
|
|
96
|
+
#
|
|
97
|
+
# @return [Symbol, :programmatic_tool_calling]
|
|
98
|
+
required :type, const: :programmatic_tool_calling
|
|
99
|
+
|
|
100
|
+
# @!attribute enabled
|
|
101
|
+
# Whether tools can be called from model-generated code. Defaults to `true`.
|
|
102
|
+
#
|
|
103
|
+
# @return [Boolean, nil]
|
|
104
|
+
optional :enabled, OpenAI::Internal::Type::Boolean
|
|
105
|
+
|
|
106
|
+
# @!method initialize(enabled: nil, type: :programmatic_tool_calling)
|
|
107
|
+
# Enables calling tools from model-generated code.
|
|
108
|
+
#
|
|
109
|
+
# @param enabled [Boolean]
|
|
110
|
+
# Whether tools can be called from model-generated code. Defaults to `true`.
|
|
111
|
+
#
|
|
112
|
+
# @param type [Symbol, :programmatic_tool_calling]
|
|
113
|
+
# The type of the object. Always `programmatic_tool_calling`.
|
|
114
|
+
end
|
|
115
|
+
|
|
116
|
+
class Mcp < OpenAI::Internal::Type::BaseModel
|
|
117
|
+
# @!attribute server_label
|
|
118
|
+
# A label used to identify the MCP server in tool calls.
|
|
119
|
+
#
|
|
120
|
+
# @return [String]
|
|
121
|
+
required :server_label, String
|
|
122
|
+
|
|
123
|
+
# @!attribute transport
|
|
124
|
+
# The transport used to connect to the MCP server.
|
|
125
|
+
#
|
|
126
|
+
# @return [OpenAI::Models::Beta::McpTransportParam::HTTP, OpenAI::Models::Beta::McpTransportParam::Stdio]
|
|
127
|
+
required :transport, union: -> { OpenAI::Beta::McpTransportParam }
|
|
128
|
+
|
|
129
|
+
# @!attribute type
|
|
130
|
+
# The type of the object. Always `mcp`.
|
|
131
|
+
#
|
|
132
|
+
# @return [Symbol, :mcp]
|
|
133
|
+
required :type, const: :mcp
|
|
134
|
+
|
|
135
|
+
# @!attribute allowed_tools
|
|
136
|
+
# The MCP tools the agent may call. All server tools are allowed when omitted.
|
|
137
|
+
#
|
|
138
|
+
# @return [Array<String>, nil]
|
|
139
|
+
optional :allowed_tools, OpenAI::Internal::Type::ArrayOf[String], nil?: true
|
|
140
|
+
|
|
141
|
+
# @!attribute connection_origin
|
|
142
|
+
# Where outbound MCP HTTP connections originate.
|
|
143
|
+
#
|
|
144
|
+
# @return [Symbol, OpenAI::Models::Beta::AgentToolParam::Mcp::ConnectionOrigin, nil]
|
|
145
|
+
optional(
|
|
146
|
+
:connection_origin,
|
|
147
|
+
enum: -> {
|
|
148
|
+
OpenAI::Beta::AgentToolParam::Mcp::ConnectionOrigin
|
|
149
|
+
},
|
|
150
|
+
nil?: true
|
|
151
|
+
)
|
|
152
|
+
|
|
153
|
+
# @!attribute credential_id
|
|
154
|
+
# The attached vault credential used to authenticate this MCP server. Optional
|
|
155
|
+
# when exactly one attached credential matches the server URL.
|
|
156
|
+
#
|
|
157
|
+
# @return [String, nil]
|
|
158
|
+
optional :credential_id, String, nil?: true
|
|
159
|
+
|
|
160
|
+
# @!attribute request_metadata
|
|
161
|
+
# Metadata included with requests to this MCP server.
|
|
162
|
+
#
|
|
163
|
+
# @return [Hash{Symbol=>Object}, nil]
|
|
164
|
+
optional(
|
|
165
|
+
:request_metadata,
|
|
166
|
+
OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown],
|
|
167
|
+
nil?: true
|
|
168
|
+
)
|
|
169
|
+
|
|
170
|
+
# @!attribute required
|
|
171
|
+
# Whether this MCP server must initialize before the first turn. Defaults to
|
|
172
|
+
# `false`.
|
|
173
|
+
#
|
|
174
|
+
# @return [Boolean, nil]
|
|
175
|
+
optional :required, OpenAI::Internal::Type::Boolean
|
|
176
|
+
|
|
177
|
+
# @!method initialize(server_label:, transport:, allowed_tools: nil, connection_origin: nil, credential_id: nil, request_metadata: nil, required: nil, type: :mcp)
|
|
178
|
+
# Tools provided by a remote MCP server.
|
|
179
|
+
#
|
|
180
|
+
# @param server_label [String]
|
|
181
|
+
# A label used to identify the MCP server in tool calls.
|
|
182
|
+
#
|
|
183
|
+
# @param transport [OpenAI::Models::Beta::McpTransportParam::HTTP, OpenAI::Models::Beta::McpTransportParam::Stdio]
|
|
184
|
+
# The transport used to connect to the MCP server.
|
|
185
|
+
#
|
|
186
|
+
# @param allowed_tools [Array<String>, nil]
|
|
187
|
+
# The MCP tools the agent may call. All server tools are allowed when omitted.
|
|
188
|
+
#
|
|
189
|
+
# @param connection_origin [Symbol, OpenAI::Models::Beta::AgentToolParam::Mcp::ConnectionOrigin, nil]
|
|
190
|
+
# Where outbound MCP HTTP connections originate.
|
|
191
|
+
#
|
|
192
|
+
# @param credential_id [String, nil]
|
|
193
|
+
# The attached vault credential used to authenticate this MCP server. Optional
|
|
194
|
+
# when exactly one attached credential matches the server URL.
|
|
195
|
+
#
|
|
196
|
+
# @param request_metadata [Hash{Symbol=>Object}, nil]
|
|
197
|
+
# Metadata included with requests to this MCP server.
|
|
198
|
+
#
|
|
199
|
+
# @param required [Boolean]
|
|
200
|
+
# Whether this MCP server must initialize before the first turn. Defaults to
|
|
201
|
+
# `false`.
|
|
202
|
+
#
|
|
203
|
+
# @param type [Symbol, :mcp]
|
|
204
|
+
# The type of the object. Always `mcp`.
|
|
205
|
+
|
|
206
|
+
# Where outbound MCP HTTP connections originate.
|
|
207
|
+
#
|
|
208
|
+
# @see OpenAI::Models::Beta::AgentToolParam::Mcp#connection_origin
|
|
209
|
+
module ConnectionOrigin
|
|
210
|
+
extend OpenAI::Internal::Type::Enum
|
|
211
|
+
|
|
212
|
+
# Uses the Managed Agents service network.
|
|
213
|
+
SERVICE = :service
|
|
214
|
+
|
|
215
|
+
# Uses the session's execution environment.
|
|
216
|
+
ENVIRONMENT = :environment
|
|
217
|
+
|
|
218
|
+
# @!method self.values
|
|
219
|
+
# @return [Array<Symbol>]
|
|
220
|
+
end
|
|
221
|
+
end
|
|
222
|
+
|
|
223
|
+
class WebSearch < OpenAI::Internal::Type::BaseModel
|
|
224
|
+
# @!attribute type
|
|
225
|
+
# The type of the object. Always `web_search`.
|
|
226
|
+
#
|
|
227
|
+
# @return [Symbol, :web_search]
|
|
228
|
+
required :type, const: :web_search
|
|
229
|
+
|
|
230
|
+
# @!attribute allowed_domains
|
|
231
|
+
# Domains the search may include.
|
|
232
|
+
#
|
|
233
|
+
# @return [Array<String>, nil]
|
|
234
|
+
optional :allowed_domains, OpenAI::Internal::Type::ArrayOf[String], nil?: true
|
|
235
|
+
|
|
236
|
+
# @!attribute context_size
|
|
237
|
+
# The amount of web search context made available to the model.
|
|
238
|
+
#
|
|
239
|
+
# @return [Symbol, OpenAI::Models::Beta::AgentToolParam::WebSearch::ContextSize, nil]
|
|
240
|
+
optional(
|
|
241
|
+
:context_size,
|
|
242
|
+
enum: -> {
|
|
243
|
+
OpenAI::Beta::AgentToolParam::WebSearch::ContextSize
|
|
244
|
+
},
|
|
245
|
+
nil?: true
|
|
246
|
+
)
|
|
247
|
+
|
|
248
|
+
# @!attribute location
|
|
249
|
+
# Approximate user location used to localize web search results.
|
|
250
|
+
#
|
|
251
|
+
# @return [OpenAI::Models::Beta::AgentToolParam::WebSearch::Location, nil]
|
|
252
|
+
optional :location, -> { OpenAI::Beta::AgentToolParam::WebSearch::Location }, nil?: true
|
|
253
|
+
|
|
254
|
+
# @!attribute mode
|
|
255
|
+
# The source used for web search results.
|
|
256
|
+
#
|
|
257
|
+
# @return [Symbol, OpenAI::Models::Beta::AgentToolParam::WebSearch::Mode, nil]
|
|
258
|
+
optional :mode, enum: -> { OpenAI::Beta::AgentToolParam::WebSearch::Mode }, nil?: true
|
|
259
|
+
|
|
260
|
+
# @!method initialize(allowed_domains: nil, context_size: nil, location: nil, mode: nil, type: :web_search)
|
|
261
|
+
# Web search.
|
|
262
|
+
#
|
|
263
|
+
# @param allowed_domains [Array<String>, nil]
|
|
264
|
+
# Domains the search may include.
|
|
265
|
+
#
|
|
266
|
+
# @param context_size [Symbol, OpenAI::Models::Beta::AgentToolParam::WebSearch::ContextSize, nil]
|
|
267
|
+
# The amount of web search context made available to the model.
|
|
268
|
+
#
|
|
269
|
+
# @param location [OpenAI::Models::Beta::AgentToolParam::WebSearch::Location, nil]
|
|
270
|
+
# Approximate user location used to localize web search results.
|
|
271
|
+
#
|
|
272
|
+
# @param mode [Symbol, OpenAI::Models::Beta::AgentToolParam::WebSearch::Mode, nil]
|
|
273
|
+
# The source used for web search results.
|
|
274
|
+
#
|
|
275
|
+
# @param type [Symbol, :web_search]
|
|
276
|
+
# The type of the object. Always `web_search`.
|
|
277
|
+
|
|
278
|
+
# The amount of web search context made available to the model.
|
|
279
|
+
#
|
|
280
|
+
# @see OpenAI::Models::Beta::AgentToolParam::WebSearch#context_size
|
|
281
|
+
module ContextSize
|
|
282
|
+
extend OpenAI::Internal::Type::Enum
|
|
283
|
+
|
|
284
|
+
LOW = :low
|
|
285
|
+
MEDIUM = :medium
|
|
286
|
+
HIGH = :high
|
|
287
|
+
|
|
288
|
+
# @!method self.values
|
|
289
|
+
# @return [Array<Symbol>]
|
|
290
|
+
end
|
|
291
|
+
|
|
292
|
+
# @see OpenAI::Models::Beta::AgentToolParam::WebSearch#location
|
|
293
|
+
class Location < OpenAI::Internal::Type::BaseModel
|
|
294
|
+
# @!attribute city
|
|
295
|
+
# The city name.
|
|
296
|
+
#
|
|
297
|
+
# @return [String, nil]
|
|
298
|
+
optional :city, String, nil?: true
|
|
299
|
+
|
|
300
|
+
# @!attribute country
|
|
301
|
+
# The two-letter ISO country code, such as `US`.
|
|
302
|
+
#
|
|
303
|
+
# @return [String, nil]
|
|
304
|
+
optional :country, String, nil?: true
|
|
305
|
+
|
|
306
|
+
# @!attribute region
|
|
307
|
+
# The region or state name.
|
|
308
|
+
#
|
|
309
|
+
# @return [String, nil]
|
|
310
|
+
optional :region, String, nil?: true
|
|
311
|
+
|
|
312
|
+
# @!attribute timezone
|
|
313
|
+
# The IANA timezone, such as `America/Los_Angeles`.
|
|
314
|
+
#
|
|
315
|
+
# @return [String, nil]
|
|
316
|
+
optional :timezone, String, nil?: true
|
|
317
|
+
|
|
318
|
+
# @!method initialize(city: nil, country: nil, region: nil, timezone: nil)
|
|
319
|
+
# Approximate user location used to localize web search results.
|
|
320
|
+
#
|
|
321
|
+
# @param city [String, nil]
|
|
322
|
+
# The city name.
|
|
323
|
+
#
|
|
324
|
+
# @param country [String, nil]
|
|
325
|
+
# The two-letter ISO country code, such as `US`.
|
|
326
|
+
#
|
|
327
|
+
# @param region [String, nil]
|
|
328
|
+
# The region or state name.
|
|
329
|
+
#
|
|
330
|
+
# @param timezone [String, nil]
|
|
331
|
+
# The IANA timezone, such as `America/Los_Angeles`.
|
|
332
|
+
end
|
|
333
|
+
|
|
334
|
+
# The source used for web search results.
|
|
335
|
+
#
|
|
336
|
+
# @see OpenAI::Models::Beta::AgentToolParam::WebSearch#mode
|
|
337
|
+
module Mode
|
|
338
|
+
extend OpenAI::Internal::Type::Enum
|
|
339
|
+
|
|
340
|
+
# Disables web search.
|
|
341
|
+
DISABLED = :disabled
|
|
342
|
+
|
|
343
|
+
# Uses cached search results.
|
|
344
|
+
CACHED = :cached
|
|
345
|
+
|
|
346
|
+
# Searches the live web.
|
|
347
|
+
LIVE = :live
|
|
348
|
+
|
|
349
|
+
# @!method self.values
|
|
350
|
+
# @return [Array<Symbol>]
|
|
351
|
+
end
|
|
352
|
+
end
|
|
353
|
+
|
|
354
|
+
# @!method self.variants
|
|
355
|
+
# @return [Array(OpenAI::Models::Beta::AgentToolParam::Function, OpenAI::Models::Beta::AgentToolParam::ToolSearch, OpenAI::Models::Beta::AgentToolParam::ProgrammaticToolCalling, OpenAI::Models::Beta::AgentToolParam::Mcp, OpenAI::Models::Beta::AgentToolParam::WebSearch)]
|
|
356
|
+
end
|
|
357
|
+
end
|
|
358
|
+
end
|
|
359
|
+
end
|