openai 0.86.0 → 0.88.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 +16 -0
- data/README.md +10 -1
- data/examples/audio/record_and_play.rb +19 -0
- data/examples/responses/websocket_workflows.rb +159 -0
- data/lib/openai/helpers/local_audio/errors.rb +27 -0
- data/lib/openai/helpers/local_audio/process.rb +158 -0
- data/lib/openai/helpers/local_audio.rb +157 -0
- data/lib/openai/helpers/realtime/connection.rb +20 -2
- data/lib/openai/helpers/realtime/errors.rb +18 -0
- data/lib/openai/helpers/realtime/recovery.rb +489 -0
- data/lib/openai/helpers/realtime/resources/realtime_extension.rb +26 -1
- data/lib/openai/helpers/realtime.rb +1 -0
- data/lib/openai/models/admin/organization/admin_api_key.rb +26 -13
- data/lib/openai/models/admin/organization/admin_api_key_create_params.rb +3 -4
- data/lib/openai/models/admin/organization/admin_api_key_create_response.rb +16 -8
- data/lib/openai/models/admin/organization/admin_api_key_delete_params.rb +2 -1
- data/lib/openai/models/admin/organization/admin_api_key_list_params.rb +6 -3
- data/lib/openai/models/admin/organization/admin_api_key_retrieve_params.rb +2 -1
- data/lib/openai/models/admin/organization/audit_log_list_params.rb +47 -22
- data/lib/openai/models/admin/organization/audit_log_list_response.rb +486 -254
- data/lib/openai/models/admin/organization/certificate.rb +24 -11
- data/lib/openai/models/admin/organization/certificate_activate_response.rb +14 -7
- data/lib/openai/models/admin/organization/certificate_create_params.rb +4 -2
- data/lib/openai/models/admin/organization/certificate_deactivate_response.rb +14 -7
- data/lib/openai/models/admin/organization/certificate_delete_response.rb +4 -2
- data/lib/openai/models/admin/organization/certificate_list_params.rb +11 -6
- data/lib/openai/models/admin/organization/certificate_list_response.rb +14 -7
- data/lib/openai/models/admin/organization/certificate_retrieve_params.rb +3 -5
- data/lib/openai/models/admin/organization/certificate_update_params.rb +2 -1
- data/lib/openai/models/admin/organization/data_retention_update_params.rb +2 -1
- data/lib/openai/models/admin/organization/group.rb +11 -8
- data/lib/openai/models/admin/organization/group_create_params.rb +2 -1
- data/lib/openai/models/admin/organization/group_delete_response.rb +6 -3
- data/lib/openai/models/admin/organization/group_list_params.rb +10 -6
- data/lib/openai/models/admin/organization/group_update_params.rb +2 -1
- data/lib/openai/models/admin/organization/group_update_response.rb +9 -7
- data/lib/openai/models/admin/organization/groups/organization_group_user.rb +6 -3
- data/lib/openai/models/admin/organization/groups/role_create_params.rb +2 -1
- data/lib/openai/models/admin/organization/groups/role_create_response.rb +16 -8
- data/lib/openai/models/admin/organization/groups/role_delete_response.rb +5 -6
- data/lib/openai/models/admin/organization/groups/role_list_params.rb +7 -6
- data/lib/openai/models/admin/organization/groups/role_list_response.rb +24 -13
- data/lib/openai/models/admin/organization/groups/role_retrieve_response.rb +24 -13
- data/lib/openai/models/admin/organization/groups/user_create_params.rb +2 -1
- data/lib/openai/models/admin/organization/groups/user_create_response.rb +6 -3
- data/lib/openai/models/admin/organization/groups/user_delete_response.rb +4 -2
- data/lib/openai/models/admin/organization/groups/user_list_params.rb +8 -6
- data/lib/openai/models/admin/organization/groups/user_retrieve_response.rb +12 -6
- data/lib/openai/models/admin/organization/invite.rb +22 -12
- data/lib/openai/models/admin/organization/invite_create_params.rb +13 -8
- data/lib/openai/models/admin/organization/invite_delete_response.rb +2 -1
- data/lib/openai/models/admin/organization/invite_list_params.rb +8 -5
- data/lib/openai/models/admin/organization/organization_data_retention.rb +4 -2
- data/lib/openai/models/admin/organization/organization_spend_alert.rb +18 -9
- data/lib/openai/models/admin/organization/organization_spend_alert_deleted.rb +6 -3
- data/lib/openai/models/admin/organization/organization_spend_limit.rb +13 -9
- data/lib/openai/models/admin/organization/organization_spend_limit_deleted.rb +4 -2
- data/lib/openai/models/admin/organization/organization_user.rb +32 -16
- data/lib/openai/models/admin/organization/project.rb +16 -8
- data/lib/openai/models/admin/organization/project_create_params.rb +18 -9
- data/lib/openai/models/admin/organization/project_list_params.rb +11 -6
- data/lib/openai/models/admin/organization/project_update_params.rb +7 -6
- data/lib/openai/models/admin/organization/projects/api_key_list_params.rb +14 -7
- data/lib/openai/models/admin/organization/projects/certificate_activate_response.rb +14 -7
- data/lib/openai/models/admin/organization/projects/certificate_deactivate_response.rb +14 -7
- data/lib/openai/models/admin/organization/projects/certificate_list_params.rb +11 -7
- data/lib/openai/models/admin/organization/projects/certificate_list_response.rb +14 -7
- data/lib/openai/models/admin/organization/projects/data_retention_update_params.rb +2 -1
- data/lib/openai/models/admin/organization/projects/group_create_params.rb +4 -2
- data/lib/openai/models/admin/organization/projects/group_delete_response.rb +4 -2
- data/lib/openai/models/admin/organization/projects/group_list_params.rb +7 -7
- data/lib/openai/models/admin/organization/projects/group_retrieve_params.rb +2 -1
- data/lib/openai/models/admin/organization/projects/groups/role_create_params.rb +2 -1
- data/lib/openai/models/admin/organization/projects/groups/role_create_response.rb +16 -8
- data/lib/openai/models/admin/organization/projects/groups/role_delete_response.rb +5 -6
- data/lib/openai/models/admin/organization/projects/groups/role_list_params.rb +7 -7
- data/lib/openai/models/admin/organization/projects/groups/role_list_response.rb +24 -13
- data/lib/openai/models/admin/organization/projects/groups/role_retrieve_response.rb +24 -13
- data/lib/openai/models/admin/organization/projects/hosted_tool_permission_update_params.rb +20 -10
- data/lib/openai/models/admin/organization/projects/model_permission_update_params.rb +4 -2
- data/lib/openai/models/admin/organization/projects/project_api_key.rb +50 -20
- data/lib/openai/models/admin/organization/projects/project_data_retention.rb +4 -2
- data/lib/openai/models/admin/organization/projects/project_group.rb +12 -6
- data/lib/openai/models/admin/organization/projects/project_hosted_tool_permissions.rb +20 -10
- data/lib/openai/models/admin/organization/projects/project_model_permissions.rb +6 -3
- data/lib/openai/models/admin/organization/projects/project_model_permissions_deleted.rb +4 -2
- data/lib/openai/models/admin/organization/projects/project_rate_limit.rb +18 -9
- data/lib/openai/models/admin/organization/projects/project_service_account.rb +10 -5
- data/lib/openai/models/admin/organization/projects/project_spend_alert.rb +18 -9
- data/lib/openai/models/admin/organization/projects/project_spend_alert_deleted.rb +6 -3
- data/lib/openai/models/admin/organization/projects/project_spend_limit.rb +13 -10
- data/lib/openai/models/admin/organization/projects/project_spend_limit_deleted.rb +4 -2
- data/lib/openai/models/admin/organization/projects/project_user.rb +12 -6
- data/lib/openai/models/admin/organization/projects/rate_limit_list_rate_limits_params.rb +12 -7
- data/lib/openai/models/admin/organization/projects/rate_limit_update_rate_limit_params.rb +12 -6
- data/lib/openai/models/admin/organization/projects/role_create_params.rb +6 -3
- data/lib/openai/models/admin/organization/projects/role_delete_response.rb +6 -3
- data/lib/openai/models/admin/organization/projects/role_list_params.rb +7 -7
- data/lib/openai/models/admin/organization/projects/role_update_params.rb +6 -3
- data/lib/openai/models/admin/organization/projects/service_account_create_params.rb +22 -3
- data/lib/openai/models/admin/organization/projects/service_account_create_response.rb +17 -7
- data/lib/openai/models/admin/organization/projects/service_account_list_params.rb +8 -6
- data/lib/openai/models/admin/organization/projects/service_account_update_params.rb +4 -2
- data/lib/openai/models/admin/organization/projects/service_accounts/api_key_create_params.rb +10 -5
- data/lib/openai/models/admin/organization/projects/service_accounts/api_key_create_response.rb +13 -10
- data/lib/openai/models/admin/organization/projects/spend_alert_create_params.rb +14 -7
- data/lib/openai/models/admin/organization/projects/spend_alert_list_params.rb +10 -8
- data/lib/openai/models/admin/organization/projects/spend_alert_update_params.rb +14 -7
- data/lib/openai/models/admin/organization/projects/spend_limit_update_params.rb +7 -7
- data/lib/openai/models/admin/organization/projects/user_create_params.rb +6 -3
- data/lib/openai/models/admin/organization/projects/user_list_params.rb +8 -6
- data/lib/openai/models/admin/organization/projects/user_update_params.rb +2 -1
- data/lib/openai/models/admin/organization/projects/users/role_create_params.rb +2 -1
- data/lib/openai/models/admin/organization/projects/users/role_create_response.rb +6 -3
- data/lib/openai/models/admin/organization/projects/users/role_delete_response.rb +5 -6
- data/lib/openai/models/admin/organization/projects/users/role_list_params.rb +7 -7
- data/lib/openai/models/admin/organization/projects/users/role_list_response.rb +24 -13
- data/lib/openai/models/admin/organization/projects/users/role_retrieve_response.rb +24 -13
- data/lib/openai/models/admin/organization/role.rb +15 -10
- data/lib/openai/models/admin/organization/role_create_params.rb +6 -3
- data/lib/openai/models/admin/organization/role_delete_response.rb +6 -3
- data/lib/openai/models/admin/organization/role_list_params.rb +7 -6
- data/lib/openai/models/admin/organization/role_update_params.rb +6 -3
- data/lib/openai/models/admin/organization/spend_alert_create_params.rb +14 -7
- data/lib/openai/models/admin/organization/spend_alert_list_params.rb +10 -7
- data/lib/openai/models/admin/organization/spend_alert_update_params.rb +14 -7
- data/lib/openai/models/admin/organization/spend_limit_update_params.rb +7 -6
- data/lib/openai/models/admin/organization/usage_audio_speeches_params.rb +26 -13
- data/lib/openai/models/admin/organization/usage_audio_speeches_response.rb +205 -121
- data/lib/openai/models/admin/organization/usage_audio_transcriptions_params.rb +26 -13
- data/lib/openai/models/admin/organization/usage_audio_transcriptions_response.rb +205 -121
- data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_params.rb +20 -10
- data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_response.rb +205 -121
- data/lib/openai/models/admin/organization/usage_completions_params.rb +30 -13
- data/lib/openai/models/admin/organization/usage_completions_response.rb +205 -121
- data/lib/openai/models/admin/organization/usage_costs_params.rb +23 -12
- data/lib/openai/models/admin/organization/usage_costs_response.rb +205 -121
- data/lib/openai/models/admin/organization/usage_embeddings_params.rb +26 -12
- data/lib/openai/models/admin/organization/usage_embeddings_response.rb +205 -121
- data/lib/openai/models/admin/organization/usage_file_search_calls_params.rb +27 -13
- data/lib/openai/models/admin/organization/usage_file_search_calls_response.rb +205 -121
- data/lib/openai/models/admin/organization/usage_images_params.rb +33 -14
- data/lib/openai/models/admin/organization/usage_images_response.rb +205 -121
- data/lib/openai/models/admin/organization/usage_moderations_params.rb +26 -12
- data/lib/openai/models/admin/organization/usage_moderations_response.rb +205 -121
- data/lib/openai/models/admin/organization/usage_vector_stores_params.rb +20 -9
- data/lib/openai/models/admin/organization/usage_vector_stores_response.rb +205 -121
- data/lib/openai/models/admin/organization/usage_web_search_calls_params.rb +29 -14
- data/lib/openai/models/admin/organization/usage_web_search_calls_response.rb +205 -121
- data/lib/openai/models/admin/organization/user_list_params.rb +10 -6
- data/lib/openai/models/admin/organization/user_update_params.rb +8 -4
- data/lib/openai/models/admin/organization/users/role_create_params.rb +2 -1
- data/lib/openai/models/admin/organization/users/role_create_response.rb +6 -3
- data/lib/openai/models/admin/organization/users/role_delete_response.rb +5 -6
- data/lib/openai/models/admin/organization/users/role_list_params.rb +7 -6
- data/lib/openai/models/admin/organization/users/role_list_response.rb +24 -13
- data/lib/openai/models/admin/organization/users/role_retrieve_response.rb +24 -13
- data/lib/openai/models/audio/speech_create_params.rb +34 -16
- data/lib/openai/models/audio/transcription.rb +35 -20
- data/lib/openai/models/audio/transcription_create_params.rb +86 -24
- data/lib/openai/models/audio/transcription_diarized.rb +28 -14
- data/lib/openai/models/audio/transcription_diarized_segment.rb +14 -9
- data/lib/openai/models/audio/transcription_language.rb +2 -1
- data/lib/openai/models/audio/transcription_segment.rb +23 -13
- data/lib/openai/models/audio/transcription_stream_event.rb +4 -4
- data/lib/openai/models/audio/transcription_text_delta_event.rb +19 -16
- data/lib/openai/models/audio/transcription_text_done_event.rb +36 -24
- data/lib/openai/models/audio/transcription_text_segment_event.rb +13 -7
- data/lib/openai/models/audio/transcription_verbose.rb +16 -8
- data/lib/openai/models/audio/transcription_word.rb +6 -3
- data/lib/openai/models/audio/translation_create_params.rb +26 -8
- data/lib/openai/models/audio/translation_verbose.rb +8 -4
- data/lib/openai/models/auto_file_chunking_strategy_param.rb +2 -1
- data/lib/openai/models/batch.rb +55 -26
- data/lib/openai/models/batch_create_params.rb +40 -14
- data/lib/openai/models/batch_error.rb +8 -4
- data/lib/openai/models/batch_list_params.rb +8 -5
- data/lib/openai/models/batch_request_counts.rb +6 -3
- data/lib/openai/models/batch_usage.rb +16 -11
- data/lib/openai/models/beta/assistant.rb +99 -49
- data/lib/openai/models/beta/assistant_create_params.rb +127 -61
- data/lib/openai/models/beta/assistant_list_params.rb +16 -7
- data/lib/openai/models/beta/assistant_response_format_option.rb +5 -5
- data/lib/openai/models/beta/assistant_stream_event.rb +137 -185
- data/lib/openai/models/beta/assistant_tool_choice.rb +2 -1
- data/lib/openai/models/beta/assistant_tool_choice_function.rb +2 -1
- data/lib/openai/models/beta/assistant_update_params.rb +94 -41
- data/lib/openai/models/beta/beta_apply_patch_tool.rb +4 -3
- data/lib/openai/models/beta/beta_compacted_response.rb +12 -8
- data/lib/openai/models/beta/beta_computer_action.rb +78 -58
- data/lib/openai/models/beta/beta_computer_tool.rb +3 -2
- data/lib/openai/models/beta/beta_computer_use_preview_tool.rb +9 -5
- data/lib/openai/models/beta/beta_container_auto.rb +10 -5
- data/lib/openai/models/beta/beta_container_network_policy_allowlist.rb +6 -3
- data/lib/openai/models/beta/beta_container_network_policy_disabled.rb +2 -1
- data/lib/openai/models/beta/beta_container_network_policy_domain_secret.rb +6 -3
- data/lib/openai/models/beta/beta_container_reference.rb +4 -2
- data/lib/openai/models/beta/beta_custom_tool.rb +24 -16
- data/lib/openai/models/beta/beta_easy_input_message.rb +13 -7
- data/lib/openai/models/beta/beta_file_search_tool.rb +64 -37
- data/lib/openai/models/beta/beta_function_shell_tool.rb +4 -3
- data/lib/openai/models/beta/beta_function_tool.rb +19 -13
- data/lib/openai/models/beta/beta_inline_skill.rb +8 -4
- data/lib/openai/models/beta/beta_inline_skill_source.rb +6 -3
- data/lib/openai/models/beta/beta_local_environment.rb +4 -2
- data/lib/openai/models/beta/beta_local_skill.rb +6 -3
- data/lib/openai/models/beta/beta_namespace_tool.rb +23 -13
- data/lib/openai/models/beta/beta_response.rb +372 -165
- data/lib/openai/models/beta/beta_response_apply_patch_tool_call.rb +38 -21
- data/lib/openai/models/beta/beta_response_apply_patch_tool_call_output.rb +21 -13
- data/lib/openai/models/beta/beta_response_audio_delta_event.rb +10 -8
- data/lib/openai/models/beta/beta_response_audio_done_event.rb +8 -7
- data/lib/openai/models/beta/beta_response_audio_transcript_delta_event.rb +10 -8
- data/lib/openai/models/beta/beta_response_audio_transcript_done_event.rb +8 -7
- data/lib/openai/models/beta/beta_response_code_interpreter_call_code_delta_event.rb +15 -11
- data/lib/openai/models/beta/beta_response_code_interpreter_call_code_done_event.rb +14 -7
- data/lib/openai/models/beta/beta_response_code_interpreter_call_completed_event.rb +13 -10
- data/lib/openai/models/beta/beta_response_code_interpreter_call_in_progress_event.rb +13 -10
- data/lib/openai/models/beta/beta_response_code_interpreter_call_interpreting_event.rb +13 -10
- data/lib/openai/models/beta/beta_response_code_interpreter_tool_call.rb +26 -15
- data/lib/openai/models/beta/beta_response_compaction_item.rb +13 -7
- data/lib/openai/models/beta/beta_response_compaction_item_param.rb +11 -6
- data/lib/openai/models/beta/beta_response_completed_event.rb +10 -8
- data/lib/openai/models/beta/beta_response_computer_tool_call.rb +27 -17
- data/lib/openai/models/beta/beta_response_computer_tool_call_output_item.rb +26 -15
- data/lib/openai/models/beta/beta_response_computer_tool_call_output_screenshot.rb +7 -7
- data/lib/openai/models/beta/beta_response_configuration_update_item.rb +13 -10
- data/lib/openai/models/beta/beta_response_configuration_update_item_param.rb +13 -10
- data/lib/openai/models/beta/beta_response_container_reference.rb +2 -1
- data/lib/openai/models/beta/beta_response_content.rb +5 -3
- data/lib/openai/models/beta/beta_response_content_part_added_event.rb +20 -13
- data/lib/openai/models/beta/beta_response_content_part_done_event.rb +20 -13
- data/lib/openai/models/beta/beta_response_conversation_param.rb +2 -1
- data/lib/openai/models/beta/beta_response_created_event.rb +10 -8
- data/lib/openai/models/beta/beta_response_custom_tool_call.rb +22 -14
- data/lib/openai/models/beta/beta_response_custom_tool_call_input_delta_event.rb +14 -7
- data/lib/openai/models/beta/beta_response_custom_tool_call_input_done_event.rb +14 -7
- data/lib/openai/models/beta/beta_response_custom_tool_call_item.rb +23 -14
- data/lib/openai/models/beta/beta_response_custom_tool_call_output.rb +22 -14
- data/lib/openai/models/beta/beta_response_custom_tool_call_output_item.rb +18 -11
- data/lib/openai/models/beta/beta_response_error.rb +12 -9
- data/lib/openai/models/beta/beta_response_error_event.rb +14 -10
- data/lib/openai/models/beta/beta_response_failed_event.rb +10 -8
- data/lib/openai/models/beta/beta_response_file_search_call_completed_event.rb +12 -10
- data/lib/openai/models/beta/beta_response_file_search_call_in_progress_event.rb +12 -10
- data/lib/openai/models/beta/beta_response_file_search_call_searching_event.rb +12 -10
- data/lib/openai/models/beta/beta_response_file_search_tool_call.rb +30 -20
- data/lib/openai/models/beta/beta_response_format_text_config.rb +6 -4
- data/lib/openai/models/beta/beta_response_format_text_json_schema_config.rb +19 -10
- data/lib/openai/models/beta/beta_response_function_call_arguments_delta_event.rb +14 -11
- data/lib/openai/models/beta/beta_response_function_call_arguments_done_event.rb +12 -6
- data/lib/openai/models/beta/beta_response_function_call_output_item.rb +1 -1
- data/lib/openai/models/beta/beta_response_function_shell_call_output_content.rb +12 -6
- data/lib/openai/models/beta/beta_response_function_shell_tool_call.rb +28 -16
- data/lib/openai/models/beta/beta_response_function_shell_tool_call_output.rb +40 -27
- data/lib/openai/models/beta/beta_response_function_tool_call.rb +26 -16
- data/lib/openai/models/beta/beta_response_function_tool_call_item.rb +24 -15
- data/lib/openai/models/beta/beta_response_function_tool_call_output_item.rb +31 -18
- data/lib/openai/models/beta/beta_response_function_web_search.rb +37 -39
- data/lib/openai/models/beta/beta_response_image_gen_call_completed_event.rb +12 -6
- data/lib/openai/models/beta/beta_response_image_gen_call_generating_event.rb +12 -6
- data/lib/openai/models/beta/beta_response_image_gen_call_in_progress_event.rb +12 -6
- data/lib/openai/models/beta/beta_response_image_gen_call_partial_image_event.rb +25 -16
- data/lib/openai/models/beta/beta_response_in_progress_event.rb +10 -8
- data/lib/openai/models/beta/beta_response_incomplete_event.rb +10 -8
- data/lib/openai/models/beta/beta_response_inject_created_event.rb +9 -7
- data/lib/openai/models/beta/beta_response_inject_event.rb +6 -3
- data/lib/openai/models/beta/beta_response_inject_failed_event.rb +17 -11
- data/lib/openai/models/beta/beta_response_input_audio.rb +6 -9
- data/lib/openai/models/beta/beta_response_input_content.rb +1 -1
- data/lib/openai/models/beta/beta_response_input_file.rb +22 -11
- data/lib/openai/models/beta/beta_response_input_file_content.rb +22 -11
- data/lib/openai/models/beta/beta_response_input_image.rb +17 -10
- data/lib/openai/models/beta/beta_response_input_image_content.rb +17 -10
- data/lib/openai/models/beta/beta_response_input_item.rb +560 -291
- data/lib/openai/models/beta/beta_response_input_message_item.rb +16 -10
- data/lib/openai/models/beta/beta_response_input_text.rb +10 -7
- data/lib/openai/models/beta/beta_response_input_text_content.rb +10 -7
- data/lib/openai/models/beta/beta_response_item.rb +316 -150
- data/lib/openai/models/beta/beta_response_local_environment.rb +2 -1
- data/lib/openai/models/beta/beta_response_mcp_call_arguments_delta_event.rb +15 -10
- data/lib/openai/models/beta/beta_response_mcp_call_arguments_done_event.rb +14 -10
- data/lib/openai/models/beta/beta_response_mcp_call_completed_event.rb +12 -6
- data/lib/openai/models/beta/beta_response_mcp_call_failed_event.rb +12 -6
- data/lib/openai/models/beta/beta_response_mcp_call_in_progress_event.rb +12 -6
- data/lib/openai/models/beta/beta_response_mcp_list_tools_completed_event.rb +12 -6
- data/lib/openai/models/beta/beta_response_mcp_list_tools_failed_event.rb +12 -6
- data/lib/openai/models/beta/beta_response_mcp_list_tools_in_progress_event.rb +12 -6
- data/lib/openai/models/beta/beta_response_output_audio.rb +6 -6
- data/lib/openai/models/beta/beta_response_output_item.rb +328 -155
- data/lib/openai/models/beta/beta_response_output_item_added_event.rb +15 -9
- data/lib/openai/models/beta/beta_response_output_item_done_event.rb +12 -9
- data/lib/openai/models/beta/beta_response_output_message.rb +20 -11
- data/lib/openai/models/beta/beta_response_output_refusal.rb +4 -2
- data/lib/openai/models/beta/beta_response_output_text.rb +42 -25
- data/lib/openai/models/beta/beta_response_output_text_annotation_added_event.rb +54 -31
- data/lib/openai/models/beta/beta_response_prompt.rb +10 -8
- data/lib/openai/models/beta/beta_response_queued_event.rb +10 -5
- data/lib/openai/models/beta/beta_response_reasoning_item.rb +33 -17
- data/lib/openai/models/beta/beta_response_reasoning_summary_part_added_event.rb +20 -14
- data/lib/openai/models/beta/beta_response_reasoning_summary_part_done_event.rb +23 -15
- data/lib/openai/models/beta/beta_response_reasoning_summary_text_delta_event.rb +16 -12
- data/lib/openai/models/beta/beta_response_reasoning_summary_text_done_event.rb +16 -12
- data/lib/openai/models/beta/beta_response_reasoning_text_delta_event.rb +16 -11
- data/lib/openai/models/beta/beta_response_reasoning_text_done_event.rb +16 -11
- data/lib/openai/models/beta/beta_response_refusal_delta_event.rb +16 -11
- data/lib/openai/models/beta/beta_response_refusal_done_event.rb +16 -11
- data/lib/openai/models/beta/beta_response_shell_call_command_added_event.rb +14 -7
- data/lib/openai/models/beta/beta_response_shell_call_command_delta_event.rb +16 -8
- data/lib/openai/models/beta/beta_response_shell_call_command_done_event.rb +14 -7
- data/lib/openai/models/beta/beta_response_shell_call_output_content_delta_event.rb +20 -10
- data/lib/openai/models/beta/beta_response_shell_call_output_content_done_event.rb +31 -20
- data/lib/openai/models/beta/beta_response_steer_accepted_event.rb +13 -9
- data/lib/openai/models/beta/beta_response_steer_event.rb +14 -6
- data/lib/openai/models/beta/beta_response_steer_failed_event.rb +45 -22
- data/lib/openai/models/beta/beta_response_steer_input.rb +42 -24
- data/lib/openai/models/beta/beta_response_steer_input_content.rb +1 -1
- data/lib/openai/models/beta/beta_response_steer_pending_event.rb +24 -11
- data/lib/openai/models/beta/beta_response_text_config.rb +22 -8
- data/lib/openai/models/beta/beta_response_text_delta_event.rb +28 -22
- data/lib/openai/models/beta/beta_response_text_done_event.rb +28 -22
- data/lib/openai/models/beta/beta_response_tool_search_call.rb +18 -9
- data/lib/openai/models/beta/beta_response_tool_search_output_item.rb +18 -9
- data/lib/openai/models/beta/beta_response_tool_search_output_item_param.rb +16 -8
- data/lib/openai/models/beta/beta_response_usage.rb +18 -12
- data/lib/openai/models/beta/beta_response_web_search_call_completed_event.rb +12 -10
- data/lib/openai/models/beta/beta_response_web_search_call_in_progress_event.rb +12 -10
- data/lib/openai/models/beta/beta_response_web_search_call_searching_event.rb +12 -10
- data/lib/openai/models/beta/beta_responses_client_event.rb +401 -162
- data/lib/openai/models/beta/beta_responses_server_event.rb +862 -629
- data/lib/openai/models/beta/beta_skill_reference.rb +6 -3
- data/lib/openai/models/beta/beta_tool.rb +236 -129
- data/lib/openai/models/beta/beta_tool_choice_allowed.rb +21 -6
- data/lib/openai/models/beta/beta_tool_choice_apply_patch.rb +2 -1
- data/lib/openai/models/beta/beta_tool_choice_custom.rb +4 -2
- data/lib/openai/models/beta/beta_tool_choice_function.rb +4 -2
- data/lib/openai/models/beta/beta_tool_choice_mcp.rb +6 -6
- data/lib/openai/models/beta/beta_tool_choice_shell.rb +2 -1
- data/lib/openai/models/beta/beta_tool_choice_types.rb +16 -7
- data/lib/openai/models/beta/beta_tool_search_tool.rb +8 -4
- data/lib/openai/models/beta/beta_web_search_preview_tool.rb +21 -15
- data/lib/openai/models/beta/beta_web_search_tool.rb +31 -21
- data/lib/openai/models/beta/chatkit/chat_session.rb +20 -10
- data/lib/openai/models/beta/chatkit/chat_session_automatic_thread_titling.rb +2 -1
- data/lib/openai/models/beta/chatkit/chat_session_chatkit_configuration.rb +6 -3
- data/lib/openai/models/beta/chatkit/chat_session_chatkit_configuration_param.rb +23 -21
- data/lib/openai/models/beta/chatkit/chat_session_expires_after_param.rb +4 -2
- data/lib/openai/models/beta/chatkit/chat_session_file_upload.rb +6 -3
- data/lib/openai/models/beta/chatkit/chat_session_history.rb +5 -5
- data/lib/openai/models/beta/chatkit/chat_session_rate_limits.rb +2 -1
- data/lib/openai/models/beta/chatkit/chat_session_rate_limits_param.rb +2 -1
- data/lib/openai/models/beta/chatkit/chat_session_workflow_param.rb +12 -9
- data/lib/openai/models/beta/chatkit/chatkit_attachment.rb +10 -5
- data/lib/openai/models/beta/chatkit/chatkit_response_output_text.rb +22 -11
- data/lib/openai/models/beta/chatkit/chatkit_thread.rb +23 -14
- data/lib/openai/models/beta/chatkit/chatkit_thread_assistant_message_item.rb +12 -6
- data/lib/openai/models/beta/chatkit/chatkit_thread_item_list.rb +65 -41
- data/lib/openai/models/beta/chatkit/chatkit_thread_user_message_item.rb +29 -18
- data/lib/openai/models/beta/chatkit/chatkit_widget_item.rb +12 -6
- data/lib/openai/models/beta/chatkit/session_create_params.rb +12 -8
- data/lib/openai/models/beta/chatkit/thread_delete_response.rb +6 -3
- data/lib/openai/models/beta/chatkit/thread_list_items_params.rb +10 -7
- data/lib/openai/models/beta/chatkit/thread_list_params.rb +13 -8
- data/lib/openai/models/beta/chatkit_workflow.rb +12 -9
- data/lib/openai/models/beta/code_interpreter_tool.rb +2 -1
- data/lib/openai/models/beta/file_search_tool.rb +29 -16
- data/lib/openai/models/beta/function_tool.rb +2 -1
- data/lib/openai/models/beta/message_stream_event.rb +32 -41
- data/lib/openai/models/beta/response_compact_params.rb +89 -46
- data/lib/openai/models/beta/response_create_params.rb +382 -149
- data/lib/openai/models/beta/response_retrieve_params.rb +12 -6
- data/lib/openai/models/beta/responses/beta_response_item_list.rb +10 -5
- data/lib/openai/models/beta/responses/input_item_list_params.rb +13 -7
- data/lib/openai/models/beta/responses/input_token_count_params.rb +113 -42
- data/lib/openai/models/beta/run_step_stream_event.rb +36 -57
- data/lib/openai/models/beta/run_stream_event.rb +61 -72
- data/lib/openai/models/beta/thread.rb +32 -21
- data/lib/openai/models/beta/thread_create_and_run_params.rb +232 -123
- data/lib/openai/models/beta/thread_create_params.rb +89 -52
- data/lib/openai/models/beta/thread_stream_event.rb +7 -7
- data/lib/openai/models/beta/thread_update_params.rb +25 -19
- data/lib/openai/models/beta/threads/file_citation_annotation.rb +6 -3
- data/lib/openai/models/beta/threads/file_citation_delta_annotation.rb +10 -5
- data/lib/openai/models/beta/threads/file_path_annotation.rb +6 -3
- data/lib/openai/models/beta/threads/file_path_delta_annotation.rb +8 -4
- data/lib/openai/models/beta/threads/image_file.rb +10 -8
- data/lib/openai/models/beta/threads/image_file_content_block.rb +5 -3
- data/lib/openai/models/beta/threads/image_file_delta.rb +10 -8
- data/lib/openai/models/beta/threads/image_file_delta_block.rb +7 -4
- data/lib/openai/models/beta/threads/image_url.rb +6 -5
- data/lib/openai/models/beta/threads/image_url_content_block.rb +2 -1
- data/lib/openai/models/beta/threads/image_url_delta.rb +6 -5
- data/lib/openai/models/beta/threads/image_url_delta_block.rb +4 -2
- data/lib/openai/models/beta/threads/message.rb +52 -28
- data/lib/openai/models/beta/threads/message_content.rb +4 -3
- data/lib/openai/models/beta/threads/message_content_delta.rb +4 -3
- data/lib/openai/models/beta/threads/message_content_part_param.rb +4 -3
- data/lib/openai/models/beta/threads/message_create_params.rb +25 -12
- data/lib/openai/models/beta/threads/message_delta.rb +4 -2
- data/lib/openai/models/beta/threads/message_delta_event.rb +6 -3
- data/lib/openai/models/beta/threads/message_list_params.rb +18 -8
- data/lib/openai/models/beta/threads/message_update_params.rb +7 -4
- data/lib/openai/models/beta/threads/refusal_content_block.rb +2 -1
- data/lib/openai/models/beta/threads/refusal_delta_block.rb +4 -2
- data/lib/openai/models/beta/threads/required_action_function_tool_call.rb +15 -10
- data/lib/openai/models/beta/threads/run.rb +174 -89
- data/lib/openai/models/beta/threads/run_create_params.rb +173 -74
- data/lib/openai/models/beta/threads/run_list_params.rb +16 -7
- data/lib/openai/models/beta/threads/run_submit_tool_outputs_params.rb +7 -7
- data/lib/openai/models/beta/threads/run_update_params.rb +7 -4
- data/lib/openai/models/beta/threads/runs/code_interpreter_logs.rb +6 -3
- data/lib/openai/models/beta/threads/runs/code_interpreter_output_image.rb +9 -9
- data/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rb +24 -22
- data/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rb +15 -14
- data/lib/openai/models/beta/threads/runs/file_search_tool_call.rb +31 -25
- data/lib/openai/models/beta/threads/runs/file_search_tool_call_delta.rb +9 -7
- data/lib/openai/models/beta/threads/runs/function_tool_call.rb +15 -15
- data/lib/openai/models/beta/threads/runs/function_tool_call_delta.rb +17 -16
- data/lib/openai/models/beta/threads/runs/message_creation_step_details.rb +4 -2
- data/lib/openai/models/beta/threads/runs/run_step.rb +62 -29
- data/lib/openai/models/beta/threads/runs/run_step_delta.rb +2 -1
- data/lib/openai/models/beta/threads/runs/run_step_delta_event.rb +6 -3
- data/lib/openai/models/beta/threads/runs/run_step_delta_message_delta.rb +4 -2
- data/lib/openai/models/beta/threads/runs/step_list_params.rb +29 -13
- data/lib/openai/models/beta/threads/runs/step_retrieve_params.rb +9 -5
- data/lib/openai/models/beta/threads/runs/tool_call_delta_object.rb +6 -5
- data/lib/openai/models/beta/threads/runs/tool_calls_step_details.rb +6 -5
- data/lib/openai/models/beta/threads/text.rb +2 -1
- data/lib/openai/models/beta/threads/text_content_block.rb +2 -1
- data/lib/openai/models/beta/threads/text_content_block_param.rb +4 -2
- data/lib/openai/models/beta/threads/text_delta.rb +2 -1
- data/lib/openai/models/beta/threads/text_delta_block.rb +4 -2
- data/lib/openai/models/chat/chat_completion.rb +143 -75
- data/lib/openai/models/chat/chat_completion_allowed_tool_choice.rb +4 -5
- data/lib/openai/models/chat/chat_completion_allowed_tools.rb +18 -5
- data/lib/openai/models/chat/chat_completion_assistant_message_param.rb +31 -26
- data/lib/openai/models/chat/chat_completion_audio.rb +11 -8
- data/lib/openai/models/chat/chat_completion_audio_param.rb +11 -7
- data/lib/openai/models/chat/chat_completion_chunk.rb +174 -97
- data/lib/openai/models/chat/chat_completion_content_part.rb +22 -20
- data/lib/openai/models/chat/chat_completion_content_part_image.rb +17 -15
- data/lib/openai/models/chat/chat_completion_content_part_input_audio.rb +13 -13
- data/lib/openai/models/chat/chat_completion_content_part_refusal.rb +4 -2
- data/lib/openai/models/chat/chat_completion_content_part_text.rb +11 -9
- data/lib/openai/models/chat/chat_completion_custom_tool.rb +20 -16
- data/lib/openai/models/chat/chat_completion_deleted.rb +6 -3
- data/lib/openai/models/chat/chat_completion_developer_message_param.rb +7 -6
- data/lib/openai/models/chat/chat_completion_function_call_option.rb +2 -1
- data/lib/openai/models/chat/chat_completion_function_message_param.rb +6 -3
- data/lib/openai/models/chat/chat_completion_function_tool.rb +2 -1
- data/lib/openai/models/chat/chat_completion_message.rb +39 -24
- data/lib/openai/models/chat/chat_completion_message_custom_tool_call.rb +10 -5
- data/lib/openai/models/chat/chat_completion_message_function_tool_call.rb +13 -9
- data/lib/openai/models/chat/chat_completion_named_tool_choice.rb +4 -2
- data/lib/openai/models/chat/chat_completion_named_tool_choice_custom.rb +4 -2
- data/lib/openai/models/chat/chat_completion_prediction_content.rb +8 -6
- data/lib/openai/models/chat/chat_completion_store_message.rb +26 -16
- data/lib/openai/models/chat/chat_completion_stream_options.rb +15 -5
- data/lib/openai/models/chat/chat_completion_system_message_param.rb +7 -6
- data/lib/openai/models/chat/chat_completion_token_logprob.rb +25 -14
- data/lib/openai/models/chat/chat_completion_tool_message_param.rb +6 -3
- data/lib/openai/models/chat/chat_completion_user_message_param.rb +8 -7
- data/lib/openai/models/chat/completion_create_params.rb +388 -161
- data/lib/openai/models/chat/completion_list_params.rb +12 -7
- data/lib/openai/models/chat/completion_update_params.rb +7 -4
- data/lib/openai/models/chat/completions/message_list_params.rb +7 -6
- data/lib/openai/models/comparison_filter.rb +17 -6
- data/lib/openai/models/completion.rb +17 -10
- data/lib/openai/models/completion_choice.rb +5 -4
- data/lib/openai/models/completion_create_params.rb +124 -37
- data/lib/openai/models/completion_usage.rb +34 -18
- data/lib/openai/models/compound_filter.rb +5 -5
- data/lib/openai/models/container_create_params.rb +15 -10
- data/lib/openai/models/container_create_response.rb +28 -16
- data/lib/openai/models/container_list_params.rb +13 -7
- data/lib/openai/models/container_list_response.rb +28 -16
- data/lib/openai/models/container_retrieve_response.rb +28 -16
- data/lib/openai/models/containers/file_create_params.rb +8 -5
- data/lib/openai/models/containers/file_create_response.rb +14 -7
- data/lib/openai/models/containers/file_list_params.rb +11 -6
- data/lib/openai/models/containers/file_list_response.rb +14 -7
- data/lib/openai/models/containers/file_retrieve_response.rb +14 -7
- data/lib/openai/models/content_provenance_check.rb +44 -25
- data/lib/openai/models/content_provenance_check_create_params.rb +6 -1
- data/lib/openai/models/conversations/computer_screenshot_content.rb +16 -9
- data/lib/openai/models/conversations/conversation.rb +16 -10
- data/lib/openai/models/conversations/conversation_create_params.rb +9 -4
- data/lib/openai/models/conversations/conversation_item.rb +216 -100
- data/lib/openai/models/conversations/conversation_item_list.rb +10 -5
- data/lib/openai/models/conversations/conversation_update_params.rb +7 -4
- data/lib/openai/models/conversations/item_create_params.rb +7 -6
- data/lib/openai/models/conversations/item_list_params.rb +29 -7
- data/lib/openai/models/conversations/item_retrieve_params.rb +5 -5
- data/lib/openai/models/conversations/message.rb +22 -12
- data/lib/openai/models/conversations/summary_text_content.rb +4 -2
- data/lib/openai/models/create_embedding_response.rb +12 -6
- data/lib/openai/models/custom_tool_input_format.rb +8 -4
- data/lib/openai/models/embedding.rb +9 -7
- data/lib/openai/models/embedding_create_params.rb +36 -18
- data/lib/openai/models/error_object.rb +8 -4
- data/lib/openai/models/eval_create_params.rb +105 -74
- data/lib/openai/models/eval_create_response.rb +69 -42
- data/lib/openai/models/eval_custom_data_source_config.rb +5 -5
- data/lib/openai/models/eval_list_params.rb +10 -7
- data/lib/openai/models/eval_list_response.rb +69 -42
- data/lib/openai/models/eval_retrieve_response.rb +69 -42
- data/lib/openai/models/eval_stored_completions_data_source_config.rb +12 -6
- data/lib/openai/models/eval_update_params.rb +9 -5
- data/lib/openai/models/eval_update_response.rb +69 -42
- data/lib/openai/models/evals/create_eval_completions_run_data_source.rb +97 -64
- data/lib/openai/models/evals/create_eval_jsonl_run_data_source.rb +12 -7
- data/lib/openai/models/evals/eval_api_error.rb +4 -2
- data/lib/openai/models/evals/run_cancel_response.rb +204 -114
- data/lib/openai/models/evals/run_create_params.rb +156 -90
- data/lib/openai/models/evals/run_create_response.rb +204 -114
- data/lib/openai/models/evals/run_list_params.rb +10 -7
- data/lib/openai/models/evals/run_list_response.rb +204 -114
- data/lib/openai/models/evals/run_retrieve_response.rb +204 -114
- data/lib/openai/models/evals/runs/output_item_list_params.rb +10 -7
- data/lib/openai/models/evals/runs/output_item_list_response.rb +66 -38
- data/lib/openai/models/evals/runs/output_item_retrieve_response.rb +66 -39
- data/lib/openai/models/file_create_params.rb +23 -10
- data/lib/openai/models/file_list_params.rb +13 -7
- data/lib/openai/models/file_object.rb +22 -12
- data/lib/openai/models/fine_tuning/alpha/grader_run_params.rb +18 -10
- data/lib/openai/models/fine_tuning/alpha/grader_validate_params.rb +2 -1
- data/lib/openai/models/fine_tuning/alpha/grader_validate_response.rb +2 -1
- data/lib/openai/models/fine_tuning/checkpoints/permission_create_params.rb +2 -1
- data/lib/openai/models/fine_tuning/checkpoints/permission_create_response.rb +8 -4
- data/lib/openai/models/fine_tuning/checkpoints/permission_delete_response.rb +6 -3
- data/lib/openai/models/fine_tuning/checkpoints/permission_list_params.rb +8 -4
- data/lib/openai/models/fine_tuning/checkpoints/permission_list_response.rb +8 -4
- data/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rb +8 -4
- data/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rb +8 -4
- data/lib/openai/models/fine_tuning/dpo_hyperparameters.rb +12 -7
- data/lib/openai/models/fine_tuning/dpo_method.rb +2 -1
- data/lib/openai/models/fine_tuning/fine_tuning_job.rb +82 -41
- data/lib/openai/models/fine_tuning/fine_tuning_job_event.rb +14 -7
- data/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rb +13 -7
- data/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rb +7 -6
- data/lib/openai/models/fine_tuning/job_create_params.rb +107 -42
- data/lib/openai/models/fine_tuning/job_list_events_params.rb +4 -2
- data/lib/openai/models/fine_tuning/job_list_params.rb +7 -6
- data/lib/openai/models/fine_tuning/jobs/checkpoint_list_params.rb +4 -2
- data/lib/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rb +14 -7
- data/lib/openai/models/fine_tuning/reinforcement_hyperparameters.rb +17 -10
- data/lib/openai/models/fine_tuning/reinforcement_method.rb +4 -2
- data/lib/openai/models/fine_tuning/supervised_hyperparameters.rb +9 -6
- data/lib/openai/models/fine_tuning/supervised_method.rb +2 -1
- data/lib/openai/models/function_definition.rb +22 -9
- data/lib/openai/models/graders/grader_input_item.rb +11 -11
- data/lib/openai/models/graders/label_model_grader.rb +29 -25
- data/lib/openai/models/graders/multi_grader.rb +9 -7
- data/lib/openai/models/graders/python_grader.rb +8 -4
- data/lib/openai/models/graders/score_model_grader.rb +48 -38
- data/lib/openai/models/graders/string_check_grader.rb +10 -5
- data/lib/openai/models/graders/text_similarity_grader.rb +11 -8
- data/lib/openai/models/image.rb +10 -6
- data/lib/openai/models/image_create_variation_params.rb +23 -9
- data/lib/openai/models/image_edit_completed_event.rb +62 -27
- data/lib/openai/models/image_edit_params.rb +169 -72
- data/lib/openai/models/image_edit_partial_image_event.rb +49 -18
- data/lib/openai/models/image_gen_completed_event.rb +62 -27
- data/lib/openai/models/image_gen_partial_image_event.rb +49 -18
- data/lib/openai/models/image_generate_params.rb +141 -62
- data/lib/openai/models/image_input_reference_param.rb +2 -1
- data/lib/openai/models/image_model.rb +4 -0
- data/lib/openai/models/images_response.rb +69 -30
- data/lib/openai/models/model.rb +10 -5
- data/lib/openai/models/moderation.rb +115 -62
- data/lib/openai/models/moderation_create_params.rb +16 -13
- data/lib/openai/models/moderation_create_response.rb +6 -3
- data/lib/openai/models/moderation_image_url_input.rb +6 -3
- data/lib/openai/models/moderation_text_input.rb +4 -2
- data/lib/openai/models/other_file_chunking_strategy_object.rb +2 -1
- data/lib/openai/models/realtime/audio_transcription.rb +29 -10
- data/lib/openai/models/realtime/call_accept_params.rb +85 -30
- data/lib/openai/models/realtime/call_create_params.rb +4 -2
- data/lib/openai/models/realtime/call_refer_params.rb +3 -4
- data/lib/openai/models/realtime/call_reject_params.rb +3 -4
- data/lib/openai/models/realtime/client_secret_create_params.rb +16 -11
- data/lib/openai/models/realtime/client_secret_create_response.rb +6 -6
- data/lib/openai/models/realtime/conversation_created_event.rb +10 -5
- data/lib/openai/models/realtime/conversation_item_added.rb +9 -7
- data/lib/openai/models/realtime/conversation_item_create_event.rb +16 -7
- data/lib/openai/models/realtime/conversation_item_created_event.rb +10 -7
- data/lib/openai/models/realtime/conversation_item_delete_event.rb +6 -3
- data/lib/openai/models/realtime/conversation_item_deleted_event.rb +6 -3
- data/lib/openai/models/realtime/conversation_item_done.rb +9 -7
- data/lib/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rb +36 -21
- data/lib/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rb +17 -10
- data/lib/openai/models/realtime/conversation_item_input_audio_transcription_failed_event.rb +18 -13
- data/lib/openai/models/realtime/conversation_item_input_audio_transcription_segment.rb +18 -9
- data/lib/openai/models/realtime/conversation_item_retrieve_event.rb +6 -3
- data/lib/openai/models/realtime/conversation_item_truncate_event.rb +13 -8
- data/lib/openai/models/realtime/conversation_item_truncated_event.rb +10 -8
- data/lib/openai/models/realtime/conversation_item_with_reference.rb +47 -24
- data/lib/openai/models/realtime/input_audio_buffer_append_event.rb +7 -6
- data/lib/openai/models/realtime/input_audio_buffer_clear_event.rb +4 -2
- data/lib/openai/models/realtime/input_audio_buffer_cleared_event.rb +4 -2
- data/lib/openai/models/realtime/input_audio_buffer_commit_event.rb +4 -2
- data/lib/openai/models/realtime/input_audio_buffer_committed_event.rb +9 -7
- data/lib/openai/models/realtime/input_audio_buffer_dtmf_event_received_event.rb +6 -7
- data/lib/openai/models/realtime/input_audio_buffer_speech_started_event.rb +11 -7
- data/lib/openai/models/realtime/input_audio_buffer_speech_stopped_event.rb +10 -7
- data/lib/openai/models/realtime/input_audio_buffer_timeout_triggered.rb +12 -8
- data/lib/openai/models/realtime/log_prob_properties.rb +6 -6
- data/lib/openai/models/realtime/mcp_list_tools_completed.rb +6 -3
- data/lib/openai/models/realtime/mcp_list_tools_failed.rb +6 -3
- data/lib/openai/models/realtime/mcp_list_tools_in_progress.rb +6 -3
- data/lib/openai/models/realtime/output_audio_buffer_clear_event.rb +5 -3
- data/lib/openai/models/realtime/rate_limits_updated_event.rb +14 -11
- data/lib/openai/models/realtime/realtime_audio_config_input.rb +38 -12
- data/lib/openai/models/realtime/realtime_audio_config_output.rb +18 -6
- data/lib/openai/models/realtime/realtime_audio_formats.rb +8 -4
- data/lib/openai/models/realtime/realtime_audio_input_turn_detection.rb +61 -25
- data/lib/openai/models/realtime/realtime_client_event.rb +1 -1
- data/lib/openai/models/realtime/realtime_conversation_item_assistant_message.rb +26 -19
- data/lib/openai/models/realtime/realtime_conversation_item_function_call.rb +18 -11
- data/lib/openai/models/realtime/realtime_conversation_item_function_call_output.rb +15 -10
- data/lib/openai/models/realtime/realtime_conversation_item_system_message.rb +18 -13
- data/lib/openai/models/realtime/realtime_conversation_item_user_message.rb +32 -21
- data/lib/openai/models/realtime/realtime_error.rb +10 -8
- data/lib/openai/models/realtime/realtime_error_event.rb +6 -3
- data/lib/openai/models/realtime/realtime_function_tool.rb +9 -7
- data/lib/openai/models/realtime/realtime_mcp_approval_request.rb +10 -5
- data/lib/openai/models/realtime/realtime_mcp_approval_response.rb +10 -5
- data/lib/openai/models/realtime/realtime_mcp_list_tools.rb +16 -12
- data/lib/openai/models/realtime/realtime_mcp_tool_call.rb +16 -8
- data/lib/openai/models/realtime/realtime_reasoning.rb +3 -4
- data/lib/openai/models/realtime/realtime_response.rb +47 -19
- data/lib/openai/models/realtime/realtime_response_create_audio_output.rb +11 -7
- data/lib/openai/models/realtime/realtime_response_create_mcp_tool.rb +71 -43
- data/lib/openai/models/realtime/realtime_response_create_params.rb +56 -18
- data/lib/openai/models/realtime/realtime_response_status.rb +16 -8
- data/lib/openai/models/realtime/realtime_response_usage.rb +16 -8
- data/lib/openai/models/realtime/realtime_response_usage_input_token_details.rb +16 -8
- data/lib/openai/models/realtime/realtime_response_usage_output_token_details.rb +4 -2
- data/lib/openai/models/realtime/realtime_server_event.rb +30 -18
- data/lib/openai/models/realtime/realtime_session.rb +191 -82
- data/lib/openai/models/realtime/realtime_session_create_request.rb +86 -32
- data/lib/openai/models/realtime/realtime_session_create_response.rb +256 -110
- data/lib/openai/models/realtime/realtime_tools_config_union.rb +73 -45
- data/lib/openai/models/realtime/realtime_tracing_config.rb +9 -7
- data/lib/openai/models/realtime/realtime_transcription_session_audio_input.rb +38 -13
- data/lib/openai/models/realtime/realtime_transcription_session_audio_input_turn_detection.rb +61 -25
- data/lib/openai/models/realtime/realtime_transcription_session_create_request.rb +10 -8
- data/lib/openai/models/realtime/realtime_transcription_session_create_response.rb +28 -22
- data/lib/openai/models/realtime/realtime_transcription_session_turn_detection.rb +13 -8
- data/lib/openai/models/realtime/realtime_translation_client_secret_create_request.rb +16 -12
- data/lib/openai/models/realtime/realtime_translation_client_secret_create_response.rb +7 -7
- data/lib/openai/models/realtime/realtime_translation_input_audio_buffer_append_event.rb +6 -3
- data/lib/openai/models/realtime/realtime_translation_input_transcript_delta_event.rb +11 -8
- data/lib/openai/models/realtime/realtime_translation_output_audio_delta_event.rb +16 -11
- data/lib/openai/models/realtime/realtime_translation_output_transcript_delta_event.rb +11 -8
- data/lib/openai/models/realtime/realtime_translation_session.rb +25 -25
- data/lib/openai/models/realtime/realtime_translation_session_close_event.rb +4 -2
- data/lib/openai/models/realtime/realtime_translation_session_closed_event.rb +4 -2
- data/lib/openai/models/realtime/realtime_translation_session_create_request.rb +18 -23
- data/lib/openai/models/realtime/realtime_translation_session_created_event.rb +6 -3
- data/lib/openai/models/realtime/realtime_translation_session_update_event.rb +7 -7
- data/lib/openai/models/realtime/realtime_translation_session_update_request.rb +16 -22
- data/lib/openai/models/realtime/realtime_translation_session_updated_event.rb +6 -3
- data/lib/openai/models/realtime/realtime_truncation_retention_ratio.rb +16 -11
- data/lib/openai/models/realtime/response_audio_delta_event.rb +14 -7
- data/lib/openai/models/realtime/response_audio_done_event.rb +12 -6
- data/lib/openai/models/realtime/response_audio_transcript_delta_event.rb +14 -7
- data/lib/openai/models/realtime/response_audio_transcript_done_event.rb +14 -7
- data/lib/openai/models/realtime/response_cancel_event.rb +7 -6
- data/lib/openai/models/realtime/response_content_part_added_event.rb +22 -11
- data/lib/openai/models/realtime/response_content_part_done_event.rb +22 -11
- data/lib/openai/models/realtime/response_create_event.rb +6 -3
- data/lib/openai/models/realtime/response_created_event.rb +6 -3
- data/lib/openai/models/realtime/response_done_event.rb +6 -3
- data/lib/openai/models/realtime/response_function_call_arguments_delta_event.rb +14 -11
- data/lib/openai/models/realtime/response_function_call_arguments_done_event.rb +16 -12
- data/lib/openai/models/realtime/response_mcp_call_arguments_delta.rb +14 -7
- data/lib/openai/models/realtime/response_mcp_call_arguments_done.rb +12 -6
- data/lib/openai/models/realtime/response_mcp_call_completed.rb +8 -4
- data/lib/openai/models/realtime/response_mcp_call_failed.rb +8 -4
- data/lib/openai/models/realtime/response_mcp_call_in_progress.rb +8 -4
- data/lib/openai/models/realtime/response_output_item_added_event.rb +10 -5
- data/lib/openai/models/realtime/response_output_item_done_event.rb +10 -5
- data/lib/openai/models/realtime/response_text_delta_event.rb +14 -7
- data/lib/openai/models/realtime/response_text_done_event.rb +14 -7
- data/lib/openai/models/realtime/session_created_event.rb +6 -3
- data/lib/openai/models/realtime/session_update_event.rb +10 -6
- data/lib/openai/models/realtime/session_updated_event.rb +6 -3
- data/lib/openai/models/realtime/transcription_session_update.rb +45 -26
- data/lib/openai/models/realtime/transcription_session_updated_event.rb +42 -28
- data/lib/openai/models/reasoning.rb +33 -10
- data/lib/openai/models/reasoning_effort.rb +1 -1
- data/lib/openai/models/response_format_json_object.rb +2 -1
- data/lib/openai/models/response_format_json_schema.rb +21 -14
- data/lib/openai/models/response_format_text.rb +2 -1
- data/lib/openai/models/response_format_text_grammar.rb +5 -3
- data/lib/openai/models/response_format_text_python.rb +3 -2
- data/lib/openai/models/responses/apply_patch_tool.rb +4 -3
- data/lib/openai/models/responses/compacted_response.rb +12 -8
- data/lib/openai/models/responses/computer_action.rb +78 -58
- data/lib/openai/models/responses/computer_tool.rb +3 -2
- data/lib/openai/models/responses/computer_use_preview_tool.rb +9 -5
- data/lib/openai/models/responses/container_auto.rb +10 -5
- data/lib/openai/models/responses/container_network_policy_allowlist.rb +6 -3
- data/lib/openai/models/responses/container_network_policy_disabled.rb +2 -1
- data/lib/openai/models/responses/container_network_policy_domain_secret.rb +6 -3
- data/lib/openai/models/responses/container_reference.rb +4 -2
- data/lib/openai/models/responses/custom_tool.rb +16 -12
- data/lib/openai/models/responses/easy_input_message.rb +13 -7
- data/lib/openai/models/responses/file_search_tool.rb +25 -17
- data/lib/openai/models/responses/function_shell_tool.rb +4 -3
- data/lib/openai/models/responses/function_tool.rb +19 -13
- data/lib/openai/models/responses/inline_skill.rb +8 -4
- data/lib/openai/models/responses/inline_skill_source.rb +6 -3
- data/lib/openai/models/responses/input_item_list_params.rb +13 -7
- data/lib/openai/models/responses/input_token_count_params.rb +79 -30
- data/lib/openai/models/responses/local_environment.rb +4 -2
- data/lib/openai/models/responses/local_skill.rb +6 -3
- data/lib/openai/models/responses/namespace_tool.rb +23 -13
- data/lib/openai/models/responses/response.rb +336 -152
- data/lib/openai/models/responses/response_apply_patch_tool_call.rb +34 -19
- data/lib/openai/models/responses/response_apply_patch_tool_call_output.rb +17 -11
- data/lib/openai/models/responses/response_audio_delta_event.rb +6 -6
- data/lib/openai/models/responses/response_audio_done_event.rb +4 -5
- data/lib/openai/models/responses/response_audio_transcript_delta_event.rb +6 -6
- data/lib/openai/models/responses/response_audio_transcript_done_event.rb +4 -5
- data/lib/openai/models/responses/response_code_interpreter_call_code_delta_event.rb +11 -9
- data/lib/openai/models/responses/response_code_interpreter_call_code_done_event.rb +10 -5
- data/lib/openai/models/responses/response_code_interpreter_call_completed_event.rb +9 -8
- data/lib/openai/models/responses/response_code_interpreter_call_in_progress_event.rb +9 -8
- data/lib/openai/models/responses/response_code_interpreter_call_interpreting_event.rb +9 -8
- data/lib/openai/models/responses/response_code_interpreter_tool_call.rb +22 -13
- data/lib/openai/models/responses/response_compact_params.rb +89 -46
- data/lib/openai/models/responses/response_compaction_item.rb +9 -5
- data/lib/openai/models/responses/response_compaction_item_param.rb +7 -4
- data/lib/openai/models/responses/response_completed_event.rb +6 -6
- data/lib/openai/models/responses/response_computer_tool_call.rb +101 -82
- data/lib/openai/models/responses/response_computer_tool_call_output_item.rb +22 -14
- data/lib/openai/models/responses/response_computer_tool_call_output_screenshot.rb +7 -7
- data/lib/openai/models/responses/response_configuration_update_item.rb +9 -8
- data/lib/openai/models/responses/response_configuration_update_item_param.rb +9 -8
- data/lib/openai/models/responses/response_container_reference.rb +2 -1
- data/lib/openai/models/responses/response_content.rb +5 -3
- data/lib/openai/models/responses/response_content_part_added_event.rb +16 -11
- data/lib/openai/models/responses/response_content_part_done_event.rb +16 -11
- data/lib/openai/models/responses/response_conversation_param.rb +2 -1
- data/lib/openai/models/responses/response_create_params.rb +334 -130
- data/lib/openai/models/responses/response_created_event.rb +6 -6
- data/lib/openai/models/responses/response_custom_tool_call.rb +18 -12
- data/lib/openai/models/responses/response_custom_tool_call_input_delta_event.rb +10 -5
- data/lib/openai/models/responses/response_custom_tool_call_input_done_event.rb +10 -5
- data/lib/openai/models/responses/response_custom_tool_call_item.rb +21 -13
- data/lib/openai/models/responses/response_custom_tool_call_output.rb +18 -12
- data/lib/openai/models/responses/response_custom_tool_call_output_item.rb +16 -10
- data/lib/openai/models/responses/response_error.rb +12 -9
- data/lib/openai/models/responses/response_error_event.rb +10 -8
- data/lib/openai/models/responses/response_failed_event.rb +6 -6
- data/lib/openai/models/responses/response_file_search_call_completed_event.rb +8 -8
- data/lib/openai/models/responses/response_file_search_call_in_progress_event.rb +8 -8
- data/lib/openai/models/responses/response_file_search_call_searching_event.rb +8 -8
- data/lib/openai/models/responses/response_file_search_tool_call.rb +26 -19
- data/lib/openai/models/responses/response_format_text_config.rb +2 -2
- data/lib/openai/models/responses/response_format_text_json_schema_config.rb +19 -11
- data/lib/openai/models/responses/response_function_call_arguments_delta_event.rb +10 -9
- data/lib/openai/models/responses/response_function_call_arguments_done_event.rb +8 -4
- data/lib/openai/models/responses/response_function_call_output_item.rb +1 -1
- data/lib/openai/models/responses/response_function_shell_call_output_content.rb +12 -6
- data/lib/openai/models/responses/response_function_shell_tool_call.rb +24 -14
- data/lib/openai/models/responses/response_function_shell_tool_call_output.rb +36 -25
- data/lib/openai/models/responses/response_function_tool_call.rb +22 -14
- data/lib/openai/models/responses/response_function_tool_call_item.rb +22 -14
- data/lib/openai/models/responses/response_function_tool_call_output_item.rb +27 -17
- data/lib/openai/models/responses/response_function_web_search.rb +33 -37
- data/lib/openai/models/responses/response_image_gen_call_completed_event.rb +8 -4
- data/lib/openai/models/responses/response_image_gen_call_generating_event.rb +8 -4
- data/lib/openai/models/responses/response_image_gen_call_in_progress_event.rb +8 -4
- data/lib/openai/models/responses/response_image_gen_call_partial_image_event.rb +21 -14
- data/lib/openai/models/responses/response_in_progress_event.rb +6 -6
- data/lib/openai/models/responses/response_incomplete_event.rb +6 -6
- data/lib/openai/models/responses/response_input_audio.rb +6 -9
- data/lib/openai/models/responses/response_input_content.rb +1 -1
- data/lib/openai/models/responses/response_input_file.rb +22 -11
- data/lib/openai/models/responses/response_input_file_content.rb +22 -11
- data/lib/openai/models/responses/response_input_image.rb +17 -10
- data/lib/openai/models/responses/response_input_image_content.rb +17 -10
- data/lib/openai/models/responses/response_input_item.rb +397 -209
- data/lib/openai/models/responses/response_input_message_item.rb +12 -8
- data/lib/openai/models/responses/response_input_text.rb +10 -7
- data/lib/openai/models/responses/response_input_text_content.rb +10 -7
- data/lib/openai/models/responses/response_item.rb +205 -93
- data/lib/openai/models/responses/response_item_list.rb +10 -5
- data/lib/openai/models/responses/response_local_environment.rb +2 -1
- data/lib/openai/models/responses/response_mcp_call_arguments_delta_event.rb +11 -9
- data/lib/openai/models/responses/response_mcp_call_arguments_done_event.rb +10 -8
- data/lib/openai/models/responses/response_mcp_call_completed_event.rb +8 -4
- data/lib/openai/models/responses/response_mcp_call_failed_event.rb +8 -4
- data/lib/openai/models/responses/response_mcp_call_in_progress_event.rb +8 -4
- data/lib/openai/models/responses/response_mcp_list_tools_completed_event.rb +8 -4
- data/lib/openai/models/responses/response_mcp_list_tools_failed_event.rb +8 -4
- data/lib/openai/models/responses/response_mcp_list_tools_in_progress_event.rb +8 -4
- data/lib/openai/models/responses/response_output_audio.rb +6 -6
- data/lib/openai/models/responses/response_output_item.rb +217 -98
- data/lib/openai/models/responses/response_output_item_added_event.rb +11 -7
- data/lib/openai/models/responses/response_output_item_done_event.rb +8 -7
- data/lib/openai/models/responses/response_output_message.rb +16 -9
- data/lib/openai/models/responses/response_output_refusal.rb +4 -2
- data/lib/openai/models/responses/response_output_text.rb +42 -25
- data/lib/openai/models/responses/response_output_text_annotation_added_event.rb +50 -29
- data/lib/openai/models/responses/response_prompt.rb +10 -8
- data/lib/openai/models/responses/response_queued_event.rb +6 -3
- data/lib/openai/models/responses/response_reasoning_item.rb +29 -15
- data/lib/openai/models/responses/response_reasoning_summary_part_added_event.rb +16 -12
- data/lib/openai/models/responses/response_reasoning_summary_part_done_event.rb +19 -13
- data/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rb +12 -10
- data/lib/openai/models/responses/response_reasoning_summary_text_done_event.rb +12 -10
- data/lib/openai/models/responses/response_reasoning_text_delta_event.rb +12 -9
- data/lib/openai/models/responses/response_reasoning_text_done_event.rb +12 -9
- data/lib/openai/models/responses/response_refusal_delta_event.rb +12 -9
- data/lib/openai/models/responses/response_refusal_done_event.rb +12 -9
- data/lib/openai/models/responses/response_retrieve_params.rb +12 -6
- data/lib/openai/models/responses/response_shell_call_command_added_event.rb +10 -5
- data/lib/openai/models/responses/response_shell_call_command_delta_event.rb +12 -6
- data/lib/openai/models/responses/response_shell_call_command_done_event.rb +10 -5
- data/lib/openai/models/responses/response_shell_call_output_content_delta_event.rb +16 -8
- data/lib/openai/models/responses/response_shell_call_output_content_done_event.rb +27 -18
- data/lib/openai/models/responses/response_steer_accepted_event.rb +13 -9
- data/lib/openai/models/responses/response_steer_event.rb +14 -6
- data/lib/openai/models/responses/response_steer_failed_event.rb +45 -22
- data/lib/openai/models/responses/response_steer_input.rb +34 -20
- data/lib/openai/models/responses/response_steer_input_content.rb +1 -1
- data/lib/openai/models/responses/response_steer_pending_event.rb +24 -11
- data/lib/openai/models/responses/response_text_config.rb +22 -8
- data/lib/openai/models/responses/response_text_delta_event.rb +24 -20
- data/lib/openai/models/responses/response_text_done_event.rb +24 -20
- data/lib/openai/models/responses/response_tool_search_call.rb +14 -7
- data/lib/openai/models/responses/response_tool_search_output_item.rb +14 -7
- data/lib/openai/models/responses/response_tool_search_output_item_param.rb +12 -6
- data/lib/openai/models/responses/response_usage.rb +18 -12
- data/lib/openai/models/responses/response_web_search_call_completed_event.rb +8 -8
- data/lib/openai/models/responses/response_web_search_call_in_progress_event.rb +8 -8
- data/lib/openai/models/responses/response_web_search_call_searching_event.rb +8 -8
- data/lib/openai/models/responses/responses_client_event.rb +353 -140
- data/lib/openai/models/responses/responses_server_event.rb +744 -570
- data/lib/openai/models/responses/skill_reference.rb +6 -3
- data/lib/openai/models/responses/tool.rb +236 -129
- data/lib/openai/models/responses/tool_choice_allowed.rb +21 -6
- data/lib/openai/models/responses/tool_choice_apply_patch.rb +2 -1
- data/lib/openai/models/responses/tool_choice_custom.rb +4 -2
- data/lib/openai/models/responses/tool_choice_function.rb +4 -2
- data/lib/openai/models/responses/tool_choice_mcp.rb +6 -6
- data/lib/openai/models/responses/tool_choice_shell.rb +2 -1
- data/lib/openai/models/responses/tool_choice_types.rb +16 -7
- data/lib/openai/models/responses/tool_search_tool.rb +8 -4
- data/lib/openai/models/responses/web_search_preview_tool.rb +21 -16
- data/lib/openai/models/responses/web_search_tool.rb +31 -21
- data/lib/openai/models/safety/alert_retrieve_params.rb +2 -1
- data/lib/openai/models/safety/safety_alert.rb +6 -5
- data/lib/openai/models/skill.rb +14 -7
- data/lib/openai/models/skill_create_params.rb +6 -1
- data/lib/openai/models/skill_list.rb +10 -5
- data/lib/openai/models/skill_list_params.rb +7 -6
- data/lib/openai/models/skill_update_params.rb +2 -1
- data/lib/openai/models/skills/deleted_skill_version.rb +2 -1
- data/lib/openai/models/skills/skill_version.rb +14 -7
- data/lib/openai/models/skills/skill_version_list.rb +10 -5
- data/lib/openai/models/skills/version_create_params.rb +8 -2
- data/lib/openai/models/skills/version_delete_params.rb +2 -1
- data/lib/openai/models/skills/version_list_params.rb +6 -3
- data/lib/openai/models/skills/version_retrieve_params.rb +2 -1
- data/lib/openai/models/skills/versions/content_retrieve_params.rb +2 -1
- data/lib/openai/models/static_file_chunking_strategy.rb +6 -4
- data/lib/openai/models/static_file_chunking_strategy_object.rb +2 -1
- data/lib/openai/models/static_file_chunking_strategy_object_param.rb +2 -1
- data/lib/openai/models/upload.rb +21 -13
- data/lib/openai/models/upload_complete_params.rb +5 -5
- data/lib/openai/models/upload_create_params.rb +23 -13
- data/lib/openai/models/uploads/part_create_params.rb +6 -4
- data/lib/openai/models/uploads/upload_part.rb +8 -4
- data/lib/openai/models/vector_store.rb +42 -23
- data/lib/openai/models/vector_store_create_params.rb +28 -16
- data/lib/openai/models/vector_store_list_params.rb +16 -7
- data/lib/openai/models/vector_store_search_params.rb +13 -9
- data/lib/openai/models/vector_store_search_response.rb +18 -11
- data/lib/openai/models/vector_store_update_params.rb +16 -11
- data/lib/openai/models/vector_stores/file_batch_create_params.rb +47 -23
- data/lib/openai/models/vector_stores/file_batch_list_files_params.rb +18 -8
- data/lib/openai/models/vector_stores/file_content_response.rb +4 -2
- data/lib/openai/models/vector_stores/file_create_params.rb +18 -9
- data/lib/openai/models/vector_stores/file_list_params.rb +18 -8
- data/lib/openai/models/vector_stores/file_update_params.rb +6 -4
- data/lib/openai/models/vector_stores/vector_store_file.rb +35 -16
- data/lib/openai/models/vector_stores/vector_store_file_batch.rb +27 -15
- data/lib/openai/models/video.rb +27 -16
- data/lib/openai/models/video_create_character_params.rb +8 -2
- data/lib/openai/models/video_create_character_response.rb +6 -3
- data/lib/openai/models/video_create_error.rb +12 -6
- data/lib/openai/models/video_create_params.rb +15 -7
- data/lib/openai/models/video_delete_response.rb +6 -3
- data/lib/openai/models/video_download_content_params.rb +2 -1
- data/lib/openai/models/video_edit_params.rb +10 -3
- data/lib/openai/models/video_extend_params.rb +12 -6
- data/lib/openai/models/video_get_character_response.rb +6 -3
- data/lib/openai/models/video_list_params.rb +7 -6
- data/lib/openai/models/video_remix_params.rb +2 -1
- data/lib/openai/models/webhooks/batch_cancelled_webhook_event.rb +12 -12
- data/lib/openai/models/webhooks/batch_completed_webhook_event.rb +12 -12
- data/lib/openai/models/webhooks/batch_expired_webhook_event.rb +12 -12
- data/lib/openai/models/webhooks/batch_failed_webhook_event.rb +12 -12
- data/lib/openai/models/webhooks/eval_run_canceled_webhook_event.rb +12 -12
- data/lib/openai/models/webhooks/eval_run_failed_webhook_event.rb +12 -12
- data/lib/openai/models/webhooks/eval_run_succeeded_webhook_event.rb +12 -12
- data/lib/openai/models/webhooks/fine_tuning_job_cancelled_webhook_event.rb +12 -13
- data/lib/openai/models/webhooks/fine_tuning_job_failed_webhook_event.rb +12 -13
- data/lib/openai/models/webhooks/fine_tuning_job_succeeded_webhook_event.rb +12 -13
- data/lib/openai/models/webhooks/live_call_incoming_webhook_event.rb +26 -23
- data/lib/openai/models/webhooks/realtime_call_incoming_webhook_event.rb +30 -24
- data/lib/openai/models/webhooks/response_cancelled_webhook_event.rb +12 -13
- data/lib/openai/models/webhooks/response_completed_webhook_event.rb +12 -13
- data/lib/openai/models/webhooks/response_failed_webhook_event.rb +12 -12
- data/lib/openai/models/webhooks/response_incomplete_webhook_event.rb +12 -13
- data/lib/openai/models/webhooks/safety_alert_created_webhook_event.rb +10 -5
- data/lib/openai/models/webhooks/safety_org_alert_created_webhook_event.rb +10 -5
- data/lib/openai/resources/admin/organization/admin_api_keys.rb +13 -9
- data/lib/openai/resources/admin/organization/audit_logs.rb +44 -22
- data/lib/openai/resources/admin/organization/certificates.rb +26 -17
- data/lib/openai/resources/admin/organization/data_retention.rb +2 -1
- data/lib/openai/resources/admin/organization/groups/roles.rb +21 -13
- data/lib/openai/resources/admin/organization/groups/users.rb +22 -13
- data/lib/openai/resources/admin/organization/groups.rb +20 -11
- data/lib/openai/resources/admin/organization/invites.rb +21 -13
- data/lib/openai/resources/admin/organization/projects/api_keys.rb +24 -12
- data/lib/openai/resources/admin/organization/projects/certificates.rb +17 -10
- data/lib/openai/resources/admin/organization/projects/data_retention.rb +6 -3
- data/lib/openai/resources/admin/organization/projects/groups/roles.rb +29 -18
- data/lib/openai/resources/admin/organization/projects/groups.rb +25 -16
- data/lib/openai/resources/admin/organization/projects/hosted_tool_permissions.rb +14 -7
- data/lib/openai/resources/admin/organization/projects/model_permissions.rb +10 -5
- data/lib/openai/resources/admin/organization/projects/rate_limits.rb +32 -20
- data/lib/openai/resources/admin/organization/projects/roles.rb +35 -21
- data/lib/openai/resources/admin/organization/projects/service_accounts/api_keys.rb +10 -5
- data/lib/openai/resources/admin/organization/projects/service_accounts.rb +40 -19
- data/lib/openai/resources/admin/organization/projects/spend_alerts.rb +42 -24
- data/lib/openai/resources/admin/organization/projects/spend_limit.rb +13 -10
- data/lib/openai/resources/admin/organization/projects/users/roles.rb +29 -18
- data/lib/openai/resources/admin/organization/projects/users.rb +32 -18
- data/lib/openai/resources/admin/organization/projects.rb +40 -22
- data/lib/openai/resources/admin/organization/roles.rb +25 -15
- data/lib/openai/resources/admin/organization/spend_alerts.rb +32 -18
- data/lib/openai/resources/admin/organization/spend_limit.rb +7 -6
- data/lib/openai/resources/admin/organization/usage.rb +296 -145
- data/lib/openai/resources/admin/organization/users/roles.rb +21 -13
- data/lib/openai/resources/admin/organization/users.rb +24 -13
- data/lib/openai/resources/audio/speech.rb +25 -10
- data/lib/openai/resources/audio/transcriptions.rb +172 -56
- data/lib/openai/resources/audio/translations.rb +26 -8
- data/lib/openai/resources/batches.rb +43 -15
- data/lib/openai/resources/beta/assistants.rb +177 -59
- data/lib/openai/resources/beta/chatkit/sessions.rb +14 -9
- data/lib/openai/resources/beta/chatkit/threads.rb +29 -18
- data/lib/openai/resources/beta/responses/input_items.rb +17 -9
- data/lib/openai/resources/beta/responses/input_tokens.rb +65 -28
- data/lib/openai/resources/beta/responses.rb +640 -195
- data/lib/openai/resources/beta/threads/messages.rb +65 -30
- data/lib/openai/resources/beta/threads/runs/steps.rb +50 -23
- data/lib/openai/resources/beta/threads/runs.rb +309 -109
- data/lib/openai/resources/beta/threads.rb +240 -78
- data/lib/openai/resources/chat/completions/messages.rb +9 -7
- data/lib/openai/resources/chat/completions.rb +594 -169
- data/lib/openai/resources/completions.rb +212 -40
- data/lib/openai/resources/containers/files.rb +19 -11
- data/lib/openai/resources/containers.rb +27 -14
- data/lib/openai/resources/content_provenance_checks.rb +7 -2
- data/lib/openai/resources/conversations/items.rb +58 -26
- data/lib/openai/resources/conversations.rb +23 -12
- data/lib/openai/resources/embeddings.rb +26 -8
- data/lib/openai/resources/evals/runs/output_items.rb +21 -12
- data/lib/openai/resources/evals/runs.rb +37 -21
- data/lib/openai/resources/evals.rb +43 -23
- data/lib/openai/resources/files.rb +42 -21
- data/lib/openai/resources/fine_tuning/alpha/graders.rb +15 -7
- data/lib/openai/resources/fine_tuning/checkpoints/permissions.rb +36 -34
- data/lib/openai/resources/fine_tuning/jobs/checkpoints.rb +6 -6
- data/lib/openai/resources/fine_tuning/jobs.rb +84 -42
- data/lib/openai/resources/images.rb +423 -131
- data/lib/openai/resources/models.rb +4 -2
- data/lib/openai/resources/moderations.rb +10 -6
- data/lib/openai/resources/realtime/calls.rb +114 -48
- data/lib/openai/resources/realtime/client_secrets.rb +9 -6
- data/lib/openai/resources/responses/input_items.rb +15 -8
- data/lib/openai/resources/responses/input_tokens.rb +60 -26
- data/lib/openai/resources/responses.rb +601 -262
- data/lib/openai/resources/safety/alerts.rb +2 -1
- data/lib/openai/resources/skills/content.rb +2 -1
- data/lib/openai/resources/skills/versions/content.rb +4 -2
- data/lib/openai/resources/skills/versions.rb +26 -11
- data/lib/openai/resources/skills.rb +21 -11
- data/lib/openai/resources/uploads/parts.rb +13 -9
- data/lib/openai/resources/uploads.rb +35 -27
- data/lib/openai/resources/vector_stores/file_batches.rb +60 -26
- data/lib/openai/resources/vector_stores/files.rb +62 -31
- data/lib/openai/resources/vector_stores.rb +67 -34
- data/lib/openai/resources/videos.rb +64 -31
- data/lib/openai/version.rb +1 -1
- data/local-audio.md +146 -0
- data/rbi/openai/helpers/local_audio/interface.rbi +110 -0
- data/rbi/openai/helpers/realtime/connection.rbi +18 -2
- data/rbi/openai/helpers/realtime/extensions.rbi +8 -0
- data/rbi/openai/helpers/realtime/recovery.rbi +27 -0
- data/rbi/openai/models/admin/organization/audit_log_list_params.rbi +2 -2
- data/rbi/openai/models/admin/organization/project_create_params.rbi +4 -4
- data/rbi/openai/models/admin/organization/projects/project_api_key.rbi +13 -1
- data/rbi/openai/models/admin/organization/projects/service_account_create_params.rbi +18 -0
- data/rbi/openai/models/admin/organization/projects/service_account_create_response.rbi +19 -1
- data/rbi/openai/models/audio/speech_create_params.rbi +9 -6
- data/rbi/openai/models/audio/transcription_create_params.rbi +2 -2
- data/rbi/openai/models/audio/transcription_stream_event.rbi +1 -1
- data/rbi/openai/models/audio/transcription_text_delta_event.rbi +3 -3
- data/rbi/openai/models/audio/transcription_text_done_event.rbi +3 -3
- data/rbi/openai/models/audio/transcription_text_segment_event.rbi +1 -1
- data/rbi/openai/models/audio/translation_create_params.rbi +2 -2
- data/rbi/openai/models/batch.rbi +4 -4
- data/rbi/openai/models/batch_create_params.rbi +6 -4
- data/rbi/openai/models/batch_usage.rbi +2 -2
- data/rbi/openai/models/beta/assistant.rbi +24 -24
- data/rbi/openai/models/beta/assistant_create_params.rbi +40 -40
- data/rbi/openai/models/beta/assistant_response_format_option.rbi +4 -4
- data/rbi/openai/models/beta/assistant_stream_event.rbi +63 -65
- data/rbi/openai/models/beta/assistant_update_params.rbi +30 -30
- data/rbi/openai/models/beta/beta_computer_tool.rbi +1 -1
- data/rbi/openai/models/beta/beta_computer_use_preview_tool.rbi +1 -1
- data/rbi/openai/models/beta/beta_custom_tool.rbi +1 -1
- data/rbi/openai/models/beta/beta_file_search_tool.rbi +1 -1
- data/rbi/openai/models/beta/beta_function_tool.rbi +1 -1
- data/rbi/openai/models/beta/beta_response.rbi +72 -64
- data/rbi/openai/models/beta/beta_response_compaction_item.rbi +1 -1
- data/rbi/openai/models/beta/beta_response_compaction_item_param.rbi +1 -1
- data/rbi/openai/models/beta/beta_response_computer_tool_call.rbi +1 -1
- data/rbi/openai/models/beta/beta_response_file_search_tool_call.rbi +1 -1
- data/rbi/openai/models/beta/beta_response_format_text_config.rbi +1 -1
- data/rbi/openai/models/beta/beta_response_format_text_json_schema_config.rbi +3 -3
- data/rbi/openai/models/beta/beta_response_function_tool_call.rbi +1 -1
- data/rbi/openai/models/beta/beta_response_function_tool_call_item.rbi +1 -1
- data/rbi/openai/models/beta/beta_response_function_web_search.rbi +2 -2
- data/rbi/openai/models/beta/beta_response_input_image.rbi +1 -1
- data/rbi/openai/models/beta/beta_response_input_image_content.rbi +1 -1
- data/rbi/openai/models/beta/beta_response_input_item.rbi +86 -1
- data/rbi/openai/models/beta/beta_response_item.rbi +78 -1
- data/rbi/openai/models/beta/beta_response_output_item.rbi +84 -1
- data/rbi/openai/models/beta/beta_response_prompt.rbi +1 -1
- data/rbi/openai/models/beta/beta_response_reasoning_item.rbi +1 -1
- data/rbi/openai/models/beta/beta_response_text_config.rbi +4 -4
- data/rbi/openai/models/beta/beta_response_usage.rbi +2 -2
- data/rbi/openai/models/beta/beta_responses_client_event.rbi +98 -84
- data/rbi/openai/models/beta/beta_tool.rbi +94 -55
- data/rbi/openai/models/beta/beta_tool_choice_types.rbi +4 -4
- data/rbi/openai/models/beta/beta_web_search_preview_tool.rbi +1 -1
- data/rbi/openai/models/beta/beta_web_search_tool.rbi +1 -1
- data/rbi/openai/models/beta/file_search_tool.rbi +5 -5
- data/rbi/openai/models/beta/message_stream_event.rbi +16 -16
- data/rbi/openai/models/beta/response_compact_params.rbi +44 -44
- data/rbi/openai/models/beta/response_create_params.rbi +96 -82
- data/rbi/openai/models/beta/responses/input_token_count_params.rbi +20 -20
- data/rbi/openai/models/beta/run_step_stream_event.rbi +14 -16
- data/rbi/openai/models/beta/run_stream_event.rbi +31 -31
- data/rbi/openai/models/beta/thread.rbi +9 -9
- data/rbi/openai/models/beta/thread_create_and_run_params.rbi +61 -56
- data/rbi/openai/models/beta/thread_create_params.rbi +24 -22
- data/rbi/openai/models/beta/thread_stream_event.rbi +3 -3
- data/rbi/openai/models/beta/thread_update_params.rbi +8 -8
- data/rbi/openai/models/beta/threads/image_file.rbi +6 -6
- data/rbi/openai/models/beta/threads/image_file_content_block.rbi +3 -2
- data/rbi/openai/models/beta/threads/image_file_delta.rbi +6 -6
- data/rbi/openai/models/beta/threads/image_file_delta_block.rbi +3 -2
- data/rbi/openai/models/beta/threads/message.rbi +9 -9
- data/rbi/openai/models/beta/threads/message_content.rbi +3 -2
- data/rbi/openai/models/beta/threads/message_content_delta.rbi +3 -2
- data/rbi/openai/models/beta/threads/message_content_part_param.rbi +3 -2
- data/rbi/openai/models/beta/threads/required_action_function_tool_call.rbi +2 -2
- data/rbi/openai/models/beta/threads/run.rbi +33 -31
- data/rbi/openai/models/beta/threads/run_create_params.rbi +37 -34
- data/rbi/openai/models/beta/threads/runs/code_interpreter_output_image.rbi +4 -4
- data/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi +4 -4
- data/rbi/openai/models/beta/threads/runs/function_tool_call.rbi +2 -4
- data/rbi/openai/models/beta/threads/runs/function_tool_call_delta.rbi +2 -4
- data/rbi/openai/models/beta/threads/runs/run_step.rbi +12 -10
- data/rbi/openai/models/beta/threads/runs/step_list_params.rbi +2 -2
- data/rbi/openai/models/beta/threads/runs/step_retrieve_params.rbi +2 -2
- data/rbi/openai/models/chat/chat_completion.rbi +27 -21
- data/rbi/openai/models/chat/chat_completion_assistant_message_param.rbi +4 -5
- data/rbi/openai/models/chat/chat_completion_audio.rbi +1 -1
- data/rbi/openai/models/chat/chat_completion_audio_param.rbi +1 -1
- data/rbi/openai/models/chat/chat_completion_chunk.rbi +28 -22
- data/rbi/openai/models/chat/chat_completion_content_part.rbi +3 -4
- data/rbi/openai/models/chat/chat_completion_content_part_image.rbi +5 -4
- data/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi +1 -1
- data/rbi/openai/models/chat/chat_completion_content_part_text.rbi +1 -2
- data/rbi/openai/models/chat/chat_completion_message.rbi +4 -4
- data/rbi/openai/models/chat/chat_completion_store_message.rbi +3 -4
- data/rbi/openai/models/chat/completion_create_params.rbi +95 -85
- data/rbi/openai/models/completion_create_params.rbi +34 -32
- data/rbi/openai/models/conversations/conversation_item.rbi +89 -2
- data/rbi/openai/models/conversations/item_create_params.rbi +2 -2
- data/rbi/openai/models/conversations/item_retrieve_params.rbi +2 -2
- data/rbi/openai/models/embedding.rbi +2 -2
- data/rbi/openai/models/embedding_create_params.rbi +14 -14
- data/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi +5 -5
- data/rbi/openai/models/evals/run_cancel_response.rbi +22 -20
- data/rbi/openai/models/evals/run_create_params.rbi +22 -20
- data/rbi/openai/models/evals/run_create_response.rbi +22 -20
- data/rbi/openai/models/evals/run_list_response.rbi +22 -20
- data/rbi/openai/models/evals/run_retrieve_response.rbi +22 -20
- data/rbi/openai/models/fine_tuning/alpha/grader_run_params.rbi +10 -8
- data/rbi/openai/models/fine_tuning/fine_tuning_job.rbi +6 -6
- data/rbi/openai/models/fine_tuning/job_create_params.rbi +17 -15
- data/rbi/openai/models/function_definition.rbi +6 -6
- data/rbi/openai/models/graders/score_model_grader.rbi +2 -2
- data/rbi/openai/models/image_create_variation_params.rbi +2 -2
- data/rbi/openai/models/image_edit_completed_event.rbi +20 -9
- data/rbi/openai/models/image_edit_params.rbi +91 -62
- data/rbi/openai/models/image_edit_partial_image_event.rbi +20 -9
- data/rbi/openai/models/image_gen_completed_event.rbi +20 -9
- data/rbi/openai/models/image_gen_partial_image_event.rbi +20 -9
- data/rbi/openai/models/image_generate_params.rbi +73 -50
- data/rbi/openai/models/image_model.rbi +4 -0
- data/rbi/openai/models/images_response.rbi +27 -16
- data/rbi/openai/models/moderation_create_params.rbi +9 -9
- data/rbi/openai/models/realtime/audio_transcription.rbi +2 -2
- data/rbi/openai/models/realtime/call_accept_params.rbi +1 -1
- data/rbi/openai/models/realtime/output_audio_buffer_clear_event.rbi +1 -1
- data/rbi/openai/models/realtime/realtime_audio_config_input.rbi +2 -2
- data/rbi/openai/models/realtime/realtime_response_create_mcp_tool.rbi +4 -4
- data/rbi/openai/models/realtime/realtime_response_create_params.rbi +3 -3
- data/rbi/openai/models/realtime/realtime_server_event.rbi +3 -3
- data/rbi/openai/models/realtime/realtime_session.rbi +4 -4
- data/rbi/openai/models/realtime/realtime_session_create_request.rbi +2 -2
- data/rbi/openai/models/realtime/realtime_session_create_response.rbi +7 -7
- data/rbi/openai/models/realtime/realtime_tools_config_union.rbi +5 -5
- data/rbi/openai/models/realtime/realtime_transcription_session_audio_input.rbi +2 -2
- data/rbi/openai/models/reasoning.rbi +3 -3
- data/rbi/openai/models/reasoning_effort.rbi +1 -1
- data/rbi/openai/models/response_format_json_schema.rbi +3 -3
- data/rbi/openai/models/response_format_text_grammar.rbi +1 -1
- data/rbi/openai/models/response_format_text_python.rbi +1 -1
- data/rbi/openai/models/responses/computer_tool.rbi +1 -1
- data/rbi/openai/models/responses/computer_use_preview_tool.rbi +1 -1
- data/rbi/openai/models/responses/custom_tool.rbi +1 -1
- data/rbi/openai/models/responses/file_search_tool.rbi +1 -1
- data/rbi/openai/models/responses/function_tool.rbi +1 -1
- data/rbi/openai/models/responses/input_token_count_params.rbi +16 -16
- data/rbi/openai/models/responses/response.rbi +66 -58
- data/rbi/openai/models/responses/response_compact_params.rbi +44 -44
- data/rbi/openai/models/responses/response_compaction_item.rbi +1 -1
- data/rbi/openai/models/responses/response_compaction_item_param.rbi +1 -1
- data/rbi/openai/models/responses/response_computer_tool_call.rbi +1 -1
- data/rbi/openai/models/responses/response_create_params.rbi +90 -76
- data/rbi/openai/models/responses/response_file_search_tool_call.rbi +1 -1
- data/rbi/openai/models/responses/response_format_text_config.rbi +1 -1
- data/rbi/openai/models/responses/response_format_text_json_schema_config.rbi +3 -3
- data/rbi/openai/models/responses/response_function_tool_call.rbi +1 -1
- data/rbi/openai/models/responses/response_function_tool_call_item.rbi +1 -1
- data/rbi/openai/models/responses/response_function_web_search.rbi +2 -2
- data/rbi/openai/models/responses/response_input_image.rbi +1 -1
- data/rbi/openai/models/responses/response_input_image_content.rbi +1 -1
- data/rbi/openai/models/responses/response_input_item.rbi +88 -1
- data/rbi/openai/models/responses/response_item.rbi +80 -1
- data/rbi/openai/models/responses/response_output_item.rbi +84 -1
- data/rbi/openai/models/responses/response_prompt.rbi +1 -1
- data/rbi/openai/models/responses/response_reasoning_item.rbi +1 -1
- data/rbi/openai/models/responses/response_text_config.rbi +4 -4
- data/rbi/openai/models/responses/response_usage.rbi +2 -2
- data/rbi/openai/models/responses/responses_client_event.rbi +92 -78
- data/rbi/openai/models/responses/tool.rbi +94 -55
- data/rbi/openai/models/responses/tool_choice_types.rbi +4 -4
- data/rbi/openai/models/responses/web_search_preview_tool.rbi +1 -1
- data/rbi/openai/models/responses/web_search_tool.rbi +1 -1
- data/rbi/openai/models/upload.rbi +2 -2
- data/rbi/openai/models/upload_create_params.rbi +2 -2
- data/rbi/openai/models/vector_store_create_params.rbi +6 -6
- data/rbi/openai/models/vector_stores/file_batch_create_params.rbi +18 -18
- data/rbi/openai/models/vector_stores/file_create_params.rbi +6 -6
- data/rbi/openai/models/vector_stores/vector_store_file.rbi +4 -4
- data/rbi/openai/models/vector_stores/vector_store_file_batch.rbi +4 -4
- data/rbi/openai/models/webhooks/live_call_incoming_webhook_event.rbi +10 -6
- data/rbi/openai/models/webhooks/realtime_call_incoming_webhook_event.rbi +14 -6
- data/rbi/openai/resources/admin/organization/audit_logs.rbi +1 -1
- data/rbi/openai/resources/admin/organization/projects/service_accounts.rbi +7 -0
- data/rbi/openai/resources/admin/organization/projects.rbi +2 -2
- data/rbi/openai/resources/audio/speech.rbi +3 -2
- data/rbi/openai/resources/audio/transcriptions.rbi +2 -2
- data/rbi/openai/resources/audio/translations.rbi +1 -1
- data/rbi/openai/resources/batches.rbi +3 -2
- data/rbi/openai/resources/beta/assistants.rbi +18 -18
- data/rbi/openai/resources/beta/responses/input_tokens.rbi +6 -6
- data/rbi/openai/resources/beta/responses.rbi +112 -102
- data/rbi/openai/resources/beta/threads/messages.rbi +9 -6
- data/rbi/openai/resources/beta/threads/runs/steps.rbi +2 -2
- data/rbi/openai/resources/beta/threads/runs.rbi +37 -33
- data/rbi/openai/resources/beta/threads.rbi +27 -24
- data/rbi/openai/resources/chat/completions.rbi +90 -82
- data/rbi/openai/resources/completions.rbi +30 -28
- data/rbi/openai/resources/content_provenance_checks.rbi +1 -1
- data/rbi/openai/resources/conversations/items.rbi +2 -2
- data/rbi/openai/resources/embeddings.rbi +5 -5
- data/rbi/openai/resources/evals.rbi +1 -1
- data/rbi/openai/resources/files.rbi +5 -5
- data/rbi/openai/resources/fine_tuning/alpha/graders.rbi +5 -4
- data/rbi/openai/resources/fine_tuning/checkpoints/permissions.rbi +8 -4
- data/rbi/openai/resources/fine_tuning/jobs.rbi +10 -9
- data/rbi/openai/resources/images.rbi +113 -83
- data/rbi/openai/resources/moderations.rbi +5 -4
- data/rbi/openai/resources/realtime/calls.rbi +6 -6
- data/rbi/openai/resources/realtime/client_secrets.rbi +1 -1
- data/rbi/openai/resources/responses/input_tokens.rbi +6 -6
- data/rbi/openai/resources/responses.rbi +112 -100
- data/rbi/openai/resources/uploads/parts.rbi +5 -4
- data/rbi/openai/resources/uploads.rbi +10 -10
- data/rbi/openai/resources/vector_stores/file_batches.rbi +6 -6
- data/rbi/openai/resources/vector_stores/files.rbi +6 -6
- data/rbi/openai/resources/vector_stores.rbi +3 -3
- data/realtime.md +101 -0
- data/responses-websocket.md +182 -0
- data/sig/openai/helpers/local_audio/interface.rbs +62 -0
- data/sig/openai/helpers/realtime/connection.rbs +9 -1
- data/sig/openai/helpers/realtime/extensions.rbs +4 -0
- data/sig/openai/helpers/realtime/recovery.rbs +19 -0
- data/sig/openai/models/admin/organization/projects/project_api_key.rbs +7 -2
- data/sig/openai/models/admin/organization/projects/service_account_create_params.rbs +5 -0
- data/sig/openai/models/admin/organization/projects/service_account_create_response.rbs +7 -2
- data/sig/openai/models/beta/beta_response_input_item.rbs +39 -2
- data/sig/openai/models/beta/beta_response_item.rbs +39 -2
- data/sig/openai/models/beta/beta_response_output_item.rbs +39 -2
- data/sig/openai/models/beta/beta_tool.rbs +11 -1
- data/sig/openai/models/conversations/conversation_item.rbs +39 -2
- data/sig/openai/models/image_edit_completed_event.rbs +11 -4
- data/sig/openai/models/image_edit_params.rbs +3 -1
- data/sig/openai/models/image_edit_partial_image_event.rbs +11 -4
- data/sig/openai/models/image_gen_completed_event.rbs +11 -4
- data/sig/openai/models/image_gen_partial_image_event.rbs +11 -4
- data/sig/openai/models/image_generate_params.rbs +4 -1
- data/sig/openai/models/image_model.rbs +8 -0
- data/sig/openai/models/images_response.rbs +10 -4
- data/sig/openai/models/responses/response_input_item.rbs +39 -2
- data/sig/openai/models/responses/response_item.rbs +39 -2
- data/sig/openai/models/responses/response_output_item.rbs +39 -2
- data/sig/openai/models/responses/tool.rbs +11 -1
- data/sig/openai/resources/admin/organization/projects/service_accounts.rbs +1 -0
- metadata +15 -1
|
@@ -8,8 +8,8 @@ module OpenAI
|
|
|
8
8
|
class Files
|
|
9
9
|
|
|
10
10
|
# Create a vector store file by attaching a
|
|
11
|
-
# [File](https://
|
|
12
|
-
# [vector store](https://
|
|
11
|
+
# [File](https://developers.openai.com/api/reference/resources/files) to a
|
|
12
|
+
# [vector store](https://developers.openai.com/api/reference/resources/vector_stores).
|
|
13
13
|
sig {
|
|
14
14
|
params(
|
|
15
15
|
vector_store_id: String,
|
|
@@ -26,10 +26,10 @@ module OpenAI
|
|
|
26
26
|
def create(
|
|
27
27
|
# The ID of the vector store for which to create a File.
|
|
28
28
|
vector_store_id,
|
|
29
|
-
# A [File](https://
|
|
30
|
-
# vector store should use. Useful for tools like `file_search` that can access
|
|
29
|
+
# A [File](https://developers.openai.com/api/reference/resources/files) ID that
|
|
30
|
+
# the vector store should use. Useful for tools like `file_search` that can access
|
|
31
31
|
# files. For multi-file ingestion, we recommend
|
|
32
|
-
# [`file_batches`](https://
|
|
32
|
+
# [`file_batches`](https://developers.openai.com/api/reference/resources/vector_stores/subresources/file_batches/methods/create)
|
|
33
33
|
# to minimize per-vector-store write requests.
|
|
34
34
|
file_id:,
|
|
35
35
|
# Set of 16 key-value pairs that can be attached to an object. This can be useful
|
|
@@ -157,7 +157,7 @@ module OpenAI
|
|
|
157
157
|
|
|
158
158
|
# Delete a vector store file. This will remove the file from the vector store but
|
|
159
159
|
# the file itself will not be deleted. To delete the file, use the
|
|
160
|
-
# [delete file](https://
|
|
160
|
+
# [delete file](https://developers.openai.com/api/reference/resources/files/methods/delete)
|
|
161
161
|
# endpoint.
|
|
162
162
|
sig {
|
|
163
163
|
params(file_id: String, vector_store_id: String, request_options: OpenAI::RequestOptions::OrHash).returns(
|
|
@@ -36,9 +36,9 @@ module OpenAI
|
|
|
36
36
|
description: nil,
|
|
37
37
|
# The expiration policy for a vector store.
|
|
38
38
|
expires_after: nil,
|
|
39
|
-
# A list of [File](https://
|
|
40
|
-
# the vector store should use. Useful for tools like `file_search` that
|
|
41
|
-
# files.
|
|
39
|
+
# A list of [File](https://developers.openai.com/api/reference/resources/files)
|
|
40
|
+
# IDs that the vector store should use. Useful for tools like `file_search` that
|
|
41
|
+
# can access files.
|
|
42
42
|
file_ids: nil,
|
|
43
43
|
# Set of 16 key-value pairs that can be attached to an object. This can be useful
|
|
44
44
|
# for storing additional information about the object in a structured format, and
|
data/realtime.md
CHANGED
|
@@ -76,6 +76,107 @@ types. Invalid client events raise `ArgumentError` with a generic public
|
|
|
76
76
|
message; the converter error remains available through `cause` for explicit
|
|
77
77
|
inspection. `send_raw` and `receive_raw` are text-frame escape hatches.
|
|
78
78
|
|
|
79
|
+
## Reconnect and retained sends
|
|
80
|
+
|
|
81
|
+
Automatic reconnect is disabled by default. Enable it on the existing `connect`
|
|
82
|
+
method for ordinary model sessions:
|
|
83
|
+
|
|
84
|
+
```ruby
|
|
85
|
+
client.realtime.connect(model: "gpt-realtime-2.1", reconnect: true) do |connection|
|
|
86
|
+
connection.each { |event| handle_event(event) }
|
|
87
|
+
end
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
Both `receive` and `each` drive recovery. The application block runs once, with
|
|
91
|
+
the same connection object. Recovery opens a **new session**; it does not restore
|
|
92
|
+
conversation history, buffered audio, outstanding tool calls, or an interrupted
|
|
93
|
+
response. The normal server session events remain observable. Sends alone do
|
|
94
|
+
not drive recovery: keep a receiver running to observe disconnects.
|
|
95
|
+
|
|
96
|
+
`max_reconnect_attempts` defaults to 5 and bounds the total additional connection
|
|
97
|
+
attempts over the block's lifetime, including retryable initial handshake
|
|
98
|
+
failures. Backoff starts at 0.5 seconds, doubles to an 8-second cap, and applies
|
|
99
|
+
jitter. Normal close, explicit close, permanent authentication/TLS/protocol
|
|
100
|
+
failures, and exhausted retries stop recovery. Each attempt uses the client's
|
|
101
|
+
existing endpoint and authentication preparation, including workload-identity
|
|
102
|
+
token refresh. `request_options[:max_retries]` remains an HTTP option and must
|
|
103
|
+
not be used to configure WebSocket reconnect.
|
|
104
|
+
|
|
105
|
+
An optional `on_reconnected:` callback receives the same connection before the
|
|
106
|
+
replacement is made available to waiting readers. It can restore application
|
|
107
|
+
state using the usual typed helpers; its exceptions stop recovery. A callback
|
|
108
|
+
may receive events itself, consuming them before the application receiver.
|
|
109
|
+
|
|
110
|
+
### Optional outbound queue
|
|
111
|
+
|
|
112
|
+
`max_queue_bytes` defaults to **0** (queueing disabled). Set a positive byte
|
|
113
|
+
budget to retain validated, serialized events sent while reconnecting or while
|
|
114
|
+
an explicit queue flush is in progress. Queue-full errors reject the new event
|
|
115
|
+
without evicting accepted events. The budget includes a queued write until it
|
|
116
|
+
settles; empty raw text costs one byte for accounting. Connected sends and
|
|
117
|
+
incoming events have no new payload-size limit.
|
|
118
|
+
|
|
119
|
+
Retained events are **never automatically flushed** into a replacement session.
|
|
120
|
+
Restore any needed state, decide whether the queued work still belongs in that
|
|
121
|
+
session, then call `flush_pending`. Normal connected sends bypass the held queue,
|
|
122
|
+
allowing setup messages to precede it. Only the retained messages have FIFO
|
|
123
|
+
ordering relative to each other. For example:
|
|
124
|
+
|
|
125
|
+
```ruby
|
|
126
|
+
restore = lambda do |connection|
|
|
127
|
+
connection.session.update(type: :realtime, instructions: "Be concise.")
|
|
128
|
+
# Use this only when the application knows its retained events are valid
|
|
129
|
+
# in the replacement session. Rebuilding earlier conversation state may
|
|
130
|
+
# require additional events and acknowledgements first.
|
|
131
|
+
connection.flush_pending
|
|
132
|
+
end
|
|
133
|
+
|
|
134
|
+
client.realtime.connect(
|
|
135
|
+
model: "gpt-realtime-2.1",
|
|
136
|
+
reconnect: true,
|
|
137
|
+
max_queue_bytes: 1_048_576,
|
|
138
|
+
on_reconnected: restore
|
|
139
|
+
) do |connection|
|
|
140
|
+
connection.each { |event| handle_event(event) }
|
|
141
|
+
end
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
The callback is optional even with queueing enabled. After receiving a new
|
|
145
|
+
session's events, application code can restore state and flush the queue itself.
|
|
146
|
+
`pending_messages` returns a snapshot of encoded unsent events;
|
|
147
|
+
`take_pending_messages` removes and returns them without sending. The latter
|
|
148
|
+
raises if a flush is in progress. These accessors return empty arrays on ordinary
|
|
149
|
+
connections without recovery; `flush_pending` on such a connection is a no-op.
|
|
150
|
+
|
|
151
|
+
`OpenAI::Errors::RealtimeQueueFullError` means the event was not accepted.
|
|
152
|
+
`OpenAI::Errors::RealtimeReconnectError` reports a terminal recovery failure or
|
|
153
|
+
an interrupted operation. Its `unsent_messages` contains retained events never
|
|
154
|
+
attempted on the socket. A failed write stops the connection and exposes the
|
|
155
|
+
attempted event as `uncertain_message`; the SDK never retries it. A local write
|
|
156
|
+
completion is not a server acknowledgement, and `event_id` does not establish
|
|
157
|
+
exactly-once delivery. These explicit payload accessors can contain sensitive
|
|
158
|
+
application data; do not log them. Error messages omit their contents.
|
|
159
|
+
|
|
160
|
+
Each waiting sender receives an error describing only its own event. If its write
|
|
161
|
+
was never attempted, that event appears in `unsent_messages` and `uncertain_message`
|
|
162
|
+
is nil, even when another concurrent sender's write caused the connection to fail.
|
|
163
|
+
|
|
164
|
+
When an explicit flush is interrupted by another disconnect, unattempted events
|
|
165
|
+
stay queued and require another explicit flush after recovery. Intentional close
|
|
166
|
+
keeps retained data available through the connection's queue accessors. With
|
|
167
|
+
reconnect enabled, close makes a best-effort attempt (up to one second) to send its
|
|
168
|
+
`code` and `reason`, then releases the socket. A close during a write aborts
|
|
169
|
+
immediately and reports uncertain delivery. Leaving the block cancels and joins recovery
|
|
170
|
+
work. Concurrent producers submit through the connection's mailbox; socket I/O
|
|
171
|
+
stays on its owning Async reactor. Cancelling a waiting operation closes the
|
|
172
|
+
logical connection so an abandoned receive cannot consume a later event.
|
|
173
|
+
|
|
174
|
+
Reconnect uses the optional Async runtime even with a custom transport. Custom
|
|
175
|
+
transports must allow Async cancellation and preserve the cause/status of
|
|
176
|
+
`RealtimeConnectionError` for retry classification. `connect_transcription` and
|
|
177
|
+
`connect_to_call` retain their existing behavior; their session recovery
|
|
178
|
+
semantics are not enabled by this option.
|
|
179
|
+
|
|
79
180
|
## Standard text workflows
|
|
80
181
|
|
|
81
182
|
The same generic helpers cover local function results, image content, and MCP
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
# Responses WebSocket workflows
|
|
2
|
+
|
|
3
|
+
Requires `openai` 0.86.0 or later and the optional `async-websocket` gem:
|
|
4
|
+
|
|
5
|
+
```ruby
|
|
6
|
+
gem "openai", ">= 0.86.0"
|
|
7
|
+
gem "async-websocket"
|
|
8
|
+
```
|
|
9
|
+
|
|
10
|
+
Responses WebSocket mode connects to `/v1/responses`. It uses Responses events;
|
|
11
|
+
it is distinct from [Realtime sessions](realtime.md). See the
|
|
12
|
+
[platform guide](https://developers.openai.com/api/docs/guides/websocket-mode)
|
|
13
|
+
for the service contract.
|
|
14
|
+
|
|
15
|
+
## Run the examples
|
|
16
|
+
|
|
17
|
+
The [workflow example](examples/responses/websocket_workflows.rb) demonstrates
|
|
18
|
+
four patterns with one reader and no background worker threads. Keep
|
|
19
|
+
`OPENAI_API_KEY` in your environment. These commands make real API calls:
|
|
20
|
+
|
|
21
|
+
```sh
|
|
22
|
+
bundle exec ruby examples/responses/websocket_workflows.rb tools
|
|
23
|
+
bundle exec ruby examples/responses/websocket_workflows.rb multiplex
|
|
24
|
+
bundle exec ruby examples/responses/websocket_workflows.rb stored
|
|
25
|
+
bundle exec ruby examples/responses/websocket_workflows.rb stateless
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
Set `OPENAI_RESPONSES_MODEL` to override `gpt-5.2` and
|
|
29
|
+
`OPENAI_RESPONSES_TIMEOUT` to change the 60-second overall deadline. The example
|
|
30
|
+
prints only a completion marker, not prompts, model output, or server errors.
|
|
31
|
+
The default workflow is `multiplex`. The `stored` workflow requires an account
|
|
32
|
+
that allows response storage; use `stateless` with `store=false`/ZDR.
|
|
33
|
+
|
|
34
|
+
## Connect, send, and receive
|
|
35
|
+
|
|
36
|
+
```ruby
|
|
37
|
+
client.responses.connect do |connection|
|
|
38
|
+
connection.response.create(model: "gpt-5.2", input: "Say hello.")
|
|
39
|
+
connection.each do |event|
|
|
40
|
+
case event.type.to_s
|
|
41
|
+
when "response.completed"
|
|
42
|
+
# Save event.response.id and handle event.response.output here.
|
|
43
|
+
break
|
|
44
|
+
when "response.failed", "response.incomplete", "error"
|
|
45
|
+
raise "Responses operation did not complete."
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Use the complete example for EOF detection: a connection ending before every
|
|
52
|
+
expected terminal event is not success. `connect` requires a block and closes
|
|
53
|
+
on block exit. Connection options belong in `connect`; model/input fields belong
|
|
54
|
+
in `connection.response.create`.
|
|
55
|
+
|
|
56
|
+
Known events are decoded into generated models on a best-effort basis. New
|
|
57
|
+
event types arrive as `OpenAI::Responses::UnknownServerEvent`. Preserve or handle
|
|
58
|
+
them explicitly where your application needs them. Do not assume every event
|
|
59
|
+
has a response, text delta, or lane ID.
|
|
60
|
+
|
|
61
|
+
## Sequential tool turns
|
|
62
|
+
|
|
63
|
+
The `tools` workflow forces a call to one known, harmless application function.
|
|
64
|
+
After the response completes, it checks the function name and sends its output
|
|
65
|
+
using the original `call_id`. The next create uses `previous_response_id` and
|
|
66
|
+
only the new `function_call_output` item. It does not resend the previous input
|
|
67
|
+
on the same connection.
|
|
68
|
+
|
|
69
|
+
Tool execution belongs to your application. Validate arguments against your
|
|
70
|
+
tool's contract and authorize effects before execution. Never execute generated
|
|
71
|
+
code or dispatch arbitrary method names from a tool event. The example uses a
|
|
72
|
+
fixed result and does not execute model-provided code.
|
|
73
|
+
|
|
74
|
+
## Multiplexing and continuation
|
|
75
|
+
|
|
76
|
+
`stream_id` routes events to a lane; `previous_response_id` selects conversation
|
|
77
|
+
history. They are independent. Reusing a lane without a previous response ID
|
|
78
|
+
starts a new response rather than continuing that lane's conversation.
|
|
79
|
+
|
|
80
|
+
The `multiplex` workflow writes two creates, then drains both lanes with one
|
|
81
|
+
reader. Events may interleave and the first terminal event does not finish the
|
|
82
|
+
whole operation. Keep a pending-lane set and retain each completed response ID.
|
|
83
|
+
Omitting `stream_id` uses the default lane; its events omit the field as well.
|
|
84
|
+
|
|
85
|
+
The example fails the whole operation on any error. Production applications can
|
|
86
|
+
route a lane-scoped error to just that lane, while treating a connection-scoped
|
|
87
|
+
error as affecting the connection. Track separate response IDs when multiple
|
|
88
|
+
requests are outstanding within a lane; a lane alone is not a request ID.
|
|
89
|
+
|
|
90
|
+
The server executes same-lane requests in FIFO order. The SDK does not enforce
|
|
91
|
+
lane grammar, schedule lanes, or manage a per-lane queue. Consult the platform
|
|
92
|
+
guide for the current concurrent-response and named-lane limits.
|
|
93
|
+
|
|
94
|
+
To fork, send an existing response ID on a different lane. With `store=false`,
|
|
95
|
+
wait for the fork's `response.in_progress` before advancing the source lane so
|
|
96
|
+
its parent remains available in the connection-local cache.
|
|
97
|
+
|
|
98
|
+
## Reconnect without replaying uncertain work
|
|
99
|
+
|
|
100
|
+
Both reconnect examples intentionally close a healthy connection **after** a
|
|
101
|
+
completed turn, then open another connection. They do not catch a failed write
|
|
102
|
+
and retry it.
|
|
103
|
+
|
|
104
|
+
- **Stored:** send only the new input plus the stored `previous_response_id`.
|
|
105
|
+
If the service cannot retrieve that response, the application must decide
|
|
106
|
+
whether to reconstruct context and start a new chain.
|
|
107
|
+
- **Stateless:** connection-local state is lost on reconnect. Retain the original
|
|
108
|
+
inputs and every output item, including reasoning and tool items. Request
|
|
109
|
+
`include: ["reasoning.encrypted_content"]` for reasoning-model replay. Send the
|
|
110
|
+
retained history plus new input, omitting `previous_response_id` on the new
|
|
111
|
+
connection. Do not reduce history to displayed assistant text.
|
|
112
|
+
|
|
113
|
+
Retained history can contain sensitive data. Apply your application's retention
|
|
114
|
+
policy; neither the SDK nor this example writes a recovery log. A full-context
|
|
115
|
+
replay starts a new chain and is not an exactly-once retry of a failed turn.
|
|
116
|
+
|
|
117
|
+
Connections have a finite service lifetime (currently up to 60 minutes). Plan
|
|
118
|
+
rotation and persistence at completed-turn boundaries. There is no automatic
|
|
119
|
+
reconnect, rollover, or replay in this SDK connection.
|
|
120
|
+
|
|
121
|
+
## Deadlines and shutdown
|
|
122
|
+
|
|
123
|
+
An SDK request timeout bounds connection negotiation, not an established
|
|
124
|
+
session's idle lifetime. The example wraps the complete workflow in an Async
|
|
125
|
+
deadline on the owning thread:
|
|
126
|
+
|
|
127
|
+
```ruby
|
|
128
|
+
require "async"
|
|
129
|
+
|
|
130
|
+
Sync do |task|
|
|
131
|
+
task.with_timeout(60) do
|
|
132
|
+
client.responses.connect do |connection|
|
|
133
|
+
# Send and read on this thread, inside the deadline.
|
|
134
|
+
end
|
|
135
|
+
end
|
|
136
|
+
end
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
Connections enforce one owning thread and one active reader. Do not call close
|
|
140
|
+
from another thread or nest `receive` inside an active `each`. The Async deadline
|
|
141
|
+
can interrupt an idle network read on the owning thread; the SDK then aborts and
|
|
142
|
+
cleans up the connection. A timeout inside a transport operation can surface as
|
|
143
|
+
`ResponsesConnectionError`, rather than `Async::TimeoutError`. Application code
|
|
144
|
+
that does CPU-bound work without yielding needs its own cancellation strategy.
|
|
145
|
+
|
|
146
|
+
Exiting the block normally performs a close. An exception or poisoned connection
|
|
147
|
+
causes an abort, avoiding a flush of uncertain buffered output. The peer may see
|
|
148
|
+
an abrupt disconnect. This is local shutdown, not a server-side cancellation
|
|
149
|
+
acknowledgment, and it does not guarantee that a response stopped executing.
|
|
150
|
+
|
|
151
|
+
## Error and compatibility boundaries
|
|
152
|
+
|
|
153
|
+
- `ResponsesSendError#outcome` is `:unknown`: the server may have accepted the
|
|
154
|
+
event. Stop using that connection; do not automatically resend it.
|
|
155
|
+
- A transport read failure poisons the connection. A server `error` event is
|
|
156
|
+
delivered as an event and does not by itself poison it.
|
|
157
|
+
- Malformed JSON raises `ResponsesProtocolError` without exposing the payload;
|
|
158
|
+
the connection permits later reads. Decide whether continuing is appropriate
|
|
159
|
+
for your application.
|
|
160
|
+
- Raw `send_event` supports generated client models or hashes, including
|
|
161
|
+
`response.steer`. There is no `connection.response.steer` convenience method.
|
|
162
|
+
- The platform documents `generate: false` warmup. It can be forwarded through
|
|
163
|
+
create's keyword rest even though 0.86.0 has no named generated `generate`
|
|
164
|
+
keyword. Follow the platform contract; do not send HTTP-only `stream` or
|
|
165
|
+
`background` flags just because generated models expose them.
|
|
166
|
+
- X.509 workload identity and provider runtimes are not supported by this
|
|
167
|
+
entry point. A nonempty `request_options.extra_query` or nonzero
|
|
168
|
+
`request_options.max_retries` is rejected. Supported workload identity has a
|
|
169
|
+
narrow pre-handshake 401 refresh; that is not live-session recovery.
|
|
170
|
+
- Large events are valid. Plan memory and application backpressure for your
|
|
171
|
+
workload without treating a fixed payload size as a protocol maximum.
|
|
172
|
+
|
|
173
|
+
## Offline verification
|
|
174
|
+
|
|
175
|
+
```sh
|
|
176
|
+
bundle exec ruby -Itest test/openai/responses_websocket/workflows_test.rb
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
The tests use real loopback WebSockets and synthetic data, exercise the default
|
|
180
|
+
Responses transport, and make no live API requests. They cover the four example
|
|
181
|
+
patterns, interleaved terminal events, fragmented text, premature EOF, failures,
|
|
182
|
+
idle-read deadlines, and a large event exceeding 32 MiB.
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
module OpenAI
|
|
2
|
+
module LocalAudio
|
|
3
|
+
def self.record: (
|
|
4
|
+
duration: Numeric,
|
|
5
|
+
?device: (String | Integer)?,
|
|
6
|
+
?timeout: Numeric?
|
|
7
|
+
) -> OpenAI::FilePart
|
|
8
|
+
def self.play: (
|
|
9
|
+
IO | StringIO | OpenAI::FilePart source,
|
|
10
|
+
?format: :auto | :pcm,
|
|
11
|
+
?timeout: Numeric?
|
|
12
|
+
) -> nil
|
|
13
|
+
|
|
14
|
+
# @api private
|
|
15
|
+
def self.playback_source: (
|
|
16
|
+
IO | StringIO | OpenAI::FilePart source
|
|
17
|
+
) -> (IO | StringIO)
|
|
18
|
+
|
|
19
|
+
# @api private
|
|
20
|
+
def self.capture_device: (
|
|
21
|
+
(String | Integer)? device,
|
|
22
|
+
?platform: String
|
|
23
|
+
) -> [String, String]
|
|
24
|
+
|
|
25
|
+
# @api private
|
|
26
|
+
def self.wav_header: (Integer bytes) -> String
|
|
27
|
+
|
|
28
|
+
# @api private
|
|
29
|
+
class MediaProcess
|
|
30
|
+
def self.environment: -> Hash[String, String]
|
|
31
|
+
def self.clock: -> Float
|
|
32
|
+
def self.duration: (Numeric value, name: String | Symbol) -> Float
|
|
33
|
+
def initialize: (
|
|
34
|
+
Array[String] argv,
|
|
35
|
+
input: IO | String,
|
|
36
|
+
output: IO | String,
|
|
37
|
+
timeout: Numeric?,
|
|
38
|
+
?capture_errors: bool
|
|
39
|
+
) -> void
|
|
40
|
+
def check_deadline: -> void
|
|
41
|
+
def errors?: -> bool
|
|
42
|
+
def read: (IO | StringIO io, ?stop_on_exit: bool) -> String?
|
|
43
|
+
def write: (IO io, String bytes) -> void
|
|
44
|
+
def wait: -> Process::Status
|
|
45
|
+
def close: -> void
|
|
46
|
+
end
|
|
47
|
+
class Error < OpenAI::Errors::Error
|
|
48
|
+
end
|
|
49
|
+
class DependencyError < OpenAI::LocalAudio::Error
|
|
50
|
+
end
|
|
51
|
+
class UnsupportedPlatformError < OpenAI::LocalAudio::Error
|
|
52
|
+
end
|
|
53
|
+
class DeviceError < OpenAI::LocalAudio::Error
|
|
54
|
+
end
|
|
55
|
+
class PlaybackError < OpenAI::LocalAudio::Error
|
|
56
|
+
end
|
|
57
|
+
class TimeoutError < OpenAI::LocalAudio::Error
|
|
58
|
+
end
|
|
59
|
+
class FormatError < OpenAI::LocalAudio::Error
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
end
|
|
@@ -19,7 +19,11 @@ module OpenAI
|
|
|
19
19
|
attr_reader input_audio_buffer: OpenAI::Realtime::ConnectionResources::InputAudioBuffer
|
|
20
20
|
|
|
21
21
|
# @api private
|
|
22
|
-
def initialize: (
|
|
22
|
+
def initialize: (
|
|
23
|
+
socket: untyped,
|
|
24
|
+
url: URI::Generic,
|
|
25
|
+
?recovery: untyped
|
|
26
|
+
) -> void
|
|
23
27
|
def each:
|
|
24
28
|
-> Enumerator[OpenAI::Models::Realtime::connection_server_event, self]
|
|
25
29
|
| {
|
|
@@ -39,6 +43,10 @@ module OpenAI
|
|
|
39
43
|
# @api private
|
|
40
44
|
def abort: -> nil
|
|
41
45
|
def closed?: -> bool
|
|
46
|
+
def reconnecting?: -> bool
|
|
47
|
+
def pending_messages: -> Array[String]
|
|
48
|
+
def take_pending_messages: -> Array[String]
|
|
49
|
+
def flush_pending: -> nil
|
|
42
50
|
end
|
|
43
51
|
end
|
|
44
52
|
end
|
|
@@ -52,6 +52,10 @@ module OpenAI
|
|
|
52
52
|
class Realtime
|
|
53
53
|
def connect: (
|
|
54
54
|
model: String,
|
|
55
|
+
?reconnect: bool,
|
|
56
|
+
?max_reconnect_attempts: Integer,
|
|
57
|
+
?max_queue_bytes: Integer,
|
|
58
|
+
?on_reconnected: (^(OpenAI::Realtime::Connection) -> void)?,
|
|
55
59
|
?websocket_base_url: String?,
|
|
56
60
|
?request_options: OpenAI::request_opts?,
|
|
57
61
|
?transport: untyped?,
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
module OpenAI
|
|
2
|
+
module Errors
|
|
3
|
+
class RealtimeQueueFullError < OpenAI::Errors::Error
|
|
4
|
+
def initialize: -> void
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
class RealtimeReconnectError < OpenAI::Errors::Error
|
|
8
|
+
attr_reader unsent_messages: Array[String]
|
|
9
|
+
attr_reader uncertain_message: String?
|
|
10
|
+
|
|
11
|
+
# @api private
|
|
12
|
+
def initialize: (
|
|
13
|
+
message: String,
|
|
14
|
+
?unsent_messages: Array[String],
|
|
15
|
+
?uncertain_message: String?
|
|
16
|
+
) -> void
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -14,7 +14,8 @@ module OpenAI
|
|
|
14
14
|
?object: :"organization.project.api_key",
|
|
15
15
|
owner: OpenAI::Admin::Organization::Projects::ProjectAPIKey::Owner,
|
|
16
16
|
owner_project_access: OpenAI::Models::Admin::Organization::Projects::ProjectAPIKey::owner_project_access,
|
|
17
|
-
redacted_value: String
|
|
17
|
+
redacted_value: String,
|
|
18
|
+
?expires_at: Integer?
|
|
18
19
|
}
|
|
19
20
|
|
|
20
21
|
class ProjectAPIKey < OpenAI::Internal::Type::BaseModel
|
|
@@ -34,6 +35,8 @@ module OpenAI
|
|
|
34
35
|
|
|
35
36
|
attr_accessor redacted_value: String
|
|
36
37
|
|
|
38
|
+
attr_accessor expires_at: Integer?
|
|
39
|
+
|
|
37
40
|
def initialize: (
|
|
38
41
|
id: String,
|
|
39
42
|
created_at: Integer,
|
|
@@ -42,6 +45,7 @@ module OpenAI
|
|
|
42
45
|
owner: OpenAI::Admin::Organization::Projects::ProjectAPIKey::Owner,
|
|
43
46
|
owner_project_access: OpenAI::Models::Admin::Organization::Projects::ProjectAPIKey::owner_project_access,
|
|
44
47
|
redacted_value: String,
|
|
48
|
+
?expires_at: Integer?,
|
|
45
49
|
?object: :"organization.project.api_key"
|
|
46
50
|
) -> void
|
|
47
51
|
|
|
@@ -53,7 +57,8 @@ module OpenAI
|
|
|
53
57
|
?object: :"organization.project.api_key",
|
|
54
58
|
owner: OpenAI::Admin::Organization::Projects::ProjectAPIKey::Owner,
|
|
55
59
|
owner_project_access: OpenAI::Models::Admin::Organization::Projects::ProjectAPIKey::owner_project_access,
|
|
56
|
-
redacted_value: String
|
|
60
|
+
redacted_value: String,
|
|
61
|
+
?expires_at: Integer?
|
|
57
62
|
}
|
|
58
63
|
|
|
59
64
|
type owner =
|
|
@@ -8,6 +8,7 @@ module OpenAI
|
|
|
8
8
|
project_id: String,
|
|
9
9
|
name: String,
|
|
10
10
|
?create_service_account_only: bool?,
|
|
11
|
+
?expires_in_seconds: Integer?,
|
|
11
12
|
?request_options: OpenAI::request_opts
|
|
12
13
|
}
|
|
13
14
|
|
|
@@ -21,10 +22,13 @@ module OpenAI
|
|
|
21
22
|
|
|
22
23
|
attr_accessor create_service_account_only: bool?
|
|
23
24
|
|
|
25
|
+
attr_accessor expires_in_seconds: Integer?
|
|
26
|
+
|
|
24
27
|
def initialize: (
|
|
25
28
|
project_id: String,
|
|
26
29
|
name: String,
|
|
27
30
|
?create_service_account_only: bool?,
|
|
31
|
+
?expires_in_seconds: Integer?,
|
|
28
32
|
?request_options: OpenAI::request_opts
|
|
29
33
|
) -> void
|
|
30
34
|
|
|
@@ -32,6 +36,7 @@ module OpenAI
|
|
|
32
36
|
project_id: String,
|
|
33
37
|
name: String,
|
|
34
38
|
?create_service_account_only: bool?,
|
|
39
|
+
?expires_in_seconds: Integer?,
|
|
35
40
|
?request_options: OpenAI::RequestOptions
|
|
36
41
|
}
|
|
37
42
|
end
|
|
@@ -50,7 +50,8 @@ module OpenAI
|
|
|
50
50
|
created_at: Integer,
|
|
51
51
|
name: String,
|
|
52
52
|
?object: :"organization.project.service_account.api_key",
|
|
53
|
-
value: String
|
|
53
|
+
value: String,
|
|
54
|
+
?expires_at: Integer?
|
|
54
55
|
}
|
|
55
56
|
|
|
56
57
|
class APIKey < OpenAI::Internal::Type::BaseModel
|
|
@@ -64,11 +65,14 @@ module OpenAI
|
|
|
64
65
|
|
|
65
66
|
attr_accessor value: String
|
|
66
67
|
|
|
68
|
+
attr_accessor expires_at: Integer?
|
|
69
|
+
|
|
67
70
|
def initialize: (
|
|
68
71
|
id: String,
|
|
69
72
|
created_at: Integer,
|
|
70
73
|
name: String,
|
|
71
74
|
value: String,
|
|
75
|
+
?expires_at: Integer?,
|
|
72
76
|
?object: :"organization.project.service_account.api_key"
|
|
73
77
|
) -> void
|
|
74
78
|
|
|
@@ -77,7 +81,8 @@ module OpenAI
|
|
|
77
81
|
created_at: Integer,
|
|
78
82
|
name: String,
|
|
79
83
|
?object: :"organization.project.service_account.api_key",
|
|
80
|
-
value: String
|
|
84
|
+
value: String,
|
|
85
|
+
?expires_at: Integer?
|
|
81
86
|
}
|
|
82
87
|
end
|
|
83
88
|
|
|
@@ -860,7 +860,9 @@ module OpenAI
|
|
|
860
860
|
result: String?,
|
|
861
861
|
status: OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::status,
|
|
862
862
|
?type: :image_generation_call,
|
|
863
|
-
?agent: OpenAI::Beta::BetaResponseInputItem::ImageGenerationCall::Agent
|
|
863
|
+
?agent: OpenAI::Beta::BetaResponseInputItem::ImageGenerationCall::Agent?,
|
|
864
|
+
?quality: OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::quality?,
|
|
865
|
+
?size: OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::size?
|
|
864
866
|
}
|
|
865
867
|
|
|
866
868
|
class ImageGenerationCall < OpenAI::Internal::Type::BaseModel
|
|
@@ -874,11 +876,17 @@ module OpenAI
|
|
|
874
876
|
|
|
875
877
|
attr_accessor agent: OpenAI::Beta::BetaResponseInputItem::ImageGenerationCall::Agent?
|
|
876
878
|
|
|
879
|
+
attr_accessor quality: OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::quality?
|
|
880
|
+
|
|
881
|
+
attr_accessor size: OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::size?
|
|
882
|
+
|
|
877
883
|
def initialize: (
|
|
878
884
|
id: String,
|
|
879
885
|
result: String?,
|
|
880
886
|
status: OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::status,
|
|
881
887
|
?agent: OpenAI::Beta::BetaResponseInputItem::ImageGenerationCall::Agent?,
|
|
888
|
+
?quality: OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::quality?,
|
|
889
|
+
?size: OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::size?,
|
|
882
890
|
?type: :image_generation_call
|
|
883
891
|
) -> void
|
|
884
892
|
|
|
@@ -887,7 +895,9 @@ module OpenAI
|
|
|
887
895
|
result: String?,
|
|
888
896
|
status: OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::status,
|
|
889
897
|
?type: :image_generation_call,
|
|
890
|
-
?agent: OpenAI::Beta::BetaResponseInputItem::ImageGenerationCall::Agent
|
|
898
|
+
?agent: OpenAI::Beta::BetaResponseInputItem::ImageGenerationCall::Agent?,
|
|
899
|
+
?quality: OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::quality?,
|
|
900
|
+
?size: OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::size?
|
|
891
901
|
}
|
|
892
902
|
|
|
893
903
|
type status = :in_progress | :completed | :generating | :failed
|
|
@@ -912,6 +922,33 @@ module OpenAI
|
|
|
912
922
|
|
|
913
923
|
def to_hash: -> { agent_name: String }
|
|
914
924
|
end
|
|
925
|
+
|
|
926
|
+
type quality = :low | :medium | :high | :xhigh | :max | :auto
|
|
927
|
+
|
|
928
|
+
module Quality
|
|
929
|
+
extend OpenAI::Internal::Type::Enum
|
|
930
|
+
|
|
931
|
+
LOW: :low
|
|
932
|
+
MEDIUM: :medium
|
|
933
|
+
HIGH: :high
|
|
934
|
+
XHIGH: :xhigh
|
|
935
|
+
MAX: :max
|
|
936
|
+
AUTO: :auto
|
|
937
|
+
|
|
938
|
+
def self?.values: -> ::Array[OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::quality]
|
|
939
|
+
end
|
|
940
|
+
|
|
941
|
+
type size = String | :"1024x1024" | :"1024x1536" | :"1536x1024"
|
|
942
|
+
|
|
943
|
+
module Size
|
|
944
|
+
extend OpenAI::Internal::Type::Union
|
|
945
|
+
|
|
946
|
+
def self?.variants: -> ::Array[OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::size]
|
|
947
|
+
|
|
948
|
+
SIZE_1024X1024: :"1024x1024"
|
|
949
|
+
SIZE_1024X1536: :"1024x1536"
|
|
950
|
+
SIZE_1536X1024: :"1536x1024"
|
|
951
|
+
end
|
|
915
952
|
end
|
|
916
953
|
|
|
917
954
|
type local_shell_call =
|