openai 0.29.0 → 0.31.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 (222) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +22 -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/assistant_create_params.rb +3 -0
  8. data/lib/openai/models/beta/assistant_update_params.rb +3 -0
  9. data/lib/openai/models/beta/chatkit/chat_session.rb +94 -0
  10. data/lib/openai/models/beta/chatkit/chat_session_automatic_thread_titling.rb +22 -0
  11. data/lib/openai/models/beta/chatkit/chat_session_chatkit_configuration.rb +38 -0
  12. data/lib/openai/models/beta/chatkit/chat_session_chatkit_configuration_param.rb +125 -0
  13. data/lib/openai/models/beta/chatkit/chat_session_expires_after_param.rb +30 -0
  14. data/lib/openai/models/beta/chatkit/chat_session_file_upload.rb +38 -0
  15. data/lib/openai/models/beta/chatkit/chat_session_history.rb +34 -0
  16. data/lib/openai/models/beta/chatkit/chat_session_rate_limits.rb +22 -0
  17. data/lib/openai/models/beta/chatkit/chat_session_rate_limits_param.rb +22 -0
  18. data/lib/openai/models/beta/chatkit/chat_session_status.rb +20 -0
  19. data/lib/openai/models/beta/chatkit/chat_session_workflow_param.rb +80 -0
  20. data/lib/openai/models/beta/chatkit/chatkit_attachment.rb +69 -0
  21. data/lib/openai/models/beta/chatkit/chatkit_response_output_text.rb +143 -0
  22. data/lib/openai/models/beta/chatkit/chatkit_thread.rb +145 -0
  23. data/lib/openai/models/beta/chatkit/chatkit_thread_assistant_message_item.rb +65 -0
  24. data/lib/openai/models/beta/chatkit/chatkit_thread_item_list.rb +374 -0
  25. data/lib/openai/models/beta/chatkit/chatkit_thread_user_message_item.rb +183 -0
  26. data/lib/openai/models/beta/chatkit/chatkit_widget_item.rb +64 -0
  27. data/lib/openai/models/beta/chatkit/session_cancel_params.rb +18 -0
  28. data/lib/openai/models/beta/chatkit/session_create_params.rb +63 -0
  29. data/lib/openai/models/beta/chatkit/thread_delete_params.rb +18 -0
  30. data/lib/openai/models/beta/chatkit/thread_delete_response.rb +39 -0
  31. data/lib/openai/models/beta/chatkit/thread_list_items_params.rb +66 -0
  32. data/lib/openai/models/beta/chatkit/thread_list_params.rb +75 -0
  33. data/lib/openai/models/beta/chatkit/thread_retrieve_params.rb +18 -0
  34. data/lib/openai/models/beta/chatkit_upload_file_params.rb +28 -0
  35. data/lib/openai/models/beta/chatkit_upload_file_response.rb +25 -0
  36. data/lib/openai/models/beta/chatkit_workflow.rb +78 -0
  37. data/lib/openai/models/beta/file_part.rb +56 -0
  38. data/lib/openai/models/beta/image_part.rb +64 -0
  39. data/lib/openai/models/beta/threads/run_create_params.rb +3 -0
  40. data/lib/openai/models/chat/completion_create_params.rb +3 -0
  41. data/lib/openai/models/comparison_filter.rb +29 -6
  42. data/lib/openai/models/evals/create_eval_completions_run_data_source.rb +3 -0
  43. data/lib/openai/models/evals/run_cancel_response.rb +6 -0
  44. data/lib/openai/models/evals/run_create_params.rb +6 -0
  45. data/lib/openai/models/evals/run_create_response.rb +6 -0
  46. data/lib/openai/models/evals/run_list_response.rb +6 -0
  47. data/lib/openai/models/evals/run_retrieve_response.rb +6 -0
  48. data/lib/openai/models/graders/score_model_grader.rb +3 -0
  49. data/lib/openai/models/image_edit_params.rb +4 -2
  50. data/lib/openai/models/image_model.rb +1 -0
  51. data/lib/openai/models/realtime/realtime_session.rb +4 -0
  52. data/lib/openai/models/realtime/realtime_session_create_request.rb +12 -0
  53. data/lib/openai/models/realtime/realtime_session_create_response.rb +12 -0
  54. data/lib/openai/models/reasoning.rb +3 -0
  55. data/lib/openai/models/reasoning_effort.rb +3 -0
  56. data/lib/openai/models/responses/tool.rb +5 -2
  57. data/lib/openai/models/responses_model.rb +2 -0
  58. data/lib/openai/models/vector_stores/vector_store_file.rb +3 -3
  59. data/lib/openai/models/video.rb +122 -0
  60. data/lib/openai/models/video_create_error.rb +21 -0
  61. data/lib/openai/models/video_create_params.rb +54 -0
  62. data/lib/openai/models/video_delete_params.rb +14 -0
  63. data/lib/openai/models/video_delete_response.rb +35 -0
  64. data/lib/openai/models/video_download_content_params.rb +34 -0
  65. data/lib/openai/models/video_list_params.rb +54 -0
  66. data/lib/openai/models/video_model.rb +15 -0
  67. data/lib/openai/models/video_remix_params.rb +22 -0
  68. data/lib/openai/models/video_retrieve_params.rb +14 -0
  69. data/lib/openai/models/video_seconds.rb +16 -0
  70. data/lib/openai/models/video_size.rb +17 -0
  71. data/lib/openai/models.rb +22 -0
  72. data/lib/openai/resources/beta/chatkit/sessions.rb +71 -0
  73. data/lib/openai/resources/beta/chatkit/threads.rb +126 -0
  74. data/lib/openai/resources/beta/chatkit.rb +50 -0
  75. data/lib/openai/resources/beta.rb +4 -0
  76. data/lib/openai/resources/files.rb +1 -1
  77. data/lib/openai/resources/videos.rb +165 -0
  78. data/lib/openai/version.rb +1 -1
  79. data/lib/openai.rb +46 -0
  80. data/rbi/openai/client.rbi +3 -0
  81. data/rbi/openai/models/all_models.rbi +10 -0
  82. data/rbi/openai/models/beta/assistant_create_params.rbi +6 -0
  83. data/rbi/openai/models/beta/assistant_update_params.rbi +6 -0
  84. data/rbi/openai/models/beta/chatkit/chat_session.rbi +141 -0
  85. data/rbi/openai/models/beta/chatkit/chat_session_automatic_thread_titling.rbi +35 -0
  86. data/rbi/openai/models/beta/chatkit/chat_session_chatkit_configuration.rbi +87 -0
  87. data/rbi/openai/models/beta/chatkit/chat_session_chatkit_configuration_param.rbi +256 -0
  88. data/rbi/openai/models/beta/chatkit/chat_session_expires_after_param.rbi +43 -0
  89. data/rbi/openai/models/beta/chatkit/chat_session_file_upload.rbi +61 -0
  90. data/rbi/openai/models/beta/chatkit/chat_session_history.rbi +52 -0
  91. data/rbi/openai/models/beta/chatkit/chat_session_rate_limits.rbi +37 -0
  92. data/rbi/openai/models/beta/chatkit/chat_session_rate_limits_param.rbi +40 -0
  93. data/rbi/openai/models/beta/chatkit/chat_session_status.rbi +43 -0
  94. data/rbi/openai/models/beta/chatkit/chat_session_workflow_param.rbi +166 -0
  95. data/rbi/openai/models/beta/chatkit/chatkit_attachment.rbi +116 -0
  96. data/rbi/openai/models/beta/chatkit/chatkit_response_output_text.rbi +287 -0
  97. data/rbi/openai/models/beta/chatkit/chatkit_thread.rbi +220 -0
  98. data/rbi/openai/models/beta/chatkit/chatkit_thread_assistant_message_item.rbi +94 -0
  99. data/rbi/openai/models/beta/chatkit/chatkit_thread_item_list.rbi +590 -0
  100. data/rbi/openai/models/beta/chatkit/chatkit_thread_user_message_item.rbi +324 -0
  101. data/rbi/openai/models/beta/chatkit/chatkit_widget_item.rbi +87 -0
  102. data/rbi/openai/models/beta/chatkit/session_cancel_params.rbi +34 -0
  103. data/rbi/openai/models/beta/chatkit/session_create_params.rbi +136 -0
  104. data/rbi/openai/models/beta/chatkit/thread_delete_params.rbi +34 -0
  105. data/rbi/openai/models/beta/chatkit/thread_delete_response.rbi +55 -0
  106. data/rbi/openai/models/beta/chatkit/thread_list_items_params.rbi +138 -0
  107. data/rbi/openai/models/beta/chatkit/thread_list_params.rbi +145 -0
  108. data/rbi/openai/models/beta/chatkit/thread_retrieve_params.rbi +34 -0
  109. data/rbi/openai/models/beta/chatkit_upload_file_params.rbi +50 -0
  110. data/rbi/openai/models/beta/chatkit_upload_file_response.rbi +25 -0
  111. data/rbi/openai/models/beta/chatkit_workflow.rbi +134 -0
  112. data/rbi/openai/models/beta/file_part.rbi +74 -0
  113. data/rbi/openai/models/beta/image_part.rbi +82 -0
  114. data/rbi/openai/models/beta/threads/run_create_params.rbi +6 -0
  115. data/rbi/openai/models/chat/completion_create_params.rbi +6 -0
  116. data/rbi/openai/models/comparison_filter.rbi +43 -4
  117. data/rbi/openai/models/eval_create_response.rbi +4 -4
  118. data/rbi/openai/models/eval_list_response.rbi +4 -4
  119. data/rbi/openai/models/eval_retrieve_response.rbi +4 -4
  120. data/rbi/openai/models/eval_update_response.rbi +4 -4
  121. data/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi +6 -0
  122. data/rbi/openai/models/evals/run_cancel_response.rbi +12 -0
  123. data/rbi/openai/models/evals/run_create_params.rbi +12 -0
  124. data/rbi/openai/models/evals/run_create_response.rbi +12 -0
  125. data/rbi/openai/models/evals/run_list_response.rbi +12 -0
  126. data/rbi/openai/models/evals/run_retrieve_response.rbi +12 -0
  127. data/rbi/openai/models/graders/score_model_grader.rbi +6 -0
  128. data/rbi/openai/models/image_edit_params.rbi +6 -3
  129. data/rbi/openai/models/image_model.rbi +2 -0
  130. data/rbi/openai/models/realtime/realtime_session.rbi +20 -0
  131. data/rbi/openai/models/realtime/realtime_session_create_request.rbi +20 -0
  132. data/rbi/openai/models/realtime/realtime_session_create_response.rbi +20 -0
  133. data/rbi/openai/models/reasoning.rbi +6 -0
  134. data/rbi/openai/models/reasoning_effort.rbi +3 -0
  135. data/rbi/openai/models/responses/tool.rbi +11 -3
  136. data/rbi/openai/models/responses_model.rbi +10 -0
  137. data/rbi/openai/models/vector_stores/vector_store_file.rbi +3 -3
  138. data/rbi/openai/models/video.rbi +143 -0
  139. data/rbi/openai/models/video_create_error.rbi +26 -0
  140. data/rbi/openai/models/video_create_params.rbi +87 -0
  141. data/rbi/openai/models/video_delete_params.rbi +27 -0
  142. data/rbi/openai/models/video_delete_response.rbi +46 -0
  143. data/rbi/openai/models/video_download_content_params.rbi +89 -0
  144. data/rbi/openai/models/video_list_params.rbi +91 -0
  145. data/rbi/openai/models/video_model.rbi +19 -0
  146. data/rbi/openai/models/video_remix_params.rbi +40 -0
  147. data/rbi/openai/models/video_retrieve_params.rbi +27 -0
  148. data/rbi/openai/models/video_seconds.rbi +20 -0
  149. data/rbi/openai/models/video_size.rbi +23 -0
  150. data/rbi/openai/models.rbi +22 -0
  151. data/rbi/openai/resources/beta/assistants.rbi +6 -0
  152. data/rbi/openai/resources/beta/chatkit/sessions.rbi +61 -0
  153. data/rbi/openai/resources/beta/chatkit/threads.rbi +110 -0
  154. data/rbi/openai/resources/beta/chatkit.rbi +35 -0
  155. data/rbi/openai/resources/beta/threads/runs.rbi +6 -0
  156. data/rbi/openai/resources/beta.rbi +3 -0
  157. data/rbi/openai/resources/chat/completions.rbi +6 -0
  158. data/rbi/openai/resources/files.rbi +1 -1
  159. data/rbi/openai/resources/images.rbi +4 -2
  160. data/rbi/openai/resources/videos.rbi +121 -0
  161. data/sig/openai/client.rbs +2 -0
  162. data/sig/openai/models/all_models.rbs +4 -0
  163. data/sig/openai/models/beta/chatkit/chat_session.rbs +69 -0
  164. data/sig/openai/models/beta/chatkit/chat_session_automatic_thread_titling.rbs +17 -0
  165. data/sig/openai/models/beta/chatkit/chat_session_chatkit_configuration.rbs +34 -0
  166. data/sig/openai/models/beta/chatkit/chat_session_chatkit_configuration_param.rbs +103 -0
  167. data/sig/openai/models/beta/chatkit/chat_session_expires_after_param.rbs +20 -0
  168. data/sig/openai/models/beta/chatkit/chat_session_file_upload.rbs +30 -0
  169. data/sig/openai/models/beta/chatkit/chat_session_history.rbs +19 -0
  170. data/sig/openai/models/beta/chatkit/chat_session_rate_limits.rbs +18 -0
  171. data/sig/openai/models/beta/chatkit/chat_session_rate_limits_param.rbs +20 -0
  172. data/sig/openai/models/beta/chatkit/chat_session_status.rbs +19 -0
  173. data/sig/openai/models/beta/chatkit/chat_session_workflow_param.rbs +69 -0
  174. data/sig/openai/models/beta/chatkit/chatkit_attachment.rbs +57 -0
  175. data/sig/openai/models/beta/chatkit/chatkit_response_output_text.rbs +114 -0
  176. data/sig/openai/models/beta/chatkit/chatkit_thread.rbs +96 -0
  177. data/sig/openai/models/beta/chatkit/chatkit_thread_assistant_message_item.rbs +51 -0
  178. data/sig/openai/models/beta/chatkit/chatkit_thread_item_list.rbs +276 -0
  179. data/sig/openai/models/beta/chatkit/chatkit_thread_user_message_item.rbs +127 -0
  180. data/sig/openai/models/beta/chatkit/chatkit_widget_item.rbs +51 -0
  181. data/sig/openai/models/beta/chatkit/session_cancel_params.rbs +19 -0
  182. data/sig/openai/models/beta/chatkit/session_create_params.rbs +62 -0
  183. data/sig/openai/models/beta/chatkit/thread_delete_params.rbs +19 -0
  184. data/sig/openai/models/beta/chatkit/thread_delete_response.rbs +30 -0
  185. data/sig/openai/models/beta/chatkit/thread_list_items_params.rbs +66 -0
  186. data/sig/openai/models/beta/chatkit/thread_list_params.rbs +73 -0
  187. data/sig/openai/models/beta/chatkit/thread_retrieve_params.rbs +19 -0
  188. data/sig/openai/models/beta/chatkit_upload_file_params.rbs +26 -0
  189. data/sig/openai/models/beta/chatkit_upload_file_response.rbs +14 -0
  190. data/sig/openai/models/beta/chatkit_workflow.rbs +55 -0
  191. data/sig/openai/models/beta/file_part.rbs +42 -0
  192. data/sig/openai/models/beta/image_part.rbs +47 -0
  193. data/sig/openai/models/comparison_filter.rbs +15 -1
  194. data/sig/openai/models/eval_create_response.rbs +2 -2
  195. data/sig/openai/models/eval_list_response.rbs +2 -2
  196. data/sig/openai/models/eval_retrieve_response.rbs +2 -2
  197. data/sig/openai/models/eval_update_response.rbs +2 -2
  198. data/sig/openai/models/image_model.rbs +3 -1
  199. data/sig/openai/models/realtime/realtime_session.rbs +8 -0
  200. data/sig/openai/models/realtime/realtime_session_create_request.rbs +8 -0
  201. data/sig/openai/models/realtime/realtime_session_create_response.rbs +8 -0
  202. data/sig/openai/models/responses/tool.rbs +2 -1
  203. data/sig/openai/models/responses_model.rbs +4 -0
  204. data/sig/openai/models/video.rbs +88 -0
  205. data/sig/openai/models/video_create_error.rbs +15 -0
  206. data/sig/openai/models/video_create_params.rbs +58 -0
  207. data/sig/openai/models/video_delete_params.rbs +14 -0
  208. data/sig/openai/models/video_delete_response.rbs +22 -0
  209. data/sig/openai/models/video_download_content_params.rbs +40 -0
  210. data/sig/openai/models/video_list_params.rbs +55 -0
  211. data/sig/openai/models/video_model.rbs +14 -0
  212. data/sig/openai/models/video_remix_params.rbs +23 -0
  213. data/sig/openai/models/video_retrieve_params.rbs +15 -0
  214. data/sig/openai/models/video_seconds.rbs +15 -0
  215. data/sig/openai/models/video_size.rbs +16 -0
  216. data/sig/openai/models.rbs +22 -0
  217. data/sig/openai/resources/beta/chatkit/sessions.rbs +25 -0
  218. data/sig/openai/resources/beta/chatkit/threads.rbs +39 -0
  219. data/sig/openai/resources/beta/chatkit.rbs +18 -0
  220. data/sig/openai/resources/beta.rbs +2 -0
  221. data/sig/openai/resources/videos.rbs +45 -0
  222. metadata +140 -2
