openai 0.90.0 → 0.91.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 (85) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +19 -0
  3. data/README.md +1 -1
  4. data/examples/realtime/README.md +8 -0
  5. data/examples/realtime/browser/README.md +167 -0
  6. data/examples/realtime/browser/index.html +19 -0
  7. data/examples/realtime/browser/page.js +21 -0
  8. data/examples/realtime/browser/peer.js +180 -0
  9. data/examples/realtime/browser/server.rb +281 -0
  10. data/examples/responses/websocket_workflows.rb +66 -6
  11. data/lib/openai/auth/workload_identity.rb +5 -1
  12. data/lib/openai/auth/workload_identity_auth.rb +2 -2
  13. data/lib/openai/auth/x509_token_exchange.rb +1 -1
  14. data/lib/openai/helpers/local_audio/process.rb +1 -1
  15. data/lib/openai/helpers/responses_websocket/connection.rb +2 -1
  16. data/lib/openai/helpers/responses_websocket/session.rb +551 -0
  17. data/lib/openai/helpers/responses_websocket.rb +1 -0
  18. data/lib/openai/helpers/sorbet.rb +1 -1
  19. data/lib/openai/helpers/websocket/async_websocket_transport.rb +6 -1
  20. data/lib/openai/internal/poller.rb +2 -2
  21. data/lib/openai/internal/transport/base_client.rb +1 -1
  22. data/lib/openai/internal/util.rb +1 -1
  23. data/lib/openai/models/beta/agents/session_update_params.rb +108 -1
  24. data/lib/openai/models/beta/beta_response.rb +9 -3
  25. data/lib/openai/models/beta/beta_response_compaction_compacting_event.rb +75 -0
  26. data/lib/openai/models/beta/beta_response_stream_event.rb +4 -1
  27. data/lib/openai/models/beta/beta_responses_client_event.rb +25 -4
  28. data/lib/openai/models/beta/beta_responses_server_event.rb +39 -1
  29. data/lib/openai/models/beta/response_compact_params.rb +9 -3
  30. data/lib/openai/models/beta/response_create_params.rb +21 -4
  31. data/lib/openai/models/beta/session_turn_error.rb +3 -0
  32. data/lib/openai/models/chat_model.rb +3 -1
  33. data/lib/openai/models/responses/response_compact_params.rb +9 -3
  34. data/lib/openai/models/responses/response_compaction_compacting_event.rb +49 -0
  35. data/lib/openai/models/responses/response_create_params.rb +12 -1
  36. data/lib/openai/models/responses/response_stream_event.rb +4 -1
  37. data/lib/openai/models/responses/responses_client_event.rb +12 -1
  38. data/lib/openai/models/responses/responses_server_event.rb +36 -1
  39. data/lib/openai/models/webhooks/realtime_call_incoming_webhook_event.rb +6 -8
  40. data/lib/openai/resources/beta/agents/sessions.rb +6 -2
  41. data/lib/openai/resources/beta/responses.rb +2 -2
  42. data/lib/openai/resources/responses.rb +2 -2
  43. data/lib/openai/version.rb +1 -1
  44. data/lib/openai.rb +2 -0
  45. data/rbi/openai/helpers/responses_websocket/connection.rbi +5 -0
  46. data/rbi/openai/helpers/responses_websocket/session.rbi +206 -0
  47. data/rbi/openai/models/beta/agents/session_update_params.rbi +178 -0
  48. data/rbi/openai/models/beta/beta_response.rbi +6 -1
  49. data/rbi/openai/models/beta/beta_response_compaction_compacting_event.rbi +136 -0
  50. data/rbi/openai/models/beta/beta_response_stream_event.rbi +1 -0
  51. data/rbi/openai/models/beta/beta_responses_client_event.rbi +27 -4
  52. data/rbi/openai/models/beta/beta_responses_server_event.rbi +77 -0
  53. data/rbi/openai/models/beta/response_compact_params.rbi +6 -1
  54. data/rbi/openai/models/beta/response_create_params.rbi +21 -1
  55. data/rbi/openai/models/beta/session_turn_error.rbi +6 -0
  56. data/rbi/openai/models/chat_model.rbi +3 -1
  57. data/rbi/openai/models/responses/response_compact_params.rbi +6 -1
  58. data/rbi/openai/models/responses/response_compaction_compacting_event.rbi +78 -0
  59. data/rbi/openai/models/responses/response_create_params.rbi +15 -0
  60. data/rbi/openai/models/responses/response_stream_event.rbi +1 -0
  61. data/rbi/openai/models/responses/responses_client_event.rbi +15 -0
  62. data/rbi/openai/models/responses/responses_server_event.rbi +71 -0
  63. data/rbi/openai/models/webhooks/realtime_call_incoming_webhook_event.rbi +6 -8
  64. data/rbi/openai/resources/beta/agents/sessions.rbi +5 -1
  65. data/responses-websocket.md +117 -10
  66. data/sig/openai/helpers/responses_websocket/connection.rbs +5 -0
  67. data/sig/openai/helpers/responses_websocket/session.rbs +123 -0
  68. data/sig/openai/models/beta/agents/session_update_params.rbs +99 -0
  69. data/sig/openai/models/beta/beta_response.rbs +6 -2
  70. data/sig/openai/models/beta/beta_response_compaction_compacting_event.rbs +58 -0
  71. data/sig/openai/models/beta/beta_response_stream_event.rbs +1 -0
  72. data/sig/openai/models/beta/beta_responses_client_event.rbs +13 -2
  73. data/sig/openai/models/beta/beta_responses_server_event.rbs +35 -0
  74. data/sig/openai/models/beta/response_compact_params.rbs +6 -2
  75. data/sig/openai/models/beta/response_create_params.rbs +13 -2
  76. data/sig/openai/models/beta/session_turn_error.rbs +4 -0
  77. data/sig/openai/models/chat_model.rbs +6 -2
  78. data/sig/openai/models/responses/response_compact_params.rbs +6 -2
  79. data/sig/openai/models/responses/response_compaction_compacting_event.rbs +37 -0
  80. data/sig/openai/models/responses/response_create_params.rbs +7 -0
  81. data/sig/openai/models/responses/response_stream_event.rbs +1 -0
  82. data/sig/openai/models/responses/responses_client_event.rbs +7 -0
  83. data/sig/openai/models/responses/responses_server_event.rbs +32 -0
  84. data/sig/openai/resources/beta/agents/sessions.rbs +1 -0
  85. metadata +16 -2
@@ -14,6 +14,12 @@ module OpenAI
14
14
  # @return [String]
15
15
  required :session_id, String
16
16
 
17
+ # @!attribute agent
18
+ # Model settings for subsequent turns. Omitted fields stay unchanged.
19
+ #
20
+ # @return [OpenAI::Models::Beta::Agents::SessionUpdateParams::Agent, nil]
21
+ optional :agent, -> { OpenAI::Beta::Agents::SessionUpdateParams::Agent }
22
+
17
23
  # @!attribute metadata
