openai 0.35.1 → 0.36.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.
Files changed (125) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +17 -0
  3. data/README.md +21 -15
  4. data/lib/openai/helpers/structured_output/union_of.rb +5 -1
  5. data/lib/openai/internal/transport/pooled_net_requester.rb +6 -2
  6. data/lib/openai/internal/type/enum.rb +6 -6
  7. data/lib/openai/models/batch_create_params.rb +9 -6
  8. data/lib/openai/models/beta/assistant_create_params.rb +9 -5
  9. data/lib/openai/models/beta/assistant_update_params.rb +9 -5
  10. data/lib/openai/models/beta/threads/run_create_params.rb +10 -6
  11. data/lib/openai/models/chat/completion_create_params.rb +37 -6
  12. data/lib/openai/models/chat_model.rb +5 -0
  13. data/lib/openai/models/conversations/conversation_create_params.rb +2 -2
  14. data/lib/openai/models/conversations/conversation_item.rb +13 -1
  15. data/lib/openai/models/conversations/conversation_item_list.rb +2 -2
  16. data/lib/openai/models/conversations/item_create_params.rb +2 -2
  17. data/lib/openai/models/evals/create_eval_completions_run_data_source.rb +9 -5
  18. data/lib/openai/models/evals/run_cancel_response.rb +20 -12
  19. data/lib/openai/models/evals/run_create_params.rb +20 -12
  20. data/lib/openai/models/evals/run_create_response.rb +20 -12
  21. data/lib/openai/models/evals/run_list_response.rb +20 -12
  22. data/lib/openai/models/evals/run_retrieve_response.rb +20 -12
  23. data/lib/openai/models/graders/score_model_grader.rb +9 -5
  24. data/lib/openai/models/reasoning.rb +10 -6
  25. data/lib/openai/models/reasoning_effort.rb +10 -5
  26. data/lib/openai/models/responses/apply_patch_tool.rb +20 -0
  27. data/lib/openai/models/responses/function_shell_tool.rb +20 -0
  28. data/lib/openai/models/responses/input_token_count_params.rb +14 -8
  29. data/lib/openai/models/responses/response.rb +46 -11
  30. data/lib/openai/models/responses/response_apply_patch_tool_call.rb +179 -0
  31. data/lib/openai/models/responses/response_apply_patch_tool_call_output.rb +77 -0
  32. data/lib/openai/models/responses/response_create_params.rb +42 -9
  33. data/lib/openai/models/responses/response_function_shell_call_output_content.rb +88 -0
  34. data/lib/openai/models/responses/response_function_shell_tool_call.rb +109 -0
  35. data/lib/openai/models/responses/response_function_shell_tool_call_output.rb +158 -0
  36. data/lib/openai/models/responses/response_input_item.rb +395 -1
  37. data/lib/openai/models/responses/response_item.rb +13 -1
  38. data/lib/openai/models/responses/response_item_list.rb +2 -2
  39. data/lib/openai/models/responses/response_output_item.rb +13 -1
  40. data/lib/openai/models/responses/response_output_item_added_event.rb +2 -2
  41. data/lib/openai/models/responses/response_output_item_done_event.rb +2 -2
  42. data/lib/openai/models/responses/tool.rb +7 -1
  43. data/lib/openai/models/responses/tool_choice_apply_patch.rb +20 -0
  44. data/lib/openai/models/responses/tool_choice_shell.rb +20 -0
  45. data/lib/openai/resources/chat/completions.rb +6 -2
  46. data/lib/openai/resources/conversations/items.rb +3 -3
  47. data/lib/openai/resources/conversations.rb +1 -1
  48. data/lib/openai/resources/responses/input_items.rb +1 -1
  49. data/lib/openai/resources/responses/input_tokens.rb +3 -3
  50. data/lib/openai/resources/responses.rb +12 -8
  51. data/lib/openai/version.rb +1 -1
  52. data/lib/openai.rb +10 -0
  53. data/manifest.yaml +1 -0
  54. data/rbi/openai/internal/transport/pooled_net_requester.rbi +6 -2
  55. data/rbi/openai/models/batch_create_params.rbi +17 -9
  56. data/rbi/openai/models/beta/assistant_create_params.rbi +18 -10
  57. data/rbi/openai/models/beta/assistant_update_params.rbi +18 -10
  58. data/rbi/openai/models/beta/threads/run_create_params.rbi +18 -10
  59. data/rbi/openai/models/chat/completion_create_params.rbi +82 -10
  60. data/rbi/openai/models/chat_model.rbi +7 -0
  61. data/rbi/openai/models/conversations/conversation_create_params.rbi +12 -0
  62. data/rbi/openai/models/conversations/conversation_item.rbi +4 -0
  63. data/rbi/openai/models/conversations/conversation_item_list.rbi +4 -0
  64. data/rbi/openai/models/conversations/item_create_params.rbi +12 -0
  65. data/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi +18 -10
  66. data/rbi/openai/models/evals/run_cancel_response.rbi +40 -20
  67. data/rbi/openai/models/evals/run_create_params.rbi +44 -20
  68. data/rbi/openai/models/evals/run_create_response.rbi +40 -20
  69. data/rbi/openai/models/evals/run_list_response.rbi +40 -20
  70. data/rbi/openai/models/evals/run_retrieve_response.rbi +40 -20
  71. data/rbi/openai/models/graders/score_model_grader.rbi +18 -10
  72. data/rbi/openai/models/reasoning.rbi +18 -10
  73. data/rbi/openai/models/reasoning_effort.rbi +10 -5
  74. data/rbi/openai/models/responses/apply_patch_tool.rbi +30 -0
  75. data/rbi/openai/models/responses/function_shell_tool.rbi +33 -0
  76. data/rbi/openai/models/responses/input_token_count_params.rbi +18 -4
  77. data/rbi/openai/models/responses/response.rbi +73 -2
  78. data/rbi/openai/models/responses/response_apply_patch_tool_call.rbi +300 -0
  79. data/rbi/openai/models/responses/response_apply_patch_tool_call_output.rbi +129 -0
  80. data/rbi/openai/models/responses/response_create_params.rbi +87 -5
  81. data/rbi/openai/models/responses/response_function_shell_call_output_content.rbi +157 -0
  82. data/rbi/openai/models/responses/response_function_shell_tool_call.rbi +198 -0
  83. data/rbi/openai/models/responses/response_function_shell_tool_call_output.rbi +254 -0
  84. data/rbi/openai/models/responses/response_input_item.rbi +675 -0
  85. data/rbi/openai/models/responses/response_item.rbi +4 -0
  86. data/rbi/openai/models/responses/response_item_list.rbi +4 -0
  87. data/rbi/openai/models/responses/response_output_item.rbi +4 -0
  88. data/rbi/openai/models/responses/response_output_item_added_event.rbi +4 -0
  89. data/rbi/openai/models/responses/response_output_item_done_event.rbi +4 -0
  90. data/rbi/openai/models/responses/tool.rbi +2 -0
  91. data/rbi/openai/models/responses/tool_choice_apply_patch.rbi +33 -0
  92. data/rbi/openai/models/responses/tool_choice_shell.rbi +30 -0
  93. data/rbi/openai/resources/batches.rbi +4 -3
  94. data/rbi/openai/resources/beta/assistants.rbi +18 -10
  95. data/rbi/openai/resources/beta/threads/runs.rbi +18 -10
  96. data/rbi/openai/resources/chat/completions.rbi +38 -12
  97. data/rbi/openai/resources/conversations/items.rbi +4 -0
  98. data/rbi/openai/resources/conversations.rbi +4 -0
  99. data/rbi/openai/resources/responses/input_tokens.rbi +5 -1
  100. data/rbi/openai/resources/responses.rbi +28 -2
  101. data/sig/openai/internal/transport/pooled_net_requester.rbs +4 -1
  102. data/sig/openai/models/batch_create_params.rbs +2 -0
  103. data/sig/openai/models/chat/completion_create_params.rbs +16 -0
  104. data/sig/openai/models/chat_model.rbs +11 -1
  105. data/sig/openai/models/conversations/conversation_item.rbs +4 -0
  106. data/sig/openai/models/reasoning_effort.rbs +2 -1
  107. data/sig/openai/models/responses/apply_patch_tool.rbs +15 -0
  108. data/sig/openai/models/responses/function_shell_tool.rbs +15 -0
  109. data/sig/openai/models/responses/input_token_count_params.rbs +2 -0
  110. data/sig/openai/models/responses/response.rbs +18 -0
  111. data/sig/openai/models/responses/response_apply_patch_tool_call.rbs +123 -0
  112. data/sig/openai/models/responses/response_apply_patch_tool_call_output.rbs +60 -0
  113. data/sig/openai/models/responses/response_create_params.rbs +18 -0
  114. data/sig/openai/models/responses/response_function_shell_call_output_content.rbs +64 -0
  115. data/sig/openai/models/responses/response_function_shell_tool_call.rbs +88 -0
  116. data/sig/openai/models/responses/response_function_shell_tool_call_output.rbs +115 -0
  117. data/sig/openai/models/responses/response_input_item.rbs +276 -0
  118. data/sig/openai/models/responses/response_item.rbs +4 -0
  119. data/sig/openai/models/responses/response_output_item.rbs +4 -0
  120. data/sig/openai/models/responses/tool.rbs +2 -0
  121. data/sig/openai/models/responses/tool_choice_apply_patch.rbs +15 -0
  122. data/sig/openai/models/responses/tool_choice_shell.rbs +15 -0
  123. data/sig/openai/resources/chat/completions.rbs +2 -0
  124. data/sig/openai/resources/responses.rbs +2 -0
  125. metadata +29 -2
