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
@@ -88,7 +88,6 @@ module OpenAI
88
88
  | :"gpt-5.1"
89
89
  | :"gpt-5.1-2025-11-13"
90
90
  | :"gpt-5.1-codex"
91
- | :"gpt-5.1-mini"
92
91
  | :"gpt-5.1-chat-latest"
93
92
  | :"gpt-5"
94
93
  | :"gpt-5-mini"
@@ -119,6 +118,8 @@ module OpenAI
119
118
  | :"gpt-4o-2024-11-20"
120
119
  | :"gpt-4o-2024-08-06"
121
120
  | :"gpt-4o-2024-05-13"
121
+ | :"gpt-audio-mini"
122
+ | :"gpt-audio-mini-2025-12-15"
122
123
  | :"gpt-4o-audio-preview"
123
124
  | :"gpt-4o-audio-preview-2024-10-01"
124
125
  | :"gpt-4o-audio-preview-2024-12-17"
@@ -152,6 +153,7 @@ module OpenAI
152
153
  | :"gpt-3.5-turbo-1106"
153
154
  | :"gpt-3.5-turbo-0125"
154
155
  | :"gpt-3.5-turbo-16k-0613"
156
+ | :"gpt-5.1-mini"
155
157
  | :"o1-pro"
156
158
  | :"o1-pro-2025-03-19"
157
159
  | :"o3-pro"
@@ -198,7 +200,6 @@ module OpenAI
198
200
  GPT_5_1: :"gpt-5.1"
199
201
  GPT_5_1_2025_11_13: :"gpt-5.1-2025-11-13"
200
202
  GPT_5_1_CODEX: :"gpt-5.1-codex"
201
- GPT_5_1_MINI: :"gpt-5.1-mini"
202
203
  GPT_5_1_CHAT_LATEST: :"gpt-5.1-chat-latest"
203
204
  GPT_5: :"gpt-5"
204
205
  GPT_5_MINI: :"gpt-5-mini"
@@ -229,6 +230,8 @@ module OpenAI
229
230
  GPT_4O_2024_11_20: :"gpt-4o-2024-11-20"
230
231
  GPT_4O_2024_08_06: :"gpt-4o-2024-08-06"
231
232
  GPT_4O_2024_05_13: :"gpt-4o-2024-05-13"
233
+ GPT_AUDIO_MINI: :"gpt-audio-mini"
234
+ GPT_AUDIO_MINI_2025_12_15: :"gpt-audio-mini-2025-12-15"
232
235
  GPT_4O_AUDIO_PREVIEW: :"gpt-4o-audio-preview"
233
236
  GPT_4O_AUDIO_PREVIEW_2024_10_01: :"gpt-4o-audio-preview-2024-10-01"
234
237
  GPT_4O_AUDIO_PREVIEW_2024_12_17: :"gpt-4o-audio-preview-2024-12-17"
@@ -262,6 +265,7 @@ module OpenAI
262
265
  GPT_3_5_TURBO_1106: :"gpt-3.5-turbo-1106"
263
266
  GPT_3_5_TURBO_0125: :"gpt-3.5-turbo-0125"
264
267
  GPT_3_5_TURBO_16K_0613: :"gpt-3.5-turbo-16k-0613"
268
+ GPT_5_1_MINI: :"gpt-5.1-mini"
265
269
  O1_PRO: :"o1-pro"
266
270
  O1_PRO_2025_03_19: :"o1-pro-2025-03-19"
267
271
  O3_PRO: :"o3-pro"
@@ -257,7 +257,6 @@ module OpenAI
257
257
  | :"gpt-5.1"
258
258
  | :"gpt-5.1-2025-11-13"
259
259
  | :"gpt-5.1-codex"
260
- | :"gpt-5.1-mini"
261
260
  | :"gpt-5.1-chat-latest"
262
261
  | :"gpt-5"
263
262
  | :"gpt-5-mini"
