openai 0.22.1 → 0.23.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 (158) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/README.md +1 -1
  4. data/lib/openai/models/realtime/audio_transcription.rb +60 -0
  5. data/lib/openai/models/realtime/client_secret_create_params.rb +18 -9
  6. data/lib/openai/models/realtime/client_secret_create_response.rb +11 -250
  7. data/lib/openai/models/realtime/conversation_item.rb +1 -1
  8. data/lib/openai/models/realtime/conversation_item_added.rb +14 -1
  9. data/lib/openai/models/realtime/conversation_item_done.rb +3 -0
  10. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rb +10 -8
  11. data/lib/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rb +14 -5
  12. data/lib/openai/models/realtime/conversation_item_truncate_event.rb +2 -2
  13. data/lib/openai/models/realtime/input_audio_buffer_append_event.rb +10 -5
  14. data/lib/openai/models/realtime/models.rb +58 -0
  15. data/lib/openai/models/realtime/noise_reduction_type.rb +20 -0
  16. data/lib/openai/models/realtime/realtime_audio_config.rb +6 -427
  17. data/lib/openai/models/realtime/realtime_audio_config_input.rb +89 -0
  18. data/lib/openai/models/realtime/realtime_audio_config_output.rb +100 -0
  19. data/lib/openai/models/realtime/realtime_audio_formats.rb +121 -0
  20. data/lib/openai/models/realtime/realtime_audio_input_turn_detection.rb +131 -0
  21. data/lib/openai/models/realtime/realtime_client_event.rb +31 -23
  22. data/lib/openai/models/realtime/realtime_conversation_item_assistant_message.rb +43 -10
  23. data/lib/openai/models/realtime/realtime_conversation_item_function_call.rb +16 -7
  24. data/lib/openai/models/realtime/realtime_conversation_item_function_call_output.rb +15 -7
  25. data/lib/openai/models/realtime/realtime_conversation_item_system_message.rb +18 -6
  26. data/lib/openai/models/realtime/realtime_conversation_item_user_message.rb +62 -13
  27. data/lib/openai/models/realtime/realtime_response.rb +117 -107
  28. data/lib/openai/models/realtime/realtime_response_create_audio_output.rb +100 -0
  29. data/lib/openai/models/realtime/realtime_response_create_mcp_tool.rb +310 -0
  30. data/lib/openai/models/realtime/realtime_response_create_params.rb +225 -0
  31. data/lib/openai/models/realtime/realtime_response_status.rb +1 -1
  32. data/lib/openai/models/realtime/realtime_response_usage.rb +5 -2
  33. data/lib/openai/models/realtime/realtime_response_usage_input_token_details.rb +58 -8
  34. data/lib/openai/models/realtime/realtime_server_event.rb +21 -5
  35. data/lib/openai/models/realtime/realtime_session.rb +9 -125
  36. data/lib/openai/models/realtime/realtime_session_client_secret.rb +36 -0
  37. data/lib/openai/models/realtime/realtime_session_create_request.rb +50 -71
  38. data/lib/openai/models/realtime/realtime_session_create_response.rb +621 -219
  39. data/lib/openai/models/realtime/realtime_tools_config_union.rb +2 -53
  40. data/lib/openai/models/realtime/realtime_tracing_config.rb +7 -6
  41. data/lib/openai/models/realtime/realtime_transcription_session_audio.rb +19 -0
  42. data/lib/openai/models/realtime/realtime_transcription_session_audio_input.rb +90 -0
  43. data/lib/openai/models/realtime/realtime_transcription_session_audio_input_turn_detection.rb +131 -0
  44. data/lib/openai/models/realtime/realtime_transcription_session_client_secret.rb +38 -0
  45. data/lib/openai/models/realtime/realtime_transcription_session_create_request.rb +12 -270
  46. data/lib/openai/models/realtime/realtime_transcription_session_create_response.rb +78 -0
  47. data/lib/openai/models/realtime/realtime_transcription_session_input_audio_transcription.rb +66 -0
  48. data/lib/openai/models/realtime/realtime_transcription_session_turn_detection.rb +57 -0
  49. data/lib/openai/models/realtime/realtime_truncation.rb +8 -40
  50. data/lib/openai/models/realtime/realtime_truncation_retention_ratio.rb +34 -0
  51. data/lib/openai/models/realtime/response_cancel_event.rb +3 -1
  52. data/lib/openai/models/realtime/response_create_event.rb +18 -348
  53. data/lib/openai/models/realtime/response_done_event.rb +7 -0
  54. data/lib/openai/models/realtime/session_created_event.rb +20 -4
  55. data/lib/openai/models/realtime/session_update_event.rb +36 -12
  56. data/lib/openai/models/realtime/session_updated_event.rb +20 -4
  57. data/lib/openai/models/realtime/transcription_session_created.rb +8 -243
  58. data/lib/openai/models/realtime/transcription_session_update.rb +179 -3
  59. data/lib/openai/models/realtime/transcription_session_updated_event.rb +8 -243
  60. data/lib/openai/resources/realtime/client_secrets.rb +2 -3
  61. data/lib/openai/version.rb +1 -1
  62. data/lib/openai.rb +19 -1
  63. data/rbi/openai/models/realtime/audio_transcription.rbi +132 -0
  64. data/rbi/openai/models/realtime/client_secret_create_params.rbi +25 -11
  65. data/rbi/openai/models/realtime/client_secret_create_response.rbi +2 -587
  66. data/rbi/openai/models/realtime/conversation_item_added.rbi +14 -1
  67. data/rbi/openai/models/realtime/conversation_item_done.rbi +3 -0
  68. data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_completed_event.rbi +11 -8
  69. data/rbi/openai/models/realtime/conversation_item_input_audio_transcription_delta_event.rbi +15 -5
  70. data/rbi/openai/models/realtime/conversation_item_truncate_event.rbi +2 -2
  71. data/rbi/openai/models/realtime/input_audio_buffer_append_event.rbi +10 -5
  72. data/rbi/openai/models/realtime/models.rbi +97 -0
  73. data/rbi/openai/models/realtime/noise_reduction_type.rbi +31 -0
  74. data/rbi/openai/models/realtime/realtime_audio_config.rbi +8 -956
  75. data/rbi/openai/models/realtime/realtime_audio_config_input.rbi +221 -0
  76. data/rbi/openai/models/realtime/realtime_audio_config_output.rbi +222 -0
  77. data/rbi/openai/models/realtime/realtime_audio_formats.rbi +329 -0
  78. data/rbi/openai/models/realtime/realtime_audio_input_turn_detection.rbi +262 -0
  79. data/rbi/openai/models/realtime/realtime_conversation_item_assistant_message.rbi +51 -10
  80. data/rbi/openai/models/realtime/realtime_conversation_item_function_call.rbi +16 -7
  81. data/rbi/openai/models/realtime/realtime_conversation_item_function_call_output.rbi +14 -7
  82. data/rbi/openai/models/realtime/realtime_conversation_item_system_message.rbi +16 -6
  83. data/rbi/openai/models/realtime/realtime_conversation_item_user_message.rbi +110 -12
  84. data/rbi/openai/models/realtime/realtime_response.rbi +287 -212
  85. data/rbi/openai/models/realtime/realtime_response_create_audio_output.rbi +250 -0
  86. data/rbi/openai/models/realtime/realtime_response_create_mcp_tool.rbi +616 -0
  87. data/rbi/openai/models/realtime/realtime_response_create_params.rbi +529 -0
  88. data/rbi/openai/models/realtime/realtime_response_usage.rbi +8 -2
  89. data/rbi/openai/models/realtime/realtime_response_usage_input_token_details.rbi +106 -7
  90. data/rbi/openai/models/realtime/realtime_server_event.rbi +4 -1
  91. data/rbi/openai/models/realtime/realtime_session.rbi +12 -262
  92. data/rbi/openai/models/realtime/realtime_session_client_secret.rbi +49 -0
  93. data/rbi/openai/models/realtime/realtime_session_create_request.rbi +112 -133
  94. data/rbi/openai/models/realtime/realtime_session_create_response.rbi +1229 -405
  95. data/rbi/openai/models/realtime/realtime_tools_config_union.rbi +1 -117
  96. data/rbi/openai/models/realtime/realtime_tracing_config.rbi +11 -10
  97. data/rbi/openai/models/realtime/realtime_transcription_session_audio.rbi +50 -0
  98. data/rbi/openai/models/realtime/realtime_transcription_session_audio_input.rbi +226 -0
  99. data/rbi/openai/models/realtime/realtime_transcription_session_audio_input_turn_detection.rbi +259 -0
  100. data/rbi/openai/models/realtime/realtime_transcription_session_client_secret.rbi +51 -0
  101. data/rbi/openai/models/realtime/realtime_transcription_session_create_request.rbi +25 -597
  102. data/rbi/openai/models/realtime/realtime_transcription_session_create_response.rbi +195 -0
  103. data/rbi/openai/models/realtime/realtime_transcription_session_input_audio_transcription.rbi +144 -0
  104. data/rbi/openai/models/realtime/realtime_transcription_session_turn_detection.rbi +94 -0
  105. data/rbi/openai/models/realtime/realtime_truncation.rbi +5 -56
  106. data/rbi/openai/models/realtime/realtime_truncation_retention_ratio.rbi +45 -0
  107. data/rbi/openai/models/realtime/response_cancel_event.rbi +3 -1
  108. data/rbi/openai/models/realtime/response_create_event.rbi +19 -786
  109. data/rbi/openai/models/realtime/response_done_event.rbi +7 -0
  110. data/rbi/openai/models/realtime/session_created_event.rbi +42 -9
  111. data/rbi/openai/models/realtime/session_update_event.rbi +57 -19
  112. data/rbi/openai/models/realtime/session_updated_event.rbi +42 -9
  113. data/rbi/openai/models/realtime/transcription_session_created.rbi +17 -591
  114. data/rbi/openai/models/realtime/transcription_session_update.rbi +425 -7
  115. data/rbi/openai/models/realtime/transcription_session_updated_event.rbi +14 -591
  116. data/rbi/openai/resources/realtime/client_secrets.rbi +5 -3
  117. data/sig/openai/models/realtime/audio_transcription.rbs +57 -0
  118. data/sig/openai/models/realtime/client_secret_create_response.rbs +1 -251
  119. data/sig/openai/models/realtime/models.rbs +57 -0
  120. data/sig/openai/models/realtime/noise_reduction_type.rbs +16 -0
  121. data/sig/openai/models/realtime/realtime_audio_config.rbs +12 -331
  122. data/sig/openai/models/realtime/realtime_audio_config_input.rbs +72 -0
  123. data/sig/openai/models/realtime/realtime_audio_config_output.rbs +72 -0
  124. data/sig/openai/models/realtime/realtime_audio_formats.rbs +128 -0
  125. data/sig/openai/models/realtime/realtime_audio_input_turn_detection.rbs +99 -0
  126. data/sig/openai/models/realtime/realtime_conversation_item_assistant_message.rbs +17 -2
  127. data/sig/openai/models/realtime/realtime_conversation_item_user_message.rbs +30 -1
  128. data/sig/openai/models/realtime/realtime_response.rbs +103 -82
  129. data/sig/openai/models/realtime/realtime_response_create_audio_output.rbs +84 -0
  130. data/sig/openai/models/realtime/realtime_response_create_mcp_tool.rbs +218 -0
  131. data/sig/openai/models/realtime/realtime_response_create_params.rbs +148 -0
  132. data/sig/openai/models/realtime/realtime_response_usage_input_token_details.rbs +50 -1
  133. data/sig/openai/models/realtime/realtime_session.rbs +16 -106
  134. data/sig/openai/models/realtime/realtime_session_client_secret.rbs +20 -0
  135. data/sig/openai/models/realtime/realtime_session_create_request.rbs +27 -43
  136. data/sig/openai/models/realtime/realtime_session_create_response.rbs +389 -187
  137. data/sig/openai/models/realtime/realtime_tools_config_union.rbs +1 -53
  138. data/sig/openai/models/realtime/realtime_transcription_session_audio.rbs +24 -0
  139. data/sig/openai/models/realtime/realtime_transcription_session_audio_input.rbs +72 -0
  140. data/sig/openai/models/realtime/realtime_transcription_session_audio_input_turn_detection.rbs +99 -0
  141. data/sig/openai/models/realtime/realtime_transcription_session_client_secret.rbs +20 -0
  142. data/sig/openai/models/realtime/realtime_transcription_session_create_request.rbs +11 -203
  143. data/sig/openai/models/realtime/realtime_transcription_session_create_response.rbs +69 -0
  144. data/sig/openai/models/realtime/realtime_transcription_session_input_audio_transcription.rbs +59 -0
  145. data/sig/openai/models/realtime/realtime_transcription_session_turn_detection.rbs +47 -0
  146. data/sig/openai/models/realtime/realtime_truncation.rbs +1 -28
  147. data/sig/openai/models/realtime/realtime_truncation_retention_ratio.rbs +21 -0
  148. data/sig/openai/models/realtime/response_create_event.rbs +6 -249
  149. data/sig/openai/models/realtime/session_created_event.rbs +14 -4
  150. data/sig/openai/models/realtime/session_update_event.rbs +14 -4
  151. data/sig/openai/models/realtime/session_updated_event.rbs +14 -4
  152. data/sig/openai/models/realtime/transcription_session_created.rbs +4 -254
  153. data/sig/openai/models/realtime/transcription_session_update.rbs +154 -4
  154. data/sig/openai/models/realtime/transcription_session_updated_event.rbs +4 -254
  155. metadata +59 -5
  156. data/lib/openai/models/realtime/realtime_client_secret_config.rb +0 -64
  157. data/rbi/openai/models/realtime/realtime_client_secret_config.rbi +0 -147
  158. data/sig/openai/models/realtime/realtime_client_secret_config.rbs +0 -60
