openai 0.61.0 → 0.63.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 (164) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +26 -0
  3. data/README.md +2 -5
  4. data/lib/openai/auth/workload_identity.rb +2 -2
  5. data/lib/openai/auth/workload_identity_auth.rb +4 -3
  6. data/lib/openai/models/admin/organization/usage_audio_speeches_response.rb +10 -1
  7. data/lib/openai/models/admin/organization/usage_audio_transcriptions_response.rb +10 -1
  8. data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_response.rb +10 -1
  9. data/lib/openai/models/admin/organization/usage_completions_response.rb +10 -1
  10. data/lib/openai/models/admin/organization/usage_costs_response.rb +10 -1
  11. data/lib/openai/models/admin/organization/usage_embeddings_response.rb +10 -1
  12. data/lib/openai/models/admin/organization/usage_images_response.rb +10 -1
  13. data/lib/openai/models/admin/organization/usage_moderations_response.rb +10 -1
  14. data/lib/openai/models/admin/organization/usage_vector_stores_response.rb +10 -1
  15. data/lib/openai/models/chat/chat_completion_token_logprob.rb +1 -2
  16. data/lib/openai/models/chat/completion_create_params.rb +4 -3
  17. data/lib/openai/models/image_edit_params.rb +85 -31
  18. data/lib/openai/models/image_generate_params.rb +78 -26
  19. data/lib/openai/models/image_model.rb +5 -2
  20. data/lib/openai/models/realtime/audio_transcription.rb +37 -5
  21. data/lib/openai/models/realtime/client_secret_create_response.rb +1 -2
  22. data/lib/openai/models/realtime/realtime_audio_config_input.rb +3 -0
  23. data/lib/openai/models/realtime/realtime_audio_input_turn_detection.rb +3 -0
  24. data/lib/openai/models/realtime/realtime_reasoning.rb +24 -0
  25. data/lib/openai/models/realtime/realtime_reasoning_effort.rb +22 -0
  26. data/lib/openai/models/realtime/realtime_response_create_params.rb +18 -1
  27. data/lib/openai/models/realtime/realtime_session.rb +6 -0
  28. data/lib/openai/models/realtime/realtime_session_create_request.rb +21 -1
  29. data/lib/openai/models/realtime/realtime_session_create_response.rb +41 -17
  30. data/lib/openai/models/realtime/realtime_transcription_session_audio_input.rb +3 -0
  31. data/lib/openai/models/realtime/realtime_transcription_session_audio_input_turn_detection.rb +3 -0
  32. data/lib/openai/models/realtime/realtime_transcription_session_create_response.rb +9 -5
  33. data/lib/openai/models/realtime/realtime_transcription_session_turn_detection.rb +2 -1
  34. data/lib/openai/models/realtime/realtime_translation_client_event.rb +45 -0
  35. data/lib/openai/models/realtime/realtime_translation_client_secret_create_request.rb +85 -0
  36. data/lib/openai/models/realtime/realtime_translation_client_secret_create_response.rb +42 -0
  37. data/lib/openai/models/realtime/realtime_translation_input_audio_buffer_append_event.rb +51 -0
  38. data/lib/openai/models/realtime/realtime_translation_input_transcript_delta_event.rb +55 -0
  39. data/lib/openai/models/realtime/realtime_translation_output_audio_delta_event.rb +89 -0
  40. data/lib/openai/models/realtime/realtime_translation_output_transcript_delta_event.rb +54 -0
  41. data/lib/openai/models/realtime/realtime_translation_server_event.rb +53 -0
  42. data/lib/openai/models/realtime/realtime_translation_session.rb +158 -0
  43. data/lib/openai/models/realtime/realtime_translation_session_close_event.rb +30 -0
  44. data/lib/openai/models/realtime/realtime_translation_session_closed_event.rb +28 -0
  45. data/lib/openai/models/realtime/realtime_translation_session_create_request.rb +138 -0
  46. data/lib/openai/models/realtime/realtime_translation_session_created_event.rb +38 -0
  47. data/lib/openai/models/realtime/realtime_translation_session_update_event.rb +43 -0
  48. data/lib/openai/models/realtime/realtime_translation_session_update_request.rb +129 -0
  49. data/lib/openai/models/realtime/realtime_translation_session_updated_event.rb +37 -0
  50. data/lib/openai/models/realtime/transcription_session_updated_event.rb +1 -2
  51. data/lib/openai/models/responses/response.rb +4 -3
  52. data/lib/openai/models/responses/response_compact_params.rb +22 -1
  53. data/lib/openai/models/responses/response_create_params.rb +4 -3
  54. data/lib/openai/models/responses/response_includable.rb +2 -0
  55. data/lib/openai/models/responses/response_text_delta_event.rb +2 -2
  56. data/lib/openai/models/responses/response_text_done_event.rb +2 -2
  57. data/lib/openai/models/responses/responses_client_event.rb +4 -3
  58. data/lib/openai/models/responses/tool.rb +81 -16
  59. data/lib/openai/resources/chat/completions.rb +2 -2
  60. data/lib/openai/resources/images.rb +6 -6
  61. data/lib/openai/resources/realtime/calls.rb +5 -1
  62. data/lib/openai/resources/responses.rb +5 -3
  63. data/lib/openai/version.rb +1 -1
  64. data/lib/openai.rb +18 -1
  65. data/rbi/openai/auth.rbi +3 -3
  66. data/rbi/openai/models/admin/organization/usage_audio_speeches_response.rbi +11 -1
  67. data/rbi/openai/models/admin/organization/usage_audio_transcriptions_response.rbi +11 -1
  68. data/rbi/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbi +11 -1
  69. data/rbi/openai/models/admin/organization/usage_completions_response.rbi +11 -1
  70. data/rbi/openai/models/admin/organization/usage_costs_response.rbi +11 -1
  71. data/rbi/openai/models/admin/organization/usage_embeddings_response.rbi +11 -1
  72. data/rbi/openai/models/admin/organization/usage_images_response.rbi +11 -1
  73. data/rbi/openai/models/admin/organization/usage_moderations_response.rbi +11 -1
  74. data/rbi/openai/models/admin/organization/usage_vector_stores_response.rbi +11 -1
  75. data/rbi/openai/models/chat/chat_completion_token_logprob.rbi +2 -4
  76. data/rbi/openai/models/chat/completion_create_params.rbi +6 -4
  77. data/rbi/openai/models/image_edit_params.rbi +102 -45
  78. data/rbi/openai/models/image_generate_params.rbi +93 -39
  79. data/rbi/openai/models/image_model.rbi +8 -3
  80. data/rbi/openai/models/realtime/audio_transcription.rbi +85 -6
  81. data/rbi/openai/models/realtime/realtime_audio_config_input.rbi +6 -0
  82. data/rbi/openai/models/realtime/realtime_audio_input_turn_detection.rbi +3 -0
  83. data/rbi/openai/models/realtime/realtime_reasoning.rbi +54 -0
  84. data/rbi/openai/models/realtime/realtime_reasoning_effort.rbi +44 -0
  85. data/rbi/openai/models/realtime/realtime_response_create_params.rbi +26 -0
  86. data/rbi/openai/models/realtime/realtime_session.rbi +9 -0
  87. data/rbi/openai/models/realtime/realtime_session_create_request.rbi +31 -0
  88. data/rbi/openai/models/realtime/realtime_session_create_response.rbi +53 -32
  89. data/rbi/openai/models/realtime/realtime_transcription_session_audio_input.rbi +6 -0
  90. data/rbi/openai/models/realtime/realtime_transcription_session_audio_input_turn_detection.rbi +3 -0
  91. data/rbi/openai/models/realtime/realtime_transcription_session_create_response.rbi +13 -7
  92. data/rbi/openai/models/realtime/realtime_transcription_session_turn_detection.rbi +2 -1
  93. data/rbi/openai/models/realtime/realtime_translation_client_event.rbi +29 -0
  94. data/rbi/openai/models/realtime/realtime_translation_client_secret_create_request.rbi +193 -0
  95. data/rbi/openai/models/realtime/realtime_translation_client_secret_create_response.rbi +69 -0
  96. data/rbi/openai/models/realtime/realtime_translation_input_audio_buffer_append_event.rbi +69 -0
  97. data/rbi/openai/models/realtime/realtime_translation_input_transcript_delta_event.rbi +77 -0
  98. data/rbi/openai/models/realtime/realtime_translation_output_audio_delta_event.rbi +148 -0
  99. data/rbi/openai/models/realtime/realtime_translation_output_transcript_delta_event.rbi +76 -0
  100. data/rbi/openai/models/realtime/realtime_translation_server_event.rbi +33 -0
  101. data/rbi/openai/models/realtime/realtime_translation_session.rbi +339 -0
  102. data/rbi/openai/models/realtime/realtime_translation_session_close_event.rbi +44 -0
  103. data/rbi/openai/models/realtime/realtime_translation_session_closed_event.rbi +39 -0
  104. data/rbi/openai/models/realtime/realtime_translation_session_create_request.rbi +322 -0
  105. data/rbi/openai/models/realtime/realtime_translation_session_created_event.rbi +68 -0
  106. data/rbi/openai/models/realtime/realtime_translation_session_update_event.rbi +78 -0
  107. data/rbi/openai/models/realtime/realtime_translation_session_update_request.rbi +313 -0
  108. data/rbi/openai/models/realtime/realtime_translation_session_updated_event.rbi +67 -0
  109. data/rbi/openai/models/realtime/transcription_session_updated_event.rbi +0 -2
  110. data/rbi/openai/models/responses/response.rbi +6 -4
  111. data/rbi/openai/models/responses/response_compact_params.rbi +65 -0
  112. data/rbi/openai/models/responses/response_create_params.rbi +6 -4
  113. data/rbi/openai/models/responses/response_includable.rbi +2 -0
  114. data/rbi/openai/models/responses/response_text_delta_event.rbi +2 -2
  115. data/rbi/openai/models/responses/response_text_done_event.rbi +2 -2
  116. data/rbi/openai/models/responses/responses_client_event.rbi +6 -4
  117. data/rbi/openai/models/responses/tool.rbi +122 -27
  118. data/rbi/openai/resources/chat/completions.rbi +6 -4
  119. data/rbi/openai/resources/images.rbi +110 -44
  120. data/rbi/openai/resources/realtime/calls.rbi +7 -0
  121. data/rbi/openai/resources/responses.rbi +12 -4
  122. data/sig/openai/models/admin/organization/usage_audio_speeches_response.rbs +7 -2
  123. data/sig/openai/models/admin/organization/usage_audio_transcriptions_response.rbs +7 -2
  124. data/sig/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbs +7 -2
  125. data/sig/openai/models/admin/organization/usage_completions_response.rbs +7 -2
  126. data/sig/openai/models/admin/organization/usage_costs_response.rbs +7 -2
  127. data/sig/openai/models/admin/organization/usage_embeddings_response.rbs +7 -2
  128. data/sig/openai/models/admin/organization/usage_images_response.rbs +7 -2
  129. data/sig/openai/models/admin/organization/usage_moderations_response.rbs +7 -2
  130. data/sig/openai/models/admin/organization/usage_vector_stores_response.rbs +7 -2
  131. data/sig/openai/models/image_edit_params.rbs +5 -4
  132. data/sig/openai/models/image_generate_params.rbs +5 -4
  133. data/sig/openai/models/image_model.rbs +11 -5
  134. data/sig/openai/models/realtime/audio_transcription.rbs +25 -0
  135. data/sig/openai/models/realtime/realtime_reasoning.rbs +24 -0
  136. data/sig/openai/models/realtime/realtime_reasoning_effort.rbs +20 -0
  137. data/sig/openai/models/realtime/realtime_response_create_params.rbs +16 -0
  138. data/sig/openai/models/realtime/realtime_session_create_request.rbs +18 -0
  139. data/sig/openai/models/realtime/realtime_session_create_response.rbs +27 -4
  140. data/sig/openai/models/realtime/realtime_transcription_session_create_response.rbs +4 -8
  141. data/sig/openai/models/realtime/realtime_translation_client_event.rbs +16 -0
  142. data/sig/openai/models/realtime/realtime_translation_client_secret_create_request.rbs +69 -0
  143. data/sig/openai/models/realtime/realtime_translation_client_secret_create_response.rbs +32 -0
  144. data/sig/openai/models/realtime/realtime_translation_input_audio_buffer_append_event.rbs +34 -0
  145. data/sig/openai/models/realtime/realtime_translation_input_transcript_delta_event.rbs +37 -0
  146. data/sig/openai/models/realtime/realtime_translation_output_audio_delta_event.rbs +70 -0
  147. data/sig/openai/models/realtime/realtime_translation_output_transcript_delta_event.rbs +37 -0
  148. data/sig/openai/models/realtime/realtime_translation_server_event.rbs +20 -0
  149. data/sig/openai/models/realtime/realtime_translation_session.rbs +131 -0
  150. data/sig/openai/models/realtime/realtime_translation_session_close_event.rbs +20 -0
  151. data/sig/openai/models/realtime/realtime_translation_session_closed_event.rbs +18 -0
  152. data/sig/openai/models/realtime/realtime_translation_session_create_request.rbs +120 -0
  153. data/sig/openai/models/realtime/realtime_translation_session_created_event.rbs +32 -0
  154. data/sig/openai/models/realtime/realtime_translation_session_update_event.rbs +34 -0
  155. data/sig/openai/models/realtime/realtime_translation_session_update_request.rbs +115 -0
  156. data/sig/openai/models/realtime/realtime_translation_session_updated_event.rbs +32 -0
  157. data/sig/openai/models/responses/response_compact_params.rbs +19 -1
  158. data/sig/openai/models/responses/tool.rbs +15 -5
  159. data/sig/openai/resources/realtime/calls.rbs +2 -0
  160. data/sig/openai/resources/responses.rbs +1 -0
  161. metadata +56 -5
  162. data/lib/openai/models/realtime/realtime_session_client_secret.rb +0 -36
  163. data/rbi/openai/models/realtime/realtime_session_client_secret.rbi +0 -49
  164. data/sig/openai/models/realtime/realtime_session_client_secret.rbs +0 -20
