openai 0.28.1 → 0.30.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 (196) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +1 -1
  4. data/lib/openai/client.rb +4 -0
  5. data/lib/openai/internal/conversation_cursor_page.rb +2 -2
  6. data/lib/openai/models/all_models.rb +2 -0
  7. data/lib/openai/models/beta/chatkit/chat_session.rb +94 -0
  8. data/lib/openai/models/beta/chatkit/chat_session_automatic_thread_titling.rb +22 -0
  9. data/lib/openai/models/beta/chatkit/chat_session_chatkit_configuration.rb +38 -0
  10. data/lib/openai/models/beta/chatkit/chat_session_chatkit_configuration_param.rb +125 -0
  11. data/lib/openai/models/beta/chatkit/chat_session_expires_after_param.rb +30 -0
  12. data/lib/openai/models/beta/chatkit/chat_session_file_upload.rb +38 -0
  13. data/lib/openai/models/beta/chatkit/chat_session_history.rb +34 -0
  14. data/lib/openai/models/beta/chatkit/chat_session_rate_limits.rb +22 -0
  15. data/lib/openai/models/beta/chatkit/chat_session_rate_limits_param.rb +22 -0
  16. data/lib/openai/models/beta/chatkit/chat_session_status.rb +20 -0
  17. data/lib/openai/models/beta/chatkit/chat_session_workflow_param.rb +80 -0
  18. data/lib/openai/models/beta/chatkit/chatkit_attachment.rb +69 -0
  19. data/lib/openai/models/beta/chatkit/chatkit_response_output_text.rb +143 -0
  20. data/lib/openai/models/beta/chatkit/chatkit_thread.rb +145 -0
  21. data/lib/openai/models/beta/chatkit/chatkit_thread_assistant_message_item.rb +65 -0
  22. data/lib/openai/models/beta/chatkit/chatkit_thread_item_list.rb +374 -0
  23. data/lib/openai/models/beta/chatkit/chatkit_thread_user_message_item.rb +183 -0
  24. data/lib/openai/models/beta/chatkit/chatkit_widget_item.rb +64 -0
  25. data/lib/openai/models/beta/chatkit/session_cancel_params.rb +18 -0
  26. data/lib/openai/models/beta/chatkit/session_create_params.rb +63 -0
  27. data/lib/openai/models/beta/chatkit/thread_delete_params.rb +18 -0
  28. data/lib/openai/models/beta/chatkit/thread_delete_response.rb +39 -0
  29. data/lib/openai/models/beta/chatkit/thread_list_items_params.rb +66 -0
  30. data/lib/openai/models/beta/chatkit/thread_list_params.rb +75 -0
  31. data/lib/openai/models/beta/chatkit/thread_retrieve_params.rb +18 -0
  32. data/lib/openai/models/beta/chatkit_upload_file_params.rb +28 -0
  33. data/lib/openai/models/beta/chatkit_upload_file_response.rb +25 -0
  34. data/lib/openai/models/beta/chatkit_workflow.rb +78 -0
  35. data/lib/openai/models/beta/file_part.rb +56 -0
  36. data/lib/openai/models/beta/image_part.rb +64 -0
  37. data/lib/openai/models/image_edit_params.rb +4 -2
  38. data/lib/openai/models/image_model.rb +1 -0
  39. data/lib/openai/models/realtime/call_accept_params.rb +16 -0
  40. data/lib/openai/models/realtime/call_hangup_params.rb +16 -0
  41. data/lib/openai/models/realtime/call_refer_params.rb +28 -0
  42. data/lib/openai/models/realtime/call_reject_params.rb +28 -0
  43. data/lib/openai/models/realtime/realtime_session.rb +4 -0
  44. data/lib/openai/models/realtime/realtime_session_create_request.rb +12 -0
  45. data/lib/openai/models/realtime/realtime_session_create_response.rb +12 -0
  46. data/lib/openai/models/responses/tool.rb +5 -2
  47. data/lib/openai/models/responses_model.rb +2 -0
  48. data/lib/openai/models/video.rb +122 -0
  49. data/lib/openai/models/video_create_error.rb +21 -0
  50. data/lib/openai/models/video_create_params.rb +54 -0
  51. data/lib/openai/models/video_delete_params.rb +14 -0
  52. data/lib/openai/models/video_delete_response.rb +35 -0
  53. data/lib/openai/models/video_download_content_params.rb +34 -0
  54. data/lib/openai/models/video_list_params.rb +54 -0
  55. data/lib/openai/models/video_model.rb +15 -0
  56. data/lib/openai/models/video_remix_params.rb +22 -0
  57. data/lib/openai/models/video_retrieve_params.rb +14 -0
  58. data/lib/openai/models/video_seconds.rb +16 -0
  59. data/lib/openai/models/video_size.rb +17 -0
  60. data/lib/openai/models.rb +22 -0
  61. data/lib/openai/resources/beta/chatkit/sessions.rb +71 -0
  62. data/lib/openai/resources/beta/chatkit/threads.rb +126 -0
  63. data/lib/openai/resources/beta/chatkit.rb +50 -0
  64. data/lib/openai/resources/beta.rb +4 -0
  65. data/lib/openai/resources/realtime/calls.rb +143 -0
  66. data/lib/openai/resources/realtime.rb +4 -0
  67. data/lib/openai/resources/videos.rb +165 -0
  68. data/lib/openai/version.rb +1 -1
  69. data/lib/openai.rb +52 -1
  70. data/rbi/openai/client.rbi +3 -0
  71. data/rbi/openai/models/all_models.rbi +10 -0
  72. data/rbi/openai/models/beta/chatkit/chat_session.rbi +141 -0
  73. data/rbi/openai/models/beta/chatkit/chat_session_automatic_thread_titling.rbi +35 -0
  74. data/rbi/openai/models/beta/chatkit/chat_session_chatkit_configuration.rbi +87 -0
  75. data/rbi/openai/models/beta/chatkit/chat_session_chatkit_configuration_param.rbi +256 -0
  76. data/rbi/openai/models/beta/chatkit/chat_session_expires_after_param.rbi +43 -0
  77. data/rbi/openai/models/beta/chatkit/chat_session_file_upload.rbi +61 -0
  78. data/rbi/openai/models/beta/chatkit/chat_session_history.rbi +52 -0
  79. data/rbi/openai/models/beta/chatkit/chat_session_rate_limits.rbi +37 -0
  80. data/rbi/openai/models/beta/chatkit/chat_session_rate_limits_param.rbi +40 -0
  81. data/rbi/openai/models/beta/chatkit/chat_session_status.rbi +43 -0
  82. data/rbi/openai/models/beta/chatkit/chat_session_workflow_param.rbi +166 -0
  83. data/rbi/openai/models/beta/chatkit/chatkit_attachment.rbi +116 -0
  84. data/rbi/openai/models/beta/chatkit/chatkit_response_output_text.rbi +287 -0
  85. data/rbi/openai/models/beta/chatkit/chatkit_thread.rbi +220 -0
  86. data/rbi/openai/models/beta/chatkit/chatkit_thread_assistant_message_item.rbi +94 -0
  87. data/rbi/openai/models/beta/chatkit/chatkit_thread_item_list.rbi +590 -0
  88. data/rbi/openai/models/beta/chatkit/chatkit_thread_user_message_item.rbi +324 -0
  89. data/rbi/openai/models/beta/chatkit/chatkit_widget_item.rbi +87 -0
  90. data/rbi/openai/models/beta/chatkit/session_cancel_params.rbi +34 -0
  91. data/rbi/openai/models/beta/chatkit/session_create_params.rbi +136 -0
  92. data/rbi/openai/models/beta/chatkit/thread_delete_params.rbi +34 -0
  93. data/rbi/openai/models/beta/chatkit/thread_delete_response.rbi +55 -0
  94. data/rbi/openai/models/beta/chatkit/thread_list_items_params.rbi +138 -0
  95. data/rbi/openai/models/beta/chatkit/thread_list_params.rbi +145 -0
  96. data/rbi/openai/models/beta/chatkit/thread_retrieve_params.rbi +34 -0
  97. data/rbi/openai/models/beta/chatkit_upload_file_params.rbi +50 -0
  98. data/rbi/openai/models/beta/chatkit_upload_file_response.rbi +25 -0
  99. data/rbi/openai/models/beta/chatkit_workflow.rbi +134 -0
  100. data/rbi/openai/models/beta/file_part.rbi +74 -0
  101. data/rbi/openai/models/beta/image_part.rbi +82 -0
  102. data/rbi/openai/models/image_edit_params.rbi +6 -3
  103. data/rbi/openai/models/image_model.rbi +2 -0
  104. data/rbi/openai/models/realtime/call_accept_params.rbi +29 -0
  105. data/rbi/openai/models/realtime/call_hangup_params.rbi +29 -0
  106. data/rbi/openai/models/realtime/call_refer_params.rbi +44 -0
  107. data/rbi/openai/models/realtime/call_reject_params.rbi +47 -0
  108. data/rbi/openai/models/realtime/realtime_session.rbi +20 -0
  109. data/rbi/openai/models/realtime/realtime_session_create_request.rbi +20 -0
  110. data/rbi/openai/models/realtime/realtime_session_create_response.rbi +20 -0
  111. data/rbi/openai/models/responses/tool.rbi +11 -3
  112. data/rbi/openai/models/responses_model.rbi +10 -0
  113. data/rbi/openai/models/video.rbi +143 -0
  114. data/rbi/openai/models/video_create_error.rbi +26 -0
  115. data/rbi/openai/models/video_create_params.rbi +87 -0
  116. data/rbi/openai/models/video_delete_params.rbi +27 -0
  117. data/rbi/openai/models/video_delete_response.rbi +46 -0
  118. data/rbi/openai/models/video_download_content_params.rbi +89 -0
  119. data/rbi/openai/models/video_list_params.rbi +91 -0
  120. data/rbi/openai/models/video_model.rbi +19 -0
  121. data/rbi/openai/models/video_remix_params.rbi +40 -0
  122. data/rbi/openai/models/video_retrieve_params.rbi +27 -0
  123. data/rbi/openai/models/video_seconds.rbi +20 -0
  124. data/rbi/openai/models/video_size.rbi +23 -0
  125. data/rbi/openai/models.rbi +22 -0
  126. data/rbi/openai/resources/beta/chatkit/sessions.rbi +61 -0
  127. data/rbi/openai/resources/beta/chatkit/threads.rbi +110 -0
  128. data/rbi/openai/resources/beta/chatkit.rbi +35 -0
  129. data/rbi/openai/resources/beta.rbi +3 -0
  130. data/rbi/openai/resources/images.rbi +4 -2
  131. data/rbi/openai/resources/realtime/calls.rbi +182 -0
  132. data/rbi/openai/resources/realtime.rbi +3 -0
  133. data/rbi/openai/resources/videos.rbi +121 -0
  134. data/sig/openai/client.rbs +2 -0
  135. data/sig/openai/models/all_models.rbs +4 -0
  136. data/sig/openai/models/beta/chatkit/chat_session.rbs +69 -0
  137. data/sig/openai/models/beta/chatkit/chat_session_automatic_thread_titling.rbs +17 -0
  138. data/sig/openai/models/beta/chatkit/chat_session_chatkit_configuration.rbs +34 -0
  139. data/sig/openai/models/beta/chatkit/chat_session_chatkit_configuration_param.rbs +103 -0
  140. data/sig/openai/models/beta/chatkit/chat_session_expires_after_param.rbs +20 -0
  141. data/sig/openai/models/beta/chatkit/chat_session_file_upload.rbs +30 -0
  142. data/sig/openai/models/beta/chatkit/chat_session_history.rbs +19 -0
  143. data/sig/openai/models/beta/chatkit/chat_session_rate_limits.rbs +18 -0
  144. data/sig/openai/models/beta/chatkit/chat_session_rate_limits_param.rbs +20 -0
  145. data/sig/openai/models/beta/chatkit/chat_session_status.rbs +19 -0
  146. data/sig/openai/models/beta/chatkit/chat_session_workflow_param.rbs +69 -0
  147. data/sig/openai/models/beta/chatkit/chatkit_attachment.rbs +57 -0
  148. data/sig/openai/models/beta/chatkit/chatkit_response_output_text.rbs +114 -0
  149. data/sig/openai/models/beta/chatkit/chatkit_thread.rbs +96 -0
  150. data/sig/openai/models/beta/chatkit/chatkit_thread_assistant_message_item.rbs +51 -0
  151. data/sig/openai/models/beta/chatkit/chatkit_thread_item_list.rbs +276 -0
  152. data/sig/openai/models/beta/chatkit/chatkit_thread_user_message_item.rbs +127 -0
  153. data/sig/openai/models/beta/chatkit/chatkit_widget_item.rbs +51 -0
  154. data/sig/openai/models/beta/chatkit/session_cancel_params.rbs +19 -0
  155. data/sig/openai/models/beta/chatkit/session_create_params.rbs +62 -0
  156. data/sig/openai/models/beta/chatkit/thread_delete_params.rbs +19 -0
  157. data/sig/openai/models/beta/chatkit/thread_delete_response.rbs +30 -0
  158. data/sig/openai/models/beta/chatkit/thread_list_items_params.rbs +66 -0
  159. data/sig/openai/models/beta/chatkit/thread_list_params.rbs +73 -0
  160. data/sig/openai/models/beta/chatkit/thread_retrieve_params.rbs +19 -0
  161. data/sig/openai/models/beta/chatkit_upload_file_params.rbs +26 -0
  162. data/sig/openai/models/beta/chatkit_upload_file_response.rbs +14 -0
  163. data/sig/openai/models/beta/chatkit_workflow.rbs +55 -0
  164. data/sig/openai/models/beta/file_part.rbs +42 -0
  165. data/sig/openai/models/beta/image_part.rbs +47 -0
  166. data/sig/openai/models/image_model.rbs +3 -1
  167. data/sig/openai/models/realtime/call_accept_params.rbs +17 -0
  168. data/sig/openai/models/realtime/call_hangup_params.rbs +17 -0
  169. data/sig/openai/models/realtime/call_refer_params.rbs +25 -0
  170. data/sig/openai/models/realtime/call_reject_params.rbs +27 -0
  171. data/sig/openai/models/realtime/realtime_session.rbs +8 -0
  172. data/sig/openai/models/realtime/realtime_session_create_request.rbs +8 -0
  173. data/sig/openai/models/realtime/realtime_session_create_response.rbs +8 -0
  174. data/sig/openai/models/responses/tool.rbs +2 -1
  175. data/sig/openai/models/responses_model.rbs +4 -0
  176. data/sig/openai/models/video.rbs +88 -0
  177. data/sig/openai/models/video_create_error.rbs +15 -0
  178. data/sig/openai/models/video_create_params.rbs +58 -0
  179. data/sig/openai/models/video_delete_params.rbs +14 -0
  180. data/sig/openai/models/video_delete_response.rbs +22 -0
  181. data/sig/openai/models/video_download_content_params.rbs +40 -0
  182. data/sig/openai/models/video_list_params.rbs +55 -0
  183. data/sig/openai/models/video_model.rbs +14 -0
  184. data/sig/openai/models/video_remix_params.rbs +23 -0
  185. data/sig/openai/models/video_retrieve_params.rbs +15 -0
  186. data/sig/openai/models/video_seconds.rbs +15 -0
  187. data/sig/openai/models/video_size.rbs +16 -0
  188. data/sig/openai/models.rbs +22 -0
  189. data/sig/openai/resources/beta/chatkit/sessions.rbs +25 -0
  190. data/sig/openai/resources/beta/chatkit/threads.rbs +39 -0
  191. data/sig/openai/resources/beta/chatkit.rbs +18 -0
  192. data/sig/openai/resources/beta.rbs +2 -0
  193. data/sig/openai/resources/realtime/calls.rbs +43 -0
  194. data/sig/openai/resources/realtime.rbs +2 -0
  195. data/sig/openai/resources/videos.rbs +45 -0
  196. metadata +155 -2
