openai 0.29.0 → 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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/README.md +1 -1
- data/lib/openai/client.rb +4 -0
- data/lib/openai/internal/conversation_cursor_page.rb +2 -2
- data/lib/openai/models/all_models.rb +2 -0
- data/lib/openai/models/beta/chatkit/chat_session.rb +94 -0
- data/lib/openai/models/beta/chatkit/chat_session_automatic_thread_titling.rb +22 -0
- data/lib/openai/models/beta/chatkit/chat_session_chatkit_configuration.rb +38 -0
- data/lib/openai/models/beta/chatkit/chat_session_chatkit_configuration_param.rb +125 -0
- data/lib/openai/models/beta/chatkit/chat_session_expires_after_param.rb +30 -0
- data/lib/openai/models/beta/chatkit/chat_session_file_upload.rb +38 -0
- data/lib/openai/models/beta/chatkit/chat_session_history.rb +34 -0
- data/lib/openai/models/beta/chatkit/chat_session_rate_limits.rb +22 -0
- data/lib/openai/models/beta/chatkit/chat_session_rate_limits_param.rb +22 -0
- data/lib/openai/models/beta/chatkit/chat_session_status.rb +20 -0
- data/lib/openai/models/beta/chatkit/chat_session_workflow_param.rb +80 -0
- data/lib/openai/models/beta/chatkit/chatkit_attachment.rb +69 -0
- data/lib/openai/models/beta/chatkit/chatkit_response_output_text.rb +143 -0
- data/lib/openai/models/beta/chatkit/chatkit_thread.rb +145 -0
- data/lib/openai/models/beta/chatkit/chatkit_thread_assistant_message_item.rb +65 -0
- data/lib/openai/models/beta/chatkit/chatkit_thread_item_list.rb +374 -0
- data/lib/openai/models/beta/chatkit/chatkit_thread_user_message_item.rb +183 -0
- data/lib/openai/models/beta/chatkit/chatkit_widget_item.rb +64 -0
- data/lib/openai/models/beta/chatkit/session_cancel_params.rb +18 -0
- data/lib/openai/models/beta/chatkit/session_create_params.rb +63 -0
- data/lib/openai/models/beta/chatkit/thread_delete_params.rb +18 -0
- data/lib/openai/models/beta/chatkit/thread_delete_response.rb +39 -0
- data/lib/openai/models/beta/chatkit/thread_list_items_params.rb +66 -0
- data/lib/openai/models/beta/chatkit/thread_list_params.rb +75 -0
- data/lib/openai/models/beta/chatkit/thread_retrieve_params.rb +18 -0
- data/lib/openai/models/beta/chatkit_upload_file_params.rb +28 -0
- data/lib/openai/models/beta/chatkit_upload_file_response.rb +25 -0
- data/lib/openai/models/beta/chatkit_workflow.rb +78 -0
- data/lib/openai/models/beta/file_part.rb +56 -0
- data/lib/openai/models/beta/image_part.rb +64 -0
- data/lib/openai/models/image_edit_params.rb +4 -2
- data/lib/openai/models/image_model.rb +1 -0
- data/lib/openai/models/realtime/realtime_session.rb +4 -0
- data/lib/openai/models/realtime/realtime_session_create_request.rb +12 -0
- data/lib/openai/models/realtime/realtime_session_create_response.rb +12 -0
- data/lib/openai/models/responses/tool.rb +5 -2
- data/lib/openai/models/responses_model.rb +2 -0
- data/lib/openai/models/video.rb +122 -0
- data/lib/openai/models/video_create_error.rb +21 -0
- data/lib/openai/models/video_create_params.rb +54 -0
- data/lib/openai/models/video_delete_params.rb +14 -0
- data/lib/openai/models/video_delete_response.rb +35 -0
- data/lib/openai/models/video_download_content_params.rb +34 -0
- data/lib/openai/models/video_list_params.rb +54 -0
- data/lib/openai/models/video_model.rb +15 -0
- data/lib/openai/models/video_remix_params.rb +22 -0
- data/lib/openai/models/video_retrieve_params.rb +14 -0
- data/lib/openai/models/video_seconds.rb +16 -0
- data/lib/openai/models/video_size.rb +17 -0
- data/lib/openai/models.rb +22 -0
- data/lib/openai/resources/beta/chatkit/sessions.rb +71 -0
- data/lib/openai/resources/beta/chatkit/threads.rb +126 -0
- data/lib/openai/resources/beta/chatkit.rb +50 -0
- data/lib/openai/resources/beta.rb +4 -0
- data/lib/openai/resources/videos.rb +165 -0
- data/lib/openai/version.rb +1 -1
- data/lib/openai.rb +46 -0
- data/rbi/openai/client.rbi +3 -0
- data/rbi/openai/models/all_models.rbi +10 -0
- data/rbi/openai/models/beta/chatkit/chat_session.rbi +141 -0
- data/rbi/openai/models/beta/chatkit/chat_session_automatic_thread_titling.rbi +35 -0
- data/rbi/openai/models/beta/chatkit/chat_session_chatkit_configuration.rbi +87 -0
- data/rbi/openai/models/beta/chatkit/chat_session_chatkit_configuration_param.rbi +256 -0
- data/rbi/openai/models/beta/chatkit/chat_session_expires_after_param.rbi +43 -0
- data/rbi/openai/models/beta/chatkit/chat_session_file_upload.rbi +61 -0
- data/rbi/openai/models/beta/chatkit/chat_session_history.rbi +52 -0
- data/rbi/openai/models/beta/chatkit/chat_session_rate_limits.rbi +37 -0
- data/rbi/openai/models/beta/chatkit/chat_session_rate_limits_param.rbi +40 -0
- data/rbi/openai/models/beta/chatkit/chat_session_status.rbi +43 -0
- data/rbi/openai/models/beta/chatkit/chat_session_workflow_param.rbi +166 -0
- data/rbi/openai/models/beta/chatkit/chatkit_attachment.rbi +116 -0
- data/rbi/openai/models/beta/chatkit/chatkit_response_output_text.rbi +287 -0
- data/rbi/openai/models/beta/chatkit/chatkit_thread.rbi +220 -0
- data/rbi/openai/models/beta/chatkit/chatkit_thread_assistant_message_item.rbi +94 -0
- data/rbi/openai/models/beta/chatkit/chatkit_thread_item_list.rbi +590 -0
- data/rbi/openai/models/beta/chatkit/chatkit_thread_user_message_item.rbi +324 -0
- data/rbi/openai/models/beta/chatkit/chatkit_widget_item.rbi +87 -0
- data/rbi/openai/models/beta/chatkit/session_cancel_params.rbi +34 -0
- data/rbi/openai/models/beta/chatkit/session_create_params.rbi +136 -0
- data/rbi/openai/models/beta/chatkit/thread_delete_params.rbi +34 -0
- data/rbi/openai/models/beta/chatkit/thread_delete_response.rbi +55 -0
- data/rbi/openai/models/beta/chatkit/thread_list_items_params.rbi +138 -0
- data/rbi/openai/models/beta/chatkit/thread_list_params.rbi +145 -0
- data/rbi/openai/models/beta/chatkit/thread_retrieve_params.rbi +34 -0
- data/rbi/openai/models/beta/chatkit_upload_file_params.rbi +50 -0
- data/rbi/openai/models/beta/chatkit_upload_file_response.rbi +25 -0
- data/rbi/openai/models/beta/chatkit_workflow.rbi +134 -0
- data/rbi/openai/models/beta/file_part.rbi +74 -0
- data/rbi/openai/models/beta/image_part.rbi +82 -0
- data/rbi/openai/models/image_edit_params.rbi +6 -3
- data/rbi/openai/models/image_model.rbi +2 -0
- data/rbi/openai/models/realtime/realtime_session.rbi +20 -0
- data/rbi/openai/models/realtime/realtime_session_create_request.rbi +20 -0
- data/rbi/openai/models/realtime/realtime_session_create_response.rbi +20 -0
- data/rbi/openai/models/responses/tool.rbi +11 -3
- data/rbi/openai/models/responses_model.rbi +10 -0
- data/rbi/openai/models/video.rbi +143 -0
- data/rbi/openai/models/video_create_error.rbi +26 -0
- data/rbi/openai/models/video_create_params.rbi +87 -0
- data/rbi/openai/models/video_delete_params.rbi +27 -0
- data/rbi/openai/models/video_delete_response.rbi +46 -0
- data/rbi/openai/models/video_download_content_params.rbi +89 -0
- data/rbi/openai/models/video_list_params.rbi +91 -0
- data/rbi/openai/models/video_model.rbi +19 -0
- data/rbi/openai/models/video_remix_params.rbi +40 -0
- data/rbi/openai/models/video_retrieve_params.rbi +27 -0
- data/rbi/openai/models/video_seconds.rbi +20 -0
- data/rbi/openai/models/video_size.rbi +23 -0
- data/rbi/openai/models.rbi +22 -0
- data/rbi/openai/resources/beta/chatkit/sessions.rbi +61 -0
- data/rbi/openai/resources/beta/chatkit/threads.rbi +110 -0
- data/rbi/openai/resources/beta/chatkit.rbi +35 -0
- data/rbi/openai/resources/beta.rbi +3 -0
- data/rbi/openai/resources/images.rbi +4 -2
- data/rbi/openai/resources/videos.rbi +121 -0
- data/sig/openai/client.rbs +2 -0
- data/sig/openai/models/all_models.rbs +4 -0
- data/sig/openai/models/beta/chatkit/chat_session.rbs +69 -0
- data/sig/openai/models/beta/chatkit/chat_session_automatic_thread_titling.rbs +17 -0
- data/sig/openai/models/beta/chatkit/chat_session_chatkit_configuration.rbs +34 -0
- data/sig/openai/models/beta/chatkit/chat_session_chatkit_configuration_param.rbs +103 -0
- data/sig/openai/models/beta/chatkit/chat_session_expires_after_param.rbs +20 -0
- data/sig/openai/models/beta/chatkit/chat_session_file_upload.rbs +30 -0
- data/sig/openai/models/beta/chatkit/chat_session_history.rbs +19 -0
- data/sig/openai/models/beta/chatkit/chat_session_rate_limits.rbs +18 -0
- data/sig/openai/models/beta/chatkit/chat_session_rate_limits_param.rbs +20 -0
- data/sig/openai/models/beta/chatkit/chat_session_status.rbs +19 -0
- data/sig/openai/models/beta/chatkit/chat_session_workflow_param.rbs +69 -0
- data/sig/openai/models/beta/chatkit/chatkit_attachment.rbs +57 -0
- data/sig/openai/models/beta/chatkit/chatkit_response_output_text.rbs +114 -0
- data/sig/openai/models/beta/chatkit/chatkit_thread.rbs +96 -0
- data/sig/openai/models/beta/chatkit/chatkit_thread_assistant_message_item.rbs +51 -0
- data/sig/openai/models/beta/chatkit/chatkit_thread_item_list.rbs +276 -0
- data/sig/openai/models/beta/chatkit/chatkit_thread_user_message_item.rbs +127 -0
- data/sig/openai/models/beta/chatkit/chatkit_widget_item.rbs +51 -0
- data/sig/openai/models/beta/chatkit/session_cancel_params.rbs +19 -0
- data/sig/openai/models/beta/chatkit/session_create_params.rbs +62 -0
- data/sig/openai/models/beta/chatkit/thread_delete_params.rbs +19 -0
- data/sig/openai/models/beta/chatkit/thread_delete_response.rbs +30 -0
- data/sig/openai/models/beta/chatkit/thread_list_items_params.rbs +66 -0
- data/sig/openai/models/beta/chatkit/thread_list_params.rbs +73 -0
- data/sig/openai/models/beta/chatkit/thread_retrieve_params.rbs +19 -0
- data/sig/openai/models/beta/chatkit_upload_file_params.rbs +26 -0
- data/sig/openai/models/beta/chatkit_upload_file_response.rbs +14 -0
- data/sig/openai/models/beta/chatkit_workflow.rbs +55 -0
- data/sig/openai/models/beta/file_part.rbs +42 -0
- data/sig/openai/models/beta/image_part.rbs +47 -0
- data/sig/openai/models/image_model.rbs +3 -1
- data/sig/openai/models/realtime/realtime_session.rbs +8 -0
- data/sig/openai/models/realtime/realtime_session_create_request.rbs +8 -0
- data/sig/openai/models/realtime/realtime_session_create_response.rbs +8 -0
- data/sig/openai/models/responses/tool.rbs +2 -1
- data/sig/openai/models/responses_model.rbs +4 -0
- data/sig/openai/models/video.rbs +88 -0
- data/sig/openai/models/video_create_error.rbs +15 -0
- data/sig/openai/models/video_create_params.rbs +58 -0
- data/sig/openai/models/video_delete_params.rbs +14 -0
- data/sig/openai/models/video_delete_response.rbs +22 -0
- data/sig/openai/models/video_download_content_params.rbs +40 -0
- data/sig/openai/models/video_list_params.rbs +55 -0
- data/sig/openai/models/video_model.rbs +14 -0
- data/sig/openai/models/video_remix_params.rbs +23 -0
- data/sig/openai/models/video_retrieve_params.rbs +15 -0
- data/sig/openai/models/video_seconds.rbs +15 -0
- data/sig/openai/models/video_size.rbs +16 -0
- data/sig/openai/models.rbs +22 -0
- data/sig/openai/resources/beta/chatkit/sessions.rbs +25 -0
- data/sig/openai/resources/beta/chatkit/threads.rbs +39 -0
- data/sig/openai/resources/beta/chatkit.rbs +18 -0
- data/sig/openai/resources/beta.rbs +2 -0
- data/sig/openai/resources/videos.rbs +45 -0
- metadata +140 -2
@@ -0,0 +1,122 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
# @see OpenAI::Resources::Videos#create
|
6
|
+
class Video < OpenAI::Internal::Type::BaseModel
|
7
|
+
# @!attribute id
|
8
|
+
# Unique identifier for the video job.
|
9
|
+
#
|
10
|
+
# @return [String]
|
11
|
+
required :id, String
|
12
|
+
|
13
|
+
# @!attribute completed_at
|
14
|
+
# Unix timestamp (seconds) for when the job completed, if finished.
|
15
|
+
#
|
16
|
+
# @return [Integer, nil]
|
17
|
+
required :completed_at, Integer, nil?: true
|
18
|
+
|
19
|
+
# @!attribute created_at
|
20
|
+
# Unix timestamp (seconds) for when the job was created.
|
21
|
+
#
|
22
|
+
# @return [Integer]
|
23
|
+
required :created_at, Integer
|
24
|
+
|
25
|
+
# @!attribute error
|
26
|
+
# Error payload that explains why generation failed, if applicable.
|
27
|
+
#
|
28
|
+
# @return [OpenAI::Models::VideoCreateError, nil]
|
29
|
+
required :error, -> { OpenAI::VideoCreateError }, nil?: true
|
30
|
+
|
31
|
+
# @!attribute expires_at
|
32
|
+
# Unix timestamp (seconds) for when the downloadable assets expire, if set.
|
33
|
+
#
|
34
|
+
# @return [Integer, nil]
|
35
|
+
required :expires_at, Integer, nil?: true
|
36
|
+
|
37
|
+
# @!attribute model
|
38
|
+
# The video generation model that produced the job.
|
39
|
+
#
|
40
|
+
# @return [Symbol, OpenAI::Models::VideoModel]
|
41
|
+
required :model, enum: -> { OpenAI::VideoModel }
|
42
|
+
|
43
|
+
# @!attribute object
|
44
|
+
# The object type, which is always `video`.
|
45
|
+
#
|
46
|
+
# @return [Symbol, :video]
|
47
|
+
required :object, const: :video
|
48
|
+
|
49
|
+
# @!attribute progress
|
50
|
+
# Approximate completion percentage for the generation task.
|
51
|
+
#
|
52
|
+
# @return [Integer]
|
53
|
+
required :progress, Integer
|
54
|
+
|
55
|
+
# @!attribute remixed_from_video_id
|
56
|
+
# Identifier of the source video if this video is a remix.
|
57
|
+
#
|
58
|
+
# @return [String, nil]
|
59
|
+
required :remixed_from_video_id, String, nil?: true
|
60
|
+
|
61
|
+
# @!attribute seconds
|
62
|
+
# Duration of the generated clip in seconds.
|
63
|
+
#
|
64
|
+
# @return [Symbol, OpenAI::Models::VideoSeconds]
|
65
|
+
required :seconds, enum: -> { OpenAI::VideoSeconds }
|
66
|
+
|
67
|
+
# @!attribute size
|
68
|
+
# The resolution of the generated video.
|
69
|
+
#
|
70
|
+
# @return [Symbol, OpenAI::Models::VideoSize]
|
71
|
+
required :size, enum: -> { OpenAI::VideoSize }
|
72
|
+
|
73
|
+
# @!attribute status
|
74
|
+
# Current lifecycle status of the video job.
|
75
|
+
#
|
76
|
+
# @return [Symbol, OpenAI::Models::Video::Status]
|
77
|
+
required :status, enum: -> { OpenAI::Video::Status }
|
78
|
+
|
79
|
+
# @!method initialize(id:, completed_at:, created_at:, error:, expires_at:, model:, progress:, remixed_from_video_id:, seconds:, size:, status:, object: :video)
|
80
|
+
# Structured information describing a generated video job.
|
81
|
+
#
|
82
|
+
# @param id [String] Unique identifier for the video job.
|
83
|
+
#
|
84
|
+
# @param completed_at [Integer, nil] Unix timestamp (seconds) for when the job completed, if finished.
|
85
|
+
#
|
86
|
+
# @param created_at [Integer] Unix timestamp (seconds) for when the job was created.
|
87
|
+
#
|
88
|
+
# @param error [OpenAI::Models::VideoCreateError, nil] Error payload that explains why generation failed, if applicable.
|
89
|
+
#
|
90
|
+
# @param expires_at [Integer, nil] Unix timestamp (seconds) for when the downloadable assets expire, if set.
|
91
|
+
#
|
92
|
+
# @param model [Symbol, OpenAI::Models::VideoModel] The video generation model that produced the job.
|
93
|
+
#
|
94
|
+
# @param progress [Integer] Approximate completion percentage for the generation task.
|
95
|
+
#
|
96
|
+
# @param remixed_from_video_id [String, nil] Identifier of the source video if this video is a remix.
|
97
|
+
#
|
98
|
+
# @param seconds [Symbol, OpenAI::Models::VideoSeconds] Duration of the generated clip in seconds.
|
99
|
+
#
|
100
|
+
# @param size [Symbol, OpenAI::Models::VideoSize] The resolution of the generated video.
|
101
|
+
#
|
102
|
+
# @param status [Symbol, OpenAI::Models::Video::Status] Current lifecycle status of the video job.
|
103
|
+
#
|
104
|
+
# @param object [Symbol, :video] The object type, which is always `video`.
|
105
|
+
|
106
|
+
# Current lifecycle status of the video job.
|
107
|
+
#
|
108
|
+
# @see OpenAI::Models::Video#status
|
109
|
+
module Status
|
110
|
+
extend OpenAI::Internal::Type::Enum
|
111
|
+
|
112
|
+
QUEUED = :queued
|
113
|
+
IN_PROGRESS = :in_progress
|
114
|
+
COMPLETED = :completed
|
115
|
+
FAILED = :failed
|
116
|
+
|
117
|
+
# @!method self.values
|
118
|
+
# @return [Array<Symbol>]
|
119
|
+
end
|
120
|
+
end
|
121
|
+
end
|
122
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
class VideoCreateError < OpenAI::Internal::Type::BaseModel
|
6
|
+
# @!attribute code
|
7
|
+
#
|
8
|
+
# @return [String]
|
9
|
+
required :code, String
|
10
|
+
|
11
|
+
# @!attribute message
|
12
|
+
#
|
13
|
+
# @return [String]
|
14
|
+
required :message, String
|
15
|
+
|
16
|
+
# @!method initialize(code:, message:)
|
17
|
+
# @param code [String]
|
18
|
+
# @param message [String]
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
# @see OpenAI::Resources::Videos#create
|
6
|
+
class VideoCreateParams < OpenAI::Internal::Type::BaseModel
|
7
|
+
extend OpenAI::Internal::Type::RequestParameters::Converter
|
8
|
+
include OpenAI::Internal::Type::RequestParameters
|
9
|
+
|
10
|
+
# @!attribute prompt
|
11
|
+
# Text prompt that describes the video to generate.
|
12
|
+
#
|
13
|
+
# @return [String]
|
14
|
+
required :prompt, String
|
15
|
+
|
16
|
+
# @!attribute input_reference
|
17
|
+
# Optional image reference that guides generation.
|
18
|
+
#
|
19
|
+
# @return [Pathname, StringIO, IO, String, OpenAI::FilePart, nil]
|
20
|
+
optional :input_reference, OpenAI::Internal::Type::FileInput
|
21
|
+
|
22
|
+
# @!attribute model
|
23
|
+
# The video generation model to use. Defaults to `sora-2`.
|
24
|
+
#
|
25
|
+
# @return [Symbol, OpenAI::Models::VideoModel, nil]
|
26
|
+
optional :model, enum: -> { OpenAI::VideoModel }
|
27
|
+
|
28
|
+
# @!attribute seconds
|
29
|
+
# Clip duration in seconds. Defaults to 4 seconds.
|
30
|
+
#
|
31
|
+
# @return [Symbol, OpenAI::Models::VideoSeconds, nil]
|
32
|
+
optional :seconds, enum: -> { OpenAI::VideoSeconds }
|
33
|
+
|
34
|
+
# @!attribute size
|
35
|
+
# Output resolution formatted as width x height. Defaults to 720x1280.
|
36
|
+
#
|
37
|
+
# @return [Symbol, OpenAI::Models::VideoSize, nil]
|
38
|
+
optional :size, enum: -> { OpenAI::VideoSize }
|
39
|
+
|
40
|
+
# @!method initialize(prompt:, input_reference: nil, model: nil, seconds: nil, size: nil, request_options: {})
|
41
|
+
# @param prompt [String] Text prompt that describes the video to generate.
|
42
|
+
#
|
43
|
+
# @param input_reference [Pathname, StringIO, IO, String, OpenAI::FilePart] Optional image reference that guides generation.
|
44
|
+
#
|
45
|
+
# @param model [Symbol, OpenAI::Models::VideoModel] The video generation model to use. Defaults to `sora-2`.
|
46
|
+
#
|
47
|
+
# @param seconds [Symbol, OpenAI::Models::VideoSeconds] Clip duration in seconds. Defaults to 4 seconds.
|
48
|
+
#
|
49
|
+
# @param size [Symbol, OpenAI::Models::VideoSize] Output resolution formatted as width x height. Defaults to 720x1280.
|
50
|
+
#
|
51
|
+
# @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
# @see OpenAI::Resources::Videos#delete
|
6
|
+
class VideoDeleteParams < OpenAI::Internal::Type::BaseModel
|
7
|
+
extend OpenAI::Internal::Type::RequestParameters::Converter
|
8
|
+
include OpenAI::Internal::Type::RequestParameters
|
9
|
+
|
10
|
+
# @!method initialize(request_options: {})
|
11
|
+
# @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
# @see OpenAI::Resources::Videos#delete
|
6
|
+
class VideoDeleteResponse < OpenAI::Internal::Type::BaseModel
|
7
|
+
# @!attribute id
|
8
|
+
# Identifier of the deleted video.
|
9
|
+
#
|
10
|
+
# @return [String]
|
11
|
+
required :id, String
|
12
|
+
|
13
|
+
# @!attribute deleted
|
14
|
+
# Indicates that the video resource was deleted.
|
15
|
+
#
|
16
|
+
# @return [Boolean]
|
17
|
+
required :deleted, OpenAI::Internal::Type::Boolean
|
18
|
+
|
19
|
+
# @!attribute object
|
20
|
+
# The object type that signals the deletion response.
|
21
|
+
#
|
22
|
+
# @return [Symbol, :"video.deleted"]
|
23
|
+
required :object, const: :"video.deleted"
|
24
|
+
|
25
|
+
# @!method initialize(id:, deleted:, object: :"video.deleted")
|
26
|
+
# Confirmation payload returned after deleting a video.
|
27
|
+
#
|
28
|
+
# @param id [String] Identifier of the deleted video.
|
29
|
+
#
|
30
|
+
# @param deleted [Boolean] Indicates that the video resource was deleted.
|
31
|
+
#
|
32
|
+
# @param object [Symbol, :"video.deleted"] The object type that signals the deletion response.
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
# @see OpenAI::Resources::Videos#download_content
|
6
|
+
class VideoDownloadContentParams < OpenAI::Internal::Type::BaseModel
|
7
|
+
extend OpenAI::Internal::Type::RequestParameters::Converter
|
8
|
+
include OpenAI::Internal::Type::RequestParameters
|
9
|
+
|
10
|
+
# @!attribute variant
|
11
|
+
# Which downloadable asset to return. Defaults to the MP4 video.
|
12
|
+
#
|
13
|
+
# @return [Symbol, OpenAI::Models::VideoDownloadContentParams::Variant, nil]
|
14
|
+
optional :variant, enum: -> { OpenAI::VideoDownloadContentParams::Variant }
|
15
|
+
|
16
|
+
# @!method initialize(variant: nil, request_options: {})
|
17
|
+
# @param variant [Symbol, OpenAI::Models::VideoDownloadContentParams::Variant] Which downloadable asset to return. Defaults to the MP4 video.
|
18
|
+
#
|
19
|
+
# @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
|
20
|
+
|
21
|
+
# Which downloadable asset to return. Defaults to the MP4 video.
|
22
|
+
module Variant
|
23
|
+
extend OpenAI::Internal::Type::Enum
|
24
|
+
|
25
|
+
VIDEO = :video
|
26
|
+
THUMBNAIL = :thumbnail
|
27
|
+
SPRITESHEET = :spritesheet
|
28
|
+
|
29
|
+
# @!method self.values
|
30
|
+
# @return [Array<Symbol>]
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
# @see OpenAI::Resources::Videos#list
|
6
|
+
class VideoListParams < OpenAI::Internal::Type::BaseModel
|
7
|
+
extend OpenAI::Internal::Type::RequestParameters::Converter
|
8
|
+
include OpenAI::Internal::Type::RequestParameters
|
9
|
+
|
10
|
+
# @!attribute after
|
11
|
+
# Identifier for the last item from the previous pagination request
|
12
|
+
#
|
13
|
+
# @return [String, nil]
|
14
|
+
optional :after, String
|
15
|
+
|
16
|
+
# @!attribute limit
|
17
|
+
# Number of items to retrieve
|
18
|
+
#
|
19
|
+
# @return [Integer, nil]
|
20
|
+
optional :limit, Integer
|
21
|
+
|
22
|
+
# @!attribute order
|
23
|
+
# Sort order of results by timestamp. Use `asc` for ascending order or `desc` for
|
24
|
+
# descending order.
|
25
|
+
#
|
26
|
+
# @return [Symbol, OpenAI::Models::VideoListParams::Order, nil]
|
27
|
+
optional :order, enum: -> { OpenAI::VideoListParams::Order }
|
28
|
+
|
29
|
+
# @!method initialize(after: nil, limit: nil, order: nil, request_options: {})
|
30
|
+
# Some parameter documentations has been truncated, see
|
31
|
+
# {OpenAI::Models::VideoListParams} for more details.
|
32
|
+
#
|
33
|
+
# @param after [String] Identifier for the last item from the previous pagination request
|
34
|
+
#
|
35
|
+
# @param limit [Integer] Number of items to retrieve
|
36
|
+
#
|
37
|
+
# @param order [Symbol, OpenAI::Models::VideoListParams::Order] Sort order of results by timestamp. Use `asc` for ascending order or `desc` for
|
38
|
+
#
|
39
|
+
# @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
|
40
|
+
|
41
|
+
# Sort order of results by timestamp. Use `asc` for ascending order or `desc` for
|
42
|
+
# descending order.
|
43
|
+
module Order
|
44
|
+
extend OpenAI::Internal::Type::Enum
|
45
|
+
|
46
|
+
ASC = :asc
|
47
|
+
DESC = :desc
|
48
|
+
|
49
|
+
# @!method self.values
|
50
|
+
# @return [Array<Symbol>]
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
module VideoModel
|
6
|
+
extend OpenAI::Internal::Type::Enum
|
7
|
+
|
8
|
+
SORA_2 = :"sora-2"
|
9
|
+
SORA_2_PRO = :"sora-2-pro"
|
10
|
+
|
11
|
+
# @!method self.values
|
12
|
+
# @return [Array<Symbol>]
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
# @see OpenAI::Resources::Videos#remix
|
6
|
+
class VideoRemixParams < OpenAI::Internal::Type::BaseModel
|
7
|
+
extend OpenAI::Internal::Type::RequestParameters::Converter
|
8
|
+
include OpenAI::Internal::Type::RequestParameters
|
9
|
+
|
10
|
+
# @!attribute prompt
|
11
|
+
# Updated text prompt that directs the remix generation.
|
12
|
+
#
|
13
|
+
# @return [String]
|
14
|
+
required :prompt, String
|
15
|
+
|
16
|
+
# @!method initialize(prompt:, request_options: {})
|
17
|
+
# @param prompt [String] Updated text prompt that directs the remix generation.
|
18
|
+
#
|
19
|
+
# @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
# @see OpenAI::Resources::Videos#retrieve
|
6
|
+
class VideoRetrieveParams < OpenAI::Internal::Type::BaseModel
|
7
|
+
extend OpenAI::Internal::Type::RequestParameters::Converter
|
8
|
+
include OpenAI::Internal::Type::RequestParameters
|
9
|
+
|
10
|
+
# @!method initialize(request_options: {})
|
11
|
+
# @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
module VideoSeconds
|
6
|
+
extend OpenAI::Internal::Type::Enum
|
7
|
+
|
8
|
+
VIDEO_SECONDS_4 = :"4"
|
9
|
+
VIDEO_SECONDS_8 = :"8"
|
10
|
+
VIDEO_SECONDS_12 = :"12"
|
11
|
+
|
12
|
+
# @!method self.values
|
13
|
+
# @return [Array<Symbol>]
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Models
|
5
|
+
module VideoSize
|
6
|
+
extend OpenAI::Internal::Type::Enum
|
7
|
+
|
8
|
+
VIDEO_SIZE_720X1280 = :"720x1280"
|
9
|
+
VIDEO_SIZE_1280X720 = :"1280x720"
|
10
|
+
VIDEO_SIZE_1024X1792 = :"1024x1792"
|
11
|
+
VIDEO_SIZE_1792X1024 = :"1792x1024"
|
12
|
+
|
13
|
+
# @!method self.values
|
14
|
+
# @return [Array<Symbol>]
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
data/lib/openai/models.rb
CHANGED
@@ -259,5 +259,27 @@ module OpenAI
|
|
259
259
|
|
260
260
|
VectorStoreUpdateParams = OpenAI::Models::VectorStoreUpdateParams
|
261
261
|
|
262
|
+
Video = OpenAI::Models::Video
|
263
|
+
|
264
|
+
VideoCreateError = OpenAI::Models::VideoCreateError
|
265
|
+
|
266
|
+
VideoCreateParams = OpenAI::Models::VideoCreateParams
|
267
|
+
|
268
|
+
VideoDeleteParams = OpenAI::Models::VideoDeleteParams
|
269
|
+
|
270
|
+
VideoDownloadContentParams = OpenAI::Models::VideoDownloadContentParams
|
271
|
+
|
272
|
+
VideoListParams = OpenAI::Models::VideoListParams
|
273
|
+
|
274
|
+
VideoModel = OpenAI::Models::VideoModel
|
275
|
+
|
276
|
+
VideoRemixParams = OpenAI::Models::VideoRemixParams
|
277
|
+
|
278
|
+
VideoRetrieveParams = OpenAI::Models::VideoRetrieveParams
|
279
|
+
|
280
|
+
VideoSeconds = OpenAI::Models::VideoSeconds
|
281
|
+
|
282
|
+
VideoSize = OpenAI::Models::VideoSize
|
283
|
+
|
262
284
|
Webhooks = OpenAI::Models::Webhooks
|
263
285
|
end
|
@@ -0,0 +1,71 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Resources
|
5
|
+
class Beta
|
6
|
+
class ChatKit
|
7
|
+
class Sessions
|
8
|
+
# Some parameter documentations has been truncated, see
|
9
|
+
# {OpenAI::Models::Beta::ChatKit::SessionCreateParams} for more details.
|
10
|
+
#
|
11
|
+
# Create a ChatKit session
|
12
|
+
#
|
13
|
+
# @overload create(user:, workflow:, chatkit_configuration: nil, expires_after: nil, rate_limits: nil, request_options: {})
|
14
|
+
#
|
15
|
+
# @param user [String] A free-form string that identifies your end user; ensures this Session can acces
|
16
|
+
#
|
17
|
+
# @param workflow [OpenAI::Models::Beta::ChatKit::ChatSessionWorkflowParam] Workflow that powers the session.
|
18
|
+
#
|
19
|
+
# @param chatkit_configuration [OpenAI::Models::Beta::ChatKit::ChatSessionChatKitConfigurationParam] Optional overrides for ChatKit runtime configuration features
|
20
|
+
#
|
21
|
+
# @param expires_after [OpenAI::Models::Beta::ChatKit::ChatSessionExpiresAfterParam] Optional override for session expiration timing in seconds from creation. Defaul
|
22
|
+
#
|
23
|
+
# @param rate_limits [OpenAI::Models::Beta::ChatKit::ChatSessionRateLimitsParam] Optional override for per-minute request limits. When omitted, defaults to 10.
|
24
|
+
#
|
25
|
+
# @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
|
26
|
+
#
|
27
|
+
# @return [OpenAI::Models::Beta::ChatKit::ChatSession]
|
28
|
+
#
|
29
|
+
# @see OpenAI::Models::Beta::ChatKit::SessionCreateParams
|
30
|
+
def create(params)
|
31
|
+
parsed, options = OpenAI::Beta::ChatKit::SessionCreateParams.dump_request(params)
|
32
|
+
@client.request(
|
33
|
+
method: :post,
|
34
|
+
path: "chatkit/sessions",
|
35
|
+
body: parsed,
|
36
|
+
model: OpenAI::Beta::ChatKit::ChatSession,
|
37
|
+
options: {extra_headers: {"OpenAI-Beta" => "chatkit_beta=v1"}, **options}
|
38
|
+
)
|
39
|
+
end
|
40
|
+
|
41
|
+
# Cancel a ChatKit session
|
42
|
+
#
|
43
|
+
# @overload cancel(session_id, request_options: {})
|
44
|
+
#
|
45
|
+
# @param session_id [String] Unique identifier for the ChatKit session to cancel.
|
46
|
+
#
|
47
|
+
# @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
|
48
|
+
#
|
49
|
+
# @return [OpenAI::Models::Beta::ChatKit::ChatSession]
|
50
|
+
#
|
51
|
+
# @see OpenAI::Models::Beta::ChatKit::SessionCancelParams
|
52
|
+
def cancel(session_id, params = {})
|
53
|
+
@client.request(
|
54
|
+
method: :post,
|
55
|
+
path: ["chatkit/sessions/%1$s/cancel", session_id],
|
56
|
+
model: OpenAI::Beta::ChatKit::ChatSession,
|
57
|
+
options: {extra_headers: {"OpenAI-Beta" => "chatkit_beta=v1"}, **params[:request_options].to_h}
|
58
|
+
)
|
59
|
+
end
|
60
|
+
|
61
|
+
# @api private
|
62
|
+
#
|
63
|
+
# @param client [OpenAI::Client]
|
64
|
+
def initialize(client:)
|
65
|
+
@client = client
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
@@ -0,0 +1,126 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module OpenAI
|
4
|
+
module Resources
|
5
|
+
class Beta
|
6
|
+
class ChatKit
|
7
|
+
class Threads
|
8
|
+
# Retrieve a ChatKit thread
|
9
|
+
#
|
10
|
+
# @overload retrieve(thread_id, request_options: {})
|
11
|
+
#
|
12
|
+
# @param thread_id [String] Identifier of the ChatKit thread to retrieve.
|
13
|
+
#
|
14
|
+
# @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
|
15
|
+
#
|
16
|
+
# @return [OpenAI::Models::Beta::ChatKit::ChatKitThread]
|
17
|
+
#
|
18
|
+
# @see OpenAI::Models::Beta::ChatKit::ThreadRetrieveParams
|
19
|
+
def retrieve(thread_id, params = {})
|
20
|
+
@client.request(
|
21
|
+
method: :get,
|
22
|
+
path: ["chatkit/threads/%1$s", thread_id],
|
23
|
+
model: OpenAI::Beta::ChatKit::ChatKitThread,
|
24
|
+
options: {extra_headers: {"OpenAI-Beta" => "chatkit_beta=v1"}, **params[:request_options].to_h}
|
25
|
+
)
|
26
|
+
end
|
27
|
+
|
28
|
+
# Some parameter documentations has been truncated, see
|
29
|
+
# {OpenAI::Models::Beta::ChatKit::ThreadListParams} for more details.
|
30
|
+
#
|
31
|
+
# List ChatKit threads
|
32
|
+
#
|
33
|
+
# @overload list(after: nil, before: nil, limit: nil, order: nil, user: nil, request_options: {})
|
34
|
+
#
|
35
|
+
# @param after [String] List items created after this thread item ID. Defaults to null for the first pag
|
36
|
+
#
|
37
|
+
# @param before [String] List items created before this thread item ID. Defaults to null for the newest r
|
38
|
+
#
|
39
|
+
# @param limit [Integer] Maximum number of thread items to return. Defaults to 20.
|
40
|
+
#
|
41
|
+
# @param order [Symbol, OpenAI::Models::Beta::ChatKit::ThreadListParams::Order] Sort order for results by creation time. Defaults to `desc`.
|
42
|
+
#
|
43
|
+
# @param user [String] Filter threads that belong to this user identifier. Defaults to null to return a
|
44
|
+
#
|
45
|
+
# @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
|
46
|
+
#
|
47
|
+
# @return [OpenAI::Internal::ConversationCursorPage<OpenAI::Models::Beta::ChatKit::ChatKitThread>]
|
48
|
+
#
|
49
|
+
# @see OpenAI::Models::Beta::ChatKit::ThreadListParams
|
50
|
+
def list(params = {})
|
51
|
+
parsed, options = OpenAI::Beta::ChatKit::ThreadListParams.dump_request(params)
|
52
|
+
@client.request(
|
53
|
+
method: :get,
|
54
|
+
path: "chatkit/threads",
|
55
|
+
query: parsed,
|
56
|
+
page: OpenAI::Internal::ConversationCursorPage,
|
57
|
+
model: OpenAI::Beta::ChatKit::ChatKitThread,
|
58
|
+
options: {extra_headers: {"OpenAI-Beta" => "chatkit_beta=v1"}, **options}
|
59
|
+
)
|
60
|
+
end
|
61
|
+
|
62
|
+
# Delete a ChatKit thread
|
63
|
+
#
|
64
|
+
# @overload delete(thread_id, request_options: {})
|
65
|
+
#
|
66
|
+
# @param thread_id [String] Identifier of the ChatKit thread to delete.
|
67
|
+
#
|
68
|
+
# @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
|
69
|
+
#
|
70
|
+
# @return [OpenAI::Models::Beta::ChatKit::ThreadDeleteResponse]
|
71
|
+
#
|
72
|
+
# @see OpenAI::Models::Beta::ChatKit::ThreadDeleteParams
|
73
|
+
def delete(thread_id, params = {})
|
74
|
+
@client.request(
|
75
|
+
method: :delete,
|
76
|
+
path: ["chatkit/threads/%1$s", thread_id],
|
77
|
+
model: OpenAI::Models::Beta::ChatKit::ThreadDeleteResponse,
|
78
|
+
options: {extra_headers: {"OpenAI-Beta" => "chatkit_beta=v1"}, **params[:request_options].to_h}
|
79
|
+
)
|
80
|
+
end
|
81
|
+
|
82
|
+
# Some parameter documentations has been truncated, see
|
83
|
+
# {OpenAI::Models::Beta::ChatKit::ThreadListItemsParams} for more details.
|
84
|
+
#
|
85
|
+
# List ChatKit thread items
|
86
|
+
#
|
87
|
+
# @overload list_items(thread_id, after: nil, before: nil, limit: nil, order: nil, request_options: {})
|
88
|
+
#
|
89
|
+
# @param thread_id [String] Identifier of the ChatKit thread whose items are requested.
|
90
|
+
#
|
91
|
+
# @param after [String] List items created after this thread item ID. Defaults to null for the first pag
|
92
|
+
#
|
93
|
+
# @param before [String] List items created before this thread item ID. Defaults to null for the newest r
|
94
|
+
#
|
95
|
+
# @param limit [Integer] Maximum number of thread items to return. Defaults to 20.
|
96
|
+
#
|
97
|
+
# @param order [Symbol, OpenAI::Models::Beta::ChatKit::ThreadListItemsParams::Order] Sort order for results by creation time. Defaults to `desc`.
|
98
|
+
#
|
99
|
+
# @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
|
100
|
+
#
|
101
|
+
# @return [OpenAI::Internal::ConversationCursorPage<OpenAI::Models::Beta::ChatKit::ChatKitThreadUserMessageItem, OpenAI::Models::Beta::ChatKit::ChatKitThreadAssistantMessageItem, OpenAI::Models::Beta::ChatKit::ChatKitWidgetItem, OpenAI::Models::Beta::ChatKit::ChatKitThreadItemList::Data::ChatKitClientToolCall, OpenAI::Models::Beta::ChatKit::ChatKitThreadItemList::Data::ChatKitTask, OpenAI::Models::Beta::ChatKit::ChatKitThreadItemList::Data::ChatKitTaskGroup>]
|
102
|
+
#
|
103
|
+
# @see OpenAI::Models::Beta::ChatKit::ThreadListItemsParams
|
104
|
+
def list_items(thread_id, params = {})
|
105
|
+
parsed, options = OpenAI::Beta::ChatKit::ThreadListItemsParams.dump_request(params)
|
106
|
+
@client.request(
|
107
|
+
method: :get,
|
108
|
+
path: ["chatkit/threads/%1$s/items", thread_id],
|
109
|
+
query: parsed,
|
110
|
+
page: OpenAI::Internal::ConversationCursorPage,
|
111
|
+
model: OpenAI::Beta::ChatKit::ChatKitThreadItemList::Data,
|
112
|
+
options: {extra_headers: {"OpenAI-Beta" => "chatkit_beta=v1"}, **options}
|
113
|
+
)
|
114
|
+
end
|
115
|
+
|
116
|
+
# @api private
|
117
|
+
#
|
118
|
+
# @param client [OpenAI::Client]
|
119
|
+
def initialize(client:)
|
120
|
+
@client = client
|
121
|
+
end
|
122
|
+
end
|
123
|
+
end
|
124
|
+
end
|
125
|
+
end
|
126
|
+
end
|