@@ -288,6 +287,8 @@ module OpenAI
288
287
  | :"gpt-4o-2024-11-20"
289
288
  | :"gpt-4o-2024-08-06"
290
289
  | :"gpt-4o-2024-05-13"
290
+ | :"gpt-audio-mini"
291
+ | :"gpt-audio-mini-2025-12-15"
291
292
  | :"gpt-4o-audio-preview"
292
293
  | :"gpt-4o-audio-preview-2024-10-01"
293
294
  | :"gpt-4o-audio-preview-2024-12-17"
@@ -321,6 +322,7 @@ module OpenAI
321
322
  | :"gpt-3.5-turbo-1106"
322
323
  | :"gpt-3.5-turbo-0125"
323
324
  | :"gpt-3.5-turbo-16k-0613"
325
+ | :"gpt-5.1-mini"
324
326
  | :"o1-pro"
325
327
  | :"o1-pro-2025-03-19"
326
328
  | :"o3-pro"
@@ -367,7 +369,6 @@ module OpenAI
367
369
  GPT_5_1: :"gpt-5.1"
368
370
  GPT_5_1_2025_11_13: :"gpt-5.1-2025-11-13"
369
371
  GPT_5_1_CODEX: :"gpt-5.1-codex"
370
- GPT_5_1_MINI: :"gpt-5.1-mini"
371
372
  GPT_5_1_CHAT_LATEST: :"gpt-5.1-chat-latest"
372
373
  GPT_5: :"gpt-5"
373
374
  GPT_5_MINI: :"gpt-5-mini"
@@ -398,6 +399,8 @@ module OpenAI
398
399
  GPT_4O_2024_11_20: :"gpt-4o-2024-11-20"
399
400
  GPT_4O_2024_08_06: :"gpt-4o-2024-08-06"
400
401
  GPT_4O_2024_05_13: :"gpt-4o-2024-05-13"
402
+ GPT_AUDIO_MINI: :"gpt-audio-mini"
403
+ GPT_AUDIO_MINI_2025_12_15: :"gpt-audio-mini-2025-12-15"
401
404
  GPT_4O_AUDIO_PREVIEW: :"gpt-4o-audio-preview"
402
405
  GPT_4O_AUDIO_PREVIEW_2024_10_01: :"gpt-4o-audio-preview-2024-10-01"
403
406
  GPT_4O_AUDIO_PREVIEW_2024_12_17: :"gpt-4o-audio-preview-2024-12-17"
@@ -431,6 +434,7 @@ module OpenAI
431
434
  GPT_3_5_TURBO_1106: :"gpt-3.5-turbo-1106"
432
435
  GPT_3_5_TURBO_0125: :"gpt-3.5-turbo-0125"
433
436
  GPT_3_5_TURBO_16K_0613: :"gpt-3.5-turbo-16k-0613"
437
+ GPT_5_1_MINI: :"gpt-5.1-mini"
434
438
  O1_PRO: :"o1-pro"
435
439
  O1_PRO_2025_03_19: :"o1-pro-2025-03-19"
436
440
  O3_PRO: :"o3-pro"
@@ -573,6 +577,7 @@ module OpenAI
573
577
  {
574
578
  ?comparison_response_id: String?,
575
579
  ?mode: OpenAI::Models::Beta::ResponseCreateParams::PromptCacheOptions::mode,
580
+ ?prewarm: bool,
576
581
  ?ttl: OpenAI::Models::Beta::ResponseCreateParams::PromptCacheOptions::ttl
577
582
  }
578
583
 
@@ -585,6 +590,10 @@ module OpenAI
585
590
  OpenAI::Models::Beta::ResponseCreateParams::PromptCacheOptions::mode
586
591
  ) -> OpenAI::Models::Beta::ResponseCreateParams::PromptCacheOptions::mode
587
592
 
593
+ attr_reader prewarm: bool?
594
+
595
+ def prewarm=: (bool) -> bool
596
+
588
597
  attr_reader ttl: OpenAI::Models::Beta::ResponseCreateParams::PromptCacheOptions::ttl?