@@ -0,0 +1,63 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Beta
6
+ module ChatKit
7
+ # @see OpenAI::Resources::Beta::ChatKit::Sessions#create
8
+ class SessionCreateParams < OpenAI::Internal::Type::BaseModel
9
+ extend OpenAI::Internal::Type::RequestParameters::Converter
10
+ include OpenAI::Internal::Type::RequestParameters
11
+
12
+ # @!attribute user
13
+ # A free-form string that identifies your end user; ensures this Session can
14
+ # access other objects that have the same `user` scope.
15
+ #
16
+ # @return [String]
17
+ required :user, String
18
+
19
+ # @!attribute workflow
20
+ # Workflow that powers the session.
21
+ #
22
+ # @return [OpenAI::Models::Beta::ChatKit::ChatSessionWorkflowParam]
23
+ required :workflow, -> { OpenAI::Beta::ChatKit::ChatSessionWorkflowParam }
24
+
25
+ # @!attribute chatkit_configuration
26
+ # Optional overrides for ChatKit runtime configuration features
27
+ #
28
+ # @return [OpenAI::Models::Beta::ChatKit::ChatSessionChatKitConfigurationParam, nil]
29
+ optional :chatkit_configuration, -> { OpenAI::Beta::ChatKit::ChatSessionChatKitConfigurationParam }
30
+
31
+ # @!attribute expires_after
32
+ # Optional override for session expiration timing in seconds from creation.
33
+ # Defaults to 10 minutes.
34
+ #
35
+ # @return [OpenAI::Models::Beta::ChatKit::ChatSessionExpiresAfterParam, nil]
36
+ optional :expires_after, -> { OpenAI::Beta::ChatKit::ChatSessionExpiresAfterParam }
37
+
38
+ # @!attribute rate_limits
39
+ # Optional override for per-minute request limits. When omitted, defaults to 10.
40
+ #
41
+ # @return [OpenAI::Models::Beta::ChatKit::ChatSessionRateLimitsParam, nil]
42
+ optional :rate_limits, -> { OpenAI::Beta::ChatKit::ChatSessionRateLimitsParam }
43
+
44
+ # @!method initialize(user:, workflow:, chatkit_configuration: nil, expires_after: nil, rate_limits: nil, request_options: {})
45
+ # Some parameter documentations has been truncated, see
46
+ # {OpenAI::Models::Beta::ChatKit::SessionCreateParams} for more details.
47
+ #
48
+ # @param user [String] A free-form string that identifies your end user; ensures this Session can acces
49
+ #
50
+ # @param workflow [OpenAI::Models::Beta::ChatKit::ChatSessionWorkflowParam] Workflow that powers the session.
51
+ #
52
+ # @param chatkit_configuration [OpenAI::Models::Beta::ChatKit::ChatSessionChatKitConfigurationParam] Optional overrides for ChatKit runtime configuration features
53
+ #
54
+ # @param expires_after [OpenAI::Models::Beta::ChatKit::ChatSessionExpiresAfterParam] Optional override for session expiration timing in seconds from creation. Defaul
55
+ #
56
+ # @param rate_limits [OpenAI::Models::Beta::ChatKit::ChatSessionRateLimitsParam] Optional override for per-minute request limits. When omitted, defaults to 10.
57
+ #
58
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
59
+ end
60
+ end
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Beta
6
+ module ChatKit
7
+ # @see OpenAI::Resources::Beta::ChatKit::Threads#delete
8
+ class ThreadDeleteParams < OpenAI::Internal::Type::BaseModel
9
+ extend OpenAI::Internal::Type::RequestParameters::Converter
10
+ include OpenAI::Internal::Type::RequestParameters
11
+
12
+ # @!method initialize(request_options: {})
13
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Beta
6
+ module ChatKit
7
+ # @see OpenAI::Resources::Beta::ChatKit::Threads#delete
8
+ class ThreadDeleteResponse < OpenAI::Internal::Type::BaseModel
9
+ # @!attribute id
10
+ # Identifier of the deleted thread.
11
+ #
12
+ # @return [String]
13
+ required :id, String
14
+
15
+ # @!attribute deleted
16
+ # Indicates that the thread has been deleted.
17
+ #
18
+ # @return [Boolean]
19
+ required :deleted, OpenAI::Internal::Type::Boolean
20
+
21
+ # @!attribute object
22
+ # Type discriminator that is always `chatkit.thread.deleted`.
23
+ #
24
+ # @return [Symbol, :"chatkit.thread.deleted"]
25
+ required :object, const: :"chatkit.thread.deleted"
26
+
27
+ # @!method initialize(id:, deleted:, object: :"chatkit.thread.deleted")
28
+ # Confirmation payload returned after deleting a thread.
29
+ #
30
+ # @param id [String] Identifier of the deleted thread.
31
+ #
32
+ # @param deleted [Boolean] Indicates that the thread has been deleted.
33
+ #
34
+ # @param object [Symbol, :"chatkit.thread.deleted"] Type discriminator that is always `chatkit.thread.deleted`.
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,66 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Beta
6
+ module ChatKit
7
+ # @see OpenAI::Resources::Beta::ChatKit::Threads#list_items
8
+ class ThreadListItemsParams < OpenAI::Internal::Type::BaseModel
9
+ extend OpenAI::Internal::Type::RequestParameters::Converter
10
+ include OpenAI::Internal::Type::RequestParameters
11
+
12
+ # @!attribute after
13
+ # List items created after this thread item ID. Defaults to null for the first
14
+ # page.
15
+ #
16
+ # @return [String, nil]
17
+ optional :after, String
18
+
19
+ # @!attribute before
20
+ # List items created before this thread item ID. Defaults to null for the newest
21
+ # results.
22
+ #
23
+ # @return [String, nil]
24
+ optional :before, String
25
+
26
+ # @!attribute limit
27
+ # Maximum number of thread items to return. Defaults to 20.
28
+ #
29
+ # @return [Integer, nil]
30
+ optional :limit, Integer
31
+
32
+ # @!attribute order
33
+ # Sort order for results by creation time. Defaults to `desc`.
34
+ #
35
+ # @return [Symbol, OpenAI::Models::Beta::ChatKit::ThreadListItemsParams::Order, nil]
36
+ optional :order, enum: -> { OpenAI::Beta::ChatKit::ThreadListItemsParams::Order }
37
+
38
+ # @!method initialize(after: nil, before: nil, limit: nil, order: nil, request_options: {})
39
+ # Some parameter documentations has been truncated, see
40
+ # {OpenAI::Models::Beta::ChatKit::ThreadListItemsParams} for more details.
41
+ #
42
+ # @param after [String] List items created after this thread item ID. Defaults to null for the first pag
43
+ #
44
+ # @param before [String] List items created before this thread item ID. Defaults to null for the newest r
45
+ #
46
+ # @param limit [Integer] Maximum number of thread items to return. Defaults to 20.
47
+ #
48
+ # @param order [Symbol, OpenAI::Models::Beta::ChatKit::ThreadListItemsParams::Order] Sort order for results by creation time. Defaults to `desc`.
49
+ #
50
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
51
+
52
+ # Sort order for results by creation time. Defaults to `desc`.
53
+ module Order
54
+ extend OpenAI::Internal::Type::Enum
55
+
56
+ ASC = :asc
57
+ DESC = :desc
58
+
59
+ # @!method self.values
60
+ # @return [Array<Symbol>]
61
+ end
62
+ end
63
+ end
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,75 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Beta
6
+ module ChatKit
7
+ # @see OpenAI::Resources::Beta::ChatKit::Threads#list
8
+ class ThreadListParams < OpenAI::Internal::Type::BaseModel
9
+ extend OpenAI::Internal::Type::RequestParameters::Converter
10
+ include OpenAI::Internal::Type::RequestParameters
11
+
12
+ # @!attribute after
13
+ # List items created after this thread item ID. Defaults to null for the first
14
+ # page.
15
+ #
16
+ # @return [String, nil]
17
+ optional :after, String
18
+
19
+ # @!attribute before
20
+ # List items created before this thread item ID. Defaults to null for the newest
21
+ # results.
22
+ #
23
+ # @return [String, nil]
24
+ optional :before, String
25
+
26
+ # @!attribute limit
27
+ # Maximum number of thread items to return. Defaults to 20.
28
+ #
29
+ # @return [Integer, nil]
30
+ optional :limit, Integer
31
+
32
+ # @!attribute order
33
+ # Sort order for results by creation time. Defaults to `desc`.
34
+ #
35
+ # @return [Symbol, OpenAI::Models::Beta::ChatKit::ThreadListParams::Order, nil]
36
+ optional :order, enum: -> { OpenAI::Beta::ChatKit::ThreadListParams::Order }
37
+
38
+ # @!attribute user
39
+ # Filter threads that belong to this user identifier. Defaults to null to return
40
+ # all users.
41
+ #
42
+ # @return [String, nil]
43
+ optional :user, String
44
+
45
+ # @!method initialize(after: nil, before: nil, limit: nil, order: nil, user: nil, request_options: {})
46
+ # Some parameter documentations has been truncated, see
47
+ # {OpenAI::Models::Beta::ChatKit::ThreadListParams} for more details.
48
+ #
49
+ # @param after [String] List items created after this thread item ID. Defaults to null for the first pag
50
+ #
51
+ # @param before [String] List items created before this thread item ID. Defaults to null for the newest r
52
+ #
53
+ # @param limit [Integer] Maximum number of thread items to return. Defaults to 20.
54
+ #
55
+ # @param order [Symbol, OpenAI::Models::Beta::ChatKit::ThreadListParams::Order] Sort order for results by creation time. Defaults to `desc`.
56
+ #
57
+ # @param user [String] Filter threads that belong to this user identifier. Defaults to null to return a
58
+ #
59
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
60
+
61
+ # Sort order for results by creation time. Defaults to `desc`.
62
+ module Order
63
+ extend OpenAI::Internal::Type::Enum
64
+
65
+ ASC = :asc
66
+ DESC = :desc
67
+
68
+ # @!method self.values
69
+ # @return [Array<Symbol>]
70
+ end
71
+ end
72
+ end
73
+ end
74
+ end
75
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Beta
6
+ module ChatKit
7
+ # @see OpenAI::Resources::Beta::ChatKit::Threads#retrieve
8
+ class ThreadRetrieveParams < OpenAI::Internal::Type::BaseModel
9
+ extend OpenAI::Internal::Type::RequestParameters::Converter
10
+ include OpenAI::Internal::Type::RequestParameters
11
+
12
+ # @!method initialize(request_options: {})
13
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Beta
6
+ # @see OpenAI::Resources::Beta::ChatKit#upload_file
7
+ class ChatKitUploadFileParams < OpenAI::Internal::Type::BaseModel
8
+ extend OpenAI::Internal::Type::RequestParameters::Converter
9
+ include OpenAI::Internal::Type::RequestParameters
10
+
11
+ # @!attribute file
12
+ # Binary file contents to store with the ChatKit session. Supports PDFs and PNG,
13
+ # JPG, JPEG, GIF, or WEBP images.
14
+ #
15
+ # @return [Pathname, StringIO, IO, String, OpenAI::FilePart]
16
+ required :file, OpenAI::Internal::Type::FileInput
17
+
18
+ # @!method initialize(file:, request_options: {})
19
+ # Some parameter documentations has been truncated, see
20
+ # {OpenAI::Models::Beta::ChatKitUploadFileParams} for more details.
21
+ #
22
+ # @param file [Pathname, StringIO, IO, String, OpenAI::FilePart] Binary file contents to store with the ChatKit session. Supports PDFs and PNG, J
23
+ #
24
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Beta
6
+ # Represents either a file or image attachment.
7
+ #
8
+ # @see OpenAI::Resources::Beta::ChatKit#upload_file
9
+ module ChatKitUploadFileResponse
10
+ extend OpenAI::Internal::Type::Union
11
+
12
+ discriminator :type
13
+
14
+ # Metadata for a non-image file uploaded through ChatKit.
15
+ variant :file, -> { OpenAI::Beta::FilePart }
16
+
17
+ # Metadata for an image uploaded through ChatKit.
18
+ variant :image, -> { OpenAI::Beta::ImagePart }
19
+
20
+ # @!method self.variants
21
+ # @return [Array(OpenAI::Models::Beta::FilePart, OpenAI::Models::Beta::ImagePart)]
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,78 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Beta
6
+ class ChatKitWorkflow < OpenAI::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ # Identifier of the workflow backing the session.
9
+ #
10
+ # @return [String]
11
+ required :id, String
12
+
13
+ # @!attribute state_variables
14
+ # State variable key-value pairs applied when invoking the workflow. Defaults to
15
+ # null when no overrides were provided.
16
+ #
17
+ # @return [Hash{Symbol=>String, Boolean, Float}, nil]
18
+ required :state_variables,
19
+ -> { OpenAI::Internal::Type::HashOf[union: OpenAI::Beta::ChatKitWorkflow::StateVariable] },
20
+ nil?: true
21
+
22
+ # @!attribute tracing
23
+ # Tracing settings applied to the workflow.
24
+ #
25
+ # @return [OpenAI::Models::Beta::ChatKitWorkflow::Tracing]
26
+ required :tracing, -> { OpenAI::Beta::ChatKitWorkflow::Tracing }
27
+
28
+ # @!attribute version
29
+ # Specific workflow version used for the session. Defaults to null when using the
30
+ # latest deployment.
31
+ #
32
+ # @return [String, nil]
33
+ required :version, String, nil?: true
34
+
35
+ # @!method initialize(id:, state_variables:, tracing:, version:)
36
+ # Some parameter documentations has been truncated, see
37
+ # {OpenAI::Models::Beta::ChatKitWorkflow} for more details.
38
+ #
39
+ # Workflow metadata and state returned for the session.
40
+ #
41
+ # @param id [String] Identifier of the workflow backing the session.
42
+ #
43
+ # @param state_variables [Hash{Symbol=>String, Boolean, Float}, nil] State variable key-value pairs applied when invoking the workflow. Defaults to n
44
+ #
45
+ # @param tracing [OpenAI::Models::Beta::ChatKitWorkflow::Tracing] Tracing settings applied to the workflow.
46
+ #
47
+ # @param version [String, nil] Specific workflow version used for the session. Defaults to null when using the
48
+
49
+ module StateVariable
50
+ extend OpenAI::Internal::Type::Union
51
+
52
+ variant String
53
+
54
+ variant OpenAI::Internal::Type::Boolean
55
+
56
+ variant Float
57
+
58
+ # @!method self.variants
59
+ # @return [Array(String, Boolean, Float)]
60
+ end
61
+
62
+ # @see OpenAI::Models::Beta::ChatKitWorkflow#tracing
63
+ class Tracing < OpenAI::Internal::Type::BaseModel
64
+ # @!attribute enabled
65
+ # Indicates whether tracing is enabled.
66
+ #
67
+ # @return [Boolean]
68
+ required :enabled, OpenAI::Internal::Type::Boolean
69
+
70
+ # @!method initialize(enabled:)
71
+ # Tracing settings applied to the workflow.
72
+ #
73
+ # @param enabled [Boolean] Indicates whether tracing is enabled.
74
+ end
75
+ end
76
+ end
77
+ end
78
+ end
@@ -0,0 +1,56 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Beta
6
+ class FilePart < OpenAI::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ # Unique identifier for the uploaded file.
9
+ #
10
+ # @return [String]
11
+ required :id, String
12
+
13
+ # @!attribute mime_type
14
+ # MIME type reported for the uploaded file. Defaults to null when unknown.
15
+ #
16
+ # @return [String, nil]
17
+ required :mime_type, String, nil?: true
18
+
19
+ # @!attribute name
20
+ # Original filename supplied by the uploader. Defaults to null when unnamed.
21
+ #
22
+ # @return [String, nil]
23
+ required :name, String, nil?: true
24
+
25
+ # @!attribute type
26
+ # Type discriminator that is always `file`.
27
+ #
28
+ # @return [Symbol, :file]
29
+ required :type, const: :file
30
+
31
+ # @!attribute upload_url
32
+ # Signed URL for downloading the uploaded file. Defaults to null when no download
33
+ # link is available.
34
+ #
35
+ # @return [String, nil]
36
+ required :upload_url, String, nil?: true
37
+
38
+ # @!method initialize(id:, mime_type:, name:, upload_url:, type: :file)
39
+ # Some parameter documentations has been truncated, see
40
+ # {OpenAI::Models::Beta::FilePart} for more details.
41
+ #
42
+ # Metadata for a non-image file uploaded through ChatKit.
43
+ #
44
+ # @param id [String] Unique identifier for the uploaded file.
45
+ #
46
+ # @param mime_type [String, nil] MIME type reported for the uploaded file. Defaults to null when unknown.
47
+ #
48
+ # @param name [String, nil] Original filename supplied by the uploader. Defaults to null when unnamed.
49
+ #
50
+ # @param upload_url [String, nil] Signed URL for downloading the uploaded file. Defaults to null when no download
51
+ #
52
+ # @param type [Symbol, :file] Type discriminator that is always `file`.
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,64 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Beta
6
+ class ImagePart < OpenAI::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ # Unique identifier for the uploaded image.
9
+ #
10
+ # @return [String]
11
+ required :id, String
12
+
13
+ # @!attribute mime_type
14
+ # MIME type of the uploaded image.
15
+ #
16
+ # @return [String]
17
+ required :mime_type, String
18
+
19
+ # @!attribute name
20
+ # Original filename for the uploaded image. Defaults to null when unnamed.
21
+ #
22
+ # @return [String, nil]
23
+ required :name, String, nil?: true
24
+
25
+ # @!attribute preview_url
26
+ # Preview URL that can be rendered inline for the image.
27
+ #
28
+ # @return [String]
29
+ required :preview_url, String
30
+
31
+ # @!attribute type
32
+ # Type discriminator that is always `image`.
33
+ #
34
+ # @return [Symbol, :image]
35
+ required :type, const: :image
36
+
37
+ # @!attribute upload_url
38
+ # Signed URL for downloading the uploaded image. Defaults to null when no download
39
+ # link is available.
40
+ #
41
+ # @return [String, nil]
42
+ required :upload_url, String, nil?: true
43
+
44
+ # @!method initialize(id:, mime_type:, name:, preview_url:, upload_url:, type: :image)
45
+ # Some parameter documentations has been truncated, see
46
+ # {OpenAI::Models::Beta::ImagePart} for more details.
47
+ #
48
+ # Metadata for an image uploaded through ChatKit.
49
+ #
50
+ # @param id [String] Unique identifier for the uploaded image.
51
+ #
52
+ # @param mime_type [String] MIME type of the uploaded image.
53
+ #
54
+ # @param name [String, nil] Original filename for the uploaded image. Defaults to null when unnamed.
55
+ #
56
+ # @param preview_url [String] Preview URL that can be rendered inline for the image.
57
+ #
58
+ # @param upload_url [String, nil] Signed URL for downloading the uploaded image. Defaults to null when no download
59
+ #
60
+ # @param type [Symbol, :image] Type discriminator that is always `image`.
61
+ end
62
+ end
63
+ end
64
+ end
@@ -113,6 +113,9 @@ module OpenAI
113
113
  # effort can result in faster responses and fewer tokens used on reasoning in a
