openai 0.20.0 → 0.21.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 +13 -0
- data/README.md +1 -1
- data/lib/openai/client.rb +4 -0
- data/lib/openai/internal/stream.rb +3 -2
- data/lib/openai/models/audio/speech_create_params.rb +6 -0
- data/lib/openai/models/chat/chat_completion_audio_param.rb +6 -0
- data/lib/openai/models/evals/run_cancel_response.rb +2 -2
- data/lib/openai/models/evals/run_create_params.rb +2 -2
- data/lib/openai/models/evals/run_create_response.rb +2 -2
- data/lib/openai/models/evals/run_list_response.rb +2 -2
- data/lib/openai/models/evals/run_retrieve_response.rb +2 -2
- data/lib/openai/models/realtime/client_secret_create_params.rb +93 -0
- data/lib/openai/models/realtime/client_secret_create_response.rb +300 -0
- data/lib/openai/models/realtime/conversation_created_event.rb +70 -0
- data/lib/openai/models/realtime/conversation_item.rb +44 -0
- data/lib/openai/models/realtime/conversation_item_added.rb +48 -0
- data/lib/openai/models/realtime/conversation_item_create_event.rb +57 -0
- data/lib/openai/models/realtime/conversation_item_created_event.rb +59 -0
- data/lib/openai/models/realtime/conversation_item_delete_event.rb +39 -0
- data/lib/openai/models/realtime/conversation_item_deleted_event.rb +38 -0
- data/lib/openai/models/realtime/conversation_item_done.rb +48 -0
- data/lib/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rb +189 -0
- data/lib/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rb +63 -0
- data/lib/openai/models/realtime/conversation_item_input_audio_transcription_failed_event.rb +96 -0
- data/lib/openai/models/realtime/conversation_item_input_audio_transcription_segment.rb +84 -0
- data/lib/openai/models/realtime/conversation_item_retrieve_event.rb +40 -0
- data/lib/openai/models/realtime/conversation_item_truncate_event.rb +68 -0
- data/lib/openai/models/realtime/conversation_item_truncated_event.rb +60 -0
- data/lib/openai/models/realtime/conversation_item_with_reference.rb +235 -0
- data/lib/openai/models/realtime/input_audio_buffer_append_event.rb +49 -0
- data/lib/openai/models/realtime/input_audio_buffer_clear_event.rb +29 -0
- data/lib/openai/models/realtime/input_audio_buffer_cleared_event.rb +29 -0
- data/lib/openai/models/realtime/input_audio_buffer_commit_event.rb +35 -0
- data/lib/openai/models/realtime/input_audio_buffer_committed_event.rb +51 -0
- data/lib/openai/models/realtime/input_audio_buffer_speech_started_event.rb +59 -0
- data/lib/openai/models/realtime/input_audio_buffer_speech_stopped_event.rb +51 -0
- data/lib/openai/models/realtime/input_audio_buffer_timeout_triggered.rb +52 -0
- data/lib/openai/models/realtime/log_prob_properties.rb +39 -0
- data/lib/openai/models/realtime/mcp_list_tools_completed.rb +36 -0
- data/lib/openai/models/realtime/mcp_list_tools_failed.rb +36 -0
- data/lib/openai/models/realtime/mcp_list_tools_in_progress.rb +36 -0
- data/lib/openai/models/realtime/output_audio_buffer_clear_event.rb +32 -0
- data/lib/openai/models/realtime/rate_limits_updated_event.rb +91 -0
- data/lib/openai/models/realtime/realtime_audio_config.rb +446 -0
- data/lib/openai/models/realtime/realtime_client_event.rb +123 -0
- data/lib/openai/models/realtime/realtime_client_secret_config.rb +64 -0
- data/lib/openai/models/realtime/realtime_conversation_item_assistant_message.rb +118 -0
- data/lib/openai/models/realtime/realtime_conversation_item_function_call.rb +94 -0
- data/lib/openai/models/realtime/realtime_conversation_item_function_call_output.rb +86 -0
- data/lib/openai/models/realtime/realtime_conversation_item_system_message.rb +118 -0
- data/lib/openai/models/realtime/realtime_conversation_item_user_message.rb +135 -0
- data/lib/openai/models/realtime/realtime_error.rb +55 -0
- data/lib/openai/models/realtime/realtime_error_event.rb +38 -0
- data/lib/openai/models/realtime/realtime_mcp_approval_request.rb +52 -0
- data/lib/openai/models/realtime/realtime_mcp_approval_response.rb +52 -0
- data/lib/openai/models/realtime/realtime_mcp_list_tools.rb +84 -0
- data/lib/openai/models/realtime/realtime_mcp_protocol_error.rb +29 -0
- data/lib/openai/models/realtime/realtime_mcp_tool_call.rb +94 -0
- data/lib/openai/models/realtime/realtime_mcp_tool_execution_error.rb +23 -0
- data/lib/openai/models/realtime/realtime_mcphttp_error.rb +29 -0
- data/lib/openai/models/realtime/realtime_response.rb +259 -0
- data/lib/openai/models/realtime/realtime_response_status.rb +103 -0
- data/lib/openai/models/realtime/realtime_response_usage.rb +61 -0
- data/lib/openai/models/realtime/realtime_response_usage_input_token_details.rb +36 -0
- data/lib/openai/models/realtime/realtime_response_usage_output_token_details.rb +28 -0
- data/lib/openai/models/realtime/realtime_server_event.rb +369 -0
- data/lib/openai/models/realtime/realtime_session.rb +696 -0
- data/lib/openai/models/realtime/realtime_session_create_request.rb +234 -0
- data/lib/openai/models/realtime/realtime_session_create_response.rb +579 -0
- data/lib/openai/models/realtime/realtime_tool_choice_config.rb +32 -0
- data/lib/openai/models/realtime/realtime_tools_config.rb +11 -0
- data/lib/openai/models/realtime/realtime_tools_config_union.rb +379 -0
- data/lib/openai/models/realtime/realtime_tracing_config.rb +61 -0
- data/lib/openai/models/realtime/realtime_transcription_session_create_request.rb +312 -0
- data/lib/openai/models/realtime/realtime_truncation.rb +67 -0
- data/lib/openai/models/realtime/response_audio_delta_event.rb +68 -0
- data/lib/openai/models/realtime/response_audio_done_event.rb +61 -0
- data/lib/openai/models/realtime/response_audio_transcript_delta_event.rb +68 -0
- data/lib/openai/models/realtime/response_audio_transcript_done_event.rb +70 -0
- data/lib/openai/models/realtime/response_cancel_event.rb +42 -0
- data/lib/openai/models/realtime/response_content_part_added_event.rb +120 -0
- data/lib/openai/models/realtime/response_content_part_done_event.rb +120 -0
- data/lib/openai/models/realtime/response_create_event.rb +391 -0
- data/lib/openai/models/realtime/response_created_event.rb +37 -0
- data/lib/openai/models/realtime/response_done_event.rb +38 -0
- data/lib/openai/models/realtime/response_function_call_arguments_delta_event.rb +72 -0
- data/lib/openai/models/realtime/response_function_call_arguments_done_event.rb +73 -0
- data/lib/openai/models/realtime/response_mcp_call_arguments_delta.rb +68 -0
- data/lib/openai/models/realtime/response_mcp_call_arguments_done.rb +60 -0
- data/lib/openai/models/realtime/response_mcp_call_completed.rb +44 -0
- data/lib/openai/models/realtime/response_mcp_call_failed.rb +44 -0
- data/lib/openai/models/realtime/response_mcp_call_in_progress.rb +44 -0
- data/lib/openai/models/realtime/response_output_item_added_event.rb +52 -0
- data/lib/openai/models/realtime/response_output_item_done_event.rb +53 -0
- data/lib/openai/models/realtime/response_text_delta_event.rb +68 -0
- data/lib/openai/models/realtime/response_text_done_event.rb +69 -0
- data/lib/openai/models/realtime/session_created_event.rb +38 -0
- data/lib/openai/models/realtime/session_update_event.rb +44 -0
- data/lib/openai/models/realtime/session_updated_event.rb +37 -0
- data/lib/openai/models/realtime/transcription_session_created.rb +278 -0
- data/lib/openai/models/realtime/transcription_session_update.rb +36 -0
- data/lib/openai/models/realtime/transcription_session_updated_event.rb +279 -0
- data/lib/openai/models/responses/response.rb +6 -3
- data/lib/openai/models/responses/response_create_params.rb +6 -3
- data/lib/openai/models/responses/tool.rb +3 -156
- data/lib/openai/models/responses/web_search_preview_tool.rb +124 -0
- data/lib/openai/models/responses/web_search_tool.rb +58 -21
- data/lib/openai/models/webhooks/realtime_call_incoming_webhook_event.rb +119 -0
- data/lib/openai/models/webhooks/unwrap_webhook_event.rb +4 -1
- data/lib/openai/models.rb +2 -0
- data/lib/openai/resources/realtime/client_secrets.rb +44 -0
- data/lib/openai/resources/realtime.rb +18 -0
- data/lib/openai/resources/responses.rb +2 -2
- data/lib/openai/resources/webhooks.rb +1 -1
- data/lib/openai/version.rb +1 -1
- data/lib/openai.rb +95 -0
- data/rbi/openai/client.rbi +3 -0
- data/rbi/openai/models/audio/speech_create_params.rbi +10 -0
- data/rbi/openai/models/chat/chat_completion_audio_param.rbi +10 -0
- data/rbi/openai/models/evals/run_cancel_response.rbi +4 -4
- data/rbi/openai/models/evals/run_create_params.rbi +8 -8
- data/rbi/openai/models/evals/run_create_response.rbi +4 -4
- data/rbi/openai/models/evals/run_list_response.rbi +4 -4
- data/rbi/openai/models/evals/run_retrieve_response.rbi +4 -4
- data/rbi/openai/models/realtime/client_secret_create_params.rbi +222 -0
- data/rbi/openai/models/realtime/client_secret_create_response.rbi +676 -0
- data/rbi/openai/models/realtime/conversation_created_event.rbi +164 -0
- data/rbi/openai/models/realtime/conversation_item.rbi +35 -0
- data/rbi/openai/models/realtime/conversation_item_added.rbi +105 -0
- data/rbi/openai/models/realtime/conversation_item_create_event.rbi +123 -0
- data/rbi/openai/models/realtime/conversation_item_created_event.rbi +117 -0
- data/rbi/openai/models/realtime/conversation_item_delete_event.rbi +57 -0
- data/rbi/openai/models/realtime/conversation_item_deleted_event.rbi +53 -0
- data/rbi/openai/models/realtime/conversation_item_done.rbi +105 -0
- data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rbi +305 -0
- data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rbi +93 -0
- data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_failed_event.rbi +158 -0
- data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_segment.rbi +107 -0
- data/rbi/openai/models/realtime/conversation_item_retrieve_event.rbi +58 -0
- data/rbi/openai/models/realtime/conversation_item_truncate_event.rbi +94 -0
- data/rbi/openai/models/realtime/conversation_item_truncated_event.rbi +80 -0
- data/rbi/openai/models/realtime/conversation_item_with_reference.rbi +549 -0
- data/rbi/openai/models/realtime/input_audio_buffer_append_event.rbi +65 -0
- data/rbi/openai/models/realtime/input_audio_buffer_clear_event.rbi +43 -0
- data/rbi/openai/models/realtime/input_audio_buffer_cleared_event.rbi +40 -0
- data/rbi/openai/models/realtime/input_audio_buffer_commit_event.rbi +49 -0
- data/rbi/openai/models/realtime/input_audio_buffer_committed_event.rbi +72 -0
- data/rbi/openai/models/realtime/input_audio_buffer_speech_started_event.rbi +82 -0
- data/rbi/openai/models/realtime/input_audio_buffer_speech_stopped_event.rbi +73 -0
- data/rbi/openai/models/realtime/input_audio_buffer_timeout_triggered.rbi +75 -0
- data/rbi/openai/models/realtime/log_prob_properties.rbi +55 -0
- data/rbi/openai/models/realtime/mcp_list_tools_completed.rbi +51 -0
- data/rbi/openai/models/realtime/mcp_list_tools_failed.rbi +51 -0
- data/rbi/openai/models/realtime/mcp_list_tools_in_progress.rbi +51 -0
- data/rbi/openai/models/realtime/output_audio_buffer_clear_event.rbi +46 -0
- data/rbi/openai/models/realtime/rate_limits_updated_event.rbi +187 -0
- data/rbi/openai/models/realtime/realtime_audio_config.rbi +1004 -0
- data/rbi/openai/models/realtime/realtime_client_event.rbi +38 -0
- data/rbi/openai/models/realtime/realtime_client_secret_config.rbi +147 -0
- data/rbi/openai/models/realtime/realtime_conversation_item_assistant_message.rbi +292 -0
- data/rbi/openai/models/realtime/realtime_conversation_item_function_call.rbi +199 -0
- data/rbi/openai/models/realtime/realtime_conversation_item_function_call_output.rbi +188 -0
- data/rbi/openai/models/realtime/realtime_conversation_item_system_message.rbi +292 -0
- data/rbi/openai/models/realtime/realtime_conversation_item_user_message.rbi +319 -0
- data/rbi/openai/models/realtime/realtime_error.rbi +72 -0
- data/rbi/openai/models/realtime/realtime_error_event.rbi +64 -0
- data/rbi/openai/models/realtime/realtime_mcp_approval_request.rbi +75 -0
- data/rbi/openai/models/realtime/realtime_mcp_approval_response.rbi +75 -0
- data/rbi/openai/models/realtime/realtime_mcp_list_tools.rbi +131 -0
- data/rbi/openai/models/realtime/realtime_mcp_protocol_error.rbi +40 -0
- data/rbi/openai/models/realtime/realtime_mcp_tool_call.rbi +145 -0
- data/rbi/openai/models/realtime/realtime_mcp_tool_execution_error.rbi +31 -0
- data/rbi/openai/models/realtime/realtime_mcphttp_error.rbi +40 -0
- data/rbi/openai/models/realtime/realtime_response.rbi +573 -0
- data/rbi/openai/models/realtime/realtime_response_status.rbi +233 -0
- data/rbi/openai/models/realtime/realtime_response_usage.rbi +121 -0
- data/rbi/openai/models/realtime/realtime_response_usage_input_token_details.rbi +68 -0
- data/rbi/openai/models/realtime/realtime_response_usage_output_token_details.rbi +51 -0
- data/rbi/openai/models/realtime/realtime_server_event.rbi +311 -0
- data/rbi/openai/models/realtime/realtime_session.rbi +1426 -0
- data/rbi/openai/models/realtime/realtime_session_create_request.rbi +560 -0
- data/rbi/openai/models/realtime/realtime_session_create_response.rbi +1249 -0
- data/rbi/openai/models/realtime/realtime_tool_choice_config.rbi +30 -0
- data/rbi/openai/models/realtime/realtime_tools_config.rbi +15 -0
- data/rbi/openai/models/realtime/realtime_tools_config_union.rbi +755 -0
- data/rbi/openai/models/realtime/realtime_tracing_config.rbi +95 -0
- data/rbi/openai/models/realtime/realtime_transcription_session_create_request.rbi +703 -0
- data/rbi/openai/models/realtime/realtime_truncation.rbi +117 -0
- data/rbi/openai/models/realtime/response_audio_delta_event.rbi +91 -0
- data/rbi/openai/models/realtime/response_audio_done_event.rbi +84 -0
- data/rbi/openai/models/realtime/response_audio_transcript_delta_event.rbi +91 -0
- data/rbi/openai/models/realtime/response_audio_transcript_done_event.rbi +93 -0
- data/rbi/openai/models/realtime/response_cancel_event.rbi +63 -0
- data/rbi/openai/models/realtime/response_content_part_added_event.rbi +219 -0
- data/rbi/openai/models/realtime/response_content_part_done_event.rbi +219 -0
- data/rbi/openai/models/realtime/response_create_event.rbi +863 -0
- data/rbi/openai/models/realtime/response_created_event.rbi +65 -0
- data/rbi/openai/models/realtime/response_done_event.rbi +66 -0
- data/rbi/openai/models/realtime/response_function_call_arguments_delta_event.rbi +91 -0
- data/rbi/openai/models/realtime/response_function_call_arguments_done_event.rbi +92 -0
- data/rbi/openai/models/realtime/response_mcp_call_arguments_delta.rbi +91 -0
- data/rbi/openai/models/realtime/response_mcp_call_arguments_done.rbi +83 -0
- data/rbi/openai/models/realtime/response_mcp_call_completed.rbi +67 -0
- data/rbi/openai/models/realtime/response_mcp_call_failed.rbi +67 -0
- data/rbi/openai/models/realtime/response_mcp_call_in_progress.rbi +67 -0
- data/rbi/openai/models/realtime/response_output_item_added_event.rbi +111 -0
- data/rbi/openai/models/realtime/response_output_item_done_event.rbi +112 -0
- data/rbi/openai/models/realtime/response_text_delta_event.rbi +91 -0
- data/rbi/openai/models/realtime/response_text_done_event.rbi +92 -0
- data/rbi/openai/models/realtime/session_created_event.rbi +64 -0
- data/rbi/openai/models/realtime/session_update_event.rbi +77 -0
- data/rbi/openai/models/realtime/session_updated_event.rbi +63 -0
- data/rbi/openai/models/realtime/transcription_session_created.rbi +653 -0
- data/rbi/openai/models/realtime/transcription_session_update.rbi +74 -0
- data/rbi/openai/models/realtime/transcription_session_updated_event.rbi +657 -0
- data/rbi/openai/models/responses/response.rbi +10 -4
- data/rbi/openai/models/responses/response_create_params.rbi +16 -10
- data/rbi/openai/models/responses/tool.rbi +2 -348
- data/rbi/openai/models/responses/web_search_preview_tool.rbi +245 -0
- data/rbi/openai/models/responses/web_search_tool.rbi +120 -23
- data/rbi/openai/models/webhooks/realtime_call_incoming_webhook_event.rbi +222 -0
- data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +1 -0
- data/rbi/openai/models.rbi +2 -0
- data/rbi/openai/resources/realtime/client_secrets.rbi +38 -0
- data/rbi/openai/resources/realtime.rbi +15 -0
- data/rbi/openai/resources/responses.rbi +12 -6
- data/rbi/openai/resources/webhooks.rbi +1 -0
- data/sig/openai/client.rbs +2 -0
- data/sig/openai/models/audio/speech_create_params.rbs +4 -0
- data/sig/openai/models/chat/chat_completion_audio_param.rbs +4 -0
- data/sig/openai/models/realtime/client_secret_create_params.rbs +89 -0
- data/sig/openai/models/realtime/client_secret_create_response.rbs +292 -0
- data/sig/openai/models/realtime/conversation_created_event.rbs +70 -0
- data/sig/openai/models/realtime/conversation_item.rbs +22 -0
- data/sig/openai/models/realtime/conversation_item_added.rbs +37 -0
- data/sig/openai/models/realtime/conversation_item_create_event.rbs +41 -0
- data/sig/openai/models/realtime/conversation_item_created_event.rbs +37 -0
- data/sig/openai/models/realtime/conversation_item_delete_event.rbs +30 -0
- data/sig/openai/models/realtime/conversation_item_deleted_event.rbs +32 -0
- data/sig/openai/models/realtime/conversation_item_done.rbs +37 -0
- data/sig/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rbs +136 -0
- data/sig/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rbs +51 -0
- data/sig/openai/models/realtime/conversation_item_input_audio_transcription_failed_event.rbs +77 -0
- data/sig/openai/models/realtime/conversation_item_input_audio_transcription_segment.rbs +62 -0
- data/sig/openai/models/realtime/conversation_item_retrieve_event.rbs +34 -0
- data/sig/openai/models/realtime/conversation_item_truncate_event.rbs +44 -0
- data/sig/openai/models/realtime/conversation_item_truncated_event.rbs +42 -0
- data/sig/openai/models/realtime/conversation_item_with_reference.rbs +207 -0
- data/sig/openai/models/realtime/input_audio_buffer_append_event.rbs +30 -0
- data/sig/openai/models/realtime/input_audio_buffer_clear_event.rbs +23 -0
- data/sig/openai/models/realtime/input_audio_buffer_cleared_event.rbs +24 -0
- data/sig/openai/models/realtime/input_audio_buffer_commit_event.rbs +23 -0
- data/sig/openai/models/realtime/input_audio_buffer_committed_event.rbs +37 -0
- data/sig/openai/models/realtime/input_audio_buffer_speech_started_event.rbs +37 -0
- data/sig/openai/models/realtime/input_audio_buffer_speech_stopped_event.rbs +37 -0
- data/sig/openai/models/realtime/input_audio_buffer_timeout_triggered.rbs +42 -0
- data/sig/openai/models/realtime/log_prob_properties.rbs +28 -0
- data/sig/openai/models/realtime/mcp_list_tools_completed.rbs +28 -0
- data/sig/openai/models/realtime/mcp_list_tools_failed.rbs +28 -0
- data/sig/openai/models/realtime/mcp_list_tools_in_progress.rbs +32 -0
- data/sig/openai/models/realtime/output_audio_buffer_clear_event.rbs +23 -0
- data/sig/openai/models/realtime/rate_limits_updated_event.rbs +85 -0
- data/sig/openai/models/realtime/realtime_audio_config.rbs +354 -0
- data/sig/openai/models/realtime/realtime_client_event.rbs +25 -0
- data/sig/openai/models/realtime/realtime_client_secret_config.rbs +60 -0
- data/sig/openai/models/realtime/realtime_conversation_item_assistant_message.rbs +117 -0
- data/sig/openai/models/realtime/realtime_conversation_item_function_call.rbs +86 -0
- data/sig/openai/models/realtime/realtime_conversation_item_function_call_output.rbs +79 -0
- data/sig/openai/models/realtime/realtime_conversation_item_system_message.rbs +117 -0
- data/sig/openai/models/realtime/realtime_conversation_item_user_message.rbs +132 -0
- data/sig/openai/models/realtime/realtime_error.rbs +42 -0
- data/sig/openai/models/realtime/realtime_error_event.rbs +32 -0
- data/sig/openai/models/realtime/realtime_mcp_approval_request.rbs +42 -0
- data/sig/openai/models/realtime/realtime_mcp_approval_response.rbs +42 -0
- data/sig/openai/models/realtime/realtime_mcp_list_tools.rbs +71 -0
- data/sig/openai/models/realtime/realtime_mcp_protocol_error.rbs +28 -0
- data/sig/openai/models/realtime/realtime_mcp_tool_call.rbs +68 -0
- data/sig/openai/models/realtime/realtime_mcp_tool_execution_error.rbs +18 -0
- data/sig/openai/models/realtime/realtime_mcphttp_error.rbs +24 -0
- data/sig/openai/models/realtime/realtime_response.rbs +210 -0
- data/sig/openai/models/realtime/realtime_response_status.rbs +90 -0
- data/sig/openai/models/realtime/realtime_response_usage.rbs +56 -0
- data/sig/openai/models/realtime/realtime_response_usage_input_token_details.rbs +34 -0
- data/sig/openai/models/realtime/realtime_response_usage_output_token_details.rbs +22 -0
- data/sig/openai/models/realtime/realtime_server_event.rbs +168 -0
- data/sig/openai/models/realtime/realtime_session.rbs +521 -0
- data/sig/openai/models/realtime/realtime_session_create_request.rbs +178 -0
- data/sig/openai/models/realtime/realtime_session_create_response.rbs +526 -0
- data/sig/openai/models/realtime/realtime_tool_choice_config.rbs +16 -0
- data/sig/openai/models/realtime/realtime_tools_config.rbs +10 -0
- data/sig/openai/models/realtime/realtime_tools_config_union.rbs +280 -0
- data/sig/openai/models/realtime/realtime_tracing_config.rbs +43 -0
- data/sig/openai/models/realtime/realtime_transcription_session_create_request.rbs +242 -0
- data/sig/openai/models/realtime/realtime_truncation.rbs +53 -0
- data/sig/openai/models/realtime/response_audio_delta_event.rbs +52 -0
- data/sig/openai/models/realtime/response_audio_done_event.rbs +47 -0
- data/sig/openai/models/realtime/response_audio_transcript_delta_event.rbs +52 -0
- data/sig/openai/models/realtime/response_audio_transcript_done_event.rbs +52 -0
- data/sig/openai/models/realtime/response_cancel_event.rbs +32 -0
- data/sig/openai/models/realtime/response_content_part_added_event.rbs +105 -0
- data/sig/openai/models/realtime/response_content_part_done_event.rbs +105 -0
- data/sig/openai/models/realtime/response_create_event.rbs +281 -0
- data/sig/openai/models/realtime/response_created_event.rbs +32 -0
- data/sig/openai/models/realtime/response_done_event.rbs +32 -0
- data/sig/openai/models/realtime/response_function_call_arguments_delta_event.rbs +52 -0
- data/sig/openai/models/realtime/response_function_call_arguments_done_event.rbs +52 -0
- data/sig/openai/models/realtime/response_mcp_call_arguments_delta.rbs +52 -0
- data/sig/openai/models/realtime/response_mcp_call_arguments_done.rbs +47 -0
- data/sig/openai/models/realtime/response_mcp_call_completed.rbs +37 -0
- data/sig/openai/models/realtime/response_mcp_call_failed.rbs +37 -0
- data/sig/openai/models/realtime/response_mcp_call_in_progress.rbs +37 -0
- data/sig/openai/models/realtime/response_output_item_added_event.rbs +42 -0
- data/sig/openai/models/realtime/response_output_item_done_event.rbs +42 -0
- data/sig/openai/models/realtime/response_text_delta_event.rbs +52 -0
- data/sig/openai/models/realtime/response_text_done_event.rbs +52 -0
- data/sig/openai/models/realtime/session_created_event.rbs +32 -0
- data/sig/openai/models/realtime/session_update_event.rbs +34 -0
- data/sig/openai/models/realtime/session_updated_event.rbs +32 -0
- data/sig/openai/models/realtime/transcription_session_created.rbs +282 -0
- data/sig/openai/models/realtime/transcription_session_update.rbs +34 -0
- data/sig/openai/models/realtime/transcription_session_updated_event.rbs +282 -0
- data/sig/openai/models/responses/tool.rbs +1 -121
- data/sig/openai/models/responses/web_search_preview_tool.rbs +96 -0
- data/sig/openai/models/responses/web_search_tool.rbs +39 -10
- data/sig/openai/models/webhooks/realtime_call_incoming_webhook_event.rbs +90 -0
- data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +1 -0
- data/sig/openai/models.rbs +2 -0
- data/sig/openai/resources/realtime/client_secrets.rbs +15 -0
- data/sig/openai/resources/realtime.rbs +9 -0
- data/sig/openai/resources/webhooks.rbs +1 -0
- metadata +287 -2
@@ -0,0 +1,69 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
module Realtime
|
6
|
+
class ResponseTextDoneEvent < OpenAI::Internal::Type::BaseModel
|
7
|
+
# @!attribute content_index
|
8
|
+
# The index of the content part in the item's content array.
|
9
|
+
#
|
10
|
+
# @return [Integer]
|
11
|
+
required :content_index, Integer
|
12
|
+
|
13
|
+
# @!attribute event_id
|
14
|
+
# The unique ID of the server event.
|
15
|
+
#
|
16
|
+
# @return [String]
|
17
|
+
required :event_id, String
|
18
|
+
|
19
|
+
# @!attribute item_id
|
20
|
+
# The ID of the item.
|
21
|
+
#
|
22
|
+
# @return [String]
|
23
|
+
required :item_id, String
|
24
|
+
|
25
|
+
# @!attribute output_index
|
26
|
+
# The index of the output item in the response.
|
27
|
+
#
|
28
|
+
# @return [Integer]
|
29
|
+
required :output_index, Integer
|
30
|
+
|
31
|
+
# @!attribute response_id
|
32
|
+
# The ID of the response.
|
33
|
+
#
|
34
|
+
# @return [String]
|
35
|
+
required :response_id, String
|
36
|
+
|
37
|
+
# @!attribute text
|
38
|
+
# The final text content.
|
39
|
+
#
|
40
|
+
# @return [String]
|
41
|
+
required :text, String
|
42
|
+
|
43
|
+
# @!attribute type
|
44
|
+
# The event type, must be `response.output_text.done`.
|
45
|
+
#
|
46
|
+
# @return [Symbol, :"response.output_text.done"]
|
47
|
+
required :type, const: :"response.output_text.done"
|
48
|
+
|
49
|
+
# @!method initialize(content_index:, event_id:, item_id:, output_index:, response_id:, text:, type: :"response.output_text.done")
|
50
|
+
# Returned when the text value of an "output_text" content part is done streaming.
|
51
|
+
# Also emitted when a Response is interrupted, incomplete, or cancelled.
|
52
|
+
#
|
53
|
+
# @param content_index [Integer] The index of the content part in the item's content array.
|
54
|
+
#
|
55
|
+
# @param event_id [String] The unique ID of the server event.
|
56
|
+
#
|
57
|
+
# @param item_id [String] The ID of the item.
|
58
|
+
#
|
59
|
+
# @param output_index [Integer] The index of the output item in the response.
|
60
|
+
#
|
61
|
+
# @param response_id [String] The ID of the response.
|
62
|
+
#
|
63
|
+
# @param text [String] The final text content.
|
64
|
+
#
|
65
|
+
# @param type [Symbol, :"response.output_text.done"] The event type, must be `response.output_text.done`.
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
module Realtime
|
6
|
+
class SessionCreatedEvent < OpenAI::Internal::Type::BaseModel
|
7
|
+
# @!attribute event_id
|
8
|
+
# The unique ID of the server event.
|
9
|
+
#
|
10
|
+
# @return [String]
|
11
|
+
required :event_id, String
|
12
|
+
|
13
|
+
# @!attribute session
|
14
|
+
# Realtime session object.
|
15
|
+
#
|
16
|
+
# @return [OpenAI::Models::Realtime::RealtimeSession]
|
17
|
+
required :session, -> { OpenAI::Realtime::RealtimeSession }
|
18
|
+
|
19
|
+
# @!attribute type
|
20
|
+
# The event type, must be `session.created`.
|
21
|
+
#
|
22
|
+
# @return [Symbol, :"session.created"]
|
23
|
+
required :type, const: :"session.created"
|
24
|
+
|
25
|
+
# @!method initialize(event_id:, session:, type: :"session.created")
|
26
|
+
# Returned when a Session is created. Emitted automatically when a new connection
|
27
|
+
# is established as the first server event. This event will contain the default
|
28
|
+
# Session configuration.
|
29
|
+
#
|
30
|
+
# @param event_id [String] The unique ID of the server event.
|
31
|
+
#
|
32
|
+
# @param session [OpenAI::Models::Realtime::RealtimeSession] Realtime session object.
|
33
|
+
#
|
34
|
+
# @param type [Symbol, :"session.created"] The event type, must be `session.created`.
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
module Realtime
|
6
|
+
class SessionUpdateEvent < OpenAI::Internal::Type::BaseModel
|
7
|
+
# @!attribute session
|
8
|
+
# Realtime session object configuration.
|
9
|
+
#
|
10
|
+
# @return [OpenAI::Models::Realtime::RealtimeSessionCreateRequest]
|
11
|
+
required :session, -> { OpenAI::Realtime::RealtimeSessionCreateRequest }
|
12
|
+
|
13
|
+
# @!attribute type
|
14
|
+
# The event type, must be `session.update`.
|
15
|
+
#
|
16
|
+
# @return [Symbol, :"session.update"]
|
17
|
+
required :type, const: :"session.update"
|
18
|
+
|
19
|
+
# @!attribute event_id
|
20
|
+
# Optional client-generated ID used to identify this event.
|
21
|
+
#
|
22
|
+
# @return [String, nil]
|
23
|
+
optional :event_id, String
|
24
|
+
|
25
|
+
# @!method initialize(session:, event_id: nil, type: :"session.update")
|
26
|
+
# Send this event to update the session’s default configuration. The client may
|
27
|
+
# send this event at any time to update any field, except for `voice`. However,
|
28
|
+
# note that once a session has been initialized with a particular `model`, it
|
29
|
+
# can’t be changed to another model using `session.update`.
|
30
|
+
#
|
31
|
+
# When the server receives a `session.update`, it will respond with a
|
32
|
+
# `session.updated` event showing the full, effective configuration. Only the
|
33
|
+
# fields that are present are updated. To clear a field like `instructions`, pass
|
34
|
+
# an empty string.
|
35
|
+
#
|
36
|
+
# @param session [OpenAI::Models::Realtime::RealtimeSessionCreateRequest] Realtime session object configuration.
|
37
|
+
#
|
38
|
+
# @param event_id [String] Optional client-generated ID used to identify this event.
|
39
|
+
#
|
40
|
+
# @param type [Symbol, :"session.update"] The event type, must be `session.update`.
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
module Realtime
|
6
|
+
class SessionUpdatedEvent < OpenAI::Internal::Type::BaseModel
|
7
|
+
# @!attribute event_id
|
8
|
+
# The unique ID of the server event.
|
9
|
+
#
|
10
|
+
# @return [String]
|
11
|
+
required :event_id, String
|
12
|
+
|
13
|
+
# @!attribute session
|
14
|
+
# Realtime session object.
|
15
|
+
#
|
16
|
+
# @return [OpenAI::Models::Realtime::RealtimeSession]
|
17
|
+
required :session, -> { OpenAI::Realtime::RealtimeSession }
|
18
|
+
|
19
|
+
# @!attribute type
|
20
|
+
# The event type, must be `session.updated`.
|
21
|
+
#
|
22
|
+
# @return [Symbol, :"session.updated"]
|
23
|
+
required :type, const: :"session.updated"
|
24
|
+
|
25
|
+
# @!method initialize(event_id:, session:, type: :"session.updated")
|
26
|
+
# Returned when a session is updated with a `session.update` event, unless there
|
27
|
+
# is an error.
|
28
|
+
#
|
29
|
+
# @param event_id [String] The unique ID of the server event.
|
30
|
+
#
|
31
|
+
# @param session [OpenAI::Models::Realtime::RealtimeSession] Realtime session object.
|
32
|
+
#
|
33
|
+
# @param type [Symbol, :"session.updated"] The event type, must be `session.updated`.
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
@@ -0,0 +1,278 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
module Realtime
|
6
|
+
class TranscriptionSessionCreated < OpenAI::Internal::Type::BaseModel
|
7
|
+
# @!attribute event_id
|
8
|
+
# The unique ID of the server event.
|
9
|
+
#
|
10
|
+
# @return [String]
|
11
|
+
required :event_id, String
|
12
|
+
|
13
|
+
# @!attribute session
|
14
|
+
# A Realtime transcription session configuration object.
|
15
|
+
#
|
16
|
+
# @return [OpenAI::Models::Realtime::TranscriptionSessionCreated::Session]
|
17
|
+
required :session, -> { OpenAI::Realtime::TranscriptionSessionCreated::Session }
|
18
|
+
|
19
|
+
# @!attribute type
|
20
|
+
# The event type, must be `transcription_session.created`.
|
21
|
+
#
|
22
|
+
# @return [Symbol, :"transcription_session.created"]
|
23
|
+
required :type, const: :"transcription_session.created"
|
24
|
+
|
25
|
+
# @!method initialize(event_id:, session:, type: :"transcription_session.created")
|
26
|
+
# Some parameter documentations has been truncated, see
|
27
|
+
# {OpenAI::Models::Realtime::TranscriptionSessionCreated} for more details.
|
28
|
+
#
|
29
|
+
# Returned when a transcription session is created.
|
30
|
+
#
|
31
|
+
# @param event_id [String] The unique ID of the server event.
|
32
|
+
#
|
33
|
+
# @param session [OpenAI::Models::Realtime::TranscriptionSessionCreated::Session] A Realtime transcription session configuration object.
|
34
|
+
#
|
35
|
+
# @param type [Symbol, :"transcription_session.created"] The event type, must be `transcription_session.created`.
|
36
|
+
|
37
|
+
# @see OpenAI::Models::Realtime::TranscriptionSessionCreated#session
|
38
|
+
class Session < OpenAI::Internal::Type::BaseModel
|
39
|
+
# @!attribute id
|
40
|
+
# Unique identifier for the session that looks like `sess_1234567890abcdef`.
|
41
|
+
#
|
42
|
+
# @return [String, nil]
|
43
|
+
optional :id, String
|
44
|
+
|
45
|
+
# @!attribute audio
|
46
|
+
# Configuration for input audio for the session.
|
47
|
+
#
|
48
|
+
# @return [OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio, nil]
|
49
|
+
optional :audio, -> { OpenAI::Realtime::TranscriptionSessionCreated::Session::Audio }
|
50
|
+
|
51
|
+
# @!attribute expires_at
|
52
|
+
# Expiration timestamp for the session, in seconds since epoch.
|
53
|
+
#
|
54
|
+
# @return [Integer, nil]
|
55
|
+
optional :expires_at, Integer
|
56
|
+
|
57
|
+
# @!attribute include
|
58
|
+
# Additional fields to include in server outputs.
|
59
|
+
#
|
60
|
+
# - `item.input_audio_transcription.logprobs`: Include logprobs for input audio
|
61
|
+
# transcription.
|
62
|
+
#
|
63
|
+
# @return [Array<Symbol, OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Include>, nil]
|
64
|
+
optional :include,
|
65
|
+
-> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Realtime::TranscriptionSessionCreated::Session::Include] }
|
66
|
+
|
67
|
+
# @!attribute object
|
68
|
+
# The object type. Always `realtime.transcription_session`.
|
69
|
+
#
|
70
|
+
# @return [String, nil]
|
71
|
+
optional :object, String
|
72
|
+
|
73
|
+
# @!method initialize(id: nil, audio: nil, expires_at: nil, include: nil, object: nil)
|
74
|
+
# Some parameter documentations has been truncated, see
|
75
|
+
# {OpenAI::Models::Realtime::TranscriptionSessionCreated::Session} for more
|
76
|
+
# details.
|
77
|
+
#
|
78
|
+
# A Realtime transcription session configuration object.
|
79
|
+
#
|
80
|
+
# @param id [String] Unique identifier for the session that looks like `sess_1234567890abcdef`.
|
81
|
+
#
|
82
|
+
# @param audio [OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio] Configuration for input audio for the session.
|
83
|
+
#
|
84
|
+
# @param expires_at [Integer] Expiration timestamp for the session, in seconds since epoch.
|
85
|
+
#
|
86
|
+
# @param include [Array<Symbol, OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Include>] Additional fields to include in server outputs.
|
87
|
+
#
|
88
|
+
# @param object [String] The object type. Always `realtime.transcription_session`.
|
89
|
+
|
90
|
+
# @see OpenAI::Models::Realtime::TranscriptionSessionCreated::Session#audio
|
91
|
+
class Audio < OpenAI::Internal::Type::BaseModel
|
92
|
+
# @!attribute input
|
93
|
+
#
|
94
|
+
# @return [OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input, nil]
|
95
|
+
optional :input, -> { OpenAI::Realtime::TranscriptionSessionCreated::Session::Audio::Input }
|
96
|
+
|
97
|
+
# @!method initialize(input: nil)
|
98
|
+
# Configuration for input audio for the session.
|
99
|
+
#
|
100
|
+
# @param input [OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input]
|
101
|
+
|
102
|
+
# @see OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio#input
|
103
|
+
class Input < OpenAI::Internal::Type::BaseModel
|
104
|
+
# @!attribute format_
|
105
|
+
# The format of input audio. Options are `pcm16`, `g711_ulaw`, or `g711_alaw`.
|
106
|
+
#
|
107
|
+
# @return [String, nil]
|
108
|
+
optional :format_, String, api_name: :format
|
109
|
+
|
110
|
+
# @!attribute noise_reduction
|
111
|
+
# Configuration for input audio noise reduction.
|
112
|
+
#
|
113
|
+
# @return [OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input::NoiseReduction, nil]
|
114
|
+
optional :noise_reduction,
|
115
|
+
-> { OpenAI::Realtime::TranscriptionSessionCreated::Session::Audio::Input::NoiseReduction }
|
116
|
+
|
117
|
+
# @!attribute transcription
|
118
|
+
# Configuration of the transcription model.
|
119
|
+
#
|
120
|
+
# @return [OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input::Transcription, nil]
|
121
|
+
optional :transcription,
|
122
|
+
-> { OpenAI::Realtime::TranscriptionSessionCreated::Session::Audio::Input::Transcription }
|
123
|
+
|
124
|
+
# @!attribute turn_detection
|
125
|
+
# Configuration for turn detection.
|
126
|
+
#
|
127
|
+
# @return [OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input::TurnDetection, nil]
|
128
|
+
optional :turn_detection,
|
129
|
+
-> { OpenAI::Realtime::TranscriptionSessionCreated::Session::Audio::Input::TurnDetection }
|
130
|
+
|
131
|
+
# @!method initialize(format_: nil, noise_reduction: nil, transcription: nil, turn_detection: nil)
|
132
|
+
# Some parameter documentations has been truncated, see
|
133
|
+
# {OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input}
|
134
|
+
# for more details.
|
135
|
+
#
|
136
|
+
# @param format_ [String] The format of input audio. Options are `pcm16`, `g711_ulaw`, or `g711_alaw`.
|
137
|
+
#
|
138
|
+
# @param noise_reduction [OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input::NoiseReduction] Configuration for input audio noise reduction.
|
139
|
+
#
|
140
|
+
# @param transcription [OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input::Transcription] Configuration of the transcription model.
|
141
|
+
#
|
142
|
+
# @param turn_detection [OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input::TurnDetection] Configuration for turn detection.
|
143
|
+
|
144
|
+
# @see OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input#noise_reduction
|
145
|
+
class NoiseReduction < OpenAI::Internal::Type::BaseModel
|
146
|
+
# @!attribute type
|
147
|
+
#
|
148
|
+
# @return [Symbol, OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input::NoiseReduction::Type, nil]
|
149
|
+
optional :type,
|
150
|
+
enum: -> { OpenAI::Realtime::TranscriptionSessionCreated::Session::Audio::Input::NoiseReduction::Type }
|
151
|
+
|
152
|
+
# @!method initialize(type: nil)
|
153
|
+
# Configuration for input audio noise reduction.
|
154
|
+
#
|
155
|
+
# @param type [Symbol, OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input::NoiseReduction::Type]
|
156
|
+
|
157
|
+
# @see OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input::NoiseReduction#type
|
158
|
+
module Type
|
159
|
+
extend OpenAI::Internal::Type::Enum
|
160
|
+
|
161
|
+
NEAR_FIELD = :near_field
|
162
|
+
FAR_FIELD = :far_field
|
163
|
+
|
164
|
+
# @!method self.values
|
165
|
+
# @return [Array<Symbol>]
|
166
|
+
end
|
167
|
+
end
|
168
|
+
|
169
|
+
# @see OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input#transcription
|
170
|
+
class Transcription < OpenAI::Internal::Type::BaseModel
|
171
|
+
# @!attribute language
|
172
|
+
# The language of the input audio. Supplying the input language in
|
173
|
+
# [ISO-639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) (e.g. `en`)
|
174
|
+
# format will improve accuracy and latency.
|
175
|
+
#
|
176
|
+
# @return [String, nil]
|
177
|
+
optional :language, String
|
178
|
+
|
179
|
+
# @!attribute model
|
180
|
+
# The model to use for transcription. Can be `gpt-4o-transcribe`,
|
181
|
+
# `gpt-4o-mini-transcribe`, or `whisper-1`.
|
182
|
+
#
|
183
|
+
# @return [Symbol, OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input::Transcription::Model, nil]
|
184
|
+
optional :model,
|
185
|
+
enum: -> { OpenAI::Realtime::TranscriptionSessionCreated::Session::Audio::Input::Transcription::Model }
|
186
|
+
|
187
|
+
# @!attribute prompt
|
188
|
+
# An optional text to guide the model's style or continue a previous audio
|
189
|
+
# segment. The
|
190
|
+
# [prompt](https://platform.openai.com/docs/guides/speech-to-text#prompting)
|
191
|
+
# should match the audio language.
|
192
|
+
#
|
193
|
+
# @return [String, nil]
|
194
|
+
optional :prompt, String
|
195
|
+
|
196
|
+
# @!method initialize(language: nil, model: nil, prompt: nil)
|
197
|
+
# Some parameter documentations has been truncated, see
|
198
|
+
# {OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input::Transcription}
|
199
|
+
# for more details.
|
200
|
+
#
|
201
|
+
# Configuration of the transcription model.
|
202
|
+
#
|
203
|
+
# @param language [String] The language of the input audio. Supplying the input language in
|
204
|
+
#
|
205
|
+
# @param model [Symbol, OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input::Transcription::Model] The model to use for transcription. Can be `gpt-4o-transcribe`, `gpt-4o-mini-tra
|
206
|
+
#
|
207
|
+
# @param prompt [String] An optional text to guide the model's style or continue a previous audio segment
|
208
|
+
|
209
|
+
# The model to use for transcription. Can be `gpt-4o-transcribe`,
|
210
|
+
# `gpt-4o-mini-transcribe`, or `whisper-1`.
|
211
|
+
#
|
212
|
+
# @see OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input::Transcription#model
|
213
|
+
module Model
|
214
|
+
extend OpenAI::Internal::Type::Enum
|
215
|
+
|
216
|
+
GPT_4O_TRANSCRIBE = :"gpt-4o-transcribe"
|
217
|
+
GPT_4O_MINI_TRANSCRIBE = :"gpt-4o-mini-transcribe"
|
218
|
+
WHISPER_1 = :"whisper-1"
|
219
|
+
|
220
|
+
# @!method self.values
|
221
|
+
# @return [Array<Symbol>]
|
222
|
+
end
|
223
|
+
end
|
224
|
+
|
225
|
+
# @see OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input#turn_detection
|
226
|
+
class TurnDetection < OpenAI::Internal::Type::BaseModel
|
227
|
+
# @!attribute prefix_padding_ms
|
228
|
+
#
|
229
|
+
# @return [Integer, nil]
|
230
|
+
optional :prefix_padding_ms, Integer
|
231
|
+
|
232
|
+
# @!attribute silence_duration_ms
|
233
|
+
#
|
234
|
+
# @return [Integer, nil]
|
235
|
+
optional :silence_duration_ms, Integer
|
236
|
+
|
237
|
+
# @!attribute threshold
|
238
|
+
#
|
239
|
+
# @return [Float, nil]
|
240
|
+
optional :threshold, Float
|
241
|
+
|
242
|
+
# @!attribute type
|
243
|
+
# Type of turn detection, only `server_vad` is currently supported.
|
244
|
+
#
|
245
|
+
# @return [String, nil]
|
246
|
+
optional :type, String
|
247
|
+
|
248
|
+
# @!method initialize(prefix_padding_ms: nil, silence_duration_ms: nil, threshold: nil, type: nil)
|
249
|
+
# Some parameter documentations has been truncated, see
|
250
|
+
# {OpenAI::Models::Realtime::TranscriptionSessionCreated::Session::Audio::Input::TurnDetection}
|
251
|
+
# for more details.
|
252
|
+
#
|
253
|
+
# Configuration for turn detection.
|
254
|
+
#
|
255
|
+
# @param prefix_padding_ms [Integer]
|
256
|
+
#
|
257
|
+
# @param silence_duration_ms [Integer]
|
258
|
+
#
|
259
|
+
# @param threshold [Float]
|
260
|
+
#
|
261
|
+
# @param type [String] Type of turn detection, only `server_vad` is currently supported.
|
262
|
+
end
|
263
|
+
end
|
264
|
+
end
|
265
|
+
|
266
|
+
module Include
|
267
|
+
extend OpenAI::Internal::Type::Enum
|
268
|
+
|
269
|
+
ITEM_INPUT_AUDIO_TRANSCRIPTION_LOGPROBS = :"item.input_audio_transcription.logprobs"
|
270
|
+
|
271
|
+
# @!method self.values
|
272
|
+
# @return [Array<Symbol>]
|
273
|
+
end
|
274
|
+
end
|
275
|
+
end
|
276
|
+
end
|
277
|
+
end
|
278
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
module Realtime
|
6
|
+
class TranscriptionSessionUpdate < OpenAI::Internal::Type::BaseModel
|
7
|
+
# @!attribute session
|
8
|
+
# Realtime transcription session object configuration.
|
9
|
+
#
|
10
|
+
# @return [OpenAI::Models::Realtime::RealtimeTranscriptionSessionCreateRequest]
|
11
|
+
required :session, -> { OpenAI::Realtime::RealtimeTranscriptionSessionCreateRequest }
|
12
|
+
|
13
|
+
# @!attribute type
|
14
|
+
# The event type, must be `transcription_session.update`.
|
15
|
+
#
|
16
|
+
# @return [Symbol, :"transcription_session.update"]
|
17
|
+
required :type, const: :"transcription_session.update"
|
18
|
+
|
19
|
+
# @!attribute event_id
|
20
|
+
# Optional client-generated ID used to identify this event.
|
21
|
+
#
|
22
|
+
# @return [String, nil]
|
23
|
+
optional :event_id, String
|
24
|
+
|
25
|
+
# @!method initialize(session:, event_id: nil, type: :"transcription_session.update")
|
26
|
+
# Send this event to update a transcription session.
|
27
|
+
#
|
28
|
+
# @param session [OpenAI::Models::Realtime::RealtimeTranscriptionSessionCreateRequest] Realtime transcription session object configuration.
|
29
|
+
#
|
30
|
+
# @param event_id [String] Optional client-generated ID used to identify this event.
|
31
|
+
#
|
32
|
+
# @param type [Symbol, :"transcription_session.update"] The event type, must be `transcription_session.update`.
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|