@@ -466,7 +466,8 @@ module OpenAI
466
466
  amount: OpenAI::Models::Admin::Organization::UsageAudioTranscriptionsResponse::Data::Result::OrganizationCostsResult::Amount,
467
467
  api_key_id: String?,
468
468
  line_item: String?,
469
- project_id: String?
469
+ project_id: String?,
470
+ quantity: Float?
470
471
  }
471
472
 
472
473
  class OrganizationCostsResult < OpenAI::Internal::Type::BaseModel
@@ -484,11 +485,14 @@ module OpenAI
484
485
 
485
486
  attr_accessor project_id: String?
486
487
 
488
+ attr_accessor quantity: Float?
489
+
487
490
  def initialize: (
488
491
  ?amount: OpenAI::Models::Admin::Organization::UsageAudioTranscriptionsResponse::Data::Result::OrganizationCostsResult::Amount,
489
492
  ?api_key_id: String?,
490
493
  ?line_item: String?,
491
494
  ?project_id: String?,
495
+ ?quantity: Float?,
492
496
  ?object: :"organization.costs.result"
493
497
  ) -> void
494
498
 
@@ -497,7 +501,8 @@ module OpenAI
497
501
  amount: OpenAI::Models::Admin::Organization::UsageAudioTranscriptionsResponse::Data::Result::OrganizationCostsResult::Amount,
