openai 0.56.0 → 0.58.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 +60 -0
- data/README.md +98 -1
- data/lib/openai/auth/subject_token_provider.rb +15 -0
- data/lib/openai/auth/subject_token_providers/azure_managed_identity_token_provider.rb +88 -0
- data/lib/openai/auth/subject_token_providers/gcp_id_token_provider.rb +66 -0
- data/lib/openai/auth/subject_token_providers/k8s_service_account_token_provider.rb +37 -0
- data/lib/openai/auth/token_type.rb +10 -0
- data/lib/openai/auth/workload_identity.rb +23 -0
- data/lib/openai/auth/workload_identity_auth.rb +176 -0
- data/lib/openai/client.rb +59 -4
- data/lib/openai/errors.rb +39 -0
- data/lib/openai/internal/util.rb +22 -7
- data/lib/openai/models/conversations/conversation_item.rb +4 -1
- data/lib/openai/models/conversations/conversation_item_list.rb +2 -2
- data/lib/openai/models/conversations/message.rb +28 -1
- data/lib/openai/models/oauth_error_code.rb +29 -0
- data/lib/openai/models/realtime/realtime_session_create_request.rb +4 -3
- data/lib/openai/models/realtime/realtime_session_create_response.rb +7 -5
- data/lib/openai/models/realtime/realtime_tracing_config.rb +3 -2
- data/lib/openai/models/responses/compacted_response.rb +2 -2
- data/lib/openai/models/responses/computer_action.rb +45 -5
- data/lib/openai/models/responses/response.rb +2 -2
- data/lib/openai/models/responses/response_computer_tool_call.rb +45 -5
- data/lib/openai/models/responses/response_computer_tool_call_output_item.rb +31 -22
- data/lib/openai/models/responses/response_custom_tool_call_item.rb +53 -0
- data/lib/openai/models/responses/response_custom_tool_call_output_item.rb +53 -0
- data/lib/openai/models/responses/response_function_tool_call_item.rb +31 -1
- data/lib/openai/models/responses/response_function_tool_call_output_item.rb +14 -6
- data/lib/openai/models/responses/response_input_message_item.rb +8 -20
- data/lib/openai/models/responses/response_item.rb +16 -1
- data/lib/openai/models/responses/response_item_list.rb +2 -2
- data/lib/openai/models/responses/response_output_item.rb +120 -1
- data/lib/openai/models/responses/response_output_item_added_event.rb +2 -2
- data/lib/openai/models/responses/response_output_item_done_event.rb +2 -2
- data/lib/openai/models/vector_stores/file_batch_create_params.rb +9 -5
- data/lib/openai/models/vector_stores/file_create_params.rb +3 -1
- data/lib/openai/models.rb +2 -0
- data/lib/openai/resources/conversations/items.rb +2 -2
- data/lib/openai/resources/realtime/calls.rb +1 -1
- data/lib/openai/resources/responses/input_items.rb +1 -1
- data/lib/openai/version.rb +1 -1
- data/lib/openai.rb +12 -2
- data/rbi/openai/auth.rbi +55 -0
- data/rbi/openai/internal/util.rbi +8 -0
- data/rbi/openai/models/conversations/conversation_item.rbi +1 -0
- data/rbi/openai/models/conversations/conversation_item_list.rbi +1 -0
- data/rbi/openai/models/conversations/message.rbi +53 -1
- data/rbi/openai/models/oauth_error_code.rbi +24 -0
- data/rbi/openai/models/realtime/realtime_session_create_request.rbi +6 -4
- data/rbi/openai/models/realtime/realtime_session_create_response.rbi +9 -6
- data/rbi/openai/models/realtime/realtime_tracing_config.rbi +3 -2
- data/rbi/openai/models/responses/compacted_response.rbi +6 -1
- data/rbi/openai/models/responses/computer_action.rbi +71 -11
- data/rbi/openai/models/responses/response.rbi +6 -1
- data/rbi/openai/models/responses/response_computer_tool_call.rbi +71 -11
- data/rbi/openai/models/responses/response_computer_tool_call_output_item.rbi +71 -65
- data/rbi/openai/models/responses/response_custom_tool_call_item.rbi +111 -0
- data/rbi/openai/models/responses/response_custom_tool_call_output_item.rbi +111 -0
- data/rbi/openai/models/responses/response_function_tool_call_item.rbi +81 -3
- data/rbi/openai/models/responses/response_function_tool_call_output_item.rbi +19 -18
- data/rbi/openai/models/responses/response_input_message_item.rbi +8 -49
- data/rbi/openai/models/responses/response_item.rbi +5 -1
- data/rbi/openai/models/responses/response_item_list.rbi +5 -1
- data/rbi/openai/models/responses/response_output_item.rbi +186 -1
- data/rbi/openai/models/responses/response_output_item_added_event.rbi +6 -1
- data/rbi/openai/models/responses/response_output_item_done_event.rbi +6 -1
- data/rbi/openai/models/vector_stores/file_batch_create_params.rbi +18 -10
- data/rbi/openai/models/vector_stores/file_create_params.rbi +6 -2
- data/rbi/openai/models.rbi +2 -0
- data/rbi/openai/resources/realtime/calls.rbi +3 -2
- data/rbi/openai/resources/vector_stores/file_batches.rbi +6 -4
- data/rbi/openai/resources/vector_stores/files.rbi +3 -1
- data/sig/openai/internal/util.rbs +4 -0
- data/sig/openai/models/conversations/conversation_item.rbs +1 -0
- data/sig/openai/models/conversations/message.rbs +18 -2
- data/sig/openai/models/oauth_error_code.rbs +14 -0
- data/sig/openai/models/responses/computer_action.rbs +53 -11
- data/sig/openai/models/responses/response_computer_tool_call.rbs +53 -11
- data/sig/openai/models/responses/response_computer_tool_call_output_item.rbs +23 -19
- data/sig/openai/models/responses/response_custom_tool_call_item.rbs +52 -0
- data/sig/openai/models/responses/response_custom_tool_call_output_item.rbs +52 -0
- data/sig/openai/models/responses/response_function_tool_call_item.rbs +38 -3
- data/sig/openai/models/responses/response_function_tool_call_output_item.rbs +10 -7
- data/sig/openai/models/responses/response_input_message_item.rbs +7 -21
- data/sig/openai/models/responses/response_item.rbs +4 -0
- data/sig/openai/models/responses/response_output_item.rbs +86 -0
- data/sig/openai/models.rbs +2 -0
- metadata +19 -2
|
@@ -20,6 +20,8 @@ module OpenAI
|
|
|
20
20
|
OpenAI::Responses::ResponseFunctionToolCallOutputItem,
|
|
21
21
|
OpenAI::Responses::ResponseToolSearchCall,
|
|
22
22
|
OpenAI::Responses::ResponseToolSearchOutputItem,
|
|
23
|
+
OpenAI::Responses::ResponseReasoningItem,
|
|
24
|
+
OpenAI::Responses::ResponseCompactionItem,
|
|
23
25
|
OpenAI::Responses::ResponseItem::ImageGenerationCall,
|
|
24
26
|
OpenAI::Responses::ResponseCodeInterpreterToolCall,
|
|
25
27
|
OpenAI::Responses::ResponseItem::LocalShellCall,
|
|
@@ -31,7 +33,9 @@ module OpenAI
|
|
|
31
33
|
OpenAI::Responses::ResponseItem::McpListTools,
|
|
32
34
|
OpenAI::Responses::ResponseItem::McpApprovalRequest,
|
|
33
35
|
OpenAI::Responses::ResponseItem::McpApprovalResponse,
|
|
34
|
-
OpenAI::Responses::ResponseItem::McpCall
|
|
36
|
+
OpenAI::Responses::ResponseItem::McpCall,
|
|
37
|
+
OpenAI::Responses::ResponseCustomToolCallItem,
|
|
38
|
+
OpenAI::Responses::ResponseCustomToolCallOutputItem
|
|
35
39
|
)
|
|
36
40
|
end
|
|
37
41
|
|
|
@@ -50,6 +50,8 @@ module OpenAI
|
|
|
50
50
|
OpenAI::Responses::ResponseFunctionToolCallOutputItem::OrHash,
|
|
51
51
|
OpenAI::Responses::ResponseToolSearchCall::OrHash,
|
|
52
52
|
OpenAI::Responses::ResponseToolSearchOutputItem::OrHash,
|
|
53
|
+
OpenAI::Responses::ResponseReasoningItem::OrHash,
|
|
54
|
+
OpenAI::Responses::ResponseCompactionItem::OrHash,
|
|
53
55
|
OpenAI::Responses::ResponseItem::ImageGenerationCall::OrHash,
|
|
54
56
|
OpenAI::Responses::ResponseCodeInterpreterToolCall::OrHash,
|
|
55
57
|
OpenAI::Responses::ResponseItem::LocalShellCall::OrHash,
|
|
@@ -61,7 +63,9 @@ module OpenAI
|
|
|
61
63
|
OpenAI::Responses::ResponseItem::McpListTools::OrHash,
|
|
62
64
|
OpenAI::Responses::ResponseItem::McpApprovalRequest::OrHash,
|
|
63
65
|
OpenAI::Responses::ResponseItem::McpApprovalResponse::OrHash,
|
|
64
|
-
OpenAI::Responses::ResponseItem::McpCall::OrHash
|
|
66
|
+
OpenAI::Responses::ResponseItem::McpCall::OrHash,
|
|
67
|
+
OpenAI::Responses::ResponseCustomToolCallItem::OrHash,
|
|
68
|
+
OpenAI::Responses::ResponseCustomToolCallOutputItem::OrHash
|
|
65
69
|
)
|
|
66
70
|
],
|
|
67
71
|
first_id: String,
|
|
@@ -13,8 +13,10 @@ module OpenAI
|
|
|
13
13
|
OpenAI::Responses::ResponseOutputMessage,
|
|
14
14
|
OpenAI::Responses::ResponseFileSearchToolCall,
|
|
15
15
|
OpenAI::Responses::ResponseFunctionToolCall,
|
|
16
|
+
OpenAI::Responses::ResponseFunctionToolCallOutputItem,
|
|
16
17
|
OpenAI::Responses::ResponseFunctionWebSearch,
|
|
17
18
|
OpenAI::Responses::ResponseComputerToolCall,
|
|
19
|
+
OpenAI::Responses::ResponseComputerToolCallOutputItem,
|
|
18
20
|
OpenAI::Responses::ResponseReasoningItem,
|
|
19
21
|
OpenAI::Responses::ResponseToolSearchCall,
|
|
20
22
|
OpenAI::Responses::ResponseToolSearchOutputItem,
|
|
@@ -22,6 +24,7 @@ module OpenAI
|
|
|
22
24
|
OpenAI::Responses::ResponseOutputItem::ImageGenerationCall,
|
|
23
25
|
OpenAI::Responses::ResponseCodeInterpreterToolCall,
|
|
24
26
|
OpenAI::Responses::ResponseOutputItem::LocalShellCall,
|
|
27
|
+
OpenAI::Responses::ResponseOutputItem::LocalShellCallOutput,
|
|
25
28
|
OpenAI::Responses::ResponseFunctionShellToolCall,
|
|
26
29
|
OpenAI::Responses::ResponseFunctionShellToolCallOutput,
|
|
27
30
|
OpenAI::Responses::ResponseApplyPatchToolCall,
|
|
@@ -29,7 +32,9 @@ module OpenAI
|
|
|
29
32
|
OpenAI::Responses::ResponseOutputItem::McpCall,
|
|
30
33
|
OpenAI::Responses::ResponseOutputItem::McpListTools,
|
|
31
34
|
OpenAI::Responses::ResponseOutputItem::McpApprovalRequest,
|
|
32
|
-
OpenAI::Responses::
|
|
35
|
+
OpenAI::Responses::ResponseOutputItem::McpApprovalResponse,
|
|
36
|
+
OpenAI::Responses::ResponseCustomToolCall,
|
|
37
|
+
OpenAI::Responses::ResponseCustomToolCallOutputItem
|
|
33
38
|
)
|
|
34
39
|
end
|
|
35
40
|
|
|
@@ -348,6 +353,118 @@ module OpenAI
|
|
|
348
353
|
end
|
|
349
354
|
end
|
|
350
355
|
|
|
356
|
+
class LocalShellCallOutput < OpenAI::Internal::Type::BaseModel
|
|
357
|
+
OrHash =
|
|
358
|
+
T.type_alias do
|
|
359
|
+
T.any(
|
|
360
|
+
OpenAI::Responses::ResponseOutputItem::LocalShellCallOutput,
|
|
361
|
+
OpenAI::Internal::AnyHash
|
|
362
|
+
)
|
|
363
|
+
end
|
|
364
|
+
|
|
365
|
+
# The unique ID of the local shell tool call generated by the model.
|
|
366
|
+
sig { returns(String) }
|
|
367
|
+
attr_accessor :id
|
|
368
|
+
|
|
369
|
+
# A JSON string of the output of the local shell tool call.
|
|
370
|
+
sig { returns(String) }
|
|
371
|
+
attr_accessor :output
|
|
372
|
+
|
|
373
|
+
# The type of the local shell tool call output. Always `local_shell_call_output`.
|
|
374
|
+
sig { returns(Symbol) }
|
|
375
|
+
attr_accessor :type
|
|
376
|
+
|
|
377
|
+
# The status of the item. One of `in_progress`, `completed`, or `incomplete`.
|
|
378
|
+
sig do
|
|
379
|
+
returns(
|
|
380
|
+
T.nilable(
|
|
381
|
+
OpenAI::Responses::ResponseOutputItem::LocalShellCallOutput::Status::TaggedSymbol
|
|
382
|
+
)
|
|
383
|
+
)
|
|
384
|
+
end
|
|
385
|
+
attr_accessor :status
|
|
386
|
+
|
|
387
|
+
# The output of a local shell tool call.
|
|
388
|
+
sig do
|
|
389
|
+
params(
|
|
390
|
+
id: String,
|
|
391
|
+
output: String,
|
|
392
|
+
status:
|
|
393
|
+
T.nilable(
|
|
394
|
+
OpenAI::Responses::ResponseOutputItem::LocalShellCallOutput::Status::OrSymbol
|
|
395
|
+
),
|
|
396
|
+
type: Symbol
|
|
397
|
+
).returns(T.attached_class)
|
|
398
|
+
end
|
|
399
|
+
def self.new(
|
|
400
|
+
# The unique ID of the local shell tool call generated by the model.
|
|
401
|
+
id:,
|
|
402
|
+
# A JSON string of the output of the local shell tool call.
|
|
403
|
+
output:,
|
|
404
|
+
# The status of the item. One of `in_progress`, `completed`, or `incomplete`.
|
|
405
|
+
status: nil,
|
|
406
|
+
# The type of the local shell tool call output. Always `local_shell_call_output`.
|
|
407
|
+
type: :local_shell_call_output
|
|
408
|
+
)
|
|
409
|
+
end
|
|
410
|
+
|
|
411
|
+
sig do
|
|
412
|
+
override.returns(
|
|
413
|
+
{
|
|
414
|
+
id: String,
|
|
415
|
+
output: String,
|
|
416
|
+
type: Symbol,
|
|
417
|
+
status:
|
|
418
|
+
T.nilable(
|
|
419
|
+
OpenAI::Responses::ResponseOutputItem::LocalShellCallOutput::Status::TaggedSymbol
|
|
420
|
+
)
|
|
421
|
+
}
|
|
422
|
+
)
|
|
423
|
+
end
|
|
424
|
+
def to_hash
|
|
425
|
+
end
|
|
426
|
+
|
|
427
|
+
# The status of the item. One of `in_progress`, `completed`, or `incomplete`.
|
|
428
|
+
module Status
|
|
429
|
+
extend OpenAI::Internal::Type::Enum
|
|
430
|
+
|
|
431
|
+
TaggedSymbol =
|
|
432
|
+
T.type_alias do
|
|
433
|
+
T.all(
|
|
434
|
+
Symbol,
|
|
435
|
+
OpenAI::Responses::ResponseOutputItem::LocalShellCallOutput::Status
|
|
436
|
+
)
|
|
437
|
+
end
|
|
438
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
439
|
+
|
|
440
|
+
IN_PROGRESS =
|
|
441
|
+
T.let(
|
|
442
|
+
:in_progress,
|
|
443
|
+
OpenAI::Responses::ResponseOutputItem::LocalShellCallOutput::Status::TaggedSymbol
|
|
444
|
+
)
|
|
445
|
+
COMPLETED =
|
|
446
|
+
T.let(
|
|
447
|
+
:completed,
|
|
448
|
+
OpenAI::Responses::ResponseOutputItem::LocalShellCallOutput::Status::TaggedSymbol
|
|
449
|
+
)
|
|
450
|
+
INCOMPLETE =
|
|
451
|
+
T.let(
|
|
452
|
+
:incomplete,
|
|
453
|
+
OpenAI::Responses::ResponseOutputItem::LocalShellCallOutput::Status::TaggedSymbol
|
|
454
|
+
)
|
|
455
|
+
|
|
456
|
+
sig do
|
|
457
|
+
override.returns(
|
|
458
|
+
T::Array[
|
|
459
|
+
OpenAI::Responses::ResponseOutputItem::LocalShellCallOutput::Status::TaggedSymbol
|
|
460
|
+
]
|
|
461
|
+
)
|
|
462
|
+
end
|
|
463
|
+
def self.values
|
|
464
|
+
end
|
|
465
|
+
end
|
|
466
|
+
end
|
|
467
|
+
|
|
351
468
|
class McpCall < OpenAI::Internal::Type::BaseModel
|
|
352
469
|
OrHash =
|
|
353
470
|
T.type_alias do
|
|
@@ -729,6 +846,74 @@ module OpenAI
|
|
|
729
846
|
end
|
|
730
847
|
end
|
|
731
848
|
|
|
849
|
+
class McpApprovalResponse < OpenAI::Internal::Type::BaseModel
|
|
850
|
+
OrHash =
|
|
851
|
+
T.type_alias do
|
|
852
|
+
T.any(
|
|
853
|
+
OpenAI::Responses::ResponseOutputItem::McpApprovalResponse,
|
|
854
|
+
OpenAI::Internal::AnyHash
|
|
855
|
+
)
|
|
856
|
+
end
|
|
857
|
+
|
|
858
|
+
# The unique ID of the approval response
|
|
859
|
+
sig { returns(String) }
|
|
860
|
+
attr_accessor :id
|
|
861
|
+
|
|
862
|
+
# The ID of the approval request being answered.
|
|
863
|
+
sig { returns(String) }
|
|
864
|
+
attr_accessor :approval_request_id
|
|
865
|
+
|
|
866
|
+
# Whether the request was approved.
|
|
867
|
+
sig { returns(T::Boolean) }
|
|
868
|
+
attr_accessor :approve
|
|
869
|
+
|
|
870
|
+
# The type of the item. Always `mcp_approval_response`.
|
|
871
|
+
sig { returns(Symbol) }
|
|
872
|
+
attr_accessor :type
|
|
873
|
+
|
|
874
|
+
# Optional reason for the decision.
|
|
875
|
+
sig { returns(T.nilable(String)) }
|
|
876
|
+
attr_accessor :reason
|
|
877
|
+
|
|
878
|
+
# A response to an MCP approval request.
|
|
879
|
+
sig do
|
|
880
|
+
params(
|
|
881
|
+
id: String,
|
|
882
|
+
approval_request_id: String,
|
|
883
|
+
approve: T::Boolean,
|
|
884
|
+
reason: T.nilable(String),
|
|
885
|
+
type: Symbol
|
|
886
|
+
).returns(T.attached_class)
|
|
887
|
+
end
|
|
888
|
+
def self.new(
|
|
889
|
+
# The unique ID of the approval response
|
|
890
|
+
id:,
|
|
891
|
+
# The ID of the approval request being answered.
|
|
892
|
+
approval_request_id:,
|
|
893
|
+
# Whether the request was approved.
|
|
894
|
+
approve:,
|
|
895
|
+
# Optional reason for the decision.
|
|
896
|
+
reason: nil,
|
|
897
|
+
# The type of the item. Always `mcp_approval_response`.
|
|
898
|
+
type: :mcp_approval_response
|
|
899
|
+
)
|
|
900
|
+
end
|
|
901
|
+
|
|
902
|
+
sig do
|
|
903
|
+
override.returns(
|
|
904
|
+
{
|
|
905
|
+
id: String,
|
|
906
|
+
approval_request_id: String,
|
|
907
|
+
approve: T::Boolean,
|
|
908
|
+
type: Symbol,
|
|
909
|
+
reason: T.nilable(String)
|
|
910
|
+
}
|
|
911
|
+
)
|
|
912
|
+
end
|
|
913
|
+
def to_hash
|
|
914
|
+
end
|
|
915
|
+
end
|
|
916
|
+
|
|
732
917
|
sig do
|
|
733
918
|
override.returns(
|
|
734
919
|
T::Array[OpenAI::Responses::ResponseOutputItem::Variants]
|
|
@@ -36,8 +36,10 @@ module OpenAI
|
|
|
36
36
|
OpenAI::Responses::ResponseOutputMessage::OrHash,
|
|
37
37
|
OpenAI::Responses::ResponseFileSearchToolCall::OrHash,
|
|
38
38
|
OpenAI::Responses::ResponseFunctionToolCall::OrHash,
|
|
39
|
+
OpenAI::Responses::ResponseFunctionToolCallOutputItem::OrHash,
|
|
39
40
|
OpenAI::Responses::ResponseFunctionWebSearch::OrHash,
|
|
40
41
|
OpenAI::Responses::ResponseComputerToolCall::OrHash,
|
|
42
|
+
OpenAI::Responses::ResponseComputerToolCallOutputItem::OrHash,
|
|
41
43
|
OpenAI::Responses::ResponseReasoningItem::OrHash,
|
|
42
44
|
OpenAI::Responses::ResponseToolSearchCall::OrHash,
|
|
43
45
|
OpenAI::Responses::ResponseToolSearchOutputItem::OrHash,
|
|
@@ -45,6 +47,7 @@ module OpenAI
|
|
|
45
47
|
OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::OrHash,
|
|
46
48
|
OpenAI::Responses::ResponseCodeInterpreterToolCall::OrHash,
|
|
47
49
|
OpenAI::Responses::ResponseOutputItem::LocalShellCall::OrHash,
|
|
50
|
+
OpenAI::Responses::ResponseOutputItem::LocalShellCallOutput::OrHash,
|
|
48
51
|
OpenAI::Responses::ResponseFunctionShellToolCall::OrHash,
|
|
49
52
|
OpenAI::Responses::ResponseFunctionShellToolCallOutput::OrHash,
|
|
50
53
|
OpenAI::Responses::ResponseApplyPatchToolCall::OrHash,
|
|
@@ -52,7 +55,9 @@ module OpenAI
|
|
|
52
55
|
OpenAI::Responses::ResponseOutputItem::McpCall::OrHash,
|
|
53
56
|
OpenAI::Responses::ResponseOutputItem::McpListTools::OrHash,
|
|
54
57
|
OpenAI::Responses::ResponseOutputItem::McpApprovalRequest::OrHash,
|
|
55
|
-
OpenAI::Responses::
|
|
58
|
+
OpenAI::Responses::ResponseOutputItem::McpApprovalResponse::OrHash,
|
|
59
|
+
OpenAI::Responses::ResponseCustomToolCall::OrHash,
|
|
60
|
+
OpenAI::Responses::ResponseCustomToolCallOutputItem::OrHash
|
|
56
61
|
),
|
|
57
62
|
output_index: Integer,
|
|
58
63
|
sequence_number: Integer,
|
|
@@ -36,8 +36,10 @@ module OpenAI
|
|
|
36
36
|
OpenAI::Responses::ResponseOutputMessage::OrHash,
|
|
37
37
|
OpenAI::Responses::ResponseFileSearchToolCall::OrHash,
|
|
38
38
|
OpenAI::Responses::ResponseFunctionToolCall::OrHash,
|
|
39
|
+
OpenAI::Responses::ResponseFunctionToolCallOutputItem::OrHash,
|
|
39
40
|
OpenAI::Responses::ResponseFunctionWebSearch::OrHash,
|
|
40
41
|
OpenAI::Responses::ResponseComputerToolCall::OrHash,
|
|
42
|
+
OpenAI::Responses::ResponseComputerToolCallOutputItem::OrHash,
|
|
41
43
|
OpenAI::Responses::ResponseReasoningItem::OrHash,
|
|
42
44
|
OpenAI::Responses::ResponseToolSearchCall::OrHash,
|
|
43
45
|
OpenAI::Responses::ResponseToolSearchOutputItem::OrHash,
|
|
@@ -45,6 +47,7 @@ module OpenAI
|
|
|
45
47
|
OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::OrHash,
|
|
46
48
|
OpenAI::Responses::ResponseCodeInterpreterToolCall::OrHash,
|
|
47
49
|
OpenAI::Responses::ResponseOutputItem::LocalShellCall::OrHash,
|
|
50
|
+
OpenAI::Responses::ResponseOutputItem::LocalShellCallOutput::OrHash,
|
|
48
51
|
OpenAI::Responses::ResponseFunctionShellToolCall::OrHash,
|
|
49
52
|
OpenAI::Responses::ResponseFunctionShellToolCallOutput::OrHash,
|
|
50
53
|
OpenAI::Responses::ResponseApplyPatchToolCall::OrHash,
|
|
@@ -52,7 +55,9 @@ module OpenAI
|
|
|
52
55
|
OpenAI::Responses::ResponseOutputItem::McpCall::OrHash,
|
|
53
56
|
OpenAI::Responses::ResponseOutputItem::McpListTools::OrHash,
|
|
54
57
|
OpenAI::Responses::ResponseOutputItem::McpApprovalRequest::OrHash,
|
|
55
|
-
OpenAI::Responses::
|
|
58
|
+
OpenAI::Responses::ResponseOutputItem::McpApprovalResponse::OrHash,
|
|
59
|
+
OpenAI::Responses::ResponseCustomToolCall::OrHash,
|
|
60
|
+
OpenAI::Responses::ResponseCustomToolCallOutputItem::OrHash
|
|
56
61
|
),
|
|
57
62
|
output_index: Integer,
|
|
58
63
|
sequence_number: Integer,
|
|
@@ -63,8 +63,9 @@ module OpenAI
|
|
|
63
63
|
# A list of [File](https://platform.openai.com/docs/api-reference/files) IDs that
|
|
64
64
|
# the vector store should use. Useful for tools like `file_search` that can access
|
|
65
65
|
# files. If `attributes` or `chunking_strategy` are provided, they will be applied
|
|
66
|
-
# to all files in the batch. The maximum batch size is 2000 files.
|
|
67
|
-
#
|
|
66
|
+
# to all files in the batch. The maximum batch size is 2000 files. This endpoint
|
|
67
|
+
# is recommended for multi-file ingestion and helps reduce per-vector-store write
|
|
68
|
+
# request pressure. Mutually exclusive with `files`.
|
|
68
69
|
sig { returns(T.nilable(T::Array[String])) }
|
|
69
70
|
attr_reader :file_ids
|
|
70
71
|
|
|
@@ -74,8 +75,9 @@ module OpenAI
|
|
|
74
75
|
# A list of objects that each include a `file_id` plus optional `attributes` or
|
|
75
76
|
# `chunking_strategy`. Use this when you need to override metadata for specific
|
|
76
77
|
# files. The global `attributes` or `chunking_strategy` will be ignored and must
|
|
77
|
-
# be specified for each file. The maximum batch size is 2000 files.
|
|
78
|
-
#
|
|
78
|
+
# be specified for each file. The maximum batch size is 2000 files. This endpoint
|
|
79
|
+
# is recommended for multi-file ingestion and helps reduce per-vector-store write
|
|
80
|
+
# request pressure. Mutually exclusive with `file_ids`.
|
|
79
81
|
sig do
|
|
80
82
|
returns(
|
|
81
83
|
T.nilable(
|
|
@@ -132,14 +134,16 @@ module OpenAI
|
|
|
132
134
|
# A list of [File](https://platform.openai.com/docs/api-reference/files) IDs that
|
|
133
135
|
# the vector store should use. Useful for tools like `file_search` that can access
|
|
134
136
|
# files. If `attributes` or `chunking_strategy` are provided, they will be applied
|
|
135
|
-
# to all files in the batch. The maximum batch size is 2000 files.
|
|
136
|
-
#
|
|
137
|
+
# to all files in the batch. The maximum batch size is 2000 files. This endpoint
|
|
138
|
+
# is recommended for multi-file ingestion and helps reduce per-vector-store write
|
|
139
|
+
# request pressure. Mutually exclusive with `files`.
|
|
137
140
|
file_ids: nil,
|
|
138
141
|
# A list of objects that each include a `file_id` plus optional `attributes` or
|
|
139
142
|
# `chunking_strategy`. Use this when you need to override metadata for specific
|
|
140
143
|
# files. The global `attributes` or `chunking_strategy` will be ignored and must
|
|
141
|
-
# be specified for each file. The maximum batch size is 2000 files.
|
|
142
|
-
#
|
|
144
|
+
# be specified for each file. The maximum batch size is 2000 files. This endpoint
|
|
145
|
+
# is recommended for multi-file ingestion and helps reduce per-vector-store write
|
|
146
|
+
# request pressure. Mutually exclusive with `file_ids`.
|
|
143
147
|
files: nil,
|
|
144
148
|
request_options: {}
|
|
145
149
|
)
|
|
@@ -198,7 +202,9 @@ module OpenAI
|
|
|
198
202
|
|
|
199
203
|
# A [File](https://platform.openai.com/docs/api-reference/files) ID that the
|
|
200
204
|
# vector store should use. Useful for tools like `file_search` that can access
|
|
201
|
-
# files.
|
|
205
|
+
# files. For multi-file ingestion, we recommend
|
|
206
|
+
# [`file_batches`](https://platform.openai.com/docs/api-reference/vector-stores-file-batches/createBatch)
|
|
207
|
+
# to minimize per-vector-store write requests.
|
|
202
208
|
sig { returns(String) }
|
|
203
209
|
attr_accessor :file_id
|
|
204
210
|
|
|
@@ -264,7 +270,9 @@ module OpenAI
|
|
|
264
270
|
def self.new(
|
|
265
271
|
# A [File](https://platform.openai.com/docs/api-reference/files) ID that the
|
|
266
272
|
# vector store should use. Useful for tools like `file_search` that can access
|
|
267
|
-
# files.
|
|
273
|
+
# files. For multi-file ingestion, we recommend
|
|
274
|
+
# [`file_batches`](https://platform.openai.com/docs/api-reference/vector-stores-file-batches/createBatch)
|
|
275
|
+
# to minimize per-vector-store write requests.
|
|
268
276
|
file_id:,
|
|
269
277
|
# Set of 16 key-value pairs that can be attached to an object. This can be useful
|
|
270
278
|
# for storing additional information about the object in a structured format, and
|
|
@@ -20,7 +20,9 @@ module OpenAI
|
|
|
20
20
|
|
|
21
21
|
# A [File](https://platform.openai.com/docs/api-reference/files) ID that the
|
|
22
22
|
# vector store should use. Useful for tools like `file_search` that can access
|
|
23
|
-
# files.
|
|
23
|
+
# files. For multi-file ingestion, we recommend
|
|
24
|
+
# [`file_batches`](https://platform.openai.com/docs/api-reference/vector-stores-file-batches/createBatch)
|
|
25
|
+
# to minimize per-vector-store write requests.
|
|
24
26
|
sig { returns(String) }
|
|
25
27
|
attr_accessor :file_id
|
|
26
28
|
|
|
@@ -89,7 +91,9 @@ module OpenAI
|
|
|
89
91
|
vector_store_id:,
|
|
90
92
|
# A [File](https://platform.openai.com/docs/api-reference/files) ID that the
|
|
91
93
|
# vector store should use. Useful for tools like `file_search` that can access
|
|
92
|
-
# files.
|
|
94
|
+
# files. For multi-file ingestion, we recommend
|
|
95
|
+
# [`file_batches`](https://platform.openai.com/docs/api-reference/vector-stores-file-batches/createBatch)
|
|
96
|
+
# to minimize per-vector-store write requests.
|
|
93
97
|
file_id:,
|
|
94
98
|
# Set of 16 key-value pairs that can be attached to an object. This can be useful
|
|
95
99
|
# for storing additional information about the object in a structured format, and
|
data/rbi/openai/models.rbi
CHANGED
|
@@ -99,8 +99,9 @@ module OpenAI
|
|
|
99
99
|
# Tools available to the model.
|
|
100
100
|
tools: nil,
|
|
101
101
|
# Realtime API can write session traces to the
|
|
102
|
-
# [Traces Dashboard](/logs?api=traces). Set to null to
|
|
103
|
-
# tracing is enabled for a session, the configuration cannot
|
|
102
|
+
# [Traces Dashboard](https://platform.openai.com/logs?api=traces). Set to null to
|
|
103
|
+
# disable tracing. Once tracing is enabled for a session, the configuration cannot
|
|
104
|
+
# be modified.
|
|
104
105
|
#
|
|
105
106
|
# `auto` will create a trace for the session with default values for the workflow
|
|
106
107
|
# name, group id, and metadata.
|
|
@@ -43,14 +43,16 @@ module OpenAI
|
|
|
43
43
|
# A list of [File](https://platform.openai.com/docs/api-reference/files) IDs that
|
|
44
44
|
# the vector store should use. Useful for tools like `file_search` that can access
|
|
45
45
|
# files. If `attributes` or `chunking_strategy` are provided, they will be applied
|
|
46
|
-
# to all files in the batch. The maximum batch size is 2000 files.
|
|
47
|
-
#
|
|
46
|
+
# to all files in the batch. The maximum batch size is 2000 files. This endpoint
|
|
47
|
+
# is recommended for multi-file ingestion and helps reduce per-vector-store write
|
|
48
|
+
# request pressure. Mutually exclusive with `files`.
|
|
48
49
|
file_ids: nil,
|
|
49
50
|
# A list of objects that each include a `file_id` plus optional `attributes` or
|
|
50
51
|
# `chunking_strategy`. Use this when you need to override metadata for specific
|
|
51
52
|
# files. The global `attributes` or `chunking_strategy` will be ignored and must
|
|
52
|
-
# be specified for each file. The maximum batch size is 2000 files.
|
|
53
|
-
#
|
|
53
|
+
# be specified for each file. The maximum batch size is 2000 files. This endpoint
|
|
54
|
+
# is recommended for multi-file ingestion and helps reduce per-vector-store write
|
|
55
|
+
# request pressure. Mutually exclusive with `file_ids`.
|
|
54
56
|
files: nil,
|
|
55
57
|
request_options: {}
|
|
56
58
|
)
|
|
@@ -31,7 +31,9 @@ module OpenAI
|
|
|
31
31
|
vector_store_id,
|
|
32
32
|
# A [File](https://platform.openai.com/docs/api-reference/files) ID that the
|
|
33
33
|
# vector store should use. Useful for tools like `file_search` that can access
|
|
34
|
-
# files.
|
|
34
|
+
# files. For multi-file ingestion, we recommend
|
|
35
|
+
# [`file_batches`](https://platform.openai.com/docs/api-reference/vector-stores-file-batches/createBatch)
|
|
36
|
+
# to minimize per-vector-store write requests.
|
|
35
37
|
file_id:,
|
|
36
38
|
# Set of 16 key-value pairs that can be attached to an object. This can be useful
|
|
37
39
|
# for storing additional information about the object in a structured format, and
|
|
@@ -45,8 +45,12 @@ module OpenAI
|
|
|
45
45
|
-> top?
|
|
46
46
|
} -> top?
|
|
47
47
|
|
|
48
|
+
RFC_3986_NOT_PCHARS: Regexp
|
|
49
|
+
|
|
48
50
|
def self?.uri_origin: (URI::Generic uri) -> String
|
|
49
51
|
|
|
52
|
+
def self?.encode_path: (String | Integer path) -> String
|
|
53
|
+
|
|
50
54
|
def self?.interpolate_path: (String | ::Array[String] path) -> String
|
|
51
55
|
|
|
52
56
|
def self?.decode_query: (String? query) -> ::Hash[String, ::Array[String]]
|
|
@@ -15,6 +15,7 @@ module OpenAI
|
|
|
15
15
|
| OpenAI::Responses::ResponseToolSearchCall
|
|
16
16
|
| OpenAI::Responses::ResponseToolSearchOutputItem
|
|
17
17
|
| OpenAI::Responses::ResponseReasoningItem
|
|
18
|
+
| OpenAI::Responses::ResponseCompactionItem
|
|
18
19
|
| OpenAI::Responses::ResponseCodeInterpreterToolCall
|
|
19
20
|
| OpenAI::Conversations::ConversationItem::LocalShellCall
|
|
20
21
|
| OpenAI::Conversations::ConversationItem::LocalShellCallOutput
|
|
@@ -7,7 +7,8 @@ module OpenAI
|
|
|
7
7
|
content: ::Array[OpenAI::Models::Conversations::Message::content],
|
|
8
8
|
role: OpenAI::Models::Conversations::Message::role,
|
|
9
9
|
status: OpenAI::Models::Conversations::Message::status,
|
|
10
|
-
type: :message
|
|
10
|
+
type: :message,
|
|
11
|
+
phase: OpenAI::Models::Conversations::Message::phase?
|
|
11
12
|
}
|
|
12
13
|
|
|
13
14
|
class Message < OpenAI::Internal::Type::BaseModel
|
|
@@ -21,11 +22,14 @@ module OpenAI
|
|
|
21
22
|
|
|
22
23
|
attr_accessor type: :message
|
|
23
24
|
|
|
25
|
+
attr_accessor phase: OpenAI::Models::Conversations::Message::phase?
|
|
26
|
+
|
|
24
27
|
def initialize: (
|
|
25
28
|
id: String,
|
|
26
29
|
content: ::Array[OpenAI::Models::Conversations::Message::content],
|
|
27
30
|
role: OpenAI::Models::Conversations::Message::role,
|
|
28
31
|
status: OpenAI::Models::Conversations::Message::status,
|
|
32
|
+
?phase: OpenAI::Models::Conversations::Message::phase?,
|
|
29
33
|
?type: :message
|
|
30
34
|
) -> void
|
|
31
35
|
|
|
@@ -34,7 +38,8 @@ module OpenAI
|
|
|
34
38
|
content: ::Array[OpenAI::Models::Conversations::Message::content],
|
|
35
39
|
role: OpenAI::Models::Conversations::Message::role,
|
|
36
40
|
status: OpenAI::Models::Conversations::Message::status,
|
|
37
|
-
type: :message
|
|
41
|
+
type: :message,
|
|
42
|
+
phase: OpenAI::Models::Conversations::Message::phase?
|
|
38
43
|
}
|
|
39
44
|
|
|
40
45
|
type content =
|
|
@@ -102,6 +107,17 @@ module OpenAI
|
|
|
102
107
|
|
|
103
108
|
def self?.values: -> ::Array[OpenAI::Models::Conversations::Message::status]
|
|
104
109
|
end
|
|
110
|
+
|
|
111
|
+
type phase = :commentary | :final_answer
|
|
112
|
+
|
|
113
|
+
module Phase
|
|
114
|
+
extend OpenAI::Internal::Type::Enum
|
|
115
|
+
|
|
116
|
+
COMMENTARY: :commentary
|
|
117
|
+
FINAL_ANSWER: :final_answer
|
|
118
|
+
|
|
119
|
+
def self?.values: -> ::Array[OpenAI::Models::Conversations::Message::phase]
|
|
120
|
+
end
|
|
105
121
|
end
|
|
106
122
|
end
|
|
107
123
|
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
module OpenAI
|
|
2
|
+
module Models
|
|
3
|
+
type oauth_error_code = :invalid_grant | :invalid_subject_token | String
|
|
4
|
+
|
|
5
|
+
module OAuthErrorCode
|
|
6
|
+
extend OpenAI::Internal::Type::Union
|
|
7
|
+
|
|
8
|
+
def self?.variants: -> ::Array[OpenAI::Models::oauth_error_code]
|
|
9
|
+
|
|
10
|
+
INVALID_GRANT: :invalid_grant
|
|
11
|
+
INVALID_SUBJECT_TOKEN: :invalid_subject_token
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|