openai 0.118.0 → 0.119.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 (127) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +10 -0
  3. data/README.md +1 -1
  4. data/lib/openai/client.rb +1 -1
  5. data/lib/openai/helpers/data_residency.rb +4 -1
  6. data/lib/openai/models/all_models.rb +1 -0
  7. data/lib/openai/models/beta/beta_compacted_response.rb +34 -1
  8. data/lib/openai/models/beta/beta_response.rb +34 -1
  9. data/lib/openai/models/beta/beta_response_input_item.rb +45 -1
  10. data/lib/openai/models/beta/beta_response_item.rb +45 -1
  11. data/lib/openai/models/beta/beta_response_output_item.rb +45 -1
  12. data/lib/openai/models/beta/beta_response_tool_search_output_item_param.rb +186 -13
  13. data/lib/openai/models/beta/beta_responses_client_event.rb +48 -1
  14. data/lib/openai/models/beta/beta_tool.rb +164 -13
  15. data/lib/openai/models/beta/response_compact_params.rb +44 -1
  16. data/lib/openai/models/beta/response_create_params.rb +44 -1
  17. data/lib/openai/models/beta/session_turn_error.rb +3 -0
  18. data/lib/openai/models/conversations/conversation_item.rb +45 -1
  19. data/lib/openai/models/image_edit_params.rb +72 -16
  20. data/lib/openai/models/image_generate_params.rb +160 -8
  21. data/lib/openai/models/image_model.rb +2 -0
  22. data/lib/openai/models/images_response.rb +55 -4
  23. data/lib/openai/models/realtime/realtime_audio_config_input.rb +14 -1
  24. data/lib/openai/models/realtime/realtime_session_create_response.rb +14 -1
  25. data/lib/openai/models/realtime/realtime_transcription_session_audio_input.rb +14 -1
  26. data/lib/openai/models/realtime/realtime_transcription_session_create_response.rb +14 -1
  27. data/lib/openai/models/realtime/realtime_translation_session.rb +14 -1
  28. data/lib/openai/models/realtime/realtime_translation_session_create_request.rb +14 -1
  29. data/lib/openai/models/realtime/realtime_translation_session_update_request.rb +14 -1
  30. data/lib/openai/models/responses/compacted_response.rb +37 -1
  31. data/lib/openai/models/responses/response.rb +34 -1
  32. data/lib/openai/models/responses/response_compact_params.rb +50 -1
  33. data/lib/openai/models/responses/response_create_params.rb +47 -1
  34. data/lib/openai/models/responses/response_input_item.rb +45 -1
  35. data/lib/openai/models/responses/response_item.rb +45 -1
  36. data/lib/openai/models/responses/response_output_item.rb +45 -1
  37. data/lib/openai/models/responses/response_tool_search_output_item_param.rb +186 -13
  38. data/lib/openai/models/responses/responses_client_event.rb +48 -1
  39. data/lib/openai/models/responses/tool.rb +164 -13
  40. data/lib/openai/models/responses_model.rb +1 -0
  41. data/lib/openai/resources/admin/organization/projects.rb +6 -6
  42. data/lib/openai/resources/admin/organization.rb +6 -6
  43. data/lib/openai/resources/beta/responses.rb +12 -3
  44. data/lib/openai/resources/images.rb +102 -18
  45. data/lib/openai/resources/responses.rb +12 -3
  46. data/lib/openai/version.rb +1 -1
  47. data/rbi/openai/models/all_models.rbi +1 -0
  48. data/rbi/openai/models/beta/beta_compacted_response.rbi +67 -1
  49. data/rbi/openai/models/beta/beta_response.rbi +62 -0
  50. data/rbi/openai/models/beta/beta_response_input_item.rbi +82 -1
  51. data/rbi/openai/models/beta/beta_response_item.rbi +82 -1
  52. data/rbi/openai/models/beta/beta_response_output_item.rbi +82 -1
  53. data/rbi/openai/models/beta/beta_response_tool_search_output_item_param.rbi +338 -13
  54. data/rbi/openai/models/beta/beta_responses_client_event.rbi +105 -0
  55. data/rbi/openai/models/beta/beta_tool.rbi +245 -13
  56. data/rbi/openai/models/beta/response_compact_params.rbi +81 -0
  57. data/rbi/openai/models/beta/response_create_params.rbi +81 -0
  58. data/rbi/openai/models/beta/session_turn_error.rbi +3 -0
  59. data/rbi/openai/models/conversations/conversation_item.rbi +84 -1
  60. data/rbi/openai/models/image_edit_params.rbi +76 -14
  61. data/rbi/openai/models/image_generate_params.rbi +218 -6
  62. data/rbi/openai/models/image_model.rbi +2 -0
  63. data/rbi/openai/models/images_response.rbi +90 -3
  64. data/rbi/openai/models/realtime/realtime_audio_config_input.rbi +17 -1
  65. data/rbi/openai/models/realtime/realtime_session_create_response.rbi +17 -1
  66. data/rbi/openai/models/realtime/realtime_transcription_session_audio_input.rbi +17 -1
  67. data/rbi/openai/models/realtime/realtime_transcription_session_create_response.rbi +17 -1
  68. data/rbi/openai/models/realtime/realtime_translation_session.rbi +19 -3
  69. data/rbi/openai/models/realtime/realtime_translation_session_create_request.rbi +19 -3
  70. data/rbi/openai/models/realtime/realtime_translation_session_update_request.rbi +19 -3
  71. data/rbi/openai/models/responses/compacted_response.rbi +67 -1
  72. data/rbi/openai/models/responses/response.rbi +62 -0
  73. data/rbi/openai/models/responses/response_compact_params.rbi +88 -0
  74. data/rbi/openai/models/responses/response_create_params.rbi +87 -0
  75. data/rbi/openai/models/responses/response_input_item.rbi +82 -1
  76. data/rbi/openai/models/responses/response_item.rbi +82 -1
  77. data/rbi/openai/models/responses/response_output_item.rbi +82 -1
  78. data/rbi/openai/models/responses/response_tool_search_output_item_param.rbi +340 -13
  79. data/rbi/openai/models/responses/responses_client_event.rbi +105 -0
  80. data/rbi/openai/models/responses/tool.rbi +248 -13
  81. data/rbi/openai/models/responses_model.rbi +1 -0
  82. data/rbi/openai/resources/admin/organization/projects.rbi +3 -3
  83. data/rbi/openai/resources/admin/organization.rbi +3 -3
  84. data/rbi/openai/resources/beta/responses.rbi +9 -0
  85. data/rbi/openai/resources/images.rbi +98 -14
  86. data/rbi/openai/resources/responses.rbi +11 -0
  87. data/sig/openai/models/all_models.rbs +2 -0
  88. data/sig/openai/models/beta/beta_compacted_response.rbs +42 -2
  89. data/sig/openai/models/beta/beta_response.rbs +40 -0
  90. data/sig/openai/models/beta/beta_response_input_item.rbs +51 -3
  91. data/sig/openai/models/beta/beta_response_item.rbs +51 -3
  92. data/sig/openai/models/beta/beta_response_output_item.rbs +51 -3
  93. data/sig/openai/models/beta/beta_response_tool_search_output_item_param.rbs +188 -15
  94. data/sig/openai/models/beta/beta_responses_client_event.rbs +56 -0
  95. data/sig/openai/models/beta/beta_tool.rbs +188 -15
  96. data/sig/openai/models/beta/response_compact_params.rbs +56 -0
  97. data/sig/openai/models/beta/response_create_params.rbs +56 -0
  98. data/sig/openai/models/beta/session_turn_error.rbs +4 -0
  99. data/sig/openai/models/conversations/conversation_item.rbs +51 -3
  100. data/sig/openai/models/image_edit_params.rbs +63 -12
  101. data/sig/openai/models/image_generate_params.rbs +150 -5
  102. data/sig/openai/models/image_model.rbs +4 -0
  103. data/sig/openai/models/images_response.rbs +59 -4
  104. data/sig/openai/models/realtime/realtime_audio_config_input.rbs +20 -1
  105. data/sig/openai/models/realtime/realtime_session_create_response.rbs +20 -1
  106. data/sig/openai/models/realtime/realtime_transcription_session_audio_input.rbs +20 -1
  107. data/sig/openai/models/realtime/realtime_transcription_session_create_response.rbs +20 -1
  108. data/sig/openai/models/realtime/realtime_translation_session.rbs +22 -3
  109. data/sig/openai/models/realtime/realtime_translation_session_create_request.rbs +22 -3
  110. data/sig/openai/models/realtime/realtime_translation_session_update_request.rbs +22 -3
  111. data/sig/openai/models/responses/compacted_response.rbs +42 -2
  112. data/sig/openai/models/responses/response.rbs +40 -0
  113. data/sig/openai/models/responses/response_compact_params.rbs +58 -0
  114. data/sig/openai/models/responses/response_create_params.rbs +56 -0
  115. data/sig/openai/models/responses/response_input_item.rbs +51 -3
  116. data/sig/openai/models/responses/response_item.rbs +51 -3
  117. data/sig/openai/models/responses/response_output_item.rbs +51 -3
  118. data/sig/openai/models/responses/response_tool_search_output_item_param.rbs +188 -15
  119. data/sig/openai/models/responses/responses_client_event.rbs +56 -0
  120. data/sig/openai/models/responses/tool.rbs +188 -15
  121. data/sig/openai/models/responses_model.rbs +2 -0
  122. data/sig/openai/resources/admin/organization/projects.rbs +2 -2
  123. data/sig/openai/resources/admin/organization.rbs +2 -2
  124. data/sig/openai/resources/beta/responses.rbs +3 -0
  125. data/sig/openai/resources/images.rbs +14 -0
  126. data/sig/openai/resources/responses.rbs +4 -0
  127. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e37e3fb7c53769a3fb7bbe6a79b7c3f5d4b9d5c3d5f13fb6c5317f489019086a