498
502
  api_key_id: String?,
499
503
  line_item: String?,
500
- project_id: String?
504
+ project_id: String?,
505
+ quantity: Float?
501
506
  }
502
507
 
503
508
  type amount = { currency: String, value: Float }
@@ -466,7 +466,8 @@ module OpenAI
466
466
  amount: OpenAI::Models::Admin::Organization::UsageCodeInterpreterSessionsResponse::Data::Result::OrganizationCostsResult::Amount,
467
467
  api_key_id: String?,
468
468
  line_item: String?,
469
- project_id: String?
469
+ project_id: String?,
470
+ quantity: Float?
470
471
  }
471
472
 
472
473
  class OrganizationCostsResult < OpenAI::Internal::Type::BaseModel
@@ -484,11 +485,14 @@ module OpenAI
484
485
 
485
486
  attr_accessor project_id: String?
486
487
 
488
+ attr_accessor quantity: Float?
489
+
487
490
  def initialize: (
488
491
  ?amount: OpenAI::Models::Admin::Organization::UsageCodeInterpreterSessionsResponse::Data::Result::OrganizationCostsResult::Amount,
489
492
  ?api_key_id: String?,
490
493
  ?line_item: String?,
491
494
  ?project_id: String?,
495
+ ?quantity: Float?,
492
496
  ?object: :"organization.costs.result"
493
497
  ) -> void