589
598
 
590
599
  def ttl=: (
@@ -594,12 +603,14 @@ module OpenAI
594
603
  def initialize: (
595
604
  ?comparison_response_id: String?,
596
605
  ?mode: OpenAI::Models::Beta::ResponseCreateParams::PromptCacheOptions::mode,
606
+ ?prewarm: bool,
597
607
  ?ttl: OpenAI::Models::Beta::ResponseCreateParams::PromptCacheOptions::ttl
598
608
  ) -> void
599
609
 
600
610
  def to_hash: -> {
601
611
  ?comparison_response_id: String?,
602
612
  ?mode: OpenAI::Models::Beta::ResponseCreateParams::PromptCacheOptions::mode,
613
+ ?prewarm: bool,
603
614
  ?ttl: OpenAI::Models::Beta::ResponseCreateParams::PromptCacheOptions::ttl
604
615
  }
605
616
 
@@ -23,6 +23,7 @@ module OpenAI
23
23
  :context_length_exceeded
24
24
  | :session_budget_exceeded
25
25
  | :usage_limit_exceeded
26
+ | :credit_balance_exhausted
26
27
  | :rate_limit_exceeded
27
28
  | :server_overloaded
28
29
  | :cyber_policy
@@ -49,6 +50,9 @@ module OpenAI
49
50
  # The organization has reached a usage, plan, or billing limit.
50
51
  USAGE_LIMIT_EXCEEDED: :usage_limit_exceeded
51
52
 
53
+ # The organization has no API credits remaining.
54
+ CREDIT_BALANCE_EXHAUSTED: :credit_balance_exhausted
55
+
52
56
  # The request exceeds the available rate limit.
53
57
  RATE_LIMIT_EXCEEDED: :rate_limit_exceeded
54
58
 
@@ -21,7 +21,6 @@ module OpenAI
21
21
  | :"gpt-5.1"
22
22
  | :"gpt-5.1-2025-11-13"
23
23
  | :"gpt-5.1-codex"
24
- | :"gpt-5.1-mini"
25
24
  | :"gpt-5.1-chat-latest"
26
25
  | :"gpt-5"
27
26
  | :"gpt-5-mini"
@@ -52,6 +51,8 @@ module OpenAI
52
51
  | :"gpt-4o-2024-11-20"
53
52
  | :"gpt-4o-2024-08-06"
54
53
  | :"gpt-4o-2024-05-13"
54
+ | :"gpt-audio-mini"
55
+ | :"gpt-audio-mini-2025-12-15"
55
56
  | :"gpt-4o-audio-preview"
56
57
  | :"gpt-4o-audio-preview-2024-10-01"
57
58
  | :"gpt-4o-audio-preview-2024-12-17"
@@ -85,6 +86,7 @@ module OpenAI
85
86
  | :"gpt-3.5-turbo-1106"
86
87
  | :"gpt-3.5-turbo-0125"
87
88
  | :"gpt-3.5-turbo-16k-0613"
89
+ | :"gpt-5.1-mini"
88
90
 
89
91
  module ChatModel
90
92
  extend OpenAI::Internal::Type::Enum
@@ -109,7 +111,6 @@ module OpenAI
109
111
  GPT_5_1: :"gpt-5.1"
110
112
  GPT_5_1_2025_11_13: :"gpt-5.1-2025-11-13"
111
113
  GPT_5_1_CODEX: :"gpt-5.1-codex"
112
- GPT_5_1_MINI: :"gpt-5.1-mini"
113
114
  GPT_5_1_CHAT_LATEST: :"gpt-5.1-chat-latest"
114
115
  GPT_5: :"gpt-5"
115
116
  GPT_5_MINI: :"gpt-5-mini"
@@ -140,6 +141,8 @@ module OpenAI
140
141
  GPT_4O_2024_11_20: :"gpt-4o-2024-11-20"
141
142
  GPT_4O_2024_08_06: :"gpt-4o-2024-08-06"
142
143
  GPT_4O_2024_05_13: :"gpt-4o-2024-05-13"
144
+ GPT_AUDIO_MINI: :"gpt-audio-mini"
145
+ GPT_AUDIO_MINI_2025_12_15: :"gpt-audio-mini-2025-12-15"
143
146
  GPT_4O_AUDIO_PREVIEW: :"gpt-4o-audio-preview"
144
147
  GPT_4O_AUDIO_PREVIEW_2024_10_01: :"gpt-4o-audio-preview-2024-10-01"
145
148
  GPT_4O_AUDIO_PREVIEW_2024_12_17: :"gpt-4o-audio-preview-2024-12-17"
@@ -173,6 +176,7 @@ module OpenAI
173
176
  GPT_3_5_TURBO_1106: :"gpt-3.5-turbo-1106"
174
177
  GPT_3_5_TURBO_0125: :"gpt-3.5-turbo-0125"
175
178
  GPT_3_5_TURBO_16K_0613: :"gpt-3.5-turbo-16k-0613"
179
+ GPT_5_1_MINI: :"gpt-5.1-mini"
176
180
 
177
181
  def self?.values: -> ::Array[OpenAI::Models::chat_model]
178
182
  end
@@ -79,7 +79,6 @@ module OpenAI
79
79
  | :"gpt-5.1"
80
80
  | :"gpt-5.1-2025-11-13"
81
81
  | :"gpt-5.1-codex"
82
- | :"gpt-5.1-mini"
83
82
  | :"gpt-5.1-chat-latest"
84
83
  | :"gpt-5"
85
84
  | :"gpt-5-mini"
@@ -110,6 +109,8 @@ module OpenAI
110
109
  | :"gpt-4o-2024-11-20"
111
110
  | :"gpt-4o-2024-08-06"
112
111
  | :"gpt-4o-2024-05-13"
112
+ | :"gpt-audio-mini"
113
+ | :"gpt-audio-mini-2025-12-15"
113
114
  | :"gpt-4o-audio-preview"
114
115
  | :"gpt-4o-audio-preview-2024-10-01"
115
116
  | :"gpt-4o-audio-preview-2024-12-17"
@@ -143,6 +144,7 @@ module OpenAI
143
144
  | :"gpt-3.5-turbo-1106"
144
145
  | :"gpt-3.5-turbo-0125"
145
146
  | :"gpt-3.5-turbo-16k-0613"
147
+ | :"gpt-5.1-mini"
146
148
  | :"o1-pro"
147
149
  | :"o1-pro-2025-03-19"
148
150
  | :"o3-pro"
@@ -189,7 +191,6 @@ module OpenAI
189
191
  GPT_5_1: :"gpt-5.1"
190
192
  GPT_5_1_2025_11_13: :"gpt-5.1-2025-11-13"
191
193
  GPT_5_1_CODEX: :"gpt-5.1-codex"
192
- GPT_5_1_MINI: :"gpt-5.1-mini"
193
194
  GPT_5_1_CHAT_LATEST: :"gpt-5.1-chat-latest"
194
195
  GPT_5: :"gpt-5"
195
196
  GPT_5_MINI: :"gpt-5-mini"
@@ -220,6 +221,8 @@ module OpenAI
220
221
  GPT_4O_2024_11_20: :"gpt-4o-2024-11-20"
221
222
  GPT_4O_2024_08_06: :"gpt-4o-2024-08-06"
222
223
  GPT_4O_2024_05_13: :"gpt-4o-2024-05-13"
224
+ GPT_AUDIO_MINI: :"gpt-audio-mini"
225
+ GPT_AUDIO_MINI_2025_12_15: :"gpt-audio-mini-2025-12-15"
223
226
  GPT_4O_AUDIO_PREVIEW: :"gpt-4o-audio-preview"
224
227
  GPT_4O_AUDIO_PREVIEW_2024_10_01: :"gpt-4o-audio-preview-2024-10-01"
225
228
  GPT_4O_AUDIO_PREVIEW_2024_12_17: :"gpt-4o-audio-preview-2024-12-17"
@@ -253,6 +256,7 @@ module OpenAI
253
256
  GPT_3_5_TURBO_1106: :"gpt-3.5-turbo-1106"
254
257
  GPT_3_5_TURBO_0125: :"gpt-3.5-turbo-0125"
255
258
  GPT_3_5_TURBO_16K_0613: :"gpt-3.5-turbo-16k-0613"
259
+ GPT_5_1_MINI: :"gpt-5.1-mini"
256
260
  O1_PRO: :"o1-pro"
257
261
  O1_PRO_2025_03_19: :"o1-pro-2025-03-19"
258
262
  O3_PRO: :"o3-pro"
@@ -0,0 +1,37 @@
1
+ module OpenAI
2
+ module Models
3
+ module Responses
4
+ type response_compaction_compacting_event =
5
+ {
6
+ item_id: String,
7
+ output_index: Integer,
8
+ sequence_number: Integer,
9
+ ?type: :"response.compaction.compacting"
10
+ }
11
+
12
+ class ResponseCompactionCompactingEvent < OpenAI::Internal::Type::BaseModel
13
+ attr_accessor item_id: String
14
+
15
+ attr_accessor output_index: Integer
16
+
17
+ attr_accessor sequence_number: Integer
18
+
19
+ attr_accessor type: :"response.compaction.compacting"
20
+
21
+ def initialize: (
22
+ item_id: String,
23
+ output_index: Integer,
24
+ sequence_number: Integer,
25
+ ?type: :"response.compaction.compacting"
26
+ ) -> void
27
+
28
+ def to_hash: -> {
29
+ item_id: String,
30
+ output_index: Integer,
31
+ sequence_number: Integer,
32
+ ?type: :"response.compaction.compacting"
33
+ }
34
+ end
35
+ end
36
+ end
37
+ end
@@ -327,6 +327,7 @@ module OpenAI
327
327
  {
328
328
  ?comparison_response_id: String?,
329
329
  ?mode: OpenAI::Models::Responses::ResponseCreateParams::PromptCacheOptions::mode,
330
+ ?prewarm: bool,
330
331
  ?ttl: OpenAI::Models::Responses::ResponseCreateParams::PromptCacheOptions::ttl
331
332
  }
332
333
 
@@ -339,6 +340,10 @@ module OpenAI
339
340
  OpenAI::Models::Responses::ResponseCreateParams::PromptCacheOptions::mode
340
341
  ) -> OpenAI::Models::Responses::ResponseCreateParams::PromptCacheOptions::mode