4
- data.tar.gz: c9d804e63b8ff116a72bbc6c471ad398c303d7373af5fba01aa5bba7c3996297
3
+ metadata.gz: e0d75559c085e3f898b0a146839d5cd507c6eae2b84fbbbe298eda19a5dac580
4
+ data.tar.gz: e69de23eab9fae11a7c01998188db64b84d0787e2f1db326bfcb8bba3d6fc8fb
5
5
  SHA512:
6
- metadata.gz: d991c961da46c6b12a857e0412afc71177ecef975a7b09a5ccfa93235678621a94d2c53614844f8e05f8f5194afbd24d39a11fa7d1c2558ab104e8e0fcb30a31
7
- data.tar.gz: 9e9bf4dfd8ad78e2f2fda579f962cb105047c4b443bb81e88c19b61c7ed900260a4d31c85cc781a4e3005ad2c23c7c733c4e6eb37d4a110c6a524938bc08f53d
6
+ metadata.gz: 316d696bda90f75498bf772a308264d751c9e66bb0ceeabeec947b1a684cd6f4f90203a75533d543a379d12172572e6ad9065124c47492bfc1895a33b7dce449
7
+ data.tar.gz: 267d197113d3ed0e67e011b9cc724e3683ff80fddd42914fd63e8fb2e5ed45623e8b5d54fbfccd46c51b629525e6ea066f7909ca00723b85551f5193a135dc5f
data/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.119.0](https://github.com/openai/openai-ruby/compare/v0.118.0...v0.119.0) (2026-11-05)
4
+
5
+
6
+ ### Features
7
+
8
+ * **api:** add Australia, India, and Japan residency options ([#1036](https://github.com/openai/openai-ruby/issues/1036)) ([643e5ca](https://github.com/openai/openai-ruby/commit/643e5ca4b4f80b1f6fde36e558216577df6ebfa1))
9
+ * **api:** add GPT-6 Rosalind to the model catalog ([#1032](https://github.com/openai/openai-ruby/issues/1032)) ([8656953](https://github.com/openai/openai-ruby/commit/86569535a607f6492b990bdb3ac5fcda9202afd9))
10
+ * **api:** add image complexity and GIF and SVG output controls ([#1037](https://github.com/openai/openai-ruby/issues/1037)) ([228e36a](https://github.com/openai/openai-ruby/commit/228e36acebfba78d722282dc1dc3afd514283c5c))
11
+ * **api:** expand agent turn errors and image and audio options ([#1033](https://github.com/openai/openai-ruby/issues/1033)) ([2f3c069](https://github.com/openai/openai-ruby/commit/2f3c06928494d2b2ec8c5e58c7e3d7966439ab3f))
12
+
3
13
  ## [0.118.0](https://github.com/openai/openai-ruby/compare/v0.117.0...v0.118.0) (2026-11-03)
4
14
 
5
15
 
data/README.md CHANGED
@@ -15,7 +15,7 @@ To use this gem, install via Bundler by adding the following to your application
15
15
  <!-- x-release-please-start-version -->
16
16
 
17
17
  ```ruby
18
- gem "openai", "~> 0.118.0"
18
+ gem "openai", "~> 0.119.0"
19
19
  ```
20
20
 
21
21
  <!-- x-release-please-end -->
data/lib/openai/client.rb CHANGED
@@ -206,7 +206,7 @@ module OpenAI
206
206
  # @param base_url [String, nil] Override the default base URL for the API, e.g.,
207
207
  # `"https://api.example.com/v2/"`. Defaults to `ENV["OPENAI_BASE_URL"]`
208
208
  #
209
- # @param data_residency [Symbol, String, nil] Select `global`, `us`, `eu`, `ae`.
209
+ # @param data_residency [Symbol, String, nil] Select `global`, `us`, `eu`, `ae`, `au`, `in`, `jp`.
210
210
  # Mutually exclusive with an explicit `base_url` or `provider`.
211
211
  # This selects an endpoint; project and model eligibility still apply.
212
212
  #
@@ -9,7 +9,10 @@ module OpenAI
9
9
  "global" => "https://api.openai.com/v1",
10
10
  "us" => "https://us.api.openai.com/v1",
11
11
  "eu" => "https://eu.api.openai.com/v1",
12
- "ae" => "https://ae.api.openai.com/v1"
12
+ "ae" => "https://ae.api.openai.com/v1",
13
+ "au" => "https://au.api.openai.com/v1",
14
+ "in" => "https://in.api.openai.com/v1",
15
+ "jp" => "https://jp.api.openai.com/v1"
13
16
  }.freeze
14
17
 
15
18
  class << self
@@ -76,6 +76,7 @@ module OpenAI
76
76
  GPT_DAYBREAK_RED_LATEST = :"gpt-daybreak-red-latest"
77
77
  GPT_5_6_CYBER = :"gpt-5.6-cyber"
78
78
  GPT_ROSALIND_RESEARCH = :"gpt-rosalind-research"
79
+ GPT_6_ROSALIND = :"gpt-6-rosalind"
79
80
 
80
81
  # @!method self.values
81
82
  # @return [Array<Symbol>]
@@ -37,7 +37,12 @@ module OpenAI
37
37
  # @return [OpenAI::Models::Beta::BetaResponseUsage]
38
38
  required :usage, -> { OpenAI::Beta::BetaResponseUsage }
39
39
 
40
- # @!method initialize(id:, created_at:, output:, usage:, object: :"response.compaction")
40
+ # @!attribute image
41
+ #
42
+ # @return [OpenAI::Models::Beta::BetaCompactedResponse::Image, nil]
43
+ optional :image, -> { OpenAI::Beta::BetaCompactedResponse::Image }
44
+
45
+ # @!method initialize(id:, created_at:, output:, usage:, image: nil, object: :"response.compaction")
41
46
  # @param id [String]
42
47
  # The unique identifier for the compacted response.
43
48
  #
@@ -52,8 +57,36 @@ module OpenAI
52
57
  # Token accounting for the compaction pass, including cached, reasoning, and total
53
58
  # tokens.
54
59
  #
60
+ # @param image [OpenAI::Models::Beta::BetaCompactedResponse::Image]
61
+ #
55
62
  # @param object [Symbol, :"response.compaction"]
56
63
  # The object type. Always `response.compaction`.
64
+
65
+ # @see OpenAI::Models::Beta::BetaCompactedResponse#image
66
+ class Image < OpenAI::Internal::Type::BaseModel
67
+ # @!attribute context_compression
68
+ # Effective image context optimization policy.
69
+ #
70
+ # @return [Symbol, OpenAI::Models::Beta::BetaCompactedResponse::Image::ContextCompression]
71
+ required :context_compression, enum: -> { OpenAI::Beta::BetaCompactedResponse::Image::ContextCompression }
72
+
73
+ # @!method initialize(context_compression:)
74
+ # @param context_compression [Symbol, OpenAI::Models::Beta::BetaCompactedResponse::Image::ContextCompression]
75
+ # Effective image context optimization policy.
76
+
77
+ # Effective image context optimization policy.
78
+ #
79
+ # @see OpenAI::Models::Beta::BetaCompactedResponse::Image#context_compression
80
+ module ContextCompression
81
+ extend OpenAI::Internal::Type::Enum
82
+
83
+ ENABLED = :enabled
84
+ DISABLED = :disabled
85
+
86
+ # @!method self.values
87
+ # @return [Array<Symbol>]
88
+ end
89
+ end
57
90
  end
58
91
  end
59
92
 
@@ -164,6 +164,11 @@ module OpenAI
164
164
  # @return [OpenAI::Models::Beta::BetaResponse::Conversation, nil]
165
165
  optional :conversation, -> { OpenAI::Beta::BetaResponse::Conversation }, nil?: true
166
166
 
167
+ # @!attribute image
168
+ #
169
+ # @return [OpenAI::Models::Beta::BetaResponse::Image, nil]
170
+ optional :image, -> { OpenAI::Beta::BetaResponse::Image }
171
+
167
172
  # @!attribute max_output_tokens
168
173
  # An upper bound for the number of tokens that can be generated for a response,
169
174
  # including visible output tokens and
@@ -375,7 +380,7 @@ module OpenAI
375
380
  # @return [String, nil]
376
381
  optional :user, String
377
382
 
378
- # @!method initialize(id:, access_programs:, created_at:, error:, incomplete_details:, instructions:, metadata:, model:, output:, parallel_tool_calls:, temperature:, tool_choice:, tools:, top_p:, background: nil, completed_at: nil, conversation: nil, max_output_tokens: nil, max_tool_calls: nil, moderation: nil, previous_response_id: nil, prompt: nil, prompt_cache_diagnostics: nil, prompt_cache_key: nil, prompt_cache_options: nil, prompt_cache_retention: nil, reasoning: nil, safety_identifier: nil, service_tier: nil, status: nil, text: nil, tool_usage: nil, top_logprobs: nil, truncation: nil, usage: nil, user: nil, object: :response)
383
+ # @!method initialize(id:, access_programs:, created_at:, error:, incomplete_details:, instructions:, metadata:, model:, output:, parallel_tool_calls:, temperature:, tool_choice:, tools:, top_p:, background: nil, completed_at: nil, conversation: nil, image: nil, max_output_tokens: nil, max_tool_calls: nil, moderation: nil, previous_response_id: nil, prompt: nil, prompt_cache_diagnostics: nil, prompt_cache_key: nil, prompt_cache_options: nil, prompt_cache_retention: nil, reasoning: nil, safety_identifier: nil, service_tier: nil, status: nil, text: nil, tool_usage: nil, top_logprobs: nil, truncation: nil, usage: nil, user: nil, object: :response)
379
384
  # @param id [String]
380
385
  # Unique identifier for this Response.
381
386
  #
@@ -476,6 +481,8 @@ module OpenAI
476
481
  # The conversation that this response belonged to. Input items and output items
477
482
  # from this response were automatically added to this conversation.
478
483
  #
484
+ # @param image [OpenAI::Models::Beta::BetaResponse::Image]
485
+ #
479
486
  # @param max_output_tokens [Integer, nil]
480
487
  # An upper bound for the number of tokens that can be generated for a response,
481
488
  # including visible output tokens and
@@ -1403,6 +1410,32 @@ module OpenAI
1403
1410
  # The unique ID of the conversation that this response was associated with.
1404
1411
  end
1405
1412
 
1413
+ # @see OpenAI::Models::Beta::BetaResponse#image
1414
+ class Image < OpenAI::Internal::Type::BaseModel
1415
+ # @!attribute context_compression
1416
+ # Effective image context optimization policy.
1417
+ #
1418
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponse::Image::ContextCompression]
1419
+ required :context_compression, enum: -> { OpenAI::Beta::BetaResponse::Image::ContextCompression }
1420
+
1421
+ # @!method initialize(context_compression:)
1422
+ # @param context_compression [Symbol, OpenAI::Models::Beta::BetaResponse::Image::ContextCompression]
1423
+ # Effective image context optimization policy.
1424
+
1425
+ # Effective image context optimization policy.
1426
+ #
1427
+ # @see OpenAI::Models::Beta::BetaResponse::Image#context_compression
1428
+ module ContextCompression
1429
+ extend OpenAI::Internal::Type::Enum
1430
+
1431
+ ENABLED = :enabled
1432
+ DISABLED = :disabled
1433
+
1434
+ # @!method self.values
1435
+ # @return [Array<Symbol>]
1436
+ end
1437
+ end
1438
+
1406
1439
  # @see OpenAI::Models::Beta::BetaResponse#moderation
1407
1440
  class Moderation < OpenAI::Internal::Type::BaseModel
1408
1441
  # @!attribute input
@@ -1366,7 +1366,12 @@ module OpenAI
1366
1366
  nil?: true
1367
1367
  )
1368
1368
 
1369
- # @!method initialize(id:, result:, status:, action: nil, agent: nil, background: nil, error: nil, output_format: nil, quality: nil, revised_prompt: nil, size: nil, type: :image_generation_call)
1369
+ # @!attribute svg_usage
1370
+ #
1371
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::SvgUsage, nil]
1372
+ optional :svg_usage, -> { OpenAI::Beta::BetaResponseInputItem::ImageGenerationCall::SvgUsage }
1373
+
1374
+ # @!method initialize(id:, result:, status:, action: nil, agent: nil, background: nil, error: nil, output_format: nil, quality: nil, revised_prompt: nil, size: nil, svg_usage: nil, type: :image_generation_call)
1370
1375
  # An image generation request made by the model.
1371
1376
  #
1372
1377
  # @param id [String]
@@ -1403,6 +1408,8 @@ module OpenAI
1403
1408
  # @param size [String, Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::Size, nil]
1404
1409
  # The image dimensions as a `WIDTHxHEIGHT` string, for example `1536x864`.
1405
1410
  #
1411
+ # @param svg_usage [OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::SvgUsage]
1412
+ #
1406
1413
  # @param type [Symbol, :image_generation_call]
1407
1414
  # The type of the image generation call. Always `image_generation_call`.
1408
1415
 
@@ -1570,6 +1577,8 @@ module OpenAI
1570
1577
  PNG = :png
1571
1578
  WEBP = :webp
1572
1579
  JPEG = :jpeg
1580
+ GIF = :gif
1581
+ SVG = :svg
1573
1582
 
1574
1583
  # @!method self.values
1575
1584
  # @return [Array<Symbol>]
@@ -1630,6 +1639,41 @@ module OpenAI
1630
1639
 
1631
1640
  # @!endgroup
1632
1641
  end
1642
+
1643
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall#svg_usage
1644
+ class SvgUsage < OpenAI::Internal::Type::BaseModel
1645
+ # @!attribute input_tokens
1646
+ #
1647
+ # @return [Integer]
1648
+ required :input_tokens, Integer
1649
+
1650
+ # @!attribute model
1651
+ #
1652
+ # @return [String]
1653
+ required :model, String
1654
+
1655
+ # @!attribute output_tokens
1656
+ #
1657
+ # @return [Integer]
1658
+ required :output_tokens, Integer
1659
+
1660
+ # @!attribute reasoning_tokens
1661
+ #
1662
+ # @return [Integer]
1663
+ required :reasoning_tokens, Integer
1664
+
1665
+ # @!attribute total_tokens
1666
+ #
1667
+ # @return [Integer]
1668
+ required :total_tokens, Integer
1669
+
1670
+ # @!method initialize(input_tokens:, model:, output_tokens:, reasoning_tokens:, total_tokens:)
1671
+ # @param input_tokens [Integer]
1672
+ # @param model [String]
1673
+ # @param output_tokens [Integer]
1674
+ # @param reasoning_tokens [Integer]
1675
+ # @param total_tokens [Integer]
1676
+ end
1633
1677
  end
1634
1678
 
1635
1679
  class LocalShellCall < OpenAI::Internal::Type::BaseModel
@@ -946,7 +946,12 @@ module OpenAI
946
946
  # @return [String, Symbol, OpenAI::Models::Beta::BetaResponseItem::ImageGenerationCall::Size, nil]
947
947
  optional :size, union: -> { OpenAI::Beta::BetaResponseItem::ImageGenerationCall::Size }, nil?: true
948
948
 
949
- # @!method initialize(id:, result:, status:, action: nil, agent: nil, background: nil, error: nil, output_format: nil, quality: nil, revised_prompt: nil, size: nil, type: :image_generation_call)
949
+ # @!attribute svg_usage
950
+ #
951
+ # @return [OpenAI::Models::Beta::BetaResponseItem::ImageGenerationCall::SvgUsage, nil]
952
+ optional :svg_usage, -> { OpenAI::Beta::BetaResponseItem::ImageGenerationCall::SvgUsage }
953
+
954
+ # @!method initialize(id:, result:, status:, action: nil, agent: nil, background: nil, error: nil, output_format: nil, quality: nil, revised_prompt: nil, size: nil, svg_usage: nil, type: :image_generation_call)
950
955
  # An image generation request made by the model.
951
956
  #
952
957
  # @param id [String]
@@ -983,6 +988,8 @@ module OpenAI
983
988
  # @param size [String, Symbol, OpenAI::Models::Beta::BetaResponseItem::ImageGenerationCall::Size, nil]
984
989
  # The image dimensions as a `WIDTHxHEIGHT` string, for example `1536x864`.
985
990
  #
991
+ # @param svg_usage [OpenAI::Models::Beta::BetaResponseItem::ImageGenerationCall::SvgUsage]
992
+ #
986
993
  # @param type [Symbol, :image_generation_call]
987
994
  # The type of the image generation call. Always `image_generation_call`.
988
995
 
@@ -1150,6 +1157,8 @@ module OpenAI
1150
1157
  PNG = :png
1151
1158
  WEBP = :webp
1152
1159
  JPEG = :jpeg
1160
+ GIF = :gif
1161
+ SVG = :svg
1153
1162
 
1154
1163
  # @!method self.values
1155
1164
  # @return [Array<Symbol>]
@@ -1202,6 +1211,41 @@ module OpenAI
1202
1211
 
1203
1212
  # @!endgroup
1204
1213
  end
1214
+
1215
+ # @see OpenAI::Models::Beta::BetaResponseItem::ImageGenerationCall#svg_usage
1216
+ class SvgUsage < OpenAI::Internal::Type::BaseModel
1217
+ # @!attribute input_tokens
1218
+ #
1219
+ # @return [Integer]
1220
+ required :input_tokens, Integer
1221
+
1222
+ # @!attribute model
1223
+ #
1224
+ # @return [String]
1225
+ required :model, String
1226
+
1227
+ # @!attribute output_tokens
1228
+ #
1229
+ # @return [Integer]
1230
+ required :output_tokens, Integer
1231
+
1232
+ # @!attribute reasoning_tokens
1233
+ #
1234
+ # @return [Integer]
1235
+ required :reasoning_tokens, Integer
1236
+
1237
+ # @!attribute total_tokens
1238
+ #
1239
+ # @return [Integer]
1240
+ required :total_tokens, Integer
1241
+
1242
+ # @!method initialize(input_tokens:, model:, output_tokens:, reasoning_tokens:, total_tokens:)
1243
+ # @param input_tokens [Integer]
1244
+ # @param model [String]
1245
+ # @param output_tokens [Integer]
1246
+ # @param reasoning_tokens [Integer]
1247
+ # @param total_tokens [Integer]
1248
+ end
1205
1249
  end
1206
1250
 
1207
1251
  class LocalShellCall < OpenAI::Internal::Type::BaseModel
@@ -947,7 +947,12 @@ module OpenAI
947
947
  nil?: true
948
948
  )
949
949
 
950
- # @!method initialize(id:, result:, status:, action: nil, agent: nil, background: nil, error: nil, output_format: nil, quality: nil, revised_prompt: nil, size: nil, type: :image_generation_call)
950
+ # @!attribute svg_usage
951
+ #
952
+ # @return [OpenAI::Models::Beta::BetaResponseOutputItem::ImageGenerationCall::SvgUsage, nil]
953
+ optional :svg_usage, -> { OpenAI::Beta::BetaResponseOutputItem::ImageGenerationCall::SvgUsage }
954
+
955
+ # @!method initialize(id:, result:, status:, action: nil, agent: nil, background: nil, error: nil, output_format: nil, quality: nil, revised_prompt: nil, size: nil, svg_usage: nil, type: :image_generation_call)
951
956
  # An image generation request made by the model.
952
957
  #
953
958
  # @param id [String]
@@ -984,6 +989,8 @@ module OpenAI
984
989
  # @param size [String, Symbol, OpenAI::Models::Beta::BetaResponseOutputItem::ImageGenerationCall::Size, nil]
985
990
  # The image dimensions as a `WIDTHxHEIGHT` string, for example `1536x864`.
986
991
  #
992
+ # @param svg_usage [OpenAI::Models::Beta::BetaResponseOutputItem::ImageGenerationCall::SvgUsage]
993
+ #
987
994
  # @param type [Symbol, :image_generation_call]
988
995
  # The type of the image generation call. Always `image_generation_call`.
989
996
 
@@ -1151,6 +1158,8 @@ module OpenAI
1151
1158
  PNG = :png
1152
1159
  WEBP = :webp
1153
1160
  JPEG = :jpeg
1161
+ GIF = :gif
1162
+ SVG = :svg
1154
1163
 
1155
1164
  # @!method self.values
1156
1165
  # @return [Array<Symbol>]
@@ -1211,6 +1220,41 @@ module OpenAI
1211
1220
 
1212
1221
  # @!endgroup
1213
1222
  end
1223
+
1224
+ # @see OpenAI::Models::Beta::BetaResponseOutputItem::ImageGenerationCall#svg_usage
1225
+ class SvgUsage < OpenAI::Internal::Type::BaseModel
1226
+ # @!attribute input_tokens
1227
+ #
1228
+ # @return [Integer]
1229
+ required :input_tokens, Integer
1230
+
1231
+ # @!attribute model
1232
+ #
1233
+ # @return [String]
1234
+ required :model, String
1235
+
1236
+ # @!attribute output_tokens
1237
+ #
1238
+ # @return [Integer]
1239
+ required :output_tokens, Integer
1240
+
1241
+ # @!attribute reasoning_tokens
1242
+ #
1243
+ # @return [Integer]
1244
+ required :reasoning_tokens, Integer
1245
+
1246
+ # @!attribute total_tokens
1247
+ #
1248
+ # @return [Integer]
1249
+ required :total_tokens, Integer
1250
+
1251
+ # @!method initialize(input_tokens:, model:, output_tokens:, reasoning_tokens:, total_tokens:)
1252
+ # @param input_tokens [Integer]
1253
+ # @param model [String]
1254
+ # @param output_tokens [Integer]
1255
+ # @param reasoning_tokens [Integer]
1256
+ # @param total_tokens [Integer]
1257
+ end
1214
1258
  end
1215
1259
 
1216
1260
  class LocalShellCall < OpenAI::Internal::Type::BaseModel