494
498
 
@@ -497,7 +501,8 @@ module OpenAI
497
501
  amount: OpenAI::Models::Admin::Organization::UsageCodeInterpreterSessionsResponse::Data::Result::OrganizationCostsResult::Amount,
498
502
  api_key_id: String?,
499
503
  line_item: String?,
500
- project_id: String?
504
+ project_id: String?,
505
+ quantity: Float?
501
506
  }
502
507
 
503
508
  type amount = { currency: String, value: Float }
@@ -466,7 +466,8 @@ module OpenAI
466
466
  amount: OpenAI::Models::Admin::Organization::UsageCompletionsResponse::Data::Result::OrganizationCostsResult::Amount,
467
467
  api_key_id: String?,
468
468
  line_item: String?,
469
- project_id: String?
469
+ project_id: String?,
470
+ quantity: Float?
470
471
  }
471
472
 
472
473
  class OrganizationCostsResult < OpenAI::Internal::Type::BaseModel
@@ -484,11 +485,14 @@ module OpenAI
484
485
 
485
486
  attr_accessor project_id: String?
486
487
 
488
+ attr_accessor quantity: Float?
489
+
487
490
  def initialize: (
488
491
  ?amount: OpenAI::Models::Admin::Organization::UsageCompletionsResponse::Data::Result::OrganizationCostsResult::Amount,
489
492
  ?api_key_id: String?,
490
493
  ?line_item: String?,
491
494
  ?project_id: String?,
495
+ ?quantity: Float?,
492
496
  ?object: :"organization.costs.result"
493
497
  ) -> void
494
498
 
@@ -497,7 +501,8 @@ module OpenAI
497
501
  amount: OpenAI::Models::Admin::Organization::UsageCompletionsResponse::Data::Result::OrganizationCostsResult::Amount,
498
502
  api_key_id: String?,
499
503
  line_item: String?,
500
- project_id: String?
504
+ project_id: String?,
505
+ quantity: Float?
501
506
  }
502
507
 
503
508
  type amount = { currency: String, value: Float }
@@ -466,7 +466,8 @@ module OpenAI
466
466
  amount: OpenAI::Models::Admin::Organization::UsageCostsResponse::Data::Result::OrganizationCostsResult::Amount,
467
467
  api_key_id: String?,
468
468
  line_item: String?,
469
- project_id: String?
469
+ project_id: String?,
470
+ quantity: Float?
470
471
  }
471
472
 
472
473
  class OrganizationCostsResult < OpenAI::Internal::Type::BaseModel
@@ -484,11 +485,14 @@ module OpenAI
484
485
 
485
486
  attr_accessor project_id: String?
486
487
 
488
+ attr_accessor quantity: Float?
489
+
487
490
  def initialize: (
488
491
  ?amount: OpenAI::Models::Admin::Organization::UsageCostsResponse::Data::Result::OrganizationCostsResult::Amount,
489
492
  ?api_key_id: String?,
490
493
  ?line_item: String?,
491
494
  ?project_id: String?,
495
+ ?quantity: Float?,
492
496
  ?object: :"organization.costs.result"
493
497
  ) -> void
494
498
 
@@ -497,7 +501,8 @@ module OpenAI
497
501
  amount: OpenAI::Models::Admin::Organization::UsageCostsResponse::Data::Result::OrganizationCostsResult::Amount,
498
502
  api_key_id: String?,
499
503
  line_item: String?,
500
- project_id: String?
504
+ project_id: String?,
505
+ quantity: Float?
501
506
  }
502
507
 
503
508
  type amount = { currency: String, value: Float }
@@ -466,7 +466,8 @@ module OpenAI
466
466
  amount: OpenAI::Models::Admin::Organization::UsageEmbeddingsResponse::Data::Result::OrganizationCostsResult::Amount,
467
467
  api_key_id: String?,
468
468
  line_item: String?,
469
- project_id: String?
469
+ project_id: String?,
470
+ quantity: Float?
470
471
  }
471
472
 
472
473
  class OrganizationCostsResult < OpenAI::Internal::Type::BaseModel
@@ -484,11 +485,14 @@ module OpenAI
484
485
 
485
486
  attr_accessor project_id: String?
486
487
 
488
+ attr_accessor quantity: Float?
489
+
487
490
  def initialize: (
488
491
  ?amount: OpenAI::Models::Admin::Organization::UsageEmbeddingsResponse::Data::Result::OrganizationCostsResult::Amount,
489
492
  ?api_key_id: String?,
490
493
  ?line_item: String?,
491
494
  ?project_id: String?,
495
+ ?quantity: Float?,
492
496
  ?object: :"organization.costs.result"
493
497
  ) -> void
494
498
 