18
24
  # Replaces all metadata. Omit to leave unchanged, or pass null or {} to clear it.
19
25
  # Up to 16 string key-value pairs, with keys up to 64 and values up to 512
@@ -22,15 +28,116 @@ module OpenAI
22
28
  # @return [Hash{Symbol=>String}, nil]
23
29
  optional :metadata, OpenAI::Internal::Type::HashOf[String], nil?: true
24
30
 
25
- # @!method initialize(session_id:, metadata: nil, request_options: {})
31
+ # @!method initialize(session_id:, agent: nil, metadata: nil, request_options: {})
26
32
  # @param session_id [String]
27
33
  #
34
+ # @param agent [OpenAI::Models::Beta::Agents::SessionUpdateParams::Agent]
35
+ # Model settings for subsequent turns. Omitted fields stay unchanged.
36
+ #
28
37
  # @param metadata [Hash{Symbol=>String}, nil]
29
38
  # Replaces all metadata. Omit to leave unchanged, or pass null or {} to clear it.
30
39
  # Up to 16 string key-value pairs, with keys up to 64 and values up to 512
31
40
  # characters.
32
41
  #
33
42
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
43
+
44
+ class Agent < OpenAI::Internal::Type::BaseModel
45
+ # @!attribute model
46
+ # The model for subsequent turns. Omit to keep the current model.
47
+ #
48
+ # @return [String, nil]
49
+ optional :model, String
50
+
51
+ # @!attribute reasoning
52
+ # Reasoning settings to update. Omit to keep the current effort.
53
+ #
54
+ # @return [OpenAI::Models::Beta::Agents::SessionUpdateParams::Agent::Reasoning, nil]
55
+ optional :reasoning, -> { OpenAI::Beta::Agents::SessionUpdateParams::Agent::Reasoning }
56
+
57
+ # @!attribute service_tier
58
+ # The service tier used for model requests.
59
+ #
60
+ # @return [Symbol, OpenAI::Models::Beta::Agents::SessionUpdateParams::Agent::ServiceTier, nil]
61
+ optional(
62
+ :service_tier,
63
+ enum: -> { OpenAI::Beta::Agents::SessionUpdateParams::Agent::ServiceTier },
64
+ nil?: true
65
+ )
66
+
67
+ # @!method initialize(model: nil, reasoning: nil, service_tier: nil)
68
+ # Model settings for subsequent turns. Omitted fields stay unchanged.
69
+ #
70
+ # @param model [String]
71
+ # The model for subsequent turns. Omit to keep the current model.
72
+ #
73
+ # @param reasoning [OpenAI::Models::Beta::Agents::SessionUpdateParams::Agent::Reasoning]
74
+ # Reasoning settings to update. Omit to keep the current effort.
75
+ #
76
+ # @param service_tier [Symbol, OpenAI::Models::Beta::Agents::SessionUpdateParams::Agent::ServiceTier, nil]
77
+ # The service tier used for model requests.
78
+
79
+ # @see OpenAI::Models::Beta::Agents::SessionUpdateParams::Agent#reasoning
80
+ class Reasoning < OpenAI::Internal::Type::BaseModel
81
+ # @!attribute effort
82
+ # The amount of reasoning effort the model should use.
83
+ #
84
+ # @return [Symbol, OpenAI::Models::Beta::Agents::SessionUpdateParams::Agent::Reasoning::Effort, nil]
85
+ optional(
86
+ :effort,
87
+ enum: -> { OpenAI::Beta::Agents::SessionUpdateParams::Agent::Reasoning::Effort },
88
+ nil?: true
89
+ )
90
+
91
+ # @!method initialize(effort: nil)
92
+ # Reasoning settings to update. Omit to keep the current effort.
93
+ #
94
+ # @param effort [Symbol, OpenAI::Models::Beta::Agents::SessionUpdateParams::Agent::Reasoning::Effort, nil]
95
+ # The amount of reasoning effort the model should use.
96
+
97
+ # The amount of reasoning effort the model should use.
98
+ #
99
+ # @see OpenAI::Models::Beta::Agents::SessionUpdateParams::Agent::Reasoning#effort
100
+ module Effort
101
+ extend OpenAI::Internal::Type::Enum
102
+
103
+ NONE = :none
104
+ MINIMAL = :minimal
105
+ LOW = :low
106
+ MEDIUM = :medium
107
+ HIGH = :high
108
+ XHIGH = :xhigh
109
+ MAX = :max
110
+
111
+ # @!method self.values
112
+ # @return [Array<Symbol>]
113
+ end
114
+ end
115
+
116
+ # The service tier used for model requests.
117
+ #
118
+ # @see OpenAI::Models::Beta::Agents::SessionUpdateParams::Agent#service_tier
119
+ module ServiceTier
120
+ extend OpenAI::Internal::Type::Enum
121
+
122
+ # Selects the service tier automatically.
123
+ AUTO = :auto
124
+
125
+ # Uses the default service tier.
126
+ DEFAULT = :default
127
+
128
+ # Uses the flex service tier.
129
+ FLEX = :flex
130
+
131
+ # Uses the priority service tier.
132
+ PRIORITY = :priority
133
+
134
+ # Uses the fast service tier.
135
+ FAST = :fast
136
+
137
+ # @!method self.values
138
+ # @return [Array<Symbol>]
139
+ end
140
+ end
34
141
  end
35
142
  end
36
143
  end
@@ -700,8 +700,6 @@ module OpenAI
700
700
 
701
701
  variant const: -> { OpenAI::Models::Beta::BetaResponse::Model::GPT_5_1_CODEX }
702
702
 
703
- variant const: -> { OpenAI::Models::Beta::BetaResponse::Model::GPT_5_1_MINI }
704
-
705
703
  variant const: -> { OpenAI::Models::Beta::BetaResponse::Model::GPT_5_1_CHAT_LATEST }
706
704
 
707
705
  variant const: -> { OpenAI::Models::Beta::BetaResponse::Model::GPT_5 }
@@ -762,6 +760,10 @@ module OpenAI
762
760
 
763
761
  variant const: -> { OpenAI::Models::Beta::BetaResponse::Model::GPT_4O_2024_05_13 }
764
762
 
763
+ variant const: -> { OpenAI::Models::Beta::BetaResponse::Model::GPT_AUDIO_MINI }
764
+
765
+ variant const: -> { OpenAI::Models::Beta::BetaResponse::Model::GPT_AUDIO_MINI_2025_12_15 }
766
+
765
767
  variant const: -> { OpenAI::Models::Beta::BetaResponse::Model::GPT_4O_AUDIO_PREVIEW }
766
768
 
767
769
  variant const: -> { OpenAI::Models::Beta::BetaResponse::Model::GPT_4O_AUDIO_PREVIEW_2024_10_01 }
@@ -828,6 +830,8 @@ module OpenAI
828
830
 
829
831
  variant const: -> { OpenAI::Models::Beta::BetaResponse::Model::GPT_3_5_TURBO_16K_0613 }
830
832
 
