openai 0.97.0 → 0.99.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 +31 -0
- data/README.md +76 -1
- data/lib/openai/helpers/agents/session_stream.rb +60 -3
- data/lib/openai/helpers/beta/agents/artifacts.rb +72 -0
- data/lib/openai/helpers/beta/agents/creation_stream.rb +69 -0
- data/lib/openai/helpers/beta/agents/files.rb +236 -0
- data/lib/openai/helpers/beta/agents/function_tool.rb +65 -0
- data/lib/openai/helpers/beta/agents/model_adapter.rb +27 -0
- data/lib/openai/helpers/beta/agents/result.rb +170 -0
- data/lib/openai/helpers/beta/agents/typed_output.rb +191 -0
- data/lib/openai/helpers/live/websocket.rb +7 -1
- data/lib/openai/helpers/realtime/conversation_item_variant_resolver.rb +1 -1
- data/lib/openai/helpers/responses_websocket/connection.rb +7 -1
- data/lib/openai/helpers/responses_websocket/session.rb +5 -1
- data/lib/openai/helpers/responses_websocket/transports/async_websocket.rb +12 -2
- data/lib/openai/internal/transport/base_client.rb +18 -0
- data/lib/openai/internal/type/array_of.rb +1 -1
- data/lib/openai/internal/type/base_model.rb +6 -3
- data/lib/openai/internal/type/converter.rb +50 -3
- data/lib/openai/internal/type/hash_of.rb +1 -1
- data/lib/openai/internal/type/union.rb +6 -6
- data/lib/openai/models/admin/organization/usage_audio_speeches_response.rb +16 -3
- data/lib/openai/models/admin/organization/usage_audio_transcriptions_response.rb +16 -3
- data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_response.rb +16 -3
- data/lib/openai/models/admin/organization/usage_completions_response.rb +16 -3
- data/lib/openai/models/admin/organization/usage_costs_response.rb +16 -3
- data/lib/openai/models/admin/organization/usage_embeddings_response.rb +16 -3
- data/lib/openai/models/admin/organization/usage_file_search_calls_response.rb +16 -3
- data/lib/openai/models/admin/organization/usage_images_response.rb +16 -3
- data/lib/openai/models/admin/organization/usage_moderations_response.rb +16 -3
- data/lib/openai/models/admin/organization/usage_vector_stores_response.rb +16 -3
- data/lib/openai/models/admin/organization/usage_web_search_calls_response.rb +16 -3
- data/lib/openai/models/all_models.rb +42 -0
- data/lib/openai/models/audio/speech_create_params.rb +6 -0
- data/lib/openai/models/audio/voice.rb +75 -0
- data/lib/openai/models/audio/voice_create_params.rb +217 -0
- data/lib/openai/models/beta/agent_create_params.rb +0 -3
- data/lib/openai/models/beta/agent_update_params.rb +0 -3
- data/lib/openai/models/beta/agents/session_create_params.rb +0 -3
- data/lib/openai/models/beta/agents/session_update_params.rb +0 -3
- data/lib/openai/models/beta/agents/sessions/session_trace.rb +64 -0
- data/lib/openai/models/beta/agents/sessions/trace_list_params.rb +68 -0
- data/lib/openai/models/beta/agents/vaults/credential.rb +8 -4
- data/lib/openai/models/beta/beta_response.rb +220 -0
- data/lib/openai/models/beta/beta_response_output_text.rb +2 -2
- data/lib/openai/models/beta/beta_response_output_text_annotation_added_event.rb +2 -2
- data/lib/openai/models/beta/beta_responses_client_event.rb +220 -0
- data/lib/openai/models/beta/beta_tool.rb +3 -9
- data/lib/openai/models/beta/environment.rb +33 -1
- data/lib/openai/models/beta/environment_param.rb +24 -1
- data/lib/openai/models/beta/response_compact_params.rb +220 -0
- data/lib/openai/models/beta/response_create_params.rb +220 -0
- data/lib/openai/models/beta/session_turn_error.rb +3 -0
- data/lib/openai/models/chat/chat_completion_audio_param.rb +6 -3
- data/lib/openai/models/chat/chat_completion_content_part_image.rb +1 -0
- data/lib/openai/models/chat_model.rb +178 -0
- data/lib/openai/models/image.rb +14 -14
- data/lib/openai/models/image_create_variation_params.rb +7 -7
- data/lib/openai/models/image_edit_params.rb +76 -87
- data/lib/openai/models/image_generate_params.rb +51 -62
- data/lib/openai/models/image_model.rb +5 -3
- data/lib/openai/models/live/fork_server_event.rb +14 -3
- data/lib/openai/models/live/server_event.rb +14 -3
- data/lib/openai/models/realtime/realtime_audio_config_output.rb +9 -6
- data/lib/openai/models/realtime/realtime_response_create_audio_output.rb +9 -6
- data/lib/openai/models/realtime/translations/client_secret_create_params.rb +28 -0
- data/lib/openai/models/responses/response_compact_params.rb +220 -0
- data/lib/openai/models/responses/response_output_text.rb +2 -2
- data/lib/openai/models/responses/response_output_text_annotation_added_event.rb +2 -2
- data/lib/openai/models/responses/tool.rb +3 -9
- data/lib/openai/models/responses_model.rb +42 -0
- data/lib/openai/models/webhooks/agent_session_action_required_webhook_event.rb +109 -0
- data/lib/openai/models/webhooks/agent_session_created_webhook_event.rb +106 -0
- data/lib/openai/models/webhooks/agent_session_failed_webhook_event.rb +86 -0
- data/lib/openai/models/webhooks/agent_session_idle_webhook_event.rb +86 -0
- data/lib/openai/models/webhooks/agent_session_in_progress_webhook_event.rb +86 -0
- data/lib/openai/models/webhooks/unwrap_webhook_event.rb +18 -2
- data/lib/openai/models/webhooks/webhook_create_params.rb +5 -0
- data/lib/openai/models/webhooks/webhook_test_params.rb +5 -0
- data/lib/openai/models/webhooks/webhook_update_params.rb +5 -0
- data/lib/openai/resources/audio/speech.rb +2 -0
- data/lib/openai/resources/audio/voices.rb +53 -0
- data/lib/openai/resources/audio.rb +5 -0
- data/lib/openai/resources/beta/agents/environments/files.rb +31 -0
- data/lib/openai/resources/beta/agents/sessions/artifacts.rb +8 -0
- data/lib/openai/resources/beta/agents/sessions/events.rb +6 -5
- data/lib/openai/resources/beta/agents/sessions/traces.rb +58 -0
- data/lib/openai/resources/beta/agents/sessions.rb +18 -5
- data/lib/openai/resources/evals/runs.rb +1 -1
- data/lib/openai/resources/images.rb +71 -103
- data/lib/openai/resources/realtime/translations/client_secrets.rb +58 -0
- data/lib/openai/resources/realtime/translations.rb +20 -0
- data/lib/openai/resources/realtime.rb +4 -0
- data/lib/openai/resources/webhooks.rb +1 -1
- data/lib/openai/version.rb +1 -1
- data/lib/openai.rb +17 -1
- data/rbi/openai/helpers/agents.rbi +20 -1
- data/rbi/openai/helpers/beta/agents/artifacts.rbi +29 -0
- data/rbi/openai/helpers/beta/agents/files.rbi +65 -0
- data/rbi/openai/helpers/beta/agents/function_tool.rbi +40 -0
- data/rbi/openai/helpers/beta/agents/model_adapter.rbi +22 -0
- data/rbi/openai/helpers/beta/agents.rbi +146 -0
- data/rbi/openai/internal/transport/base_client.rbi +12 -0
- data/rbi/openai/internal/type/base_model.rbi +2 -2
- data/rbi/openai/internal/type/converter.rbi +21 -3
- data/rbi/openai/internal/type/union.rbi +6 -2
- data/rbi/openai/models/admin/organization/usage_audio_speeches_response.rbi +19 -2
- data/rbi/openai/models/admin/organization/usage_audio_transcriptions_response.rbi +19 -2
- data/rbi/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbi +19 -2
- data/rbi/openai/models/admin/organization/usage_completions_response.rbi +19 -2
- data/rbi/openai/models/admin/organization/usage_costs_response.rbi +19 -2
- data/rbi/openai/models/admin/organization/usage_embeddings_response.rbi +19 -2
- data/rbi/openai/models/admin/organization/usage_file_search_calls_response.rbi +19 -2
- data/rbi/openai/models/admin/organization/usage_images_response.rbi +19 -2
- data/rbi/openai/models/admin/organization/usage_moderations_response.rbi +19 -2
- data/rbi/openai/models/admin/organization/usage_vector_stores_response.rbi +19 -2
- data/rbi/openai/models/admin/organization/usage_web_search_calls_response.rbi +19 -2
- data/rbi/openai/models/audio/speech_create_params.rbi +6 -0
- data/rbi/openai/models/audio/voice.rbi +111 -0
- data/rbi/openai/models/audio/voice_create_params.rbi +321 -0
- data/rbi/openai/models/beta/agent_create_params.rbi +0 -3
- data/rbi/openai/models/beta/agent_update_params.rbi +0 -3
- data/rbi/openai/models/beta/agents/session_create_params.rbi +0 -3
- data/rbi/openai/models/beta/agents/session_update_params.rbi +0 -3
- data/rbi/openai/models/beta/agents/sessions/session_trace.rbi +97 -0
- data/rbi/openai/models/beta/agents/sessions/trace_list_params.rbi +121 -0
- data/rbi/openai/models/beta/agents/vaults/credential.rbi +5 -5
- data/rbi/openai/models/beta/beta_response_output_text.rbi +2 -2
- data/rbi/openai/models/beta/beta_response_output_text_annotation_added_event.rbi +2 -2
- data/rbi/openai/models/beta/beta_tool.rbi +3 -9
- data/rbi/openai/models/beta/environment.rbi +29 -0
- data/rbi/openai/models/beta/environment_param.rbi +31 -0
- data/rbi/openai/models/beta/session_turn_error.rbi +3 -0
- data/rbi/openai/models/chat/chat_completion_audio_param.rbi +6 -3
- data/rbi/openai/models/chat/chat_completion_content_part_image.rbi +1 -0
- data/rbi/openai/models/image.rbi +14 -14
- data/rbi/openai/models/image_create_variation_params.rbi +6 -6
- data/rbi/openai/models/image_edit_params.rbi +61 -82
- data/rbi/openai/models/image_generate_params.rbi +30 -61
- data/rbi/openai/models/image_model.rbi +3 -3
- data/rbi/openai/models/live/fork_server_event.rbi +14 -2
- data/rbi/openai/models/live/server_event.rbi +14 -2
- data/rbi/openai/models/realtime/realtime_audio_config_output.rbi +9 -6
- data/rbi/openai/models/realtime/realtime_response_create_audio_output.rbi +9 -6
- data/rbi/openai/models/realtime/translations/client_secret_create_params.rbi +68 -0
- data/rbi/openai/models/responses/response_output_text.rbi +2 -2
- data/rbi/openai/models/responses/response_output_text_annotation_added_event.rbi +2 -2
- data/rbi/openai/models/responses/tool.rbi +3 -9
- data/rbi/openai/models/webhooks/agent_session_action_required_webhook_event.rbi +222 -0
- data/rbi/openai/models/webhooks/agent_session_created_webhook_event.rbi +202 -0
- data/rbi/openai/models/webhooks/agent_session_failed_webhook_event.rbi +151 -0
- data/rbi/openai/models/webhooks/agent_session_idle_webhook_event.rbi +151 -0
- data/rbi/openai/models/webhooks/agent_session_in_progress_webhook_event.rbi +151 -0
- data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +7 -1
- data/rbi/openai/models/webhooks/webhook_create_params.rbi +20 -0
- data/rbi/openai/models/webhooks/webhook_test_params.rbi +20 -0
- data/rbi/openai/models/webhooks/webhook_update_params.rbi +20 -0
- data/rbi/openai/resources/audio/speech.rbi +2 -0
- data/rbi/openai/resources/audio/voices.rbi +49 -0
- data/rbi/openai/resources/audio.rbi +4 -0
- data/rbi/openai/resources/beta/agents/environments/files.rbi +31 -0
- data/rbi/openai/resources/beta/agents/sessions/artifacts.rbi +8 -0
- data/rbi/openai/resources/beta/agents/sessions/events.rbi +6 -5
- data/rbi/openai/resources/beta/agents/sessions/traces.rbi +54 -0
- data/rbi/openai/resources/beta/agents/sessions.rbi +6 -1
- data/rbi/openai/resources/images.rbi +69 -103
- data/rbi/openai/resources/realtime/translations/client_secrets.rbi +54 -0
- data/rbi/openai/resources/realtime/translations.rbi +22 -0
- data/rbi/openai/resources/realtime.rbi +3 -0
- data/rbi/openai/resources/webhooks.rbi +5 -0
- data/sig/openai/helpers/agents.rbs +7 -0
- data/sig/openai/helpers/beta/agents/artifacts.rbs +20 -0
- data/sig/openai/helpers/beta/agents/files.rbs +41 -0
- data/sig/openai/helpers/beta/agents/function_tool.rbs +24 -0
- data/sig/openai/helpers/beta/agents/model_adapter.rbs +16 -0
- data/sig/openai/helpers/beta/agents.rbs +71 -0
- data/sig/openai/helpers/structured_output.rbs +12 -0
- data/sig/openai/internal/transport/base_client.rbs +8 -0
- data/sig/openai/internal/type/base_model.rbs +3 -1
- data/sig/openai/internal/type/converter.rbs +16 -2
- data/sig/openai/internal/type/union.rbs +2 -1
- data/sig/openai/models/admin/organization/usage_audio_speeches_response.rbs +20 -3
- data/sig/openai/models/admin/organization/usage_audio_transcriptions_response.rbs +20 -3
- data/sig/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbs +20 -3
- data/sig/openai/models/admin/organization/usage_completions_response.rbs +20 -3
- data/sig/openai/models/admin/organization/usage_costs_response.rbs +20 -3
- data/sig/openai/models/admin/organization/usage_embeddings_response.rbs +20 -3
- data/sig/openai/models/admin/organization/usage_file_search_calls_response.rbs +20 -3
- data/sig/openai/models/admin/organization/usage_images_response.rbs +20 -3
- data/sig/openai/models/admin/organization/usage_moderations_response.rbs +20 -3
- data/sig/openai/models/admin/organization/usage_vector_stores_response.rbs +20 -3
- data/sig/openai/models/admin/organization/usage_web_search_calls_response.rbs +20 -3
- data/sig/openai/models/audio/speech_create_params.rbs +4 -0
- data/sig/openai/models/audio/voice.rbs +70 -0
- data/sig/openai/models/audio/voice_create_params.rbs +203 -0
- data/sig/openai/models/beta/agent_create_params.rbs +1 -5
- data/sig/openai/models/beta/agent_update_params.rbs +1 -5
- data/sig/openai/models/beta/agents/session_create_params.rbs +1 -5
- data/sig/openai/models/beta/agents/session_update_params.rbs +1 -5
- data/sig/openai/models/beta/agents/sessions/session_trace.rbs +65 -0
- data/sig/openai/models/beta/agents/sessions/trace_list_params.rbs +81 -0
- data/sig/openai/models/beta/agents/vaults/credential.rbs +5 -5
- data/sig/openai/models/beta/beta_response_output_text.rbs +2 -2
- data/sig/openai/models/beta/beta_response_output_text_annotation_added_event.rbs +2 -2
- data/sig/openai/models/beta/beta_tool.rbs +3 -9
- data/sig/openai/models/beta/environment.rbs +22 -0
- data/sig/openai/models/beta/environment_param.rbs +25 -0
- data/sig/openai/models/beta/session_turn_error.rbs +4 -0
- data/sig/openai/models/chat/chat_completion_audio_param.rbs +4 -2
- data/sig/openai/models/chat/chat_completion_content_part_image.rbs +2 -1
- data/sig/openai/models/image.rbs +21 -21
- data/sig/openai/models/image_create_variation_params.rbs +4 -4
- data/sig/openai/models/image_edit_params.rbs +46 -60
- data/sig/openai/models/image_generate_params.rbs +23 -45
- data/sig/openai/models/image_model.rbs +6 -6
- data/sig/openai/models/live/fork_server_event.rbs +17 -2
- data/sig/openai/models/live/server_event.rbs +17 -2
- data/sig/openai/models/realtime/realtime_audio_config_output.rbs +9 -6
- data/sig/openai/models/realtime/realtime_response_create_audio_output.rbs +9 -6
- data/sig/openai/models/realtime/translations/client_secret_create_params.rbs +39 -0
- data/sig/openai/models/responses/response_output_text.rbs +2 -2
- data/sig/openai/models/responses/response_output_text_annotation_added_event.rbs +2 -2
- data/sig/openai/models/responses/tool.rbs +3 -9
- data/sig/openai/models/webhooks/agent_session_action_required_webhook_event.rbs +114 -0
- data/sig/openai/models/webhooks/agent_session_created_webhook_event.rbs +115 -0
- data/sig/openai/models/webhooks/agent_session_failed_webhook_event.rbs +89 -0
- data/sig/openai/models/webhooks/agent_session_idle_webhook_event.rbs +89 -0
- data/sig/openai/models/webhooks/agent_session_in_progress_webhook_event.rbs +89 -0
- data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +6 -1
- data/sig/openai/models/webhooks/webhook_create_params.rbs +10 -0
- data/sig/openai/models/webhooks/webhook_test_params.rbs +10 -0
- data/sig/openai/models/webhooks/webhook_update_params.rbs +10 -0
- data/sig/openai/resources/audio/voices.rbs +14 -0
- data/sig/openai/resources/audio.rbs +2 -0
- data/sig/openai/resources/beta/agents/environments/files.rbs +17 -0
- data/sig/openai/resources/beta/agents/sessions/artifacts.rbs +4 -0
- data/sig/openai/resources/beta/agents/sessions/traces.rbs +21 -0
- data/sig/openai/resources/beta/agents/sessions.rbs +4 -1
- data/sig/openai/resources/realtime/translations/client_secrets.rbs +17 -0
- data/sig/openai/resources/realtime/translations.rbs +11 -0
- data/sig/openai/resources/realtime.rbs +2 -0
- data/sig/openai/resources/webhooks.rbs +6 -1
- metadata +61 -1
|
@@ -203,7 +203,7 @@ module OpenAI
|
|
|
203
203
|
# @param headers [Hash] The webhook headers
|
|
204
204
|
# @param webhook_secret [String, nil] The webhook secret (optional, will use client webhook secret or ENV["OPENAI_WEBHOOK_SECRET"] if not provided)
|
|
205
205
|
#
|
|
206
|
-
# @return [OpenAI::Models::Webhooks::BatchCancelledWebhookEvent, OpenAI::Models::Webhooks::BatchCompletedWebhookEvent, OpenAI::Models::Webhooks::BatchExpiredWebhookEvent, OpenAI::Models::Webhooks::BatchFailedWebhookEvent, OpenAI::Models::Webhooks::EvalRunCanceledWebhookEvent, OpenAI::Models::Webhooks::EvalRunFailedWebhookEvent, OpenAI::Models::Webhooks::EvalRunSucceededWebhookEvent, OpenAI::Models::Webhooks::FineTuningJobCancelledWebhookEvent, OpenAI::Models::Webhooks::FineTuningJobFailedWebhookEvent, OpenAI::Models::Webhooks::FineTuningJobSucceededWebhookEvent, OpenAI::Models::Webhooks::LiveCallIncomingWebhookEvent, OpenAI::Models::Webhooks::LiveTransportIncomingWebhookEvent, OpenAI::Models::Webhooks::RealtimeCallIncomingWebhookEvent, OpenAI::Models::Webhooks::ResponseCancelledWebhookEvent, OpenAI::Models::Webhooks::ResponseCompletedWebhookEvent, OpenAI::Models::Webhooks::ResponseFailedWebhookEvent, OpenAI::Models::Webhooks::ResponseIncompleteWebhookEvent, OpenAI::Models::Webhooks::SafetyAlertCreatedWebhookEvent, OpenAI::Models::Webhooks::SafetyDeactivationIssuedWebhookEvent, OpenAI::Models::Webhooks::SafetyOrgAlertCreatedWebhookEvent, OpenAI::Models::Webhooks::SafetyWarningIssuedWebhookEvent]
|
|
206
|
+
# @return [OpenAI::Models::Webhooks::AgentSessionActionRequiredWebhookEvent, OpenAI::Models::Webhooks::AgentSessionCreatedWebhookEvent, OpenAI::Models::Webhooks::AgentSessionFailedWebhookEvent, OpenAI::Models::Webhooks::AgentSessionIdleWebhookEvent, OpenAI::Models::Webhooks::AgentSessionInProgressWebhookEvent, OpenAI::Models::Webhooks::BatchCancelledWebhookEvent, OpenAI::Models::Webhooks::BatchCompletedWebhookEvent, OpenAI::Models::Webhooks::BatchExpiredWebhookEvent, OpenAI::Models::Webhooks::BatchFailedWebhookEvent, OpenAI::Models::Webhooks::EvalRunCanceledWebhookEvent, OpenAI::Models::Webhooks::EvalRunFailedWebhookEvent, OpenAI::Models::Webhooks::EvalRunSucceededWebhookEvent, OpenAI::Models::Webhooks::FineTuningJobCancelledWebhookEvent, OpenAI::Models::Webhooks::FineTuningJobFailedWebhookEvent, OpenAI::Models::Webhooks::FineTuningJobSucceededWebhookEvent, OpenAI::Models::Webhooks::LiveCallIncomingWebhookEvent, OpenAI::Models::Webhooks::LiveTransportIncomingWebhookEvent, OpenAI::Models::Webhooks::RealtimeCallIncomingWebhookEvent, OpenAI::Models::Webhooks::ResponseCancelledWebhookEvent, OpenAI::Models::Webhooks::ResponseCompletedWebhookEvent, OpenAI::Models::Webhooks::ResponseFailedWebhookEvent, OpenAI::Models::Webhooks::ResponseIncompleteWebhookEvent, OpenAI::Models::Webhooks::SafetyAlertCreatedWebhookEvent, OpenAI::Models::Webhooks::SafetyDeactivationIssuedWebhookEvent, OpenAI::Models::Webhooks::SafetyOrgAlertCreatedWebhookEvent, OpenAI::Models::Webhooks::SafetyWarningIssuedWebhookEvent]
|
|
207
207
|
#
|
|
208
208
|
# @raise [ArgumentError] if signature verification fails
|
|
209
209
|
def unwrap(
|
data/lib/openai/version.rb
CHANGED
data/lib/openai.rb
CHANGED
|
@@ -163,6 +163,7 @@ require_relative "openai/models/graders/python_grader"
|
|
|
163
163
|
require_relative "openai/models/graders/text_similarity_grader"
|
|
164
164
|
require_relative "openai/models/fine_tuning/fine_tuning_job_wandb_integration_object"
|
|
165
165
|
require_relative "openai/models/realtime/realtime_session_create_request"
|
|
166
|
+
require_relative "openai/models/realtime/realtime_translation_client_secret_create_request"
|
|
166
167
|
require_relative "openai/models/responses/response_custom_tool_call"
|
|
167
168
|
require_relative "openai/models/responses/response_custom_tool_call_output"
|
|
168
169
|
require_relative "openai/models/responses/response_function_tool_call"
|
|
@@ -453,6 +454,8 @@ require_relative "openai/models/audio/translation"
|
|
|
453
454
|
require_relative "openai/models/audio/translation_create_params"
|
|
454
455
|
require_relative "openai/models/audio/translation_create_response"
|
|
455
456
|
require_relative "openai/models/audio/translation_verbose"
|
|
457
|
+
require_relative "openai/models/audio/voice"
|
|
458
|
+
require_relative "openai/models/audio/voice_create_params"
|
|
456
459
|
require_relative "openai/models/audio_model"
|
|
457
460
|
require_relative "openai/models/audio_response_format"
|
|
458
461
|
require_relative "openai/models/auto_file_chunking_strategy_param"
|
|
@@ -515,12 +518,14 @@ require_relative "openai/models/beta/agents/sessions/event_stream_params"
|
|
|
515
518
|
require_relative "openai/models/beta/agents/sessions/item_list_params"
|
|
516
519
|
require_relative "openai/models/beta/agents/sessions/session_artifact"
|
|
517
520
|
require_relative "openai/models/beta/agents/sessions/session_artifact_deleted"
|
|
521
|
+
require_relative "openai/models/beta/agents/sessions/session_trace"
|
|
518
522
|
require_relative "openai/models/beta/agents/sessions/subagent_list_params"
|
|
519
523
|
require_relative "openai/models/beta/agents/sessions/subagent_retrieve_params"
|
|
520
524
|
require_relative "openai/models/beta/agents/sessions/subagents/item_list_params"
|
|
521
525
|
require_relative "openai/models/beta/agents/sessions/subagents/turn_list_params"
|
|
522
526
|
require_relative "openai/models/beta/agents/sessions/subagents/turn_retrieve_params"
|
|
523
527
|
require_relative "openai/models/beta/agents/sessions/subagents/turns/item_list_params"
|
|
528
|
+
require_relative "openai/models/beta/agents/sessions/trace_list_params"
|
|
524
529
|
require_relative "openai/models/beta/agents/sessions/turn"
|
|
525
530
|
require_relative "openai/models/beta/agents/sessions/turn_list_params"
|
|
526
531
|
require_relative "openai/models/beta/agents/sessions/turn_retrieve_params"
|
|
@@ -1204,7 +1209,6 @@ require_relative "openai/models/realtime/realtime_transcription_session_create_r
|
|
|
1204
1209
|
require_relative "openai/models/realtime/realtime_transcription_session_create_response"
|
|
1205
1210
|
require_relative "openai/models/realtime/realtime_transcription_session_turn_detection"
|
|
1206
1211
|
require_relative "openai/models/realtime/realtime_translation_client_event"
|
|
1207
|
-
require_relative "openai/models/realtime/realtime_translation_client_secret_create_request"
|
|
1208
1212
|
require_relative "openai/models/realtime/realtime_translation_client_secret_create_response"
|
|
1209
1213
|
require_relative "openai/models/realtime/realtime_translation_input_audio_buffer_append_event"
|
|
1210
1214
|
require_relative "openai/models/realtime/realtime_translation_input_transcript_delta_event"
|
|
@@ -1247,6 +1251,7 @@ require_relative "openai/models/realtime/session_updated_event"
|
|
|
1247
1251
|
require_relative "openai/models/realtime/session_update_event"
|
|
1248
1252
|
require_relative "openai/models/realtime/transcription_session_update"
|
|
1249
1253
|
require_relative "openai/models/realtime/transcription_session_updated_event"
|
|
1254
|
+
require_relative "openai/models/realtime/translations/client_secret_create_params"
|
|
1250
1255
|
require_relative "openai/models/reasoning"
|
|
1251
1256
|
require_relative "openai/models/response_format_json_object"
|
|
1252
1257
|
require_relative "openai/models/response_format_json_schema"
|
|
@@ -1432,6 +1437,11 @@ require_relative "openai/models/video_remix_params"
|
|
|
1432
1437
|
require_relative "openai/models/video_retrieve_params"
|
|
1433
1438
|
require_relative "openai/models/video_seconds"
|
|
1434
1439
|
require_relative "openai/models/video_size"
|
|
1440
|
+
require_relative "openai/models/webhooks/agent_session_action_required_webhook_event"
|
|
1441
|
+
require_relative "openai/models/webhooks/agent_session_created_webhook_event"
|
|
1442
|
+
require_relative "openai/models/webhooks/agent_session_failed_webhook_event"
|
|
1443
|
+
require_relative "openai/models/webhooks/agent_session_idle_webhook_event"
|
|
1444
|
+
require_relative "openai/models/webhooks/agent_session_in_progress_webhook_event"
|
|
1435
1445
|
require_relative "openai/models/webhooks/batch_cancelled_webhook_event"
|
|
1436
1446
|
require_relative "openai/models/webhooks/batch_completed_webhook_event"
|
|
1437
1447
|
require_relative "openai/models/webhooks/batch_expired_webhook_event"
|
|
@@ -1507,6 +1517,7 @@ require_relative "openai/resources/audio"
|
|
|
1507
1517
|
require_relative "openai/resources/audio/speech"
|
|
1508
1518
|
require_relative "openai/resources/audio/transcriptions"
|
|
1509
1519
|
require_relative "openai/resources/audio/translations"
|
|
1520
|
+
require_relative "openai/resources/audio/voices"
|
|
1510
1521
|
require_relative "openai/resources/batches"
|
|
1511
1522
|
require_relative "openai/resources/beta"
|
|
1512
1523
|
require_relative "openai/resources/beta/agents"
|
|
@@ -1521,6 +1532,7 @@ require_relative "openai/resources/beta/agents/sessions/subagents"
|
|
|
1521
1532
|
require_relative "openai/resources/beta/agents/sessions/subagents/items"
|
|
1522
1533
|
require_relative "openai/resources/beta/agents/sessions/subagents/turns"
|
|
1523
1534
|
require_relative "openai/resources/beta/agents/sessions/subagents/turns/items"
|
|
1535
|
+
require_relative "openai/resources/beta/agents/sessions/traces"
|
|
1524
1536
|
require_relative "openai/resources/beta/agents/sessions/turns"
|
|
1525
1537
|
require_relative "openai/resources/beta/agents/vaults"
|
|
1526
1538
|
require_relative "openai/resources/beta/agents/vaults/credentials"
|
|
@@ -1570,6 +1582,8 @@ require_relative "openai/resources/moderations"
|
|
|
1570
1582
|
require_relative "openai/resources/realtime"
|
|
1571
1583
|
require_relative "openai/resources/realtime/calls"
|
|
1572
1584
|
require_relative "openai/resources/realtime/client_secrets"
|
|
1585
|
+
require_relative "openai/resources/realtime/translations"
|
|
1586
|
+
require_relative "openai/resources/realtime/translations/client_secrets"
|
|
1573
1587
|
require_relative "openai/resources/responses"
|
|
1574
1588
|
require_relative "openai/resources/responses/input_items"
|
|
1575
1589
|
require_relative "openai/resources/responses/input_tokens"
|
|
@@ -1599,5 +1613,7 @@ require_relative "openai/helpers/realtime"
|
|
|
1599
1613
|
require_relative "openai/helpers/responses_websocket"
|
|
1600
1614
|
require_relative "openai/helpers/live/websocket"
|
|
1601
1615
|
|
|
1616
|
+
require_relative "openai/helpers/beta/agents/creation_stream"
|
|
1602
1617
|
require_relative "openai/helpers/agents/session_stream"
|
|
1618
|
+
require_relative "openai/helpers/beta/agents/function_tool"
|
|
1603
1619
|
require_relative "openai/helpers/agents/message"
|
|
@@ -26,6 +26,16 @@ module OpenAI
|
|
|
26
26
|
def each(&block)
|
|
27
27
|
end
|
|
28
28
|
|
|
29
|
+
# @beta
|
|
30
|
+
sig { returns(OpenAI::Helpers::Beta::Agents::TurnResult) }
|
|
31
|
+
def get_final_result
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
# @beta
|
|
35
|
+
sig { returns(T.self_type) }
|
|
36
|
+
def with_result_collection
|
|
37
|
+
end
|
|
38
|
+
|
|
29
39
|
sig { void }
|
|
30
40
|
def close
|
|
31
41
|
end
|
|
@@ -47,12 +57,21 @@ module OpenAI
|
|
|
47
57
|
input: T.any(String, T::Array[OpenAI::Models::Beta::AgentSessionInputMessageParam::OrHash]),
|
|
48
58
|
tool_handlers: T::Hash[String, OpenAI::Helpers::Agents::ToolHandler],
|
|
49
59
|
idempotency_key: T.nilable(String),
|
|
60
|
+
output_type: T.nilable(T.class_of(OpenAI::Helpers::StructuredOutput::BaseModel)),
|
|
50
61
|
request_options: T.nilable(OpenAI::RequestOptions::OrHash),
|
|
51
62
|
block: T.nilable(T.proc.params(stream: OpenAI::Helpers::Agents::SessionStream).void)
|
|
52
63
|
)
|
|
53
64
|
.returns(OpenAI::Helpers::Agents::SessionStream)
|
|
54
65
|
end
|
|
55
|
-
def stream(
|
|
66
|
+
def stream(
|
|
67
|
+
session_id,
|
|
68
|
+
input:,
|
|
69
|
+
tool_handlers: {},
|
|
70
|
+
idempotency_key: nil,
|
|
71
|
+
output_type: nil,
|
|
72
|
+
request_options: {},
|
|
73
|
+
&block
|
|
74
|
+
)
|
|
56
75
|
end
|
|
57
76
|
end
|
|
58
77
|
end
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
module OpenAI
|
|
3
|
+
module Helpers
|
|
4
|
+
module Beta
|
|
5
|
+
module Agents
|
|
6
|
+
class ResultArtifacts
|
|
7
|
+
sig {
|
|
8
|
+
params(
|
|
9
|
+
artifacts: OpenAI::Resources::Beta::Agents::Sessions::Artifacts,
|
|
10
|
+
client: OpenAI::Client,
|
|
11
|
+
result: TurnResult
|
|
12
|
+
)
|
|
13
|
+
.void
|
|
14
|
+
}
|
|
15
|
+
def initialize(artifacts:, client:, result:)
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
sig {
|
|
19
|
+
params(path: String, to: T.untyped, request_options: OpenAI::RequestOptions::OrHash).returns(
|
|
20
|
+
OpenAI::Models::Beta::Agents::Sessions::SessionArtifact
|
|
21
|
+
)
|
|
22
|
+
}
|
|
23
|
+
def download(path:, to:, request_options: {})
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
module OpenAI
|
|
3
|
+
module Helpers
|
|
4
|
+
module Beta
|
|
5
|
+
module Agents
|
|
6
|
+
class PreparedFiles
|
|
7
|
+
sig { returns(T::Array[OpenAI::Models::Beta::HostedEnvironmentFileParam::FileID]) }
|
|
8
|
+
attr_reader :files
|
|
9
|
+
sig { returns(T::Array[String]) }
|
|
10
|
+
attr_reader :upload_ids
|
|
11
|
+
sig { params(files: T::Array[T::Hash[Symbol, T.untyped]]).void }
|
|
12
|
+
def initialize(files)
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
class FilePreparationError < OpenAI::Errors::Error
|
|
17
|
+
sig { returns(PreparedFiles) }
|
|
18
|
+
attr_reader :prepared
|
|
19
|
+
sig { params(prepared: PreparedFiles).returns(T.attached_class) }
|
|
20
|
+
def self.new(prepared:)
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
# @api private
|
|
24
|
+
class FilePreparation
|
|
25
|
+
sig {
|
|
26
|
+
params(client: OpenAI::Client, environment_files: OpenAI::Resources::Beta::Agents::Environments::Files).void
|
|
27
|
+
}
|
|
28
|
+
def initialize(client:, environment_files:)
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
sig {
|
|
32
|
+
params(files: T::Hash[String, T.any(String, Pathname)], request_options: OpenAI::RequestOptions::OrHash)
|
|
33
|
+
.returns(PreparedFiles)
|
|
34
|
+
}
|
|
35
|
+
def prepare(files, request_options: {})
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
sig {
|
|
39
|
+
params(
|
|
40
|
+
directory: T.any(String, Pathname),
|
|
41
|
+
destination: String,
|
|
42
|
+
include: T::Array[String],
|
|
43
|
+
request_options: OpenAI::RequestOptions::OrHash
|
|
44
|
+
)
|
|
45
|
+
.returns(PreparedFiles)
|
|
46
|
+
}
|
|
47
|
+
def prepare_directory(directory, destination:, include:, request_options: {})
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
sig {
|
|
51
|
+
params(
|
|
52
|
+
environment_id: String,
|
|
53
|
+
file: T.any(String, Pathname),
|
|
54
|
+
path: String,
|
|
55
|
+
request_options: OpenAI::RequestOptions::OrHash
|
|
56
|
+
)
|
|
57
|
+
.returns(PreparedFiles)
|
|
58
|
+
}
|
|
59
|
+
def upload(environment_id, file:, path:, request_options: {})
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Helpers
|
|
5
|
+
module Beta
|
|
6
|
+
module Agents
|
|
7
|
+
class FunctionTool
|
|
8
|
+
sig { returns(String) }
|
|
9
|
+
attr_reader :name
|
|
10
|
+
|
|
11
|
+
sig do
|
|
12
|
+
params(
|
|
13
|
+
name: String,
|
|
14
|
+
arguments: T.class_of(OpenAI::BaseModel),
|
|
15
|
+
description: String,
|
|
16
|
+
handler: T.proc.params(arguments: T.untyped).returns(OpenAI::Helpers::Agents::ToolOutput)
|
|
17
|
+
)
|
|
18
|
+
.void
|
|
19
|
+
end
|
|
20
|
+
def initialize(name:, arguments:, description: "", &handler)
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
sig { returns(OpenAI::Internal::AnyHash) }
|
|
24
|
+
def definition
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
sig { returns(T::Hash[String, OpenAI::Helpers::Agents::ToolHandler]) }
|
|
28
|
+
def handlers
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
sig {
|
|
32
|
+
params(arguments: T.any(String, OpenAI::Internal::AnyHash)).returns(OpenAI::Helpers::Agents::ToolOutput)
|
|
33
|
+
}
|
|
34
|
+
def call(arguments)
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Helpers
|
|
5
|
+
module Beta
|
|
6
|
+
module Agents
|
|
7
|
+
module ModelAdapter
|
|
8
|
+
sig { params(model: T.untyped, parameter: String).void }
|
|
9
|
+
def self.validate!(model, parameter:)
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
sig do
|
|
13
|
+
params(model: T.class_of(OpenAI::BaseModel), value: T.untyped, memoize: T::Boolean)
|
|
14
|
+
.returns(T.nilable(OpenAI::BaseModel))
|
|
15
|
+
end
|
|
16
|
+
def self.coerce(model, value, memoize: false)
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Helpers
|
|
5
|
+
module Beta
|
|
6
|
+
module Agents
|
|
7
|
+
class TurnResult
|
|
8
|
+
sig { returns(OpenAI::Models::Beta::Agents::Sessions::Turn) }
|
|
9
|
+
def turn
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
sig { returns(T::Array[OpenAI::Models::Beta::AgentSessionMessage]) }
|
|
13
|
+
def messages
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
sig { returns(String) }
|
|
17
|
+
def session_id
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
sig { returns(String) }
|
|
21
|
+
def turn_id
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
sig { returns(String) }
|
|
25
|
+
def output_text
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
sig { returns(T.untyped) }
|
|
29
|
+
def output_parsed
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
sig {
|
|
33
|
+
params(output_type: T.class_of(OpenAI::Helpers::StructuredOutput::BaseModel)).returns(ParsedTurnResult)
|
|
34
|
+
}
|
|
35
|
+
def parse(output_type:)
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
class ResultError < OpenAI::Errors::Error
|
|
40
|
+
sig { returns(Symbol) }
|
|
41
|
+
def reason
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
sig { returns(T.nilable(String)) }
|
|
45
|
+
def session_id
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
sig { returns(T.nilable(OpenAI::Models::Beta::Agents::Sessions::Turn)) }
|
|
49
|
+
def turn
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
sig { returns(T::Array[OpenAI::Models::Beta::AgentSessionMessage]) }
|
|
53
|
+
def messages
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
sig {
|
|
57
|
+
returns(
|
|
58
|
+
T::Array[T.any(OpenAI::Models::Beta::AgentSession::RequiredAction::Variants, OpenAI::Internal::AnyHash)]
|
|
59
|
+
)
|
|
60
|
+
}
|
|
61
|
+
def required_actions
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
sig { returns(T.nilable(String)) }
|
|
65
|
+
def turn_id
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
# @api private
|
|
70
|
+
class ResultCollector
|
|
71
|
+
sig { params(session_id: T.nilable(String), handler_names: T::Array[String]).void }
|
|
72
|
+
def initialize(session_id: nil, handler_names: [])
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
sig { void }
|
|
76
|
+
def enable
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
sig {
|
|
80
|
+
params(event: T.any(OpenAI::Models::Beta::AgentSessionEvent::Variants, OpenAI::Internal::AnyHash)).void
|
|
81
|
+
}
|
|
82
|
+
def observe(event)
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
86
|
+
def stopped?
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
sig { params(error: StandardError).void }
|
|
90
|
+
def observe_error(error)
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
sig { returns(TurnResult) }
|
|
94
|
+
def result
|
|
95
|
+
end
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
class ParsedTurnResult < TurnResult
|
|
99
|
+
sig { returns(TurnResult) }
|
|
100
|
+
attr_reader :raw_result
|
|
101
|
+
|
|
102
|
+
sig { returns(T.untyped) }
|
|
103
|
+
attr_reader :output_parsed
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
class OutputParseError < OpenAI::Errors::Error
|
|
107
|
+
sig { returns(TurnResult) }
|
|
108
|
+
attr_reader :raw_result
|
|
109
|
+
end
|
|
110
|
+
|
|
111
|
+
# @api private
|
|
112
|
+
class OutputParser
|
|
113
|
+
sig { params(model: T.class_of(OpenAI::Helpers::StructuredOutput::BaseModel)).void }
|
|
114
|
+
def initialize(model)
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
sig { params(params: OpenAI::Internal::AnyHash).void }
|
|
118
|
+
def prepare_request(params)
|
|
119
|
+
end
|
|
120
|
+
|
|
121
|
+
sig { params(result: TurnResult).returns(ParsedTurnResult) }
|
|
122
|
+
def parse(result)
|
|
123
|
+
end
|
|
124
|
+
end
|
|
125
|
+
|
|
126
|
+
class CreationStream < OpenAI::Internal::Stream
|
|
127
|
+
Message = type_member(:in) { {fixed: OpenAI::Internal::Util::ServerSentEvent} }
|
|
128
|
+
Elem = type_member(:out) { {fixed: OpenAI::Models::Beta::AgentSessionEvent::Variants} }
|
|
129
|
+
|
|
130
|
+
sig { returns(TurnResult) }
|
|
131
|
+
def get_final_result
|
|
132
|
+
end
|
|
133
|
+
|
|
134
|
+
sig { returns(T.self_type) }
|
|
135
|
+
def with_result_collection
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
# @api private
|
|
139
|
+
sig { params(parser: T.nilable(OutputParser)).returns(T.self_type) }
|
|
140
|
+
def configure_output_parser(parser)
|
|
141
|
+
end
|
|
142
|
+
end
|
|
143
|
+
end
|
|
144
|
+
end
|
|
145
|
+
end
|
|
146
|
+
end
|
|
@@ -409,6 +409,18 @@ module OpenAI
|
|
|
409
409
|
)
|
|
410
410
|
end
|
|
411
411
|
|
|
412
|
+
# @api private
|
|
413
|
+
sig {
|
|
414
|
+
params(
|
|
415
|
+
req: T.untyped,
|
|
416
|
+
on_response: T.nilable(T.proc.returns(T.untyped)),
|
|
417
|
+
blk: T.proc.params(chunk: String).returns(T.untyped)
|
|
418
|
+
)
|
|
419
|
+
.void
|
|
420
|
+
}
|
|
421
|
+
def request_streaming_body(req, on_response = nil, &blk)
|
|
422
|
+
end
|
|
423
|
+
|
|
412
424
|
# @api private
|
|
413
425
|
sig do
|
|
414
426
|
params(
|
|
@@ -51,7 +51,7 @@ module OpenAI
|
|
|
51
51
|
|
|
52
52
|
# @api private
|
|
53
53
|
sig do
|
|
54
|
-
returns(
|
|
54
|
+
params(state: T.nilable(OpenAI::Internal::Type::Converter::CoerceState)).returns(
|
|
55
55
|
T::Hash[
|
|
56
56
|
Symbol,
|
|
57
57
|
T.all(
|
|
@@ -61,7 +61,7 @@ module OpenAI
|
|
|
61
61
|
]
|
|
62
62
|
)
|
|
63
63
|
end
|
|
64
|
-
def fields
|
|
64
|
+
def fields(state: nil)
|
|
65
65
|
end
|
|
66
66
|
|
|
67
67
|
# @api private
|
|
@@ -22,7 +22,8 @@ module OpenAI
|
|
|
22
22
|
maybe: Integer
|
|
23
23
|
},
|
|
24
24
|
error: T.nilable(StandardError),
|
|
25
|
-
branched: Integer
|
|
25
|
+
branched: Integer,
|
|
26
|
+
memo: T.nilable(T::Hash[T.untyped, T.untyped])
|
|
26
27
|
}
|
|
27
28
|
end
|
|
28
29
|
|
|
@@ -123,11 +124,28 @@ module OpenAI
|
|
|
123
124
|
|
|
124
125
|
# @api private
|
|
125
126
|
sig do
|
|
126
|
-
params(translate_names: T::Boolean, request_only: T::Boolean).returns(
|
|
127
|
+
params(translate_names: T::Boolean, request_only: T::Boolean, memoize: T::Boolean).returns(
|
|
127
128
|
OpenAI::Internal::Type::Converter::CoerceState
|
|
128
129
|
)
|
|
129
130
|
end
|
|
130
|
-
def self.new_coerce_state(translate_names: true, request_only: false)
|
|
131
|
+
def self.new_coerce_state(translate_names: true, request_only: false, memoize: false)
|
|
132
|
+
end
|
|
133
|
+
|
|
134
|
+
# @api private
|
|
135
|
+
sig {
|
|
136
|
+
params(type_fn: T.proc.returns(T.untyped), state: T.nilable(OpenAI::Internal::Type::Converter::CoerceState))
|
|
137
|
+
.returns(T.untyped)
|
|
138
|
+
}
|
|
139
|
+
def self.resolve_type(type_fn, state: nil)
|
|
140
|
+
end
|
|
141
|
+
|
|
142
|
+
# @api private
|
|
143
|
+
sig {
|
|
144
|
+
params(target: T.untyped, value: T.untyped, state: OpenAI::Internal::Type::Converter::CoerceState).returns(
|
|
145
|
+
T.untyped
|
|
146
|
+
)
|
|
147
|
+
}
|
|
148
|
+
def self.coerce_cached(target, value, state:)
|
|
131
149
|
end
|
|
132
150
|
|
|
133
151
|
# @api private
|
|
@@ -65,8 +65,12 @@ module OpenAI
|
|
|
65
65
|
end
|
|
66
66
|
|
|
67
67
|
# @api private
|
|
68
|
-
sig {
|
|
69
|
-
|
|
68
|
+
sig {
|
|
69
|
+
params(value: T.anything, state: T.nilable(OpenAI::Internal::Type::Converter::CoerceState)).returns(
|
|
70
|
+
T.nilable(T.anything)
|
|
71
|
+
)
|
|
72
|
+
}
|
|
73
|
+
private def resolve_variant(value, state: nil)
|
|
70
74
|
end
|
|
71
75
|
|
|
72
76
|
sig { params(other: T.anything).returns(T::Boolean) }
|
|
@@ -206,7 +206,16 @@ module OpenAI
|
|
|
206
206
|
sig { params(input_audio_tokens: Integer).void }
|
|
207
207
|
attr_writer :input_audio_tokens
|
|
208
208
|
|
|
209
|
-
# The aggregated number of input tokens written to the cache
|
|
209
|
+
# The aggregated number of input tokens written to the cache with a 12-hour
|
|
210
|
+
# retention period.
|
|
211
|
+
sig { returns(T.nilable(Integer)) }
|
|
212
|
+
attr_reader :input_cache_write_12h_tokens
|
|
213
|
+
|
|
214
|
+
sig { params(input_cache_write_12h_tokens: Integer).void }
|
|
215
|
+
attr_writer :input_cache_write_12h_tokens
|
|
216
|
+
|
|
217
|
+
# The aggregated number of input tokens written to the cache with a 30-minute
|
|
218
|
+
# retention period.
|
|
210
219
|
sig { returns(T.nilable(Integer)) }
|
|
211
220
|
attr_reader :input_cache_write_tokens
|
|
212
221
|
|
|
@@ -322,6 +331,8 @@ module OpenAI
|
|
|
322
331
|
|
|
323
332
|
input_audio_tokens: Integer,
|
|
324
333
|
|
|
334
|
+
input_cache_write_12h_tokens: Integer,
|
|
335
|
+
|
|
325
336
|
input_cache_write_tokens: Integer,
|
|
326
337
|
|
|
327
338
|
input_cached_audio_tokens: Integer,
|
|
@@ -382,7 +393,12 @@ module OpenAI
|
|
|
382
393
|
# The aggregated number of uncached audio input tokens used.
|
|
383
394
|
input_audio_tokens: nil,
|
|
384
395
|
|
|
385
|
-
# The aggregated number of input tokens written to the cache
|
|
396
|
+
# The aggregated number of input tokens written to the cache with a 12-hour
|
|
397
|
+
# retention period.
|
|
398
|
+
input_cache_write_12h_tokens: nil,
|
|
399
|
+
|
|
400
|
+
# The aggregated number of input tokens written to the cache with a 30-minute
|
|
401
|
+
# retention period.
|
|
386
402
|
input_cache_write_tokens: nil,
|
|
387
403
|
|
|
388
404
|
# The aggregated number of cached audio input tokens used.
|
|
@@ -448,6 +464,7 @@ module OpenAI
|
|
|
448
464
|
api_key_id: T.nilable(String),
|
|
449
465
|
batch: T.nilable(T::Boolean),
|
|
450
466
|
input_audio_tokens: Integer,
|
|
467
|
+
input_cache_write_12h_tokens: Integer,
|
|
451
468
|
input_cache_write_tokens: Integer,
|
|
452
469
|
input_cached_audio_tokens: Integer,
|
|
453
470
|
input_cached_image_tokens: Integer,
|
|
@@ -208,7 +208,16 @@ module OpenAI
|
|
|
208
208
|
sig { params(input_audio_tokens: Integer).void }
|
|
209
209
|
attr_writer :input_audio_tokens
|
|
210
210
|
|
|
211
|
-
# The aggregated number of input tokens written to the cache
|
|
211
|
+
# The aggregated number of input tokens written to the cache with a 12-hour
|
|
212
|
+
# retention period.
|
|
213
|
+
sig { returns(T.nilable(Integer)) }
|
|
214
|
+
attr_reader :input_cache_write_12h_tokens
|
|
215
|
+
|
|
216
|
+
sig { params(input_cache_write_12h_tokens: Integer).void }
|
|
217
|
+
attr_writer :input_cache_write_12h_tokens
|
|
218
|
+
|
|
219
|
+
# The aggregated number of input tokens written to the cache with a 30-minute
|
|
220
|
+
# retention period.
|
|
212
221
|
sig { returns(T.nilable(Integer)) }
|
|
213
222
|
attr_reader :input_cache_write_tokens
|
|
214
223
|
|
|
@@ -324,6 +333,8 @@ module OpenAI
|
|
|
324
333
|
|
|
325
334
|
input_audio_tokens: Integer,
|
|
326
335
|
|
|
336
|
+
input_cache_write_12h_tokens: Integer,
|
|
337
|
+
|
|
327
338
|
input_cache_write_tokens: Integer,
|
|
328
339
|
|
|
329
340
|
input_cached_audio_tokens: Integer,
|
|
@@ -384,7 +395,12 @@ module OpenAI
|
|
|
384
395
|
# The aggregated number of uncached audio input tokens used.
|
|
385
396
|
input_audio_tokens: nil,
|
|
386
397
|
|
|
387
|
-
# The aggregated number of input tokens written to the cache
|
|
398
|
+
# The aggregated number of input tokens written to the cache with a 12-hour
|
|
399
|
+
# retention period.
|
|
400
|
+
input_cache_write_12h_tokens: nil,
|
|
401
|
+
|
|
402
|
+
# The aggregated number of input tokens written to the cache with a 30-minute
|
|
403
|
+
# retention period.
|
|
388
404
|
input_cache_write_tokens: nil,
|
|
389
405
|
|
|
390
406
|
# The aggregated number of cached audio input tokens used.
|
|
@@ -450,6 +466,7 @@ module OpenAI
|
|
|
450
466
|
api_key_id: T.nilable(String),
|
|
451
467
|
batch: T.nilable(T::Boolean),
|
|
452
468
|
input_audio_tokens: Integer,
|
|
469
|
+
input_cache_write_12h_tokens: Integer,
|
|
453
470
|
input_cache_write_tokens: Integer,
|
|
454
471
|
input_cached_audio_tokens: Integer,
|
|
455
472
|
input_cached_image_tokens: Integer,
|