@@ -0,0 +1,220 @@
1
+ # typed: strong
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Beta
6
+ ChatKitThread = ChatKit::ChatKitThread
7
+
8
+ module ChatKit
9
+ class ChatKitThread < OpenAI::Internal::Type::BaseModel
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ OpenAI::Beta::ChatKit::ChatKitThread,
14
+ OpenAI::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ # Identifier of the thread.
19
+ sig { returns(String) }
20
+ attr_accessor :id
21
+
22
+ # Unix timestamp (in seconds) for when the thread was created.
23
+ sig { returns(Integer) }
24
+ attr_accessor :created_at
25
+
26
+ # Type discriminator that is always `chatkit.thread`.
27
+ sig { returns(Symbol) }
28
+ attr_accessor :object
29
+
30
+ # Current status for the thread. Defaults to `active` for newly created threads.
31
+ sig do
32
+ returns(OpenAI::Beta::ChatKit::ChatKitThread::Status::Variants)
33
+ end
34
+ attr_accessor :status
35
+
36
+ # Optional human-readable title for the thread. Defaults to null when no title has
37
+ # been generated.
38
+ sig { returns(T.nilable(String)) }
39
+ attr_accessor :title
40
+
41
+ # Free-form string that identifies your end user who owns the thread.
42
+ sig { returns(String) }
43
+ attr_accessor :user
44
+
45
+ # Represents a ChatKit thread and its current status.
46
+ sig do
47
+ params(
48
+ id: String,
49
+ created_at: Integer,
50
+ status:
51
+ T.any(
52
+ OpenAI::Beta::ChatKit::ChatKitThread::Status::Active::OrHash,
53
+ OpenAI::Beta::ChatKit::ChatKitThread::Status::Locked::OrHash,
54
+ OpenAI::Beta::ChatKit::ChatKitThread::Status::Closed::OrHash
55
+ ),
56
+ title: T.nilable(String),
57
+ user: String,
58
+ object: Symbol
59
+ ).returns(T.attached_class)
60
+ end
61
+ def self.new(
62
+ # Identifier of the thread.
63
+ id:,
64
+ # Unix timestamp (in seconds) for when the thread was created.
65
+ created_at:,
66
+ # Current status for the thread. Defaults to `active` for newly created threads.
67
+ status:,
68
+ # Optional human-readable title for the thread. Defaults to null when no title has
69
+ # been generated.
70
+ title:,
71
+ # Free-form string that identifies your end user who owns the thread.
72
+ user:,
73
+ # Type discriminator that is always `chatkit.thread`.
74
+ object: :"chatkit.thread"
75
+ )
76
+ end
77
+
78
+ sig do
79
+ override.returns(
80
+ {
81
+ id: String,
82
+ created_at: Integer,
83
+ object: Symbol,
84
+ status: OpenAI::Beta::ChatKit::ChatKitThread::Status::Variants,
85
+ title: T.nilable(String),
86
+ user: String
87
+ }
88
+ )
89
+ end
90
+ def to_hash
91
+ end
92
+
93
+ # Current status for the thread. Defaults to `active` for newly created threads.
94
+ module Status
95
+ extend OpenAI::Internal::Type::Union
96
+
97
+ Variants =
98
+ T.type_alias do
99
+ T.any(
100
+ OpenAI::Beta::ChatKit::ChatKitThread::Status::Active,
101
+ OpenAI::Beta::ChatKit::ChatKitThread::Status::Locked,
102
+ OpenAI::Beta::ChatKit::ChatKitThread::Status::Closed
103
+ )
104
+ end
105
+
106
+ class Active < OpenAI::Internal::Type::BaseModel
107
+ OrHash =
108
+ T.type_alias do
109
+ T.any(
110
+ OpenAI::Beta::ChatKit::ChatKitThread::Status::Active,
111
+ OpenAI::Internal::AnyHash
112
+ )
113
+ end
114
+
115
+ # Status discriminator that is always `active`.
116
+ sig { returns(Symbol) }
117
+ attr_accessor :type
118
+
119
+ # Indicates that a thread is active.
120
+ sig { params(type: Symbol).returns(T.attached_class) }
121
+ def self.new(
122
+ # Status discriminator that is always `active`.
123
+ type: :active
124
+ )
125
+ end
126
+
127
+ sig { override.returns({ type: Symbol }) }
128
+ def to_hash
129
+ end
130
+ end
131
+
132
+ class Locked < OpenAI::Internal::Type::BaseModel
133
+ OrHash =
134
+ T.type_alias do
135
+ T.any(
136
+ OpenAI::Beta::ChatKit::ChatKitThread::Status::Locked,
137
+ OpenAI::Internal::AnyHash
138
+ )
139
+ end
140
+
141
+ # Reason that the thread was locked. Defaults to null when no reason is recorded.
142
+ sig { returns(T.nilable(String)) }
143
+ attr_accessor :reason
144
+
145
+ # Status discriminator that is always `locked`.
146
+ sig { returns(Symbol) }
147
+ attr_accessor :type
148
+
149
+ # Indicates that a thread is locked and cannot accept new input.
150
+ sig do
151
+ params(reason: T.nilable(String), type: Symbol).returns(
152
+ T.attached_class
153
+ )
154
+ end
155
+ def self.new(
156
+ # Reason that the thread was locked. Defaults to null when no reason is recorded.
157
+ reason:,
158
+ # Status discriminator that is always `locked`.
159
+ type: :locked
160
+ )
161
+ end
162
+
163
+ sig do
164
+ override.returns({ reason: T.nilable(String), type: Symbol })
165
+ end
166
+ def to_hash
167
+ end
168
+ end
169
+
170
+ class Closed < OpenAI::Internal::Type::BaseModel
171
+ OrHash =
172
+ T.type_alias do
173
+ T.any(
174
+ OpenAI::Beta::ChatKit::ChatKitThread::Status::Closed,
175
+ OpenAI::Internal::AnyHash
176
+ )
177
+ end
178
+
179
+ # Reason that the thread was closed. Defaults to null when no reason is recorded.
180
+ sig { returns(T.nilable(String)) }
181
+ attr_accessor :reason
182
+
183
+ # Status discriminator that is always `closed`.
184
+ sig { returns(Symbol) }
185
+ attr_accessor :type
186
+
187
+ # Indicates that a thread has been closed.
188
+ sig do
189
+ params(reason: T.nilable(String), type: Symbol).returns(
190
+ T.attached_class
191
+ )
192
+ end
193
+ def self.new(
194
+ # Reason that the thread was closed. Defaults to null when no reason is recorded.
195
+ reason:,
196
+ # Status discriminator that is always `closed`.
197
+ type: :closed
198
+ )
199
+ end
200
+
201
+ sig do
202
+ override.returns({ reason: T.nilable(String), type: Symbol })
203
+ end
204
+ def to_hash
205
+ end
206
+ end
207
+
208
+ sig do
209
+ override.returns(
210
+ T::Array[OpenAI::Beta::ChatKit::ChatKitThread::Status::Variants]
211
+ )
212
+ end
213
+ def self.variants
214
+ end
215
+ end
216
+ end
217
+ end
218
+ end
219
+ end
220
+ end
@@ -0,0 +1,94 @@
1
+ # typed: strong
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Beta
6
+ ChatKitThreadAssistantMessageItem =
7
+ ChatKit::ChatKitThreadAssistantMessageItem
8
+
9
+ module ChatKit
10
+ class ChatKitThreadAssistantMessageItem < OpenAI::Internal::Type::BaseModel
11
+ OrHash =
12
+ T.type_alias do
13
+ T.any(
14
+ OpenAI::Beta::ChatKit::ChatKitThreadAssistantMessageItem,
15
+ OpenAI::Internal::AnyHash
16
+ )
17
+ end
18
+
19
+ # Identifier of the thread item.
20
+ sig { returns(String) }
21
+ attr_accessor :id
22
+
23
+ # Ordered assistant response segments.
24
+ sig do
25
+ returns(T::Array[OpenAI::Beta::ChatKit::ChatKitResponseOutputText])
26
+ end
27
+ attr_accessor :content
28
+
29
+ # Unix timestamp (in seconds) for when the item was created.
30
+ sig { returns(Integer) }
31
+ attr_accessor :created_at
32
+
33
+ # Type discriminator that is always `chatkit.thread_item`.
34
+ sig { returns(Symbol) }
35
+ attr_accessor :object
36
+
37
+ # Identifier of the parent thread.
38
+ sig { returns(String) }
39
+ attr_accessor :thread_id
40
+
41
+ # Type discriminator that is always `chatkit.assistant_message`.
42
+ sig { returns(Symbol) }
43
+ attr_accessor :type
44
+
45
+ # Assistant-authored message within a thread.
46
+ sig do
47
+ params(
48
+ id: String,
49
+ content:
50
+ T::Array[
51
+ OpenAI::Beta::ChatKit::ChatKitResponseOutputText::OrHash
52
+ ],
53
+ created_at: Integer,
54
+ thread_id: String,
55
+ object: Symbol,
56
+ type: Symbol
57
+ ).returns(T.attached_class)
58
+ end
59
+ def self.new(
60
+ # Identifier of the thread item.
61
+ id:,
62
+ # Ordered assistant response segments.
63
+ content:,
64
+ # Unix timestamp (in seconds) for when the item was created.
65
+ created_at:,
66
+ # Identifier of the parent thread.
67
+ thread_id:,
68
+ # Type discriminator that is always `chatkit.thread_item`.
69
+ object: :"chatkit.thread_item",
70
+ # Type discriminator that is always `chatkit.assistant_message`.
71
+ type: :"chatkit.assistant_message"
72
+ )
73
+ end
74
+
75
+ sig do
76
+ override.returns(
77
+ {
78
+ id: String,
79
+ content:
80
+ T::Array[OpenAI::Beta::ChatKit::ChatKitResponseOutputText],
81
+ created_at: Integer,
82
+ object: Symbol,
83
+ thread_id: String,
84
+ type: Symbol
85
+ }
86
+ )
87
+ end
88
+ def to_hash
89
+ end
90
+ end
91
+ end
92
+ end
93
+ end
94
+ end