openai 0.79.0 → 0.80.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 (106) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +19 -0
  3. data/README.md +1 -1
  4. data/bedrock.md +67 -2
  5. data/lib/openai/models/all_models.rb +2 -0
  6. data/lib/openai/models/beta/beta_mcp_tool_call_error.rb +84 -0
  7. data/lib/openai/models/beta/beta_response.rb +18 -0
  8. data/lib/openai/models/beta/beta_response_input_item.rb +3 -3
  9. data/lib/openai/models/beta/beta_response_item.rb +3 -3
  10. data/lib/openai/models/beta/beta_response_output_item.rb +3 -3
  11. data/lib/openai/models/beta/beta_response_output_item_added_event.rb +5 -2
  12. data/lib/openai/models/beta/beta_response_output_text_annotation_added_event.rb +201 -4
  13. data/lib/openai/models/beta/beta_response_reasoning_item.rb +5 -0
  14. data/lib/openai/models/beta/beta_responses_client_event.rb +18 -0
  15. data/lib/openai/models/beta/beta_responses_server_event.rb +126 -22
  16. data/lib/openai/models/beta/beta_web_search_tool.rb +11 -1
  17. data/lib/openai/models/beta/response_compact_params.rb +9 -0
  18. data/lib/openai/models/beta/response_create_params.rb +18 -0
  19. data/lib/openai/models/chat_model.rb +1 -0
  20. data/lib/openai/models/completion_usage.rb +26 -2
  21. data/lib/openai/models/conversations/conversation_item.rb +3 -3
  22. data/lib/openai/models/model.rb +9 -1
  23. data/lib/openai/models/responses/mcp_tool_call_error.rb +82 -0
  24. data/lib/openai/models/responses/response.rb +9 -0
  25. data/lib/openai/models/responses/response_compact_params.rb +9 -0
  26. data/lib/openai/models/responses/response_create_params.rb +9 -0
  27. data/lib/openai/models/responses/response_input_item.rb +3 -3
  28. data/lib/openai/models/responses/response_item.rb +3 -3
  29. data/lib/openai/models/responses/response_output_item.rb +3 -3
  30. data/lib/openai/models/responses/response_output_item_added_event.rb +5 -2
  31. data/lib/openai/models/responses/response_output_text_annotation_added_event.rb +201 -4
  32. data/lib/openai/models/responses/response_reasoning_item.rb +5 -0
  33. data/lib/openai/models/responses/responses_client_event.rb +9 -0
  34. data/lib/openai/models/responses/responses_server_event.rb +100 -22
  35. data/lib/openai/models/responses/web_search_tool.rb +11 -1
  36. data/lib/openai/models/responses_model.rb +2 -0
  37. data/lib/openai/providers/bedrock.rb +127 -16
  38. data/lib/openai/resources/files.rb +1 -1
  39. data/lib/openai/version.rb +1 -1
  40. data/lib/openai.rb +4 -2
  41. data/rbi/openai/models/all_models.rbi +10 -0
  42. data/rbi/openai/models/beta/beta_mcp_tool_call_error.rbi +122 -0
  43. data/rbi/openai/models/beta/beta_response.rbi +32 -0
  44. data/rbi/openai/models/beta/beta_response_input_item.rbi +27 -3
  45. data/rbi/openai/models/beta/beta_response_item.rbi +27 -3
  46. data/rbi/openai/models/beta/beta_response_output_item.rbi +27 -3
  47. data/rbi/openai/models/beta/beta_response_output_item_added_event.rbi +8 -2
  48. data/rbi/openai/models/beta/beta_response_output_text_annotation_added_event.rbi +297 -5
  49. data/rbi/openai/models/beta/beta_response_reasoning_item.rbi +10 -0
  50. data/rbi/openai/models/beta/beta_responses_client_event.rbi +32 -0
  51. data/rbi/openai/models/beta/beta_responses_server_event.rbi +221 -67
  52. data/rbi/openai/models/beta/beta_web_search_tool.rbi +15 -0
  53. data/rbi/openai/models/beta/response_compact_params.rbi +15 -0
  54. data/rbi/openai/models/beta/response_create_params.rbi +32 -0
  55. data/rbi/openai/models/chat_model.rbi +2 -0
  56. data/rbi/openai/models/completion_usage.rbi +39 -6
  57. data/rbi/openai/models/conversations/conversation_item.rbi +12 -3
  58. data/rbi/openai/models/model.rbi +14 -1
  59. data/rbi/openai/models/responses/mcp_tool_call_error.rbi +120 -0
  60. data/rbi/openai/models/responses/response.rbi +17 -0
  61. data/rbi/openai/models/responses/response_compact_params.rbi +15 -0
  62. data/rbi/openai/models/responses/response_create_params.rbi +17 -0
  63. data/rbi/openai/models/responses/response_input_item.rbi +27 -3
  64. data/rbi/openai/models/responses/response_item.rbi +27 -3
  65. data/rbi/openai/models/responses/response_output_item.rbi +27 -3
  66. data/rbi/openai/models/responses/response_output_item_added_event.rbi +8 -2
  67. data/rbi/openai/models/responses/response_output_text_annotation_added_event.rbi +297 -5
  68. data/rbi/openai/models/responses/response_reasoning_item.rbi +10 -0
  69. data/rbi/openai/models/responses/responses_client_event.rbi +17 -0
  70. data/rbi/openai/models/responses/responses_server_event.rbi +165 -62
  71. data/rbi/openai/models/responses/web_search_tool.rbi +15 -0
  72. data/rbi/openai/models/responses_model.rbi +10 -0
  73. data/rbi/openai/providers.rbi +2 -0
  74. data/rbi/openai/resources/beta/responses.rbi +8 -0
  75. data/rbi/openai/resources/files.rbi +1 -1
  76. data/rbi/openai/resources/responses.rbi +8 -0
  77. data/sig/openai/models/all_models.rbs +4 -0
  78. data/sig/openai/models/beta/beta_mcp_tool_call_error.rbs +75 -0
  79. data/sig/openai/models/beta/beta_response.rbs +8 -1
  80. data/sig/openai/models/beta/beta_response_input_item.rbs +4 -4
  81. data/sig/openai/models/beta/beta_response_item.rbs +4 -4
  82. data/sig/openai/models/beta/beta_response_output_item.rbs +4 -4
  83. data/sig/openai/models/beta/beta_response_output_text_annotation_added_event.rbs +149 -4
  84. data/sig/openai/models/beta/beta_responses_client_event.rbs +8 -1
  85. data/sig/openai/models/beta/beta_responses_server_event.rbs +99 -39
  86. data/sig/openai/models/beta/beta_web_search_tool.rbs +7 -0
  87. data/sig/openai/models/beta/response_compact_params.rbs +6 -0
  88. data/sig/openai/models/beta/response_create_params.rbs +8 -1
  89. data/sig/openai/models/chat_model.rbs +2 -0
  90. data/sig/openai/models/completion_usage.rbs +27 -6
  91. data/sig/openai/models/conversations/conversation_item.rbs +4 -4
  92. data/sig/openai/models/model.rbs +12 -2
  93. data/sig/openai/models/responses/mcp_tool_call_error.rbs +73 -0
  94. data/sig/openai/models/responses/response.rbs +2 -1
  95. data/sig/openai/models/responses/response_compact_params.rbs +6 -0
  96. data/sig/openai/models/responses/response_create_params.rbs +2 -1
  97. data/sig/openai/models/responses/response_input_item.rbs +4 -4
  98. data/sig/openai/models/responses/response_item.rbs +4 -4
  99. data/sig/openai/models/responses/response_output_item.rbs +4 -4
  100. data/sig/openai/models/responses/response_output_text_annotation_added_event.rbs +149 -4
  101. data/sig/openai/models/responses/responses_client_event.rbs +2 -1
  102. data/sig/openai/models/responses/responses_server_event.rbs +84 -36
  103. data/sig/openai/models/responses/web_search_tool.rbs +7 -0
  104. data/sig/openai/models/responses_model.rbs +4 -0
  105. data/sig/openai/providers.rbs +1 -0
  106. metadata +7 -1