114
114
  # response.
115
115
  #
116
+ # Note: The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
117
+ # effort.
118
+ #
116
119
  # @return [Symbol, OpenAI::Models::ReasoningEffort, nil]
117
120
  optional :reasoning_effort, enum: -> { OpenAI::ReasoningEffort }, nil?: true
118
121
 
@@ -197,6 +197,9 @@ module OpenAI
197
197
  # effort can result in faster responses and fewer tokens used on reasoning in a
198
198
  # response.
199
199
  #
200
+ # Note: The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
201
+ # effort.
202
+ #
200
203
  # @return [Symbol, OpenAI::Models::ReasoningEffort, nil]
201
204
  optional :reasoning_effort, enum: -> { OpenAI::ReasoningEffort }, nil?: true
202
205
 
@@ -10,7 +10,8 @@ module OpenAI
10
10
  required :key, String
11
11
 
12
12
  # @!attribute type
13
- # Specifies the comparison operator: `eq`, `ne`, `gt`, `gte`, `lt`, `lte`.
13
+ # Specifies the comparison operator: `eq`, `ne`, `gt`, `gte`, `lt`, `lte`, `in`,
14
+ # `nin`.
14
15
  #
15
16
  # - `eq`: equals
16
17
  # - `ne`: not equal
@@ -18,6 +19,8 @@ module OpenAI
18
19
  # - `gte`: greater than or equal