@@ -16,6 +16,10 @@ module OpenAI
16
16
  | OpenAI::Responses::ResponseCodeInterpreterToolCall
17
17
  | OpenAI::Responses::ResponseInputItem::LocalShellCall
18
18
  | OpenAI::Responses::ResponseInputItem::LocalShellCallOutput
19
+ | OpenAI::Responses::ResponseInputItem::ShellCall
20
+ | OpenAI::Responses::ResponseInputItem::ShellCallOutput
21
+ | OpenAI::Responses::ResponseInputItem::ApplyPatchCall
22
+ | OpenAI::Responses::ResponseInputItem::ApplyPatchCallOutput
19
23
  | OpenAI::Responses::ResponseInputItem::McpListTools
20
24
  | OpenAI::Responses::ResponseInputItem::McpApprovalRequest
21
25
  | OpenAI::Responses::ResponseInputItem::McpApprovalResponse
@@ -413,6 +417,278 @@ module OpenAI
413
417
  end
414
418
  end
415
419
 
420
+ type shell_call =
421
+ {
422
+ action: OpenAI::Responses::ResponseInputItem::ShellCall::Action,
423
+ call_id: String,
424
+ type: :shell_call,
425
+ id: String?,
426
+ status: OpenAI::Models::Responses::ResponseInputItem::ShellCall::status?
427
+ }
428
+
429
+ class ShellCall < OpenAI::Internal::Type::BaseModel
430
+ attr_accessor action: OpenAI::Responses::ResponseInputItem::ShellCall::Action
431
+
432
+ attr_accessor call_id: String
433
+
434
+ attr_accessor type: :shell_call
435
+
436
+ attr_accessor id: String?
437
+
438
+ attr_accessor status: OpenAI::Models::Responses::ResponseInputItem::ShellCall::status?
439
+
440
+ def initialize: (
441
+ action: OpenAI::Responses::ResponseInputItem::ShellCall::Action,
442
+ call_id: String,
443
+ ?id: String?,
444
+ ?status: OpenAI::Models::Responses::ResponseInputItem::ShellCall::status?,
445
+ ?type: :shell_call
446
+ ) -> void
447
+
448
+ def to_hash: -> {
449
+ action: OpenAI::Responses::ResponseInputItem::ShellCall::Action,
450
+ call_id: String,
451
+ type: :shell_call,
452
+ id: String?,
453
+ status: OpenAI::Models::Responses::ResponseInputItem::ShellCall::status?
454
+ }
455
+
456
+ type action =
457
+ {
458
+ commands: ::Array[String],
459
+ max_output_length: Integer?,
460
+ timeout_ms: Integer?
461
+ }
462
+
463
+ class Action < OpenAI::Internal::Type::BaseModel
464
+ attr_accessor commands: ::Array[String]
465
+
466
+ attr_accessor max_output_length: Integer?
467
+
468
+ attr_accessor timeout_ms: Integer?
469
+
470
+ def initialize: (
471
+ commands: ::Array[String],
472
+ ?max_output_length: Integer?,
473
+ ?timeout_ms: Integer?
474
+ ) -> void
475
+
476
+ def to_hash: -> {
477
+ commands: ::Array[String],
478
+ max_output_length: Integer?,
479
+ timeout_ms: Integer?
480
+ }
481
+ end
482
+
483
+ type status = :in_progress | :completed | :incomplete
484
+
485
+ module Status
486
+ extend OpenAI::Internal::Type::Enum
487
+
488
+ IN_PROGRESS: :in_progress
489
+ COMPLETED: :completed
490
+ INCOMPLETE: :incomplete
491
+
492
+ def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputItem::ShellCall::status]
493
+ end
494
+ end
495
+
496
+ type shell_call_output =
497
+ {
498
+ call_id: String,
499
+ output: ::Array[OpenAI::Responses::ResponseFunctionShellCallOutputContent],
500
+ type: :shell_call_output,
501
+ id: String?,
502
+ max_output_length: Integer?
503
+ }
504
+
505
+ class ShellCallOutput < OpenAI::Internal::Type::BaseModel
506
+ attr_accessor call_id: String
507
+
508
+ attr_accessor output: ::Array[OpenAI::Responses::ResponseFunctionShellCallOutputContent]
509
+
510
+ attr_accessor type: :shell_call_output
511
+
512
+ attr_accessor id: String?
513
+
514
+ attr_accessor max_output_length: Integer?
515
+
516
+ def initialize: (
517
+ call_id: String,
518
+ output: ::Array[OpenAI::Responses::ResponseFunctionShellCallOutputContent],
519
+ ?id: String?,
520
+ ?max_output_length: Integer?,
521
+ ?type: :shell_call_output
522
+ ) -> void
523
+
524
+ def to_hash: -> {
525
+ call_id: String,
526
+ output: ::Array[OpenAI::Responses::ResponseFunctionShellCallOutputContent],
527
+ type: :shell_call_output,
528
+ id: String?,
529
+ max_output_length: Integer?
530
+ }
531
+ end
532
+
533
+ type apply_patch_call =
534
+ {
535
+ call_id: String,
536
+ operation: OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall::operation,
537
+ status: OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall::status,
538
+ type: :apply_patch_call,
539
+ id: String?
540
+ }
541
+
542
+ class ApplyPatchCall < OpenAI::Internal::Type::BaseModel
543
+ attr_accessor call_id: String
544
+
545
+ attr_accessor operation: OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall::operation
546
+
547
+ attr_accessor status: OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall::status
548
+
549
+ attr_accessor type: :apply_patch_call
550
+
551
+ attr_accessor id: String?
552
+
553
+ def initialize: (
554
+ call_id: String,
555
+ operation: OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall::operation,
556
+ status: OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall::status,
557
+ ?id: String?,
558
+ ?type: :apply_patch_call
559
+ ) -> void
560
+
561
+ def to_hash: -> {
562
+ call_id: String,
563
+ operation: OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall::operation,
564
+ status: OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall::status,
565
+ type: :apply_patch_call,
566
+ id: String?
567
+ }
568
+
569
+ type operation =
570
+ OpenAI::Responses::ResponseInputItem::ApplyPatchCall::Operation::CreateFile
571
+ | OpenAI::Responses::ResponseInputItem::ApplyPatchCall::Operation::DeleteFile
572
+ | OpenAI::Responses::ResponseInputItem::ApplyPatchCall::Operation::UpdateFile
573
+
574
+ module Operation
575
+ extend OpenAI::Internal::Type::Union
576
+
577
+ type create_file =
578
+ { diff: String, path: String, type: :create_file }
579
+
580
+ class CreateFile < OpenAI::Internal::Type::BaseModel
581
+ attr_accessor diff: String
582
+
583
+ attr_accessor path: String
584
+
585
+ attr_accessor type: :create_file
586
+
587
+ def initialize: (
588
+ diff: String,
589
+ path: String,
590
+ ?type: :create_file
591
+ ) -> void
592
+
593
+ def to_hash: -> { diff: String, path: String, type: :create_file }
594
+ end
595
+
596
+ type delete_file = { path: String, type: :delete_file }
597
+
598
+ class DeleteFile < OpenAI::Internal::Type::BaseModel
599
+ attr_accessor path: String
600
+
601
+ attr_accessor type: :delete_file
602
+
603
+ def initialize: (path: String, ?type: :delete_file) -> void
604
+
605
+ def to_hash: -> { path: String, type: :delete_file }
606
+ end
607
+
608
+ type update_file =
609
+ { diff: String, path: String, type: :update_file }
610
+
611
+ class UpdateFile < OpenAI::Internal::Type::BaseModel
612
+ attr_accessor diff: String
613
+
614
+ attr_accessor path: String
615
+
616
+ attr_accessor type: :update_file
617
+
618
+ def initialize: (
619
+ diff: String,
620
+ path: String,
621
+ ?type: :update_file
622
+ ) -> void
623
+
624
+ def to_hash: -> { diff: String, path: String, type: :update_file }
625
+ end
626
+
627
+ def self?.variants: -> ::Array[OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall::operation]
628
+ end
629
+
630
+ type status = :in_progress | :completed
631
+
632
+ module Status
633
+ extend OpenAI::Internal::Type::Enum
634
+
635
+ IN_PROGRESS: :in_progress
636
+ COMPLETED: :completed
637
+
638
+ def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCall::status]
639
+ end
640
+ end
641
+
642
+ type apply_patch_call_output =
643
+ {
644
+ call_id: String,
645
+ status: OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput::status,
646
+ type: :apply_patch_call_output,
647
+ id: String?,
648
+ output: String
649
+ }
650
+
651
+ class ApplyPatchCallOutput < OpenAI::Internal::Type::BaseModel
652
+ attr_accessor call_id: String
653
+
654
+ attr_accessor status: OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput::status
655
+
656
+ attr_accessor type: :apply_patch_call_output
657
+
658
+ attr_accessor id: String?
659
+
660
+ attr_reader output: String?
661
+
662
+ def output=: (String) -> String
663
+
664
+ def initialize: (
665
+ call_id: String,
666
+ status: OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput::status,
667
+ ?id: String?,
668
+ ?output: String,
669
+ ?type: :apply_patch_call_output
670
+ ) -> void
671
+
672
+ def to_hash: -> {
673
+ call_id: String,
674
+ status: OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput::status,
675
+ type: :apply_patch_call_output,
676
+ id: String?,
677
+ output: String
678
+ }
679
+
680
+ type status = :completed | :failed
681
+
682
+ module Status
683
+ extend OpenAI::Internal::Type::Enum
684
+
685
+ COMPLETED: :completed
686
+ FAILED: :failed
687
+
688
+ def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputItem::ApplyPatchCallOutput::status]
689
+ end
690
+ end
691
+
416
692
  type mcp_list_tools =
