together 1.5.35__py3-none-any.whl → 2.0.0a7__py3-none-any.whl
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.
- together/__init__.py +101 -114
- together/_base_client.py +1995 -0
- together/_client.py +1033 -0
- together/_compat.py +219 -0
- together/_constants.py +14 -0
- together/_exceptions.py +108 -0
- together/_files.py +123 -0
- together/_models.py +857 -0
- together/_qs.py +150 -0
- together/_resource.py +43 -0
- together/_response.py +830 -0
- together/_streaming.py +370 -0
- together/_types.py +260 -0
- together/_utils/__init__.py +64 -0
- together/_utils/_compat.py +45 -0
- together/_utils/_datetime_parse.py +136 -0
- together/_utils/_logs.py +25 -0
- together/_utils/_proxy.py +65 -0
- together/_utils/_reflection.py +42 -0
- together/_utils/_resources_proxy.py +24 -0
- together/_utils/_streams.py +12 -0
- together/_utils/_sync.py +58 -0
- together/_utils/_transform.py +457 -0
- together/_utils/_typing.py +156 -0
- together/_utils/_utils.py +421 -0
- together/_version.py +4 -0
- together/lib/.keep +4 -0
- together/lib/__init__.py +23 -0
- together/{cli → lib/cli}/api/endpoints.py +66 -84
- together/{cli/api/evaluation.py → lib/cli/api/evals.py} +152 -43
- together/{cli → lib/cli}/api/files.py +20 -17
- together/{cli/api/finetune.py → lib/cli/api/fine_tuning.py} +116 -172
- together/{cli → lib/cli}/api/models.py +34 -27
- together/lib/cli/api/utils.py +50 -0
- together/{cli → lib/cli}/cli.py +16 -26
- together/{constants.py → lib/constants.py} +11 -24
- together/lib/resources/__init__.py +11 -0
- together/lib/resources/files.py +999 -0
- together/lib/resources/fine_tuning.py +280 -0
- together/lib/resources/models.py +35 -0
- together/lib/types/__init__.py +13 -0
- together/lib/types/error.py +9 -0
- together/lib/types/fine_tuning.py +397 -0
- together/{utils → lib/utils}/__init__.py +6 -14
- together/{utils → lib/utils}/_log.py +11 -16
- together/{utils → lib/utils}/files.py +90 -288
- together/lib/utils/serializer.py +10 -0
- together/{utils → lib/utils}/tools.py +19 -55
- together/resources/__init__.py +225 -39
- together/resources/audio/__init__.py +72 -48
- together/resources/audio/audio.py +198 -0
- together/resources/audio/speech.py +574 -128
- together/resources/audio/transcriptions.py +247 -261
- together/resources/audio/translations.py +221 -241
- together/resources/audio/voices.py +111 -41
- together/resources/batches.py +417 -0
- together/resources/chat/__init__.py +30 -21
- together/resources/chat/chat.py +102 -0
- together/resources/chat/completions.py +1063 -263
- together/resources/code_interpreter/__init__.py +33 -0
- together/resources/code_interpreter/code_interpreter.py +258 -0
- together/resources/code_interpreter/sessions.py +135 -0
- together/resources/completions.py +884 -225
- together/resources/embeddings.py +172 -68
- together/resources/endpoints.py +589 -490
- together/resources/evals.py +452 -0
- together/resources/files.py +397 -129
- together/resources/fine_tuning.py +1033 -0
- together/resources/hardware.py +181 -0
- together/resources/images.py +258 -104
- together/resources/jobs.py +214 -0
- together/resources/models.py +223 -193
- together/resources/rerank.py +190 -92
- together/resources/videos.py +286 -214
- together/types/__init__.py +66 -167
- together/types/audio/__init__.py +10 -0
- together/types/audio/speech_create_params.py +75 -0
- together/types/audio/transcription_create_params.py +54 -0
- together/types/audio/transcription_create_response.py +111 -0
- together/types/audio/translation_create_params.py +40 -0
- together/types/audio/translation_create_response.py +70 -0
- together/types/audio/voice_list_response.py +23 -0
- together/types/audio_speech_stream_chunk.py +16 -0
- together/types/autoscaling.py +13 -0
- together/types/autoscaling_param.py +15 -0
- together/types/batch_create_params.py +24 -0
- together/types/batch_create_response.py +14 -0
- together/types/batch_job.py +45 -0
- together/types/batch_list_response.py +10 -0
- together/types/chat/__init__.py +18 -0
- together/types/chat/chat_completion.py +60 -0
- together/types/chat/chat_completion_chunk.py +61 -0
- together/types/chat/chat_completion_structured_message_image_url_param.py +18 -0
- together/types/chat/chat_completion_structured_message_text_param.py +13 -0
- together/types/chat/chat_completion_structured_message_video_url_param.py +18 -0
- together/types/chat/chat_completion_usage.py +13 -0
- together/types/chat/chat_completion_warning.py +9 -0
- together/types/chat/completion_create_params.py +329 -0
- together/types/code_interpreter/__init__.py +5 -0
- together/types/code_interpreter/session_list_response.py +31 -0
- together/types/code_interpreter_execute_params.py +45 -0
- together/types/completion.py +42 -0
- together/types/completion_chunk.py +66 -0
- together/types/completion_create_params.py +138 -0
- together/types/dedicated_endpoint.py +44 -0
- together/types/embedding.py +24 -0
- together/types/embedding_create_params.py +31 -0
- together/types/endpoint_create_params.py +43 -0
- together/types/endpoint_list_avzones_response.py +11 -0
- together/types/endpoint_list_params.py +18 -0
- together/types/endpoint_list_response.py +41 -0
- together/types/endpoint_update_params.py +27 -0
- together/types/eval_create_params.py +263 -0
- together/types/eval_create_response.py +16 -0
- together/types/eval_list_params.py +21 -0
- together/types/eval_list_response.py +10 -0
- together/types/eval_status_response.py +100 -0
- together/types/evaluation_job.py +139 -0
- together/types/execute_response.py +108 -0
- together/types/file_delete_response.py +13 -0
- together/types/file_list.py +12 -0
- together/types/file_purpose.py +9 -0
- together/types/file_response.py +31 -0
- together/types/file_type.py +7 -0
- together/types/fine_tuning_cancel_response.py +194 -0
- together/types/fine_tuning_content_params.py +24 -0
- together/types/fine_tuning_delete_params.py +11 -0
- together/types/fine_tuning_delete_response.py +12 -0
- together/types/fine_tuning_list_checkpoints_response.py +21 -0
- together/types/fine_tuning_list_events_response.py +12 -0
- together/types/fine_tuning_list_response.py +199 -0
- together/types/finetune_event.py +41 -0
- together/types/finetune_event_type.py +33 -0
- together/types/finetune_response.py +177 -0
- together/types/hardware_list_params.py +16 -0
- together/types/hardware_list_response.py +58 -0
- together/types/image_data_b64.py +15 -0
- together/types/image_data_url.py +15 -0
- together/types/image_file.py +23 -0
- together/types/image_generate_params.py +85 -0
- together/types/job_list_response.py +47 -0
- together/types/job_retrieve_response.py +43 -0
- together/types/log_probs.py +18 -0
- together/types/model_list_response.py +10 -0
- together/types/model_object.py +42 -0
- together/types/model_upload_params.py +36 -0
- together/types/model_upload_response.py +23 -0
- together/types/rerank_create_params.py +36 -0
- together/types/rerank_create_response.py +36 -0
- together/types/tool_choice.py +23 -0
- together/types/tool_choice_param.py +23 -0
- together/types/tools_param.py +23 -0
- together/types/training_method_dpo.py +22 -0
- together/types/training_method_sft.py +18 -0
- together/types/video_create_params.py +86 -0
- together/types/video_create_response.py +10 -0
- together/types/video_job.py +57 -0
- together-2.0.0a7.dist-info/METADATA +730 -0
- together-2.0.0a7.dist-info/RECORD +165 -0
- {together-1.5.35.dist-info → together-2.0.0a7.dist-info}/WHEEL +1 -1
- together-2.0.0a7.dist-info/entry_points.txt +2 -0
- {together-1.5.35.dist-info → together-2.0.0a7.dist-info}/licenses/LICENSE +1 -1
- together/abstract/api_requestor.py +0 -770
- together/cli/api/chat.py +0 -298
- together/cli/api/completions.py +0 -119
- together/cli/api/images.py +0 -93
- together/cli/api/utils.py +0 -139
- together/client.py +0 -186
- together/error.py +0 -194
- together/filemanager.py +0 -635
- together/legacy/__init__.py +0 -0
- together/legacy/base.py +0 -27
- together/legacy/complete.py +0 -93
- together/legacy/embeddings.py +0 -27
- together/legacy/files.py +0 -146
- together/legacy/finetune.py +0 -177
- together/legacy/images.py +0 -27
- together/legacy/models.py +0 -44
- together/resources/batch.py +0 -165
- together/resources/code_interpreter.py +0 -82
- together/resources/evaluation.py +0 -808
- together/resources/finetune.py +0 -1388
- together/together_response.py +0 -50
- together/types/abstract.py +0 -26
- together/types/audio_speech.py +0 -311
- together/types/batch.py +0 -54
- together/types/chat_completions.py +0 -210
- together/types/code_interpreter.py +0 -57
- together/types/common.py +0 -67
- together/types/completions.py +0 -107
- together/types/embeddings.py +0 -35
- together/types/endpoints.py +0 -123
- together/types/error.py +0 -16
- together/types/evaluation.py +0 -93
- together/types/files.py +0 -93
- together/types/finetune.py +0 -465
- together/types/images.py +0 -42
- together/types/models.py +0 -96
- together/types/rerank.py +0 -43
- together/types/videos.py +0 -69
- together/utils/api_helpers.py +0 -124
- together/version.py +0 -6
- together-1.5.35.dist-info/METADATA +0 -583
- together-1.5.35.dist-info/RECORD +0 -77
- together-1.5.35.dist-info/entry_points.txt +0 -3
- /together/{abstract → lib/cli}/__init__.py +0 -0
- /together/{cli → lib/cli/api}/__init__.py +0 -0
- /together/{cli/api/__init__.py → py.typed} +0 -0
together/resources/videos.py
CHANGED
|
@@ -1,303 +1,375 @@
|
|
|
1
|
-
from
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
2
|
|
|
3
|
-
from
|
|
4
|
-
import sys
|
|
3
|
+
from __future__ import annotations
|
|
5
4
|
|
|
6
|
-
from
|
|
7
|
-
from
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
from
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
5
|
+
from typing import Iterable
|
|
6
|
+
from typing_extensions import Literal
|
|
7
|
+
|
|
8
|
+
import httpx
|
|
9
|
+
|
|
10
|
+
from ..types import video_create_params
|
|
11
|
+
from .._types import Body, Omit, Query, Headers, NotGiven, SequenceNotStr, omit, not_given
|
|
12
|
+
from .._utils import maybe_transform, async_maybe_transform
|
|
13
|
+
from .._compat import cached_property
|
|
14
|
+
from .._resource import SyncAPIResource, AsyncAPIResource
|
|
15
|
+
from .._response import (
|
|
16
|
+
to_raw_response_wrapper,
|
|
17
|
+
to_streamed_response_wrapper,
|
|
18
|
+
async_to_raw_response_wrapper,
|
|
19
|
+
async_to_streamed_response_wrapper,
|
|
16
20
|
)
|
|
21
|
+
from .._base_client import make_request_options
|
|
22
|
+
from ..types.video_job import VideoJob
|
|
23
|
+
from ..types.video_create_response import VideoCreateResponse
|
|
24
|
+
|
|
25
|
+
__all__ = ["VideosResource", "AsyncVideosResource"]
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class VideosResource(SyncAPIResource):
|
|
29
|
+
@cached_property
|
|
30
|
+
def with_raw_response(self) -> VideosResourceWithRawResponse:
|
|
31
|
+
"""
|
|
32
|
+
This property can be used as a prefix for any HTTP method call to return
|
|
33
|
+
the raw response object instead of the parsed content.
|
|
17
34
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
from typing_extensions import Literal
|
|
35
|
+
For more information, see https://www.github.com/togethercomputer/together-py#accessing-raw-response-data-eg-headers
|
|
36
|
+
"""
|
|
37
|
+
return VideosResourceWithRawResponse(self)
|
|
22
38
|
|
|
39
|
+
@cached_property
|
|
40
|
+
def with_streaming_response(self) -> VideosResourceWithStreamingResponse:
|
|
41
|
+
"""
|
|
42
|
+
An alternative to `.with_raw_response` that doesn't eagerly read the response body.
|
|
23
43
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
self
|
|
44
|
+
For more information, see https://www.github.com/togethercomputer/together-py#with_streaming_response
|
|
45
|
+
"""
|
|
46
|
+
return VideosResourceWithStreamingResponse(self)
|
|
27
47
|
|
|
28
48
|
def create(
|
|
29
49
|
self,
|
|
30
50
|
*,
|
|
31
51
|
model: str,
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
52
|
+
fps: int | Omit = omit,
|
|
53
|
+
frame_images: Iterable[video_create_params.FrameImage] | Omit = omit,
|
|
54
|
+
guidance_scale: int | Omit = omit,
|
|
55
|
+
height: int | Omit = omit,
|
|
56
|
+
negative_prompt: str | Omit = omit,
|
|
57
|
+
output_format: Literal["MP4", "WEBM"] | Omit = omit,
|
|
58
|
+
output_quality: int | Omit = omit,
|
|
59
|
+
prompt: str | Omit = omit,
|
|
60
|
+
reference_images: SequenceNotStr[str] | Omit = omit,
|
|
61
|
+
seconds: str | Omit = omit,
|
|
62
|
+
seed: int | Omit = omit,
|
|
63
|
+
steps: int | Omit = omit,
|
|
64
|
+
width: int | Omit = omit,
|
|
65
|
+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
66
|
+
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
67
|
+
extra_headers: Headers | None = None,
|
|
68
|
+
extra_query: Query | None = None,
|
|
69
|
+
extra_body: Body | None = None,
|
|
70
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
71
|
+
) -> VideoCreateResponse:
|
|
47
72
|
"""
|
|
48
|
-
|
|
73
|
+
Create a video
|
|
49
74
|
|
|
50
75
|
Args:
|
|
51
|
-
|
|
76
|
+
model: The model to be used for the video creation request.
|
|
52
77
|
|
|
53
|
-
|
|
78
|
+
fps: Frames per second. Defaults to 24.
|
|
54
79
|
|
|
55
|
-
|
|
80
|
+
frame_images: Array of images to guide video generation, similar to keyframes.
|
|
56
81
|
|
|
57
|
-
|
|
82
|
+
guidance_scale: Controls how closely the video generation follows your prompt. Higher values
|
|
83
|
+
make the model adhere more strictly to your text description, while lower values
|
|
84
|
+
allow more creative freedom. guidence_scale affects both visual content and
|
|
85
|
+
temporal consistency.Recommended range is 6.0-10.0 for most video models. Values
|
|
86
|
+
above 12 may cause over-guidance artifacts or unnatural motion patterns.
|
|
58
87
|
|
|
59
|
-
|
|
88
|
+
negative_prompt: Similar to prompt, but specifies what to avoid instead of what to include
|
|
60
89
|
|
|
61
|
-
|
|
90
|
+
output_format: Specifies the format of the output video. Defaults to MP4.
|
|
62
91
|
|
|
63
|
-
|
|
64
|
-
generation. More steps typically result in higher quality output but require longer
|
|
65
|
-
processing time. Min 10 max 50. Defaults to 20.
|
|
92
|
+
output_quality: Compression quality. Defaults to 20.
|
|
66
93
|
|
|
67
|
-
|
|
68
|
-
seed allows deterministic video generation. If not provided, a random seed is
|
|
69
|
-
generated for each request. Note: When requesting multiple videos with the same
|
|
70
|
-
seed, the seed will be incremented by 1 (+1) for each video generated.
|
|
94
|
+
prompt: Text prompt that describes the video to generate.
|
|
71
95
|
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
most video models. Values above 12 may cause over-guidance artifacts or unnatural
|
|
76
|
-
motion patterns. Defaults to 8.
|
|
96
|
+
reference_images: Unlike frame_images which constrain specific timeline positions, reference
|
|
97
|
+
images guide the general appearance that should appear consistently across the
|
|
98
|
+
video.
|
|
77
99
|
|
|
78
|
-
|
|
79
|
-
or "WEBM". Defaults to "MP4".
|
|
100
|
+
seconds: Clip duration in seconds.
|
|
80
101
|
|
|
81
|
-
|
|
102
|
+
seed: Seed to use in initializing the video generation. Using the same seed allows
|
|
103
|
+
deterministic video generation. If not provided a random seed is generated for
|
|
104
|
+
each request.
|
|
82
105
|
|
|
83
|
-
|
|
84
|
-
|
|
106
|
+
steps: The number of denoising steps the model performs during video generation. More
|
|
107
|
+
steps typically result in higher quality output but require longer processing
|
|
108
|
+
time.
|
|
85
109
|
|
|
86
|
-
|
|
87
|
-
like keyframes. If size 1, starting frame; if size 2, starting and ending frame;
|
|
88
|
-
if more than 2 then frame must be specified. Defaults to None.
|
|
110
|
+
extra_headers: Send extra headers
|
|
89
111
|
|
|
90
|
-
|
|
91
|
-
used to condition the generation process. These images provide visual guidance to
|
|
92
|
-
help the model generate content that aligns with the style, composition, or
|
|
93
|
-
characteristics of the reference materials. Defaults to None.
|
|
112
|
+
extra_query: Add additional query parameters to the request
|
|
94
113
|
|
|
95
|
-
|
|
96
|
-
CreateVideoResponse: Object containing video generation job id
|
|
97
|
-
"""
|
|
114
|
+
extra_body: Add additional JSON properties to the request
|
|
98
115
|
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
response, _, _ = requestor.request(
|
|
122
|
-
options=TogetherRequest(
|
|
123
|
-
method="POST",
|
|
124
|
-
url="../v2/videos",
|
|
125
|
-
params=parameter_payload,
|
|
116
|
+
timeout: Override the client-level default timeout for this request, in seconds
|
|
117
|
+
"""
|
|
118
|
+
return self._post(
|
|
119
|
+
"/videos" if self._client._base_url_overridden else "https://api.together.xyz/v2/videos",
|
|
120
|
+
body=maybe_transform(
|
|
121
|
+
{
|
|
122
|
+
"model": model,
|
|
123
|
+
"fps": fps,
|
|
124
|
+
"frame_images": frame_images,
|
|
125
|
+
"guidance_scale": guidance_scale,
|
|
126
|
+
"height": height,
|
|
127
|
+
"negative_prompt": negative_prompt,
|
|
128
|
+
"output_format": output_format,
|
|
129
|
+
"output_quality": output_quality,
|
|
130
|
+
"prompt": prompt,
|
|
131
|
+
"reference_images": reference_images,
|
|
132
|
+
"seconds": seconds,
|
|
133
|
+
"seed": seed,
|
|
134
|
+
"steps": steps,
|
|
135
|
+
"width": width,
|
|
136
|
+
},
|
|
137
|
+
video_create_params.VideoCreateParams,
|
|
126
138
|
),
|
|
127
|
-
|
|
139
|
+
options=make_request_options(
|
|
140
|
+
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
141
|
+
),
|
|
142
|
+
cast_to=VideoCreateResponse,
|
|
128
143
|
)
|
|
129
144
|
|
|
130
|
-
assert isinstance(response, TogetherResponse)
|
|
131
|
-
|
|
132
|
-
return CreateVideoResponse(**response.data)
|
|
133
|
-
|
|
134
145
|
def retrieve(
|
|
135
146
|
self,
|
|
136
147
|
id: str,
|
|
148
|
+
*,
|
|
149
|
+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
150
|
+
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
151
|
+
extra_headers: Headers | None = None,
|
|
152
|
+
extra_query: Query | None = None,
|
|
153
|
+
extra_body: Body | None = None,
|
|
154
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
137
155
|
) -> VideoJob:
|
|
138
156
|
"""
|
|
139
|
-
|
|
157
|
+
Fetch video metadata
|
|
140
158
|
|
|
141
159
|
Args:
|
|
142
|
-
|
|
160
|
+
extra_headers: Send extra headers
|
|
143
161
|
|
|
144
|
-
|
|
145
|
-
VideoJob: Object containing the current status and details of the video creation job
|
|
146
|
-
"""
|
|
162
|
+
extra_query: Add additional query parameters to the request
|
|
147
163
|
|
|
148
|
-
|
|
149
|
-
client=self._client,
|
|
150
|
-
)
|
|
164
|
+
extra_body: Add additional JSON properties to the request
|
|
151
165
|
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
166
|
+
timeout: Override the client-level default timeout for this request, in seconds
|
|
167
|
+
"""
|
|
168
|
+
if not id:
|
|
169
|
+
raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
|
|
170
|
+
return self._get(
|
|
171
|
+
f"/videos/{id}" if self._client._base_url_overridden else f"https://api.together.xyz/v2/videos/{id}",
|
|
172
|
+
options=make_request_options(
|
|
173
|
+
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
156
174
|
),
|
|
157
|
-
|
|
175
|
+
cast_to=VideoJob,
|
|
158
176
|
)
|
|
159
177
|
|
|
160
|
-
assert isinstance(response, TogetherResponse)
|
|
161
178
|
|
|
162
|
-
|
|
179
|
+
class AsyncVideosResource(AsyncAPIResource):
|
|
180
|
+
@cached_property
|
|
181
|
+
def with_raw_response(self) -> AsyncVideosResourceWithRawResponse:
|
|
182
|
+
"""
|
|
183
|
+
This property can be used as a prefix for any HTTP method call to return
|
|
184
|
+
the raw response object instead of the parsed content.
|
|
185
|
+
|
|
186
|
+
For more information, see https://www.github.com/togethercomputer/together-py#accessing-raw-response-data-eg-headers
|
|
187
|
+
"""
|
|
188
|
+
return AsyncVideosResourceWithRawResponse(self)
|
|
163
189
|
|
|
190
|
+
@cached_property
|
|
191
|
+
def with_streaming_response(self) -> AsyncVideosResourceWithStreamingResponse:
|
|
192
|
+
"""
|
|
193
|
+
An alternative to `.with_raw_response` that doesn't eagerly read the response body.
|
|
164
194
|
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
self
|
|
195
|
+
For more information, see https://www.github.com/togethercomputer/together-py#with_streaming_response
|
|
196
|
+
"""
|
|
197
|
+
return AsyncVideosResourceWithStreamingResponse(self)
|
|
168
198
|
|
|
169
199
|
async def create(
|
|
170
200
|
self,
|
|
171
201
|
*,
|
|
172
|
-
prompt: str,
|
|
173
202
|
model: str,
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
203
|
+
fps: int | Omit = omit,
|
|
204
|
+
frame_images: Iterable[video_create_params.FrameImage] | Omit = omit,
|
|
205
|
+
guidance_scale: int | Omit = omit,
|
|
206
|
+
height: int | Omit = omit,
|
|
207
|
+
negative_prompt: str | Omit = omit,
|
|
208
|
+
output_format: Literal["MP4", "WEBM"] | Omit = omit,
|
|
209
|
+
output_quality: int | Omit = omit,
|
|
210
|
+
prompt: str | Omit = omit,
|
|
211
|
+
reference_images: SequenceNotStr[str] | Omit = omit,
|
|
212
|
+
seconds: str | Omit = omit,
|
|
213
|
+
seed: int | Omit = omit,
|
|
214
|
+
steps: int | Omit = omit,
|
|
215
|
+
width: int | Omit = omit,
|
|
216
|
+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
217
|
+
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
218
|
+
extra_headers: Headers | None = None,
|
|
219
|
+
extra_query: Query | None = None,
|
|
220
|
+
extra_body: Body | None = None,
|
|
221
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
222
|
+
) -> VideoCreateResponse:
|
|
188
223
|
"""
|
|
189
|
-
|
|
224
|
+
Create a video
|
|
190
225
|
|
|
191
226
|
Args:
|
|
192
|
-
|
|
227
|
+
model: The model to be used for the video creation request.
|
|
193
228
|
|
|
194
|
-
|
|
229
|
+
fps: Frames per second. Defaults to 24.
|
|
195
230
|
|
|
196
|
-
|
|
231
|
+
frame_images: Array of images to guide video generation, similar to keyframes.
|
|
197
232
|
|
|
198
|
-
|
|
233
|
+
guidance_scale: Controls how closely the video generation follows your prompt. Higher values
|
|
234
|
+
make the model adhere more strictly to your text description, while lower values
|
|
235
|
+
allow more creative freedom. guidence_scale affects both visual content and
|
|
236
|
+
temporal consistency.Recommended range is 6.0-10.0 for most video models. Values
|
|
237
|
+
above 12 may cause over-guidance artifacts or unnatural motion patterns.
|
|
199
238
|
|
|
200
|
-
|
|
239
|
+
negative_prompt: Similar to prompt, but specifies what to avoid instead of what to include
|
|
201
240
|
|
|
202
|
-
|
|
241
|
+
output_format: Specifies the format of the output video. Defaults to MP4.
|
|
203
242
|
|
|
204
|
-
|
|
205
|
-
generation. More steps typically result in higher quality output but require longer
|
|
206
|
-
processing time. Min 10 max 50. Defaults to 20.
|
|
243
|
+
output_quality: Compression quality. Defaults to 20.
|
|
207
244
|
|
|
208
|
-
|
|
209
|
-
seed allows deterministic video generation. If not provided, a random seed is
|
|
210
|
-
generated for each request. Note: When requesting multiple videos with the same
|
|
211
|
-
seed, the seed will be incremented by 1 (+1) for each video generated.
|
|
245
|
+
prompt: Text prompt that describes the video to generate.
|
|
212
246
|
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
most video models. Values above 12 may cause over-guidance artifacts or unnatural
|
|
217
|
-
motion patterns. Defaults to 8.
|
|
247
|
+
reference_images: Unlike frame_images which constrain specific timeline positions, reference
|
|
248
|
+
images guide the general appearance that should appear consistently across the
|
|
249
|
+
video.
|
|
218
250
|
|
|
219
|
-
|
|
220
|
-
or "WEBM". Defaults to "MP4".
|
|
251
|
+
seconds: Clip duration in seconds.
|
|
221
252
|
|
|
222
|
-
|
|
253
|
+
seed: Seed to use in initializing the video generation. Using the same seed allows
|
|
254
|
+
deterministic video generation. If not provided a random seed is generated for
|
|
255
|
+
each request.
|
|
223
256
|
|
|
224
|
-
|
|
225
|
-
|
|
257
|
+
steps: The number of denoising steps the model performs during video generation. More
|
|
258
|
+
steps typically result in higher quality output but require longer processing
|
|
259
|
+
time.
|
|
226
260
|
|
|
227
|
-
|
|
228
|
-
like keyframes. If size 1, starting frame; if size 2, starting and ending frame;
|
|
229
|
-
if more than 2 then frame must be specified. Defaults to None.
|
|
261
|
+
extra_headers: Send extra headers
|
|
230
262
|
|
|
231
|
-
|
|
232
|
-
used to condition the generation process. These images provide visual guidance to
|
|
233
|
-
help the model generate content that aligns with the style, composition, or
|
|
234
|
-
characteristics of the reference materials. Defaults to None.
|
|
263
|
+
extra_query: Add additional query parameters to the request
|
|
235
264
|
|
|
236
|
-
|
|
237
|
-
CreateVideoResponse: Object containing video creation job id
|
|
238
|
-
"""
|
|
265
|
+
extra_body: Add additional JSON properties to the request
|
|
239
266
|
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
options=
|
|
264
|
-
|
|
265
|
-
url="../v2/videos",
|
|
266
|
-
params=parameter_payload,
|
|
267
|
+
timeout: Override the client-level default timeout for this request, in seconds
|
|
268
|
+
"""
|
|
269
|
+
return await self._post(
|
|
270
|
+
"/videos" if self._client._base_url_overridden else "https://api.together.xyz/v2/videos",
|
|
271
|
+
body=await async_maybe_transform(
|
|
272
|
+
{
|
|
273
|
+
"model": model,
|
|
274
|
+
"fps": fps,
|
|
275
|
+
"frame_images": frame_images,
|
|
276
|
+
"guidance_scale": guidance_scale,
|
|
277
|
+
"height": height,
|
|
278
|
+
"negative_prompt": negative_prompt,
|
|
279
|
+
"output_format": output_format,
|
|
280
|
+
"output_quality": output_quality,
|
|
281
|
+
"prompt": prompt,
|
|
282
|
+
"reference_images": reference_images,
|
|
283
|
+
"seconds": seconds,
|
|
284
|
+
"seed": seed,
|
|
285
|
+
"steps": steps,
|
|
286
|
+
"width": width,
|
|
287
|
+
},
|
|
288
|
+
video_create_params.VideoCreateParams,
|
|
289
|
+
),
|
|
290
|
+
options=make_request_options(
|
|
291
|
+
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
267
292
|
),
|
|
268
|
-
|
|
293
|
+
cast_to=VideoCreateResponse,
|
|
269
294
|
)
|
|
270
295
|
|
|
271
|
-
assert isinstance(response, TogetherResponse)
|
|
272
|
-
|
|
273
|
-
return CreateVideoResponse(**response.data)
|
|
274
|
-
|
|
275
296
|
async def retrieve(
|
|
276
297
|
self,
|
|
277
298
|
id: str,
|
|
299
|
+
*,
|
|
300
|
+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
301
|
+
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
302
|
+
extra_headers: Headers | None = None,
|
|
303
|
+
extra_query: Query | None = None,
|
|
304
|
+
extra_body: Body | None = None,
|
|
305
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
278
306
|
) -> VideoJob:
|
|
279
307
|
"""
|
|
280
|
-
|
|
308
|
+
Fetch video metadata
|
|
281
309
|
|
|
282
310
|
Args:
|
|
283
|
-
|
|
311
|
+
extra_headers: Send extra headers
|
|
284
312
|
|
|
285
|
-
|
|
286
|
-
|
|
313
|
+
extra_query: Add additional query parameters to the request
|
|
314
|
+
|
|
315
|
+
extra_body: Add additional JSON properties to the request
|
|
316
|
+
|
|
317
|
+
timeout: Override the client-level default timeout for this request, in seconds
|
|
287
318
|
"""
|
|
319
|
+
if not id:
|
|
320
|
+
raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
|
|
321
|
+
return await self._get(
|
|
322
|
+
f"/videos/{id}" if self._client._base_url_overridden else f"https://api.together.xyz/v2/videos/{id}",
|
|
323
|
+
options=make_request_options(
|
|
324
|
+
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
325
|
+
),
|
|
326
|
+
cast_to=VideoJob,
|
|
327
|
+
)
|
|
328
|
+
|
|
329
|
+
|
|
330
|
+
class VideosResourceWithRawResponse:
|
|
331
|
+
def __init__(self, videos: VideosResource) -> None:
|
|
332
|
+
self._videos = videos
|
|
288
333
|
|
|
289
|
-
|
|
290
|
-
|
|
334
|
+
self.create = to_raw_response_wrapper(
|
|
335
|
+
videos.create,
|
|
336
|
+
)
|
|
337
|
+
self.retrieve = to_raw_response_wrapper(
|
|
338
|
+
videos.retrieve,
|
|
291
339
|
)
|
|
292
340
|
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
341
|
+
|
|
342
|
+
class AsyncVideosResourceWithRawResponse:
|
|
343
|
+
def __init__(self, videos: AsyncVideosResource) -> None:
|
|
344
|
+
self._videos = videos
|
|
345
|
+
|
|
346
|
+
self.create = async_to_raw_response_wrapper(
|
|
347
|
+
videos.create,
|
|
299
348
|
)
|
|
349
|
+
self.retrieve = async_to_raw_response_wrapper(
|
|
350
|
+
videos.retrieve,
|
|
351
|
+
)
|
|
352
|
+
|
|
300
353
|
|
|
301
|
-
|
|
354
|
+
class VideosResourceWithStreamingResponse:
|
|
355
|
+
def __init__(self, videos: VideosResource) -> None:
|
|
356
|
+
self._videos = videos
|
|
302
357
|
|
|
303
|
-
|
|
358
|
+
self.create = to_streamed_response_wrapper(
|
|
359
|
+
videos.create,
|
|
360
|
+
)
|
|
361
|
+
self.retrieve = to_streamed_response_wrapper(
|
|
362
|
+
videos.retrieve,
|
|
363
|
+
)
|
|
364
|
+
|
|
365
|
+
|
|
366
|
+
class AsyncVideosResourceWithStreamingResponse:
|
|
367
|
+
def __init__(self, videos: AsyncVideosResource) -> None:
|
|
368
|
+
self._videos = videos
|
|
369
|
+
|
|
370
|
+
self.create = async_to_streamed_response_wrapper(
|
|
371
|
+
videos.create,
|
|
372
|
+
)
|
|
373
|
+
self.retrieve = async_to_streamed_response_wrapper(
|
|
374
|
+
videos.retrieve,
|
|
375
|
+
)
|