19
20
  # - `lt`: less than
20
21
  # - `lte`: less than or equal
22
+ # - `in`: in
23
+ # - `nin`: not in
21
24
  #
22
25
  # @return [Symbol, OpenAI::Models::ComparisonFilter::Type]
23
26
  required :type, enum: -> { OpenAI::ComparisonFilter::Type }
@@ -26,7 +29,7 @@ module OpenAI
26
29
  # The value to compare against the attribute key; supports string, number, or
27
30
  # boolean types.
28
31
  #
29
- # @return [String, Float, Boolean]
32
+ # @return [String, Float, Boolean, Array<String, Float>]
30
33
  required :value, union: -> { OpenAI::ComparisonFilter::Value }
31
34
 
32
35
  # @!method initialize(key:, type:, value:)
@@ -38,11 +41,12 @@ module OpenAI
38
41
  #
39
42
  # @param key [String] The key to compare against the value.
40
43
  #
41
- # @param type [Symbol, OpenAI::Models::ComparisonFilter::Type] Specifies the comparison operator: `eq`, `ne`, `gt`, `gte`, `lt`, `lte`.
44
+ # @param type [Symbol, OpenAI::Models::ComparisonFilter::Type] Specifies the comparison operator: `eq`, `ne`, `gt`, `gte`, `lt`, `lte`, `in`, `
42
45
  #