@@ -73,6 +73,16 @@ module OpenAI
73
73
  :"computer-use-preview-2025-03-11",
74
74
  OpenAI::ResponsesModel::ResponsesOnlyModel::TaggedSymbol
75
75
  )
76
+ GPT_5_5_PRO =
77
+ T.let(
78
+ :"gpt-5.5-pro",
79
+ OpenAI::ResponsesModel::ResponsesOnlyModel::TaggedSymbol
80
+ )
81
+ GPT_5_5_PRO_2026_04_23 =
82
+ T.let(
83
+ :"gpt-5.5-pro-2026-04-23",
84
+ OpenAI::ResponsesModel::ResponsesOnlyModel::TaggedSymbol
85
+ )
76
86
  GPT_5_CODEX =
77
87
  T.let(
78
88
  :"gpt-5-codex",
@@ -14,6 +14,7 @@ module OpenAI
14
14
 
15
15
  sig do
16
16
  params(
17
+ endpoint: T.nilable(T.any(String, Symbol)),
17
18
  region: T.nilable(String),
18
19
  base_url: T.nilable(String),
19
20
  api_key: T.nilable(String),
@@ -26,6 +27,7 @@ module OpenAI
26
27
  ).returns(OpenAI::Provider)
27
28
  end
28
29
  def bedrock(
30
+ endpoint: nil,
29
31
  region: nil,
30
32
  base_url: nil,
31
33
  api_key: nil,
@@ -269,6 +269,10 @@ module OpenAI
269
269
  # Responses or Chat Completions. The response will show `service_tier=priority`
270
270
  # regardless of if you specify `service_tier=fast` or `priority` in your
271
271
  # request.
272
+ # - If set to 'ultrafast', then the request will be processed with the
273
+ # access-controlled Ultrafast Processing service tier. This tier is currently
274
+ # available for `gpt-5.6-sol`; a response served through it will show
275
+ # `service_tier=ultrafast`.
272
276
  # - When not set, the default behavior is 'auto'.
273
277
  #
274
278
  # When the `service_tier` parameter is set, the response body will include the
@@ -616,6 +620,10 @@ module OpenAI
616
620
  # Responses or Chat Completions. The response will show `service_tier=priority`
617
621
  # regardless of if you specify `service_tier=fast` or `priority` in your
618
622
  # request.
623
+ # - If set to 'ultrafast', then the request will be processed with the
624
+ # access-controlled Ultrafast Processing service tier. This tier is currently
625
+ # available for `gpt-5.6-sol`; a response served through it will show
626
+ # `service_tier=ultrafast`.
619
627
  # - When not set, the default behavior is 'auto'.
620
628
  #
621
629
  # When the `service_tier` parameter is set, the response body will include the
@@ -119,7 +119,7 @@ module OpenAI
119
119
  )
120
120
  end
121
121
 
122
- # Returns the contents of the specified file.
122
+ # Returns a response containing the contents of the specified file.
123
123
  sig do
124
124
  params(
125
125
  file_id: String,
@@ -266,6 +266,10 @@ module OpenAI
266
266
  # Responses or Chat Completions. The response will show `service_tier=priority`
267
267
  # regardless of if you specify `service_tier=fast` or `priority` in your
268
268
  # request.
269
+ # - If set to 'ultrafast', then the request will be processed with the
270
+ # access-controlled Ultrafast Processing service tier. This tier is currently
271
+ # available for `gpt-5.6-sol`; a response served through it will show
272
+ # `service_tier=ultrafast`.
269
273
  # - When not set, the default behavior is 'auto'.
270
274
  #
271
275
  # When the `service_tier` parameter is set, the response body will include the
@@ -606,6 +610,10 @@ module OpenAI
606
610
  # Responses or Chat Completions. The response will show `service_tier=priority`
607
611
  # regardless of if you specify `service_tier=fast` or `priority` in your
608
612
  # request.
613
+ # - If set to 'ultrafast', then the request will be processed with the
614
+ # access-controlled Ultrafast Processing service tier. This tier is currently
615
+ # available for `gpt-5.6-sol`; a response served through it will show
616
+ # `service_tier=ultrafast`.
609
617
  # - When not set, the default behavior is 'auto'.
610
618
  #
611
619
  # When the `service_tier` parameter is set, the response body will include the
@@ -19,6 +19,8 @@ module OpenAI
19
19
  | :"o4-mini-deep-research-2025-06-26"
20
20
  | :"computer-use-preview"
21
21
  | :"computer-use-preview-2025-03-11"
22
+ | :"gpt-5.5-pro"
23
+ | :"gpt-5.5-pro-2026-04-23"
22
24
  | :"gpt-5-codex"
23
25
  | :"gpt-5-pro"
24
26
  | :"gpt-5-pro-2025-10-06"
@@ -40,6 +42,8 @@ module OpenAI
40
42
  O4_MINI_DEEP_RESEARCH_2025_06_26: :"o4-mini-deep-research-2025-06-26"
41
43
  COMPUTER_USE_PREVIEW: :"computer-use-preview"
42
44
  COMPUTER_USE_PREVIEW_2025_03_11: :"computer-use-preview-2025-03-11"
45
+ GPT_5_5_PRO: :"gpt-5.5-pro"
46
+ GPT_5_5_PRO_2026_04_23: :"gpt-5.5-pro-2026-04-23"
43
47
  GPT_5_CODEX: :"gpt-5-codex"
44
48
  GPT_5_PRO: :"gpt-5-pro"
45
49
  GPT_5_PRO_2025_10_06: :"gpt-5-pro-2025-10-06"
@@ -0,0 +1,75 @@
1
+ module OpenAI
2
+ module Models
3
+ module BetaMcpToolCallError = Beta::BetaMcpToolCallError
4
+
5
+ module Beta
6
+ type beta_mcp_tool_call_error =
7
+ OpenAI::Beta::BetaMcpToolCallError::McpProtocolError
8
+ | OpenAI::Beta::BetaMcpToolCallError::McpToolExecutionError
9
+ | OpenAI::Beta::BetaMcpToolCallError::HTTPError
10
+
11
+ module BetaMcpToolCallError
12
+ extend OpenAI::Internal::Type::Union
13
+
14
+ type mcp_protocol_error =
15
+ { code: Integer, message: String, type: :mcp_protocol_error }
16
+
17
+ class McpProtocolError < OpenAI::Internal::Type::BaseModel
18
+ attr_accessor code: Integer
19
+
20
+ attr_accessor message: String
21
+
22
+ attr_accessor type: :mcp_protocol_error
23
+
24
+ def initialize: (
25
+ code: Integer,
26
+ message: String,
27
+ ?type: :mcp_protocol_error
28
+ ) -> void
29
+
30
+ def to_hash: -> {
31
+ code: Integer,
32
+ message: String,
33
+ type: :mcp_protocol_error
34
+ }
35
+ end
36
+
37
+ type mcp_tool_execution_error =
38
+ { content: top, type: :mcp_tool_execution_error }
39
+
40
+ class McpToolExecutionError < OpenAI::Internal::Type::BaseModel
41
+ attr_accessor content: top
42
+
43
+ attr_accessor type: :mcp_tool_execution_error
44
+
45
+ def initialize: (
46
+ content: top,
47
+ ?type: :mcp_tool_execution_error
48
+ ) -> void
49
+
50
+ def to_hash: -> { content: top, type: :mcp_tool_execution_error }
51
+ end
52
+
53
+ type http_error = { code: Integer, message: String, type: :http_error }
54
+
55
+ class HTTPError < OpenAI::Internal::Type::BaseModel
56
+ attr_accessor code: Integer
57
+
58
+ attr_accessor message: String
59
+
60
+ attr_accessor type: :http_error
61
+
62
+ def initialize: (
63
+ code: Integer,
64
+ message: String,
65
+ ?type: :http_error
66
+ ) -> void
67
+
68
+ def to_hash: -> { code: Integer, message: String, type: :http_error }
69
+ end
70
+
71
+ def self?.variants: -> ::Array[OpenAI::Models::Beta::beta_mcp_tool_call_error]
72
+ end
73
+ end
74
+ end
75
+ end
@@ -250,6 +250,7 @@ module OpenAI
250
250
  | :"gpt-5.6-terra"
251
251
  | :"gpt-5.6-luna"
252
252
  | :"gpt-5.5"
253
+ | :"gpt-5.5-2026-04-23"
253
254
  | :"gpt-5.4"
254
255
  | :"gpt-5.4-mini"
255
256
  | :"gpt-5.4-nano"
@@ -338,6 +339,8 @@ module OpenAI
338
339
  | :"o4-mini-deep-research-2025-06-26"
339
340
  | :"computer-use-preview"
340
341
  | :"computer-use-preview-2025-03-11"
342
+ | :"gpt-5.5-pro"
343
+ | :"gpt-5.5-pro-2026-04-23"
341
344
  | :"gpt-5-codex"
342
345
  | :"gpt-5-pro"
343
346
  | :"gpt-5-pro-2025-10-06"
@@ -356,6 +359,7 @@ module OpenAI
356
359
  GPT_5_6_TERRA: :"gpt-5.6-terra"
357
360
  GPT_5_6_LUNA: :"gpt-5.6-luna"
358
361
  GPT_5_5: :"gpt-5.5"
362
+ GPT_5_5_2026_04_23: :"gpt-5.5-2026-04-23"
359
363
  GPT_5_4: :"gpt-5.4"
360
364
  GPT_5_4_MINI: :"gpt-5.4-mini"
361
365
  GPT_5_4_NANO: :"gpt-5.4-nano"
@@ -444,6 +448,8 @@ module OpenAI
444
448
  O4_MINI_DEEP_RESEARCH_2025_06_26: :"o4-mini-deep-research-2025-06-26"
445
449
  COMPUTER_USE_PREVIEW: :"computer-use-preview"
446
450
  COMPUTER_USE_PREVIEW_2025_03_11: :"computer-use-preview-2025-03-11"
451
+ GPT_5_5_PRO: :"gpt-5.5-pro"
452
+ GPT_5_5_PRO_2026_04_23: :"gpt-5.5-pro-2026-04-23"
447
453
  GPT_5_CODEX: :"gpt-5-codex"
448
454
  GPT_5_PRO: :"gpt-5-pro"
449
455
  GPT_5_PRO_2025_10_06: :"gpt-5-pro-2025-10-06"
@@ -835,7 +841,7 @@ module OpenAI
835
841
  end
836
842
 
837
843
  type service_tier =
838
- :auto | :default | :flex | :scale | :priority | :fast
844
+ :auto | :default | :flex | :scale | :priority | :fast | :ultrafast
839
845
 
840
846
  module ServiceTier
841
847
  extend OpenAI::Internal::Type::Enum
@@ -846,6 +852,7 @@ module OpenAI
846
852
  SCALE: :scale
847
853
  PRIORITY: :priority
848
854
  FAST: :fast
855
+ ULTRAFAST: :ultrafast
849
856
 
850
857
  def self?.values: -> ::Array[OpenAI::Models::Beta::BetaResponse::service_tier]
851
858
  end
@@ -1785,7 +1785,7 @@ module OpenAI
1785
1785
  type: :mcp_call,
1786
1786
  agent: OpenAI::Beta::BetaResponseInputItem::McpCall::Agent?,
1787
1787
  approval_request_id: String?,
1788
- error: String?,
1788
+ error: OpenAI::Models::Beta::beta_mcp_tool_call_error?,
1789
1789
  output: String?,
1790
1790
  status: OpenAI::Models::Beta::BetaResponseInputItem::McpCall::status
1791
1791
  }
@@ -1805,7 +1805,7 @@ module OpenAI
1805
1805
 
1806
1806
  attr_accessor approval_request_id: String?
1807
1807
 
1808
- attr_accessor error: String?
1808
+ attr_accessor error: OpenAI::Models::Beta::beta_mcp_tool_call_error?
1809
1809
 
1810
1810
  attr_accessor output: String?
1811
1811
 
@@ -1822,7 +1822,7 @@ module OpenAI
1822
1822
  server_label: String,
1823
1823
  ?agent: OpenAI::Beta::BetaResponseInputItem::McpCall::Agent?,
1824
1824
  ?approval_request_id: String?,
1825
- ?error: String?,
1825
+ ?error: OpenAI::Models::Beta::beta_mcp_tool_call_error?,
1826
1826
  ?output: String?,
1827
1827
  ?status: OpenAI::Models::Beta::BetaResponseInputItem::McpCall::status,
1828
1828
  ?type: :mcp_call
@@ -1836,7 +1836,7 @@ module OpenAI
1836
1836
  type: :mcp_call,
1837
1837
  agent: OpenAI::Beta::BetaResponseInputItem::McpCall::Agent?,
1838
1838
  approval_request_id: String?,
1839
- error: String?,
1839
+ error: OpenAI::Models::Beta::beta_mcp_tool_call_error?,
1840
1840
  output: String?,
1841
1841
  status: OpenAI::Models::Beta::BetaResponseInputItem::McpCall::status
1842
1842
  }