@@ -497,7 +501,8 @@ module OpenAI
497
501
  amount: OpenAI::Models::Admin::Organization::UsageEmbeddingsResponse::Data::Result::OrganizationCostsResult::Amount,
498
502
  api_key_id: String?,
499
503
  line_item: String?,
500
- project_id: String?
504
+ project_id: String?,
505
+ quantity: Float?
501
506
  }
502
507
 
503
508
  type amount = { currency: String, value: Float }
@@ -466,7 +466,8 @@ module OpenAI
466
466
  amount: OpenAI::Models::Admin::Organization::UsageImagesResponse::Data::Result::OrganizationCostsResult::Amount,
467
467
  api_key_id: String?,
468
468
  line_item: String?,
469
- project_id: String?
469
+ project_id: String?,
470
+ quantity: Float?
470
471
  }
471
472
 
472
473
  class OrganizationCostsResult < OpenAI::Internal::Type::BaseModel
@@ -484,11 +485,14 @@ module OpenAI
484
485
 
485
486
  attr_accessor project_id: String?
486
487
 
488
+ attr_accessor quantity: Float?
489
+
487
490
  def initialize: (
488
491
  ?amount: OpenAI::Models::Admin::Organization::UsageImagesResponse::Data::Result::OrganizationCostsResult::Amount,
489
492
  ?api_key_id: String?,
490
493
  ?line_item: String?,
491
494
  ?project_id: String?,
495
+ ?quantity: Float?,
492
496
  ?object: :"organization.costs.result"
493
497
  ) -> void
494
498
 
@@ -497,7 +501,8 @@ module OpenAI
497
501
  amount: OpenAI::Models::Admin::Organization::UsageImagesResponse::Data::Result::OrganizationCostsResult::Amount,
498
502
  api_key_id: String?,
499
503
  line_item: String?,
500
- project_id: String?
504
+ project_id: String?,
505
+ quantity: Float?
501
506
  }
502
507
 
503
508
  type amount = { currency: String, value: Float }
@@ -466,7 +466,8 @@ module OpenAI
466
466
  amount: OpenAI::Models::Admin::Organization::UsageModerationsResponse::Data::Result::OrganizationCostsResult::Amount,
467
467
  api_key_id: String?,
468
468
  line_item: String?,
469
- project_id: String?
469
+ project_id: String?,
470
+ quantity: Float?
470
471
  }
471
472
 
472
473
  class OrganizationCostsResult < OpenAI::Internal::Type::BaseModel
@@ -484,11 +485,14 @@ module OpenAI
484
485
 
485
486
  attr_accessor project_id: String?
486
487
 
488
+ attr_accessor quantity: Float?
489
+
487
490
  def initialize: (
488
491
  ?amount: OpenAI::Models::Admin::Organization::UsageModerationsResponse::Data::Result::OrganizationCostsResult::Amount,
489
492
  ?api_key_id: String?,
490
493
  ?line_item: String?,
491
494
  ?project_id: String?,
495
+ ?quantity: Float?,
492
496
  ?object: :"organization.costs.result"
493
497
  ) -> void
494
498
 
@@ -497,7 +501,8 @@ module OpenAI
497
501
  amount: OpenAI::Models::Admin::Organization::UsageModerationsResponse::Data::Result::OrganizationCostsResult::Amount,
498
502
  api_key_id: String?,
499
503
  line_item: String?,
500
- project_id: String?
504
+ project_id: String?,
505
+ quantity: Float?
501
506
  }
502
507
 
503
508
  type amount = { currency: String, value: Float }
@@ -466,7 +466,8 @@ module OpenAI
466
466
  amount: OpenAI::Models::Admin::Organization::UsageVectorStoresResponse::Data::Result::OrganizationCostsResult::Amount,
467
467
  api_key_id: String?,
468
468
  line_item: String?,
469
- project_id: String?
469
+ project_id: String?,
470
+ quantity: Float?
470
471
  }
471
472
 
472
473
  class OrganizationCostsResult < OpenAI::Internal::Type::BaseModel
@@ -484,11 +485,14 @@ module OpenAI
484
485
 
485
486
  attr_accessor project_id: String?
486
487
 
488
+ attr_accessor quantity: Float?
489
+
487
490
  def initialize: (
488
491
  ?amount: OpenAI::Models::Admin::Organization::UsageVectorStoresResponse::Data::Result::OrganizationCostsResult::Amount,
489
492
  ?api_key_id: String?,
490
493
  ?line_item: String?,
491
494
  ?project_id: String?,
495
+ ?quantity: Float?,
492
496
  ?object: :"organization.costs.result"
493
497
  ) -> void
494
498
 
@@ -497,7 +501,8 @@ module OpenAI
497
501
  amount: OpenAI::Models::Admin::Organization::UsageVectorStoresResponse::Data::Result::OrganizationCostsResult::Amount,
498
502
  api_key_id: String?,
499
503
  line_item: String?,
500
- project_id: String?
504
+ project_id: String?,
505
+ quantity: Float?
501
506
  }
502
507
 
503
508
  type amount = { currency: String, value: Float }
@@ -171,7 +171,8 @@ module OpenAI
171
171
  end
172
172
 
173
173
  type size =
174
- :"256x256"
174
+ String
175
+ | :"256x256"
175
176
  | :"512x512"
176
177
  | :"1024x1024"
177
178
  | :"1536x1024"
@@ -179,7 +180,9 @@ module OpenAI
179
180
  | :auto
180
181
 
