together 1.5.35__py3-none-any.whl → 2.0.0a6__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.0a6.dist-info/METADATA +729 -0
  159. together-2.0.0a6.dist-info/RECORD +165 -0
  160. {together-1.5.35.dist-info → together-2.0.0a6.dist-info}/WHEEL +1 -1
  161. together-2.0.0a6.dist-info/entry_points.txt +2 -0
  162. {together-1.5.35.dist-info → together-2.0.0a6.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
@@ -0,0 +1,452 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import Literal
6
+
7
+ import httpx
8
+
9
+ from ..types import eval_list_params, eval_create_params
10
+ from .._types import Body, Omit, Query, Headers, NotGiven, omit, not_given
11
+ from .._utils import maybe_transform, async_maybe_transform
12
+ from .._compat import cached_property
13
+ from .._resource import SyncAPIResource, AsyncAPIResource
14
+ from .._response import (
15
+ to_raw_response_wrapper,
16
+ to_streamed_response_wrapper,
17
+ async_to_raw_response_wrapper,
18
+ async_to_streamed_response_wrapper,
19
+ )
20
+ from .._base_client import make_request_options
21
+ from ..types.evaluation_job import EvaluationJob
22
+ from ..types.eval_list_response import EvalListResponse
23
+ from ..types.eval_create_response import EvalCreateResponse
24
+ from ..types.eval_status_response import EvalStatusResponse
25
+
26
+ __all__ = ["EvalsResource", "AsyncEvalsResource"]
27
+
28
+
29
+ class EvalsResource(SyncAPIResource):
30
+ @cached_property
31
+ def with_raw_response(self) -> EvalsResourceWithRawResponse:
32
+ """
33
+ This property can be used as a prefix for any HTTP method call to return
34
+ the raw response object instead of the parsed content.
35
+
36
+ For more information, see https://www.github.com/togethercomputer/together-py#accessing-raw-response-data-eg-headers
37
+ """
38
+ return EvalsResourceWithRawResponse(self)
39
+
40
+ @cached_property
41
+ def with_streaming_response(self) -> EvalsResourceWithStreamingResponse:
42
+ """
43
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
44
+
45
+ For more information, see https://www.github.com/togethercomputer/together-py#with_streaming_response
46
+ """
47
+ return EvalsResourceWithStreamingResponse(self)
48
+
49
+ def create(
50
+ self,
51
+ *,
52
+ parameters: eval_create_params.Parameters,
53
+ type: Literal["classify", "score", "compare"],
54
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
55
+ # The extra values given here take precedence over values defined on the client or passed to this method.
56
+ extra_headers: Headers | None = None,
57
+ extra_query: Query | None = None,
58
+ extra_body: Body | None = None,
59
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
60
+ ) -> EvalCreateResponse:
61
+ """
62
+ Create an evaluation job
63
+
64
+ Args:
65
+ parameters: Type-specific parameters for the evaluation
66
+
67
+ type: The type of evaluation to perform
68
+
69
+ extra_headers: Send extra headers
70
+
71
+ extra_query: Add additional query parameters to the request
72
+
73
+ extra_body: Add additional JSON properties to the request
74
+
75
+ timeout: Override the client-level default timeout for this request, in seconds
76
+ """
77
+ return self._post(
78
+ "/evaluation",
79
+ body=maybe_transform(
80
+ {
81
+ "parameters": parameters,
82
+ "type": type,
83
+ },
84
+ eval_create_params.EvalCreateParams,
85
+ ),
86
+ options=make_request_options(
87
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
88
+ ),
89
+ cast_to=EvalCreateResponse,
90
+ )
91
+
92
+ def retrieve(
93
+ self,
94
+ id: str,
95
+ *,
96
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
97
+ # The extra values given here take precedence over values defined on the client or passed to this method.
98
+ extra_headers: Headers | None = None,
99
+ extra_query: Query | None = None,
100
+ extra_body: Body | None = None,
101
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
102
+ ) -> EvaluationJob:
103
+ """
104
+ Get evaluation job details
105
+
106
+ Args:
107
+ extra_headers: Send extra headers
108
+
109
+ extra_query: Add additional query parameters to the request
110
+
111
+ extra_body: Add additional JSON properties to the request
112
+
113
+ timeout: Override the client-level default timeout for this request, in seconds
114
+ """
115
+ if not id:
116
+ raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
117
+ return self._get(
118
+ f"/evaluation/{id}",
119
+ options=make_request_options(
120
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
121
+ ),
122
+ cast_to=EvaluationJob,
123
+ )
124
+
125
+ def list(
126
+ self,
127
+ *,
128
+ limit: int | Omit = omit,
129
+ status: str | Omit = omit,
130
+ user_id: str | Omit = omit,
131
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
132
+ # The extra values given here take precedence over values defined on the client or passed to this method.
133
+ extra_headers: Headers | None = None,
134
+ extra_query: Query | None = None,
135
+ extra_body: Body | None = None,
136
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
137
+ ) -> EvalListResponse:
138
+ """
139
+ Get all evaluation jobs
140
+
141
+ Args:
142
+ user_id: Admin users can specify a user ID to filter jobs. Pass empty string to get all
143
+ jobs.
144
+
145
+ extra_headers: Send extra headers
146
+
147
+ extra_query: Add additional query parameters to the request
148
+
149
+ extra_body: Add additional JSON properties to the request
150
+
151
+ timeout: Override the client-level default timeout for this request, in seconds
152
+ """
153
+ return self._get(
154
+ "/evaluation",
155
+ options=make_request_options(
156
+ extra_headers=extra_headers,
157
+ extra_query=extra_query,
158
+ extra_body=extra_body,
159
+ timeout=timeout,
160
+ query=maybe_transform(
161
+ {
162
+ "limit": limit,
163
+ "status": status,
164
+ "user_id": user_id,
165
+ },
166
+ eval_list_params.EvalListParams,
167
+ ),
168
+ ),
169
+ cast_to=EvalListResponse,
170
+ )
171
+
172
+ def status(
173
+ self,
174
+ id: str,
175
+ *,
176
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
177
+ # The extra values given here take precedence over values defined on the client or passed to this method.
178
+ extra_headers: Headers | None = None,
179
+ extra_query: Query | None = None,
180
+ extra_body: Body | None = None,
181
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
182
+ ) -> EvalStatusResponse:
183
+ """
184
+ Get evaluation job status and results
185
+
186
+ Args:
187
+ extra_headers: Send extra headers
188
+
189
+ extra_query: Add additional query parameters to the request
190
+
191
+ extra_body: Add additional JSON properties to the request
192
+
193
+ timeout: Override the client-level default timeout for this request, in seconds
194
+ """
195
+ if not id:
196
+ raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
197
+ return self._get(
198
+ f"/evaluation/{id}/status",
199
+ options=make_request_options(
200
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
201
+ ),
202
+ cast_to=EvalStatusResponse,
203
+ )
204
+
205
+
206
+ class AsyncEvalsResource(AsyncAPIResource):
207
+ @cached_property
208
+ def with_raw_response(self) -> AsyncEvalsResourceWithRawResponse:
209
+ """
210
+ This property can be used as a prefix for any HTTP method call to return
211
+ the raw response object instead of the parsed content.
212
+
213
+ For more information, see https://www.github.com/togethercomputer/together-py#accessing-raw-response-data-eg-headers
214
+ """
215
+ return AsyncEvalsResourceWithRawResponse(self)
216
+
217
+ @cached_property
218
+ def with_streaming_response(self) -> AsyncEvalsResourceWithStreamingResponse:
219
+ """
220
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
221
+
222
+ For more information, see https://www.github.com/togethercomputer/together-py#with_streaming_response
223
+ """
224
+ return AsyncEvalsResourceWithStreamingResponse(self)
225
+
226
+ async def create(
227
+ self,
228
+ *,
229
+ parameters: eval_create_params.Parameters,
230
+ type: Literal["classify", "score", "compare"],
231
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
232
+ # The extra values given here take precedence over values defined on the client or passed to this method.
233
+ extra_headers: Headers | None = None,
234
+ extra_query: Query | None = None,
235
+ extra_body: Body | None = None,
236
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
237
+ ) -> EvalCreateResponse:
238
+ """
239
+ Create an evaluation job
240
+
241
+ Args:
242
+ parameters: Type-specific parameters for the evaluation
243
+
244
+ type: The type of evaluation to perform
245
+
246
+ extra_headers: Send extra headers
247
+
248
+ extra_query: Add additional query parameters to the request
249
+
250
+ extra_body: Add additional JSON properties to the request
251
+
252
+ timeout: Override the client-level default timeout for this request, in seconds
253
+ """
254
+ return await self._post(
255
+ "/evaluation",
256
+ body=await async_maybe_transform(
257
+ {
258
+ "parameters": parameters,
259
+ "type": type,
260
+ },
261
+ eval_create_params.EvalCreateParams,
262
+ ),
263
+ options=make_request_options(
264
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
265
+ ),
266
+ cast_to=EvalCreateResponse,
267
+ )
268
+
269
+ async def retrieve(
270
+ self,
271
+ id: str,
272
+ *,
273
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
274
+ # The extra values given here take precedence over values defined on the client or passed to this method.
275
+ extra_headers: Headers | None = None,
276
+ extra_query: Query | None = None,
277
+ extra_body: Body | None = None,
278
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
279
+ ) -> EvaluationJob:
280
+ """
281
+ Get evaluation job details
282
+
283
+ Args:
284
+ extra_headers: Send extra headers
285
+
286
+ extra_query: Add additional query parameters to the request
287
+
288
+ extra_body: Add additional JSON properties to the request
289
+
290
+ timeout: Override the client-level default timeout for this request, in seconds
291
+ """
292
+ if not id:
293
+ raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
294
+ return await self._get(
295
+ f"/evaluation/{id}",
296
+ options=make_request_options(
297
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
298
+ ),
299
+ cast_to=EvaluationJob,
300
+ )
301
+
302
+ async def list(
303
+ self,
304
+ *,
305
+ limit: int | Omit = omit,
306
+ status: str | Omit = omit,
307
+ user_id: str | Omit = omit,
308
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
309
+ # The extra values given here take precedence over values defined on the client or passed to this method.
310
+ extra_headers: Headers | None = None,
311
+ extra_query: Query | None = None,
312
+ extra_body: Body | None = None,
313
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
314
+ ) -> EvalListResponse:
315
+ """
316
+ Get all evaluation jobs
317
+
318
+ Args:
319
+ user_id: Admin users can specify a user ID to filter jobs. Pass empty string to get all
320
+ jobs.
321
+
322
+ extra_headers: Send extra headers
323
+
324
+ extra_query: Add additional query parameters to the request
325
+
326
+ extra_body: Add additional JSON properties to the request
327
+
328
+ timeout: Override the client-level default timeout for this request, in seconds
329
+ """
330
+ return await self._get(
331
+ "/evaluation",
332
+ options=make_request_options(
333
+ extra_headers=extra_headers,
334
+ extra_query=extra_query,
335
+ extra_body=extra_body,
336
+ timeout=timeout,
337
+ query=await async_maybe_transform(
338
+ {
339
+ "limit": limit,
340
+ "status": status,
341
+ "user_id": user_id,
342
+ },
343
+ eval_list_params.EvalListParams,
344
+ ),
345
+ ),
346
+ cast_to=EvalListResponse,
347
+ )
348
+
349
+ async def status(
350
+ self,
351
+ id: str,
352
+ *,
353
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
354
+ # The extra values given here take precedence over values defined on the client or passed to this method.
355
+ extra_headers: Headers | None = None,
356
+ extra_query: Query | None = None,
357
+ extra_body: Body | None = None,
358
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
359
+ ) -> EvalStatusResponse:
360
+ """
361
+ Get evaluation job status and results
362
+
363
+ Args:
364
+ extra_headers: Send extra headers
365
+
366
+ extra_query: Add additional query parameters to the request
367
+
368
+ extra_body: Add additional JSON properties to the request
369
+
370
+ timeout: Override the client-level default timeout for this request, in seconds
371
+ """
372
+ if not id:
373
+ raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
374
+ return await self._get(
375
+ f"/evaluation/{id}/status",
376
+ options=make_request_options(
377
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
378
+ ),
379
+ cast_to=EvalStatusResponse,
380
+ )
381
+
382
+
383
+ class EvalsResourceWithRawResponse:
384
+ def __init__(self, evals: EvalsResource) -> None:
385
+ self._evals = evals
386
+
387
+ self.create = to_raw_response_wrapper(
388
+ evals.create,
389
+ )
390
+ self.retrieve = to_raw_response_wrapper(
391
+ evals.retrieve,
392
+ )
393
+ self.list = to_raw_response_wrapper(
394
+ evals.list,
395
+ )
396
+ self.status = to_raw_response_wrapper(
397
+ evals.status,
398
+ )
399
+
400
+
401
+ class AsyncEvalsResourceWithRawResponse:
402
+ def __init__(self, evals: AsyncEvalsResource) -> None:
403
+ self._evals = evals
404
+
405
+ self.create = async_to_raw_response_wrapper(
406
+ evals.create,
407
+ )
408
+ self.retrieve = async_to_raw_response_wrapper(
409
+ evals.retrieve,
410
+ )
411
+ self.list = async_to_raw_response_wrapper(
412
+ evals.list,
413
+ )
414
+ self.status = async_to_raw_response_wrapper(
415
+ evals.status,
416
+ )
417
+
418
+
419
+ class EvalsResourceWithStreamingResponse:
420
+ def __init__(self, evals: EvalsResource) -> None:
421
+ self._evals = evals
422
+
423
+ self.create = to_streamed_response_wrapper(
424
+ evals.create,
425
+ )
426
+ self.retrieve = to_streamed_response_wrapper(
427
+ evals.retrieve,
428
+ )
429
+ self.list = to_streamed_response_wrapper(
430
+ evals.list,
431
+ )
432
+ self.status = to_streamed_response_wrapper(
433
+ evals.status,
434
+ )
435
+
436
+
437
+ class AsyncEvalsResourceWithStreamingResponse:
438
+ def __init__(self, evals: AsyncEvalsResource) -> None:
439
+ self._evals = evals
440
+
441
+ self.create = async_to_streamed_response_wrapper(
442
+ evals.create,
443
+ )
444
+ self.retrieve = async_to_streamed_response_wrapper(
445
+ evals.retrieve,
446
+ )
447
+ self.list = async_to_streamed_response_wrapper(
448
+ evals.list,
449
+ )
450
+ self.status = async_to_streamed_response_wrapper(
451
+ evals.status,
452
+ )