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.
Files changed (208) hide show
  1. together/__init__.py +101 -114
  2. together/_base_client.py +1995 -0
  3. together/_client.py +1033 -0
  4. together/_compat.py +219 -0
  5. together/_constants.py +14 -0
  6. together/_exceptions.py +108 -0
  7. together/_files.py +123 -0
  8. together/_models.py +857 -0
  9. together/_qs.py +150 -0
  10. together/_resource.py +43 -0
  11. together/_response.py +830 -0
  12. together/_streaming.py +370 -0
  13. together/_types.py +260 -0
  14. together/_utils/__init__.py +64 -0
  15. together/_utils/_compat.py +45 -0
  16. together/_utils/_datetime_parse.py +136 -0
  17. together/_utils/_logs.py +25 -0
  18. together/_utils/_proxy.py +65 -0
  19. together/_utils/_reflection.py +42 -0
  20. together/_utils/_resources_proxy.py +24 -0
  21. together/_utils/_streams.py +12 -0
  22. together/_utils/_sync.py +58 -0
  23. together/_utils/_transform.py +457 -0
  24. together/_utils/_typing.py +156 -0
  25. together/_utils/_utils.py +421 -0
  26. together/_version.py +4 -0
  27. together/lib/.keep +4 -0
  28. together/lib/__init__.py +23 -0
  29. together/{cli → lib/cli}/api/endpoints.py +66 -84
  30. together/{cli/api/evaluation.py → lib/cli/api/evals.py} +152 -43
  31. together/{cli → lib/cli}/api/files.py +20 -17
  32. together/{cli/api/finetune.py → lib/cli/api/fine_tuning.py} +116 -172
  33. together/{cli → lib/cli}/api/models.py +34 -27
  34. together/lib/cli/api/utils.py +50 -0
  35. together/{cli → lib/cli}/cli.py +16 -26
  36. together/{constants.py → lib/constants.py} +11 -24
  37. together/lib/resources/__init__.py +11 -0
  38. together/lib/resources/files.py +999 -0
  39. together/lib/resources/fine_tuning.py +280 -0
  40. together/lib/resources/models.py +35 -0
  41. together/lib/types/__init__.py +13 -0
  42. together/lib/types/error.py +9 -0
  43. together/lib/types/fine_tuning.py +397 -0
  44. together/{utils → lib/utils}/__init__.py +6 -14
  45. together/{utils → lib/utils}/_log.py +11 -16
  46. together/{utils → lib/utils}/files.py +90 -288
  47. together/lib/utils/serializer.py +10 -0
  48. together/{utils → lib/utils}/tools.py +19 -55
  49. together/resources/__init__.py +225 -39
  50. together/resources/audio/__init__.py +72 -48
  51. together/resources/audio/audio.py +198 -0
  52. together/resources/audio/speech.py +574 -128
  53. together/resources/audio/transcriptions.py +247 -261
  54. together/resources/audio/translations.py +221 -241
  55. together/resources/audio/voices.py +111 -41
  56. together/resources/batches.py +417 -0
  57. together/resources/chat/__init__.py +30 -21
  58. together/resources/chat/chat.py +102 -0
  59. together/resources/chat/completions.py +1063 -263
  60. together/resources/code_interpreter/__init__.py +33 -0
  61. together/resources/code_interpreter/code_interpreter.py +258 -0
  62. together/resources/code_interpreter/sessions.py +135 -0
  63. together/resources/completions.py +884 -225
  64. together/resources/embeddings.py +172 -68
  65. together/resources/endpoints.py +589 -490
  66. together/resources/evals.py +452 -0
  67. together/resources/files.py +397 -129
  68. together/resources/fine_tuning.py +1033 -0
  69. together/resources/hardware.py +181 -0
  70. together/resources/images.py +258 -104
  71. together/resources/jobs.py +214 -0
  72. together/resources/models.py +223 -193
  73. together/resources/rerank.py +190 -92
  74. together/resources/videos.py +286 -214
  75. together/types/__init__.py +66 -167
  76. together/types/audio/__init__.py +10 -0
  77. together/types/audio/speech_create_params.py +75 -0
  78. together/types/audio/transcription_create_params.py +54 -0
  79. together/types/audio/transcription_create_response.py +111 -0
  80. together/types/audio/translation_create_params.py +40 -0
  81. together/types/audio/translation_create_response.py +70 -0
  82. together/types/audio/voice_list_response.py +23 -0
  83. together/types/audio_speech_stream_chunk.py +16 -0
  84. together/types/autoscaling.py +13 -0
  85. together/types/autoscaling_param.py +15 -0
  86. together/types/batch_create_params.py +24 -0
  87. together/types/batch_create_response.py +14 -0
  88. together/types/batch_job.py +45 -0
  89. together/types/batch_list_response.py +10 -0
  90. together/types/chat/__init__.py +18 -0
  91. together/types/chat/chat_completion.py +60 -0
  92. together/types/chat/chat_completion_chunk.py +61 -0
  93. together/types/chat/chat_completion_structured_message_image_url_param.py +18 -0
  94. together/types/chat/chat_completion_structured_message_text_param.py +13 -0
  95. together/types/chat/chat_completion_structured_message_video_url_param.py +18 -0
  96. together/types/chat/chat_completion_usage.py +13 -0
  97. together/types/chat/chat_completion_warning.py +9 -0
  98. together/types/chat/completion_create_params.py +329 -0
  99. together/types/code_interpreter/__init__.py +5 -0
  100. together/types/code_interpreter/session_list_response.py +31 -0
  101. together/types/code_interpreter_execute_params.py +45 -0
  102. together/types/completion.py +42 -0
  103. together/types/completion_chunk.py +66 -0
  104. together/types/completion_create_params.py +138 -0
  105. together/types/dedicated_endpoint.py +44 -0
  106. together/types/embedding.py +24 -0
  107. together/types/embedding_create_params.py +31 -0
  108. together/types/endpoint_create_params.py +43 -0
  109. together/types/endpoint_list_avzones_response.py +11 -0
  110. together/types/endpoint_list_params.py +18 -0
  111. together/types/endpoint_list_response.py +41 -0
  112. together/types/endpoint_update_params.py +27 -0
  113. together/types/eval_create_params.py +263 -0
  114. together/types/eval_create_response.py +16 -0
  115. together/types/eval_list_params.py +21 -0
  116. together/types/eval_list_response.py +10 -0
  117. together/types/eval_status_response.py +100 -0
  118. together/types/evaluation_job.py +139 -0
  119. together/types/execute_response.py +108 -0
  120. together/types/file_delete_response.py +13 -0
  121. together/types/file_list.py +12 -0
  122. together/types/file_purpose.py +9 -0
  123. together/types/file_response.py +31 -0
  124. together/types/file_type.py +7 -0
  125. together/types/fine_tuning_cancel_response.py +194 -0
  126. together/types/fine_tuning_content_params.py +24 -0
  127. together/types/fine_tuning_delete_params.py +11 -0
  128. together/types/fine_tuning_delete_response.py +12 -0
  129. together/types/fine_tuning_list_checkpoints_response.py +21 -0
  130. together/types/fine_tuning_list_events_response.py +12 -0
  131. together/types/fine_tuning_list_response.py +199 -0
  132. together/types/finetune_event.py +41 -0
  133. together/types/finetune_event_type.py +33 -0
  134. together/types/finetune_response.py +177 -0
  135. together/types/hardware_list_params.py +16 -0
  136. together/types/hardware_list_response.py +58 -0
  137. together/types/image_data_b64.py +15 -0
  138. together/types/image_data_url.py +15 -0
  139. together/types/image_file.py +23 -0
  140. together/types/image_generate_params.py +85 -0
  141. together/types/job_list_response.py +47 -0
  142. together/types/job_retrieve_response.py +43 -0
  143. together/types/log_probs.py +18 -0
  144. together/types/model_list_response.py +10 -0
  145. together/types/model_object.py +42 -0
  146. together/types/model_upload_params.py +36 -0
  147. together/types/model_upload_response.py +23 -0
  148. together/types/rerank_create_params.py +36 -0
  149. together/types/rerank_create_response.py +36 -0
  150. together/types/tool_choice.py +23 -0
  151. together/types/tool_choice_param.py +23 -0
  152. together/types/tools_param.py +23 -0
  153. together/types/training_method_dpo.py +22 -0
  154. together/types/training_method_sft.py +18 -0
  155. together/types/video_create_params.py +86 -0
  156. together/types/video_create_response.py +10 -0
  157. together/types/video_job.py +57 -0
  158. together-2.0.0a7.dist-info/METADATA +730 -0
  159. together-2.0.0a7.dist-info/RECORD +165 -0
  160. {together-1.5.35.dist-info → together-2.0.0a7.dist-info}/WHEEL +1 -1
  161. together-2.0.0a7.dist-info/entry_points.txt +2 -0
  162. {together-1.5.35.dist-info → together-2.0.0a7.dist-info}/licenses/LICENSE +1 -1
  163. together/abstract/api_requestor.py +0 -770
  164. together/cli/api/chat.py +0 -298
  165. together/cli/api/completions.py +0 -119
  166. together/cli/api/images.py +0 -93
  167. together/cli/api/utils.py +0 -139
  168. together/client.py +0 -186
  169. together/error.py +0 -194
  170. together/filemanager.py +0 -635
  171. together/legacy/__init__.py +0 -0
  172. together/legacy/base.py +0 -27
  173. together/legacy/complete.py +0 -93
  174. together/legacy/embeddings.py +0 -27
  175. together/legacy/files.py +0 -146
  176. together/legacy/finetune.py +0 -177
  177. together/legacy/images.py +0 -27
  178. together/legacy/models.py +0 -44
  179. together/resources/batch.py +0 -165
  180. together/resources/code_interpreter.py +0 -82
  181. together/resources/evaluation.py +0 -808
  182. together/resources/finetune.py +0 -1388
  183. together/together_response.py +0 -50
  184. together/types/abstract.py +0 -26
  185. together/types/audio_speech.py +0 -311
  186. together/types/batch.py +0 -54
  187. together/types/chat_completions.py +0 -210
  188. together/types/code_interpreter.py +0 -57
  189. together/types/common.py +0 -67
  190. together/types/completions.py +0 -107
  191. together/types/embeddings.py +0 -35
  192. together/types/endpoints.py +0 -123
  193. together/types/error.py +0 -16
  194. together/types/evaluation.py +0 -93
  195. together/types/files.py +0 -93
  196. together/types/finetune.py +0 -465
  197. together/types/images.py +0 -42
  198. together/types/models.py +0 -96
  199. together/types/rerank.py +0 -43
  200. together/types/videos.py +0 -69
  201. together/utils/api_helpers.py +0 -124
  202. together/version.py +0 -6
  203. together-1.5.35.dist-info/METADATA +0 -583
  204. together-1.5.35.dist-info/RECORD +0 -77
  205. together-1.5.35.dist-info/entry_points.txt +0 -3
  206. /together/{abstract → lib/cli}/__init__.py +0 -0
  207. /together/{cli → lib/cli/api}/__init__.py +0 -0
  208. /together/{cli/api/__init__.py → py.typed} +0 -0