417
693
  {
418
694
  id: String,
@@ -14,6 +14,10 @@ module OpenAI
14
14
  | OpenAI::Responses::ResponseCodeInterpreterToolCall
15
15
  | OpenAI::Responses::ResponseItem::LocalShellCall
16
16
  | OpenAI::Responses::ResponseItem::LocalShellCallOutput
17
+ | OpenAI::Responses::ResponseFunctionShellToolCall
18
+ | OpenAI::Responses::ResponseFunctionShellToolCallOutput
19
+ | OpenAI::Responses::ResponseApplyPatchToolCall
20
+ | OpenAI::Responses::ResponseApplyPatchToolCallOutput
17
21
  | OpenAI::Responses::ResponseItem::McpListTools
18
22
  | OpenAI::Responses::ResponseItem::McpApprovalRequest
19
23
  | OpenAI::Responses::ResponseItem::McpApprovalResponse
@@ -11,6 +11,10 @@ module OpenAI
11
11
  | OpenAI::Responses::ResponseOutputItem::ImageGenerationCall
12
12
  | OpenAI::Responses::ResponseCodeInterpreterToolCall
13
13
  | OpenAI::Responses::ResponseOutputItem::LocalShellCall
14
+ | OpenAI::Responses::ResponseFunctionShellToolCall
15
+ | OpenAI::Responses::ResponseFunctionShellToolCallOutput
16
+ | OpenAI::Responses::ResponseApplyPatchToolCall
17
+ | OpenAI::Responses::ResponseApplyPatchToolCallOutput
14
18
  | OpenAI::Responses::ResponseOutputItem::McpCall
15
19
  | OpenAI::Responses::ResponseOutputItem::McpListTools
16
20
  | OpenAI::Responses::ResponseOutputItem::McpApprovalRequest
@@ -9,7 +9,9 @@ module OpenAI
9
9
  | OpenAI::Responses::Tool::CodeInterpreter
10
10
  | OpenAI::Responses::Tool::ImageGeneration
11
11
  | OpenAI::Responses::Tool::LocalShell
12
+ | OpenAI::Responses::FunctionShellTool
12
13
  | OpenAI::Responses::CustomTool
14
+ | OpenAI::Responses::ApplyPatchTool
13
15
  | OpenAI::Responses::WebSearchTool
14
16
  | OpenAI::Responses::WebSearchPreviewTool
15
17
 
@@ -0,0 +1,15 @@
1
+ module OpenAI
2
+ module Models
3
+ module Responses
4
+ type tool_choice_apply_patch = { type: :apply_patch }
5
+
6
+ class ToolChoiceApplyPatch < OpenAI::Internal::Type::BaseModel
7
+ attr_accessor type: :apply_patch
8
+
9
+ def initialize: (?type: :apply_patch) -> void
10
+
11
+ def to_hash: -> { type: :apply_patch }
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,15 @@
1
+ module OpenAI
2
+ module Models
3
+ module Responses
4
+ type tool_choice_shell = { type: :shell }
5
+
6
+ class ToolChoiceShell < OpenAI::Internal::Type::BaseModel
7
+ attr_accessor type: :shell
8
+
9
+ def initialize: (?type: :shell) -> void
10
+
11
+ def to_hash: -> { type: :shell }
12
+ end
13
+ end
14
+ end
15
+ end
@@ -22,6 +22,7 @@ module OpenAI
22
22
  ?prediction: OpenAI::Chat::ChatCompletionPredictionContent?,
23
23
  ?presence_penalty: Float?,
24
24
  ?prompt_cache_key: String,
25
+ ?prompt_cache_retention: OpenAI::Models::Chat::CompletionCreateParams::prompt_cache_retention?,
25
26
  ?reasoning_effort: OpenAI::Models::reasoning_effort?,
26
27
  ?response_format: OpenAI::Models::Chat::CompletionCreateParams::response_format,
27
28
  ?safety_identifier: String,
@@ -59,6 +60,7 @@ module OpenAI
59
60
  ?prediction: OpenAI::Chat::ChatCompletionPredictionContent?,
60
61
  ?presence_penalty: Float?,
61
62
  ?prompt_cache_key: String,
63
+ ?prompt_cache_retention: OpenAI::Models::Chat::CompletionCreateParams::prompt_cache_retention?,
62
64
  ?reasoning_effort: OpenAI::Models::reasoning_effort?,
63
65
  ?response_format: OpenAI::Models::Chat::CompletionCreateParams::response_format,
64
66
  ?safety_identifier: String,
@@ -19,6 +19,7 @@ module OpenAI
19
19
  ?previous_response_id: String?,
20
20
  ?prompt: OpenAI::Responses::ResponsePrompt?,
21
21
  ?prompt_cache_key: String,
22
+ ?prompt_cache_retention: OpenAI::Models::Responses::ResponseCreateParams::prompt_cache_retention?,
22
23
  ?reasoning: OpenAI::Reasoning?,
23
24
  ?safety_identifier: String,
24
25
  ?service_tier: OpenAI::Models::Responses::ResponseCreateParams::service_tier?,
@@ -49,6 +50,7 @@ module OpenAI
49
50
  ?previous_response_id: String?,
50
51
  ?prompt: OpenAI::Responses::ResponsePrompt?,
51
52
  ?prompt_cache_key: String,
53
+ ?prompt_cache_retention: OpenAI::Models::Responses::ResponseCreateParams::prompt_cache_retention?,
52
54
  ?reasoning: OpenAI::Reasoning?,
53
55
  ?safety_identifier: String,
54
56
  ?service_tier: OpenAI::Models::Responses::ResponseCreateParams::service_tier?,
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: openai
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.35.1
4
+ version: 0.36.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - OpenAI
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-11-04 00:00:00.000000000 Z
11
+ date: 2025-11-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: connection_pool
@@ -534,15 +534,19 @@ files:
534
534
  - lib/openai/models/response_format_text.rb
535
535
  - lib/openai/models/response_format_text_grammar.rb
536
536
  - lib/openai/models/response_format_text_python.rb
537
+ - lib/openai/models/responses/apply_patch_tool.rb
537
538
  - lib/openai/models/responses/computer_tool.rb
538
539
  - lib/openai/models/responses/custom_tool.rb
539
540
  - lib/openai/models/responses/easy_input_message.rb
540
541
  - lib/openai/models/responses/file_search_tool.rb
542
+ - lib/openai/models/responses/function_shell_tool.rb
541
543
  - lib/openai/models/responses/function_tool.rb
542
544
  - lib/openai/models/responses/input_item_list_params.rb
543
545
  - lib/openai/models/responses/input_token_count_params.rb
544
546
  - lib/openai/models/responses/input_token_count_response.rb
545
547
  - lib/openai/models/responses/response.rb
548
+ - lib/openai/models/responses/response_apply_patch_tool_call.rb
549
+ - lib/openai/models/responses/response_apply_patch_tool_call_output.rb
546
550
  - lib/openai/models/responses/response_audio_delta_event.rb
547
551
  - lib/openai/models/responses/response_audio_done_event.rb
548
552
  - lib/openai/models/responses/response_audio_transcript_delta_event.rb
@@ -582,6 +586,9 @@ files:
582
586
  - lib/openai/models/responses/response_function_call_arguments_done_event.rb
583
587
  - lib/openai/models/responses/response_function_call_output_item.rb
584
588
  - lib/openai/models/responses/response_function_call_output_item_list.rb
589
+ - lib/openai/models/responses/response_function_shell_call_output_content.rb
590
+ - lib/openai/models/responses/response_function_shell_tool_call.rb
591
+ - lib/openai/models/responses/response_function_shell_tool_call_output.rb
585
592
  - lib/openai/models/responses/response_function_tool_call.rb
586
593
  - lib/openai/models/responses/response_function_tool_call_item.rb
587
594
  - lib/openai/models/responses/response_function_tool_call_output_item.rb
@@ -646,10 +653,12 @@ files:
646
653
  - lib/openai/models/responses/response_web_search_call_searching_event.rb
647
654
  - lib/openai/models/responses/tool.rb
648
655
  - lib/openai/models/responses/tool_choice_allowed.rb
656
+ - lib/openai/models/responses/tool_choice_apply_patch.rb
649
657
  - lib/openai/models/responses/tool_choice_custom.rb
650
658
  - lib/openai/models/responses/tool_choice_function.rb
651
659
  - lib/openai/models/responses/tool_choice_mcp.rb
652
660
  - lib/openai/models/responses/tool_choice_options.rb
661
+ - lib/openai/models/responses/tool_choice_shell.rb
653
662
  - lib/openai/models/responses/tool_choice_types.rb
654
663
  - lib/openai/models/responses/web_search_preview_tool.rb
655
664
  - lib/openai/models/responses/web_search_tool.rb
@@ -1267,15 +1276,19 @@ files:
1267
1276
  - rbi/openai/models/response_format_text.rbi
1268
1277
  - rbi/openai/models/response_format_text_grammar.rbi
1269
1278
  - rbi/openai/models/response_format_text_python.rbi
1279
+ - rbi/openai/models/responses/apply_patch_tool.rbi
1270
1280
  - rbi/openai/models/responses/computer_tool.rbi
1271
1281
  - rbi/openai/models/responses/custom_tool.rbi
1272
1282
  - rbi/openai/models/responses/easy_input_message.rbi
1273
1283
  - rbi/openai/models/responses/file_search_tool.rbi
1284
+ - rbi/openai/models/responses/function_shell_tool.rbi
1274
1285
  - rbi/openai/models/responses/function_tool.rbi
1275
1286
  - rbi/openai/models/responses/input_item_list_params.rbi
1276
1287
  - rbi/openai/models/responses/input_token_count_params.rbi
1277
1288
  - rbi/openai/models/responses/input_token_count_response.rbi
1278
1289
  - rbi/openai/models/responses/response.rbi
1290
+ - rbi/openai/models/responses/response_apply_patch_tool_call.rbi
1291
+ - rbi/openai/models/responses/response_apply_patch_tool_call_output.rbi
1279
1292
  - rbi/openai/models/responses/response_audio_delta_event.rbi
1280
1293
  - rbi/openai/models/responses/response_audio_done_event.rbi
1281
1294
  - rbi/openai/models/responses/response_audio_transcript_delta_event.rbi
@@ -1315,6 +1328,9 @@ files:
1315
1328
  - rbi/openai/models/responses/response_function_call_arguments_done_event.rbi
1316
1329
  - rbi/openai/models/responses/response_function_call_output_item.rbi
1317
1330
  - rbi/openai/models/responses/response_function_call_output_item_list.rbi
1331
+ - rbi/openai/models/responses/response_function_shell_call_output_content.rbi
1332
+ - rbi/openai/models/responses/response_function_shell_tool_call.rbi
1333
+ - rbi/openai/models/responses/response_function_shell_tool_call_output.rbi
1318
1334
  - rbi/openai/models/responses/response_function_tool_call.rbi
1319
1335
  - rbi/openai/models/responses/response_function_tool_call_item.rbi
1320
1336
  - rbi/openai/models/responses/response_function_tool_call_output_item.rbi
@@ -1379,10 +1395,12 @@ files:
1379
1395
  - rbi/openai/models/responses/response_web_search_call_searching_event.rbi
1380
1396
  - rbi/openai/models/responses/tool.rbi
1381
1397
  - rbi/openai/models/responses/tool_choice_allowed.rbi
1398
+ - rbi/openai/models/responses/tool_choice_apply_patch.rbi
1382
1399
  - rbi/openai/models/responses/tool_choice_custom.rbi
1383
1400
  - rbi/openai/models/responses/tool_choice_function.rbi
1384
1401
  - rbi/openai/models/responses/tool_choice_mcp.rbi
1385
1402
  - rbi/openai/models/responses/tool_choice_options.rbi
1403
+ - rbi/openai/models/responses/tool_choice_shell.rbi
1386
1404
  - rbi/openai/models/responses/tool_choice_types.rbi
1387
1405
  - rbi/openai/models/responses/web_search_preview_tool.rbi
1388
1406
  - rbi/openai/models/responses/web_search_tool.rbi
@@ -1990,15 +2008,19 @@ files:
1990
2008
  - sig/openai/models/response_format_text.rbs
1991
2009
  - sig/openai/models/response_format_text_grammar.rbs
1992
2010
  - sig/openai/models/response_format_text_python.rbs
2011
+ - sig/openai/models/responses/apply_patch_tool.rbs
1993
2012
  - sig/openai/models/responses/computer_tool.rbs
1994
2013
  - sig/openai/models/responses/custom_tool.rbs
1995
2014
  - sig/openai/models/responses/easy_input_message.rbs
1996
2015
  - sig/openai/models/responses/file_search_tool.rbs
2016
+ - sig/openai/models/responses/function_shell_tool.rbs
1997
2017
  - sig/openai/models/responses/function_tool.rbs
1998
2018
  - sig/openai/models/responses/input_item_list_params.rbs
1999
2019
  - sig/openai/models/responses/input_token_count_params.rbs
2000
2020
  - sig/openai/models/responses/input_token_count_response.rbs
2001
2021
  - sig/openai/models/responses/response.rbs
2022
+ - sig/openai/models/responses/response_apply_patch_tool_call.rbs
2023
+ - sig/openai/models/responses/response_apply_patch_tool_call_output.rbs
2002
2024
  - sig/openai/models/responses/response_audio_delta_event.rbs
2003
2025
  - sig/openai/models/responses/response_audio_done_event.rbs
2004
2026
  - sig/openai/models/responses/response_audio_transcript_delta_event.rbs
@@ -2038,6 +2060,9 @@ files:
2038
2060
  - sig/openai/models/responses/response_function_call_arguments_done_event.rbs
2039
2061
  - sig/openai/models/responses/response_function_call_output_item.rbs
2040
2062
  - sig/openai/models/responses/response_function_call_output_item_list.rbs
2063
+ - sig/openai/models/responses/response_function_shell_call_output_content.rbs
2064
+ - sig/openai/models/responses/response_function_shell_tool_call.rbs
2065
+ - sig/openai/models/responses/response_function_shell_tool_call_output.rbs
2041
2066
  - sig/openai/models/responses/response_function_tool_call.rbs
2042
2067
  - sig/openai/models/responses/response_function_tool_call_item.rbs
2043
2068
  - sig/openai/models/responses/response_function_tool_call_output_item.rbs
@@ -2102,10 +2127,12 @@ files:
2102
2127
  - sig/openai/models/responses/response_web_search_call_searching_event.rbs
2103
2128
  - sig/openai/models/responses/tool.rbs
2104
2129
  - sig/openai/models/responses/tool_choice_allowed.rbs
2130
+ - sig/openai/models/responses/tool_choice_apply_patch.rbs
2105
2131
  - sig/openai/models/responses/tool_choice_custom.rbs
2106
2132
  - sig/openai/models/responses/tool_choice_function.rbs
2107
2133
  - sig/openai/models/responses/tool_choice_mcp.rbs
2108
2134
  - sig/openai/models/responses/tool_choice_options.rbs
2135
+ - sig/openai/models/responses/tool_choice_shell.rbs
2109
2136
  - sig/openai/models/responses/tool_choice_types.rbs
2110
2137
  - sig/openai/models/responses/web_search_preview_tool.rbs
2111
2138
  - sig/openai/models/responses/web_search_tool.rbs