openai 0.114.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 +36 -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/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_item.rb +2 -3
- data/lib/openai/models/beta/beta_response_item.rb +2 -2
- 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_model.rb +6 -0
- 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_item.rb +2 -3
- 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_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/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_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_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/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_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
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Resources
|
|
5
|
+
class Admin
|
|
6
|
+
class Organization
|
|
7
|
+
class ExternalKeys
|
|
8
|
+
# Add an external key config for an organization
|
|
9
|
+
#
|
|
10
|
+
# @overload create(body:, request_options: {})
|
|
11
|
+
#
|
|
12
|
+
# @param body [OpenAI::Models::Admin::Organization::ExternalKeyCreateParams::Body::Aws, OpenAI::Models::Admin::Organization::ExternalKeyCreateParams::Body::Gcp, OpenAI::Models::Admin::Organization::ExternalKeyCreateParams::Body::Azure]
|
|
13
|
+
# @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
14
|
+
#
|
|
15
|
+
# @return [OpenAI::Models::Admin::Organization::ExternalKey]
|
|
16
|
+
#
|
|
17
|
+
# @see OpenAI::Models::Admin::Organization::ExternalKeyCreateParams
|
|
18
|
+
def create(params)
|
|
19
|
+
parsed, options = OpenAI::Admin::Organization::ExternalKeyCreateParams.dump_request(params)
|
|
20
|
+
@client.request(
|
|
21
|
+
method: :post,
|
|
22
|
+
path: "organization/external_keys",
|
|
23
|
+
body: parsed[:body],
|
|
24
|
+
model: OpenAI::Admin::Organization::ExternalKey,
|
|
25
|
+
security: {admin_api_key_auth: true},
|
|
26
|
+
options: options
|
|
27
|
+
)
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
# Retrieve a stored external key registration for the user's organization.
|
|
31
|
+
#
|
|
32
|
+
# @overload retrieve(external_key_id, request_options: {})
|
|
33
|
+
#
|
|
34
|
+
# @param external_key_id [String]
|
|
35
|
+
# @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
36
|
+
#
|
|
37
|
+
# @return [OpenAI::Models::Admin::Organization::ExternalKey]
|
|
38
|
+
#
|
|
39
|
+
# @see OpenAI::Models::Admin::Organization::ExternalKeyRetrieveParams
|
|
40
|
+
def retrieve(external_key_id, params = {})
|
|
41
|
+
@client.request(
|
|
42
|
+
method: :get,
|
|
43
|
+
path: ["organization/external_keys/%1$s", external_key_id],
|
|
44
|
+
model: OpenAI::Admin::Organization::ExternalKey,
|
|
45
|
+
security: {admin_api_key_auth: true},
|
|
46
|
+
options: params[:request_options]
|
|
47
|
+
)
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
# List the external key configs registered on the user's organization
|
|
51
|
+
#
|
|
52
|
+
# @overload list(after: nil, limit: nil, order: nil, purpose: nil, request_options: {})
|
|
53
|
+
#
|
|
54
|
+
# @param after [String, nil]
|
|
55
|
+
#
|
|
56
|
+
# @param limit [Integer]
|
|
57
|
+
#
|
|
58
|
+
# @param order [Symbol, OpenAI::Models::Admin::Organization::ExternalKeyListParams::Order]
|
|
59
|
+
#
|
|
60
|
+
# @param purpose [Symbol, OpenAI::Models::Admin::Organization::ExternalKeyListParams::Purpose]
|
|
61
|
+
# Filter by key purpose. When omitted, returns keys of all purposes.
|
|
62
|
+
#
|
|
63
|
+
# @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
64
|
+
#
|
|
65
|
+
# @return [OpenAI::Internal::CursorPage<OpenAI::Models::Admin::Organization::ExternalKey>]
|
|
66
|
+
#
|
|
67
|
+
# @see OpenAI::Models::Admin::Organization::ExternalKeyListParams
|
|
68
|
+
def list(params = {})
|
|
69
|
+
parsed, options = OpenAI::Admin::Organization::ExternalKeyListParams.dump_request(params)
|
|
70
|
+
query = OpenAI::Internal::Util.encode_query_params(parsed)
|
|
71
|
+
@client.request(
|
|
72
|
+
method: :get,
|
|
73
|
+
path: "organization/external_keys",
|
|
74
|
+
query: query,
|
|
75
|
+
page: OpenAI::Internal::CursorPage,
|
|
76
|
+
model: OpenAI::Admin::Organization::ExternalKey,
|
|
77
|
+
security: {admin_api_key_auth: true},
|
|
78
|
+
options: options
|
|
79
|
+
)
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
# Delete an external key config for the user's organization
|
|
83
|
+
#
|
|
84
|
+
# @overload delete(external_key_id, request_options: {})
|
|
85
|
+
#
|
|
86
|
+
# @param external_key_id [String]
|
|
87
|
+
# @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
88
|
+
#
|
|
89
|
+
# @return [OpenAI::Models::Admin::Organization::ExternalKey]
|
|
90
|
+
#
|
|
91
|
+
# @see OpenAI::Models::Admin::Organization::ExternalKeyDeleteParams
|
|
92
|
+
def delete(external_key_id, params = {})
|
|
93
|
+
@client.request(
|
|
94
|
+
method: :delete,
|
|
95
|
+
path: ["organization/external_keys/%1$s", external_key_id],
|
|
96
|
+
model: OpenAI::Admin::Organization::ExternalKey,
|
|
97
|
+
security: {admin_api_key_auth: true},
|
|
98
|
+
options: params[:request_options]
|
|
99
|
+
)
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
# Validate an external key config for the user's organization
|
|
103
|
+
#
|
|
104
|
+
# @overload validate(external_key_id, request_options: {})
|
|
105
|
+
#
|
|
106
|
+
# @param external_key_id [String]
|
|
107
|
+
# @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
108
|
+
#
|
|
109
|
+
# @return [OpenAI::Models::Admin::Organization::ExternalKeyValidateResponse]
|
|
110
|
+
#
|
|
111
|
+
# @see OpenAI::Models::Admin::Organization::ExternalKeyValidateParams
|
|
112
|
+
def validate(external_key_id, params = {})
|
|
113
|
+
@client.request(
|
|
114
|
+
method: :post,
|
|
115
|
+
path: ["organization/external_keys/%1$s/validate", external_key_id],
|
|
116
|
+
model: OpenAI::Models::Admin::Organization::ExternalKeyValidateResponse,
|
|
117
|
+
security: {admin_api_key_auth: true},
|
|
118
|
+
options: params[:request_options]
|
|
119
|
+
)
|
|
120
|
+
end
|
|
121
|
+
|
|
122
|
+
# @api private
|
|
123
|
+
#
|
|
124
|
+
# @param client [OpenAI::Client]
|
|
125
|
+
def initialize(client:)
|
|
126
|
+
@client = client
|
|
127
|
+
end
|
|
128
|
+
end
|
|
129
|
+
end
|
|
130
|
+
end
|
|
131
|
+
end
|
|
132
|
+
end
|
|
@@ -29,6 +29,9 @@ module OpenAI
|
|
|
29
29
|
# @return [OpenAI::Resources::Admin::Organization::DataRetention]
|
|
30
30
|
attr_reader :data_retention
|
|
31
31
|
|
|
32
|
+
# @return [OpenAI::Resources::Admin::Organization::ExternalKeys]
|
|
33
|
+
attr_reader :external_keys
|
|
34
|
+
|
|
32
35
|
# @return [OpenAI::Resources::Admin::Organization::ExternalStorage]
|
|
33
36
|
attr_reader :external_storage
|
|
34
37
|
|
|
@@ -57,6 +60,7 @@ module OpenAI
|
|
|
57
60
|
@groups = OpenAI::Resources::Admin::Organization::Groups.new(client: client)
|
|
58
61
|
@roles = OpenAI::Resources::Admin::Organization::Roles.new(client: client)
|
|
59
62
|
@data_retention = OpenAI::Resources::Admin::Organization::DataRetention.new(client: client)
|
|
63
|
+
@external_keys = OpenAI::Resources::Admin::Organization::ExternalKeys.new(client: client)
|
|
60
64
|
@external_storage = OpenAI::Resources::Admin::Organization::ExternalStorage.new(client: client)
|
|
61
65
|
@spend_limit = OpenAI::Resources::Admin::Organization::SpendLimit.new(client: client)
|
|
62
66
|
@spend_alerts = OpenAI::Resources::Admin::Organization::SpendAlerts.new(client: client)
|
|
@@ -9,6 +9,14 @@ module OpenAI
|
|
|
9
9
|
#
|
|
10
10
|
# Returns the audio file content, or a stream of audio events.
|
|
11
11
|
#
|
|
12
|
+
# The `tts-1`, `tts-1-hd`, `gpt-4o-mini-tts`, `gpt-4o-mini-tts-2025-03-20`, and
|
|
13
|
+
# `gpt-4o-mini-tts-2025-12-15` models are deprecated and scheduled to shut down on
|
|
14
|
+
# January 6, 2027. These examples use the existing Speech API; for new
|
|
15
|
+
# integrations, migrate to `gpt-realtime-2.1-mini` through the
|
|
16
|
+
# [Realtime API](https://developers.openai.com/api/docs/guides/realtime). See the
|
|
17
|
+
# [deprecation schedule](https://developers.openai.com/api/docs/deprecations) for
|
|
18
|
+
# migration details.
|
|
19
|
+
#
|
|
12
20
|
# @overload create(input:, model:, voice:, instructions: nil, response_format: nil, speed: nil, stream_format: nil, request_options: {})
|
|
13
21
|
#
|
|
14
22
|
# @param input [String]
|
|
@@ -5,8 +5,16 @@ module OpenAI
|
|
|
5
5
|
class Audio
|
|
6
6
|
# Turn audio into text or text into audio.
|
|
7
7
|
class Translations
|
|
8
|
+
# @deprecated
|
|
9
|
+
#
|
|
8
10
|
# Translates audio into English.
|
|
9
11
|
#
|
|
12
|
+
# This endpoint supports only `whisper-1`. The endpoint and model are deprecated
|
|
13
|
+
# and scheduled to shut down on February 26, 2027. Migrate to
|
|
14
|
+
# `/v1/realtime/translations`, which requires a separate integration. See the
|
|
15
|
+
# [deprecation schedule](https://developers.openai.com/api/docs/deprecations) for
|
|
16
|
+
# details.
|
|
17
|
+
#
|
|
10
18
|
# `String`, `StringIO`, and pathless `IO` inputs are sent with generic upload
|
|
11
19
|
# metadata. Use `OpenAI::FilePart` when you need to override the filename or
|
|
12
20
|
# content type.
|
|
@@ -32,7 +32,7 @@ module OpenAI
|
|
|
32
32
|
# the session or streams its events when stream is true. See
|
|
33
33
|
# [running sessions](https://developers.openai.com/api/docs/guides/agents-api/sessions).
|
|
34
34
|
#
|
|
35
|
-
# @overload create(environment:, agent: nil, agent_id: nil, input: nil, metadata: nil, spend_control: nil, vault_ids: nil, request_options: {})
|
|
35
|
+
# @overload create(environment:, agent: nil, agent_id: nil, input: nil, metadata: nil, review: nil, spend_control: nil, vault_ids: nil, request_options: {})
|
|
36
36
|
#
|
|
37
37
|
# @param environment [OpenAI::Models::Beta::EnvironmentParam::None, OpenAI::Models::Beta::EnvironmentParam::OpenAIHosted, OpenAI::Models::Beta::EnvironmentParam::SelfHosted]
|
|
38
38
|
# An inline execution environment or a reference to an environment template.
|
|
@@ -55,6 +55,9 @@ module OpenAI
|
|
|
55
55
|
# Up to 16 string key-value pairs, with keys up to 64 and values up to 512
|
|
56
56
|
# characters. Omission or null defaults to an empty map.
|
|
57
57
|
#
|
|
58
|
+
# @param review [Symbol, OpenAI::Models::Beta::Agents::SessionCreateParams::Review]
|
|
59
|
+
# Action review mode. Omit to use none.
|
|
60
|
+
#
|
|
58
61
|
# @param spend_control [OpenAI::Models::Beta::Agents::SessionCreateParams::SpendControl, nil]
|
|
59
62
|
# Optional spending limit in USD cents. Omission or null creates an unlimited
|
|
60
63
|
# session.
|
|
@@ -92,7 +95,7 @@ module OpenAI
|
|
|
92
95
|
# the session or streams its events when stream is true. See
|
|
93
96
|
# [running sessions](https://developers.openai.com/api/docs/guides/agents-api/sessions).
|
|
94
97
|
#
|
|
95
|
-
# @overload create_streaming(environment:, agent: nil, agent_id: nil, input: nil, output_type: nil, tool_handlers: {}, metadata: nil, spend_control: nil, vault_ids: nil, request_options: {})
|
|
98
|
+
# @overload create_streaming(environment:, agent: nil, agent_id: nil, input: nil, output_type: nil, tool_handlers: {}, metadata: nil, review: nil, spend_control: nil, vault_ids: nil, request_options: {})
|
|
96
99
|
#
|
|
97
100
|
# @param environment [OpenAI::Models::Beta::EnvironmentParam::None, OpenAI::Models::Beta::EnvironmentParam::OpenAIHosted, OpenAI::Models::Beta::EnvironmentParam::SelfHosted]
|
|
98
101
|
# An inline execution environment or a reference to an environment template.
|
|
@@ -115,6 +118,9 @@ module OpenAI
|
|
|
115
118
|
# Up to 16 string key-value pairs, with keys up to 64 and values up to 512
|
|
116
119
|
# characters. Omission or null defaults to an empty map.
|
|
117
120
|
#
|
|
121
|
+
# @param review [Symbol, OpenAI::Models::Beta::Agents::SessionCreateParams::Review]
|
|
122
|
+
# Action review mode. Omit to use none.
|
|
123
|
+
#
|
|
118
124
|
# @param spend_control [OpenAI::Models::Beta::Agents::SessionCreateParams::SpendControl, nil]
|
|
119
125
|
# Optional spending limit in USD cents. Omission or null creates an unlimited
|
|
120
126
|
# session.
|
|
@@ -188,23 +194,27 @@ module OpenAI
|
|
|
188
194
|
)
|
|
189
195
|
end
|
|
190
196
|
|
|
191
|
-
# Updates session metadata, model, reasoning effort, or service tier. Model
|
|
197
|
+
# Updates session tools, metadata, model, reasoning effort, or service tier. Model
|
|
192
198
|
# settings apply to subsequent turns. Omitted fields are unchanged. See
|
|
193
199
|
# [managing sessions](https://developers.openai.com/api/docs/guides/agents-api/sessions/manage).
|
|
194
200
|
#
|
|
195
|
-
# @overload update(session_id, agent: nil, metadata: nil, spend_control: nil, request_options: {})
|
|
201
|
+
# @overload update(session_id, agent: nil, metadata: nil, review: nil, spend_control: nil, request_options: {})
|
|
196
202
|
#
|
|
197
203
|
# @param session_id [String]
|
|
198
204
|
# The ID of the session.
|
|
199
205
|
#
|
|
200
206
|
# @param agent [OpenAI::Models::Beta::Agents::SessionUpdateParams::Agent]
|
|
201
|
-
#
|
|
207
|
+
# Agent settings to update on this session. Omitted fields stay unchanged.
|
|
202
208
|
#
|
|
203
209
|
# @param metadata [Hash{Symbol=>String}, nil]
|
|
204
210
|
# Replaces all metadata. Omit to leave unchanged, or pass null or {} to clear it.
|
|
205
211
|
# Up to 16 string key-value pairs, with keys up to 64 and values up to 512
|
|
206
212
|
# characters.
|
|
207
213
|
#
|
|
214
|
+
# @param review [Symbol, OpenAI::Models::Beta::Agents::SessionUpdateParams::Review]
|
|
215
|
+
# Default action review for new root turns. Existing turns and their subagents
|
|
216
|
+
# keep their review mode.
|
|
217
|
+
#
|
|
208
218
|
# @param spend_control [OpenAI::Models::Beta::Agents::SessionUpdateParams::SpendControl, nil]
|
|
209
219
|
# Omit to retain the limit; null or a null limit removes it without resetting
|
|
210
220
|
# spend.
|
|
@@ -231,7 +241,7 @@ module OpenAI
|
|
|
231
241
|
# order. See
|
|
232
242
|
# [managing sessions](https://developers.openai.com/api/docs/guides/agents-api/sessions/manage).
|
|
233
243
|
#
|
|
234
|
-
# @overload list(after: nil, agent_id: nil, limit: nil, order: nil, request_options: {})
|
|
244
|
+
# @overload list(after: nil, agent_id: nil, limit: nil, metadata: nil, order: nil, request_options: {})
|
|
235
245
|
#
|
|
236
246
|
# @param after [String]
|
|
237
247
|
# Return resources after this resource ID in the selected order.
|
|
@@ -243,6 +253,12 @@ module OpenAI
|
|
|
243
253
|
# @param limit [Integer]
|
|
244
254
|
# The maximum number of resources to return, between 1 and 100. Defaults to 20.
|
|
245
255
|
#
|
|
256
|
+
# @param metadata [Hash{Symbol=>String}]
|
|
257
|
+
# Exact string matches supplied as `metadata[key]=value`. All supplied pairs must
|
|
258
|
+
# match. Up to 16 pairs, with keys from 1 to 64 characters and values up to 512
|
|
259
|
+
# characters. New sessions and metadata updates may take time to appear in
|
|
260
|
+
# filtered results.
|
|
261
|
+
#
|
|
246
262
|
# @param order [Symbol, OpenAI::Models::Beta::Agents::SessionListParams::Order]
|
|
247
263
|
# The order in which resources are returned. Defaults to `desc`.
|
|
248
264
|
#
|
|
@@ -16,11 +16,17 @@ module OpenAI
|
|
|
16
16
|
# Creates a reusable agent without storing credentials. See
|
|
17
17
|
# [agent configuration](https://developers.openai.com/api/docs/guides/agents-api/configuration).
|
|
18
18
|
#
|
|
19
|
-
# @overload create(model:, instructions: nil, metadata: nil, multi_agent: nil, name: nil, reasoning: nil, service_tier: nil, text: nil, tools: nil, request_options: {})
|
|
19
|
+
# @overload create(model:, compaction: nil, experimental: nil, instructions: nil, metadata: nil, multi_agent: nil, name: nil, reasoning: nil, service_tier: nil, text: nil, tools: nil, request_options: {})
|
|
20
20
|
#
|
|
21
21
|
# @param model [String]
|
|
22
22
|
# The model to use for the agent. The requested model name is preserved.
|
|
23
23
|
#
|
|
24
|
+
# @param compaction [OpenAI::Models::Beta::AgentCreateParams::Compaction, nil]
|
|
25
|
+
# Context compaction settings. Omission or null enables background compaction.
|
|
26
|
+
#
|
|
27
|
+
# @param experimental [OpenAI::Models::Beta::AgentCreateParams::Experimental]
|
|
28
|
+
# Experimental agent settings. All experimental features default to disabled.
|
|
29
|
+
#
|
|
24
30
|
# @param instructions [String, nil]
|
|
25
31
|
# Additional instructions appended to the agent's default base instructions. Omit
|
|
26
32
|
# or set to null to add no custom instructions.
|
|
@@ -95,11 +101,20 @@ module OpenAI
|
|
|
95
101
|
# Updates a reusable agent. See
|
|
96
102
|
# [agent configuration](https://developers.openai.com/api/docs/guides/agents-api/configuration).
|
|
97
103
|
#
|
|
98
|
-
# @overload update(agent_id, instructions: nil, metadata: nil, model: nil, multi_agent: nil, name: nil, reasoning: nil, service_tier: nil, text: nil, tools: nil, request_options: {})
|
|
104
|
+
# @overload update(agent_id, compaction: nil, experimental: nil, instructions: nil, metadata: nil, model: nil, multi_agent: nil, name: nil, reasoning: nil, service_tier: nil, text: nil, tools: nil, request_options: {})
|
|
99
105
|
#
|
|
100
106
|
# @param agent_id [String]
|
|
101
107
|
# The ID of the reusable agent.
|
|
102
108
|
#
|
|
109
|
+
# @param compaction [OpenAI::Models::Beta::AgentUpdateParams::Compaction, nil]
|
|
110
|
+
# Context compaction settings. Omit to keep the current settings. A supplied
|
|
111
|
+
# object replaces the settings; null or an empty object enables background
|
|
112
|
+
# compaction.
|
|
113
|
+
#
|
|
114
|
+
# @param experimental [OpenAI::Models::Beta::AgentUpdateParams::Experimental]
|
|
115
|
+
# Experimental settings to merge by key. Omitted settings keep their current
|
|
116
|
+
# values.
|
|
117
|
+
#
|
|
103
118
|
# @param instructions [String, nil]
|
|
104
119
|
# Additional instructions appended to the agent's default base instructions. Omit
|
|
105
120
|
# to leave unchanged.
|
|
@@ -72,17 +72,17 @@ module OpenAI
|
|
|
72
72
|
# metadata. Use `OpenAI::FilePart` when you need to override the filename or
|
|
73
73
|
# content type.
|
|
74
74
|
#
|
|
75
|
-
# @overload edit(image:, prompt:, background: nil, input_fidelity: nil, mask: nil, model: nil, n: nil, output_compression: nil, output_format: nil, partial_images: nil, quality: nil, response_format: nil, safety_identifier: nil, size: nil, user: nil, request_options: {})
|
|
75
|
+
# @overload edit(image:, prompt:, background: nil, input_fidelity: nil, markup: nil, mask: nil, model: nil, n: nil, output_compression: nil, output_format: nil, partial_images: nil, quality: nil, response_format: nil, safety_identifier: nil, size: nil, user: nil, request_options: {})
|
|
76
76
|
#
|
|
77
77
|
# @param image [Pathname, StringIO, IO, String, OpenAI::FilePart, Array<Pathname, StringIO, IO, String, OpenAI::FilePart>]
|
|
78
78
|
# The image(s) to edit. Must be a supported image file or an array of images.
|
|
79
79
|
#
|
|
80
|
-
# For the GPT image models (`gpt-image-1`, `gpt-image-1
|
|
81
|
-
# `gpt-image-2
|
|
82
|
-
# `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`,
|
|
83
|
-
# `gpt-image-2.5-flare-2026-09-08
|
|
84
|
-
#
|
|
85
|
-
#
|
|
80
|
+
# For the GPT image models (`gpt-image-1-mini`, `gpt-image-1.5`, `gpt-image-2`,
|
|
81
|
+
# `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`,
|
|
82
|
+
# `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`, and
|
|
83
|
+
# `gpt-image-2.5-flare-2026-09-08`), each image should be a `png`, `webp`, or
|
|
84
|
+
# `jpg` file less than 50MB. You can provide up to 16 images.
|
|
85
|
+
# `chatgpt-image-latest` follows the same input constraints as GPT image models.
|
|
86
86
|
#
|
|
87
87
|
# `String`, `StringIO`, and pathless `IO` inputs are sent with generic upload
|
|
88
88
|
# metadata. Use `OpenAI::FilePart` when you need to override the filename or
|
|
@@ -106,8 +106,17 @@ module OpenAI
|
|
|
106
106
|
# @param input_fidelity [Symbol, OpenAI::Models::ImageEditParams::InputFidelity, nil]
|
|
107
107
|
# Control how much effort the model will exert to match the style and features,
|
|
108
108
|
# especially facial features, of input images. Supports `high` and `low` on
|
|
109
|
-
# `gpt-image-1
|
|
110
|
-
#
|
|
109
|
+
# `gpt-image-1.5`; `gpt-image-1-mini` supports only `low`. For `gpt-image-2`, omit
|
|
110
|
+
# this parameter. Defaults to `low` on supported models.
|
|
111
|
+
#
|
|
112
|
+
# @param markup [Pathname, StringIO, IO, String, OpenAI::FilePart]
|
|
113
|
+
# A transparent PNG overlaid on the first image to guide the edit. Must match that
|
|
114
|
+
# image's dimensions after orientation and contain transparent pixels. Supports
|
|
115
|
+
# GPT Image 2.5 and 2.6. Cannot be combined with mask.
|
|
116
|
+
#
|
|
117
|
+
# `String`, `StringIO`, and pathless `IO` inputs are sent with generic upload
|
|
118
|
+
# metadata. Use `OpenAI::FilePart` when you need to override the filename or
|
|
119
|
+
# content type.
|
|
111
120
|
#
|
|
112
121
|
# @param mask [Pathname, StringIO, IO, String, OpenAI::FilePart]
|
|
113
122
|
# An additional image whose fully transparent areas (e.g. where alpha is zero)
|
|
@@ -220,17 +229,17 @@ module OpenAI
|
|
|
220
229
|
# metadata. Use `OpenAI::FilePart` when you need to override the filename or
|
|
221
230
|
# content type.
|
|
222
231
|
#
|
|
223
|
-
# @overload edit_stream_raw(image:, prompt:, background: nil, input_fidelity: nil, mask: nil, model: nil, n: nil, output_compression: nil, output_format: nil, partial_images: nil, quality: nil, response_format: nil, safety_identifier: nil, size: nil, user: nil, request_options: {})
|
|
232
|
+
# @overload edit_stream_raw(image:, prompt:, background: nil, input_fidelity: nil, markup: nil, mask: nil, model: nil, n: nil, output_compression: nil, output_format: nil, partial_images: nil, quality: nil, response_format: nil, safety_identifier: nil, size: nil, user: nil, request_options: {})
|
|
224
233
|
#
|
|
225
234
|
# @param image [Pathname, StringIO, IO, String, OpenAI::FilePart, Array<Pathname, StringIO, IO, String, OpenAI::FilePart>]
|
|
226
235
|
# The image(s) to edit. Must be a supported image file or an array of images.
|
|
227
236
|
#
|
|
228
|
-
# For the GPT image models (`gpt-image-1`, `gpt-image-1
|
|
229
|
-
# `gpt-image-2
|
|
230
|
-
# `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`,
|
|
231
|
-
# `gpt-image-2.5-flare-2026-09-08
|
|
232
|
-
#
|
|
233
|
-
#
|
|
237
|
+
# For the GPT image models (`gpt-image-1-mini`, `gpt-image-1.5`, `gpt-image-2`,
|
|
238
|
+
# `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`,
|
|
239
|
+
# `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`, and
|
|
240
|
+
# `gpt-image-2.5-flare-2026-09-08`), each image should be a `png`, `webp`, or
|
|
241
|
+
# `jpg` file less than 50MB. You can provide up to 16 images.
|
|
242
|
+
# `chatgpt-image-latest` follows the same input constraints as GPT image models.
|
|
234
243
|
#
|
|
235
244
|
# `String`, `StringIO`, and pathless `IO` inputs are sent with generic upload
|
|
236
245
|
# metadata. Use `OpenAI::FilePart` when you need to override the filename or
|
|
@@ -254,8 +263,17 @@ module OpenAI
|
|
|
254
263
|
# @param input_fidelity [Symbol, OpenAI::Models::ImageEditParams::InputFidelity, nil]
|
|
255
264
|
# Control how much effort the model will exert to match the style and features,
|
|
256
265
|
# especially facial features, of input images. Supports `high` and `low` on
|
|
257
|
-
# `gpt-image-1
|
|
258
|
-
#
|
|
266
|
+
# `gpt-image-1.5`; `gpt-image-1-mini` supports only `low`. For `gpt-image-2`, omit
|
|
267
|
+
# this parameter. Defaults to `low` on supported models.
|
|
268
|
+
#
|
|
269
|
+
# @param markup [Pathname, StringIO, IO, String, OpenAI::FilePart]
|
|
270
|
+
# A transparent PNG overlaid on the first image to guide the edit. Must match that
|
|
271
|
+
# image's dimensions after orientation and contain transparent pixels. Supports
|
|
272
|
+
# GPT Image 2.5 and 2.6. Cannot be combined with mask.
|
|
273
|
+
#
|
|
274
|
+
# `String`, `StringIO`, and pathless `IO` inputs are sent with generic upload
|
|
275
|
+
# metadata. Use `OpenAI::FilePart` when you need to override the filename or
|
|
276
|
+
# content type.
|
|
259
277
|
#
|
|
260
278
|
# @param mask [Pathname, StringIO, IO, String, OpenAI::FilePart]
|
|
261
279
|
# An additional image whose fully transparent areas (e.g. where alpha is zero)
|
data/lib/openai/version.rb
CHANGED
data/lib/openai.rb
CHANGED
|
@@ -253,6 +253,13 @@ require_relative "openai/models/admin/organization/certificate_update_params"
|
|
|
253
253
|
require_relative "openai/models/admin/organization/cost_quantity_unit"
|
|
254
254
|
require_relative "openai/models/admin/organization/data_retention_retrieve_params"
|
|
255
255
|
require_relative "openai/models/admin/organization/data_retention_update_params"
|
|
256
|
+
require_relative "openai/models/admin/organization/external_key"
|
|
257
|
+
require_relative "openai/models/admin/organization/external_key_create_params"
|
|
258
|
+
require_relative "openai/models/admin/organization/external_key_delete_params"
|
|
259
|
+
require_relative "openai/models/admin/organization/external_key_list_params"
|
|
260
|
+
require_relative "openai/models/admin/organization/external_key_retrieve_params"
|
|
261
|
+
require_relative "openai/models/admin/organization/external_key_validate_params"
|
|
262
|
+
require_relative "openai/models/admin/organization/external_key_validate_response"
|
|
256
263
|
require_relative "openai/models/admin/organization/external_storage_configuration"
|
|
257
264
|
require_relative "openai/models/admin/organization/external_storage_create_params"
|
|
258
265
|
require_relative "openai/models/admin/organization/external_storage_deleted"
|
|
@@ -1553,6 +1560,7 @@ require_relative "openai/resources/admin/organization/admin_api_keys"
|
|
|
1553
1560
|
require_relative "openai/resources/admin/organization/audit_logs"
|
|
1554
1561
|
require_relative "openai/resources/admin/organization/certificates"
|
|
1555
1562
|
require_relative "openai/resources/admin/organization/data_retention"
|
|
1563
|
+
require_relative "openai/resources/admin/organization/external_keys"
|
|
1556
1564
|
require_relative "openai/resources/admin/organization/external_storage"
|
|
1557
1565
|
require_relative "openai/resources/admin/organization/groups"
|
|
1558
1566
|
require_relative "openai/resources/admin/organization/groups/roles"
|
|
@@ -116,18 +116,7 @@ module OpenAI
|
|
|
116
116
|
class SidebandConnection
|
|
117
117
|
include Enumerable
|
|
118
118
|
ClientEvent = T.type_alias do
|
|
119
|
-
T.any(
|
|
120
|
-
OpenAI::Live::SessionUpdateEvent,
|
|
121
|
-
OpenAI::Live::InputAudioMuteEvent,
|
|
122
|
-
OpenAI::Live::InputAudioUnmuteEvent,
|
|
123
|
-
OpenAI::Live::InstructionsAppendEvent,
|
|
124
|
-
OpenAI::Live::ThinkingAppendEvent,
|
|
125
|
-
OpenAI::Live::CommentaryAppendEvent,
|
|
126
|
-
OpenAI::Live::ResponseItemCreateEvent,
|
|
127
|
-
OpenAI::Live::ResponseCreateEvent,
|
|
128
|
-
OpenAI::Live::SessionCloseEvent,
|
|
129
|
-
T::Hash[T.any(String, Symbol), T.anything]
|
|
130
|
-
)
|
|
119
|
+
T.any(OpenAI::Live::SidebandClientEvent::Variants, T::Hash[T.any(String, Symbol), T.anything])
|
|
131
120
|
end
|
|
132
121
|
|
|
133
122
|
Elem = type_member { {fixed: Connection::ServerEvent} }
|
|
@@ -55,8 +55,13 @@ module OpenAI
|
|
|
55
55
|
end
|
|
56
56
|
|
|
57
57
|
# @api private
|
|
58
|
-
sig { params(event: ClientEvent).
|
|
59
|
-
def
|
|
58
|
+
sig { params(event: ClientEvent).void }
|
|
59
|
+
def send_response_create(event)
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
# @api private
|
|
63
|
+
sig { params(event: ClientEvent, response_create: T::Boolean).returns(OpenAI::Internal::AnyHash) }
|
|
64
|
+
def encode_client_event(event, response_create: false)
|
|
60
65
|
end
|
|
61
66
|
|
|
62
67
|
# @api private
|
|
@@ -11,6 +11,16 @@ module OpenAI
|
|
|
11
11
|
#
|
|
12
12
|
# Supported types: {NilClass} {String} {Symbol} {Integer} {Float} {OpenAI::Boolean}, {OpenAI::EnumOf}, {OpenAI::UnionOf}, {OpenAI::ArrayOf}, {OpenAI::BaseModel}
|
|
13
13
|
module StructuredOutput
|
|
14
|
+
# @api private
|
|
15
|
+
module RequestWithFormatUpdate
|
|
16
|
+
sig { returns(T.nilable(OpenAI::Helpers::StructuredOutput::JsonSchemaConverter::Input)) }
|
|
17
|
+
attr_accessor :text_model
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
# @api private
|
|
21
|
+
sig { params(request: OpenAI::Internal::AnyHash).returns(OpenAI::Internal::AnyHash) }
|
|
22
|
+
def self.prepare_configuration_updates!(request)
|
|
23
|
+
end
|
|
14
24
|
end
|
|
15
25
|
end
|
|
16
26
|
end
|