181
182
  module Size
182
- extend OpenAI::Internal::Type::Enum
183
+ extend OpenAI::Internal::Type::Union
184
+
185
+ def self?.variants: -> ::Array[OpenAI::Models::ImageEditParams::size]
183
186
 
184
187
  SIZE_256X256: :"256x256"
185
188
  SIZE_512X512: :"512x512"
@@ -187,8 +190,6 @@ module OpenAI
187
190
  SIZE_1536X1024: :"1536x1024"
188
191
  SIZE_1024X1536: :"1024x1536"
189
192
  AUTO: :auto
190
-
191
- def self?.values: -> ::Array[OpenAI::Models::ImageEditParams::size]
192
193
  end
193
194
  end
194
195
  end
@@ -154,7 +154,8 @@ module OpenAI
154
154
  end
155
155
 
156
156
  type size =
157
- :auto
157
+ String
158
+ | :auto
158
159
  | :"1024x1024"
159
160
  | :"1536x1024"
160
161
  | :"1024x1536"
@@ -164,7 +165,9 @@ module OpenAI
164
165
  | :"1024x1792"
165
166
 
166
167
  module Size
167
- extend OpenAI::Internal::Type::Enum
168
+ extend OpenAI::Internal::Type::Union
169
+
170
+ def self?.variants: -> ::Array[OpenAI::Models::ImageGenerateParams::size]
168
171
 
169
172
  AUTO: :auto
170
173
  SIZE_1024X1024: :"1024x1024"
@@ -174,8 +177,6 @@ module OpenAI
174
177
  SIZE_512X512: :"512x512"
175
178
  SIZE_1792X1024: :"1792x1024"
176
179
  SIZE_1024X1792: :"1024x1792"
177
-
178
- def self?.values: -> ::Array[OpenAI::Models::ImageGenerateParams::size]
179
180
  end
180
181
 
181
182
  type style = :vivid | :natural
@@ -1,20 +1,26 @@
1
1
  module OpenAI
2
2
  module Models
3
3
  type image_model =
4
- :"gpt-image-1.5"
4
+ :"gpt-image-1"
5
+ | :"gpt-image-1-mini"
6
+ | :"gpt-image-2"
7
+ | :"gpt-image-2-2026-04-21"
8
+ | :"gpt-image-1.5"
9
+ | :"chatgpt-image-latest"
5
10
  | :"dall-e-2"
6
11
  | :"dall-e-3"
7
- | :"gpt-image-1"
8
- | :"gpt-image-1-mini"
9
12
 
10
13
  module ImageModel
11
14
  extend OpenAI::Internal::Type::Enum
12
15
 
16
+ GPT_IMAGE_1: :"gpt-image-1"
17
+ GPT_IMAGE_1_MINI: :"gpt-image-1-mini"
18
+ GPT_IMAGE_2: :"gpt-image-2"
19
+ GPT_IMAGE_2_2026_04_21: :"gpt-image-2-2026-04-21"
13
20
  GPT_IMAGE_1_5: :"gpt-image-1.5"
21
+ CHATGPT_IMAGE_LATEST: :"chatgpt-image-latest"
14
22
  DALL_E_2: :"dall-e-2"
15
23
  DALL_E_3: :"dall-e-3"
16
- GPT_IMAGE_1: :"gpt-image-1"
17
- GPT_IMAGE_1_MINI: :"gpt-image-1-mini"
18
24
 
19
25
  def self?.values: -> ::Array[OpenAI::Models::image_model]
20
26
  end
@@ -3,12 +3,19 @@ module OpenAI
3
3
  module Realtime
4
4
  type audio_transcription =
5
5
  {
6
+ delay: OpenAI::Models::Realtime::AudioTranscription::delay,
6
7
  language: String,
7
8
  model: OpenAI::Models::Realtime::AudioTranscription::model,
8
9
  prompt: String
9
10
  }
10
11
 
11
12
  class AudioTranscription < OpenAI::Internal::Type::BaseModel
13
+ attr_reader delay: OpenAI::Models::Realtime::AudioTranscription::delay?
14
+
15
+ def delay=: (
16
+ OpenAI::Models::Realtime::AudioTranscription::delay
17
+ ) -> OpenAI::Models::Realtime::AudioTranscription::delay
18
+
12
19
  attr_reader language: String?
13
20
 
14
21
  def language=: (String) -> String
@@ -24,17 +31,33 @@ module OpenAI
24
31
  def prompt=: (String) -> String
25
32
 
26
33
  def initialize: (
34
+ ?delay: OpenAI::Models::Realtime::AudioTranscription::delay,
27
35
  ?language: String,
28
36
  ?model: OpenAI::Models::Realtime::AudioTranscription::model,
29
37
  ?prompt: String
30
38
  ) -> void
31
39
 
32
40
  def to_hash: -> {
41
+ delay: OpenAI::Models::Realtime::AudioTranscription::delay,
33
42
  language: String,
34
43
  model: OpenAI::Models::Realtime::AudioTranscription::model,
35
44
  prompt: String
36
45
  }
37
46
 
47
+ type delay = :minimal | :low | :medium | :high | :xhigh
48
+
49
+ module Delay
50
+ extend OpenAI::Internal::Type::Enum
51
+
52
+ MINIMAL: :minimal
53
+ LOW: :low
54
+ MEDIUM: :medium
55
+ HIGH: :high
56
+ XHIGH: :xhigh
57
+
58
+ def self?.values: -> ::Array[OpenAI::Models::Realtime::AudioTranscription::delay]
59
+ end
60
+
38
61
  type model =