833
+ variant const: -> { OpenAI::Models::Beta::BetaResponse::Model::GPT_5_1_MINI }
834
+
831
835
  variant const: -> { OpenAI::Models::Beta::BetaResponse::Model::O1_PRO }
832
836
 
833
837
  variant const: -> { OpenAI::Models::Beta::BetaResponse::Model::O1_PRO_2025_03_19 }
@@ -897,7 +901,6 @@ module OpenAI
897
901
  GPT_5_1 = :"gpt-5.1"
898
902
  GPT_5_1_2025_11_13 = :"gpt-5.1-2025-11-13"
899
903
  GPT_5_1_CODEX = :"gpt-5.1-codex"
900
- GPT_5_1_MINI = :"gpt-5.1-mini"
901
904
  GPT_5_1_CHAT_LATEST = :"gpt-5.1-chat-latest"
902
905
  GPT_5 = :"gpt-5"
903
906
  GPT_5_MINI = :"gpt-5-mini"
@@ -928,6 +931,8 @@ module OpenAI
928
931
  GPT_4O_2024_11_20 = :"gpt-4o-2024-11-20"
929
932
  GPT_4O_2024_08_06 = :"gpt-4o-2024-08-06"
930
933
  GPT_4O_2024_05_13 = :"gpt-4o-2024-05-13"
934
+ GPT_AUDIO_MINI = :"gpt-audio-mini"
935
+ GPT_AUDIO_MINI_2025_12_15 = :"gpt-audio-mini-2025-12-15"
931
936
  GPT_4O_AUDIO_PREVIEW = :"gpt-4o-audio-preview"
932
937
  GPT_4O_AUDIO_PREVIEW_2024_10_01 = :"gpt-4o-audio-preview-2024-10-01"
933
938
  GPT_4O_AUDIO_PREVIEW_2024_12_17 = :"gpt-4o-audio-preview-2024-12-17"
@@ -961,6 +966,7 @@ module OpenAI
961
966
  GPT_3_5_TURBO_1106 = :"gpt-3.5-turbo-1106"
962
967
  GPT_3_5_TURBO_0125 = :"gpt-3.5-turbo-0125"
963
968
  GPT_3_5_TURBO_16K_0613 = :"gpt-3.5-turbo-16k-0613"
969
+ GPT_5_1_MINI = :"gpt-5.1-mini"
964
970
  O1_PRO = :"o1-pro"
965
971
  O1_PRO_2025_03_19 = :"o1-pro-2025-03-19"
966
972
  O3_PRO = :"o3-pro"
@@ -0,0 +1,75 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Beta
6
+ class BetaResponseCompactionCompactingEvent < OpenAI::Internal::Type::BaseModel
7
+ # @!attribute item_id
8
+ # The ID of the compaction output item.
9
+ #
10
+ # @return [String]
11
+ required :item_id, String
12
+
13
+ # @!attribute output_index
14
+ # The index of the compaction output item.
15
+ #
16
+ # @return [Integer]
17
+ required :output_index, Integer
18
+
19
+ # @!attribute sequence_number
20
+ # The sequence number of the event that was emitted.
21
+ #
22
+ # @return [Integer]
23
+ required :sequence_number, Integer
24
+
25
+ # @!attribute type
26
+ # The type of the event, always `response.compaction.compacting`.
27
+ #
28
+ # @return [Symbol, :"response.compaction.compacting"]
29
+ required :type, const: :"response.compaction.compacting"
30
+
31
+ # @!attribute agent
32
+ # The agent that owns this multi-agent streaming event.
33
+ #
34
+ # @return [OpenAI::Models::Beta::BetaResponseCompactionCompactingEvent::Agent, nil]
35
+ optional :agent, -> { OpenAI::Beta::BetaResponseCompactionCompactingEvent::Agent }
36
+
37
+ # @!method initialize(item_id:, output_index:, sequence_number:, agent: nil, type: :"response.compaction.compacting")
38
+ # Emitted when new summary content is sampled for a compaction trigger. Contains
39
+ # no summary content.
40
+ #
41
+ # @param item_id [String]
42
+ # The ID of the compaction output item.
43
+ #
44
+ # @param output_index [Integer]
45
+ # The index of the compaction output item.
46
+ #
47
+ # @param sequence_number [Integer]
48
+ # The sequence number of the event that was emitted.
49
+ #
50
+ # @param agent [OpenAI::Models::Beta::BetaResponseCompactionCompactingEvent::Agent]
51
+ # The agent that owns this multi-agent streaming event.
52
+ #
53
+ # @param type [Symbol, :"response.compaction.compacting"]
54
+ # The type of the event, always `response.compaction.compacting`.
55
+
56
+ # @see OpenAI::Models::Beta::BetaResponseCompactionCompactingEvent#agent
57
+ class Agent < OpenAI::Internal::Type::BaseModel
58
+ # @!attribute agent_name
59
+ # The canonical name of the agent that produced this item.
60
+ #
61
+ # @return [String]
62
+ required :agent_name, String
63
+
64
+ # @!method initialize(agent_name:)
65
+ # The agent that owns this multi-agent streaming event.
66
+ #
67
+ # @param agent_name [String]
68
+ # The canonical name of the agent that produced this item.
69
+ end
70
+ end
71
+ end
72
+
73
+ BetaResponseCompactionCompactingEvent = Beta::BetaResponseCompactionCompactingEvent
74
+ end
75
+ end
@@ -51,6 +51,9 @@ module OpenAI
51
51
  -> { OpenAI::Beta::BetaResponseCodeInterpreterCallInterpretingEvent }
52
52
  )
53
53
 
54
+ # Emitted when new summary content is sampled for a compaction trigger. Contains no summary content.
55
+ variant :"response.compaction.compacting", -> { OpenAI::Beta::BetaResponseCompactionCompactingEvent }
56
+
54
57
  # Emitted when the model response is complete.
55
58
  variant :"response.completed", -> { OpenAI::Beta::BetaResponseCompletedEvent }
56
59
 
@@ -269,7 +272,7 @@ module OpenAI
269
272
  )
270
273
 
271
274
  # @!method self.variants