@@ -1,93 +0,0 @@
1
- from __future__ import annotations
2
-
3
- import warnings
4
- from typing import Any, AsyncGenerator, Dict, Iterator
5
-
6
- import together
7
- from together.legacy.base import API_KEY_WARNING, deprecated
8
- from together.types import CompletionChunk, CompletionResponse
9
-
10
-
11
- class Complete:
12
- @classmethod
13
- @deprecated # type: ignore
14
- def create(
15
- cls,
16
- prompt: str,
17
- **kwargs: Any,
18
- ) -> Dict[str, Any]:
19
- """Legacy completion function."""
20
-
21
- api_key = None
22
- if together.api_key:
23
- warnings.warn(API_KEY_WARNING)
24
- api_key = together.api_key
25
-
26
- client = together.Together(api_key=api_key)
27
-
28
- result = client.completions.create(prompt=prompt, stream=False, **kwargs)
29
-
30
- assert isinstance(result, CompletionResponse)
31
-
32
- return result.model_dump(exclude_none=True)
33
-
34
- @classmethod
35
- @deprecated # type: ignore
36
- def create_streaming(
37
- cls,
38
- prompt: str,
39
- **kwargs: Any,
40
- ) -> Iterator[Dict[str, Any]]:
41
- """Legacy streaming completion function."""
42
-
43
- api_key = None
44
- if together.api_key:
45
- warnings.warn(API_KEY_WARNING)
46
- api_key = together.api_key
47
-
48
- client = together.Together(api_key=api_key)
49
-
50
- return (
51
- token.model_dump(exclude_none=True) # type: ignore
52
- for token in client.completions.create(prompt=prompt, stream=True, **kwargs)
53
- )
54
-
55
-
56
- class Completion:
57
- @classmethod
58
- @deprecated # type: ignore
59
- def create(
60
- cls,
61
- prompt: str,
62
- **kwargs: Any,
63
- ) -> CompletionResponse | Iterator[CompletionChunk]:
64
- """Completion function."""
65
-
66
- api_key = None
67
- if together.api_key:
68
- warnings.warn(API_KEY_WARNING)
69
- api_key = together.api_key
70
-
71
- client = together.Together(api_key=api_key)
72
-
73
- return client.completions.create(prompt=prompt, **kwargs)
74
-
75
-
76
- class AsyncComplete:
77
- @classmethod
78
- @deprecated # type: ignore
79
- async def create(
80
- cls,
81
- prompt: str,
82
- **kwargs: Any,
83
- ) -> CompletionResponse | AsyncGenerator[CompletionChunk, None]:
84
- """Async completion function."""
85
-
86
- api_key = None
87
- if together.api_key:
88
- warnings.warn(API_KEY_WARNING)
89
- api_key = together.api_key
90
-
91
- client = together.AsyncTogether(api_key=api_key)
92
-
93
- return await client.completions.create(prompt=prompt, **kwargs)
@@ -1,27 +0,0 @@
1
- import warnings
2
- from typing import Any, Dict
3
-
4
- import together
5
- from together.legacy.base import API_KEY_WARNING, deprecated
6
-
7
-
8
- class Embeddings:
9
- @classmethod
10
- @deprecated # type: ignore
11
- def create(
12
- cls,
13
- input: str,
14
- **kwargs: Any,
15
- ) -> Dict[str, Any]:
16
- """Legacy embeddings function."""
17
-
18
- api_key = None
19
- if together.api_key:
20
- warnings.warn(API_KEY_WARNING)
21
- api_key = together.api_key
22
-
23
- client = together.Together(api_key=api_key)
24
-
25
- return client.embeddings.create(input=input, **kwargs).model_dump(
26
- exclude_none=True
27
- )
together/legacy/files.py DELETED
@@ -1,146 +0,0 @@
1
- from __future__ import annotations
2
-
3
- import json
4
- import warnings
5
- from typing import Any, Dict, List
6
-
7
- import together
8
- from together.legacy.base import API_KEY_WARNING, deprecated
9
- from together.utils.files import check_file as check_json
10
-
11
-
12
- class Files:
13
- @classmethod
14
- @deprecated # type: ignore
15
- def list(
16
- cls,
17
- ) -> Dict[str, Any]:
18
- """Legacy file list function."""
19
-
20
- api_key = None
21
- if together.api_key:
22
- warnings.warn(API_KEY_WARNING)
23
- api_key = together.api_key
24
-
25
- client = together.Together(api_key=api_key)
26
-
27
- return client.files.list().model_dump(exclude_none=True)
28
-
29
- @classmethod
30
- def check(self, file: str) -> Dict[str, object]:
31
- return check_json(file)
32
-
33
- @classmethod
34
- @deprecated # type: ignore
35
- def upload(
36
- cls,
37
- file: str,
38
- check: bool = True,
39
- ) -> Dict[str, Any]:
40
- """Legacy file upload function."""
41
-
42
- api_key = None
43
- if together.api_key:
44
- warnings.warn(API_KEY_WARNING)
45
- api_key = together.api_key
46
-
47
- if check:
48
- report_dict = check_json(file)
49
- if not report_dict["is_check_passed"]:
50
- raise together.error.FileTypeError(
51
- f"Invalid file supplied. Failed to upload.\nReport:\n {report_dict}"
52
- )
53
-
54
- client = together.Together(api_key=api_key)
55
-
56
- # disabling the check, because it was run previously
57
- response = client.files.upload(file=file, check=False).model_dump(
58
- exclude_none=True
59
- )
60
-
61
- if check:
62
- response["report_dict"] = report_dict
63
-
64
- return response
65
-
66
- @classmethod
67
- @deprecated # type: ignore
68
- def delete(
69
- cls,
70
- file_id: str,
71
- ) -> Dict[str, Any]:
72
- """Legacy file delete function."""
73
-
74
- api_key = None
75
- if together.api_key:
76
- warnings.warn(API_KEY_WARNING)
77
- api_key = together.api_key
78
-
79
- client = together.Together(api_key=api_key)
80
-
81
- return client.files.delete(id=file_id).model_dump(exclude_none=True)
82
-
83
- @classmethod
84
- @deprecated # type: ignore
85
- def retrieve(
86
- cls,
87
- file_id: str,
88
- ) -> Dict[str, Any]:
89
- """Legacy file retrieve function."""
90
-
91
- api_key = None
92
- if together.api_key:
93
- warnings.warn(API_KEY_WARNING)
94
- api_key = together.api_key
95
-
96
- client = together.Together(api_key=api_key)
97
-
98
- return client.files.retrieve(id=file_id).model_dump(exclude_none=True)
99
-
100
- @classmethod
101
- @deprecated # type: ignore
102
- def retrieve_content(
103
- cls,
104
- file_id: str,
105
- output: str | None = None,
106
- ) -> Dict[str, Any]:
107
- """Legacy file retrieve content function."""
108
-
109
- api_key = None
110
- if together.api_key:
111
- warnings.warn(API_KEY_WARNING)
112
- api_key = together.api_key
113
-
114
- client = together.Together(api_key=api_key)
115
-
116
- return client.files.retrieve_content(id=file_id, output=output).dict(
117
- exclude_none=True
118
- )
119
-
120
- @classmethod
121
- @deprecated # type: ignore
122
- def save_jsonl(
123
- self, data: Dict[str, str], output_path: str, append: bool = False
124
- ) -> None:
125
- """
126
- Write list of objects to a JSON lines file.
127
- """
128
- mode = "a+" if append else "w"
129
- with open(output_path, mode, encoding="utf-8") as f:
130
- for line in data:
131
- json_record = json.dumps(line, ensure_ascii=False)
132
- f.write(json_record + "\n")
133
- print("Wrote {} records to {}".format(len(data), output_path))
134
-
135
- @classmethod
136
- @deprecated # type: ignore
137
- def load_jsonl(self, input_path: str) -> List[Dict[str, str]]:
138
- """
139
- Read list of objects from a JSON lines file.
140
- """
141
- data = []
142
- with open(input_path, "r", encoding="utf-8") as f:
143
- for line in f:
144
- data.append(json.loads(line.rstrip("\n|\r")))
145
- print("Loaded {} records from {}".format(len(data), input_path))
146
- return data
@@ -1,177 +0,0 @@
1
- from __future__ import annotations
2
-
3
- import warnings
4
- from typing import Any, Dict, List, Literal
5
-
6
- import together
7
- from together.legacy.base import API_KEY_WARNING, deprecated
8
-
9
-
10
- class Finetune:
11
- @classmethod
12
- @deprecated # type: ignore
13
- def create(
14
- cls,
15
- training_file: str, # training file_id
16
- model: str,
17
- n_epochs: int = 1,
18
- n_checkpoints: int | None = 1,
19
- batch_size: int | Literal["max"] = "max",
20
- learning_rate: float = 0.00001,
21
- suffix: (
22
- str | None
23
- ) = None, # resulting finetuned model name will include the suffix
24
- estimate_price: bool = False,
25
- wandb_api_key: str | None = None,
26
- confirm_inputs: bool = False,
27
- ):
28
- api_key = None
29
- if together.api_key:
30
- warnings.warn(API_KEY_WARNING)
31
- api_key = together.api_key
32
-
33
- if estimate_price:
34
- raise ValueError("Price estimation is not supported in version >= 1.0.1")
35
-
36
- if confirm_inputs:
37
- raise ValueError("Input confirmation is not supported in version >= 1.0.1")
38
-
39
- client = together.Together(api_key=api_key)
40
-
41
- return client.fine_tuning.create(
42
- training_file=training_file,
43
- model=model,
44
- n_epochs=n_epochs,
45
- n_checkpoints=n_checkpoints,
46
- batch_size=batch_size,
47
- learning_rate=learning_rate,
48
- suffix=suffix,
49
- wandb_api_key=wandb_api_key,
50
- ).model_dump(exclude_none=True)
51
-
52
- @classmethod
53
- @deprecated # type: ignore
54
- def list(
55
- cls,
56
- ) -> Dict[str, Any]:
57
- """Legacy finetuning list function."""
58
-
59
- api_key = None
60
- if together.api_key:
61
- warnings.warn(API_KEY_WARNING)
62
- api_key = together.api_key
63
-
64
- client = together.Together(api_key=api_key)
65
-
66
- return client.fine_tuning.list().model_dump(exclude_none=True)
67
-
68
- @classmethod
69
- @deprecated # type: ignore
70
- def retrieve(
71
- cls,
72
- fine_tune_id: str,
73
- ) -> Dict[str, Any]:
74
- """Legacy finetuning retrieve function."""
75
-
76
- api_key = None
77
- if together.api_key:
78
- warnings.warn(API_KEY_WARNING)
79
- api_key = together.api_key
80
-
81
- client = together.Together(api_key=api_key)
82
-
83
- return client.fine_tuning.retrieve(id=fine_tune_id).model_dump(
84
- exclude_none=True
85
- )
86
-
87
- @classmethod
88
- @deprecated # type: ignore
89
- def cancel(
90
- cls,
91
- fine_tune_id: str,
92
- ) -> Dict[str, Any]:
93
- """Legacy finetuning cancel function."""
94
-
95
- api_key = None
96
- if together.api_key:
97
- warnings.warn(API_KEY_WARNING)
98
- api_key = together.api_key
99
-
100
- client = together.Together(api_key=api_key)
101
-
102
- return client.fine_tuning.cancel(id=fine_tune_id).model_dump(exclude_none=True)
103
-
104
- @classmethod
105
- @deprecated # type: ignore
106
- def list_events(
107
- cls,
108
- fine_tune_id: str,
109
- ) -> Dict[str, Any]:
110
- """Legacy finetuning list events function."""
111
-
112
- api_key = None
113
- if together.api_key:
114
- warnings.warn(API_KEY_WARNING)
115
- api_key = together.api_key
116
-
117
- client = together.Together(api_key=api_key)
118
-
119
- return client.fine_tuning.list_events(id=fine_tune_id).model_dump(
120
- exclude_none=True
121
- )
122
-
123
- @classmethod
124
- @deprecated # type: ignore
125
- def get_checkpoints(
126
- cls,
127
- fine_tune_id: str,
128
- ) -> List[Any]:
129
- """Legacy finetuning get checkpoints function."""
130
-
131
- finetune_events = list(cls.retrieve(fine_tune_id=fine_tune_id)["events"])
132
-
133
- saved_events = [i for i in finetune_events if i["type"] in ["CHECKPOINT_SAVE"]]
134
-
135
- return saved_events
136
-
137
- @classmethod
138
- @deprecated # type: ignore
139
- def get_job_status(cls, fine_tune_id: str) -> str:
140
- """Legacy finetuning get job status function."""
141
- return str(cls.retrieve(fine_tune_id=fine_tune_id)["status"])
142
-
143
- @classmethod
144
- @deprecated # type: ignore
145
- def is_final_model_available(cls, fine_tune_id: str) -> bool:
146
- """Legacy finetuning is final model available function."""
147
-
148
- finetune_events = list(cls.retrieve(fine_tune_id=fine_tune_id)["events"])
149
-
150
- for i in finetune_events:
151
- if i["type"] in ["JOB_COMPLETE", "JOB_ERROR"]:
152
- if i["checkpoint_path"] != "":
153
- return False
154
- else:
155
- return True
156
- return False
157
-
158
- @classmethod
159
- @deprecated # type: ignore
160
- def download(
161
- cls,
162
- fine_tune_id: str,
163
- output: str | None = None,
164
- step: int | None = None,
165
- ) -> Dict[str, Any]:
166
- """Legacy finetuning download function."""
167
-
168
- api_key = None
169
- if together.api_key:
170
- warnings.warn(API_KEY_WARNING)
171
- api_key = together.api_key
172
-
173
- client = together.Together(api_key=api_key)
174
-
175
- return client.fine_tuning.download(
176
- id=fine_tune_id, output=output, checkpoint_step=step
177
- ).model_dump(exclude_none=True)
together/legacy/images.py DELETED
@@ -1,27 +0,0 @@
1
- import warnings
2
- from typing import Any, Dict
3
-
4
- import together
5
- from together.legacy.base import API_KEY_WARNING, deprecated
6
-
7
-
8
- class Image:
9
- @classmethod
10
- @deprecated # type: ignore
11
- def create(
12
- cls,
13
- prompt: str,
14
- **kwargs: Any,
15
- ) -> Dict[str, Any]:
16
- """Legacy image function."""
17
-
18
- api_key = None
19
- if together.api_key:
20
- warnings.warn(API_KEY_WARNING)
21
- api_key = together.api_key
22
-
23
- client = together.Together(api_key=api_key)
24
-
25
- return client.images.generate(prompt=prompt, **kwargs).model_dump(
26
- exclude_none=True
27
- )
together/legacy/models.py DELETED
@@ -1,44 +0,0 @@
1
- import warnings
2
- from typing import Any, Dict, List
3
-
4
- import together
5
- from together.legacy.base import API_KEY_WARNING, deprecated
6
-
7
-
8
- class Models:
9
- @classmethod
10
- @deprecated # type: ignore
11
- def list(
12
- cls,
13
- ) -> List[Dict[str, Any]]:
14
- """Legacy model list function."""
15
-
16
- api_key = None
17
- if together.api_key:
18
- warnings.warn(API_KEY_WARNING)
19
- api_key = together.api_key
20
-
21
- client = together.Together(api_key=api_key)
22
-
23
- return [item.model_dump(exclude_none=True) for item in client.models.list()]
24
-
25
- @classmethod
26
- @deprecated # type: ignore
27
- def info(
28
- cls,
29
- model: str,
30
- ) -> Dict[str, Any]:
31
- """Legacy model info function."""
32
-
33
- api_key = None
34
- if together.api_key:
35
- warnings.warn(API_KEY_WARNING)
36
- api_key = together.api_key
37
-
38
- client = together.Together(api_key=api_key)
39
-
40
- model_list = client.models.list()
41
-
42
- for item in model_list:
43
- if item.id == model:
44
- return item.model_dump(exclude_none=True)
@@ -1,165 +0,0 @@
1
- from __future__ import annotations
2
-
3
- from typing import List
4
-
5
- from together.abstract import api_requestor
6
- from together.together_response import TogetherResponse
7
- from together.types import (
8
- TogetherClient,
9
- TogetherRequest,
10
- BatchJob,
11
- )
12
-
13
-
14
- class Batches:
15
- def __init__(self, client: TogetherClient) -> None:
16
- self._client = client
17
-
18
- def create_batch(self, file_id: str, endpoint: str) -> BatchJob:
19
- requestor = api_requestor.APIRequestor(
20
- client=self._client,
21
- )
22
-
23
- parameter_payload = {
24
- "input_file_id": file_id,
25
- "endpoint": endpoint,
26
- "completion_window": "24h",
27
- }
28
-
29
- response, _, _ = requestor.request(
30
- options=TogetherRequest(
31
- method="POST",
32
- url=f"batches",
33
- params=parameter_payload,
34
- ),
35
- stream=False,
36
- )
37
-
38
- assert isinstance(response, TogetherResponse)
39
- response_body = response.data.get("job", {})
40
- return BatchJob(**response_body)
41
-
42
- def get_batch(self, batch_job_id: str) -> BatchJob:
43
- requestor = api_requestor.APIRequestor(
44
- client=self._client,
45
- )
46
-
47
- response, _, _ = requestor.request(
48
- options=TogetherRequest(
49
- method="GET",
50
- url=f"batches/{batch_job_id}",
51
- ),
52
- stream=False,
53
- )
54
-
55
- assert isinstance(response, TogetherResponse)
56
- return BatchJob(**response.data)
57
-
58
- def list_batches(self) -> List[BatchJob]:
59
- requestor = api_requestor.APIRequestor(
60
- client=self._client,
61
- )
62
-
63
- response, _, _ = requestor.request(
64
- options=TogetherRequest(
65
- method="GET",
66
- url="batches",
67
- ),
68
- stream=False,
69
- )
70
-
71
- assert isinstance(response, TogetherResponse)
72
- jobs = response.data or []
73
- return [BatchJob(**job) for job in jobs]
74
-
75
- def cancel_batch(self, batch_job_id: str) -> BatchJob:
76
- requestor = api_requestor.APIRequestor(
77
- client=self._client,
78
- )
79
-
80
- response, _, _ = requestor.request(
81
- options=TogetherRequest(
82
- method="POST",
83
- url=f"batches/{batch_job_id}/cancel",
84
- ),
85
- stream=False,
86
- )
87
-
88
- return BatchJob(**response.data)
89
-
90
-
91
- class AsyncBatches:
92
- def __init__(self, client: TogetherClient) -> None:
93
- self._client = client
94
-
95
- async def create_batch(self, file_id: str, endpoint: str) -> BatchJob:
96
- requestor = api_requestor.APIRequestor(
97
- client=self._client,
98
- )
99
-
100
- parameter_payload = {
101
- "input_file_id": file_id,
102
- "endpoint": endpoint,
103
- "completion_window": "24h",
104
- }
105
-
106
- response, _, _ = await requestor.arequest(
107
- options=TogetherRequest(
108
- method="POST",
109
- url=f"batches",
110
- params=parameter_payload,
111
- ),
112
- stream=False,
113
- )
114
-
115
- assert isinstance(response, TogetherResponse)
116
- response_body = response.data.get("job", {})
117
- return BatchJob(**response_body)
118
-
119
- async def get_batch(self, batch_job_id: str) -> BatchJob:
120
- requestor = api_requestor.APIRequestor(
121
- client=self._client,
122
- )
123
-
124
- response, _, _ = await requestor.arequest(
125
- options=TogetherRequest(
126
- method="GET",
127
- url=f"batches/{batch_job_id}",
128
- ),
129
- stream=False,
130
- )
131
-
132
- assert isinstance(response, TogetherResponse)
133
- return BatchJob(**response.data)
134
-
135
- async def list_batches(self) -> List[BatchJob]:
136
- requestor = api_requestor.APIRequestor(
137
- client=self._client,
138
- )
139
-
140
- response, _, _ = await requestor.arequest(
141
- options=TogetherRequest(
142
- method="GET",
143
- url="batches",
144
- ),
145
- stream=False,
146
- )
147
-
148
- assert isinstance(response, TogetherResponse)
149
- jobs = response.data or []
150
- return [BatchJob(**job) for job in jobs]
151
-
152
- async def cancel_batch(self, batch_job_id: str) -> BatchJob:
153
- requestor = api_requestor.APIRequestor(
154
- client=self._client,
155
- )
156
-
157
- response, _, _ = await requestor.arequest(
158
- options=TogetherRequest(
159
- method="POST",
160
- url=f"batches/{batch_job_id}/cancel",
161
- ),
162
- stream=False,
163
- )
164
-
165
- return BatchJob(**response.data)