@@ -1008,7 +1008,7 @@ module OpenAI
1008
1008
  type: :mcp_call,
1009
1009
  agent: OpenAI::Beta::BetaResponseItem::McpCall::Agent?,
1010
1010
  approval_request_id: String?,
1011
- error: String?,
1011
+ error: OpenAI::Models::Beta::beta_mcp_tool_call_error?,
1012
1012
  output: String?,
1013
1013
  status: OpenAI::Models::Beta::BetaResponseItem::McpCall::status
1014
1014
  }
@@ -1028,7 +1028,7 @@ module OpenAI
1028
1028
 
1029
1029
  attr_accessor approval_request_id: String?
1030
1030
 
1031
- attr_accessor error: String?
1031
+ attr_accessor error: OpenAI::Models::Beta::beta_mcp_tool_call_error?
1032
1032
 
1033
1033
  attr_accessor output: String?
1034
1034
 
@@ -1045,7 +1045,7 @@ module OpenAI
1045
1045
  server_label: String,
1046
1046
  ?agent: OpenAI::Beta::BetaResponseItem::McpCall::Agent?,
1047
1047
  ?approval_request_id: String?,
1048
- ?error: String?,
1048
+ ?error: OpenAI::Models::Beta::beta_mcp_tool_call_error?,
1049
1049
  ?output: String?,