272
- # @return [Array(OpenAI::Models::Beta::BetaResponseAudioDeltaEvent, OpenAI::Models::Beta::BetaResponseAudioDoneEvent, OpenAI::Models::Beta::BetaResponseAudioTranscriptDeltaEvent, OpenAI::Models::Beta::BetaResponseAudioTranscriptDoneEvent, OpenAI::Models::Beta::BetaResponseCodeInterpreterCallCodeDeltaEvent, OpenAI::Models::Beta::BetaResponseCodeInterpreterCallCodeDoneEvent, OpenAI::Models::Beta::BetaResponseCodeInterpreterCallCompletedEvent, OpenAI::Models::Beta::BetaResponseCodeInterpreterCallInProgressEvent, OpenAI::Models::Beta::BetaResponseCodeInterpreterCallInterpretingEvent, OpenAI::Models::Beta::BetaResponseCompletedEvent, OpenAI::Models::Beta::BetaResponseContentPartAddedEvent, OpenAI::Models::Beta::BetaResponseContentPartDoneEvent, OpenAI::Models::Beta::BetaResponseCreatedEvent, OpenAI::Models::Beta::BetaResponseErrorEvent, OpenAI::Models::Beta::BetaResponseFileSearchCallCompletedEvent, OpenAI::Models::Beta::BetaResponseFileSearchCallInProgressEvent, OpenAI::Models::Beta::BetaResponseFileSearchCallSearchingEvent, OpenAI::Models::Beta::BetaResponseFunctionCallArgumentsDeltaEvent, OpenAI::Models::Beta::BetaResponseFunctionCallArgumentsDoneEvent, OpenAI::Models::Beta::BetaResponseShellCallCommandAddedEvent, OpenAI::Models::Beta::BetaResponseShellCallCommandDeltaEvent, OpenAI::Models::Beta::BetaResponseShellCallCommandDoneEvent, OpenAI::Models::Beta::BetaResponseShellCallOutputContentDeltaEvent, OpenAI::Models::Beta::BetaResponseShellCallOutputContentDoneEvent, OpenAI::Models::Beta::BetaResponseInProgressEvent, OpenAI::Models::Beta::BetaResponseFailedEvent, OpenAI::Models::Beta::BetaResponseIncompleteEvent, OpenAI::Models::Beta::BetaResponseOutputItemAddedEvent, OpenAI::Models::Beta::BetaResponseOutputItemDoneEvent, OpenAI::Models::Beta::BetaResponseReasoningSummaryPartAddedEvent, OpenAI::Models::Beta::BetaResponseReasoningSummaryPartDoneEvent, OpenAI::Models::Beta::BetaResponseReasoningSummaryTextDeltaEvent, OpenAI::Models::Beta::BetaResponseReasoningSummaryTextDoneEvent, OpenAI::Models::Beta::BetaResponseReasoningTextDeltaEvent, OpenAI::Models::Beta::BetaResponseReasoningTextDoneEvent, OpenAI::Models::Beta::BetaResponseRefusalDeltaEvent, OpenAI::Models::Beta::BetaResponseRefusalDoneEvent, OpenAI::Models::Beta::BetaResponseTextDeltaEvent, OpenAI::Models::Beta::BetaResponseTextDoneEvent, OpenAI::Models::Beta::BetaResponseWebSearchCallCompletedEvent, OpenAI::Models::Beta::BetaResponseWebSearchCallInProgressEvent, OpenAI::Models::Beta::BetaResponseWebSearchCallSearchingEvent, OpenAI::Models::Beta::BetaResponseImageGenCallCompletedEvent, OpenAI::Models::Beta::BetaResponseImageGenCallGeneratingEvent, OpenAI::Models::Beta::BetaResponseImageGenCallInProgressEvent, OpenAI::Models::Beta::BetaResponseImageGenCallPartialImageEvent, OpenAI::Models::Beta::BetaResponseMcpCallArgumentsDeltaEvent, OpenAI::Models::Beta::BetaResponseMcpCallArgumentsDoneEvent, OpenAI::Models::Beta::BetaResponseMcpCallCompletedEvent, OpenAI::Models::Beta::BetaResponseMcpCallFailedEvent, OpenAI::Models::Beta::BetaResponseMcpCallInProgressEvent, OpenAI::Models::Beta::BetaResponseMcpListToolsCompletedEvent, OpenAI::Models::Beta::BetaResponseMcpListToolsFailedEvent, OpenAI::Models::Beta::BetaResponseMcpListToolsInProgressEvent, OpenAI::Models::Beta::BetaResponseOutputTextAnnotationAddedEvent, OpenAI::Models::Beta::BetaResponseQueuedEvent, OpenAI::Models::Beta::BetaResponseCustomToolCallInputDeltaEvent, OpenAI::Models::Beta::BetaResponseCustomToolCallInputDoneEvent)]
275
+ # @return [Array(OpenAI::Models::Beta::BetaResponseAudioDeltaEvent, OpenAI::Models::Beta::BetaResponseAudioDoneEvent, OpenAI::Models::Beta::BetaResponseAudioTranscriptDeltaEvent, OpenAI::Models::Beta::BetaResponseAudioTranscriptDoneEvent, OpenAI::Models::Beta::BetaResponseCodeInterpreterCallCodeDeltaEvent, OpenAI::Models::Beta::BetaResponseCodeInterpreterCallCodeDoneEvent, OpenAI::Models::Beta::BetaResponseCodeInterpreterCallCompletedEvent, OpenAI::Models::Beta::BetaResponseCodeInterpreterCallInProgressEvent, OpenAI::Models::Beta::BetaResponseCodeInterpreterCallInterpretingEvent, OpenAI::Models::Beta::BetaResponseCompactionCompactingEvent, OpenAI::Models::Beta::BetaResponseCompletedEvent, OpenAI::Models::Beta::BetaResponseContentPartAddedEvent, OpenAI::Models::Beta::BetaResponseContentPartDoneEvent, OpenAI::Models::Beta::BetaResponseCreatedEvent, OpenAI::Models::Beta::BetaResponseErrorEvent, OpenAI::Models::Beta::BetaResponseFileSearchCallCompletedEvent, OpenAI::Models::Beta::BetaResponseFileSearchCallInProgressEvent, OpenAI::Models::Beta::BetaResponseFileSearchCallSearchingEvent, OpenAI::Models::Beta::BetaResponseFunctionCallArgumentsDeltaEvent, OpenAI::Models::Beta::BetaResponseFunctionCallArgumentsDoneEvent, OpenAI::Models::Beta::BetaResponseShellCallCommandAddedEvent, OpenAI::Models::Beta::BetaResponseShellCallCommandDeltaEvent, OpenAI::Models::Beta::BetaResponseShellCallCommandDoneEvent, OpenAI::Models::Beta::BetaResponseShellCallOutputContentDeltaEvent, OpenAI::Models::Beta::BetaResponseShellCallOutputContentDoneEvent, OpenAI::Models::Beta::BetaResponseInProgressEvent, OpenAI::Models::Beta::BetaResponseFailedEvent, OpenAI::Models::Beta::BetaResponseIncompleteEvent, OpenAI::Models::Beta::BetaResponseOutputItemAddedEvent, OpenAI::Models::Beta::BetaResponseOutputItemDoneEvent, OpenAI::Models::Beta::BetaResponseReasoningSummaryPartAddedEvent, OpenAI::Models::Beta::BetaResponseReasoningSummaryPartDoneEvent, OpenAI::Models::Beta::BetaResponseReasoningSummaryTextDeltaEvent, OpenAI::Models::Beta::BetaResponseReasoningSummaryTextDoneEvent, OpenAI::Models::Beta::BetaResponseReasoningTextDeltaEvent, OpenAI::Models::Beta::BetaResponseReasoningTextDoneEvent, OpenAI::Models::Beta::BetaResponseRefusalDeltaEvent, OpenAI::Models::Beta::BetaResponseRefusalDoneEvent, OpenAI::Models::Beta::BetaResponseTextDeltaEvent, OpenAI::Models::Beta::BetaResponseTextDoneEvent, OpenAI::Models::Beta::BetaResponseWebSearchCallCompletedEvent, OpenAI::Models::Beta::BetaResponseWebSearchCallInProgressEvent, OpenAI::Models::Beta::BetaResponseWebSearchCallSearchingEvent, OpenAI::Models::Beta::BetaResponseImageGenCallCompletedEvent, OpenAI::Models::Beta::BetaResponseImageGenCallGeneratingEvent, OpenAI::Models::Beta::BetaResponseImageGenCallInProgressEvent, OpenAI::Models::Beta::BetaResponseImageGenCallPartialImageEvent, OpenAI::Models::Beta::BetaResponseMcpCallArgumentsDeltaEvent, OpenAI::Models::Beta::BetaResponseMcpCallArgumentsDoneEvent, OpenAI::Models::Beta::BetaResponseMcpCallCompletedEvent, OpenAI::Models::Beta::BetaResponseMcpCallFailedEvent, OpenAI::Models::Beta::BetaResponseMcpCallInProgressEvent, OpenAI::Models::Beta::BetaResponseMcpListToolsCompletedEvent, OpenAI::Models::Beta::BetaResponseMcpListToolsFailedEvent, OpenAI::Models::Beta::BetaResponseMcpListToolsInProgressEvent, OpenAI::Models::Beta::BetaResponseOutputTextAnnotationAddedEvent, OpenAI::Models::Beta::BetaResponseQueuedEvent, OpenAI::Models::Beta::BetaResponseCustomToolCallInputDeltaEvent, OpenAI::Models::Beta::BetaResponseCustomToolCallInputDoneEvent)]
273
276
  end
