openai 0.102.0 → 0.104.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 +88 -0
- data/README.md +23 -1
- data/lib/openai/client.rb +3 -386
- data/lib/openai/helpers/admin/organization/projects/api_keys.rb +42 -0
- data/lib/openai/helpers/agents/session_stream_resource.rb +60 -0
- data/lib/openai/helpers/beta/agents/artifacts.rb +18 -0
- data/lib/openai/helpers/beta/agents/files.rb +41 -0
- data/lib/openai/helpers/client_runtime.rb +391 -0
- data/lib/openai/helpers/files.rb +47 -0
- data/lib/openai/helpers/live/websocket.rb +8 -57
- data/lib/openai/helpers/models/chat/parsed.rb +32 -0
- data/lib/openai/helpers/models/responses/parsed.rb +30 -0
- data/lib/openai/helpers/models/responses/response.rb +32 -0
- data/lib/openai/helpers/models/webhooks/webhook_endpoint_with_secret.rb +20 -0
- data/lib/openai/helpers/realtime/client_extension.rb +1 -2
- data/lib/openai/helpers/realtime/connection_manager.rb +1 -1
- data/lib/openai/helpers/realtime/translation.rb +7 -50
- data/lib/openai/helpers/responses_websocket/client_extension.rb +1 -2
- data/lib/openai/helpers/streaming/chat_completion_resource.rb +36 -0
- data/lib/openai/helpers/streaming/response_stream.rb +1 -16
- data/lib/openai/helpers/streaming/response_stream_resource.rb +78 -0
- data/lib/openai/helpers/vector_stores/file_batches.rb +188 -0
- data/lib/openai/helpers/vector_stores/files.rb +198 -0
- data/lib/openai/helpers/websocket/client_request.rb +31 -6
- data/lib/openai/helpers/websocket/connection.rb +58 -0
- data/lib/openai/helpers/websocket/connection_manager.rb +4 -2
- data/lib/openai/helpers/websocket/protocol.rb +2 -1
- data/lib/openai/helpers/websocket/resource.rb +54 -0
- data/lib/openai/helpers/websocket/typed_connection.rb +95 -0
- data/lib/openai/helpers/websocket.rb +4 -0
- data/lib/openai/models/admin/organization/audit_log_list_response.rb +5 -3
- data/lib/openai/models/admin/organization/external_storage_configuration.rb +5 -3
- data/lib/openai/models/admin/organization/external_storage_create_params.rb +33 -3
- data/lib/openai/models/admin/organization/oci_external_storage_provider.rb +37 -0
- data/lib/openai/models/admin/organization/project_residency.rb +3 -0
- data/lib/openai/models/admin/organization/projects/api_key_update_params.rb +64 -0
- data/lib/openai/models/admin/organization/projects/api_key_update_scopes_params.rb +34 -0
- data/lib/openai/models/admin/organization/usage_decisions_params.rb +177 -0
- data/lib/openai/models/admin/organization/usage_decisions_response.rb +351 -0
- data/lib/openai/models/audio/speech_create_params.rb +6 -3
- data/lib/openai/models/audio/translation_create_response.rb +0 -1
- data/lib/openai/models/audio/voice.rb +17 -2
- data/lib/openai/models/audio/voice_create_params.rb +100 -3
- data/lib/openai/models/beta/agent_create_params.rb +4 -2
- data/lib/openai/models/beta/agent_list_params.rb +4 -4
- data/lib/openai/models/beta/agent_session.rb +37 -1
- data/lib/openai/models/beta/agent_session_environment_expired_event.rb +57 -0
- data/lib/openai/models/beta/agent_session_environment_state.rb +6 -0
- data/lib/openai/models/beta/agent_session_environment_suspended_event.rb +57 -0
- data/lib/openai/models/beta/agent_session_event.rb +7 -1
- data/lib/openai/models/beta/agent_update_params.rb +4 -2
- data/lib/openai/models/beta/agents/environment_info.rb +3 -0
- data/lib/openai/models/beta/agents/environment_list_params.rb +7 -7
- data/lib/openai/models/beta/agents/session_create_params.rb +39 -3
- data/lib/openai/models/beta/agents/session_list_params.rb +7 -10
- data/lib/openai/models/beta/agents/session_update_params.rb +33 -1
- data/lib/openai/models/beta/agents/sessions/artifact_list_params.rb +11 -11
- data/lib/openai/models/beta/agents/vault_list_params.rb +23 -13
- data/lib/openai/models/beta/agents/vault_status_filter.rb +1 -3
- data/lib/openai/models/beta/agents/vault_update_params.rb +47 -0
- data/lib/openai/models/beta/agents/vaults/credential_list_params.rb +23 -13
- data/lib/openai/models/beta/beta_response.rb +23 -2
- data/lib/openai/models/beta/beta_response_error.rb +19 -1
- data/lib/openai/models/beta/beta_response_input_item.rb +107 -1
- data/lib/openai/models/beta/beta_response_item.rb +107 -1
- data/lib/openai/models/beta/beta_response_output_item.rb +107 -1
- data/lib/openai/models/beta/beta_responses_client_event.rb +23 -2
- data/lib/openai/models/beta/response_compact_params.rb +21 -0
- data/lib/openai/models/beta/response_create_params.rb +23 -2
- data/lib/openai/models/beta/session_turn_error.rb +3 -0
- data/lib/openai/models/chat/chat_completion_audio_param.rb +3 -3
- data/lib/openai/models/chat/chat_completion_message.rb +0 -8
- data/lib/openai/models/chat/chat_completion_message_function_tool_call.rb +0 -8
- data/lib/openai/models/chat/completion_create_params.rb +5 -12
- data/lib/openai/models/chat_model.rb +21 -0
- data/lib/openai/models/conversations/conversation_item.rb +107 -1
- data/lib/openai/models/decision.rb +17 -2
- data/lib/openai/models/decision_create_params.rb +29 -12
- data/lib/openai/models/decision_input_image.rb +4 -3
- data/lib/openai/models/decision_input_message.rb +4 -4
- data/lib/openai/models/decision_input_part.rb +3 -2
- data/lib/openai/models/image_edit_completed_event.rb +1 -2
- data/lib/openai/models/image_edit_partial_image_event.rb +1 -2
- data/lib/openai/models/image_gen_completed_event.rb +1 -2
- data/lib/openai/models/image_gen_partial_image_event.rb +1 -2
- data/lib/openai/models/images_response.rb +1 -2
- data/lib/openai/models/live/built_in_voice.rb +1 -0
- data/lib/openai/models/live/client_event.rb +14 -2
- data/lib/openai/models/live/decision_create_event.rb +26 -0
- data/lib/openai/models/live/decision_event.rb +117 -0
- data/lib/openai/models/live/decision_item_create_event.rb +194 -0
- data/lib/openai/models/live/decision_item_created_event.rb +202 -0
- data/lib/openai/models/live/decision_item_delete_event.rb +38 -0
- data/lib/openai/models/live/decision_item_deleted_event.rb +46 -0
- data/lib/openai/models/live/decision_trigger.rb +244 -0
- data/lib/openai/models/live/decisions_delegation_config.rb +201 -0
- data/lib/openai/models/live/decisions_delegation_update_config.rb +208 -0
- data/lib/openai/models/live/delegation_created_event.rb +10 -10
- data/lib/openai/models/live/fork_client_event.rb +14 -2
- data/lib/openai/models/live/fork_server_event.rb +17 -2
- data/lib/openai/models/live/media_session_config.rb +47 -11
- data/lib/openai/models/live/output_audio_fixture_play_event.rb +48 -0
- data/lib/openai/models/live/output_audio_fixture_played_event.rb +42 -0
- data/lib/openai/models/live/output_audio_fixture_playing_event.rb +41 -0
- data/lib/openai/models/live/server_event.rb +17 -2
- data/lib/openai/models/live/session_accept_params.rb +47 -11
- data/lib/openai/models/live/session_config.rb +47 -11
- data/lib/openai/models/live/session_resource.rb +47 -11
- data/lib/openai/models/live/session_update_config.rb +38 -6
- data/lib/openai/models/live/session_update_event.rb +8 -8
- data/lib/openai/models/live/sideband_client_event.rb +57 -0
- data/lib/openai/models/live/sideband_server_event.rb +78 -0
- data/lib/openai/models/realtime/realtime_audio_config_output.rb +6 -3
- data/lib/openai/models/realtime/realtime_response_create_audio_output.rb +6 -3
- data/lib/openai/models/realtime/realtime_response_status.rb +10 -1
- data/lib/openai/models/response_format_json_schema.rb +1 -1
- data/lib/openai/models/responses/function_tool.rb +8 -6
- data/lib/openai/models/responses/response.rb +2 -23
- data/lib/openai/models/responses/response_compact_params.rb +21 -0
- data/lib/openai/models/responses/response_create_params.rb +3 -6
- data/lib/openai/models/responses/response_error.rb +19 -1
- data/lib/openai/models/responses/response_format_text_config.rb +0 -4
- data/lib/openai/models/responses/response_function_tool_call.rb +0 -8
- data/lib/openai/models/responses/response_input_item.rb +107 -1
- data/lib/openai/models/responses/response_item.rb +107 -1
- data/lib/openai/models/responses/response_output_item.rb +107 -1
- data/lib/openai/models/responses/response_output_text.rb +0 -8
- data/lib/openai/models/responses/responses_client_event.rb +2 -2
- data/lib/openai/models/safety/safety_alert.rb +12 -1
- data/lib/openai/models/video_create_error.rb +19 -1
- data/lib/openai/models/webhooks/agent_environment_expired_webhook_event.rb +72 -0
- data/lib/openai/models/webhooks/agent_environment_suspended_webhook_event.rb +72 -0
- data/lib/openai/models/webhooks/unwrap_webhook_event.rb +8 -3
- data/lib/openai/models/webhooks/webhook_create_params.rb +2 -0
- data/lib/openai/models/webhooks/webhook_endpoint_with_secret.rb +0 -9
- data/lib/openai/models/webhooks/webhook_test_params.rb +2 -0
- data/lib/openai/models/webhooks/webhook_update_params.rb +2 -0
- data/lib/openai/resources/admin/organization/external_storage.rb +1 -1
- data/lib/openai/resources/admin/organization/projects/api_keys.rb +61 -0
- data/lib/openai/resources/admin/organization/usage.rb +67 -0
- data/lib/openai/resources/audio/speech.rb +2 -1
- data/lib/openai/resources/audio/voices.rb +10 -10
- data/lib/openai/resources/beta/agents/environments/files.rb +3 -31
- data/lib/openai/resources/beta/agents/environments.rb +3 -3
- data/lib/openai/resources/beta/agents/sessions/artifacts.rb +5 -11
- data/lib/openai/resources/beta/agents/sessions/events.rb +1 -1
- data/lib/openai/resources/beta/agents/sessions.rb +20 -56
- data/lib/openai/resources/beta/agents/vaults/credentials.rb +10 -6
- data/lib/openai/resources/beta/agents/vaults.rb +45 -6
- data/lib/openai/resources/beta/agents.rb +6 -4
- data/lib/openai/resources/beta/responses.rb +2 -2
- data/lib/openai/resources/chat/completions.rb +11 -37
- data/lib/openai/resources/decisions.rb +9 -15
- data/lib/openai/resources/files.rb +0 -39
- data/lib/openai/resources/live/forks.rb +19 -0
- data/lib/openai/resources/live/sideband.rb +19 -0
- data/lib/openai/resources/live.rb +19 -0
- data/lib/openai/resources/realtime/translations.rb +19 -0
- data/lib/openai/resources/realtime.rb +19 -0
- data/lib/openai/resources/responses.rb +44 -95
- data/lib/openai/resources/vector_stores/file_batches.rb +0 -178
- data/lib/openai/resources/vector_stores/files.rb +0 -188
- data/lib/openai/resources/webhooks.rb +13 -29
- data/lib/openai/version.rb +1 -1
- data/lib/openai.rb +35 -0
- data/rbi/openai/client.rbi +0 -103
- data/rbi/openai/helpers/admin/organization/projects/api_keys.rbi +25 -0
- data/rbi/openai/helpers/beta/agents/artifacts.rbi +25 -0
- data/rbi/openai/helpers/beta/agents/files.rbi +48 -0
- data/rbi/openai/helpers/client_runtime.rbi +108 -0
- data/rbi/openai/helpers/files.rbi +25 -0
- data/rbi/openai/helpers/models/chat/parsed.rbi +21 -0
- data/rbi/openai/helpers/models/responses/parsed.rbi +19 -0
- data/rbi/openai/helpers/models/responses/response.rbi +15 -0
- data/rbi/openai/helpers/streaming/response_stream.rbi +301 -0
- data/rbi/openai/helpers/vector_stores/file_batches.rbi +102 -0
- data/rbi/openai/helpers/vector_stores/files.rbi +122 -0
- data/rbi/openai/helpers/websocket.rbi +82 -0
- data/rbi/openai/models/admin/organization/audit_log_list_response.rbi +6 -3
- data/rbi/openai/models/admin/organization/external_storage_configuration.rbi +4 -2
- data/rbi/openai/models/admin/organization/external_storage_create_params.rbi +63 -4
- data/rbi/openai/models/admin/organization/oci_external_storage_provider.rbi +71 -0
- data/rbi/openai/models/admin/organization/project_residency.rbi +12 -0
- data/rbi/openai/models/admin/organization/projects/api_key_update_params.rbi +110 -0
- data/rbi/openai/models/admin/organization/projects/api_key_update_scopes_params.rbi +72 -0
- data/rbi/openai/models/admin/organization/usage_decisions_params.rbi +229 -0
- data/rbi/openai/models/admin/organization/usage_decisions_response.rbi +479 -0
- data/rbi/openai/models/audio/speech_create_params.rbi +6 -3
- data/rbi/openai/models/audio/voice.rbi +21 -2
- data/rbi/openai/models/audio/voice_create_params.rbi +149 -4
- data/rbi/openai/models/beta/agent_create_params.rbi +4 -2
- data/rbi/openai/models/beta/agent_list_params.rbi +8 -5
- data/rbi/openai/models/beta/agent_session.rbi +64 -1
- data/rbi/openai/models/beta/agent_session_environment_expired_event.rbi +95 -0
- data/rbi/openai/models/beta/agent_session_environment_state.rbi +6 -0
- data/rbi/openai/models/beta/agent_session_environment_suspended_event.rbi +95 -0
- data/rbi/openai/models/beta/agent_session_event.rbi +2 -0
- data/rbi/openai/models/beta/agent_update_params.rbi +4 -2
- data/rbi/openai/models/beta/agents/environment_info.rbi +3 -0
- data/rbi/openai/models/beta/agents/environment_list_params.rbi +7 -7
- data/rbi/openai/models/beta/agents/session_create_params.rbi +62 -2
- data/rbi/openai/models/beta/agents/session_list_params.rbi +11 -11
- data/rbi/openai/models/beta/agents/session_update_params.rbi +56 -0
- data/rbi/openai/models/beta/agents/sessions/artifact_list_params.rbi +19 -13
- data/rbi/openai/models/beta/agents/vault_list_params.rbi +30 -13
- data/rbi/openai/models/beta/agents/vault_status_filter.rbi +1 -3
- data/rbi/openai/models/beta/agents/vault_update_params.rbi +87 -0
- data/rbi/openai/models/beta/agents/vaults/credential_list_params.rbi +30 -13
- data/rbi/openai/models/beta/beta_response.rbi +2 -2
- data/rbi/openai/models/beta/beta_response_error.rbi +24 -3
- data/rbi/openai/models/beta/beta_response_input_item.rbi +191 -0
- data/rbi/openai/models/beta/beta_response_item.rbi +189 -0
- data/rbi/openai/models/beta/beta_response_output_item.rbi +191 -0
- data/rbi/openai/models/beta/beta_responses_client_event.rbi +2 -2
- data/rbi/openai/models/beta/response_create_params.rbi +2 -2
- data/rbi/openai/models/beta/session_turn_error.rbi +3 -0
- data/rbi/openai/models/chat/chat_completion_audio_param.rbi +3 -3
- data/rbi/openai/models/chat/chat_completion_message.rbi +0 -4
- data/rbi/openai/models/chat/chat_completion_message_function_tool_call.rbi +0 -4
- data/rbi/openai/models/chat/completion_create_params.rbi +63 -78
- data/rbi/openai/models/conversations/conversation_item.rbi +191 -0
- data/rbi/openai/models/decision.rbi +14 -1
- data/rbi/openai/models/decision_create_params.rbi +23 -12
- data/rbi/openai/models/decision_input_image.rbi +4 -3
- data/rbi/openai/models/decision_input_message.rbi +4 -4
- data/rbi/openai/models/decision_input_part.rbi +2 -1
- data/rbi/openai/models/image_edit_completed_event.rbi +1 -0
- data/rbi/openai/models/image_edit_partial_image_event.rbi +1 -0
- data/rbi/openai/models/image_gen_completed_event.rbi +1 -0
- data/rbi/openai/models/image_gen_partial_image_event.rbi +1 -0
- data/rbi/openai/models/images_response.rbi +1 -0
- data/rbi/openai/models/live/built_in_voice.rbi +1 -0
- data/rbi/openai/models/live/client_event.rbi +4 -0
- data/rbi/openai/models/live/decision_create_event.rbi +55 -0
- data/rbi/openai/models/live/decision_event.rbi +185 -0
- data/rbi/openai/models/live/decision_item_create_event.rbi +338 -0
- data/rbi/openai/models/live/decision_item_created_event.rbi +354 -0
- data/rbi/openai/models/live/decision_item_delete_event.rbi +66 -0
- data/rbi/openai/models/live/decision_item_deleted_event.rbi +77 -0
- data/rbi/openai/models/live/decision_trigger.rbi +465 -0
- data/rbi/openai/models/live/decisions_delegation_config.rbi +393 -0
- data/rbi/openai/models/live/decisions_delegation_update_config.rbi +412 -0
- data/rbi/openai/models/live/delegation_created_event.rbi +8 -10
- data/rbi/openai/models/live/fork_client_event.rbi +4 -0
- data/rbi/openai/models/live/fork_server_event.rbi +5 -0
- data/rbi/openai/models/live/media_session_config.rbi +95 -14
- data/rbi/openai/models/live/output_audio_fixture_play_event.rbi +76 -0
- data/rbi/openai/models/live/output_audio_fixture_played_event.rbi +73 -0
- data/rbi/openai/models/live/output_audio_fixture_playing_event.rbi +72 -0
- data/rbi/openai/models/live/server_event.rbi +5 -0
- data/rbi/openai/models/live/session_accept_params.rbi +88 -12
- data/rbi/openai/models/live/session_config.rbi +100 -14
- data/rbi/openai/models/live/session_resource.rbi +81 -10
- data/rbi/openai/models/live/session_update_config.rbi +86 -9
- data/rbi/openai/models/live/session_update_event.rbi +8 -8
- data/rbi/openai/models/live/sideband_client_event.rbi +40 -0
- data/rbi/openai/models/live/sideband_server_event.rbi +47 -0
- data/rbi/openai/models/realtime/realtime_audio_config_output.rbi +6 -3
- data/rbi/openai/models/realtime/realtime_response_create_audio_output.rbi +6 -3
- data/rbi/openai/models/realtime/realtime_response_status.rbi +13 -1
- data/rbi/openai/models/realtime/realtime_translation_input_audio_buffer_append_event.rbi +1 -1
- data/rbi/openai/models/realtime/realtime_translation_output_audio_delta_event.rbi +3 -3
- data/rbi/openai/models/realtime/realtime_translation_session_close_event.rbi +1 -1
- data/rbi/openai/models/realtime/realtime_translation_session_update_event.rbi +5 -1
- data/rbi/openai/models/responses/response.rbi +2 -7
- data/rbi/openai/models/responses/response_create_params.rbi +5 -9
- data/rbi/openai/models/responses/response_error.rbi +24 -3
- data/rbi/openai/models/responses/response_function_tool_call.rbi +0 -4
- data/rbi/openai/models/responses/response_function_web_search.rbi +21 -17
- data/rbi/openai/models/responses/response_input_item.rbi +191 -0
- data/rbi/openai/models/responses/response_item.rbi +189 -0
- data/rbi/openai/models/responses/response_output_item.rbi +191 -0
- data/rbi/openai/models/responses/response_output_text.rbi +0 -4
- data/rbi/openai/models/responses/responses_client_event.rbi +2 -2
- data/rbi/openai/models/safety/safety_alert.rbi +13 -1
- data/rbi/openai/models/video_create_error.rbi +24 -3
- data/rbi/openai/models/webhooks/agent_environment_expired_webhook_event.rbi +133 -0
- data/rbi/openai/models/webhooks/agent_environment_suspended_webhook_event.rbi +133 -0
- data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +3 -2
- data/rbi/openai/models/webhooks/webhook_create_params.rbi +8 -0
- data/rbi/openai/models/webhooks/webhook_test_params.rbi +8 -0
- data/rbi/openai/models/webhooks/webhook_update_params.rbi +8 -0
- data/rbi/openai/resources/admin/organization/external_storage.rbi +2 -1
- data/rbi/openai/resources/admin/organization/projects/api_keys.rbi +48 -0
- data/rbi/openai/resources/admin/organization/usage.rbi +56 -0
- data/rbi/openai/resources/audio/speech.rbi +2 -1
- data/rbi/openai/resources/audio/voices.rbi +13 -10
- data/rbi/openai/resources/beta/agents/environments/files.rbi +3 -33
- data/rbi/openai/resources/beta/agents/environments.rbi +3 -3
- data/rbi/openai/resources/beta/agents/sessions/artifacts.rbi +5 -13
- data/rbi/openai/resources/beta/agents/sessions.rbi +15 -4
- data/rbi/openai/resources/beta/agents/vaults/credentials.rbi +9 -5
- data/rbi/openai/resources/beta/agents/vaults.rbi +34 -5
- data/rbi/openai/resources/beta/agents.rbi +6 -4
- data/rbi/openai/resources/beta/responses.rbi +2 -2
- data/rbi/openai/resources/chat/completions.rbi +26 -29
- data/rbi/openai/resources/decisions.rbi +9 -15
- data/rbi/openai/resources/files.rbi +0 -18
- data/rbi/openai/resources/live/forks.rbi +17 -0
- data/rbi/openai/resources/live/sideband.rbi +17 -0
- data/rbi/openai/resources/live.rbi +17 -0
- data/rbi/openai/resources/realtime/translations.rbi +17 -0
- data/rbi/openai/resources/realtime.rbi +17 -0
- data/rbi/openai/resources/responses.rbi +41 -333
- data/rbi/openai/resources/vector_stores/file_batches.rbi +0 -93
- data/rbi/openai/resources/vector_stores/files.rbi +0 -113
- data/rbi/openai/resources/webhooks.rbi +2 -0
- data/sig/openai/client.rbs +0 -50
- data/sig/openai/helpers/admin/organization/projects/api_keys.rbs +18 -0
- data/sig/openai/helpers/beta/agents/artifacts.rbs +17 -0
- data/sig/openai/helpers/beta/agents/files.rbs +30 -0
- data/sig/openai/helpers/client_runtime.rbs +53 -0
- data/sig/openai/helpers/files.rbs +12 -0
- data/sig/openai/helpers/models/responses/response.rbs +9 -0
- data/sig/openai/helpers/streaming/response_stream.rbs +37 -0
- data/sig/openai/helpers/vector_stores/file_batches.rbs +38 -0
- data/sig/openai/helpers/vector_stores/files.rbs +43 -0
- data/sig/openai/helpers/websocket.rbs +40 -0
- data/sig/openai/models/admin/organization/audit_log_list_response.rbs +1 -0
- data/sig/openai/models/admin/organization/external_storage_configuration.rbs +1 -0
- data/sig/openai/models/admin/organization/external_storage_create_params.rbs +33 -0
- data/sig/openai/models/admin/organization/oci_external_storage_provider.rbs +34 -0
- data/sig/openai/models/admin/organization/project_residency.rbs +6 -0
- data/sig/openai/models/admin/organization/projects/api_key_update_params.rbs +77 -0
- data/sig/openai/models/admin/organization/projects/api_key_update_scopes_params.rbs +38 -0
- data/sig/openai/models/admin/organization/usage_decisions_params.rbs +170 -0
- data/sig/openai/models/admin/organization/usage_decisions_response.rbs +319 -0
- data/sig/openai/models/audio/speech_create_params.rbs +4 -2
- data/sig/openai/models/audio/voice.rbs +21 -3
- data/sig/openai/models/audio/voice_create_params.rbs +90 -1
- data/sig/openai/models/beta/agent_create_params.rbs +4 -2
- data/sig/openai/models/beta/agent_list_params.rbs +9 -6
- data/sig/openai/models/beta/agent_session.rbs +36 -2
- data/sig/openai/models/beta/agent_session_environment_expired_event.rbs +57 -0
- data/sig/openai/models/beta/agent_session_environment_state.rbs +14 -1
- data/sig/openai/models/beta/agent_session_environment_suspended_event.rbs +57 -0
- data/sig/openai/models/beta/agent_session_event.rbs +2 -0
- data/sig/openai/models/beta/agent_update_params.rbs +4 -2
- data/sig/openai/models/beta/agents/environment_info.rbs +11 -1
- data/sig/openai/models/beta/agents/environment_list_params.rbs +9 -9
- data/sig/openai/models/beta/agents/session_create_params.rbs +29 -2
- data/sig/openai/models/beta/agents/session_list_params.rbs +12 -12
- data/sig/openai/models/beta/agents/session_update_params.rbs +23 -0
- data/sig/openai/models/beta/agents/sessions/artifact_list_params.rbs +21 -15
- data/sig/openai/models/beta/agents/vault_list_params.rbs +32 -14
- data/sig/openai/models/beta/agents/vault_update_params.rbs +54 -0
- data/sig/openai/models/beta/agents/vaults/credential_list_params.rbs +32 -14
- data/sig/openai/models/beta/beta_response.rbs +2 -2
- data/sig/openai/models/beta/beta_response_error.rbs +19 -3
- data/sig/openai/models/beta/beta_response_input_item.rbs +110 -0
- data/sig/openai/models/beta/beta_response_item.rbs +110 -0
- data/sig/openai/models/beta/beta_response_output_item.rbs +110 -0
- data/sig/openai/models/beta/beta_responses_client_event.rbs +2 -2
- data/sig/openai/models/beta/response_create_params.rbs +2 -2
- data/sig/openai/models/beta/session_turn_error.rbs +4 -0
- data/sig/openai/models/chat/chat_completion_audio_param.rbs +2 -2
- data/sig/openai/models/chat/completion_create_params.rbs +2 -2
- data/sig/openai/models/conversations/conversation_item.rbs +110 -0
- data/sig/openai/models/decision.rbs +13 -0
- data/sig/openai/models/decision_create_params.rbs +19 -8
- data/sig/openai/models/decision_input_image.rbs +2 -2
- data/sig/openai/models/decision_input_message.rbs +2 -2
- data/sig/openai/models/live/built_in_voice.rbs +2 -0
- data/sig/openai/models/live/client_event.rbs +4 -0
- data/sig/openai/models/live/decision_create_event.rbs +18 -0
- data/sig/openai/models/live/decision_event.rbs +102 -0
- data/sig/openai/models/live/decision_item_create_event.rbs +183 -0
- data/sig/openai/models/live/decision_item_created_event.rbs +195 -0
- data/sig/openai/models/live/decision_item_delete_event.rbs +33 -0
- data/sig/openai/models/live/decision_item_deleted_event.rbs +49 -0
- data/sig/openai/models/live/decision_trigger.rbs +234 -0
- data/sig/openai/models/live/decisions_delegation_config.rbs +195 -0
- data/sig/openai/models/live/decisions_delegation_update_config.rbs +202 -0
- data/sig/openai/models/live/delegation_created_event.rbs +6 -7
- data/sig/openai/models/live/fork_client_event.rbs +4 -0
- data/sig/openai/models/live/fork_server_event.rbs +5 -0
- data/sig/openai/models/live/media_session_config.rbs +58 -11
- data/sig/openai/models/live/output_audio_fixture_play_event.rbs +42 -0
- data/sig/openai/models/live/output_audio_fixture_played_event.rbs +44 -0
- data/sig/openai/models/live/output_audio_fixture_playing_event.rbs +44 -0
- data/sig/openai/models/live/server_event.rbs +5 -0
- data/sig/openai/models/live/session_accept_params.rbs +57 -10
- data/sig/openai/models/live/session_config.rbs +58 -11
- data/sig/openai/models/live/session_resource.rbs +57 -10
- data/sig/openai/models/live/session_update_config.rbs +54 -3
- data/sig/openai/models/live/session_update_event.rbs +6 -6
- data/sig/openai/models/live/sideband_client_event.rbs +26 -0
- data/sig/openai/models/live/sideband_server_event.rbs +33 -0
- data/sig/openai/models/realtime/realtime_audio_config_output.rbs +6 -3
- data/sig/openai/models/realtime/realtime_response_create_audio_output.rbs +6 -3
- data/sig/openai/models/realtime/realtime_response_status.rbs +15 -3
- data/sig/openai/models/responses/response.rbs +2 -4
- data/sig/openai/models/responses/response_create_params.rbs +2 -2
- data/sig/openai/models/responses/response_error.rbs +19 -3
- data/sig/openai/models/responses/response_input_item.rbs +110 -0
- data/sig/openai/models/responses/response_item.rbs +110 -0
- data/sig/openai/models/responses/response_output_item.rbs +110 -0
- data/sig/openai/models/responses/responses_client_event.rbs +2 -2
- data/sig/openai/models/safety/safety_alert.rbs +12 -2
- data/sig/openai/models/video_create_error.rbs +19 -3
- data/sig/openai/models/webhooks/agent_environment_expired_webhook_event.rbs +70 -0
- data/sig/openai/models/webhooks/agent_environment_suspended_webhook_event.rbs +70 -0
- data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +3 -1
- data/sig/openai/models/webhooks/webhook_create_params.rbs +4 -0
- data/sig/openai/models/webhooks/webhook_test_params.rbs +4 -0
- data/sig/openai/models/webhooks/webhook_update_params.rbs +4 -0
- data/sig/openai/resources/admin/organization/projects/api_keys.rbs +8 -0
- data/sig/openai/resources/admin/organization/usage.rbs +15 -0
- data/sig/openai/resources/beta/agents/environments/files.rbs +0 -17
- data/sig/openai/resources/beta/agents/sessions/artifacts.rbs +2 -6
- data/sig/openai/resources/beta/agents/sessions.rbs +4 -1
- data/sig/openai/resources/beta/agents/vaults/credentials.rbs +2 -1
- data/sig/openai/resources/beta/agents/vaults.rbs +9 -1
- data/sig/openai/resources/beta/agents.rbs +1 -1
- data/sig/openai/resources/files.rbs +0 -7
- data/sig/openai/resources/live/forks.rbs +8 -0
- data/sig/openai/resources/live/sideband.rbs +8 -0
- data/sig/openai/resources/live.rbs +7 -0
- data/sig/openai/resources/realtime/translations.rbs +7 -0
- data/sig/openai/resources/realtime.rbs +7 -0
- data/sig/openai/resources/responses.rbs +7 -31
- data/sig/openai/resources/vector_stores/file_batches.rbs +0 -31
- data/sig/openai/resources/vector_stores/files.rbs +0 -36
- data/sig/openai/resources/webhooks.rbs +3 -1
- metadata +101 -1
|
@@ -52,13 +52,14 @@ module OpenAI
|
|
|
52
52
|
attr_writer :client
|
|
53
53
|
|
|
54
54
|
# Who handles tasks delegated by the Live model. Omitted or null selects your
|
|
55
|
-
# application; use `responses`
|
|
55
|
+
# application; use `responses` or `decisions` to delegate to the corresponding
|
|
56
|
+
# API.
|
|
56
57
|
sig { returns(T.nilable(OpenAI::Live::SessionResource::Delegation::Variants)) }
|
|
57
58
|
attr_accessor :delegation
|
|
58
59
|
|
|
59
60
|
# Ordered text-only history supplied before startup. Supports developer, user, and
|
|
60
|
-
# assistant messages with one text part each; at most 128 messages and
|
|
61
|
-
# rendered
|
|
61
|
+
# assistant messages with one text part each; at most 128 messages and a
|
|
62
|
+
# configured rendered-token limit (8,192 by default).
|
|
62
63
|
sig {
|
|
63
64
|
returns(
|
|
64
65
|
T.nilable(
|
|
@@ -106,6 +107,16 @@ module OpenAI
|
|
|
106
107
|
sig { params(store: T::Boolean).void }
|
|
107
108
|
attr_writer :store
|
|
108
109
|
|
|
110
|
+
# At most one Decisions trigger per transcript event type. Triggers run
|
|
111
|
+
# independently of delegation. On update, omit triggers to keep the current
|
|
112
|
+
# configuration, send a list to replace it, or send an empty list to disable
|
|
113
|
+
# triggers.
|
|
114
|
+
sig { returns(T.nilable(T::Array[OpenAI::Live::DecisionTrigger])) }
|
|
115
|
+
attr_reader :triggers
|
|
116
|
+
|
|
117
|
+
sig { params(triggers: T::Array[OpenAI::Live::DecisionTrigger::OrHash]).void }
|
|
118
|
+
attr_writer :triggers
|
|
119
|
+
|
|
109
120
|
# The resolved Live session configuration and server-assigned session metadata.
|
|
110
121
|
sig do
|
|
111
122
|
params(
|
|
@@ -123,7 +134,8 @@ module OpenAI
|
|
|
123
134
|
delegation: T.nilable(
|
|
124
135
|
T.any(
|
|
125
136
|
OpenAI::Live::ClientDelegation::OrHash,
|
|
126
|
-
OpenAI::Live::SessionResource::Delegation::Responses::OrHash
|
|
137
|
+
OpenAI::Live::SessionResource::Delegation::Responses::OrHash,
|
|
138
|
+
OpenAI::Live::SessionResource::Delegation::Decisions::OrHash
|
|
127
139
|
)
|
|
128
140
|
),
|
|
129
141
|
|
|
@@ -139,6 +151,8 @@ module OpenAI
|
|
|
139
151
|
|
|
140
152
|
store: T::Boolean,
|
|
141
153
|
|
|
154
|
+
triggers: T::Array[OpenAI::Live::DecisionTrigger::OrHash],
|
|
155
|
+
|
|
142
156
|
status: Symbol
|
|
143
157
|
)
|
|
144
158
|
.returns(T.attached_class)
|
|
@@ -166,12 +180,13 @@ module OpenAI
|
|
|
166
180
|
client: nil,
|
|
167
181
|
|
|
168
182
|
# Who handles tasks delegated by the Live model. Omitted or null selects your
|
|
169
|
-
# application; use `responses`
|
|
183
|
+
# application; use `responses` or `decisions` to delegate to the corresponding
|
|
184
|
+
# API.
|
|
170
185
|
delegation: nil,
|
|
171
186
|
|
|
172
187
|
# Ordered text-only history supplied before startup. Supports developer, user, and
|
|
173
|
-
# assistant messages with one text part each; at most 128 messages and
|
|
174
|
-
# rendered
|
|
188
|
+
# assistant messages with one text part each; at most 128 messages and a
|
|
189
|
+
# configured rendered-token limit (8,192 by default).
|
|
175
190
|
input: nil,
|
|
176
191
|
|
|
177
192
|
# Frontend instructions for voice, conversation, interruptions, and when to
|
|
@@ -187,6 +202,12 @@ module OpenAI
|
|
|
187
202
|
# to false for new sessions.
|
|
188
203
|
store: nil,
|
|
189
204
|
|
|
205
|
+
# At most one Decisions trigger per transcript event type. Triggers run
|
|
206
|
+
# independently of delegation. On update, omit triggers to keep the current
|
|
207
|
+
# configuration, send a list to replace it, or send an empty list to disable
|
|
208
|
+
# triggers.
|
|
209
|
+
triggers: nil,
|
|
210
|
+
|
|
190
211
|
# The status of the session snapshot. Always `active`, including the final
|
|
191
212
|
# snapshot in session.closed; use the event type to determine that the session has
|
|
192
213
|
# closed.
|
|
@@ -213,7 +234,8 @@ module OpenAI
|
|
|
213
234
|
)
|
|
214
235
|
],
|
|
215
236
|
instructions: T.nilable(String),
|
|
216
|
-
store: T::Boolean
|
|
237
|
+
store: T::Boolean,
|
|
238
|
+
triggers: T::Array[OpenAI::Live::DecisionTrigger]
|
|
217
239
|
}
|
|
218
240
|
)
|
|
219
241
|
end
|
|
@@ -387,12 +409,17 @@ module OpenAI
|
|
|
387
409
|
end
|
|
388
410
|
|
|
389
411
|
# Who handles tasks delegated by the Live model. Omitted or null selects your
|
|
390
|
-
# application; use `responses`
|
|
412
|
+
# application; use `responses` or `decisions` to delegate to the corresponding
|
|
413
|
+
# API.
|
|
391
414
|
module Delegation
|
|
392
415
|
extend OpenAI::Internal::Type::Union
|
|
393
416
|
|
|
394
417
|
Variants = T.type_alias {
|
|
395
|
-
T.any(
|
|
418
|
+
T.any(
|
|
419
|
+
OpenAI::Live::ClientDelegation,
|
|
420
|
+
OpenAI::Live::SessionResource::Delegation::Responses,
|
|
421
|
+
OpenAI::Live::SessionResource::Delegation::Decisions
|
|
422
|
+
)
|
|
396
423
|
}
|
|
397
424
|
|
|
398
425
|
class Responses < OpenAI::Internal::Type::BaseModel
|
|
@@ -447,6 +474,50 @@ module OpenAI
|
|
|
447
474
|
|
|
448
475
|
end
|
|
449
476
|
|
|
477
|
+
class Decisions < OpenAI::Internal::Type::BaseModel
|
|
478
|
+
OrHash = T.type_alias do
|
|
479
|
+
T.any(
|
|
480
|
+
OpenAI::Live::SessionResource::Delegation::Decisions,
|
|
481
|
+
OpenAI::Internal::AnyHash
|
|
482
|
+
)
|
|
483
|
+
end
|
|
484
|
+
|
|
485
|
+
sig { returns(OpenAI::Live::DecisionsDelegationConfig) }
|
|
486
|
+
attr_reader :decisions
|
|
487
|
+
|
|
488
|
+
sig { params(decisions: OpenAI::Live::DecisionsDelegationConfig::OrHash).void }
|
|
489
|
+
attr_writer :decisions
|
|
490
|
+
|
|
491
|
+
sig { returns(Symbol) }
|
|
492
|
+
attr_accessor :type
|
|
493
|
+
|
|
494
|
+
sig do
|
|
495
|
+
params(
|
|
496
|
+
|
|
497
|
+
decisions: OpenAI::Live::DecisionsDelegationConfig::OrHash,
|
|
498
|
+
|
|
499
|
+
type: Symbol
|
|
500
|
+
)
|
|
501
|
+
.returns(T.attached_class)
|
|
502
|
+
end
|
|
503
|
+
def self.new(
|
|
504
|
+
|
|
505
|
+
decisions:,
|
|
506
|
+
|
|
507
|
+
type: :decisions
|
|
508
|
+
)
|
|
509
|
+
end
|
|
510
|
+
|
|
511
|
+
sig do
|
|
512
|
+
override.returns(
|
|
513
|
+
{decisions: OpenAI::Live::DecisionsDelegationConfig, type: Symbol}
|
|
514
|
+
)
|
|
515
|
+
end
|
|
516
|
+
def to_hash
|
|
517
|
+
end
|
|
518
|
+
|
|
519
|
+
end
|
|
520
|
+
|
|
450
521
|
sig { override.returns(T::Array[OpenAI::Live::SessionResource::Delegation::Variants]) }
|
|
451
522
|
def self.variants
|
|
452
523
|
end
|
|
@@ -18,22 +18,40 @@ module OpenAI
|
|
|
18
18
|
# session; omitted settings retain their values.
|
|
19
19
|
sig {
|
|
20
20
|
returns(
|
|
21
|
-
T.nilable(
|
|
21
|
+
T.nilable(
|
|
22
|
+
T.any(
|
|
23
|
+
OpenAI::Live::ClientDelegation,
|
|
24
|
+
OpenAI::Live::SessionUpdateConfig::Delegation::Responses,
|
|
25
|
+
OpenAI::Live::SessionUpdateConfig::Delegation::Decisions
|
|
26
|
+
)
|
|
27
|
+
)
|
|
22
28
|
)
|
|
23
29
|
}
|
|
24
30
|
attr_accessor :delegation
|
|
25
31
|
|
|
26
|
-
#
|
|
27
|
-
#
|
|
32
|
+
# At most one Decisions trigger per transcript event type. Triggers run
|
|
33
|
+
# independently of delegation. On update, omit triggers to keep the current
|
|
34
|
+
# configuration, send a list to replace it, or send an empty list to disable
|
|
35
|
+
# triggers.
|
|
36
|
+
sig { returns(T.nilable(T::Array[OpenAI::Live::DecisionTrigger])) }
|
|
37
|
+
attr_reader :triggers
|
|
38
|
+
|
|
39
|
+
sig { params(triggers: T::Array[OpenAI::Live::DecisionTrigger::OrHash]).void }
|
|
40
|
+
attr_writer :triggers
|
|
41
|
+
|
|
42
|
+
# Changes to an active Live session's delegation settings and transcript triggers.
|
|
28
43
|
sig do
|
|
29
44
|
params(
|
|
30
45
|
|
|
31
46
|
delegation: T.nilable(
|
|
32
47
|
T.any(
|
|
33
48
|
OpenAI::Live::ClientDelegation::OrHash,
|
|
34
|
-
OpenAI::Live::SessionUpdateConfig::Delegation::Responses::OrHash
|
|
49
|
+
OpenAI::Live::SessionUpdateConfig::Delegation::Responses::OrHash,
|
|
50
|
+
OpenAI::Live::SessionUpdateConfig::Delegation::Decisions::OrHash
|
|
35
51
|
)
|
|
36
|
-
)
|
|
52
|
+
),
|
|
53
|
+
|
|
54
|
+
triggers: T::Array[OpenAI::Live::DecisionTrigger::OrHash]
|
|
37
55
|
)
|
|
38
56
|
.returns(T.attached_class)
|
|
39
57
|
end
|
|
@@ -41,8 +59,14 @@ module OpenAI
|
|
|
41
59
|
|
|
42
60
|
# Delegation settings to update. The delegation type must match the current
|
|
43
61
|
# session; omitted settings retain their values.
|
|
62
|
+
delegation: nil,
|
|
63
|
+
|
|
64
|
+
# At most one Decisions trigger per transcript event type. Triggers run
|
|
65
|
+
# independently of delegation. On update, omit triggers to keep the current
|
|
66
|
+
# configuration, send a list to replace it, or send an empty list to disable
|
|
67
|
+
# triggers.
|
|
44
68
|
|
|
45
|
-
|
|
69
|
+
triggers: nil
|
|
46
70
|
)
|
|
47
71
|
end
|
|
48
72
|
|
|
@@ -50,8 +74,13 @@ module OpenAI
|
|
|
50
74
|
override.returns(
|
|
51
75
|
{
|
|
52
76
|
delegation: T.nilable(
|
|
53
|
-
T.any(
|
|
54
|
-
|
|
77
|
+
T.any(
|
|
78
|
+
OpenAI::Live::ClientDelegation,
|
|
79
|
+
OpenAI::Live::SessionUpdateConfig::Delegation::Responses,
|
|
80
|
+
OpenAI::Live::SessionUpdateConfig::Delegation::Decisions
|
|
81
|
+
)
|
|
82
|
+
),
|
|
83
|
+
triggers: T::Array[OpenAI::Live::DecisionTrigger]
|
|
55
84
|
}
|
|
56
85
|
)
|
|
57
86
|
end
|
|
@@ -64,7 +93,11 @@ module OpenAI
|
|
|
64
93
|
extend OpenAI::Internal::Type::Union
|
|
65
94
|
|
|
66
95
|
Variants = T.type_alias {
|
|
67
|
-
T.any(
|
|
96
|
+
T.any(
|
|
97
|
+
OpenAI::Live::ClientDelegation,
|
|
98
|
+
OpenAI::Live::SessionUpdateConfig::Delegation::Responses,
|
|
99
|
+
OpenAI::Live::SessionUpdateConfig::Delegation::Decisions
|
|
100
|
+
)
|
|
68
101
|
}
|
|
69
102
|
|
|
70
103
|
class Responses < OpenAI::Internal::Type::BaseModel
|
|
@@ -120,6 +153,50 @@ module OpenAI
|
|
|
120
153
|
|
|
121
154
|
end
|
|
122
155
|
|
|
156
|
+
class Decisions < OpenAI::Internal::Type::BaseModel
|
|
157
|
+
OrHash = T.type_alias do
|
|
158
|
+
T.any(
|
|
159
|
+
OpenAI::Live::SessionUpdateConfig::Delegation::Decisions,
|
|
160
|
+
OpenAI::Internal::AnyHash
|
|
161
|
+
)
|
|
162
|
+
end
|
|
163
|
+
|
|
164
|
+
sig { returns(Symbol) }
|
|
165
|
+
attr_accessor :type
|
|
166
|
+
|
|
167
|
+
sig { returns(T.nilable(OpenAI::Live::DecisionsDelegationUpdateConfig)) }
|
|
168
|
+
attr_reader :decisions
|
|
169
|
+
|
|
170
|
+
sig { params(decisions: OpenAI::Live::DecisionsDelegationUpdateConfig::OrHash).void }
|
|
171
|
+
attr_writer :decisions
|
|
172
|
+
|
|
173
|
+
sig do
|
|
174
|
+
params(
|
|
175
|
+
|
|
176
|
+
decisions: OpenAI::Live::DecisionsDelegationUpdateConfig::OrHash,
|
|
177
|
+
|
|
178
|
+
type: Symbol
|
|
179
|
+
)
|
|
180
|
+
.returns(T.attached_class)
|
|
181
|
+
end
|
|
182
|
+
def self.new(
|
|
183
|
+
|
|
184
|
+
decisions: nil,
|
|
185
|
+
|
|
186
|
+
type: :decisions
|
|
187
|
+
)
|
|
188
|
+
end
|
|
189
|
+
|
|
190
|
+
sig do
|
|
191
|
+
override.returns(
|
|
192
|
+
{type: Symbol, decisions: OpenAI::Live::DecisionsDelegationUpdateConfig}
|
|
193
|
+
)
|
|
194
|
+
end
|
|
195
|
+
def to_hash
|
|
196
|
+
end
|
|
197
|
+
|
|
198
|
+
end
|
|
199
|
+
|
|
123
200
|
sig { override.returns(T::Array[OpenAI::Live::SessionUpdateConfig::Delegation::Variants]) }
|
|
124
201
|
def self.variants
|
|
125
202
|
end
|
|
@@ -14,9 +14,9 @@ module OpenAI
|
|
|
14
14
|
)
|
|
15
15
|
end
|
|
16
16
|
|
|
17
|
-
# Sparse delegation updates. Omitted settings retain their values. The
|
|
18
|
-
# type cannot change,
|
|
19
|
-
#
|
|
17
|
+
# Sparse delegation and trigger updates. Omitted settings retain their values. The
|
|
18
|
+
# delegation type cannot change. Model, frontend instructions, audio, and startup
|
|
19
|
+
# input are immutable.
|
|
20
20
|
sig { returns(OpenAI::Live::SessionUpdateConfig) }
|
|
21
21
|
attr_reader :session
|
|
22
22
|
|
|
@@ -32,8 +32,8 @@ module OpenAI
|
|
|
32
32
|
sig { returns(T.nilable(String)) }
|
|
33
33
|
attr_accessor :event_id
|
|
34
34
|
|
|
35
|
-
# Update the delegation settings of an active Live session.
|
|
36
|
-
# acknowledges accepted changes with `session.updated`.
|
|
35
|
+
# Update the delegation settings or transcript triggers of an active Live session.
|
|
36
|
+
# The server acknowledges accepted changes with `session.updated`.
|
|
37
37
|
sig do
|
|
38
38
|
params(
|
|
39
39
|
|
|
@@ -47,9 +47,9 @@ module OpenAI
|
|
|
47
47
|
end
|
|
48
48
|
def self.new(
|
|
49
49
|
|
|
50
|
-
# Sparse delegation updates. Omitted settings retain their values. The
|
|
51
|
-
# type cannot change,
|
|
52
|
-
#
|
|
50
|
+
# Sparse delegation and trigger updates. Omitted settings retain their values. The
|
|
51
|
+
# delegation type cannot change. Model, frontend instructions, audio, and startup
|
|
52
|
+
# input are immutable.
|
|
53
53
|
session:,
|
|
54
54
|
|
|
55
55
|
# Optional client identifier for correlating this command with a server event's
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Live
|
|
7
|
+
|
|
8
|
+
# Client events accepted by an attached Live sideband WebSocket. The session has
|
|
9
|
+
# already started. Send input audio over the primary connection.
|
|
10
|
+
module SidebandClientEvent
|
|
11
|
+
extend OpenAI::Internal::Type::Union
|
|
12
|
+
|
|
13
|
+
Variants = T.type_alias do
|
|
14
|
+
T.any(
|
|
15
|
+
OpenAI::Live::SessionUpdateEvent,
|
|
16
|
+
OpenAI::Live::InputAudioMuteEvent,
|
|
17
|
+
OpenAI::Live::InputAudioUnmuteEvent,
|
|
18
|
+
OpenAI::Live::OutputAudioFixturePlayEvent,
|
|
19
|
+
OpenAI::Live::InstructionsAppendEvent,
|
|
20
|
+
OpenAI::Live::ThinkingAppendEvent,
|
|
21
|
+
OpenAI::Live::CommentaryAppendEvent,
|
|
22
|
+
OpenAI::Live::DecisionCreateEvent,
|
|
23
|
+
OpenAI::Live::DecisionItemCreateEvent,
|
|
24
|
+
OpenAI::Live::DecisionItemDeleteEvent,
|
|
25
|
+
OpenAI::Live::ResponseItemCreateEvent,
|
|
26
|
+
OpenAI::Live::ResponseCreateEvent,
|
|
27
|
+
OpenAI::Live::SessionCloseEvent
|
|
28
|
+
)
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
sig { override.returns(T::Array[OpenAI::Live::SidebandClientEvent::Variants]) }
|
|
32
|
+
def self.variants
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Live
|
|
7
|
+
|
|
8
|
+
# Server events received by an attached Live sideband WebSocket. Audio deltas are
|
|
9
|
+
# delivered over the primary connection.
|
|
10
|
+
module SidebandServerEvent
|
|
11
|
+
extend OpenAI::Internal::Type::Union
|
|
12
|
+
|
|
13
|
+
Variants = T.type_alias do
|
|
14
|
+
T.any(
|
|
15
|
+
OpenAI::Live::SessionStartedEvent,
|
|
16
|
+
OpenAI::Live::SessionUpdatedEvent,
|
|
17
|
+
OpenAI::Live::InputAudioMutedEvent,
|
|
18
|
+
OpenAI::Live::InputAudioUnmutedEvent,
|
|
19
|
+
OpenAI::Live::OutputAudioFixturePlayingEvent,
|
|
20
|
+
OpenAI::Live::OutputAudioFixturePlayedEvent,
|
|
21
|
+
OpenAI::Live::InstructionsAppendedEvent,
|
|
22
|
+
OpenAI::Live::ThinkingAppendedEvent,
|
|
23
|
+
OpenAI::Live::CommentaryAppendedEvent,
|
|
24
|
+
OpenAI::Live::InputTranscriptDeltaEvent,
|
|
25
|
+
OpenAI::Live::OutputTranscriptDeltaEvent,
|
|
26
|
+
OpenAI::Live::DelegationCreatedEvent,
|
|
27
|
+
OpenAI::Live::DecisionEvent,
|
|
28
|
+
OpenAI::Live::DecisionItemCreatedEvent,
|
|
29
|
+
OpenAI::Live::DecisionItemDeletedEvent,
|
|
30
|
+
OpenAI::Live::ResponseEvent,
|
|
31
|
+
OpenAI::Live::SessionUsageUpdatedEvent,
|
|
32
|
+
OpenAI::Live::SessionClosedEvent,
|
|
33
|
+
OpenAI::Live::ErrorEvent,
|
|
34
|
+
OpenAI::Live::InfoEvent
|
|
35
|
+
)
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
sig { override.returns(T::Array[OpenAI::Live::SidebandServerEvent::Variants]) }
|
|
39
|
+
def self.variants
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
end
|
|
47
|
+
end
|
|
@@ -58,7 +58,8 @@ module OpenAI
|
|
|
58
58
|
# `cedar`. You may also provide a custom voice object with an `id`, for example
|
|
59
59
|
# `{ "id": "voice_1234" }`. Voice cannot be changed during the session once the
|
|
60
60
|
# model has responded with audio at least once. Custom voices must be created from
|
|
61
|
-
# audio samples.
|
|
61
|
+
# audio samples. Voices created from text prompts are supported only in Live. We
|
|
62
|
+
# recommend `marin` and `cedar` for best quality.
|
|
62
63
|
sig {
|
|
63
64
|
returns(
|
|
64
65
|
T.nilable(
|
|
@@ -122,7 +123,8 @@ module OpenAI
|
|
|
122
123
|
# `cedar`. You may also provide a custom voice object with an `id`, for example
|
|
123
124
|
# `{ "id": "voice_1234" }`. Voice cannot be changed during the session once the
|
|
124
125
|
# model has responded with audio at least once. Custom voices must be created from
|
|
125
|
-
# audio samples.
|
|
126
|
+
# audio samples. Voices created from text prompts are supported only in Live. We
|
|
127
|
+
# recommend `marin` and `cedar` for best quality.
|
|
126
128
|
|
|
127
129
|
voice: nil
|
|
128
130
|
)
|
|
@@ -153,7 +155,8 @@ module OpenAI
|
|
|
153
155
|
# `cedar`. You may also provide a custom voice object with an `id`, for example
|
|
154
156
|
# `{ "id": "voice_1234" }`. Voice cannot be changed during the session once the
|
|
155
157
|
# model has responded with audio at least once. Custom voices must be created from
|
|
156
|
-
# audio samples.
|
|
158
|
+
# audio samples. Voices created from text prompts are supported only in Live. We
|
|
159
|
+
# recommend `marin` and `cedar` for best quality.
|
|
157
160
|
module Voice
|
|
158
161
|
extend OpenAI::Internal::Type::Union
|
|
159
162
|
|
|
@@ -81,7 +81,8 @@ module OpenAI
|
|
|
81
81
|
# `cedar`. You may also provide a custom voice object with an `id`, for example
|
|
82
82
|
# `{ "id": "voice_1234" }`. Voice cannot be changed during the session once the
|
|
83
83
|
# model has responded with audio at least once. Custom voices must be created from
|
|
84
|
-
# audio samples.
|
|
84
|
+
# audio samples. Voices created from text prompts are supported only in Live. We
|
|
85
|
+
# recommend `marin` and `cedar` for best quality.
|
|
85
86
|
sig {
|
|
86
87
|
returns(
|
|
87
88
|
T.nilable(
|
|
@@ -134,7 +135,8 @@ module OpenAI
|
|
|
134
135
|
# `cedar`. You may also provide a custom voice object with an `id`, for example
|
|
135
136
|
# `{ "id": "voice_1234" }`. Voice cannot be changed during the session once the
|
|
136
137
|
# model has responded with audio at least once. Custom voices must be created from
|
|
137
|
-
# audio samples.
|
|
138
|
+
# audio samples. Voices created from text prompts are supported only in Live. We
|
|
139
|
+
# recommend `marin` and `cedar` for best quality.
|
|
138
140
|
|
|
139
141
|
voice: nil
|
|
140
142
|
)
|
|
@@ -164,7 +166,8 @@ module OpenAI
|
|
|
164
166
|
# `cedar`. You may also provide a custom voice object with an `id`, for example
|
|
165
167
|
# `{ "id": "voice_1234" }`. Voice cannot be changed during the session once the
|
|
166
168
|
# model has responded with audio at least once. Custom voices must be created from
|
|
167
|
-
# audio samples.
|
|
169
|
+
# audio samples. Voices created from text prompts are supported only in Live. We
|
|
170
|
+
# recommend `marin` and `cedar` for best quality.
|
|
168
171
|
module Voice
|
|
169
172
|
extend OpenAI::Internal::Type::Union
|
|
170
173
|
|
|
@@ -100,6 +100,13 @@ module OpenAI
|
|
|
100
100
|
sig { params(code: String).void }
|
|
101
101
|
attr_writer :code
|
|
102
102
|
|
|
103
|
+
# A human-readable error message.
|
|
104
|
+
sig { returns(T.nilable(String)) }
|
|
105
|
+
attr_reader :message
|
|
106
|
+
|
|
107
|
+
sig { params(message: String).void }
|
|
108
|
+
attr_writer :message
|
|
109
|
+
|
|
103
110
|
# The type of error.
|
|
104
111
|
sig { returns(T.nilable(String)) }
|
|
105
112
|
attr_reader :type
|
|
@@ -114,6 +121,8 @@ module OpenAI
|
|
|
114
121
|
|
|
115
122
|
code: String,
|
|
116
123
|
|
|
124
|
+
message: String,
|
|
125
|
+
|
|
117
126
|
type: String
|
|
118
127
|
)
|
|
119
128
|
.returns(T.attached_class)
|
|
@@ -123,6 +132,9 @@ module OpenAI
|
|
|
123
132
|
# Error code, if any.
|
|
124
133
|
code: nil,
|
|
125
134
|
|
|
135
|
+
# A human-readable error message.
|
|
136
|
+
message: nil,
|
|
137
|
+
|
|
126
138
|
# The type of error.
|
|
127
139
|
|
|
128
140
|
type: nil
|
|
@@ -131,7 +143,7 @@ module OpenAI
|
|
|
131
143
|
|
|
132
144
|
sig do
|
|
133
145
|
override.returns(
|
|
134
|
-
{code: String, type: String}
|
|
146
|
+
{code: String, message: String, type: String}
|
|
135
147
|
)
|
|
136
148
|
end
|
|
137
149
|
def to_hash
|
|
@@ -109,10 +109,10 @@ module OpenAI
|
|
|
109
109
|
delta: String,
|
|
110
110
|
event_id: String,
|
|
111
111
|
type: Symbol,
|
|
112
|
-
channels: Integer,
|
|
112
|
+
channels: T.nilable(Integer),
|
|
113
113
|
elapsed_ms: T.nilable(Integer),
|
|
114
|
-
format_: OpenAI::Realtime::RealtimeTranslationOutputAudioDeltaEvent::Format::OrSymbol,
|
|
115
|
-
sample_rate: Integer
|
|
114
|
+
format_: T.nilable(OpenAI::Realtime::RealtimeTranslationOutputAudioDeltaEvent::Format::OrSymbol),
|
|
115
|
+
sample_rate: T.nilable(Integer)
|
|
116
116
|
}
|
|
117
117
|
)
|
|
118
118
|
end
|
|
@@ -64,7 +64,11 @@ module OpenAI
|
|
|
64
64
|
|
|
65
65
|
sig do
|
|
66
66
|
override.returns(
|
|
67
|
-
{
|
|
67
|
+
{
|
|
68
|
+
session: OpenAI::Realtime::RealtimeTranslationSessionUpdateRequest,
|
|
69
|
+
type: Symbol,
|
|
70
|
+
event_id: T.nilable(String)
|
|
71
|
+
}
|
|
68
72
|
)
|
|
69
73
|
end
|
|
70
74
|
def to_hash
|
|
@@ -81,11 +81,6 @@ module OpenAI
|
|
|
81
81
|
sig { returns(T::Array[OpenAI::Responses::ResponseOutputItem::Variants]) }
|
|
82
82
|
attr_accessor :output
|
|
83
83
|
|
|
84
|
-
# Concatenates text from all output messages.
|
|
85
|
-
sig { returns(String) }
|
|
86
|
-
def output_text
|
|
87
|
-
end
|
|
88
|
-
|
|
89
84
|
# Whether to allow the model to run tool calls in parallel.
|
|
90
85
|
sig { returns(T::Boolean) }
|
|
91
86
|
attr_accessor :parallel_tool_calls
|
|
@@ -249,7 +244,7 @@ module OpenAI
|
|
|
249
244
|
|
|
250
245
|
# A stable identifier used to help detect users of your application that may be
|
|
251
246
|
# violating OpenAI's usage policies. The IDs should be a string that uniquely
|
|
252
|
-
# identifies each user, with a maximum length of
|
|
247
|
+
# identifies each user, with a maximum length of 128 characters. We recommend
|
|
253
248
|
# hashing their username or email address, in order to avoid sending us any
|
|
254
249
|
# identifying information.
|
|
255
250
|
# [Learn more](https://developers.openai.com/api/docs/guides/safety-best-practices#implement-safety-identifiers).
|
|
@@ -645,7 +640,7 @@ module OpenAI
|
|
|
645
640
|
|
|
646
641
|
# A stable identifier used to help detect users of your application that may be
|
|
647
642
|
# violating OpenAI's usage policies. The IDs should be a string that uniquely
|
|
648
|
-
# identifies each user, with a maximum length of
|
|
643
|
+
# identifies each user, with a maximum length of 128 characters. We recommend
|
|
649
644
|
# hashing their username or email address, in order to avoid sending us any
|
|
650
645
|
# identifying information.
|
|
651
646
|
# [Learn more](https://developers.openai.com/api/docs/guides/safety-best-practices#implement-safety-identifiers).
|
|
@@ -203,7 +203,7 @@ module OpenAI
|
|
|
203
203
|
|
|
204
204
|
# A stable identifier used to help detect users of your application that may be
|
|
205
205
|
# violating OpenAI's usage policies. The IDs should be a string that uniquely
|
|
206
|
-
# identifies each user, with a maximum length of
|
|
206
|
+
# identifies each user, with a maximum length of 128 characters. We recommend
|
|
207
207
|
# hashing their username or email address, in order to avoid sending us any
|
|
208
208
|
# identifying information.
|
|
209
209
|
# [Learn more](https://developers.openai.com/api/docs/guides/safety-best-practices#implement-safety-identifiers).
|
|
@@ -268,16 +268,12 @@ module OpenAI
|
|
|
268
268
|
sig { returns(T.nilable(OpenAI::Responses::ResponseTextConfig)) }
|
|
269
269
|
attr_reader :text
|
|
270
270
|
|
|
271
|
-
sig
|
|
271
|
+
sig {
|
|
272
272
|
params(
|
|
273
|
-
text: T.any(
|
|
274
|
-
OpenAI::Responses::ResponseTextConfig::OrHash,
|
|
275
|
-
OpenAI::StructuredOutput::JsonSchemaConverter
|
|
276
|
-
)
|
|
273
|
+
text: T.any(OpenAI::Responses::ResponseTextConfig::OrHash, OpenAI::StructuredOutput::JsonSchemaConverter)
|
|
277
274
|
)
|
|
278
275
|
.void
|
|
279
|
-
|
|
280
|
-
|
|
276
|
+
}
|
|
281
277
|
attr_writer :text
|
|
282
278
|
|
|
283
279
|
# How the model should select which tool (or tools) to use when generating a
|
|
@@ -667,7 +663,7 @@ module OpenAI
|
|
|
667
663
|
|
|
668
664
|
# A stable identifier used to help detect users of your application that may be
|
|
669
665
|
# violating OpenAI's usage policies. The IDs should be a string that uniquely
|
|
670
|
-
# identifies each user, with a maximum length of
|
|
666
|
+
# identifies each user, with a maximum length of 128 characters. We recommend
|
|
671
667
|
# hashing their username or email address, in order to avoid sending us any
|
|
672
668
|
# identifying information.
|
|
673
669
|
# [Learn more](https://developers.openai.com/api/docs/guides/safety-best-practices#implement-safety-identifiers).
|