1050
1050
  ?status: OpenAI::Models::Beta::BetaResponseItem::McpCall::status,
1051
1051
  ?type: :mcp_call
@@ -1059,7 +1059,7 @@ module OpenAI
1059
1059
  type: :mcp_call,
1060
1060
  agent: OpenAI::Beta::BetaResponseItem::McpCall::Agent?,
1061
1061
  approval_request_id: String?,
1062
- error: String?,
1062
+ error: OpenAI::Models::Beta::beta_mcp_tool_call_error?,
1063
1063
  output: String?,
1064
1064
  status: OpenAI::Models::Beta::BetaResponseItem::McpCall::status
1065
1065
  }
@@ -819,7 +819,7 @@ module OpenAI
819
819
  type: :mcp_call,
820
820
  agent: OpenAI::Beta::BetaResponseOutputItem::McpCall::Agent?,
821
821
  approval_request_id: String?,
822
- error: String?,
822
+ error: OpenAI::Models::Beta::beta_mcp_tool_call_error?,
823
823
  output: String?,
824
824
  status: OpenAI::Models::Beta::BetaResponseOutputItem::McpCall::status
825
825
  }
@@ -839,7 +839,7 @@ module OpenAI
839
839
 
840
840
  attr_accessor approval_request_id: String?
841
841
 