341
342
 
343
+ attr_reader prewarm: bool?
344
+
345
+ def prewarm=: (bool) -> bool
346
+
342
347
  attr_reader ttl: OpenAI::Models::Responses::ResponseCreateParams::PromptCacheOptions::ttl?
343
348
 
344
349
  def ttl=: (
@@ -348,12 +353,14 @@ module OpenAI
348
353
  def initialize: (
349
354
  ?comparison_response_id: String?,
350
355
  ?mode: OpenAI::Models::Responses::ResponseCreateParams::PromptCacheOptions::mode,
356
+ ?prewarm: bool,
351
357
  ?ttl: OpenAI::Models::Responses::ResponseCreateParams::PromptCacheOptions::ttl
352
358
  ) -> void
353
359
 
354
360
  def to_hash: -> {
355
361
  ?comparison_response_id: String?,
356
362
  ?mode: OpenAI::Models::Responses::ResponseCreateParams::PromptCacheOptions::mode,
363
+ ?prewarm: bool,
357
364
  ?ttl: OpenAI::Models::Responses::ResponseCreateParams::PromptCacheOptions::ttl
358
365
  }
359
366
 
@@ -11,6 +11,7 @@ module OpenAI
11
11
  | OpenAI::Responses::ResponseCodeInterpreterCallCompletedEvent
12
12
  | OpenAI::Responses::ResponseCodeInterpreterCallInProgressEvent
13
13
  | OpenAI::Responses::ResponseCodeInterpreterCallInterpretingEvent
14
+ | OpenAI::Responses::ResponseCompactionCompactingEvent
14
15
  | OpenAI::Responses::ResponseCompletedEvent
15
16
  | OpenAI::Responses::ResponseContentPartAddedEvent
16
17
  | OpenAI::Responses::ResponseContentPartDoneEvent
@@ -346,6 +346,7 @@ module OpenAI
346
346
  {
347
347
  ?comparison_response_id: String?,
348
348
  ?mode: OpenAI::Models::Responses::ResponsesClientEvent::ResponseCreate::PromptCacheOptions::mode,
349
+ ?prewarm: bool,
349
350
  ?ttl: OpenAI::Models::Responses::ResponsesClientEvent::ResponseCreate::PromptCacheOptions::ttl
350
351
  }
351
352
 
@@ -358,6 +359,10 @@ module OpenAI
358
359
  OpenAI::Models::Responses::ResponsesClientEvent::ResponseCreate::PromptCacheOptions::mode
359
360
  ) -> OpenAI::Models::Responses::ResponsesClientEvent::ResponseCreate::PromptCacheOptions::mode