39
62
  String
40
63
  | :"whisper-1"
@@ -42,6 +65,7 @@ module OpenAI
42
65
  | :"gpt-4o-mini-transcribe-2025-12-15"
43
66
  | :"gpt-4o-transcribe"
44
67
  | :"gpt-4o-transcribe-diarize"
68
+ | :"gpt-realtime-whisper"
45
69
 
46
70
  module Model
47
71
  extend OpenAI::Internal::Type::Union
@@ -53,6 +77,7 @@ module OpenAI
53
77
  GPT_4O_MINI_TRANSCRIBE_2025_12_15: :"gpt-4o-mini-transcribe-2025-12-15"
54
78
  GPT_4O_TRANSCRIBE: :"gpt-4o-transcribe"
55
79
  GPT_4O_TRANSCRIBE_DIARIZE: :"gpt-4o-transcribe-diarize"
80
+ GPT_REALTIME_WHISPER: :"gpt-realtime-whisper"
56
81
  end
57
82
  end
58
83
  end
@@ -0,0 +1,24 @@
1
+ module OpenAI
2
+ module Models
3
+ module Realtime
4
+ type realtime_reasoning =
5
+ { effort: OpenAI::Models::Realtime::realtime_reasoning_effort }
6
+
7
+ class RealtimeReasoning < OpenAI::Internal::Type::BaseModel
8
+ attr_reader effort: OpenAI::Models::Realtime::realtime_reasoning_effort?
9
+
10
+ def effort=: (
11
+ OpenAI::Models::Realtime::realtime_reasoning_effort
12
+ ) -> OpenAI::Models::Realtime::realtime_reasoning_effort
13
+
14
+ def initialize: (
15
+ ?effort: OpenAI::Models::Realtime::realtime_reasoning_effort
16
+ ) -> void
17
+
18
+ def to_hash: -> {
19
+ effort: OpenAI::Models::Realtime::realtime_reasoning_effort
20
+ }
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,20 @@
1
+ module OpenAI
2
+ module Models
3
+ module Realtime
4
+ type realtime_reasoning_effort =
5
+ :minimal | :low | :medium | :high | :xhigh
6
+
7
+ module RealtimeReasoningEffort
8
+ extend OpenAI::Internal::Type::Enum
9
+
10
+ MINIMAL: :minimal
11
+ LOW: :low
12
+ MEDIUM: :medium
13
+ HIGH: :high
14
+ XHIGH: :xhigh
15
+
16
+ def self?.values: -> ::Array[OpenAI::Models::Realtime::realtime_reasoning_effort]
17
+ end
18
+ end
19
+ end
20
+ end
@@ -10,7 +10,9 @@ module OpenAI
10
10
  max_output_tokens: OpenAI::Models::Realtime::RealtimeResponseCreateParams::max_output_tokens,
11
11
  metadata: OpenAI::Models::metadata?,
12
12
  output_modalities: ::Array[OpenAI::Models::Realtime::RealtimeResponseCreateParams::output_modality],
13
+ parallel_tool_calls: bool,
13
14
  prompt: OpenAI::Responses::ResponsePrompt?,
15
+ reasoning: OpenAI::Realtime::RealtimeReasoning,
14
16
  tool_choice: OpenAI::Models::Realtime::RealtimeResponseCreateParams::tool_choice,
15
17
  tools: ::Array[OpenAI::Models::Realtime::RealtimeResponseCreateParams::tool]
16
18
  }
@@ -52,8 +54,18 @@ module OpenAI
52
54
  ::Array[OpenAI::Models::Realtime::RealtimeResponseCreateParams::output_modality]
53
55
  ) -> ::Array[OpenAI::Models::Realtime::RealtimeResponseCreateParams::output_modality]
54
56
 
57
+ attr_reader parallel_tool_calls: bool?
58
+
59
+ def parallel_tool_calls=: (bool) -> bool
60
+
55
61
  attr_accessor prompt: OpenAI::Responses::ResponsePrompt?
56
62
 
63
+ attr_reader reasoning: OpenAI::Realtime::RealtimeReasoning?
64
+
65
+ def reasoning=: (
66
+ OpenAI::Realtime::RealtimeReasoning
67
+ ) -> OpenAI::Realtime::RealtimeReasoning
68
+
57
69
  attr_reader tool_choice: OpenAI::Models::Realtime::RealtimeResponseCreateParams::tool_choice?
58
70
 
59
71
  def tool_choice=: (
@@ -74,7 +86,9 @@ module OpenAI
74
86
  ?max_output_tokens: OpenAI::Models::Realtime::RealtimeResponseCreateParams::max_output_tokens,
75
87
  ?metadata: OpenAI::Models::metadata?,
76
88
  ?output_modalities: ::Array[OpenAI::Models::Realtime::RealtimeResponseCreateParams::output_modality],
89
+ ?parallel_tool_calls: bool,
77
90
  ?prompt: OpenAI::Responses::ResponsePrompt?,
91
+ ?reasoning: OpenAI::Realtime::RealtimeReasoning,
78
92
  ?tool_choice: OpenAI::Models::Realtime::RealtimeResponseCreateParams::tool_choice,
79
93
  ?tools: ::Array[OpenAI::Models::Realtime::RealtimeResponseCreateParams::tool]
80
94
  ) -> void