842
- attr_accessor error: String?
842
+ attr_accessor error: OpenAI::Models::Beta::beta_mcp_tool_call_error?
843
843
 
844
844
  attr_accessor output: String?
845
845
 
@@ -856,7 +856,7 @@ module OpenAI
856
856
  server_label: String,
857
857
  ?agent: OpenAI::Beta::BetaResponseOutputItem::McpCall::Agent?,
858
858
  ?approval_request_id: String?,
859
- ?error: String?,
859
+ ?error: OpenAI::Models::Beta::beta_mcp_tool_call_error?,
860
860
  ?output: String?,
861
861
  ?status: OpenAI::Models::Beta::BetaResponseOutputItem::McpCall::status,
862
862
  ?type: :mcp_call
@@ -870,7 +870,7 @@ module OpenAI
870
870
  type: :mcp_call,
871
871
  agent: OpenAI::Beta::BetaResponseOutputItem::McpCall::Agent?,
872
872
  approval_request_id: String?,
873
- error: String?,
873
+ error: OpenAI::Models::Beta::beta_mcp_tool_call_error?,
874
874
  output: String?,
875
875
  status: OpenAI::Models::Beta::BetaResponseOutputItem::McpCall::status
876
876
  }
@@ -5,7 +5,7 @@ module OpenAI
5
5
  module Beta