274
277
  end
275
278
 
@@ -890,8 +890,6 @@ module OpenAI
890
890
 
891
891
  variant const: -> { OpenAI::Models::Beta::BetaResponsesClientEvent::ResponseCreate::Model::GPT_5_1_CODEX }
892
892
 
893
- variant const: -> { OpenAI::Models::Beta::BetaResponsesClientEvent::ResponseCreate::Model::GPT_5_1_MINI }
894
-
895
893
  variant(
896
894
  const: -> { OpenAI::Models::Beta::BetaResponsesClientEvent::ResponseCreate::Model::GPT_5_1_CHAT_LATEST }
897
895
  )
@@ -992,6 +990,14 @@ module OpenAI
992
990
  const: -> { OpenAI::Models::Beta::BetaResponsesClientEvent::ResponseCreate::Model::GPT_4O_2024_05_13 }
993
991
  )
994
992
 
993
+ variant const: -> { OpenAI::Models::Beta::BetaResponsesClientEvent::ResponseCreate::Model::GPT_AUDIO_MINI }
994
+
995
+ variant(
996
+ const: -> {
997
+ OpenAI::Models::Beta::BetaResponsesClientEvent::ResponseCreate::Model::GPT_AUDIO_MINI_2025_12_15
998
+ }
999
+ )
1000
+
995
1001
  variant(
996
1002
  const: -> { OpenAI::Models::Beta::BetaResponsesClientEvent::ResponseCreate::Model::GPT_4O_AUDIO_PREVIEW }
997
1003
  )
@@ -1130,6 +1136,8 @@ module OpenAI
1130
1136
  }
1131
1137
  )
1132
1138
 
1139
+ variant const: -> { OpenAI::Models::Beta::BetaResponsesClientEvent::ResponseCreate::Model::GPT_5_1_MINI }
1140
+
1133
1141
  variant const: -> { OpenAI::Models::Beta::BetaResponsesClientEvent::ResponseCreate::Model::O1_PRO }
1134
1142
 
1135
1143
  variant(
@@ -1241,7 +1249,6 @@ module OpenAI
1241
1249
  GPT_5_1 = :"gpt-5.1"
1242
1250
  GPT_5_1_2025_11_13 = :"gpt-5.1-2025-11-13"
1243
1251
  GPT_5_1_CODEX = :"gpt-5.1-codex"
1244
- GPT_5_1_MINI = :"gpt-5.1-mini"
1245
1252
  GPT_5_1_CHAT_LATEST = :"gpt-5.1-chat-latest"
1246
1253
  GPT_5 = :"gpt-5"
1247
1254
  GPT_5_MINI = :"gpt-5-mini"
@@ -1272,6 +1279,8 @@ module OpenAI
1272
1279
  GPT_4O_2024_11_20 = :"gpt-4o-2024-11-20"
1273
1280
  GPT_4O_2024_08_06 = :"gpt-4o-2024-08-06"
1274
1281
  GPT_4O_2024_05_13 = :"gpt-4o-2024-05-13"
1282
+ GPT_AUDIO_MINI = :"gpt-audio-mini"
1283
+ GPT_AUDIO_MINI_2025_12_15 = :"gpt-audio-mini-2025-12-15"
1275
1284
  GPT_4O_AUDIO_PREVIEW = :"gpt-4o-audio-preview"
1276
1285
  GPT_4O_AUDIO_PREVIEW_2024_10_01 = :"gpt-4o-audio-preview-2024-10-01"
1277
1286
  GPT_4O_AUDIO_PREVIEW_2024_12_17 = :"gpt-4o-audio-preview-2024-12-17"
@@ -1305,6 +1314,7 @@ module OpenAI
1305
1314
  GPT_3_5_TURBO_1106 = :"gpt-3.5-turbo-1106"
1306
1315
  GPT_3_5_TURBO_0125 = :"gpt-3.5-turbo-0125"
1307
1316
  GPT_3_5_TURBO_16K_0613 = :"gpt-3.5-turbo-16k-0613"
1317
+ GPT_5_1_MINI = :"gpt-5.1-mini"
1308
1318
  O1_PRO = :"o1-pro"
1309
1319
  O1_PRO_2025_03_19 = :"o1-pro-2025-03-19"
1310
1320
  O3_PRO = :"o3-pro"
@@ -1505,6 +1515,13 @@ module OpenAI
1505
1515
  enum: -> { OpenAI::Beta::BetaResponsesClientEvent::ResponseCreate::PromptCacheOptions::Mode }
1506
1516
  )
1507
1517
 
1518
+ # @!attribute prewarm
1519
+ # Prepares the prompt cache without generating output. Defaults to `false`. When
1520
+ # set to `true`, overrides the `generate` field to `false`.
1521
+ #
1522
+ # @return [Boolean, nil]
1523
+ optional :prewarm, OpenAI::Internal::Type::Boolean
1524
+
1508
1525
  # @!attribute ttl
1509
1526
  # The minimum lifetime applied to every implicit and explicit cache breakpoint
1510
1527
  # written by the request. Defaults to `30m`, which is currently the only supported
