adaptive-sdk 0.1.6__py3-none-any.whl → 0.1.8__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.
- adaptive_sdk/base_client.py +16 -4
- adaptive_sdk/client.py +8 -2
- adaptive_sdk/external/reward_client.py +22 -2
- adaptive_sdk/graphql_client/__init__.py +4 -4
- adaptive_sdk/graphql_client/async_base_client_open_telemetry.py +6 -6
- adaptive_sdk/graphql_client/async_client.py +34 -34
- adaptive_sdk/graphql_client/base_client_open_telemetry.py +6 -6
- adaptive_sdk/graphql_client/base_operation.py +3 -3
- adaptive_sdk/graphql_client/client.py +34 -34
- adaptive_sdk/graphql_client/custom_fields.py +89 -26
- adaptive_sdk/graphql_client/custom_mutations.py +64 -58
- adaptive_sdk/graphql_client/custom_queries.py +40 -34
- adaptive_sdk/graphql_client/custom_typing_fields.py +60 -0
- adaptive_sdk/graphql_client/enums.py +18 -2
- adaptive_sdk/graphql_client/fragments.py +39 -3
- adaptive_sdk/graphql_client/input_types.py +22 -4
- adaptive_sdk/output_types/__init__.py +3 -0
- adaptive_sdk/output_types/job_wrapper.py +106 -0
- adaptive_sdk/resources/datasets.py +16 -13
- adaptive_sdk/resources/jobs.py +34 -16
- {adaptive_sdk-0.1.6.dist-info → adaptive_sdk-0.1.8.dist-info}/METADATA +1 -1
- {adaptive_sdk-0.1.6.dist-info → adaptive_sdk-0.1.8.dist-info}/RECORD +23 -21
- {adaptive_sdk-0.1.6.dist-info → adaptive_sdk-0.1.8.dist-info}/WHEEL +0 -0
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Wrapper for JobData that adds eval_result functionality without modifying autogenerated code.
|
|
3
|
+
"""
|
|
4
|
+
|
|
5
|
+
from __future__ import annotations
|
|
6
|
+
from typing import TYPE_CHECKING
|
|
7
|
+
from pydantic import BaseModel, Field
|
|
8
|
+
|
|
9
|
+
from adaptive_sdk.graphql_client import JobData, JobArtifactKind, JobDataDetailsArtifactsByproductsEvaluationByproducts
|
|
10
|
+
|
|
11
|
+
if TYPE_CHECKING:
|
|
12
|
+
pass
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class EvalMetricScore(BaseModel):
|
|
16
|
+
"""A single metric score for a model in an evaluation."""
|
|
17
|
+
|
|
18
|
+
metric_key: str = Field(description="The key of the metric")
|
|
19
|
+
metric_name: str = Field(description="The human-readable name of the metric")
|
|
20
|
+
mean: float = Field(description="The mean score for this metric")
|
|
21
|
+
min: float = Field(description="The minimum score for this metric")
|
|
22
|
+
max: float = Field(description="The maximum score for this metric")
|
|
23
|
+
stddev: float = Field(description="The standard deviation of scores")
|
|
24
|
+
count: int = Field(description="The number of samples evaluated")
|
|
25
|
+
feedback_count: int = Field(description="The number of feedbacks received")
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class ModelEvalResult(BaseModel):
|
|
29
|
+
"""Evaluation results for a single model."""
|
|
30
|
+
|
|
31
|
+
model_key: str = Field(description="The key of the model that was evaluated")
|
|
32
|
+
model_name: str = Field(description="The human-readable name of the model")
|
|
33
|
+
scores: list[EvalMetricScore] = Field(description="List of metric scores for this model", default_factory=list)
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
class JobDataPlus(JobData):
|
|
37
|
+
"""
|
|
38
|
+
Extended JobData that adds eval_result() method.
|
|
39
|
+
Inherits all attributes and methods from JobData.
|
|
40
|
+
"""
|
|
41
|
+
|
|
42
|
+
@classmethod
|
|
43
|
+
def from_job_data(cls, job_data: JobData) -> "JobDataPlus":
|
|
44
|
+
"""
|
|
45
|
+
Create a JobDataWrapper from a JobData instance.
|
|
46
|
+
|
|
47
|
+
Args:
|
|
48
|
+
job_data: The JobData instance to wrap
|
|
49
|
+
|
|
50
|
+
Returns:
|
|
51
|
+
A new JobDataWrapper with all the same data
|
|
52
|
+
"""
|
|
53
|
+
# Use model_validate to create a new instance with the same data
|
|
54
|
+
return cls.model_validate(job_data.model_dump())
|
|
55
|
+
|
|
56
|
+
@property
|
|
57
|
+
def eval_results(self) -> list[ModelEvalResult] | None:
|
|
58
|
+
"""
|
|
59
|
+
Extract and organize evaluation results from this job.
|
|
60
|
+
|
|
61
|
+
Returns:
|
|
62
|
+
A list of ModelEvalResult objects (one per model), or None if no eval results exist
|
|
63
|
+
"""
|
|
64
|
+
if not self.details or not self.details.artifacts:
|
|
65
|
+
return None
|
|
66
|
+
|
|
67
|
+
# Dictionary to group scores by model
|
|
68
|
+
model_results: dict[str, ModelEvalResult] = {}
|
|
69
|
+
|
|
70
|
+
# Iterate through all artifacts looking for evaluation byproducts
|
|
71
|
+
for artifact in self.details.artifacts:
|
|
72
|
+
if not artifact.byproducts:
|
|
73
|
+
continue
|
|
74
|
+
|
|
75
|
+
# Check if this is an EvaluationByproducts with eval_results
|
|
76
|
+
if artifact.kind == JobArtifactKind.EVALUATION:
|
|
77
|
+
if artifact.byproducts is not None:
|
|
78
|
+
assert isinstance(artifact.byproducts, JobDataDetailsArtifactsByproductsEvaluationByproducts)
|
|
79
|
+
|
|
80
|
+
for eval_result in artifact.byproducts.eval_results:
|
|
81
|
+
model_key = eval_result.model_service.key
|
|
82
|
+
model_name = eval_result.model_service.name
|
|
83
|
+
|
|
84
|
+
# Create or get the model result entry
|
|
85
|
+
if model_key not in model_results:
|
|
86
|
+
model_results[model_key] = ModelEvalResult(
|
|
87
|
+
model_key=model_key, model_name=model_name, scores=[]
|
|
88
|
+
)
|
|
89
|
+
|
|
90
|
+
# Add the metric score to this model's results
|
|
91
|
+
metric_score = EvalMetricScore(
|
|
92
|
+
metric_key=eval_result.metric.key,
|
|
93
|
+
metric_name=eval_result.metric.name,
|
|
94
|
+
mean=eval_result.mean,
|
|
95
|
+
min=eval_result.min,
|
|
96
|
+
max=eval_result.max,
|
|
97
|
+
stddev=eval_result.stddev,
|
|
98
|
+
count=eval_result.count,
|
|
99
|
+
feedback_count=eval_result.feedback_count,
|
|
100
|
+
)
|
|
101
|
+
model_results[model_key].scores.append(metric_score)
|
|
102
|
+
|
|
103
|
+
if not model_results:
|
|
104
|
+
return None
|
|
105
|
+
|
|
106
|
+
return list(model_results.values())
|
|
@@ -14,7 +14,10 @@ from adaptive_sdk.graphql_client import (
|
|
|
14
14
|
DatasetCreateFromMultipartUpload,
|
|
15
15
|
)
|
|
16
16
|
from adaptive_sdk.graphql_client.custom_mutations import Mutation
|
|
17
|
-
from adaptive_sdk.graphql_client.custom_fields import
|
|
17
|
+
from adaptive_sdk.graphql_client.custom_fields import (
|
|
18
|
+
DatasetFields,
|
|
19
|
+
DatasetUploadProcessingStatusFields,
|
|
20
|
+
)
|
|
18
21
|
from adaptive_sdk.rest import rest_types
|
|
19
22
|
from adaptive_sdk.error_handling import rest_error_handler
|
|
20
23
|
|
|
@@ -178,12 +181,12 @@ class Datasets(SyncAPIResource, UseCaseResource): # type: ignore[misc]
|
|
|
178
181
|
|
|
179
182
|
mutation_field = Mutation.create_dataset_from_multipart_upload(input=input)
|
|
180
183
|
mutation_field.fields(
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
184
|
+
DatasetUploadProcessingStatusFields.dataset_id,
|
|
185
|
+
DatasetUploadProcessingStatusFields.total_parts,
|
|
186
|
+
DatasetUploadProcessingStatusFields.processed_parts,
|
|
187
|
+
DatasetUploadProcessingStatusFields.progress,
|
|
188
|
+
DatasetUploadProcessingStatusFields.error,
|
|
189
|
+
DatasetUploadProcessingStatusFields.status,
|
|
187
190
|
)
|
|
188
191
|
result = self._gql_client.mutation(
|
|
189
192
|
mutation_field, operation_name="CreateDatasetFromMultipartUpload"
|
|
@@ -331,12 +334,12 @@ class AsyncDatasets(AsyncAPIResource, UseCaseResource): # type: ignore[misc]
|
|
|
331
334
|
|
|
332
335
|
mutation_field = Mutation.create_dataset_from_multipart_upload(input=input)
|
|
333
336
|
mutation_field.fields(
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
337
|
+
DatasetUploadProcessingStatusFields.dataset_id,
|
|
338
|
+
DatasetUploadProcessingStatusFields.total_parts,
|
|
339
|
+
DatasetUploadProcessingStatusFields.processed_parts,
|
|
340
|
+
DatasetUploadProcessingStatusFields.progress,
|
|
341
|
+
DatasetUploadProcessingStatusFields.error,
|
|
342
|
+
DatasetUploadProcessingStatusFields.status,
|
|
340
343
|
)
|
|
341
344
|
result = await self._gql_client.mutation(
|
|
342
345
|
mutation_field, operation_name="CreateDatasetFromMultipartUpload"
|
adaptive_sdk/resources/jobs.py
CHANGED
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
from __future__ import annotations
|
|
2
|
-
from typing import TYPE_CHECKING, Literal, Any
|
|
2
|
+
from typing import TYPE_CHECKING, Literal, Any, cast
|
|
3
3
|
|
|
4
4
|
from adaptive_sdk.graphql_client import (
|
|
5
5
|
CursorPageInput,
|
|
6
6
|
JobInput,
|
|
7
7
|
ListJobsJobs,
|
|
8
8
|
ListJobsFilterInput,
|
|
9
|
-
JobData,
|
|
10
9
|
JobKind,
|
|
10
|
+
ListJobsJobsNodes,
|
|
11
11
|
)
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
from .base_resource import SyncAPIResource, AsyncAPIResource, UseCaseResource
|
|
15
|
+
from adaptive_sdk.output_types import JobDataPlus
|
|
15
16
|
|
|
16
17
|
if TYPE_CHECKING:
|
|
17
18
|
from adaptive_sdk.client import Adaptive, AsyncAdaptive
|
|
@@ -26,8 +27,9 @@ class Jobs(SyncAPIResource, UseCaseResource): # type: ignore[misc]
|
|
|
26
27
|
SyncAPIResource.__init__(self, client)
|
|
27
28
|
UseCaseResource.__init__(self, client)
|
|
28
29
|
|
|
29
|
-
def get(self, job_id: str) ->
|
|
30
|
-
|
|
30
|
+
def get(self, job_id: str) -> JobDataPlus | None:
|
|
31
|
+
job_data = self._gql_client.describe_job(id=job_id).job
|
|
32
|
+
return JobDataPlus.from_job_data(job_data) if job_data else None
|
|
31
33
|
|
|
32
34
|
def list(
|
|
33
35
|
self,
|
|
@@ -55,7 +57,13 @@ class Jobs(SyncAPIResource, UseCaseResource): # type: ignore[misc]
|
|
|
55
57
|
useCase=use_case,
|
|
56
58
|
kind=[JobKind(k) for k in kind] if kind else None,
|
|
57
59
|
)
|
|
58
|
-
|
|
60
|
+
jobs = self._gql_client.list_jobs(page=page, filter=validated_filter, order=[]).jobs
|
|
61
|
+
new_nodes: list[JobDataPlus] = []
|
|
62
|
+
for i in jobs.nodes:
|
|
63
|
+
new_nodes.append(JobDataPlus.from_job_data(i))
|
|
64
|
+
jobs.nodes = cast(list[ListJobsJobsNodes], new_nodes)
|
|
65
|
+
|
|
66
|
+
return jobs
|
|
59
67
|
|
|
60
68
|
def run(
|
|
61
69
|
self,
|
|
@@ -65,8 +73,8 @@ class Jobs(SyncAPIResource, UseCaseResource): # type: ignore[misc]
|
|
|
65
73
|
name: str | None = None,
|
|
66
74
|
use_case: str | None = None,
|
|
67
75
|
compute_pool: str | None = None,
|
|
68
|
-
) ->
|
|
69
|
-
|
|
76
|
+
) -> JobDataPlus:
|
|
77
|
+
job_data = self._gql_client.create_job(
|
|
70
78
|
input=JobInput(
|
|
71
79
|
recipe=recipe_key,
|
|
72
80
|
args=args,
|
|
@@ -76,9 +84,11 @@ class Jobs(SyncAPIResource, UseCaseResource): # type: ignore[misc]
|
|
|
76
84
|
numGpus=num_gpus,
|
|
77
85
|
)
|
|
78
86
|
).create_job
|
|
87
|
+
return JobDataPlus.from_job_data(job_data)
|
|
79
88
|
|
|
80
|
-
def cancel(self, job_id: str) ->
|
|
81
|
-
|
|
89
|
+
def cancel(self, job_id: str) -> JobDataPlus:
|
|
90
|
+
job_data = self._gql_client.cancel_job(job_id=job_id).cancel_job
|
|
91
|
+
return JobDataPlus.from_job_data(job_data)
|
|
82
92
|
|
|
83
93
|
|
|
84
94
|
class AsyncJobs(AsyncAPIResource, UseCaseResource): # type: ignore[misc]
|
|
@@ -90,8 +100,9 @@ class AsyncJobs(AsyncAPIResource, UseCaseResource): # type: ignore[misc]
|
|
|
90
100
|
AsyncAPIResource.__init__(self, client)
|
|
91
101
|
UseCaseResource.__init__(self, client)
|
|
92
102
|
|
|
93
|
-
async def get(self, job_id: str) ->
|
|
94
|
-
|
|
103
|
+
async def get(self, job_id: str) -> JobDataPlus | None:
|
|
104
|
+
job_data = (await self._gql_client.describe_job(id=job_id)).job
|
|
105
|
+
return JobDataPlus.from_job_data(job_data) if job_data else None
|
|
95
106
|
|
|
96
107
|
async def list(
|
|
97
108
|
self,
|
|
@@ -118,7 +129,12 @@ class AsyncJobs(AsyncAPIResource, UseCaseResource): # type: ignore[misc]
|
|
|
118
129
|
useCase=self.use_case_key(use_case),
|
|
119
130
|
kind=[JobKind[k] for k in kind] if kind else None,
|
|
120
131
|
)
|
|
121
|
-
|
|
132
|
+
jobs = (await self._gql_client.list_jobs(page=page, filter=validated_filter)).jobs
|
|
133
|
+
new_nodes: list[JobDataPlus] = []
|
|
134
|
+
for i in jobs.nodes:
|
|
135
|
+
new_nodes.append(JobDataPlus.from_job_data(i))
|
|
136
|
+
jobs.nodes = cast(list[ListJobsJobsNodes], new_nodes)
|
|
137
|
+
return jobs
|
|
122
138
|
|
|
123
139
|
async def run(
|
|
124
140
|
self,
|
|
@@ -128,8 +144,8 @@ class AsyncJobs(AsyncAPIResource, UseCaseResource): # type: ignore[misc]
|
|
|
128
144
|
name: str | None = None,
|
|
129
145
|
use_case: str | None = None,
|
|
130
146
|
compute_pool: str | None = None,
|
|
131
|
-
) ->
|
|
132
|
-
|
|
147
|
+
) -> JobDataPlus:
|
|
148
|
+
job_data = (
|
|
133
149
|
await self._gql_client.create_job(
|
|
134
150
|
input=JobInput(
|
|
135
151
|
recipe=recipe_key,
|
|
@@ -141,6 +157,8 @@ class AsyncJobs(AsyncAPIResource, UseCaseResource): # type: ignore[misc]
|
|
|
141
157
|
)
|
|
142
158
|
)
|
|
143
159
|
).create_job
|
|
160
|
+
return JobDataPlus.from_job_data(job_data)
|
|
144
161
|
|
|
145
|
-
async def cancel(self, job_id: str) ->
|
|
146
|
-
|
|
162
|
+
async def cancel(self, job_id: str) -> JobDataPlus:
|
|
163
|
+
job_data = (await self._gql_client.cancel_job(job_id=job_id)).cancel_job
|
|
164
|
+
return JobDataPlus.from_job_data(job_data)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: adaptive-sdk
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.8
|
|
4
4
|
Summary: Python SDK for Adaptive Engine
|
|
5
5
|
Author-email: Vincent Debergue <vincent@adaptive-ml.com>, Joao Moura <joao@adaptive-ml.com>, Yacine Bouraoui <yacine@adaptive-ml.com>
|
|
6
6
|
Requires-Python: >=3.10
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
adaptive_sdk/__init__.py,sha256=RQWUHUyEWFSqvTKQpM7Q98nRPnisXRgIZlYd65aJucs,308
|
|
2
|
-
adaptive_sdk/base_client.py,sha256=
|
|
3
|
-
adaptive_sdk/client.py,sha256=
|
|
2
|
+
adaptive_sdk/base_client.py,sha256=kDeRwwsoue3MqKSXT-k-aUbUdAUb1Abow8oc_AULTnU,4935
|
|
3
|
+
adaptive_sdk/client.py,sha256=p-kMH1fboIF6fpHx3sSyRqmlN3gbx9mxjEkDEfrgs_U,5509
|
|
4
4
|
adaptive_sdk/error_handling.py,sha256=emicEqdEOCgWwCgMkQyvB7VWdKRMnfrWA2urEthQ_g0,3345
|
|
5
5
|
adaptive_sdk/openapi.json,sha256=1zCNC1PsbRnfWy_2TF1MUgF4PDL3pbwYqJbzVTqmm-U,14607
|
|
6
6
|
adaptive_sdk/patch.py,sha256=mF9iw2VnxirxA7_T7TdatpCTwk3EXfXml9elYAvmy7U,223
|
|
@@ -9,24 +9,24 @@ adaptive_sdk/external/__init__.py,sha256=-C_MT56OM6xlNhzkwnQ-ke-VV8fJdZIsOzdbNYm
|
|
|
9
9
|
adaptive_sdk/external/base_model.py,sha256=_WSTDyJdV61Pno63gCXsaL0r9dOahw_JoZ7e7Q6z2QE,295
|
|
10
10
|
adaptive_sdk/external/constants.py,sha256=HaEbIoGG6u0a_tr8_NdNmM-8ApTG1Q0n2G5aGF4Z_nA,280
|
|
11
11
|
adaptive_sdk/external/requests_journal.py,sha256=nJG2CIhl85dkWHibOyvsmcNh_YDVtoyj0PbyLuOYFT4,4686
|
|
12
|
-
adaptive_sdk/external/reward_client.py,sha256=
|
|
12
|
+
adaptive_sdk/external/reward_client.py,sha256=TSVdi437McUkMModDQV6ZswduaDmmG1Bvkz_jWYTTj4,7324
|
|
13
13
|
adaptive_sdk/external/reward_server.py,sha256=yT8vqAEIoaq8nFZYaku5IoK0_7fX9uX_dfF1CxcDKnA,7488
|
|
14
14
|
adaptive_sdk/external/reward_types.py,sha256=aZmTolT0OjgObo-64zJkarUKOY4RdxHnsQt8AKAaq1w,1710
|
|
15
15
|
adaptive_sdk/external/websocket_utils.py,sha256=QN-K1IRbqe1LdQTz6vXhVgn-R2SjOB80NjGD2w_LaAo,1284
|
|
16
|
-
adaptive_sdk/graphql_client/__init__.py,sha256=
|
|
16
|
+
adaptive_sdk/graphql_client/__init__.py,sha256=mlVK5fr6Sazx2vMUsX73SU1cd2-kAFgg1fKCiliYirk,20995
|
|
17
17
|
adaptive_sdk/graphql_client/add_external_model.py,sha256=9VpQHlJMm5t_Ja_SX2MkYcSG1IQpem6mrdXMfNTa1oo,352
|
|
18
18
|
adaptive_sdk/graphql_client/add_hf_model.py,sha256=aC2IcYftepe28Hi01Kg0w3A7bjKrStWasx6aXiqghJU,312
|
|
19
19
|
adaptive_sdk/graphql_client/add_model.py,sha256=Uyhpxkziz1Pv2S7Q0wOaKGK4krjmEf2PeLK0yEs89Hs,461
|
|
20
20
|
adaptive_sdk/graphql_client/add_remote_env.py,sha256=X94F94tnMzuX9TC_Ieowngw35gJxnKL2YST2sqEJ7CY,328
|
|
21
|
-
adaptive_sdk/graphql_client/async_base_client_open_telemetry.py,sha256=
|
|
22
|
-
adaptive_sdk/graphql_client/async_client.py,sha256=
|
|
21
|
+
adaptive_sdk/graphql_client/async_base_client_open_telemetry.py,sha256=XSRJGEcyfWnFjrDz4Un6xfQWOxr7jWto1vYjbYTQeo0,19761
|
|
22
|
+
adaptive_sdk/graphql_client/async_client.py,sha256=LvX0-wOVVh7lhyQUzbY9jbeEuyjir8RNharyLXpXmi4,115656
|
|
23
23
|
adaptive_sdk/graphql_client/attach_model_to_use_case.py,sha256=WyERM4wxKrUS1u9VZ3FUasZu5AVSbRswzy9jmxssTFM,361
|
|
24
|
-
adaptive_sdk/graphql_client/base_client_open_telemetry.py,sha256=
|
|
24
|
+
adaptive_sdk/graphql_client/base_client_open_telemetry.py,sha256=IV96gRr5FuH-dWMU5PBvQhTwEsV7udsXU-Dyh-Mx-4k,9398
|
|
25
25
|
adaptive_sdk/graphql_client/base_model.py,sha256=2xxKA4sIdlGPIezw06XP9bseSxBURU7nivgt_gL44iA,621
|
|
26
|
-
adaptive_sdk/graphql_client/base_operation.py,sha256=
|
|
26
|
+
adaptive_sdk/graphql_client/base_operation.py,sha256=aooq1M4r79cvMoganZ2RvQ3-v0io22fGLOVfl3UBqPQ,4635
|
|
27
27
|
adaptive_sdk/graphql_client/cancel_ab_campaign.py,sha256=JAEpmedz0jOu90U3KR0PYCMAhf2_E6h6WOT30HSE91k,176
|
|
28
28
|
adaptive_sdk/graphql_client/cancel_job.py,sha256=3ZLoqrULi1mp5A5i4rD-gXliKhD8038IPfvCNBg0dPs,291
|
|
29
|
-
adaptive_sdk/graphql_client/client.py,sha256=
|
|
29
|
+
adaptive_sdk/graphql_client/client.py,sha256=P9BgiDKnfU5GOTAQ0MoZpnqLWPzxWnvfvlIzA8OKVV4,114747
|
|
30
30
|
adaptive_sdk/graphql_client/create_ab_campaign.py,sha256=___2iFSGnWKkjXz_MfxKUxi1EoQcSBv9AX8S7YoUeVw,374
|
|
31
31
|
adaptive_sdk/graphql_client/create_custom_recipe.py,sha256=eIVLDHbdFG2qWjoZBLC3Xs40Fjy6L-u6wrABV5ibUxo,382
|
|
32
32
|
adaptive_sdk/graphql_client/create_grader.py,sha256=H6xdf7Zn7JkOehINWMkULH3ObASrtvPLKaX-BjW-3zw,321
|
|
@@ -38,10 +38,10 @@ adaptive_sdk/graphql_client/create_role.py,sha256=6aTdNOZxavMyjkH-g01uYOZgpjYWcA
|
|
|
38
38
|
adaptive_sdk/graphql_client/create_team.py,sha256=6Alt1ralE1-Xvp2wrEaLUHMW5RtiFqz2fIsUYE_2LbM,370
|
|
39
39
|
adaptive_sdk/graphql_client/create_use_case.py,sha256=sekD76jWCo3zNCfMsBGhVYfNSIK4JPPBz9066BOt49g,332
|
|
40
40
|
adaptive_sdk/graphql_client/create_user.py,sha256=gurD0kZgncXt1HBr7Oo5AkK5ubqFKpJvaR1rn506gHo,301
|
|
41
|
-
adaptive_sdk/graphql_client/custom_fields.py,sha256=
|
|
42
|
-
adaptive_sdk/graphql_client/custom_mutations.py,sha256=
|
|
43
|
-
adaptive_sdk/graphql_client/custom_queries.py,sha256=
|
|
44
|
-
adaptive_sdk/graphql_client/custom_typing_fields.py,sha256=
|
|
41
|
+
adaptive_sdk/graphql_client/custom_fields.py,sha256=T5QG7zjX6URKy1lLkmbfjCNCkTU3pbqHn_3MzuYE3AA,98874
|
|
42
|
+
adaptive_sdk/graphql_client/custom_mutations.py,sha256=meo96-odIhk_NoFL_uDj78xguLOD-_DIYW2bj6ilvII,25341
|
|
43
|
+
adaptive_sdk/graphql_client/custom_queries.py,sha256=QsFX6ovy1W9nUuCD0-wo9GhiJACl9yQGCifHnKIs6Bo,17359
|
|
44
|
+
adaptive_sdk/graphql_client/custom_typing_fields.py,sha256=aS7Oj2z-oLcIqMZrVNNM9wVxXQK6rYSTF1GaXAnFVr4,20608
|
|
45
45
|
adaptive_sdk/graphql_client/delete_custom_recipe.py,sha256=tsWGqherJyVe5OBFG8QCG5GUdlX8s-nd8MSiMAXfSqk,183
|
|
46
46
|
adaptive_sdk/graphql_client/delete_dataset.py,sha256=k5enUd6zO89RmA349eVzYajtZigWjOdDdPTcUzTFahI,167
|
|
47
47
|
adaptive_sdk/graphql_client/delete_grader.py,sha256=U9r26BtvOaThzyf0VGouvkuEaJ1wJGPGjbHluSDWBsc,350
|
|
@@ -57,13 +57,13 @@ adaptive_sdk/graphql_client/describe_metric_admin.py,sha256=_SKKwnFhZnbOTT97elEr
|
|
|
57
57
|
adaptive_sdk/graphql_client/describe_model.py,sha256=UnsOnAyBjNsnkJaS4q5uwkSSvInHwRqUj3XqAoO0yO4,434
|
|
58
58
|
adaptive_sdk/graphql_client/describe_model_admin.py,sha256=XUt_CBSMw1HRleUEWZn2snYt2BNSux_siqrVlwtqH-w,484
|
|
59
59
|
adaptive_sdk/graphql_client/describe_use_case.py,sha256=WW0QkTmdfggN8YBUNGi8ShrP_fr2jXPR6Fer6jlQxu0,353
|
|
60
|
-
adaptive_sdk/graphql_client/enums.py,sha256=
|
|
60
|
+
adaptive_sdk/graphql_client/enums.py,sha256=NykoTVLryXuy6pbHDRLfAN3m7EUi8B2Evbgp41Em7sQ,5168
|
|
61
61
|
adaptive_sdk/graphql_client/exceptions.py,sha256=NiC6v-5S7aRDlvQTcHH3K5KvxWvk-c-PkIQQHkipTB8,2268
|
|
62
|
-
adaptive_sdk/graphql_client/fragments.py,sha256=
|
|
62
|
+
adaptive_sdk/graphql_client/fragments.py,sha256=_F3IgC3lJN4erM5Ory1bnvnLbzjZ9Z1Xfv4jdw8dJEo,22046
|
|
63
63
|
adaptive_sdk/graphql_client/get_custom_recipe.py,sha256=7qxBZGQTqpc69k-NwzgFctaHWaRz0tHl7YlVSsEad6U,383
|
|
64
64
|
adaptive_sdk/graphql_client/get_grader.py,sha256=kubHDBtUcq6mZtUR5_Of0QbjnGUPSYuavF3_xwmwbY8,233
|
|
65
65
|
adaptive_sdk/graphql_client/get_judge.py,sha256=urEnHW3XfURi5GAFBPfbqzOZGQDxgsGRA6nZmUKmoMA,224
|
|
66
|
-
adaptive_sdk/graphql_client/input_types.py,sha256=
|
|
66
|
+
adaptive_sdk/graphql_client/input_types.py,sha256=FLa_O8WmkLbTUma7BEaLg5Epe39Ap5cnGBhc6Y_jAuw,20411
|
|
67
67
|
adaptive_sdk/graphql_client/link_metric.py,sha256=EDH67ckBzzc6MYIGfsmgZRBnjqxLsCGwFUaFMXPEsBY,327
|
|
68
68
|
adaptive_sdk/graphql_client/list_ab_campaigns.py,sha256=SIbU6I2OQkNHt0Gw6YStoiiwJHUk2rfXnpoGLzrFjxc,379
|
|
69
69
|
adaptive_sdk/graphql_client/list_compute_pools.py,sha256=4Qli5Foxm3jztbUAL5gbwqtcrElwwlC4LGJMOMBI6Cc,782
|
|
@@ -101,17 +101,19 @@ adaptive_sdk/graphql_client/update_model_compute_config.py,sha256=0RtrzzfuMrt-i6
|
|
|
101
101
|
adaptive_sdk/graphql_client/update_user.py,sha256=E6vtj177-Hx1uUUo8MiSrynULXrnxtJma3Kq69FPC6M,897
|
|
102
102
|
adaptive_sdk/input_types/__init__.py,sha256=SVy4Ks4pm1M32LZ_yHN2itlzNW0g2Kg3b3_ibNLI-7s,806
|
|
103
103
|
adaptive_sdk/input_types/typed_dicts.py,sha256=0HWbJ6nY4zrNCsMg6MynkAO2VUr_7Iu9u9F1Y-71gWE,4942
|
|
104
|
+
adaptive_sdk/output_types/__init__.py,sha256=gIfALHcp-hOt8J7bFO7KAYbJc0JXtp7d_vVBqD0zPLE,136
|
|
105
|
+
adaptive_sdk/output_types/job_wrapper.py,sha256=dXdS33TKLHuTRAVq5LFvA7bsUidsWuhE-NDbq5k59g0,4247
|
|
104
106
|
adaptive_sdk/resources/__init__.py,sha256=-cHNzI-hg1u-GGe-fVvV_L4JOgat2zJuKnC3E2In-iw,1326
|
|
105
107
|
adaptive_sdk/resources/abtests.py,sha256=9PCPjxuWwY9ec88ewnq54gkoELq5U5iaBmHhzLCAsFU,7698
|
|
106
108
|
adaptive_sdk/resources/base_resource.py,sha256=D9adWSFxiDB7chVstDuBu1jcuXkE71UQJexnWENpC4A,1497
|
|
107
109
|
adaptive_sdk/resources/chat.py,sha256=k-jh_IZfKwqoWNN2P5BhAM3P_f5HLybVZp35pUadwso,11954
|
|
108
110
|
adaptive_sdk/resources/compute_pools.py,sha256=4eHP8FMkZOsGPjZ-qBvda2PunA6GMyvvJTHnhAEGTo4,938
|
|
109
|
-
adaptive_sdk/resources/datasets.py,sha256=
|
|
111
|
+
adaptive_sdk/resources/datasets.py,sha256=TjYkU4eKY-Si5ffQhMkX3sIEj5Ybz1U3ksOJs4Fa6BA,14622
|
|
110
112
|
adaptive_sdk/resources/embeddings.py,sha256=-ov_EChHU6PJJOJRtDlCo4sYyr9hwyvRjnBhub8QNFg,3922
|
|
111
113
|
adaptive_sdk/resources/feedback.py,sha256=lujqwFIhxi6iovL8JWL05Kr-gkzR4QEwUXZbTx33raA,14116
|
|
112
114
|
adaptive_sdk/resources/graders.py,sha256=ekQQ5fqmLZpZHeLr6iUm6m45wDevoDJdj3mG-axR-m8,29014
|
|
113
115
|
adaptive_sdk/resources/interactions.py,sha256=9A0aKyfE5dhMj-rj6NOiF7kxAl89SXksFsRJXXjPGK8,10810
|
|
114
|
-
adaptive_sdk/resources/jobs.py,sha256=
|
|
116
|
+
adaptive_sdk/resources/jobs.py,sha256=dN19HgOvGEq9O5hhgDZlWhi15noXo4qHLT_fd-qjrAU,5318
|
|
115
117
|
adaptive_sdk/resources/models.py,sha256=krQbfMnVkjNqXfPG-8irH_xlloDpFpQiqYsbED3-8z8,18591
|
|
116
118
|
adaptive_sdk/resources/permissions.py,sha256=ckO-oacWkvgcwXBK5iW_8qaK-g0SHXpEEy1qZy5lrB0,1053
|
|
117
119
|
adaptive_sdk/resources/recipes.py,sha256=f4Q_noEAjx-LGkgzLOU6UtgFTK75cQu0cYBakNjUCv0,13224
|
|
@@ -122,6 +124,6 @@ adaptive_sdk/resources/users.py,sha256=SoGWwdDCdhK4KjYOcAws-ZWlW7Edii7D3Vxfdu-NZ
|
|
|
122
124
|
adaptive_sdk/rest/__init__.py,sha256=P9uhkOoc9cgUkJ5MBoV5soPgQWSkvPrTwHzPGX7i5tY,610
|
|
123
125
|
adaptive_sdk/rest/base_model.py,sha256=P06TNhnqXa6JEje_B_94vAa5zqPYIVxMZAp6aZ4d80U,516
|
|
124
126
|
adaptive_sdk/rest/rest_types.py,sha256=aSN7901_1goByBEl7Ka6onU2ia-_RhlmtH9suFkWkic,8859
|
|
125
|
-
adaptive_sdk-0.1.
|
|
126
|
-
adaptive_sdk-0.1.
|
|
127
|
-
adaptive_sdk-0.1.
|
|
127
|
+
adaptive_sdk-0.1.8.dist-info/WHEEL,sha256=G2gURzTEtmeR8nrdXUJfNiB3VYVxigPQ-bEQujpNiNs,82
|
|
128
|
+
adaptive_sdk-0.1.8.dist-info/METADATA,sha256=stv3nHM_GV-XMi8mtWvzxBw9Of8_fMLFU71wmBoTB-E,1446
|
|
129
|
+
adaptive_sdk-0.1.8.dist-info/RECORD,,
|
|
File without changes
|