6
6
  type beta_response_output_text_annotation_added_event =
7
7
  {
8
- annotation: top,
8
+ annotation: OpenAI::Models::Beta::BetaResponseOutputTextAnnotationAddedEvent::annotation?,
9
9
  annotation_index: Integer,
10
10
  content_index: Integer,
11
11
  item_id: String,
@@ -16,7 +16,7 @@ module OpenAI
16
16
  }
17
17
 
18
18
  class BetaResponseOutputTextAnnotationAddedEvent < OpenAI::Internal::Type::BaseModel
19
- attr_accessor annotation: top
19
+ attr_accessor annotation: OpenAI::Models::Beta::BetaResponseOutputTextAnnotationAddedEvent::annotation?
20
20
 
21
21
  attr_accessor annotation_index: Integer
22
22
 
@@ -33,7 +33,7 @@ module OpenAI
33
33
  attr_accessor agent: OpenAI::Beta::BetaResponseOutputTextAnnotationAddedEvent::Agent?
34
34
 
35
35
  def initialize: (
36
- annotation: top,
36
+ annotation: OpenAI::Models::Beta::BetaResponseOutputTextAnnotationAddedEvent::annotation?,
37
37
  annotation_index: Integer,
38
38
  content_index: Integer,
39
39
  item_id: String,
@@ -44,7 +44,7 @@ module OpenAI
44
44
  ) -> void