@@ -1516,7 +1533,7 @@ module OpenAI
1516
1533
  enum: -> { OpenAI::Beta::BetaResponsesClientEvent::ResponseCreate::PromptCacheOptions::Ttl }
1517
1534
  )
1518
1535
 
1519
- # @!method initialize(comparison_response_id: nil, mode: nil, ttl: nil)
1536
+ # @!method initialize(comparison_response_id: nil, mode: nil, prewarm: nil, ttl: nil)
1520
1537
  # Options for prompt caching. Supported for `gpt-5.6` and later models. By
1521
1538
  # default, OpenAI automatically chooses one implicit cache breakpoint. You can add
1522
1539
  # explicit breakpoints to content blocks with `prompt_cache_breakpoint`. Each
@@ -1539,6 +1556,10 @@ module OpenAI
1539
1556
  # latest four explicit breakpoints. If there are no explicit breakpoints, the
1540
1557
  # request does not use prompt caching.
1541
1558
  #
1559
+ # @param prewarm [Boolean]
1560
+ # Prepares the prompt cache without generating output. Defaults to `false`. When
1561
+ # set to `true`, overrides the `generate` field to `false`.
1562
+ #
1542
1563
  # @param ttl [Symbol, OpenAI::Models::Beta::BetaResponsesClientEvent::ResponseCreate::PromptCacheOptions::Ttl]
1543
1564
  # The minimum lifetime applied to every implicit and explicit cache breakpoint
1544
1565
  # written by the request. Defaults to `30m`, which is currently the only supported
@@ -109,6 +109,12 @@ module OpenAI
109
109
  -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallWsInterpreting }
110
110
  )
111
111
 
112
+ # Emitted when new summary content is sampled for a compaction trigger. Contains no summary content.
113
+ variant(
114
+ :"response.compaction.compacting",
115
+ -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseCompactionWsCompacting }
116
+ )
117
+
112
118
  # Emitted when the model response is complete.
113
119
  variant :"response.completed", -> { OpenAI::Beta::BetaResponsesServerEvent::BetaResponseWsCompleted }
114
120
 
@@ -651,6 +657,38 @@ module OpenAI
651
657
  # The type of the event. Always `response.code_interpreter_call.interpreting`.
652
658
  end
653
659
 
660
+ class BetaResponseCompactionWsCompacting < OpenAI::Models::Beta::BetaResponseCompactionCompactingEvent
661
+ # @!attribute stream_id
662
+ # The WebSocket lane that emitted this event. This field is present when the
663
+ # originating `response.create` event supplied a `stream_id`.
664
+ #
665
+ # @return [String, nil]
666
+ optional :stream_id, String
667
+
668
+ # @!method initialize(item_id:, output_index:, sequence_number:, agent: nil, stream_id: nil, type: :"response.compaction.compacting")
669
+ # Emitted when new summary content is sampled for a compaction trigger. Contains
670
+ # no summary content.
671
+ #
672
+ # @param item_id [String]
673
+ # The ID of the compaction output item.
674
+ #
675
+ # @param output_index [Integer]
676
+ # The index of the compaction output item.
677
+ #
678
+ # @param sequence_number [Integer]
679
+ # The sequence number of the event that was emitted.
680
+ #
681
+ # @param agent [OpenAI::Models::Beta::BetaResponseCompactionCompactingEvent::Agent]
682
+ # The agent that owns this multi-agent streaming event.
683
+ #
684
+ # @param stream_id [String]
685
+ # The WebSocket lane that emitted this event. This field is present when the
686
+ # originating `response.create` event supplied a `stream_id`.
687
+ #
688
+ # @param type [Symbol, :"response.compaction.compacting"]
689
+ # The type of the event, always `response.compaction.compacting`.
690
+ end
691
+
654
692
  class BetaResponseWsCompleted < OpenAI::Models::Beta::BetaResponseCompletedEvent
655
693
  # @!attribute stream_id
656
694
  # The WebSocket lane that emitted this event. This field is present when the
@@ -2536,7 +2574,7 @@ module OpenAI
2536
2574
  end
2537
2575
 
2538
2576
  # @!method self.variants
2539
- # @return [Array(OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsError, OpenAI::Models::Beta::BetaResponseSteerAcceptedEvent, OpenAI::Models::Beta::BetaResponseSteerPendingEvent, OpenAI::Models::Beta::BetaResponseSteerFailedEvent, OpenAI::Models::Beta::BetaResponseInjectCreatedEvent, OpenAI::Models::Beta::BetaResponseInjectFailedEvent, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseAudioWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseAudioWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseAudioTranscriptWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseAudioTranscriptWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallCodeWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallCodeWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallWsInterpreting, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseContentPartWsAdded, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseContentPartWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsCreated, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFileSearchCallWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFileSearchCallInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFileSearchCallWsSearching, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFunctionCallArgumentsWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFunctionCallArgumentsWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseShellCallCommandWsAdded, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseShellCallCommandWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseShellCallCommandWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseShellCallOutputContentWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseShellCallOutputContentWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsFailed, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsIncomplete, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseOutputItemWsAdded, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseOutputItemWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryPartWsAdded, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryPartWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryTextWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryTextWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningTextWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningTextWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseRefusalWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseRefusalWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseTextWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseTextWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWebSearchCallWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWebSearchCallInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWebSearchCallWsSearching, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallWsGenerating, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallPartialWsImage, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallArgumentsWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallArgumentsWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallWsFailed, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpListToolsWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpListToolsWsFailed, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpListToolsInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseOutputTextAnnotationWsAdded, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsQueued, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCustomToolCallInputWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCustomToolCallInputWsDone)]
2577
+ # @return [Array(OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsError, OpenAI::Models::Beta::BetaResponseSteerAcceptedEvent, OpenAI::Models::Beta::BetaResponseSteerPendingEvent, OpenAI::Models::Beta::BetaResponseSteerFailedEvent, OpenAI::Models::Beta::BetaResponseInjectCreatedEvent, OpenAI::Models::Beta::BetaResponseInjectFailedEvent, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseAudioWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseAudioWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseAudioTranscriptWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseAudioTranscriptWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallCodeWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallCodeWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCodeInterpreterCallWsInterpreting, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCompactionWsCompacting, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseContentPartWsAdded, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseContentPartWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsCreated, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFileSearchCallWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFileSearchCallInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFileSearchCallWsSearching, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFunctionCallArgumentsWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseFunctionCallArgumentsWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseShellCallCommandWsAdded, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseShellCallCommandWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseShellCallCommandWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseShellCallOutputContentWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseShellCallOutputContentWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsFailed, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsIncomplete, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseOutputItemWsAdded, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseOutputItemWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryPartWsAdded, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryPartWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryTextWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningSummaryTextWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningTextWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseReasoningTextWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseRefusalWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseRefusalWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseTextWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseTextWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWebSearchCallWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWebSearchCallInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWebSearchCallWsSearching, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallWsGenerating, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseImageGenCallPartialWsImage, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallArgumentsWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallArgumentsWsDone, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallWsFailed, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpCallInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpListToolsWsCompleted, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpListToolsWsFailed, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseMcpListToolsInWsProgress, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseOutputTextAnnotationWsAdded, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseWsQueued, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCustomToolCallInputWsDelta, OpenAI::Models::Beta::BetaResponsesServerEvent::BetaResponseCustomToolCallInputWsDone)]
2540
2578
  end