360
361
 
362
+ attr_reader prewarm: bool?
363
+
364
+ def prewarm=: (bool) -> bool
365
+
361
366
  attr_reader ttl: OpenAI::Models::Responses::ResponsesClientEvent::ResponseCreate::PromptCacheOptions::ttl?
362
367
 
363
368
  def ttl=: (
@@ -367,12 +372,14 @@ module OpenAI
367
372
  def initialize: (
368
373
  ?comparison_response_id: String?,
369
374
  ?mode: OpenAI::Models::Responses::ResponsesClientEvent::ResponseCreate::PromptCacheOptions::mode,
375
+ ?prewarm: bool,
370
376
  ?ttl: OpenAI::Models::Responses::ResponsesClientEvent::ResponseCreate::PromptCacheOptions::ttl
371
377
  ) -> void
372
378
 
373
379
  def to_hash: -> {
374
380
  ?comparison_response_id: String?,
375
381
  ?mode: OpenAI::Models::Responses::ResponsesClientEvent::ResponseCreate::PromptCacheOptions::mode,
382
+ ?prewarm: bool,
376
383
  ?ttl: OpenAI::Models::Responses::ResponsesClientEvent::ResponseCreate::PromptCacheOptions::ttl
377
384
  }
378
385
 
@@ -15,6 +15,7 @@ module OpenAI
15
15
  | OpenAI::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallWsCompleted
16
16
  | OpenAI::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallInWsProgress
17
17
  | OpenAI::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallWsInterpreting
18
+ | OpenAI::Responses::ResponsesServerEvent::ResponseCompactionWsCompacting
18
19
  | OpenAI::Responses::ResponsesServerEvent::ResponseWsCompleted
19
20
  | OpenAI::Responses::ResponsesServerEvent::ResponseContentPartWsAdded
20
21
  | OpenAI::Responses::ResponsesServerEvent::ResponseContentPartWsDone
@@ -334,6 +335,37 @@ module OpenAI
334
335
  }