@@ -1,147 +0,0 @@
1
- # typed: strong
2
-
3
- module OpenAI
4
- module Models
5
- module Realtime
6
- class RealtimeClientSecretConfig < OpenAI::Internal::Type::BaseModel
7
- OrHash =
8
- T.type_alias do
9
- T.any(
10
- OpenAI::Realtime::RealtimeClientSecretConfig,
11
- OpenAI::Internal::AnyHash
12
- )
13
- end
14
-
15
- # Configuration for the ephemeral token expiration.
16
- sig do
17
- returns(
18
- T.nilable(
19
- OpenAI::Realtime::RealtimeClientSecretConfig::ExpiresAfter
20
- )
21
- )
22
- end
23
- attr_reader :expires_after
24
-
25
- sig do
26
- params(
27
- expires_after:
28
- OpenAI::Realtime::RealtimeClientSecretConfig::ExpiresAfter::OrHash
29
- ).void
30
- end
31
- attr_writer :expires_after
32
-
33
- # Configuration options for the generated client secret.
34
- sig do
35
- params(
36
- expires_after:
37
- OpenAI::Realtime::RealtimeClientSecretConfig::ExpiresAfter::OrHash
38
- ).returns(T.attached_class)
39
- end
40
- def self.new(
41
- # Configuration for the ephemeral token expiration.
42
- expires_after: nil
43
- )
44
- end
45
-
46
- sig do
47
- override.returns(
48
- {
49
- expires_after:
50
- OpenAI::Realtime::RealtimeClientSecretConfig::ExpiresAfter
51
- }
52
- )
53
- end
54
- def to_hash
55
- end
56
-
57
- class ExpiresAfter < OpenAI::Internal::Type::BaseModel
58
- OrHash =
59
- T.type_alias do
60
- T.any(
61
- OpenAI::Realtime::RealtimeClientSecretConfig::ExpiresAfter,
62
- OpenAI::Internal::AnyHash
63
- )
64
- end
65
-
66
- # The anchor point for the ephemeral token expiration. Only `created_at` is
67
- # currently supported.
68
- sig do
69
- returns(
70
- OpenAI::Realtime::RealtimeClientSecretConfig::ExpiresAfter::Anchor::OrSymbol
71
- )
72
- end
73
- attr_accessor :anchor
74
-
75
- # The number of seconds from the anchor point to the expiration. Select a value
76
- # between `10` and `7200`.
77
- sig { returns(T.nilable(Integer)) }
78
- attr_reader :seconds
79
-
80
- sig { params(seconds: Integer).void }
81
- attr_writer :seconds
82
-
83
- # Configuration for the ephemeral token expiration.
84
- sig do
85
- params(
86
- anchor:
87
- OpenAI::Realtime::RealtimeClientSecretConfig::ExpiresAfter::Anchor::OrSymbol,
88
- seconds: Integer
89
- ).returns(T.attached_class)
90
- end
91
- def self.new(
92
- # The anchor point for the ephemeral token expiration. Only `created_at` is
93
- # currently supported.
94
- anchor:,
95
- # The number of seconds from the anchor point to the expiration. Select a value
96
- # between `10` and `7200`.
97
- seconds: nil
98
- )
99
- end
100
-
101
- sig do
102
- override.returns(
103
- {
104
- anchor:
105
- OpenAI::Realtime::RealtimeClientSecretConfig::ExpiresAfter::Anchor::OrSymbol,
106
- seconds: Integer
107
- }
108
- )
109
- end
110
- def to_hash
111
- end
112
-
113
- # The anchor point for the ephemeral token expiration. Only `created_at` is
114
- # currently supported.
115
- module Anchor
116
- extend OpenAI::Internal::Type::Enum
117
-
118
- TaggedSymbol =
119
- T.type_alias do
120
- T.all(
121
- Symbol,
122
- OpenAI::Realtime::RealtimeClientSecretConfig::ExpiresAfter::Anchor
123
- )
124
- end
125
- OrSymbol = T.type_alias { T.any(Symbol, String) }
126
-
127
- CREATED_AT =
128
- T.let(
129
- :created_at,
130
- OpenAI::Realtime::RealtimeClientSecretConfig::ExpiresAfter::Anchor::TaggedSymbol
131
- )
132
-
133
- sig do
134
- override.returns(
135
- T::Array[
136
- OpenAI::Realtime::RealtimeClientSecretConfig::ExpiresAfter::Anchor::TaggedSymbol
137
- ]
138
- )
139
- end
140
- def self.values
141
- end
142
- end
143
- end
144
- end
145
- end
146
- end
147
- end
@@ -1,60 +0,0 @@
1
- module OpenAI
2
- module Models
3
- module Realtime
4
- type realtime_client_secret_config =
5
- {
6
- expires_after: OpenAI::Realtime::RealtimeClientSecretConfig::ExpiresAfter
7
- }
8
-
9
- class RealtimeClientSecretConfig < OpenAI::Internal::Type::BaseModel
10
- attr_reader expires_after: OpenAI::Realtime::RealtimeClientSecretConfig::ExpiresAfter?
11
-
12
- def expires_after=: (
13
- OpenAI::Realtime::RealtimeClientSecretConfig::ExpiresAfter
14
- ) -> OpenAI::Realtime::RealtimeClientSecretConfig::ExpiresAfter
15
-
16
- def initialize: (
17
- ?expires_after: OpenAI::Realtime::RealtimeClientSecretConfig::ExpiresAfter
18
- ) -> void
19
-
20
- def to_hash: -> {
21
- expires_after: OpenAI::Realtime::RealtimeClientSecretConfig::ExpiresAfter
22
- }
23
-
24
- type expires_after =
25
- {
26
- anchor: OpenAI::Models::Realtime::RealtimeClientSecretConfig::ExpiresAfter::anchor,
27
- seconds: Integer
28
- }
29
-
30
- class ExpiresAfter < OpenAI::Internal::Type::BaseModel
31
- attr_accessor anchor: OpenAI::Models::Realtime::RealtimeClientSecretConfig::ExpiresAfter::anchor
32
-
33
- attr_reader seconds: Integer?
34
-
35
- def seconds=: (Integer) -> Integer
36
-
37
- def initialize: (
38
- anchor: OpenAI::Models::Realtime::RealtimeClientSecretConfig::ExpiresAfter::anchor,
39
- ?seconds: Integer
40
- ) -> void
41
-
42
- def to_hash: -> {
43
- anchor: OpenAI::Models::Realtime::RealtimeClientSecretConfig::ExpiresAfter::anchor,
44
- seconds: Integer
45
- }
46
-
47
- type anchor = :created_at
48
-
49
- module Anchor
50
- extend OpenAI::Internal::Type::Enum
51
-
52
- CREATED_AT: :created_at
53
-
54
- def self?.values: -> ::Array[OpenAI::Models::Realtime::RealtimeClientSecretConfig::ExpiresAfter::anchor]
55
- end
56
- end
57
- end
58
- end
59
- end
60
- end