openai 0.113.0 → 0.115.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 +54 -0
- data/README.md +17 -2
- data/docs/architecture/security-model.md +11 -16
- data/examples/responses/websocket_workflows.rb +78 -3
- data/lib/openai/auth/subject_token_providers/azure_managed_identity_token_provider.rb +10 -8
- data/lib/openai/auth/subject_token_providers/gcp_id_token_provider.rb +8 -7
- data/lib/openai/helpers/chat/tool_runner.rb +1 -1
- data/lib/openai/helpers/live/websocket.rb +31 -0
- data/lib/openai/helpers/realtime/connection.rb +33 -0
- data/lib/openai/helpers/realtime/connection_manager.rb +1 -0
- data/lib/openai/helpers/realtime/conversation_item_variant_resolver.rb +5 -0
- data/lib/openai/helpers/realtime/recovery.rb +5 -1
- data/lib/openai/helpers/realtime/translation.rb +5 -0
- data/lib/openai/helpers/realtime/transports/async_websocket.rb +19 -0
- data/lib/openai/helpers/responses_websocket/connection.rb +53 -15
- data/lib/openai/helpers/responses_websocket/connection_manager.rb +1 -0
- data/lib/openai/helpers/responses_websocket/connection_resources.rb +1 -1
- data/lib/openai/helpers/structured_output/response_parser.rb +1 -0
- data/lib/openai/helpers/structured_output.rb +58 -0
- data/lib/openai/helpers/websocket/connection_manager.rb +11 -0
- data/lib/openai/helpers/websocket/resource.rb +1 -0
- data/lib/openai/helpers/websocket/typed_connection.rb +1 -0
- data/lib/openai/internal/type/array_of.rb +1 -1
- data/lib/openai/internal/type/hash_of.rb +1 -1
- data/lib/openai/internal/type/request_parameters.rb +2 -1
- data/lib/openai/internal/type/union.rb +18 -6
- data/lib/openai/models/admin/organization/external_key.rb +169 -0
- data/lib/openai/models/admin/organization/external_key_create_params.rb +311 -0
- data/lib/openai/models/admin/organization/external_key_delete_params.rb +24 -0
- data/lib/openai/models/admin/organization/external_key_list_params.rb +69 -0
- data/lib/openai/models/admin/organization/external_key_retrieve_params.rb +24 -0
- data/lib/openai/models/admin/organization/external_key_validate_params.rb +24 -0
- data/lib/openai/models/admin/organization/external_key_validate_response.rb +20 -0
- data/lib/openai/models/audio/speech_model.rb +12 -0
- data/lib/openai/models/audio_model.rb +15 -0
- data/lib/openai/models/beta/agent.rb +49 -1
- data/lib/openai/models/beta/agent_create_params.rb +51 -1
- data/lib/openai/models/beta/agent_session.rb +75 -2
- data/lib/openai/models/beta/agent_update_params.rb +62 -1
- data/lib/openai/models/beta/agents/session_create_params.rb +94 -2
- data/lib/openai/models/beta/agents/session_list_params.rb +16 -1
- data/lib/openai/models/beta/agents/session_update_params.rb +50 -5
- data/lib/openai/models/beta/assistant_update_params.rb +18 -0
- data/lib/openai/models/beta/beta_response.rb +224 -1
- data/lib/openai/models/beta/beta_response_configuration_update_item.rb +64 -3
- data/lib/openai/models/beta/beta_response_configuration_update_item_param.rb +64 -4
- data/lib/openai/models/beta/beta_response_input_file.rb +9 -9
- data/lib/openai/models/beta/beta_response_input_file_content.rb +9 -9
- data/lib/openai/models/beta/beta_response_input_image.rb +9 -9
- data/lib/openai/models/beta/beta_response_input_image_content.rb +9 -9
- data/lib/openai/models/beta/beta_response_input_item.rb +2 -3
- data/lib/openai/models/beta/beta_response_input_text.rb +9 -9
- data/lib/openai/models/beta/beta_response_input_text_content.rb +9 -9
- data/lib/openai/models/beta/beta_response_item.rb +11 -11
- data/lib/openai/models/beta/beta_response_output_item.rb +9 -9
- data/lib/openai/models/beta/beta_response_tool_search_output_item_param.rb +6 -6
- data/lib/openai/models/beta/beta_responses_client_event.rb +20 -1
- data/lib/openai/models/beta/beta_tool.rb +6 -6
- data/lib/openai/models/beta/response_compact_params.rb +6 -0
- data/lib/openai/models/beta/response_create_params.rb +6 -0
- data/lib/openai/models/chat/chat_completion_content_part.rb +9 -9
- data/lib/openai/models/chat/chat_completion_content_part_image.rb +9 -9
- data/lib/openai/models/chat/chat_completion_content_part_input_audio.rb +9 -9
- data/lib/openai/models/chat/chat_completion_content_part_text.rb +9 -9
- data/lib/openai/models/chat_model.rb +6 -0
- data/lib/openai/models/conversations/computer_screenshot_content.rb +9 -9
- data/lib/openai/models/conversations/conversation_item.rb +2 -2
- data/lib/openai/models/image_edit_params.rb +46 -25
- data/lib/openai/models/live/fork_server_event.rb +43 -3
- data/lib/openai/models/live/server_event.rb +43 -3
- data/lib/openai/models/live/sideband_client_event.rb +40 -1
- data/lib/openai/models/live/sideband_server_event.rb +43 -3
- data/lib/openai/models/realtime/audio_transcription.rb +15 -0
- data/lib/openai/models/realtime/conversation_item_added.rb +2 -2
- data/lib/openai/models/realtime/conversation_item_create_event.rb +2 -2
- data/lib/openai/models/realtime/conversation_item_created_event.rb +2 -2
- data/lib/openai/models/realtime/conversation_item_done.rb +2 -2
- data/lib/openai/models/realtime/realtime_response.rb +2 -2
- data/lib/openai/models/realtime/realtime_response_create_params.rb +2 -2
- data/lib/openai/models/realtime/realtime_server_event.rb +2 -2
- data/lib/openai/models/realtime/realtime_session.rb +18 -0
- data/lib/openai/models/realtime/realtime_session_create_request.rb +18 -0
- data/lib/openai/models/realtime/realtime_session_create_response.rb +18 -0
- data/lib/openai/models/realtime/response_output_item_added_event.rb +2 -2
- data/lib/openai/models/realtime/response_output_item_done_event.rb +2 -2
- data/lib/openai/models/responses/response.rb +221 -1
- data/lib/openai/models/responses/response_compact_params.rb +6 -0
- data/lib/openai/models/responses/response_configuration_update_item.rb +50 -3
- data/lib/openai/models/responses/response_configuration_update_item_param.rb +50 -4
- data/lib/openai/models/responses/response_input_file.rb +9 -9
- data/lib/openai/models/responses/response_input_file_content.rb +9 -9
- data/lib/openai/models/responses/response_input_image.rb +9 -9
- data/lib/openai/models/responses/response_input_image_content.rb +9 -9
- data/lib/openai/models/responses/response_input_item.rb +2 -3
- data/lib/openai/models/responses/response_input_text.rb +9 -9
- data/lib/openai/models/responses/response_input_text_content.rb +9 -9
- data/lib/openai/models/responses/response_item.rb +2 -2
- data/lib/openai/models/responses/response_tool_search_output_item_param.rb +6 -6
- data/lib/openai/models/responses/responses_client_event.rb +14 -1
- data/lib/openai/models/responses/tool.rb +6 -6
- data/lib/openai/net_http_client.rb +6 -0
- data/lib/openai/providers/vertex.rb +0 -10
- data/lib/openai/resources/admin/organization/external_keys.rb +132 -0
- data/lib/openai/resources/admin/organization.rb +4 -0
- data/lib/openai/resources/audio/speech.rb +8 -0
- data/lib/openai/resources/audio/translations.rb +8 -0
- data/lib/openai/resources/beta/agents/sessions.rb +22 -6
- data/lib/openai/resources/beta/agents.rb +17 -2
- data/lib/openai/resources/images.rb +36 -18
- data/lib/openai/version.rb +1 -1
- data/lib/openai.rb +8 -0
- data/rbi/openai/helpers/live/websocket.rbi +1 -12
- data/rbi/openai/helpers/realtime/connection.rbi +5 -0
- data/rbi/openai/helpers/realtime/transports/async_websocket.rbi +5 -0
- data/rbi/openai/helpers/responses_websocket/connection.rbi +7 -2
- data/rbi/openai/helpers/structured_output.rbi +10 -0
- data/rbi/openai/internal/type/array_of.rbi +1 -1
- data/rbi/openai/internal/type/hash_of.rbi +1 -1
- data/rbi/openai/internal/type/union.rbi +5 -0
- data/rbi/openai/models/admin/organization/external_key.rbi +301 -0
- data/rbi/openai/models/admin/organization/external_key_create_params.rbi +532 -0
- data/rbi/openai/models/admin/organization/external_key_delete_params.rbi +57 -0
- data/rbi/openai/models/admin/organization/external_key_list_params.rbi +129 -0
- data/rbi/openai/models/admin/organization/external_key_retrieve_params.rbi +57 -0
- data/rbi/openai/models/admin/organization/external_key_validate_params.rbi +57 -0
- data/rbi/openai/models/admin/organization/external_key_validate_response.rbi +50 -0
- data/rbi/openai/models/beta/agent.rbi +103 -1
- data/rbi/openai/models/beta/agent_create_params.rbi +109 -0
- data/rbi/openai/models/beta/agent_session.rbi +136 -3
- data/rbi/openai/models/beta/agent_update_params.rbi +120 -0
- data/rbi/openai/models/beta/agents/session_create_params.rbi +153 -0
- data/rbi/openai/models/beta/agents/session_list_params.rbi +19 -0
- data/rbi/openai/models/beta/agents/session_update_params.rbi +94 -6
- data/rbi/openai/models/beta/beta_response.rbi +394 -0
- data/rbi/openai/models/beta/beta_response_configuration_update_item.rbi +113 -3
- data/rbi/openai/models/beta/beta_response_configuration_update_item_param.rbi +125 -4
- data/rbi/openai/models/beta/beta_response_input_file.rbi +9 -9
- data/rbi/openai/models/beta/beta_response_input_file_content.rbi +9 -9
- data/rbi/openai/models/beta/beta_response_input_image.rbi +9 -9
- data/rbi/openai/models/beta/beta_response_input_image_content.rbi +9 -9
- data/rbi/openai/models/beta/beta_response_input_text.rbi +9 -9
- data/rbi/openai/models/beta/beta_response_input_text_content.rbi +9 -9
- data/rbi/openai/models/beta/beta_response_item.rbi +9 -9
- data/rbi/openai/models/beta/beta_response_output_item.rbi +9 -9
- data/rbi/openai/models/beta/beta_response_tool_search_output_item_param.rbi +6 -6
- data/rbi/openai/models/beta/beta_responses_client_event.rbi +17 -0
- data/rbi/openai/models/beta/beta_tool.rbi +6 -6
- data/rbi/openai/models/chat/chat_completion_content_part.rbi +9 -9
- data/rbi/openai/models/chat/chat_completion_content_part_image.rbi +9 -9
- data/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi +9 -9
- data/rbi/openai/models/chat/chat_completion_content_part_text.rbi +9 -9
- data/rbi/openai/models/conversations/computer_screenshot_content.rbi +9 -9
- data/rbi/openai/models/decision_create_params.rbi +4 -1
- data/rbi/openai/models/image_edit_params.rbi +49 -24
- data/rbi/openai/models/live/fork_server_event.rbi +65 -1
- data/rbi/openai/models/live/server_event.rbi +65 -1
- data/rbi/openai/models/live/sideband_client_event.rbi +60 -0
- data/rbi/openai/models/live/sideband_server_event.rbi +65 -1
- data/rbi/openai/models/realtime/conversation_item_added.rbi +6 -3
- data/rbi/openai/models/realtime/conversation_item_create_event.rbi +6 -3
- data/rbi/openai/models/realtime/conversation_item_created_event.rbi +6 -3
- data/rbi/openai/models/realtime/conversation_item_done.rbi +6 -3
- data/rbi/openai/models/realtime/realtime_response.rbi +8 -4
- data/rbi/openai/models/realtime/realtime_response_create_params.rbi +8 -4
- data/rbi/openai/models/realtime/realtime_server_event.rbi +6 -3
- data/rbi/openai/models/realtime/response_output_item_added_event.rbi +6 -3
- data/rbi/openai/models/realtime/response_output_item_done_event.rbi +6 -3
- data/rbi/openai/models/responses/response.rbi +394 -0
- data/rbi/openai/models/responses/response_configuration_update_item.rbi +76 -3
- data/rbi/openai/models/responses/response_configuration_update_item_param.rbi +74 -4
- data/rbi/openai/models/responses/response_input_file.rbi +9 -9
- data/rbi/openai/models/responses/response_input_file_content.rbi +9 -9
- data/rbi/openai/models/responses/response_input_image.rbi +9 -9
- data/rbi/openai/models/responses/response_input_image_content.rbi +9 -9
- data/rbi/openai/models/responses/response_input_text.rbi +9 -9
- data/rbi/openai/models/responses/response_input_text_content.rbi +9 -9
- data/rbi/openai/models/responses/response_tool_search_output_item_param.rbi +6 -6
- data/rbi/openai/models/responses/responses_client_event.rbi +17 -0
- data/rbi/openai/models/responses/tool.rbi +6 -6
- data/rbi/openai/net_http_client.rbi +5 -0
- data/rbi/openai/resources/admin/organization/external_keys.rbi +86 -0
- data/rbi/openai/resources/admin/organization.rbi +3 -0
- data/rbi/openai/resources/audio/speech.rbi +8 -0
- data/rbi/openai/resources/audio/translations.rbi +6 -0
- data/rbi/openai/resources/beta/agents/sessions.rbi +18 -2
- data/rbi/openai/resources/beta/agents.rbi +15 -0
- data/rbi/openai/resources/images.rbi +34 -16
- data/rbi/openai/resources/responses.rbi +2 -0
- data/realtime.md +6 -0
- data/responses-websocket.md +53 -0
- data/sig/openai/helpers/live/websocket.rbs +1 -9
- data/sig/openai/helpers/realtime/connection.rbs +3 -0
- data/sig/openai/helpers/realtime/transports/async_websocket.rbs +3 -0
- data/sig/openai/helpers/responses_websocket/connection.rbs +7 -1
- data/sig/openai/helpers/structured_output.rbs +9 -0
- data/sig/openai/internal/type/union.rbs +4 -0
- data/sig/openai/models/admin/organization/external_key.rbs +186 -0
- data/sig/openai/models/admin/organization/external_key_create_params.rbs +423 -0
- data/sig/openai/models/admin/organization/external_key_delete_params.rbs +27 -0
- data/sig/openai/models/admin/organization/external_key_list_params.rbs +81 -0
- data/sig/openai/models/admin/organization/external_key_retrieve_params.rbs +27 -0
- data/sig/openai/models/admin/organization/external_key_validate_params.rbs +27 -0
- data/sig/openai/models/admin/organization/external_key_validate_response.rbs +17 -0
- data/sig/openai/models/admin/organization/external_storage_create_params.rbs +72 -2
- data/sig/openai/models/audio/speech_create_params.rbs +15 -2
- data/sig/openai/models/audio/transcription_create_params.rbs +30 -2
- data/sig/openai/models/audio/voice_create_params.rbs +47 -2
- data/sig/openai/models/beta/agent.rbs +54 -2
- data/sig/openai/models/beta/agent_create_params.rbs +54 -0
- data/sig/openai/models/beta/agent_session.rbs +82 -3
- data/sig/openai/models/beta/agent_update_params.rbs +64 -0
- data/sig/openai/models/beta/agents/session_create_params.rbs +91 -0
- data/sig/openai/models/beta/agents/session_list_params.rbs +20 -0
- data/sig/openai/models/beta/agents/session_update_params.rbs +48 -6
- data/sig/openai/models/beta/assistant_create_params.rbs +5 -2
- data/sig/openai/models/beta/beta_response.rbs +223 -0
- data/sig/openai/models/beta/beta_response_configuration_update_item.rbs +58 -2
- data/sig/openai/models/beta/beta_response_configuration_update_item_param.rbs +58 -2
- data/sig/openai/models/beta/beta_response_input_file.rbs +9 -9
- data/sig/openai/models/beta/beta_response_input_file_content.rbs +6 -6
- data/sig/openai/models/beta/beta_response_input_image.rbs +9 -9
- data/sig/openai/models/beta/beta_response_input_image_content.rbs +6 -6
- data/sig/openai/models/beta/beta_response_input_text.rbs +9 -9
- data/sig/openai/models/beta/beta_response_input_text_content.rbs +6 -6
- data/sig/openai/models/beta/beta_response_item.rbs +9 -9
- data/sig/openai/models/beta/beta_response_output_item.rbs +9 -9
- data/sig/openai/models/beta/beta_response_tool_search_output_item_param.rbs +4 -4
- data/sig/openai/models/beta/beta_responses_client_event.rbs +17 -0
- data/sig/openai/models/beta/beta_tool.rbs +4 -4
- data/sig/openai/models/beta/response_create_params.rbs +5 -2
- data/sig/openai/models/beta/responses/input_token_count_params.rbs +10 -2
- data/sig/openai/models/beta/thread_create_and_run_params.rbs +11 -5
- data/sig/openai/models/beta/thread_create_params.rbs +11 -5
- data/sig/openai/models/beta/threads/message_create_params.rbs +6 -3
- data/sig/openai/models/beta/threads/run_create_params.rbs +6 -3
- data/sig/openai/models/chat/chat_completion_content_part.rbs +9 -9
- data/sig/openai/models/chat/chat_completion_content_part_image.rbs +9 -9
- data/sig/openai/models/chat/chat_completion_content_part_input_audio.rbs +9 -9
- data/sig/openai/models/chat/chat_completion_content_part_text.rbs +9 -9
- data/sig/openai/models/conversations/computer_screenshot_content.rbs +9 -9
- data/sig/openai/models/decision_create_params.rbs +27 -2
- data/sig/openai/models/eval_create_params.rbs +25 -4
- data/sig/openai/models/evals/run_create_params.rbs +52 -8
- data/sig/openai/models/image_edit_params.rbs +47 -16
- data/sig/openai/models/live/fork_server_event.rbs +39 -0
- data/sig/openai/models/live/server_event.rbs +39 -0
- data/sig/openai/models/live/session_accept_params.rbs +39 -2
- data/sig/openai/models/live/sideband_client_event.rbs +32 -0
- data/sig/openai/models/live/sideband_server_event.rbs +39 -0
- data/sig/openai/models/realtime/conversation_item.rbs +1 -0
- data/sig/openai/models/responses/input_token_count_params.rbs +10 -2
- data/sig/openai/models/responses/response.rbs +223 -0
- data/sig/openai/models/responses/response_configuration_update_item.rbs +45 -2
- data/sig/openai/models/responses/response_configuration_update_item_param.rbs +45 -2
- data/sig/openai/models/responses/response_create_params.rbs +5 -2
- data/sig/openai/models/responses/response_input_file.rbs +9 -9
- data/sig/openai/models/responses/response_input_file_content.rbs +6 -6
- data/sig/openai/models/responses/response_input_image.rbs +9 -9
- data/sig/openai/models/responses/response_input_image_content.rbs +6 -6
- data/sig/openai/models/responses/response_input_text.rbs +9 -9
- data/sig/openai/models/responses/response_input_text_content.rbs +6 -6
- data/sig/openai/models/responses/response_tool_search_output_item_param.rbs +4 -4
- data/sig/openai/models/responses/responses_client_event.rbs +17 -0
- data/sig/openai/models/responses/tool.rbs +4 -4
- data/sig/openai/models/video_edit_params.rbs +11 -2
- data/sig/openai/models/video_extend_params.rbs +11 -2
- data/sig/openai/net_http_client.rbs +3 -0
- data/sig/openai/resources/admin/organization/external_keys.rbs +70 -0
- data/sig/openai/resources/admin/organization/external_storage.rbs +23 -1
- data/sig/openai/resources/admin/organization.rbs +2 -0
- data/sig/openai/resources/audio/speech.rbs +2 -1
- data/sig/openai/resources/audio/transcriptions.rbs +14 -2
- data/sig/openai/resources/audio/voices.rbs +14 -1
- data/sig/openai/resources/beta/agents/sessions.rbs +4 -0
- data/sig/openai/resources/beta/agents.rbs +4 -0
- data/sig/openai/resources/beta/responses/input_tokens.rbs +2 -1
- data/sig/openai/resources/beta/responses.rbs +4 -2
- data/sig/openai/resources/decisions.rbs +7 -1
- data/sig/openai/resources/images.rbs +2 -0
- data/sig/openai/resources/responses/input_tokens.rbs +2 -1
- data/sig/openai/resources/responses.rbs +5 -2
- data/sig/openai/resources/videos.rbs +2 -2
- metadata +25 -1
|
@@ -433,8 +433,14 @@ module OpenAI
|
|
|
433
433
|
|
|
434
434
|
# @!group
|
|
435
435
|
|
|
436
|
+
# @deprecated Announced shutdown date: 2027-01-20. See
|
|
437
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
438
|
+
# replacements.
|
|
436
439
|
GPT_REALTIME = :"gpt-realtime"
|
|
437
440
|
GPT_REALTIME_1_5 = :"gpt-realtime-1.5"
|
|
441
|
+
# @deprecated Announced shutdown date: 2027-01-20. See
|
|
442
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
443
|
+
# replacements.
|
|
438
444
|
GPT_REALTIME_2025_08_28 = :"gpt-realtime-2025-08-28"
|
|
439
445
|
GPT_4O_REALTIME_PREVIEW = :"gpt-4o-realtime-preview"
|
|
440
446
|
GPT_4O_REALTIME_PREVIEW_2024_10_01 = :"gpt-4o-realtime-preview-2024-10-01"
|
|
@@ -442,12 +448,24 @@ module OpenAI
|
|
|
442
448
|
GPT_4O_REALTIME_PREVIEW_2025_06_03 = :"gpt-4o-realtime-preview-2025-06-03"
|
|
443
449
|
GPT_4O_MINI_REALTIME_PREVIEW = :"gpt-4o-mini-realtime-preview"
|
|
444
450
|
GPT_4O_MINI_REALTIME_PREVIEW_2024_12_17 = :"gpt-4o-mini-realtime-preview-2024-12-17"
|
|
451
|
+
# @deprecated Announced shutdown date: 2027-01-20. See
|
|
452
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
453
|
+
# replacements.
|
|
445
454
|
GPT_REALTIME_MINI = :"gpt-realtime-mini"
|
|
446
455
|
GPT_REALTIME_MINI_2025_10_06 = :"gpt-realtime-mini-2025-10-06"
|
|
456
|
+
# @deprecated Announced shutdown date: 2027-01-20. See
|
|
457
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
458
|
+
# replacements.
|
|
447
459
|
GPT_REALTIME_MINI_2025_12_15 = :"gpt-realtime-mini-2025-12-15"
|
|
448
460
|
GPT_AUDIO_1_5 = :"gpt-audio-1.5"
|
|
461
|
+
# @deprecated Announced shutdown date: 2027-01-20. See
|
|
462
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
463
|
+
# replacements.
|
|
449
464
|
GPT_AUDIO_MINI = :"gpt-audio-mini"
|
|
450
465
|
GPT_AUDIO_MINI_2025_10_06 = :"gpt-audio-mini-2025-10-06"
|
|
466
|
+
# @deprecated Announced shutdown date: 2027-01-20. See
|
|
467
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
468
|
+
# replacements.
|
|
451
469
|
GPT_AUDIO_MINI_2025_12_15 = :"gpt-audio-mini-2025-12-15"
|
|
452
470
|
|
|
453
471
|
# @!endgroup
|
|
@@ -332,11 +332,17 @@ module OpenAI
|
|
|
332
332
|
|
|
333
333
|
# @!group
|
|
334
334
|
|
|
335
|
+
# @deprecated Announced shutdown date: 2027-01-20. See
|
|
336
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
337
|
+
# replacements.
|
|
335
338
|
GPT_REALTIME = :"gpt-realtime"
|
|
336
339
|
GPT_REALTIME_1_5 = :"gpt-realtime-1.5"
|
|
337
340
|
GPT_REALTIME_2 = :"gpt-realtime-2"
|
|
338
341
|
GPT_REALTIME_2_1 = :"gpt-realtime-2.1"
|
|
339
342
|
GPT_REALTIME_2_1_MINI = :"gpt-realtime-2.1-mini"
|
|
343
|
+
# @deprecated Announced shutdown date: 2027-01-20. See
|
|
344
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
345
|
+
# replacements.
|
|
340
346
|
GPT_REALTIME_2025_08_28 = :"gpt-realtime-2025-08-28"
|
|
341
347
|
GPT_4O_REALTIME_PREVIEW = :"gpt-4o-realtime-preview"
|
|
342
348
|
GPT_4O_REALTIME_PREVIEW_2024_10_01 = :"gpt-4o-realtime-preview-2024-10-01"
|
|
@@ -344,12 +350,24 @@ module OpenAI
|
|
|
344
350
|
GPT_4O_REALTIME_PREVIEW_2025_06_03 = :"gpt-4o-realtime-preview-2025-06-03"
|
|
345
351
|
GPT_4O_MINI_REALTIME_PREVIEW = :"gpt-4o-mini-realtime-preview"
|
|
346
352
|
GPT_4O_MINI_REALTIME_PREVIEW_2024_12_17 = :"gpt-4o-mini-realtime-preview-2024-12-17"
|
|
353
|
+
# @deprecated Announced shutdown date: 2027-01-20. See
|
|
354
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
355
|
+
# replacements.
|
|
347
356
|
GPT_REALTIME_MINI = :"gpt-realtime-mini"
|
|
348
357
|
GPT_REALTIME_MINI_2025_10_06 = :"gpt-realtime-mini-2025-10-06"
|
|
358
|
+
# @deprecated Announced shutdown date: 2027-01-20. See
|
|
359
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
360
|
+
# replacements.
|
|
349
361
|
GPT_REALTIME_MINI_2025_12_15 = :"gpt-realtime-mini-2025-12-15"
|
|
350
362
|
GPT_AUDIO_1_5 = :"gpt-audio-1.5"
|
|
363
|
+
# @deprecated Announced shutdown date: 2027-01-20. See
|
|
364
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
365
|
+
# replacements.
|
|
351
366
|
GPT_AUDIO_MINI = :"gpt-audio-mini"
|
|
352
367
|
GPT_AUDIO_MINI_2025_10_06 = :"gpt-audio-mini-2025-10-06"
|
|
368
|
+
# @deprecated Announced shutdown date: 2027-01-20. See
|
|
369
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
370
|
+
# replacements.
|
|
353
371
|
GPT_AUDIO_MINI_2025_12_15 = :"gpt-audio-mini-2025-12-15"
|
|
354
372
|
|
|
355
373
|
# @!endgroup
|
|
@@ -840,11 +840,17 @@ module OpenAI
|
|
|
840
840
|
|
|
841
841
|
# @!group
|
|
842
842
|
|
|
843
|
+
# @deprecated Announced shutdown date: 2027-01-20. See
|
|
844
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
845
|
+
# replacements.
|
|
843
846
|
GPT_REALTIME = :"gpt-realtime"
|
|
844
847
|
GPT_REALTIME_1_5 = :"gpt-realtime-1.5"
|
|
845
848
|
GPT_REALTIME_2 = :"gpt-realtime-2"
|
|
846
849
|
GPT_REALTIME_2_1 = :"gpt-realtime-2.1"
|
|
847
850
|
GPT_REALTIME_2_1_MINI = :"gpt-realtime-2.1-mini"
|
|
851
|
+
# @deprecated Announced shutdown date: 2027-01-20. See
|
|
852
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
853
|
+
# replacements.
|
|
848
854
|
GPT_REALTIME_2025_08_28 = :"gpt-realtime-2025-08-28"
|
|
849
855
|
GPT_4O_REALTIME_PREVIEW = :"gpt-4o-realtime-preview"
|
|
850
856
|
GPT_4O_REALTIME_PREVIEW_2024_10_01 = :"gpt-4o-realtime-preview-2024-10-01"
|
|
@@ -852,12 +858,24 @@ module OpenAI
|
|
|
852
858
|
GPT_4O_REALTIME_PREVIEW_2025_06_03 = :"gpt-4o-realtime-preview-2025-06-03"
|
|
853
859
|
GPT_4O_MINI_REALTIME_PREVIEW = :"gpt-4o-mini-realtime-preview"
|
|
854
860
|
GPT_4O_MINI_REALTIME_PREVIEW_2024_12_17 = :"gpt-4o-mini-realtime-preview-2024-12-17"
|
|
861
|
+
# @deprecated Announced shutdown date: 2027-01-20. See
|
|
862
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
863
|
+
# replacements.
|
|
855
864
|
GPT_REALTIME_MINI = :"gpt-realtime-mini"
|
|
856
865
|
GPT_REALTIME_MINI_2025_10_06 = :"gpt-realtime-mini-2025-10-06"
|
|
866
|
+
# @deprecated Announced shutdown date: 2027-01-20. See
|
|
867
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
868
|
+
# replacements.
|
|
857
869
|
GPT_REALTIME_MINI_2025_12_15 = :"gpt-realtime-mini-2025-12-15"
|
|
858
870
|
GPT_AUDIO_1_5 = :"gpt-audio-1.5"
|
|
871
|
+
# @deprecated Announced shutdown date: 2027-01-20. See
|
|
872
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
873
|
+
# replacements.
|
|
859
874
|
GPT_AUDIO_MINI = :"gpt-audio-mini"
|
|
860
875
|
GPT_AUDIO_MINI_2025_10_06 = :"gpt-audio-mini-2025-10-06"
|
|
876
|
+
# @deprecated Announced shutdown date: 2027-01-20. See
|
|
877
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
878
|
+
# replacements.
|
|
861
879
|
GPT_AUDIO_MINI_2025_12_15 = :"gpt-audio-mini-2025-12-15"
|
|
862
880
|
|
|
863
881
|
# @!endgroup
|
|
@@ -13,7 +13,7 @@ module OpenAI
|
|
|
13
13
|
# @!attribute item
|
|
14
14
|
# A single item within a Realtime conversation.
|
|
15
15
|
#
|
|
16
|
-
# @return [OpenAI::Models::Realtime::RealtimeConversationItemSystemMessage, OpenAI::Models::Realtime::RealtimeConversationItemUserMessage, OpenAI::Models::Realtime::RealtimeConversationItemAssistantMessage, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCall, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCallOutput, OpenAI::Models::Realtime::RealtimeMcpApprovalResponse, OpenAI::Models::Realtime::RealtimeMcpListTools, OpenAI::Models::Realtime::RealtimeMcpToolCall, OpenAI::Models::Realtime::RealtimeMcpApprovalRequest]
|
|
16
|
+
# @return [OpenAI::Models::Realtime::RealtimeConversationItemSystemMessage, OpenAI::Models::Realtime::RealtimeConversationItemUserMessage, OpenAI::Models::Realtime::RealtimeConversationItemAssistantMessage, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCall, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCallOutput, OpenAI::Models::Realtime::RealtimeMcpApprovalResponse, OpenAI::Models::Realtime::RealtimeMcpListTools, OpenAI::Models::Realtime::RealtimeMcpToolCall, OpenAI::Models::Realtime::RealtimeMcpApprovalRequest, OpenAI::Realtime::ConversationItemWithReference]
|
|
17
17
|
required :item, union: -> { OpenAI::Realtime::ConversationItem }
|
|
18
18
|
|
|
19
19
|
# @!attribute output_index
|
|
@@ -40,7 +40,7 @@ module OpenAI
|
|
|
40
40
|
# @param event_id [String]
|
|
41
41
|
# The unique ID of the server event.
|
|
42
42
|
#
|
|
43
|
-
# @param item [OpenAI::Models::Realtime::RealtimeConversationItemSystemMessage, OpenAI::Models::Realtime::RealtimeConversationItemUserMessage, OpenAI::Models::Realtime::RealtimeConversationItemAssistantMessage, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCall, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCallOutput, OpenAI::Models::Realtime::RealtimeMcpApprovalResponse, OpenAI::Models::Realtime::RealtimeMcpListTools, OpenAI::Models::Realtime::RealtimeMcpToolCall, OpenAI::Models::Realtime::RealtimeMcpApprovalRequest]
|
|
43
|
+
# @param item [OpenAI::Models::Realtime::RealtimeConversationItemSystemMessage, OpenAI::Models::Realtime::RealtimeConversationItemUserMessage, OpenAI::Models::Realtime::RealtimeConversationItemAssistantMessage, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCall, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCallOutput, OpenAI::Models::Realtime::RealtimeMcpApprovalResponse, OpenAI::Models::Realtime::RealtimeMcpListTools, OpenAI::Models::Realtime::RealtimeMcpToolCall, OpenAI::Models::Realtime::RealtimeMcpApprovalRequest, OpenAI::Realtime::ConversationItemWithReference]
|
|
44
44
|
# A single item within a Realtime conversation.
|
|
45
45
|
#
|
|
46
46
|
# @param output_index [Integer]
|
|
@@ -13,7 +13,7 @@ module OpenAI
|
|
|
13
13
|
# @!attribute item
|
|
14
14
|
# A single item within a Realtime conversation.
|
|
15
15
|
#
|
|
16
|
-
# @return [OpenAI::Models::Realtime::RealtimeConversationItemSystemMessage, OpenAI::Models::Realtime::RealtimeConversationItemUserMessage, OpenAI::Models::Realtime::RealtimeConversationItemAssistantMessage, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCall, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCallOutput, OpenAI::Models::Realtime::RealtimeMcpApprovalResponse, OpenAI::Models::Realtime::RealtimeMcpListTools, OpenAI::Models::Realtime::RealtimeMcpToolCall, OpenAI::Models::Realtime::RealtimeMcpApprovalRequest]
|
|
16
|
+
# @return [OpenAI::Models::Realtime::RealtimeConversationItemSystemMessage, OpenAI::Models::Realtime::RealtimeConversationItemUserMessage, OpenAI::Models::Realtime::RealtimeConversationItemAssistantMessage, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCall, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCallOutput, OpenAI::Models::Realtime::RealtimeMcpApprovalResponse, OpenAI::Models::Realtime::RealtimeMcpListTools, OpenAI::Models::Realtime::RealtimeMcpToolCall, OpenAI::Models::Realtime::RealtimeMcpApprovalRequest, OpenAI::Realtime::ConversationItemWithReference]
|
|
17
17
|
required :item, union: -> { OpenAI::Realtime::ConversationItem }
|
|
18
18
|
|
|
19
19
|
# @!attribute output_index
|
|
@@ -41,7 +41,7 @@ module OpenAI
|
|
|
41
41
|
# @param event_id [String]
|
|
42
42
|
# The unique ID of the server event.
|
|
43
43
|
#
|
|
44
|
-
# @param item [OpenAI::Models::Realtime::RealtimeConversationItemSystemMessage, OpenAI::Models::Realtime::RealtimeConversationItemUserMessage, OpenAI::Models::Realtime::RealtimeConversationItemAssistantMessage, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCall, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCallOutput, OpenAI::Models::Realtime::RealtimeMcpApprovalResponse, OpenAI::Models::Realtime::RealtimeMcpListTools, OpenAI::Models::Realtime::RealtimeMcpToolCall, OpenAI::Models::Realtime::RealtimeMcpApprovalRequest]
|
|
44
|
+
# @param item [OpenAI::Models::Realtime::RealtimeConversationItemSystemMessage, OpenAI::Models::Realtime::RealtimeConversationItemUserMessage, OpenAI::Models::Realtime::RealtimeConversationItemAssistantMessage, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCall, OpenAI::Models::Realtime::RealtimeConversationItemFunctionCallOutput, OpenAI::Models::Realtime::RealtimeMcpApprovalResponse, OpenAI::Models::Realtime::RealtimeMcpListTools, OpenAI::Models::Realtime::RealtimeMcpToolCall, OpenAI::Models::Realtime::RealtimeMcpApprovalRequest, OpenAI::Realtime::ConversationItemWithReference]
|
|
45
45
|
# A single item within a Realtime conversation.
|
|
46
46
|
#
|
|
47
47
|
# @param output_index [Integer]
|
|
@@ -319,6 +319,23 @@ module OpenAI
|
|
|
319
319
|
# @return [OpenAI::Models::Responses::ResponseTextConfig, nil]
|
|
320
320
|
optional :text, -> { OpenAI::Responses::ResponseTextConfig }
|
|
321
321
|
|
|
322
|
+
# @!attribute tool_usage
|
|
323
|
+
# Usage reported by hosted tools, separate from base model `usage`. The field can
|
|
324
|
+
# be omitted when tool usage is unavailable. When present, tool families with no
|
|
325
|
+
# recorded usage have zero counts.
|
|
326
|
+
#
|
|
327
|
+
# `image_gen` sums available token counts across image generation calls. Calls
|
|
328
|
+
# with missing or incomplete usage records may be skipped. Output token details
|
|
329
|
+
# and cached input counts can be omitted. An omitted cache count means cache usage
|
|
330
|
+
# is unknown.
|
|
331
|
+
#
|
|
332
|
+
# `web_search.num_requests` counts billable searches. Discounted searches and
|
|
333
|
+
# actions such as opening a page are excluded. Use billing records to reconcile
|
|
334
|
+
# final charges.
|
|
335
|
+
#
|
|
336
|
+
# @return [OpenAI::Models::Responses::Response::ToolUsage, nil]
|
|
337
|
+
optional :tool_usage, -> { OpenAI::Responses::Response::ToolUsage }
|
|
338
|
+
|
|
322
339
|
# @!attribute top_logprobs
|
|
323
340
|
# An integer between 0 and 20 specifying the maximum number of most likely tokens
|
|
324
341
|
# to return at each token position, each with an associated log probability. In
|
|
@@ -358,7 +375,7 @@ module OpenAI
|
|
|
358
375
|
# @return [String, nil]
|
|
359
376
|
optional :user, String
|
|
360
377
|
|
|
361
|
-
# @!method initialize(id:, access_programs:, created_at:, error:, incomplete_details:, instructions:, metadata:, model:, output:, parallel_tool_calls:, temperature:, tool_choice:, tools:, top_p:, background: nil, completed_at: nil, conversation: nil, max_output_tokens: nil, max_tool_calls: nil, moderation: nil, previous_response_id: nil, prompt: nil, prompt_cache_diagnostics: nil, prompt_cache_key: nil, prompt_cache_options: nil, prompt_cache_retention: nil, reasoning: nil, safety_identifier: nil, service_tier: nil, status: nil, text: nil, top_logprobs: nil, truncation: nil, usage: nil, user: nil, object: :response)
|
|
378
|
+
# @!method initialize(id:, access_programs:, created_at:, error:, incomplete_details:, instructions:, metadata:, model:, output:, parallel_tool_calls:, temperature:, tool_choice:, tools:, top_p:, background: nil, completed_at: nil, conversation: nil, max_output_tokens: nil, max_tool_calls: nil, moderation: nil, previous_response_id: nil, prompt: nil, prompt_cache_diagnostics: nil, prompt_cache_key: nil, prompt_cache_options: nil, prompt_cache_retention: nil, reasoning: nil, safety_identifier: nil, service_tier: nil, status: nil, text: nil, tool_usage: nil, top_logprobs: nil, truncation: nil, usage: nil, user: nil, object: :response)
|
|
362
379
|
# @param id [String]
|
|
363
380
|
# Unique identifier for this Response.
|
|
364
381
|
#
|
|
@@ -566,6 +583,20 @@ module OpenAI
|
|
|
566
583
|
# - [Text inputs and outputs](https://developers.openai.com/api/docs/guides/text)
|
|
567
584
|
# - [Structured Outputs](https://developers.openai.com/api/docs/guides/structured-outputs)
|
|
568
585
|
#
|
|
586
|
+
# @param tool_usage [OpenAI::Models::Responses::Response::ToolUsage]
|
|
587
|
+
# Usage reported by hosted tools, separate from base model `usage`. The field can
|
|
588
|
+
# be omitted when tool usage is unavailable. When present, tool families with no
|
|
589
|
+
# recorded usage have zero counts.
|
|
590
|
+
#
|
|
591
|
+
# `image_gen` sums available token counts across image generation calls. Calls
|
|
592
|
+
# with missing or incomplete usage records may be skipped. Output token details
|
|
593
|
+
# and cached input counts can be omitted. An omitted cache count means cache usage
|
|
594
|
+
# is unknown.
|
|
595
|
+
#
|
|
596
|
+
# `web_search.num_requests` counts billable searches. Discounted searches and
|
|
597
|
+
# actions such as opening a page are excluded. Use billing records to reconcile
|
|
598
|
+
# final charges.
|
|
599
|
+
#
|
|
569
600
|
# @param top_logprobs [Integer, nil]
|
|
570
601
|
# An integer between 0 and 20 specifying the maximum number of most likely tokens
|
|
571
602
|
# to return at each token position, each with an associated log probability. In
|
|
@@ -1288,6 +1319,195 @@ module OpenAI
|
|
|
1288
1319
|
# @return [Array<Symbol>]
|
|
1289
1320
|
end
|
|
1290
1321
|
|
|
1322
|
+
# @see OpenAI::Models::Responses::Response#tool_usage
|
|
1323
|
+
class ToolUsage < OpenAI::Internal::Type::BaseModel
|
|
1324
|
+
# @!attribute image_gen
|
|
1325
|
+
# Aggregated usage statistics for image generation tool calls.
|
|
1326
|
+
#
|
|
1327
|
+
# @return [OpenAI::Models::Responses::Response::ToolUsage::ImageGen]
|
|
1328
|
+
required :image_gen, -> { OpenAI::Responses::Response::ToolUsage::ImageGen }
|
|
1329
|
+
|
|
1330
|
+
# @!attribute web_search
|
|
1331
|
+
# Aggregated billable usage statistics for web search tool calls.
|
|
1332
|
+
#
|
|
1333
|
+
# @return [OpenAI::Models::Responses::Response::ToolUsage::WebSearch]
|
|
1334
|
+
required :web_search, -> { OpenAI::Responses::Response::ToolUsage::WebSearch }
|
|
1335
|
+
|
|
1336
|
+
# @!method initialize(image_gen:, web_search:)
|
|
1337
|
+
# Usage reported by hosted tools, separate from base model `usage`. The field can
|
|
1338
|
+
# be omitted when tool usage is unavailable. When present, tool families with no
|
|
1339
|
+
# recorded usage have zero counts.
|
|
1340
|
+
#
|
|
1341
|
+
# `image_gen` sums available token counts across image generation calls. Calls
|
|
1342
|
+
# with missing or incomplete usage records may be skipped. Output token details
|
|
1343
|
+
# and cached input counts can be omitted. An omitted cache count means cache usage
|
|
1344
|
+
# is unknown.
|
|
1345
|
+
#
|
|
1346
|
+
# `web_search.num_requests` counts billable searches. Discounted searches and
|
|
1347
|
+
# actions such as opening a page are excluded. Use billing records to reconcile
|
|
1348
|
+
# final charges.
|
|
1349
|
+
#
|
|
1350
|
+
# @param image_gen [OpenAI::Models::Responses::Response::ToolUsage::ImageGen]
|
|
1351
|
+
# Aggregated usage statistics for image generation tool calls.
|
|
1352
|
+
#
|
|
1353
|
+
# @param web_search [OpenAI::Models::Responses::Response::ToolUsage::WebSearch]
|
|
1354
|
+
# Aggregated billable usage statistics for web search tool calls.
|
|
1355
|
+
|
|
1356
|
+
# @see OpenAI::Models::Responses::Response::ToolUsage#image_gen
|
|
1357
|
+
class ImageGen < OpenAI::Internal::Type::BaseModel
|
|
1358
|
+
# @!attribute input_tokens
|
|
1359
|
+
# The number of tokens (images and text) in the input prompt.
|
|
1360
|
+
#
|
|
1361
|
+
# @return [Integer]
|
|
1362
|
+
required :input_tokens, Integer
|
|
1363
|
+
|
|
1364
|
+
# @!attribute input_tokens_details
|
|
1365
|
+
# The input tokens detailed information for the image generation.
|
|
1366
|
+
#
|
|
1367
|
+
# @return [OpenAI::Models::Responses::Response::ToolUsage::ImageGen::InputTokensDetails]
|
|
1368
|
+
required(
|
|
1369
|
+
:input_tokens_details,
|
|
1370
|
+
-> { OpenAI::Responses::Response::ToolUsage::ImageGen::InputTokensDetails }
|
|
1371
|
+
)
|
|
1372
|
+
|
|
1373
|
+
# @!attribute output_tokens
|
|
1374
|
+
# The number of output tokens generated by the model.
|
|
1375
|
+
#
|
|
1376
|
+
# @return [Integer]
|
|
1377
|
+
required :output_tokens, Integer
|
|
1378
|
+
|
|
1379
|
+
# @!attribute total_tokens
|
|
1380
|
+
# The total number of tokens (images and text) used for the image generation.
|
|
1381
|
+
#
|
|
1382
|
+
# @return [Integer]
|
|
1383
|
+
required :total_tokens, Integer
|
|
1384
|
+
|
|
1385
|
+
# @!attribute cached_tokens
|
|
1386
|
+
#
|
|
1387
|
+
# @return [Integer, nil]
|
|
1388
|
+
optional :cached_tokens, Integer
|
|
1389
|
+
|
|
1390
|
+
# @!attribute cached_tokens_details
|
|
1391
|
+
#
|
|
1392
|
+
# @return [OpenAI::Models::Responses::Response::ToolUsage::ImageGen::CachedTokensDetails, nil]
|
|
1393
|
+
optional(
|
|
1394
|
+
:cached_tokens_details,
|
|
1395
|
+
-> { OpenAI::Responses::Response::ToolUsage::ImageGen::CachedTokensDetails }
|
|
1396
|
+
)
|
|
1397
|
+
|
|
1398
|
+
# @!attribute output_tokens_details
|
|
1399
|
+
# The output token details for the image generation.
|
|
1400
|
+
#
|
|
1401
|
+
# @return [OpenAI::Models::Responses::Response::ToolUsage::ImageGen::OutputTokensDetails, nil]
|
|
1402
|
+
optional(
|
|
1403
|
+
:output_tokens_details,
|
|
1404
|
+
-> { OpenAI::Responses::Response::ToolUsage::ImageGen::OutputTokensDetails }
|
|
1405
|
+
)
|
|
1406
|
+
|
|
1407
|
+
# @!method initialize(input_tokens:, input_tokens_details:, output_tokens:, total_tokens:, cached_tokens: nil, cached_tokens_details: nil, output_tokens_details: nil)
|
|
1408
|
+
# Aggregated usage statistics for image generation tool calls.
|
|
1409
|
+
#
|
|
1410
|
+
# @param input_tokens [Integer]
|
|
1411
|
+
# The number of tokens (images and text) in the input prompt.
|
|
1412
|
+
#
|
|
1413
|
+
# @param input_tokens_details [OpenAI::Models::Responses::Response::ToolUsage::ImageGen::InputTokensDetails]
|
|
1414
|
+
# The input tokens detailed information for the image generation.
|
|
1415
|
+
#
|
|
1416
|
+
# @param output_tokens [Integer]
|
|
1417
|
+
# The number of output tokens generated by the model.
|
|
1418
|
+
#
|
|
1419
|
+
# @param total_tokens [Integer]
|
|
1420
|
+
# The total number of tokens (images and text) used for the image generation.
|
|
1421
|
+
#
|
|
1422
|
+
# @param cached_tokens [Integer]
|
|
1423
|
+
#
|
|
1424
|
+
# @param cached_tokens_details [OpenAI::Models::Responses::Response::ToolUsage::ImageGen::CachedTokensDetails]
|
|
1425
|
+
#
|
|
1426
|
+
# @param output_tokens_details [OpenAI::Models::Responses::Response::ToolUsage::ImageGen::OutputTokensDetails]
|
|
1427
|
+
# The output token details for the image generation.
|
|
1428
|
+
|
|
1429
|
+
# @see OpenAI::Models::Responses::Response::ToolUsage::ImageGen#input_tokens_details
|
|
1430
|
+
class InputTokensDetails < OpenAI::Internal::Type::BaseModel
|
|
1431
|
+
# @!attribute image_tokens
|
|
1432
|
+
# The number of image tokens in the input prompt.
|
|
1433
|
+
#
|
|
1434
|
+
# @return [Integer]
|
|
1435
|
+
required :image_tokens, Integer
|
|
1436
|
+
|
|
1437
|
+
# @!attribute text_tokens
|
|
1438
|
+
# The number of text tokens in the input prompt.
|
|
1439
|
+
#
|
|
1440
|
+
# @return [Integer]
|
|
1441
|
+
required :text_tokens, Integer
|
|
1442
|
+
|
|
1443
|
+
# @!method initialize(image_tokens:, text_tokens:)
|
|
1444
|
+
# The input tokens detailed information for the image generation.
|
|
1445
|
+
#
|
|
1446
|
+
# @param image_tokens [Integer]
|
|
1447
|
+
# The number of image tokens in the input prompt.
|
|
1448
|
+
#
|
|
1449
|
+
# @param text_tokens [Integer]
|
|
1450
|
+
# The number of text tokens in the input prompt.
|
|
1451
|
+
end
|
|
1452
|
+
|
|
1453
|
+
# @see OpenAI::Models::Responses::Response::ToolUsage::ImageGen#cached_tokens_details
|
|
1454
|
+
class CachedTokensDetails < OpenAI::Internal::Type::BaseModel
|
|
1455
|
+
# @!attribute cached_image_tokens
|
|
1456
|
+
#
|
|
1457
|
+
# @return [Integer]
|
|
1458
|
+
required :cached_image_tokens, Integer
|
|
1459
|
+
|
|
1460
|
+
# @!attribute cached_text_tokens
|
|
1461
|
+
#
|
|
1462
|
+
# @return [Integer]
|
|
1463
|
+
required :cached_text_tokens, Integer
|
|
1464
|
+
|
|
1465
|
+
# @!method initialize(cached_image_tokens:, cached_text_tokens:)
|
|
1466
|
+
# @param cached_image_tokens [Integer]
|
|
1467
|
+
# @param cached_text_tokens [Integer]
|
|
1468
|
+
end
|
|
1469
|
+
|
|
1470
|
+
# @see OpenAI::Models::Responses::Response::ToolUsage::ImageGen#output_tokens_details
|
|
1471
|
+
class OutputTokensDetails < OpenAI::Internal::Type::BaseModel
|
|
1472
|
+
# @!attribute image_tokens
|
|
1473
|
+
# The number of image output tokens generated by the model.
|
|
1474
|
+
#
|
|
1475
|
+
# @return [Integer]
|
|
1476
|
+
required :image_tokens, Integer
|
|
1477
|
+
|
|
1478
|
+
# @!attribute text_tokens
|
|
1479
|
+
# The number of text output tokens generated by the model.
|
|
1480
|
+
#
|
|
1481
|
+
# @return [Integer]
|
|
1482
|
+
required :text_tokens, Integer
|
|
1483
|
+
|
|
1484
|
+
# @!method initialize(image_tokens:, text_tokens:)
|
|
1485
|
+
# The output token details for the image generation.
|
|
1486
|
+
#
|
|
1487
|
+
# @param image_tokens [Integer]
|
|
1488
|
+
# The number of image output tokens generated by the model.
|
|
1489
|
+
#
|
|
1490
|
+
# @param text_tokens [Integer]
|
|
1491
|
+
# The number of text output tokens generated by the model.
|
|
1492
|
+
end
|
|
1493
|
+
end
|
|
1494
|
+
|
|
1495
|
+
# @see OpenAI::Models::Responses::Response::ToolUsage#web_search
|
|
1496
|
+
class WebSearch < OpenAI::Internal::Type::BaseModel
|
|
1497
|
+
# @!attribute num_requests
|
|
1498
|
+
# The number of billable web search requests issued.
|
|
1499
|
+
#
|
|
1500
|
+
# @return [Integer]
|
|
1501
|
+
required :num_requests, Integer
|
|
1502
|
+
|
|
1503
|
+
# @!method initialize(num_requests:)
|
|
1504
|
+
# Aggregated billable usage statistics for web search tool calls.
|
|
1505
|
+
#
|
|
1506
|
+
# @param num_requests [Integer]
|
|
1507
|
+
# The number of billable web search requests issued.
|
|
1508
|
+
end
|
|
1509
|
+
end
|
|
1510
|
+
|
|
1291
1511
|
# The truncation strategy to use for the model response.
|
|
1292
1512
|
#
|
|
1293
1513
|
# - `auto`: If the input to this Response exceeds the model's context window size,
|
|
@@ -433,6 +433,9 @@ module OpenAI
|
|
|
433
433
|
# replacements.
|
|
434
434
|
GPT_5_4_NANO = :"gpt-5.4-nano"
|
|
435
435
|
GPT_5_4_MINI_2026_03_17 = :"gpt-5.4-mini-2026-03-17"
|
|
436
|
+
# @deprecated Announced shutdown date: 2027-04-01. See
|
|
437
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
438
|
+
# replacements.
|
|
436
439
|
GPT_5_4_NANO_2026_03_17 = :"gpt-5.4-nano-2026-03-17"
|
|
437
440
|
# @deprecated Announced shutdown date: 2026-08-10. See
|
|
438
441
|
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
@@ -450,6 +453,9 @@ module OpenAI
|
|
|
450
453
|
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
451
454
|
# replacements.
|
|
452
455
|
GPT_5_1 = :"gpt-5.1"
|
|
456
|
+
# @deprecated Announced shutdown date: 2027-04-01. See
|
|
457
|
+
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
458
|
+
# replacements.
|
|
453
459
|
GPT_5_1_2025_11_13 = :"gpt-5.1-2025-11-13"
|
|
454
460
|
# @deprecated Announced shutdown date: 2026-07-23. See
|
|
455
461
|
# https://developers.openai.com/api/docs/deprecations for details and recommended
|
|
@@ -22,9 +22,15 @@ module OpenAI
|
|
|
22
22
|
# @return [OpenAI::Models::Responses::ResponseConfigurationUpdateItem::Reasoning, nil]
|
|
23
23
|
optional :reasoning, -> { OpenAI::Responses::ResponseConfigurationUpdateItem::Reasoning }
|
|
24
24
|
|
|
25
|
-
# @!
|
|
26
|
-
#
|
|
27
|
-
#
|
|
25
|
+
# @!attribute text
|
|
26
|
+
# The text output configuration for subsequent responses.
|
|
27
|
+
#
|
|
28
|
+
# @return [OpenAI::Models::Responses::ResponseConfigurationUpdateItem::Text, nil]
|
|
29
|
+
optional :text, -> { OpenAI::Responses::ResponseConfigurationUpdateItem::Text }
|
|
30
|
+
|
|
31
|
+
# @!method initialize(id:, reasoning: nil, text: nil, type: :configuration_update)
|
|
32
|
+
# A configuration update for subsequent responses. Each setting stays in effect
|
|
33
|
+
# until a later update replaces that setting.
|
|
28
34
|
#
|
|
29
35
|
# @param id [String]
|
|
30
36
|
# The unique ID of the configuration update item.
|
|
@@ -32,6 +38,9 @@ module OpenAI
|
|
|
32
38
|
# @param reasoning [OpenAI::Models::Responses::ResponseConfigurationUpdateItem::Reasoning]
|
|
33
39
|
# The reasoning configuration applied by this update.
|
|
34
40
|
#
|
|
41
|
+
# @param text [OpenAI::Models::Responses::ResponseConfigurationUpdateItem::Text]
|
|
42
|
+
# The text output configuration for subsequent responses.
|
|
43
|
+
#
|
|
35
44
|
# @param type [Symbol, :configuration_update]
|
|
36
45
|
# The item type. Always `configuration_update`.
|
|
37
46
|
|
|
@@ -51,6 +60,44 @@ module OpenAI
|
|
|
51
60
|
# The reasoning effort used for subsequent responses until another configuration
|
|
52
61
|
# update replaces it.
|
|
53
62
|
end
|
|
63
|
+
|
|
64
|
+
# @see OpenAI::Models::Responses::ResponseConfigurationUpdateItem#text
|
|
65
|
+
class Text < OpenAI::Internal::Type::BaseModel
|
|
66
|
+
# @!attribute format_
|
|
67
|
+
# Use a JSON schema for structured output or text to return to plain text.
|
|
68
|
+
#
|
|
69
|
+
# @return [OpenAI::Models::ResponseFormatText, OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig]
|
|
70
|
+
required(
|
|
71
|
+
:format_,
|
|
72
|
+
union: -> { OpenAI::Responses::ResponseConfigurationUpdateItem::Text::Format },
|
|
73
|
+
api_name: :format
|
|
74
|
+
)
|
|
75
|
+
|
|
76
|
+
# @!method initialize(format_:)
|
|
77
|
+
# The text output configuration for subsequent responses.
|
|
78
|
+
#
|
|
79
|
+
# @param format_ [OpenAI::Models::ResponseFormatText, OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig]
|
|
80
|
+
# Use a JSON schema for structured output or text to return to plain text.
|
|
81
|
+
|
|
82
|
+
# Use a JSON schema for structured output or text to return to plain text.
|
|
83
|
+
#
|
|
84
|
+
# @see OpenAI::Models::Responses::ResponseConfigurationUpdateItem::Text#format_
|
|
85
|
+
module Format
|
|
86
|
+
extend OpenAI::Internal::Type::Union
|
|
87
|
+
|
|
88
|
+
discriminator :type
|
|
89
|
+
|
|
90
|
+
# Default response format. Used to generate text responses.
|
|
91
|
+
variant :text, -> { OpenAI::ResponseFormatText }
|
|
92
|
+
|
|
93
|
+
# JSON Schema response format. Used to generate structured JSON responses.
|
|
94
|
+
# Learn more about [Structured Outputs](https://developers.openai.com/api/docs/guides/structured-outputs).
|
|
95
|
+
variant :json_schema, -> { OpenAI::Responses::ResponseFormatTextJSONSchemaConfig }
|
|
96
|
+
|
|
97
|
+
# @!method self.variants
|
|
98
|
+
# @return [Array(OpenAI::Models::ResponseFormatText, OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig)]
|
|
99
|
+
end
|
|
100
|
+
end
|
|
54
101
|
end
|
|
55
102
|
end
|
|
56
103
|
end
|
|
@@ -22,10 +22,15 @@ module OpenAI
|
|
|
22
22
|
# @return [OpenAI::Models::Responses::ResponseConfigurationUpdateItemParam::Reasoning, nil]
|
|
23
23
|
optional :reasoning, -> { OpenAI::Responses::ResponseConfigurationUpdateItemParam::Reasoning }
|
|
24
24
|
|
|
25
|
-
# @!
|
|
26
|
-
#
|
|
27
|
-
#
|
|
28
|
-
#
|
|
25
|
+
# @!attribute text
|
|
26
|
+
# The text output configuration for subsequent responses.
|
|
27
|
+
#
|
|
28
|
+
# @return [OpenAI::Models::Responses::ResponseConfigurationUpdateItemParam::Text, nil]
|
|
29
|
+
optional :text, -> { OpenAI::Responses::ResponseConfigurationUpdateItemParam::Text }
|
|
30
|
+
|
|
31
|
+
# @!method initialize(id: nil, reasoning: nil, text: nil, type: :configuration_update)
|
|
32
|
+
# An update to the conversation's response configuration. Supply reasoning, text,
|
|
33
|
+
# or both. Each setting stays in effect until a later update replaces it.
|
|
29
34
|
#
|
|
30
35
|
# @param id [String, nil]
|
|
31
36
|
# The unique ID of the configuration update item.
|
|
@@ -33,6 +38,9 @@ module OpenAI
|
|
|
33
38
|
# @param reasoning [OpenAI::Models::Responses::ResponseConfigurationUpdateItemParam::Reasoning]
|
|
34
39
|
# Updates to reasoning configuration. Only effort is supported.
|
|
35
40
|
#
|
|
41
|
+
# @param text [OpenAI::Models::Responses::ResponseConfigurationUpdateItemParam::Text]
|
|
42
|
+
# The text output configuration for subsequent responses.
|
|
43
|
+
#
|
|
36
44
|
# @param type [Symbol, :configuration_update]
|
|
37
45
|
# The item type. Always `configuration_update`.
|
|
38
46
|
|
|
@@ -52,6 +60,44 @@ module OpenAI
|
|
|
52
60
|
# The reasoning effort to use for subsequent responses until another configuration
|
|
53
61
|
# update replaces it.
|
|
54
62
|
end
|
|
63
|
+
|
|
64
|
+
# @see OpenAI::Models::Responses::ResponseConfigurationUpdateItemParam#text
|
|
65
|
+
class Text < OpenAI::Internal::Type::BaseModel
|
|
66
|
+
# @!attribute format_
|
|
67
|
+
# Use a JSON schema for structured output or text to return to plain text.
|
|
68
|
+
#
|
|
69
|
+
# @return [OpenAI::Models::ResponseFormatText, OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig]
|
|
70
|
+
required(
|
|
71
|
+
:format_,
|
|
72
|
+
union: -> { OpenAI::Responses::ResponseConfigurationUpdateItemParam::Text::Format },
|
|
73
|
+
api_name: :format
|
|
74
|
+
)
|
|
75
|
+
|
|
76
|
+
# @!method initialize(format_:)
|
|
77
|
+
# The text output configuration for subsequent responses.
|
|
78
|
+
#
|
|
79
|
+
# @param format_ [OpenAI::Models::ResponseFormatText, OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig]
|
|
80
|
+
# Use a JSON schema for structured output or text to return to plain text.
|
|
81
|
+
|
|
82
|
+
# Use a JSON schema for structured output or text to return to plain text.
|
|
83
|
+
#
|
|
84
|
+
# @see OpenAI::Models::Responses::ResponseConfigurationUpdateItemParam::Text#format_
|
|
85
|
+
module Format
|
|
86
|
+
extend OpenAI::Internal::Type::Union
|
|
87
|
+
|
|
88
|
+
discriminator :type
|
|
89
|
+
|
|
90
|
+
# Default response format. Used to generate text responses.
|
|
91
|
+
variant :text, -> { OpenAI::ResponseFormatText }
|
|
92
|
+
|
|
93
|
+
# JSON Schema response format. Used to generate structured JSON responses.
|
|
94
|
+
# Learn more about [Structured Outputs](https://developers.openai.com/api/docs/guides/structured-outputs).
|
|
95
|
+
variant :json_schema, -> { OpenAI::Responses::ResponseFormatTextJSONSchemaConfig }
|
|
96
|
+
|
|
97
|
+
# @!method self.variants
|
|
98
|
+
# @return [Array(OpenAI::Models::ResponseFormatText, OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig)]
|
|
99
|
+
end
|
|
100
|
+
end
|
|
55
101
|
end
|
|
56
102
|
end
|
|
57
103
|
end
|
|
@@ -45,9 +45,9 @@ module OpenAI
|
|
|
45
45
|
optional :filename, String
|
|
46
46
|
|
|
47
47
|
# @!attribute prompt_cache_breakpoint
|
|
48
|
-
# Marks the exact end of a reusable prompt prefix.
|
|
49
|
-
#
|
|
50
|
-
# token block.
|
|
48
|
+
# Marks the exact end of a reusable prompt prefix. When `ttl` is omitted, the
|
|
49
|
+
# breakpoint inherits the request's `prompt_cache_options.ttl`; the boundary is
|
|
50
|
+
# not rounded to a token block.
|
|
51
51
|
#
|
|
52
52
|
# @return [OpenAI::Models::Responses::ResponseInputFile::PromptCacheBreakpoint, nil]
|
|
53
53
|
optional :prompt_cache_breakpoint, -> { OpenAI::Responses::ResponseInputFile::PromptCacheBreakpoint }
|
|
@@ -75,9 +75,9 @@ module OpenAI
|
|
|
75
75
|
# The name of the file to be sent to the model.
|
|
76
76
|
#
|
|
77
77
|
# @param prompt_cache_breakpoint [OpenAI::Models::Responses::ResponseInputFile::PromptCacheBreakpoint]
|
|
78
|
-
# Marks the exact end of a reusable prompt prefix.
|
|
79
|
-
#
|
|
80
|
-
# token block.
|
|
78
|
+
# Marks the exact end of a reusable prompt prefix. When `ttl` is omitted, the
|
|
79
|
+
# breakpoint inherits the request's `prompt_cache_options.ttl`; the boundary is
|
|
80
|
+
# not rounded to a token block.
|
|
81
81
|
#
|
|
82
82
|
# @param type [Symbol, :input_file]
|
|
83
83
|
# The type of the input item. Always `input_file`.
|
|
@@ -115,9 +115,9 @@ module OpenAI
|
|
|
115
115
|
optional :ttl, enum: -> { OpenAI::Responses::ResponseInputFile::PromptCacheBreakpoint::Ttl }
|
|
116
116
|
|
|
117
117
|
# @!method initialize(ttl: nil, mode: :explicit)
|
|
118
|
-
# Marks the exact end of a reusable prompt prefix.
|
|
119
|
-
#
|
|
120
|
-
# token block.
|
|
118
|
+
# Marks the exact end of a reusable prompt prefix. When `ttl` is omitted, the
|
|
119
|
+
# breakpoint inherits the request's `prompt_cache_options.ttl`; the boundary is
|
|
120
|
+
# not rounded to a token block.
|
|
121
121
|
#
|
|
122
122
|
# @param ttl [Symbol, OpenAI::Models::Responses::ResponseInputFile::PromptCacheBreakpoint::Ttl]
|
|
123
123
|
# The minimum lifetime of this cache breakpoint. Defaults to the request TTL.
|