@@ -87,7 +101,9 @@ module OpenAI
87
101
  max_output_tokens: OpenAI::Models::Realtime::RealtimeResponseCreateParams::max_output_tokens,
88
102
  metadata: OpenAI::Models::metadata?,
89
103
  output_modalities: ::Array[OpenAI::Models::Realtime::RealtimeResponseCreateParams::output_modality],
104
+ parallel_tool_calls: bool,
90
105
  prompt: OpenAI::Responses::ResponsePrompt?,
106
+ reasoning: OpenAI::Realtime::RealtimeReasoning,
91
107
  tool_choice: OpenAI::Models::Realtime::RealtimeResponseCreateParams::tool_choice,
92
108
  tools: ::Array[OpenAI::Models::Realtime::RealtimeResponseCreateParams::tool]
93
109
  }
@@ -10,7 +10,9 @@ module OpenAI
10
10
  max_output_tokens: OpenAI::Models::Realtime::RealtimeSessionCreateRequest::max_output_tokens,
11
11
  model: OpenAI::Models::Realtime::RealtimeSessionCreateRequest::model,
12
12
  output_modalities: ::Array[OpenAI::Models::Realtime::RealtimeSessionCreateRequest::output_modality],
13
+ parallel_tool_calls: bool,
13
14
  prompt: OpenAI::Responses::ResponsePrompt?,
15
+ reasoning: OpenAI::Realtime::RealtimeReasoning,
14
16
  tool_choice: OpenAI::Models::Realtime::realtime_tool_choice_config,
15
17
  tools: OpenAI::Models::Realtime::realtime_tools_config,
16
18
  tracing: OpenAI::Models::Realtime::realtime_tracing_config?,
@@ -54,8 +56,18 @@ module OpenAI
54
56
  ::Array[OpenAI::Models::Realtime::RealtimeSessionCreateRequest::output_modality]
55
57
  ) -> ::Array[OpenAI::Models::Realtime::RealtimeSessionCreateRequest::output_modality]
56
58
 
59
+ attr_reader parallel_tool_calls: bool?
60
+
61
+ def parallel_tool_calls=: (bool) -> bool
62
+
57
63
  attr_accessor prompt: OpenAI::Responses::ResponsePrompt?
58
64
 
65
+ attr_reader reasoning: OpenAI::Realtime::RealtimeReasoning?
66
+
67
+ def reasoning=: (
68
+ OpenAI::Realtime::RealtimeReasoning
69
+ ) -> OpenAI::Realtime::RealtimeReasoning
70
+
59
71
  attr_reader tool_choice: OpenAI::Models::Realtime::realtime_tool_choice_config?
60
72
 
61
73
  def tool_choice=: (
@@ -83,7 +95,9 @@ module OpenAI
83
95
  ?max_output_tokens: OpenAI::Models::Realtime::RealtimeSessionCreateRequest::max_output_tokens,
84
96
  ?model: OpenAI::Models::Realtime::RealtimeSessionCreateRequest::model,
85
97
  ?output_modalities: ::Array[OpenAI::Models::Realtime::RealtimeSessionCreateRequest::output_modality],
98
+ ?parallel_tool_calls: bool,
86
99
  ?prompt: OpenAI::Responses::ResponsePrompt?,
100
+ ?reasoning: OpenAI::Realtime::RealtimeReasoning,
87
101
  ?tool_choice: OpenAI::Models::Realtime::realtime_tool_choice_config,
88
102
  ?tools: OpenAI::Models::Realtime::realtime_tools_config,
89
103
  ?tracing: OpenAI::Models::Realtime::realtime_tracing_config?,
@@ -99,7 +113,9 @@ module OpenAI
99
113
  max_output_tokens: OpenAI::Models::Realtime::RealtimeSessionCreateRequest::max_output_tokens,
100
114
  model: OpenAI::Models::Realtime::RealtimeSessionCreateRequest::model,
101
115
  output_modalities: ::Array[OpenAI::Models::Realtime::RealtimeSessionCreateRequest::output_modality],
116
+ parallel_tool_calls: bool,
102
117
  prompt: OpenAI::Responses::ResponsePrompt?,
118
+ reasoning: OpenAI::Realtime::RealtimeReasoning,
103
119
  tool_choice: OpenAI::Models::Realtime::realtime_tool_choice_config,
104
120
  tools: OpenAI::Models::Realtime::realtime_tools_config,
105
121
  tracing: OpenAI::Models::Realtime::realtime_tracing_config?,
@@ -128,6 +144,7 @@ module OpenAI
128
144
  String
129
145
  | :"gpt-realtime"
130
146
  | :"gpt-realtime-1.5"
147
+ | :"gpt-realtime-2"
131
148
  | :"gpt-realtime-2025-08-28"
132
149
  | :"gpt-4o-realtime-preview"
133
150
  | :"gpt-4o-realtime-preview-2024-10-01"
@@ -150,6 +167,7 @@ module OpenAI
150
167
 
151
168
  GPT_REALTIME: :"gpt-realtime"
152
169
  GPT_REALTIME_1_5: :"gpt-realtime-1.5"
170
+ GPT_REALTIME_2: :"gpt-realtime-2"
153
171
  GPT_REALTIME_2025_08_28: :"gpt-realtime-2025-08-28"
154
172
  GPT_4O_REALTIME_PREVIEW: :"gpt-4o-realtime-preview"
155
173
  GPT_4O_REALTIME_PREVIEW_2024_10_01: :"gpt-4o-realtime-preview-2024-10-01"