45
45
 
46
46
  def to_hash: -> {
47
- annotation: top,
47
+ annotation: OpenAI::Models::Beta::BetaResponseOutputTextAnnotationAddedEvent::annotation?,
48
48
  annotation_index: Integer,
49
49
  content_index: Integer,
50
50
  item_id: String,
@@ -54,6 +54,151 @@ module OpenAI
54
54
  agent: OpenAI::Beta::BetaResponseOutputTextAnnotationAddedEvent::Agent?
55
55
  }
56
56
 
57
+ type annotation =
58
+ OpenAI::Beta::BetaResponseOutputTextAnnotationAddedEvent::Annotation::FileCitation
59
+ | OpenAI::Beta::BetaResponseOutputTextAnnotationAddedEvent::Annotation::URLCitation
60
+ | OpenAI::Beta::BetaResponseOutputTextAnnotationAddedEvent::Annotation::ContainerFileCitation
61
+ | OpenAI::Beta::BetaResponseOutputTextAnnotationAddedEvent::Annotation::FilePath
62
+
63
+ module Annotation
64
+ extend OpenAI::Internal::Type::Union
65
+
66
+ type file_citation =
67
+ {
68
+ file_id: String,
69
+ filename: String,
70
+ index: Integer,
71
+ type: :file_citation
72
+ }
73
+
74
+ class FileCitation < OpenAI::Internal::Type::BaseModel
75
+ attr_accessor file_id: String
76
+
77
+ attr_accessor filename: String
78
+
79
+ attr_accessor index: Integer
80
+
81
+ attr_accessor type: :file_citation
82
+
83
+ def initialize: (
84
+ file_id: String,
85
+ filename: String,
86
+ index: Integer,
87
+ ?type: :file_citation
88
+ ) -> void
89
+
90
+ def to_hash: -> {
91
+ file_id: String,
92
+ filename: String,
93
+ index: Integer,
94
+ type: :file_citation
95
+ }
96
+ end
97
+
98
+ type url_citation =
99
+ {
100
+ end_index: Integer,
101
+ start_index: Integer,
102
+ title: String,
103
+ type: :url_citation,
104
+ url: String
105
+ }
106
+
107
+ class URLCitation < OpenAI::Internal::Type::BaseModel
108
+ attr_accessor end_index: Integer
109
+
110
+ attr_accessor start_index: Integer
111
+
112
+ attr_accessor title: String
113
+
114
+ attr_accessor type: :url_citation
115
+
116
+ attr_accessor url: String
117
+
118
+ def initialize: (
119
+ end_index: Integer,
120
+ start_index: Integer,
121
+ title: String,
122
+ url: String,
123
+ ?type: :url_citation
124
+ ) -> void
125
+
126
+ def to_hash: -> {
127
+ end_index: Integer,
128
+ start_index: Integer,
129
+ title: String,
130
+ type: :url_citation,
131
+ url: String
132
+ }
133
+ end
134
+
135
+ type container_file_citation =
136
+ {
137
+ container_id: String,
138
+ end_index: Integer,
139
+ file_id: String,
140
+ filename: String,
141
+ start_index: Integer,
142
+ type: :container_file_citation
143
+ }
144
+
145
+ class ContainerFileCitation < OpenAI::Internal::Type::BaseModel
146
+ attr_accessor container_id: String
147
+
148
+ attr_accessor end_index: Integer
149
+
150
+ attr_accessor file_id: String
151
+
152
+ attr_accessor filename: String
153
+
154
+ attr_accessor start_index: Integer
155
+
156
+ attr_accessor type: :container_file_citation
157
+
158
+ def initialize: (
159
+ container_id: String,
160
+ end_index: Integer,
161
+ file_id: String,
162
+ filename: String,
163
+ start_index: Integer,
164
+ ?type: :container_file_citation
165
+ ) -> void
166
+
167
+ def to_hash: -> {
168
+ container_id: String,
169
+ end_index: Integer,
170
+ file_id: String,
171
+ filename: String,
172
+ start_index: Integer,
173
+ type: :container_file_citation
174
+ }
175
+ end
176
+
177
+ type file_path = { file_id: String, index: Integer, type: :file_path }
178
+
179
+ class FilePath < OpenAI::Internal::Type::BaseModel
180
+ attr_accessor file_id: String
181
+
182
+ attr_accessor index: Integer
183
+
184
+ attr_accessor type: :file_path
185
+
186
+ def initialize: (
187
+ file_id: String,
188
+ index: Integer,
189
+ ?type: :file_path
190
+ ) -> void
191
+
192
+ def to_hash: -> {
193
+ file_id: String,
194
+ index: Integer,
195
+ type: :file_path
196
+ }
197
+ end
198
+
199
+ def self?.variants: -> ::Array[OpenAI::Models::Beta::BetaResponseOutputTextAnnotationAddedEvent::annotation]
200
+ end
201
+
57
202
  type agent = { agent_name: String }