43
- # @param value [String, Float, Boolean] The value to compare against the attribute key; supports string, number, or bool
46
+ # @param value [String, Float, Boolean, Array<String, Float>] The value to compare against the attribute key; supports string, number, or bool
44
47
 
45
- # Specifies the comparison operator: `eq`, `ne`, `gt`, `gte`, `lt`, `lte`.
48
+ # Specifies the comparison operator: `eq`, `ne`, `gt`, `gte`, `lt`, `lte`, `in`,
49
+ # `nin`.
46
50
  #
47
51
  # - `eq`: equals
48
52
  # - `ne`: not equal
@@ -50,6 +54,8 @@ module OpenAI
50
54
  # - `gte`: greater than or equal
51
55
  # - `lt`: less than
52
56
  # - `lte`: less than or equal
57
+ # - `in`: in
58
+ # - `nin`: not in
53
59
  #
54
60
  # @see OpenAI::Models::ComparisonFilter#type
55
61
  module Type
@@ -79,8 +85,25 @@ module OpenAI
79
85
 
80
86
  variant OpenAI::Internal::Type::Boolean
81
87
 
88
+ variant -> { OpenAI::Models::ComparisonFilter::Value::UnionMember3Array }
89
+
90
+ module UnionMember3
91
+ extend OpenAI::Internal::Type::Union
92
+
93
+ variant String
94
+
95
+ variant Float
96
+
97
+ # @!method self.variants
98
+ # @return [Array(String, Float)]
99
+ end
100
+
82
101
  # @!method self.variants