335
336
  end
336
337
 
338
+ type response_compaction_ws_compacting =
339
+ {
340
+ item_id: String,
341
+ output_index: Integer,
342
+ sequence_number: Integer,
343
+ ?type: :"response.compaction.compacting",
344
+ ?stream_id: String
345
+ }
346
+
347
+ class ResponseCompactionWsCompacting < OpenAI::Models::Responses::ResponseCompactionCompactingEvent
348
+ def stream_id: -> String?
349
+
350
+ def stream_id=: (String _) -> String
351
+
352
+ def initialize: (
353
+ item_id: String,
354
+ output_index: Integer,
355
+ sequence_number: Integer,
356
+ ?stream_id: String,
357
+ ?type: :"response.compaction.compacting"
358
+ ) -> void
359
+
360
+ def to_hash: -> {
361
+ item_id: String,
362
+ output_index: Integer,
363
+ sequence_number: Integer,
364
+ ?type: :"response.compaction.compacting",
365
+ ?stream_id: String
366
+ }
367
+ end
368
+
337
369
  type response_ws_completed =
338
370
  {
339
371
  response: OpenAI::Responses::Response,
@@ -40,6 +40,7 @@ module OpenAI
40
40
 
41
41
  def update: (
42
42
  String session_id,
43
+ ?agent: OpenAI::Beta::Agents::SessionUpdateParams::Agent,
43
44
  ?metadata: ::Hash[Symbol, String]?,
44
45
  ?request_options: OpenAI::request_opts
45
46
  ) -> OpenAI::Beta::AgentSession
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: openai
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.90.0
4
+ version: 0.91.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - OpenAI
@@ -61,6 +61,11 @@ files:
61
61
  - examples/audio/record_and_play.rb
62
62
  - examples/mtls_custom_http_client.rb
63
63
  - examples/realtime/README.md
64
+ - examples/realtime/browser/README.md
65
+ - examples/realtime/browser/index.html
66
+ - examples/realtime/browser/page.js
67
+ - examples/realtime/browser/peer.js
68
+ - examples/realtime/browser/server.rb
64
69
  - examples/realtime/function_calling.rb
65
70
  - examples/realtime/image_input.rb
66
71
  - examples/realtime/mcp_approval.rb
@@ -112,6 +117,7 @@ files:
112
117
  - lib/openai/helpers/responses_websocket/connection_resources.rb
113
118
  - lib/openai/helpers/responses_websocket/errors.rb
114
119
  - lib/openai/helpers/responses_websocket/resources/responses_extension.rb
120
+ - lib/openai/helpers/responses_websocket/session.rb
115
121
  - lib/openai/helpers/responses_websocket/transports/async_websocket.rb
116
122
  - lib/openai/helpers/responses_websocket/unknown_server_event.rb
117
123
  - lib/openai/helpers/sorbet.rb
@@ -575,6 +581,7 @@ files:
575
581
  - lib/openai/models/beta/beta_response_code_interpreter_call_in_progress_event.rb
576
582
  - lib/openai/models/beta/beta_response_code_interpreter_call_interpreting_event.rb
577
583
  - lib/openai/models/beta/beta_response_code_interpreter_tool_call.rb
584
+ - lib/openai/models/beta/beta_response_compaction_compacting_event.rb
578
585
  - lib/openai/models/beta/beta_response_compaction_item.rb
579
586
  - lib/openai/models/beta/beta_response_compaction_item_param.rb
580
587
  - lib/openai/models/beta/beta_response_completed_event.rb
@@ -1292,6 +1299,7 @@ files:
1292
1299
  - lib/openai/models/responses/response_code_interpreter_call_interpreting_event.rb
1293
1300
  - lib/openai/models/responses/response_code_interpreter_tool_call.rb
1294
1301
  - lib/openai/models/responses/response_compact_params.rb
1302
+ - lib/openai/models/responses/response_compaction_compacting_event.rb
1295
1303
  - lib/openai/models/responses/response_compaction_item.rb
1296
1304
  - lib/openai/models/responses/response_compaction_item_param.rb
1297
1305
  - lib/openai/models/responses/response_completed_event.rb
@@ -1666,6 +1674,7 @@ files:
1666
1674
  - rbi/openai/helpers/responses_websocket/connection_manager.rbi
1667
1675
  - rbi/openai/helpers/responses_websocket/connection_resources.rbi
1668
1676
  - rbi/openai/helpers/responses_websocket/extensions.rbi
1677
+ - rbi/openai/helpers/responses_websocket/session.rbi
1669
1678
  - rbi/openai/helpers/responses_websocket/transports/async_websocket.rbi
1670
1679
  - rbi/openai/helpers/responses_websocket/unknown_server_event.rbi
1671
1680
  - rbi/openai/helpers/sorbet.rbi
@@ -2119,6 +2128,7 @@ files:
2119
2128
  - rbi/openai/models/beta/beta_response_code_interpreter_call_in_progress_event.rbi
2120
2129
  - rbi/openai/models/beta/beta_response_code_interpreter_call_interpreting_event.rbi
2121
2130
  - rbi/openai/models/beta/beta_response_code_interpreter_tool_call.rbi
2131
+ - rbi/openai/models/beta/beta_response_compaction_compacting_event.rbi
2122
2132
  - rbi/openai/models/beta/beta_response_compaction_item.rbi
2123
2133
  - rbi/openai/models/beta/beta_response_compaction_item_param.rbi
2124
2134
  - rbi/openai/models/beta/beta_response_completed_event.rbi
@@ -2835,6 +2845,7 @@ files:
2835
2845
  - rbi/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi
2836
2846
  - rbi/openai/models/responses/response_code_interpreter_tool_call.rbi
2837
2847
  - rbi/openai/models/responses/response_compact_params.rbi
2848
+ - rbi/openai/models/responses/response_compaction_compacting_event.rbi
2838
2849
  - rbi/openai/models/responses/response_compaction_item.rbi
2839
2850
  - rbi/openai/models/responses/response_compaction_item_param.rbi
2840
2851
  - rbi/openai/models/responses/response_completed_event.rbi
@@ -3208,6 +3219,7 @@ files:
3208
3219
  - sig/openai/helpers/responses_websocket/connection_manager.rbs
3209
3220
  - sig/openai/helpers/responses_websocket/connection_resources.rbs
3210
3221
  - sig/openai/helpers/responses_websocket/extensions.rbs
3222
+ - sig/openai/helpers/responses_websocket/session.rbs
3211
3223
  - sig/openai/helpers/responses_websocket/transports/async_websocket.rbs
3212
3224
  - sig/openai/helpers/responses_websocket/unknown_server_event.rbs
3213
3225
  - sig/openai/helpers/sorbet.rbs
@@ -3652,6 +3664,7 @@ files:
3652
3664
  - sig/openai/models/beta/beta_response_code_interpreter_call_in_progress_event.rbs
3653
3665
  - sig/openai/models/beta/beta_response_code_interpreter_call_interpreting_event.rbs
3654
3666
  - sig/openai/models/beta/beta_response_code_interpreter_tool_call.rbs
3667
+ - sig/openai/models/beta/beta_response_compaction_compacting_event.rbs
3655
3668
  - sig/openai/models/beta/beta_response_compaction_item.rbs
3656
3669
  - sig/openai/models/beta/beta_response_compaction_item_param.rbs
3657
3670
  - sig/openai/models/beta/beta_response_completed_event.rbs
@@ -4368,6 +4381,7 @@ files:
4368
4381
  - sig/openai/models/responses/response_code_interpreter_call_interpreting_event.rbs
4369
4382
  - sig/openai/models/responses/response_code_interpreter_tool_call.rbs
4370
4383
  - sig/openai/models/responses/response_compact_params.rbs
4384
+ - sig/openai/models/responses/response_compaction_compacting_event.rbs
4371
4385
  - sig/openai/models/responses/response_compaction_item.rbs
4372
4386
  - sig/openai/models/responses/response_compaction_item_param.rbs
4373
4387
  - sig/openai/models/responses/response_completed_event.rbs
@@ -4734,7 +4748,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
4734
4748
  - !ruby/object:Gem::Version
4735
4749
  version: '0'
4736
4750
  requirements: []
4737
- rubygems_version: 4.0.16
4751
+ rubygems_version: 4.0.20
4738
4752
  specification_version: 4
4739
4753
  summary: Ruby library to access the OpenAI API
4740
4754
  test_files: []