2541
2579
  end
2542
2580
 
@@ -216,8 +216,6 @@ module OpenAI
216
216
 
217
217
  variant const: -> { OpenAI::Models::Beta::ResponseCompactParams::Model::GPT_5_1_CODEX }
218
218
 
219
- variant const: -> { OpenAI::Models::Beta::ResponseCompactParams::Model::GPT_5_1_MINI }
220
-
221
219
  variant const: -> { OpenAI::Models::Beta::ResponseCompactParams::Model::GPT_5_1_CHAT_LATEST }
222
220
 
223
221
  variant const: -> { OpenAI::Models::Beta::ResponseCompactParams::Model::GPT_5 }
@@ -278,6 +276,10 @@ module OpenAI
278
276
 
279
277
  variant const: -> { OpenAI::Models::Beta::ResponseCompactParams::Model::GPT_4O_2024_05_13 }
280
278
 
279
+ variant const: -> { OpenAI::Models::Beta::ResponseCompactParams::Model::GPT_AUDIO_MINI }
280
+
281
+ variant const: -> { OpenAI::Models::Beta::ResponseCompactParams::Model::GPT_AUDIO_MINI_2025_12_15 }
282
+
281
283
  variant const: -> { OpenAI::Models::Beta::ResponseCompactParams::Model::GPT_4O_AUDIO_PREVIEW }
282
284
 
283
285
  variant const: -> { OpenAI::Models::Beta::ResponseCompactParams::Model::GPT_4O_AUDIO_PREVIEW_2024_10_01 }
@@ -348,6 +350,8 @@ module OpenAI
348
350
 
349
351
  variant const: -> { OpenAI::Models::Beta::ResponseCompactParams::Model::GPT_3_5_TURBO_16K_0613 }
350
352
 
353
+ variant const: -> { OpenAI::Models::Beta::ResponseCompactParams::Model::GPT_5_1_MINI }
354
+
351
355
  variant const: -> { OpenAI::Models::Beta::ResponseCompactParams::Model::O1_PRO }
352
356
 
353
357
  variant const: -> { OpenAI::Models::Beta::ResponseCompactParams::Model::O1_PRO_2025_03_19 }
@@ -417,7 +421,6 @@ module OpenAI
417
421
  GPT_5_1 = :"gpt-5.1"
418
422
  GPT_5_1_2025_11_13 = :"gpt-5.1-2025-11-13"
419
423
  GPT_5_1_CODEX = :"gpt-5.1-codex"
420
- GPT_5_1_MINI = :"gpt-5.1-mini"
421
424
  GPT_5_1_CHAT_LATEST = :"gpt-5.1-chat-latest"
422
425
  GPT_5 = :"gpt-5"
423
426
  GPT_5_MINI = :"gpt-5-mini"
@@ -448,6 +451,8 @@ module OpenAI
448
451
  GPT_4O_2024_11_20 = :"gpt-4o-2024-11-20"
449
452
  GPT_4O_2024_08_06 = :"gpt-4o-2024-08-06"
450
453
  GPT_4O_2024_05_13 = :"gpt-4o-2024-05-13"
454
+ GPT_AUDIO_MINI = :"gpt-audio-mini"
455
+ GPT_AUDIO_MINI_2025_12_15 = :"gpt-audio-mini-2025-12-15"
451
456
  GPT_4O_AUDIO_PREVIEW = :"gpt-4o-audio-preview"
452
457
  GPT_4O_AUDIO_PREVIEW_2024_10_01 = :"gpt-4o-audio-preview-2024-10-01"
453
458
  GPT_4O_AUDIO_PREVIEW_2024_12_17 = :"gpt-4o-audio-preview-2024-12-17"
@@ -481,6 +486,7 @@ module OpenAI
481
486
  GPT_3_5_TURBO_1106 = :"gpt-3.5-turbo-1106"
482
487
  GPT_3_5_TURBO_0125 = :"gpt-3.5-turbo-0125"
483
488
  GPT_3_5_TURBO_16K_0613 = :"gpt-3.5-turbo-16k-0613"
489
+ GPT_5_1_MINI = :"gpt-5.1-mini"
484
490
  O1_PRO = :"o1-pro"
485
491
  O1_PRO_2025_03_19 = :"o1-pro-2025-03-19"
486
492
  O3_PRO = :"o3-pro"
@@ -739,8 +739,6 @@ module OpenAI
739
739
 
740
740
  variant const: -> { OpenAI::Models::Beta::ResponseCreateParams::Model::GPT_5_1_CODEX }
741
741
 
742
- variant const: -> { OpenAI::Models::Beta::ResponseCreateParams::Model::GPT_5_1_MINI }
743
-
744
742
  variant const: -> { OpenAI::Models::Beta::ResponseCreateParams::Model::GPT_5_1_CHAT_LATEST }
745
743
 
746
744
  variant const: -> { OpenAI::Models::Beta::ResponseCreateParams::Model::GPT_5 }
@@ -801,6 +799,10 @@ module OpenAI
801
799
 
802
800
  variant const: -> { OpenAI::Models::Beta::ResponseCreateParams::Model::GPT_4O_2024_05_13 }
803
801
 
802
+ variant const: -> { OpenAI::Models::Beta::ResponseCreateParams::Model::GPT_AUDIO_MINI }
803
+
804
+ variant const: -> { OpenAI::Models::Beta::ResponseCreateParams::Model::GPT_AUDIO_MINI_2025_12_15 }
805
+
804
806
  variant const: -> { OpenAI::Models::Beta::ResponseCreateParams::Model::GPT_4O_AUDIO_PREVIEW }
805
807
 
806
808
  variant const: -> { OpenAI::Models::Beta::ResponseCreateParams::Model::GPT_4O_AUDIO_PREVIEW_2024_10_01 }
@@ -869,6 +871,8 @@ module OpenAI
869
871
 
870
872
  variant const: -> { OpenAI::Models::Beta::ResponseCreateParams::Model::GPT_3_5_TURBO_16K_0613 }
871
873
 
874
+ variant const: -> { OpenAI::Models::Beta::ResponseCreateParams::Model::GPT_5_1_MINI }
875
+
872
876
  variant const: -> { OpenAI::Models::Beta::ResponseCreateParams::Model::O1_PRO }
873
877
 
874
878
  variant const: -> { OpenAI::Models::Beta::ResponseCreateParams::Model::O1_PRO_2025_03_19 }
@@ -938,7 +942,6 @@ module OpenAI
938
942
  GPT_5_1 = :"gpt-5.1"
939
943
  GPT_5_1_2025_11_13 = :"gpt-5.1-2025-11-13"