83
- # @return [Array(String, Float, Boolean)]
102
+ # @return [Array(String, Float, Boolean, Array<String, Float>)]
103
+
104
+ # @type [OpenAI::Internal::Type::Converter]
105
+ UnionMember3Array =
106
+ OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::ComparisonFilter::Value::UnionMember3 }]
84
107
  end
85
108
  end
86
109
  end
@@ -466,6 +466,9 @@ module OpenAI
466
466
  # effort can result in faster responses and fewer tokens used on reasoning in a
467
467
  # response.
468
468
  #
469
+ # Note: The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
470
+ # effort.
471
+ #
469
472
  # @return [Symbol, OpenAI::Models::ReasoningEffort, nil]
470
473
  optional :reasoning_effort, enum: -> { OpenAI::ReasoningEffort }, nil?: true
471
474
 
@@ -320,6 +320,9 @@ module OpenAI
320
320
  # effort can result in faster responses and fewer tokens used on reasoning in a
321
321
  # response.
322
322
  #
323
+ # Note: The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
324
+ # effort.
325
+ #
323
326
  # @return [Symbol, OpenAI::Models::ReasoningEffort, nil]
324
327
  optional :reasoning_effort, enum: -> { OpenAI::ReasoningEffort }, nil?: true
325
328
 
@@ -661,6 +664,9 @@ module OpenAI
661
664
  # effort can result in faster responses and fewer tokens used on reasoning in a
662
665
  # response.
663
666
  #
667
+ # Note: The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
668
+ # effort.
669
+ #
664
670
  # @return [Symbol, OpenAI::Models::ReasoningEffort, nil]
665
671
  optional :reasoning_effort, enum: -> { OpenAI::ReasoningEffort }, nil?: true
666
672