58
203
 
59
204
  class Agent < OpenAI::Internal::Type::BaseModel
@@ -254,6 +254,7 @@ module OpenAI
254
254
  | :"gpt-5.6-terra"
255
255
  | :"gpt-5.6-luna"
256
256
  | :"gpt-5.5"
257
+ | :"gpt-5.5-2026-04-23"
257
258
  | :"gpt-5.4"
258
259
  | :"gpt-5.4-mini"
259
260
  | :"gpt-5.4-nano"
@@ -342,6 +343,8 @@ module OpenAI
342
343
  | :"o4-mini-deep-research-2025-06-26"
343
344
  | :"computer-use-preview"
344
345
  | :"computer-use-preview-2025-03-11"
346
+ | :"gpt-5.5-pro"
347
+ | :"gpt-5.5-pro-2026-04-23"
345
348
  | :"gpt-5-codex"
346
349
  | :"gpt-5-pro"
347
350
  | :"gpt-5-pro-2025-10-06"
@@ -360,6 +363,7 @@ module OpenAI
360
363
  GPT_5_6_TERRA: :"gpt-5.6-terra"
361
364
  GPT_5_6_LUNA: :"gpt-5.6-luna"
362
365
  GPT_5_5: :"gpt-5.5"
366
+ GPT_5_5_2026_04_23: :"gpt-5.5-2026-04-23"
363
367
  GPT_5_4: :"gpt-5.4"
364
368
  GPT_5_4_MINI: :"gpt-5.4-mini"
365
369
  GPT_5_4_NANO: :"gpt-5.4-nano"
@@ -448,6 +452,8 @@ module OpenAI
448
452
  O4_MINI_DEEP_RESEARCH_2025_06_26: :"o4-mini-deep-research-2025-06-26"
449
453
  COMPUTER_USE_PREVIEW: :"computer-use-preview"
450
454
  COMPUTER_USE_PREVIEW_2025_03_11: :"computer-use-preview-2025-03-11"
455
+ GPT_5_5_PRO: :"gpt-5.5-pro"
456
+ GPT_5_5_PRO_2026_04_23: :"gpt-5.5-pro-2026-04-23"
451
457
  GPT_5_CODEX: :"gpt-5-codex"
452
458
  GPT_5_PRO: :"gpt-5-pro"
453
459
  GPT_5_PRO_2025_10_06: :"gpt-5-pro-2025-10-06"
@@ -743,7 +749,7 @@ module OpenAI
743
749
  end
744
750
 
745
751
  type service_tier =
746
- :auto | :default | :flex | :scale | :priority | :fast
752
+ :auto | :default | :flex | :scale | :priority | :fast | :ultrafast
747
753
 
748
754
  module ServiceTier
749
755
  extend OpenAI::Internal::Type::Enum
@@ -754,6 +760,7 @@ module OpenAI
754
760
  SCALE: :scale
755
761
  PRIORITY: :priority
756
762
  FAST: :fast
763
+ ULTRAFAST: :ultrafast
757
764
 
758
765
  def self?.values: -> ::Array[OpenAI::Models::Beta::BetaResponsesClientEvent::ResponseCreate::service_tier]
759
766
  end