940
944
  GPT_5_1_CODEX = :"gpt-5.1-codex"
941
- GPT_5_1_MINI = :"gpt-5.1-mini"
942
945
  GPT_5_1_CHAT_LATEST = :"gpt-5.1-chat-latest"
943
946
  GPT_5 = :"gpt-5"
944
947
  GPT_5_MINI = :"gpt-5-mini"
@@ -969,6 +972,8 @@ module OpenAI
969
972
  GPT_4O_2024_11_20 = :"gpt-4o-2024-11-20"
970
973
  GPT_4O_2024_08_06 = :"gpt-4o-2024-08-06"
971
974
  GPT_4O_2024_05_13 = :"gpt-4o-2024-05-13"
975
+ GPT_AUDIO_MINI = :"gpt-audio-mini"
976
+ GPT_AUDIO_MINI_2025_12_15 = :"gpt-audio-mini-2025-12-15"
972
977
  GPT_4O_AUDIO_PREVIEW = :"gpt-4o-audio-preview"
973
978
  GPT_4O_AUDIO_PREVIEW_2024_10_01 = :"gpt-4o-audio-preview-2024-10-01"
974
979
  GPT_4O_AUDIO_PREVIEW_2024_12_17 = :"gpt-4o-audio-preview-2024-12-17"
@@ -1002,6 +1007,7 @@ module OpenAI
1002
1007
  GPT_3_5_TURBO_1106 = :"gpt-3.5-turbo-1106"
1003
1008
  GPT_3_5_TURBO_0125 = :"gpt-3.5-turbo-0125"
1004
1009
  GPT_3_5_TURBO_16K_0613 = :"gpt-3.5-turbo-16k-0613"
1010
+ GPT_5_1_MINI = :"gpt-5.1-mini"
1005
1011
  O1_PRO = :"o1-pro"
1006
1012
  O1_PRO_2025_03_19 = :"o1-pro-2025-03-19"
1007
1013
  O3_PRO = :"o3-pro"
@@ -1180,6 +1186,13 @@ module OpenAI
1180
1186
  # @return [Symbol, OpenAI::Models::Beta::ResponseCreateParams::PromptCacheOptions::Mode, nil]
1181
1187
  optional :mode, enum: -> { OpenAI::Beta::ResponseCreateParams::PromptCacheOptions::Mode }
1182
1188
 
1189
+ # @!attribute prewarm
1190
+ # Prepares the prompt cache without generating output. Defaults to `false`. When
1191
+ # set to `true`, overrides the `generate` field to `false`.
1192
+ #
1193
+ # @return [Boolean, nil]
1194
+ optional :prewarm, OpenAI::Internal::Type::Boolean
1195
+
1183
1196
  # @!attribute ttl
1184
1197
  # The minimum lifetime applied to every implicit and explicit cache breakpoint
1185
1198
  # written by the request. Defaults to `30m`, which is currently the only supported
@@ -1188,7 +1201,7 @@ module OpenAI
1188
1201
  # @return [Symbol, OpenAI::Models::Beta::ResponseCreateParams::PromptCacheOptions::Ttl, nil]
1189
1202
  optional :ttl, enum: -> { OpenAI::Beta::ResponseCreateParams::PromptCacheOptions::Ttl }
1190
1203
 
1191
- # @!method initialize(comparison_response_id: nil, mode: nil, ttl: nil)
1204
+ # @!method initialize(comparison_response_id: nil, mode: nil, prewarm: nil, ttl: nil)
1192
1205
  # Options for prompt caching. Supported for `gpt-5.6` and later models. By
1193
1206
  # default, OpenAI automatically chooses one implicit cache breakpoint. You can add
1194
1207
  # explicit breakpoints to content blocks with `prompt_cache_breakpoint`. Each
@@ -1211,6 +1224,10 @@ module OpenAI
1211
1224
  # latest four explicit breakpoints. If there are no explicit breakpoints, the
1212
1225
  # request does not use prompt caching.
1213
1226
  #
1227
+ # @param prewarm [Boolean]
1228
+ # Prepares the prompt cache without generating output. Defaults to `false`. When
1229
+ # set to `true`, overrides the `generate` field to `false`.
1230
+ #
1214
1231
  # @param ttl [Symbol, OpenAI::Models::Beta::ResponseCreateParams::PromptCacheOptions::Ttl]
1215
1232
  # The minimum lifetime applied to every implicit and explicit cache breakpoint
1216
1233
  # written by the request. Defaults to `30m`, which is currently the only supported
@@ -40,6 +40,9 @@ module OpenAI
40
40
  # The organization has reached a usage, plan, or billing limit.
41
41
  USAGE_LIMIT_EXCEEDED = :usage_limit_exceeded
42
42
 
43
+ # The organization has no API credits remaining.
44
+ CREDIT_BALANCE_EXHAUSTED = :credit_balance_exhausted
45
+
43
46
  # The request exceeds the available rate limit.
44
47
  RATE_LIMIT_EXCEEDED = :rate_limit_exceeded
45
48
 
@@ -25,7 +25,6 @@ module OpenAI
25
25
  GPT_5_1 = :"gpt-5.1"
26
26
  GPT_5_1_2025_11_13 = :"gpt-5.1-2025-11-13"
27
27
  GPT_5_1_CODEX = :"gpt-5.1-codex"
28
- GPT_5_1_MINI = :"gpt-5.1-mini"
29
28
  GPT_5_1_CHAT_LATEST = :"gpt-5.1-chat-latest"
30
29
  GPT_5 = :"gpt-5"
31
30
  GPT_5_MINI = :"gpt-5-mini"
@@ -56,6 +55,8 @@ module OpenAI
56
55
  GPT_4O_2024_11_20 = :"gpt-4o-2024-11-20"
57
56
  GPT_4O_2024_08_06 = :"gpt-4o-2024-08-06"
58
57
  GPT_4O_2024_05_13 = :"gpt-4o-2024-05-13"
58
+ GPT_AUDIO_MINI = :"gpt-audio-mini"
59
+ GPT_AUDIO_MINI_2025_12_15 = :"gpt-audio-mini-2025-12-15"
59
60
  GPT_4O_AUDIO_PREVIEW = :"gpt-4o-audio-preview"
60
61
  GPT_4O_AUDIO_PREVIEW_2024_10_01 = :"gpt-4o-audio-preview-2024-10-01"
61
62
  GPT_4O_AUDIO_PREVIEW_2024_12_17 = :"gpt-4o-audio-preview-2024-12-17"
@@ -89,6 +90,7 @@ module OpenAI
89
90
  GPT_3_5_TURBO_1106 = :"gpt-3.5-turbo-1106"
90
91
  GPT_3_5_TURBO_0125 = :"gpt-3.5-turbo-0125"
91
92
  GPT_3_5_TURBO_16K_0613 = :"gpt-3.5-turbo-16k-0613"
93
+ GPT_5_1_MINI = :"gpt-5.1-mini"
92
94
 
93
95
  # @!method self.values
94
96
  # @return [Array<Symbol>]