adaptive-sdk 0.1.5__py3-none-any.whl → 0.1.7__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 +45 -9
- adaptive_sdk/external/reward_server.py +20 -8
- adaptive_sdk/graphql_client/__init__.py +3 -3
- adaptive_sdk/graphql_client/async_base_client_open_telemetry.py +6 -6
- adaptive_sdk/graphql_client/async_client.py +29 -29
- 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 +29 -29
- adaptive_sdk/graphql_client/custom_fields.py +160 -81
- adaptive_sdk/graphql_client/custom_mutations.py +69 -55
- adaptive_sdk/graphql_client/custom_queries.py +54 -40
- adaptive_sdk/graphql_client/custom_typing_fields.py +53 -0
- adaptive_sdk/graphql_client/enums.py +17 -2
- adaptive_sdk/graphql_client/fragments.py +1 -3
- adaptive_sdk/graphql_client/input_types.py +35 -4
- adaptive_sdk/resources/datasets.py +275 -21
- adaptive_sdk/resources/jobs.py +4 -0
- adaptive_sdk/rest/__init__.py +1 -1
- adaptive_sdk/rest/base_model.py +1 -4
- adaptive_sdk/rest/rest_types.py +32 -0
- {adaptive_sdk-0.1.5.dist-info → adaptive_sdk-0.1.7.dist-info}/METADATA +3 -3
- {adaptive_sdk-0.1.5.dist-info → adaptive_sdk-0.1.7.dist-info}/RECORD +25 -25
- {adaptive_sdk-0.1.5.dist-info → adaptive_sdk-0.1.7.dist-info}/WHEEL +0 -0
adaptive_sdk/base_client.py
CHANGED
|
@@ -42,10 +42,16 @@ class BaseSyncClient:
|
|
|
42
42
|
base_url: str,
|
|
43
43
|
api_key: Optional[str] = None,
|
|
44
44
|
default_headers: Dict[str, str] | None = None,
|
|
45
|
-
timeout_secs: float = 90.0,
|
|
45
|
+
timeout_secs: float | None = 90.0,
|
|
46
46
|
):
|
|
47
47
|
"""
|
|
48
48
|
Construct a new synchronous client instance.
|
|
49
|
+
|
|
50
|
+
Args:
|
|
51
|
+
base_url: The base URL for the API
|
|
52
|
+
api_key: API key for authentication (or set ADAPTIVE_API_KEY env var)
|
|
53
|
+
default_headers: Additional headers to include in requests
|
|
54
|
+
timeout_secs: Timeout in seconds for requests (None for no timeout)
|
|
49
55
|
"""
|
|
50
56
|
if not base_url:
|
|
51
57
|
raise ValueError("base_url must be provided")
|
|
@@ -68,7 +74,7 @@ class BaseSyncClient:
|
|
|
68
74
|
self._gql_client = GQLClient(base_url + Routes.GQL.value, headers=headers)
|
|
69
75
|
self._gql_client.get_data = graphql_multi_error_handler(self._gql_client.get_data) # type: ignore[method-assign]
|
|
70
76
|
|
|
71
|
-
timeout = httpx.Timeout(timeout=timeout_secs)
|
|
77
|
+
timeout = httpx.Timeout(timeout=timeout_secs) if timeout_secs is not None else None
|
|
72
78
|
|
|
73
79
|
self._gql_client.http_client.timeout = timeout
|
|
74
80
|
self._rest_client = httpx.Client(headers=headers, base_url=base_url + Routes.REST.value, timeout=timeout)
|
|
@@ -84,10 +90,16 @@ class BaseAsyncClient:
|
|
|
84
90
|
base_url: str,
|
|
85
91
|
api_key: Optional[str] = None,
|
|
86
92
|
default_headers: Dict[str, str] | None = None,
|
|
87
|
-
timeout_secs: float = 90.0,
|
|
93
|
+
timeout_secs: float | None = 90.0,
|
|
88
94
|
):
|
|
89
95
|
"""
|
|
90
96
|
Construct a new asynchronous client instance.
|
|
97
|
+
|
|
98
|
+
Args:
|
|
99
|
+
base_url: The base URL for the API
|
|
100
|
+
api_key: API key for authentication (or set ADAPTIVE_API_KEY env var)
|
|
101
|
+
default_headers: Additional headers to include in requests
|
|
102
|
+
timeout_secs: Timeout in seconds for requests (None for no timeout)
|
|
91
103
|
"""
|
|
92
104
|
if not base_url:
|
|
93
105
|
raise ValueError("base_url must be provided")
|
|
@@ -111,7 +123,7 @@ class BaseAsyncClient:
|
|
|
111
123
|
self._gql_client = AsyncGQLClient(base_url + Routes.GQL.value, headers=headers)
|
|
112
124
|
self._gql_client.get_data = graphql_multi_error_handler(self._gql_client.get_data) # type: ignore[method-assign]
|
|
113
125
|
|
|
114
|
-
timeout = httpx.Timeout(timeout=timeout_secs)
|
|
126
|
+
timeout = httpx.Timeout(timeout=timeout_secs) if timeout_secs is not None else None
|
|
115
127
|
self._gql_client.http_client.timeout = timeout
|
|
116
128
|
self._rest_client = httpx.AsyncClient(headers=headers, base_url=base_url + Routes.REST.value, timeout=timeout)
|
|
117
129
|
|
adaptive_sdk/client.py
CHANGED
|
@@ -9,6 +9,7 @@ class Adaptive(BaseSyncClient, UseCaseClient):
|
|
|
9
9
|
base_url: str,
|
|
10
10
|
api_key: str | None = None,
|
|
11
11
|
default_headers: Dict[str, str] | None = None,
|
|
12
|
+
timeout_secs: float | None = 90.0,
|
|
12
13
|
) -> None:
|
|
13
14
|
"""
|
|
14
15
|
Instantiates a new synchronous Adaptive client bounded to a use case.
|
|
@@ -18,9 +19,11 @@ class Adaptive(BaseSyncClient, UseCaseClient):
|
|
|
18
19
|
base_url (str): The base URL for the Adaptive API.
|
|
19
20
|
api_key (str, optional): API key for authentication.
|
|
20
21
|
Defaults to None, in which case environment variable `ADAPTIVE_API_KEY` needs to be set.
|
|
22
|
+
timeout_secs (float | None, optional): Timeout in seconds for HTTP requests.
|
|
23
|
+
Defaults to 90.0 seconds. Set to None for no timeout.
|
|
21
24
|
|
|
22
25
|
"""
|
|
23
|
-
super().__init__(base_url, api_key, default_headers)
|
|
26
|
+
super().__init__(base_url, api_key, default_headers, timeout_secs)
|
|
24
27
|
self.__use_case_key = None
|
|
25
28
|
|
|
26
29
|
self.ab_tests: resources.ABTests = resources.ABTests(self)
|
|
@@ -62,6 +65,7 @@ class AsyncAdaptive(BaseAsyncClient, UseCaseClient):
|
|
|
62
65
|
base_url: str,
|
|
63
66
|
api_key: str | None = None,
|
|
64
67
|
default_headers: Dict[str, str] | None = None,
|
|
68
|
+
timeout_secs: float | None = 90.0,
|
|
65
69
|
) -> None:
|
|
66
70
|
"""
|
|
67
71
|
Instantiates a new asynchronous Adaptive client bounded to a use case.
|
|
@@ -71,9 +75,11 @@ class AsyncAdaptive(BaseAsyncClient, UseCaseClient):
|
|
|
71
75
|
base_url (str): The base URL for the Adaptive API.
|
|
72
76
|
api_key (str, optional): API key for authentication.
|
|
73
77
|
Defaults to None, in which case environment variable `ADAPTIVE_API_KEY` needs to be set.
|
|
78
|
+
timeout_secs (float | None, optional): Timeout in seconds for HTTP requests.
|
|
79
|
+
Defaults to 90.0 seconds. Set to None for no timeout.
|
|
74
80
|
|
|
75
81
|
"""
|
|
76
|
-
super().__init__(base_url, api_key, default_headers)
|
|
82
|
+
super().__init__(base_url, api_key, default_headers, timeout_secs)
|
|
77
83
|
self.__use_case_key = None
|
|
78
84
|
|
|
79
85
|
self.ab_tests: resources.AsyncABTests = resources.AsyncABTests(self)
|
|
@@ -27,7 +27,9 @@ from adaptive_sdk.external.constants import (
|
|
|
27
27
|
)
|
|
28
28
|
|
|
29
29
|
|
|
30
|
-
async def read_task(
|
|
30
|
+
async def read_task(
|
|
31
|
+
client: ClientConnection, responses: dict[int, Response | asyncio.Event]
|
|
32
|
+
):
|
|
31
33
|
response_accumulators: dict[int, ResponseAccumulator] = {}
|
|
32
34
|
while True:
|
|
33
35
|
try:
|
|
@@ -54,12 +56,22 @@ async def read_task(client: ClientConnection, responses: dict[int, Response | as
|
|
|
54
56
|
|
|
55
57
|
|
|
56
58
|
class RewardClient:
|
|
57
|
-
def __init__(
|
|
59
|
+
def __init__(
|
|
60
|
+
self, base_url: str, max_connections: int = 32, timeout: float | None = None
|
|
61
|
+
):
|
|
58
62
|
headers = dict() # type: ignore[var-annotated]
|
|
63
|
+
if base_url.startswith("https://"):
|
|
64
|
+
self.use_secure_protocol = True
|
|
65
|
+
self.base_url = base_url.removeprefix("https://")
|
|
66
|
+
else:
|
|
67
|
+
assert base_url.startswith("http://"), f"Unknown url format {base_url}"
|
|
68
|
+
self.use_secure_protocol = False
|
|
69
|
+
self.base_url = base_url.removeprefix("http://")
|
|
70
|
+
|
|
59
71
|
self.base_url = base_url.removeprefix("http://").removeprefix("https://")
|
|
60
72
|
self._client = httpx.AsyncClient(
|
|
61
73
|
headers=dict(),
|
|
62
|
-
base_url=
|
|
74
|
+
base_url=self._get_http_url(),
|
|
63
75
|
timeout=timeout,
|
|
64
76
|
limits=Limits(max_connections=max_connections),
|
|
65
77
|
)
|
|
@@ -67,15 +79,31 @@ class RewardClient:
|
|
|
67
79
|
self.use_websocket = False
|
|
68
80
|
self.max_connections = max_connections
|
|
69
81
|
|
|
82
|
+
def _get_http_url(self):
|
|
83
|
+
if self.use_secure_protocol:
|
|
84
|
+
return f"https://{self.base_url}"
|
|
85
|
+
else:
|
|
86
|
+
return f"http://{self.base_url}"
|
|
87
|
+
|
|
88
|
+
def _get_ws_url(self):
|
|
89
|
+
if self.use_secure_protocol:
|
|
90
|
+
return f"wss://{self.base_url}/ws"
|
|
91
|
+
else:
|
|
92
|
+
return f"ws://{self.base_url}/ws"
|
|
93
|
+
|
|
70
94
|
async def setup(self):
|
|
71
95
|
await self.connect_websocket()
|
|
72
96
|
|
|
73
|
-
async def connect_websocket(self)->Self:
|
|
97
|
+
async def connect_websocket(self) -> Self:
|
|
74
98
|
self.use_websocket = True
|
|
75
|
-
self.ws_client: ClientConnection = await connect(
|
|
99
|
+
self.ws_client: ClientConnection = await connect(
|
|
100
|
+
self._get_ws_url(), ping_timeout=None
|
|
101
|
+
)
|
|
76
102
|
self.ws_responses: dict[int, Response | asyncio.Event] = dict()
|
|
77
103
|
logger.info("Spawning_read_task")
|
|
78
|
-
self.read_task = asyncio.create_task(
|
|
104
|
+
self.read_task = asyncio.create_task(
|
|
105
|
+
read_task(self.ws_client, self.ws_responses)
|
|
106
|
+
)
|
|
79
107
|
self.request_id = 0
|
|
80
108
|
# no need to blast 2x more than the amount of workers
|
|
81
109
|
self.semaphore = asyncio.Semaphore(self.max_connections)
|
|
@@ -113,7 +141,9 @@ class RewardClient:
|
|
|
113
141
|
return await self._ws_post(req)
|
|
114
142
|
|
|
115
143
|
async def batch_score(self, requests: list[Request]) -> list[Response]:
|
|
116
|
-
response = await self._post(
|
|
144
|
+
response = await self._post(
|
|
145
|
+
BATCH_SCORE_PATH, BatchedRequest(requests=requests).model_dump()
|
|
146
|
+
)
|
|
117
147
|
batched_response = BatchedResponse(**response.json())
|
|
118
148
|
return batched_response.responses
|
|
119
149
|
|
|
@@ -132,7 +162,9 @@ class RewardClient:
|
|
|
132
162
|
self, list_of_metadata: list[dict[Any, Any]]
|
|
133
163
|
) -> BatchedMetadataValidationResponse:
|
|
134
164
|
return BatchedMetadataValidationResponse(
|
|
135
|
-
responses=[
|
|
165
|
+
responses=[
|
|
166
|
+
await self.validate_metadata(metadata) for metadata in list_of_metadata
|
|
167
|
+
]
|
|
136
168
|
)
|
|
137
169
|
|
|
138
170
|
async def info(self) -> ServerInfo:
|
|
@@ -141,7 +173,11 @@ class RewardClient:
|
|
|
141
173
|
return ServerInfo(**response.json())
|
|
142
174
|
|
|
143
175
|
def blocking_info(self) -> ServerInfo:
|
|
144
|
-
return ServerInfo(
|
|
176
|
+
return ServerInfo(
|
|
177
|
+
**httpx.get(
|
|
178
|
+
self._client.base_url.join(INFO_PATH), timeout=self._client.timeout
|
|
179
|
+
).json()
|
|
180
|
+
)
|
|
145
181
|
|
|
146
182
|
def blocking_batch_score(self, requests: list[Request]) -> list[Response]:
|
|
147
183
|
request = BatchedRequest(requests=requests)
|
|
@@ -75,7 +75,9 @@ class RewardServer(ABC, Generic[META]):
|
|
|
75
75
|
request_str = request.model_dump_json(indent=2)
|
|
76
76
|
print(f"Received request: {request_str}")
|
|
77
77
|
res = await self.score(request)
|
|
78
|
-
print(
|
|
78
|
+
print(
|
|
79
|
+
f"Finished request : {request_str} with response: {res.model_dump_json(indent=2)}"
|
|
80
|
+
)
|
|
79
81
|
return res
|
|
80
82
|
else:
|
|
81
83
|
return await self.score(request)
|
|
@@ -83,7 +85,9 @@ class RewardServer(ABC, Generic[META]):
|
|
|
83
85
|
@abstractmethod
|
|
84
86
|
async def score(self, request: ValidatedRequest[META]) -> Response: ...
|
|
85
87
|
|
|
86
|
-
async def batch_score(
|
|
88
|
+
async def batch_score(
|
|
89
|
+
self, requests: ValidatedBatchedRequest[META]
|
|
90
|
+
) -> BatchedResponse:
|
|
87
91
|
tasks = []
|
|
88
92
|
for request in requests.requests:
|
|
89
93
|
tasks.append(self._score(request))
|
|
@@ -114,12 +118,14 @@ class RewardServer(ABC, Generic[META]):
|
|
|
114
118
|
routes.append(Route(SCORE_PATH, self._score, methods=["POST"]))
|
|
115
119
|
routes.append(Route(BATCH_SCORE_PATH, self.batch_score, methods=["POST"]))
|
|
116
120
|
routes.append(Route(INFO_PATH, self.info, methods=["GET"]))
|
|
117
|
-
routes.append(
|
|
121
|
+
routes.append(
|
|
122
|
+
Route(METADATA_SCHEMA_PATH, self.get_medata_schema, methods=["GET"])
|
|
123
|
+
)
|
|
118
124
|
return routes
|
|
119
125
|
|
|
120
126
|
async def score_task(websocket: WebSocket, msg):
|
|
121
|
-
req: ValidatedRequest = ValidatedRequest[self.metadata_cls].model_validate(msg)
|
|
122
|
-
req_id: int = req.id
|
|
127
|
+
req: ValidatedRequest = ValidatedRequest[self.metadata_cls].model_validate(msg) # type: ignore
|
|
128
|
+
req_id: int = req.id # type: ignore
|
|
123
129
|
response = await self._score(req)
|
|
124
130
|
response.id = req_id
|
|
125
131
|
await send_large_text(websocket, response.model_dump_json(), id=req_id)
|
|
@@ -194,12 +200,16 @@ class MyRewardServer(RewardServer[MyMetadata]):
|
|
|
194
200
|
)
|
|
195
201
|
|
|
196
202
|
async def info(self) -> ServerInfo:
|
|
197
|
-
return ServerInfo(
|
|
203
|
+
return ServerInfo(
|
|
204
|
+
version="1.0", name="My sevice", description="This is a nice description"
|
|
205
|
+
)
|
|
198
206
|
|
|
199
207
|
|
|
200
208
|
class MyNoMetadataRewardServer(RewardServer[EmptyMetadata]):
|
|
201
209
|
def __init__(self, port=8000, blocking=True):
|
|
202
|
-
super().__init__(
|
|
210
|
+
super().__init__(
|
|
211
|
+
port, EmptyMetadata, blocking, requests_journal=RequestsJournal()
|
|
212
|
+
)
|
|
203
213
|
|
|
204
214
|
async def score(self, request: ValidatedRequest[EmptyMetadata]) -> Response:
|
|
205
215
|
|
|
@@ -207,7 +217,9 @@ class MyNoMetadataRewardServer(RewardServer[EmptyMetadata]):
|
|
|
207
217
|
return Response(reward=len(last_completion), metadata={})
|
|
208
218
|
|
|
209
219
|
async def info(self) -> ServerInfo:
|
|
210
|
-
return ServerInfo(
|
|
220
|
+
return ServerInfo(
|
|
221
|
+
version="1.0", name="My sevice", description="This is a nice description"
|
|
222
|
+
)
|
|
211
223
|
|
|
212
224
|
|
|
213
225
|
if __name__ == "__main__":
|
|
@@ -36,13 +36,13 @@ from .describe_metric_admin import DescribeMetricAdmin, DescribeMetricAdminMetri
|
|
|
36
36
|
from .describe_model import DescribeModel, DescribeModelModel, DescribeModelModelBackbone
|
|
37
37
|
from .describe_model_admin import DescribeModelAdmin, DescribeModelAdminModel, DescribeModelAdminModelBackbone
|
|
38
38
|
from .describe_use_case import DescribeUseCase, DescribeUseCaseUseCase
|
|
39
|
-
from .enums import AbcampaignStatus, AuthProviderKind, BillingCycle, CompletionGroupBy, CompletionSource, ComputePoolCapability, DatasetKind, DatasetSource, DateBucketUnit, ExternalModelProviderName, FeedbackType, GraderTypeEnum, HarmonyStatus, JobArtifactKind, JobKind, JobStatus, JobStatusOutput, JudgeCapability, MetricAggregation, MetricKind, MetricScoringType,
|
|
39
|
+
from .enums import AbcampaignStatus, AuthProviderKind, BillingCycle, CompletionGroupBy, CompletionSource, ComputePoolCapability, DatasetKind, DatasetSource, DatasetStatus, DateBucketUnit, ExternalModelProviderName, FeedbackType, GraderTypeEnum, HarmonyStatus, JobArtifactKind, JobKind, JobStatus, JobStatusOutput, JudgeCapability, MetricAggregation, MetricKind, MetricScoringType, ModelCapabilityFilter, ModelOnline, ModelserviceStatus, OpenAIModel, PrebuiltCriteriaKey, Protocol, ProviderName, RemoteEnvStatus, SelectionTypeInput, SessionStatus, SortDirection, TimeseriesInterval, UnitPosition
|
|
40
40
|
from .exceptions import GraphQLClientError, GraphQLClientGraphQLError, GraphQLClientGraphQLMultiError, GraphQLClientHttpError, GraphQLClientInvalidResponseError
|
|
41
41
|
from .fragments import AbCampaignCreateData, AbCampaignDetailData, AbCampaignDetailDataMetric, AbCampaignDetailDataModels, AbCampaignDetailDataUseCase, AbCampaignReportData, AbCampaignReportDataVariants, AbCampaignReportDataVariantsComparisons, AbCampaignReportDataVariantsComparisonsVariant, AbCampaignReportDataVariantsInterval, AbCampaignReportDataVariantsVariant, CompletionComparisonFeedbackData, CompletionComparisonFeedbackDataModel, CompletionData, CompletionDataChatMessages, CompletionDataComparisonFeedbacks, CompletionDataComparisonFeedbacksMetric, CompletionDataComparisonFeedbacksOtherCompletion, CompletionDataComparisonFeedbacksPreferedCompletion, CompletionDataComparisonFeedbacksUsecase, CompletionDataDirectFeedbacks, CompletionDataDirectFeedbacksMetric, CompletionDataLabels, CompletionDataMetadata, CompletionDataMetadataUsage, CompletionDataModel, CustomRecipeData, CustomRecipeDataCreatedBy, CustomRecipeDataLabels, DatasetData, DatasetDataMetricsUsage, DatasetDataMetricsUsageMetric, GraderData, GraderDataGraderConfigCustomConfigOutput, GraderDataGraderConfigJudgeConfigOutput, GraderDataGraderConfigJudgeConfigOutputExamples, GraderDataGraderConfigJudgeConfigOutputExamplesInput, GraderDataGraderConfigJudgeConfigOutputModel, GraderDataGraderConfigPrebuiltConfigOutput, GraderDataGraderConfigPrebuiltConfigOutputModel, GraderDataGraderConfigPrebuiltConfigOutputPrebuiltCriteria, GraderDataGraderConfigRemoteConfigOutput, GraderDataMetric, GraderDataUseCase, HarmonyGroupData, HarmonyGroupDataComputePool, HarmonyGroupDataOnlineModels, JobData, JobDataCreatedBy, JobDataDetails, JobDataDetailsArtifacts, JobDataRecipe, JobDataStages, JobDataStagesInfoBatchInferenceJobStageOutput, JobDataStagesInfoEvalJobStageOutput, JobDataStagesInfoTrainingJobStageOutput, JobDataUseCase, JobStageOutputData, JobStageOutputDataInfoBatchInferenceJobStageOutput, JobStageOutputDataInfoEvalJobStageOutput, JobStageOutputDataInfoTrainingJobStageOutput, JudgeData, JudgeDataExamples, JudgeDataExamplesInput, JudgeDataMetric, JudgeDataModel, MetricData, MetricDataAdmin, MetricDataAdminUseCases, MetricWithContextData, ModelData, ModelDataAdmin, ModelDataAdminUseCases, ModelDataComputeConfig, ModelServiceData, ModelServiceDataModel, ModelServiceDataModelBackbone, RemoteEnvData, UseCaseData, UseCaseDataMetrics, UseCaseDataModelServices, UseCaseDataShares, UseCaseDataSharesRole, UseCaseDataSharesTeam, UserData, UserDataTeams, UserDataTeamsRole, UserDataTeamsTeam
|
|
42
42
|
from .get_custom_recipe import GetCustomRecipe, GetCustomRecipeCustomRecipe
|
|
43
43
|
from .get_grader import GetGrader, GetGraderGrader
|
|
44
44
|
from .get_judge import GetJudge, GetJudgeJudge
|
|
45
|
-
from .input_types import AbcampaignCreate, AbCampaignFilter, AddExternalModelInput, AddHFModelInput, AddModelInput, AnthropicProviderDataInput, ApiKeyCreate, ArtifactFilter, AttachModel, AzureProviderDataInput, CompletionComparisonFilterInput, CompletionFeedbackFilterInput, CompletionLabelValue, CompletionsByFilters, CompletionsById, CreateRecipeInput, CreateToolProviderInput, CursorPageInput, CustomConfigInput, CustomRecipeFilterInput, DatasetCompletionQuery, DatasetCreate, DatasetCreateFromFilters, EmojiInput, FeedbackAddInput, FeedbackFilterInput, FeedbackUpdateInput, FromGroupsQuery, GlobalUsageFilterInput, GoogleProviderDataInput, GraderConfigInput, GraderCreateInput, GraderUpdateInput, GroupSelection, GroupSelectionQuery, JobArtifactFilter, JobInput, JudgeConfigInput, JudgeCreate, JudgeExampleInput, JudgeExampleInputTurnEntry, JudgeUpdate, LabelFilter, LabelInput, ListCompletionsFilterInput, ListJobsFilterInput, MetricCreate, MetricGetOrCreate, MetricLink, MetricTrendInput, MetricUnlink, ModelComputeConfigInput, ModelFilter, ModelPlacementInput, ModelProviderDataInput, ModelServiceDisconnect, ModelServiceFilter, NvidiaProviderDataInput, OpenAIProviderDataInput, OrderPair, PrebuiltConfigInput, PrebuiltJudgeCreate, RemoteConfigInput, RemoteEnvCreate, ResizePartitionInput, RoleCreate, SampleConfig, SystemPromptTemplateCreate, SystemPromptTemplateUpdate, TeamCreate, TeamMemberRemove, TeamMemberSet, TimeRange, TimeseriesInput, UnitConfigInput, UpdateCompletion, UpdateModelService, UpdateRecipeInput, UpdateToolProviderInput, UsageFilterInput, UsagePerUseCaseFilterInput, UseCaseCreate, UseCaseFilter, UseCaseMetadataInput, UseCaseSettingsInput, UseCaseShareInput, UseCaseShares, UseCaseUpdate, UserCreate, UserCreateTeamWithRole, WidgetInput
|
|
45
|
+
from .input_types import AbcampaignCreate, AbCampaignFilter, AddExternalModelInput, AddHFModelInput, AddModelInput, AnthropicProviderDataInput, ApiKeyCreate, ArtifactFilter, AttachModel, AzureProviderDataInput, CancelAllocationInput, CapabilityFilter, CompletionComparisonFilterInput, CompletionFeedbackFilterInput, CompletionLabelValue, CompletionsByFilters, CompletionsById, CreateRecipeInput, CreateToolProviderInput, CursorPageInput, CustomConfigInput, CustomRecipeFilterInput, DatasetCompletionQuery, DatasetCreate, DatasetCreateFromFilters, DatasetCreateFromMultipartUpload, DatasetUploadProcessingStatusInput, EmojiInput, FeedbackAddInput, FeedbackFilterInput, FeedbackUpdateInput, FromGroupsQuery, GlobalUsageFilterInput, GoogleProviderDataInput, GraderConfigInput, GraderCreateInput, GraderUpdateInput, GroupSelection, GroupSelectionQuery, JobArtifactFilter, JobInput, JudgeConfigInput, JudgeCreate, JudgeExampleInput, JudgeExampleInputTurnEntry, JudgeUpdate, LabelFilter, LabelInput, ListCompletionsFilterInput, ListJobsFilterInput, MetricCreate, MetricGetOrCreate, MetricLink, MetricTrendInput, MetricUnlink, ModelComputeConfigInput, ModelFilter, ModelPlacementInput, ModelProviderDataInput, ModelServiceDisconnect, ModelServiceFilter, NvidiaProviderDataInput, OpenAIProviderDataInput, OrderPair, PrebuiltConfigInput, PrebuiltJudgeCreate, RemoteConfigInput, RemoteEnvCreate, ResizePartitionInput, RoleCreate, SampleConfig, SystemPromptTemplateCreate, SystemPromptTemplateUpdate, TeamCreate, TeamMemberRemove, TeamMemberSet, TimeRange, TimeseriesInput, UnitConfigInput, UpdateCompletion, UpdateModelService, UpdateRecipeInput, UpdateToolProviderInput, UsageFilterInput, UsagePerUseCaseFilterInput, UseCaseCreate, UseCaseFilter, UseCaseMetadataInput, UseCaseSettingsInput, UseCaseShareInput, UseCaseShares, UseCaseUpdate, UserCreate, UserCreateTeamWithRole, WidgetInput
|
|
46
46
|
from .link_metric import LinkMetric, LinkMetricLinkMetric
|
|
47
47
|
from .list_ab_campaigns import ListAbCampaigns, ListAbCampaignsAbCampaigns
|
|
48
48
|
from .list_compute_pools import ListComputePools, ListComputePoolsComputePools, ListComputePoolsComputePoolsHarmonyGroups
|
|
@@ -78,4 +78,4 @@ from .update_judge import UpdateJudge, UpdateJudgeUpdateJudge
|
|
|
78
78
|
from .update_model import UpdateModel, UpdateModelUpdateModelService
|
|
79
79
|
from .update_model_compute_config import UpdateModelComputeConfig, UpdateModelComputeConfigUpdateModelComputeConfig
|
|
80
80
|
from .update_user import UpdateUser, UpdateUserSetTeamMember, UpdateUserSetTeamMemberRole, UpdateUserSetTeamMemberTeam, UpdateUserSetTeamMemberUser
|
|
81
|
-
__all__ = ['AbCampaignCreateData', 'AbCampaignDetailData', 'AbCampaignDetailDataMetric', 'AbCampaignDetailDataModels', 'AbCampaignDetailDataUseCase', 'AbCampaignFilter', 'AbCampaignReportData', 'AbCampaignReportDataVariants', 'AbCampaignReportDataVariantsComparisons', 'AbCampaignReportDataVariantsComparisonsVariant', 'AbCampaignReportDataVariantsInterval', 'AbCampaignReportDataVariantsVariant', 'AbcampaignCreate', 'AbcampaignStatus', 'AddExternalModel', 'AddExternalModelAddExternalModel', 'AddExternalModelInput', 'AddHFModel', 'AddHFModelImportHfModel', 'AddHFModelInput', 'AddModel', 'AddModelAddModel', 'AddModelAddModelBackbone', 'AddModelInput', 'AddRemoteEnv', 'AddRemoteEnvAddRemoteEnv', 'AnthropicProviderDataInput', 'ApiKeyCreate', 'ArtifactFilter', 'AsyncBaseClientOpenTelemetry', 'AsyncGQLClient', 'AttachModel', 'AttachModelToUseCase', 'AttachModelToUseCaseAttachModel', 'AuthProviderKind', 'AzureProviderDataInput', 'BaseClientOpenTelemetry', 'BaseModel', 'BillingCycle', 'CancelABCampaign', 'CancelJob', 'CancelJobCancelJob', 'CompletionComparisonFeedbackData', 'CompletionComparisonFeedbackDataModel', 'CompletionComparisonFilterInput', 'CompletionData', 'CompletionDataChatMessages', 'CompletionDataComparisonFeedbacks', 'CompletionDataComparisonFeedbacksMetric', 'CompletionDataComparisonFeedbacksOtherCompletion', 'CompletionDataComparisonFeedbacksPreferedCompletion', 'CompletionDataComparisonFeedbacksUsecase', 'CompletionDataDirectFeedbacks', 'CompletionDataDirectFeedbacksMetric', 'CompletionDataLabels', 'CompletionDataMetadata', 'CompletionDataMetadataUsage', 'CompletionDataModel', 'CompletionFeedbackFilterInput', 'CompletionGroupBy', 'CompletionLabelValue', 'CompletionSource', 'CompletionsByFilters', 'CompletionsById', 'ComputePoolCapability', 'CreateAbCampaign', 'CreateAbCampaignCreateAbCampaign', 'CreateCustomRecipe', 'CreateCustomRecipeCreateCustomRecipe', 'CreateGrader', 'CreateGraderCreateGrader', 'CreateJob', 'CreateJobCreateJob', 'CreateJudge', 'CreateJudgeCreateJudge', 'CreateMetric', 'CreateMetricCreateMetric', 'CreatePrebuiltJudge', 'CreatePrebuiltJudgeCreatePrebuiltJudge', 'CreateRecipeInput', 'CreateRole', 'CreateRoleCreateRole', 'CreateTeam', 'CreateTeamCreateTeam', 'CreateToolProviderInput', 'CreateUseCase', 'CreateUseCaseCreateUseCase', 'CreateUser', 'CreateUserCreateUser', 'CursorPageInput', 'CustomConfigInput', 'CustomRecipeData', 'CustomRecipeDataCreatedBy', 'CustomRecipeDataLabels', 'CustomRecipeFilterInput', 'DatasetCompletionQuery', 'DatasetCreate', 'DatasetCreateFromFilters', 'DatasetData', 'DatasetDataMetricsUsage', 'DatasetDataMetricsUsageMetric', 'DatasetKind', 'DatasetSource', 'DateBucketUnit', 'DeleteCustomRecipe', 'DeleteDataset', 'DeleteGrader', 'DeleteGraderDeleteGrader', 'DeleteJudge', 'DeleteJudgeDeleteJudge', 'DeleteUser', 'DeleteUserDeleteUser', 'DeployModel', 'DescribeAbCampaign', 'DescribeAbCampaignAbCampaign', 'DescribeAbCampaignAbCampaignReport', 'DescribeDataset', 'DescribeDatasetDataset', 'DescribeInteraction', 'DescribeInteractionCompletion', 'DescribeJob', 'DescribeJobJob', 'DescribeMetric', 'DescribeMetricAdmin', 'DescribeMetricAdminMetric', 'DescribeMetricMetric', 'DescribeModel', 'DescribeModelAdmin', 'DescribeModelAdminModel', 'DescribeModelAdminModelBackbone', 'DescribeModelModel', 'DescribeModelModelBackbone', 'DescribeUseCase', 'DescribeUseCaseUseCase', 'EmojiInput', 'ExternalModelProviderName', 'FeedbackAddInput', 'FeedbackFilterInput', 'FeedbackType', 'FeedbackUpdateInput', 'FromGroupsQuery', 'GQLClient', 'GetCustomRecipe', 'GetCustomRecipeCustomRecipe', 'GetGrader', 'GetGraderGrader', 'GetJudge', 'GetJudgeJudge', 'GlobalUsageFilterInput', 'GoogleProviderDataInput', 'GraderConfigInput', 'GraderCreateInput', 'GraderData', 'GraderDataGraderConfigCustomConfigOutput', 'GraderDataGraderConfigJudgeConfigOutput', 'GraderDataGraderConfigJudgeConfigOutputExamples', 'GraderDataGraderConfigJudgeConfigOutputExamplesInput', 'GraderDataGraderConfigJudgeConfigOutputModel', 'GraderDataGraderConfigPrebuiltConfigOutput', 'GraderDataGraderConfigPrebuiltConfigOutputModel', 'GraderDataGraderConfigPrebuiltConfigOutputPrebuiltCriteria', 'GraderDataGraderConfigRemoteConfigOutput', 'GraderDataMetric', 'GraderDataUseCase', 'GraderTypeEnum', 'GraderUpdateInput', 'GraphQLClientError', 'GraphQLClientGraphQLError', 'GraphQLClientGraphQLMultiError', 'GraphQLClientHttpError', 'GraphQLClientInvalidResponseError', 'GroupSelection', 'GroupSelectionQuery', 'HarmonyGroupData', 'HarmonyGroupDataComputePool', 'HarmonyGroupDataOnlineModels', 'HarmonyStatus', 'JobArtifactFilter', 'JobArtifactKind', 'JobData', 'JobDataCreatedBy', 'JobDataDetails', 'JobDataDetailsArtifacts', 'JobDataRecipe', 'JobDataStages', 'JobDataStagesInfoBatchInferenceJobStageOutput', 'JobDataStagesInfoEvalJobStageOutput', 'JobDataStagesInfoTrainingJobStageOutput', 'JobDataUseCase', 'JobInput', 'JobKind', 'JobStageOutputData', 'JobStageOutputDataInfoBatchInferenceJobStageOutput', 'JobStageOutputDataInfoEvalJobStageOutput', 'JobStageOutputDataInfoTrainingJobStageOutput', 'JobStatus', 'JobStatusOutput', 'JudgeCapability', 'JudgeConfigInput', 'JudgeCreate', 'JudgeData', 'JudgeDataExamples', 'JudgeDataExamplesInput', 'JudgeDataMetric', 'JudgeDataModel', 'JudgeExampleInput', 'JudgeExampleInputTurnEntry', 'JudgeUpdate', 'LabelFilter', 'LabelInput', 'LinkMetric', 'LinkMetricLinkMetric', 'ListAbCampaigns', 'ListAbCampaignsAbCampaigns', 'ListCompletionsFilterInput', 'ListComputePools', 'ListComputePoolsComputePools', 'ListComputePoolsComputePoolsHarmonyGroups', 'ListCustomRecipes', 'ListCustomRecipesCustomRecipes', 'ListDatasets', 'ListDatasetsDatasets', 'ListGraders', 'ListGradersGraders', 'ListGroupedInteractions', 'ListGroupedInteractionsCompletionsGrouped', 'ListGroupedInteractionsCompletionsGroupedNodes', 'ListGroupedInteractionsCompletionsGroupedNodesCompletions', 'ListGroupedInteractionsCompletionsGroupedNodesCompletionsNodes', 'ListGroupedInteractionsCompletionsGroupedNodesDirectFeedbacksStats', 'ListGroupedInteractionsCompletionsGroupedNodesDirectFeedbacksStatsMetric', 'ListGroupedInteractionsCompletionsGroupedPageInfo', 'ListHarmonyGroups', 'ListHarmonyGroupsHarmonyGroups', 'ListInteractions', 'ListInteractionsCompletions', 'ListInteractionsCompletionsNodes', 'ListInteractionsCompletionsPageInfo', 'ListJobs', 'ListJobsFilterInput', 'ListJobsJobs', 'ListJobsJobsNodes', 'ListJobsJobsPageInfo', 'ListJudgeVersions', 'ListJudgeVersionsJudgeVersions', 'ListJudges', 'ListJudgesJudges', 'ListMetrics', 'ListMetricsMetrics', 'ListModels', 'ListModelsModels', 'ListModelsModelsBackbone', 'ListPermissions', 'ListRemoteEnvs', 'ListRemoteEnvsRemoteEnvs', 'ListRoles', 'ListRolesRoles', 'ListTeams', 'ListTeamsTeams', 'ListUseCases', 'ListUseCasesUseCases', 'ListUsers', 'ListUsersUsers', 'LoadDataset', 'LoadDatasetCreateDataset', 'LockGrader', 'LockGraderLockGrader', 'Me', 'MeMe', 'MeMeApiKeys', 'MetricAggregation', 'MetricCreate', 'MetricData', 'MetricDataAdmin', 'MetricDataAdminUseCases', 'MetricGetOrCreate', 'MetricKind', 'MetricLink', 'MetricScoringType', 'MetricTrendInput', 'MetricUnlink', 'MetricWithContextData', 'ModelComputeConfigInput', 'ModelData', 'ModelDataAdmin', 'ModelDataAdminUseCases', 'ModelDataComputeConfig', 'ModelFilter', '
|
|
81
|
+
__all__ = ['AbCampaignCreateData', 'AbCampaignDetailData', 'AbCampaignDetailDataMetric', 'AbCampaignDetailDataModels', 'AbCampaignDetailDataUseCase', 'AbCampaignFilter', 'AbCampaignReportData', 'AbCampaignReportDataVariants', 'AbCampaignReportDataVariantsComparisons', 'AbCampaignReportDataVariantsComparisonsVariant', 'AbCampaignReportDataVariantsInterval', 'AbCampaignReportDataVariantsVariant', 'AbcampaignCreate', 'AbcampaignStatus', 'AddExternalModel', 'AddExternalModelAddExternalModel', 'AddExternalModelInput', 'AddHFModel', 'AddHFModelImportHfModel', 'AddHFModelInput', 'AddModel', 'AddModelAddModel', 'AddModelAddModelBackbone', 'AddModelInput', 'AddRemoteEnv', 'AddRemoteEnvAddRemoteEnv', 'AnthropicProviderDataInput', 'ApiKeyCreate', 'ArtifactFilter', 'AsyncBaseClientOpenTelemetry', 'AsyncGQLClient', 'AttachModel', 'AttachModelToUseCase', 'AttachModelToUseCaseAttachModel', 'AuthProviderKind', 'AzureProviderDataInput', 'BaseClientOpenTelemetry', 'BaseModel', 'BillingCycle', 'CancelABCampaign', 'CancelAllocationInput', 'CancelJob', 'CancelJobCancelJob', 'CapabilityFilter', 'CompletionComparisonFeedbackData', 'CompletionComparisonFeedbackDataModel', 'CompletionComparisonFilterInput', 'CompletionData', 'CompletionDataChatMessages', 'CompletionDataComparisonFeedbacks', 'CompletionDataComparisonFeedbacksMetric', 'CompletionDataComparisonFeedbacksOtherCompletion', 'CompletionDataComparisonFeedbacksPreferedCompletion', 'CompletionDataComparisonFeedbacksUsecase', 'CompletionDataDirectFeedbacks', 'CompletionDataDirectFeedbacksMetric', 'CompletionDataLabels', 'CompletionDataMetadata', 'CompletionDataMetadataUsage', 'CompletionDataModel', 'CompletionFeedbackFilterInput', 'CompletionGroupBy', 'CompletionLabelValue', 'CompletionSource', 'CompletionsByFilters', 'CompletionsById', 'ComputePoolCapability', 'CreateAbCampaign', 'CreateAbCampaignCreateAbCampaign', 'CreateCustomRecipe', 'CreateCustomRecipeCreateCustomRecipe', 'CreateGrader', 'CreateGraderCreateGrader', 'CreateJob', 'CreateJobCreateJob', 'CreateJudge', 'CreateJudgeCreateJudge', 'CreateMetric', 'CreateMetricCreateMetric', 'CreatePrebuiltJudge', 'CreatePrebuiltJudgeCreatePrebuiltJudge', 'CreateRecipeInput', 'CreateRole', 'CreateRoleCreateRole', 'CreateTeam', 'CreateTeamCreateTeam', 'CreateToolProviderInput', 'CreateUseCase', 'CreateUseCaseCreateUseCase', 'CreateUser', 'CreateUserCreateUser', 'CursorPageInput', 'CustomConfigInput', 'CustomRecipeData', 'CustomRecipeDataCreatedBy', 'CustomRecipeDataLabels', 'CustomRecipeFilterInput', 'DatasetCompletionQuery', 'DatasetCreate', 'DatasetCreateFromFilters', 'DatasetCreateFromMultipartUpload', 'DatasetData', 'DatasetDataMetricsUsage', 'DatasetDataMetricsUsageMetric', 'DatasetKind', 'DatasetSource', 'DatasetStatus', 'DatasetUploadProcessingStatusInput', 'DateBucketUnit', 'DeleteCustomRecipe', 'DeleteDataset', 'DeleteGrader', 'DeleteGraderDeleteGrader', 'DeleteJudge', 'DeleteJudgeDeleteJudge', 'DeleteUser', 'DeleteUserDeleteUser', 'DeployModel', 'DescribeAbCampaign', 'DescribeAbCampaignAbCampaign', 'DescribeAbCampaignAbCampaignReport', 'DescribeDataset', 'DescribeDatasetDataset', 'DescribeInteraction', 'DescribeInteractionCompletion', 'DescribeJob', 'DescribeJobJob', 'DescribeMetric', 'DescribeMetricAdmin', 'DescribeMetricAdminMetric', 'DescribeMetricMetric', 'DescribeModel', 'DescribeModelAdmin', 'DescribeModelAdminModel', 'DescribeModelAdminModelBackbone', 'DescribeModelModel', 'DescribeModelModelBackbone', 'DescribeUseCase', 'DescribeUseCaseUseCase', 'EmojiInput', 'ExternalModelProviderName', 'FeedbackAddInput', 'FeedbackFilterInput', 'FeedbackType', 'FeedbackUpdateInput', 'FromGroupsQuery', 'GQLClient', 'GetCustomRecipe', 'GetCustomRecipeCustomRecipe', 'GetGrader', 'GetGraderGrader', 'GetJudge', 'GetJudgeJudge', 'GlobalUsageFilterInput', 'GoogleProviderDataInput', 'GraderConfigInput', 'GraderCreateInput', 'GraderData', 'GraderDataGraderConfigCustomConfigOutput', 'GraderDataGraderConfigJudgeConfigOutput', 'GraderDataGraderConfigJudgeConfigOutputExamples', 'GraderDataGraderConfigJudgeConfigOutputExamplesInput', 'GraderDataGraderConfigJudgeConfigOutputModel', 'GraderDataGraderConfigPrebuiltConfigOutput', 'GraderDataGraderConfigPrebuiltConfigOutputModel', 'GraderDataGraderConfigPrebuiltConfigOutputPrebuiltCriteria', 'GraderDataGraderConfigRemoteConfigOutput', 'GraderDataMetric', 'GraderDataUseCase', 'GraderTypeEnum', 'GraderUpdateInput', 'GraphQLClientError', 'GraphQLClientGraphQLError', 'GraphQLClientGraphQLMultiError', 'GraphQLClientHttpError', 'GraphQLClientInvalidResponseError', 'GroupSelection', 'GroupSelectionQuery', 'HarmonyGroupData', 'HarmonyGroupDataComputePool', 'HarmonyGroupDataOnlineModels', 'HarmonyStatus', 'JobArtifactFilter', 'JobArtifactKind', 'JobData', 'JobDataCreatedBy', 'JobDataDetails', 'JobDataDetailsArtifacts', 'JobDataRecipe', 'JobDataStages', 'JobDataStagesInfoBatchInferenceJobStageOutput', 'JobDataStagesInfoEvalJobStageOutput', 'JobDataStagesInfoTrainingJobStageOutput', 'JobDataUseCase', 'JobInput', 'JobKind', 'JobStageOutputData', 'JobStageOutputDataInfoBatchInferenceJobStageOutput', 'JobStageOutputDataInfoEvalJobStageOutput', 'JobStageOutputDataInfoTrainingJobStageOutput', 'JobStatus', 'JobStatusOutput', 'JudgeCapability', 'JudgeConfigInput', 'JudgeCreate', 'JudgeData', 'JudgeDataExamples', 'JudgeDataExamplesInput', 'JudgeDataMetric', 'JudgeDataModel', 'JudgeExampleInput', 'JudgeExampleInputTurnEntry', 'JudgeUpdate', 'LabelFilter', 'LabelInput', 'LinkMetric', 'LinkMetricLinkMetric', 'ListAbCampaigns', 'ListAbCampaignsAbCampaigns', 'ListCompletionsFilterInput', 'ListComputePools', 'ListComputePoolsComputePools', 'ListComputePoolsComputePoolsHarmonyGroups', 'ListCustomRecipes', 'ListCustomRecipesCustomRecipes', 'ListDatasets', 'ListDatasetsDatasets', 'ListGraders', 'ListGradersGraders', 'ListGroupedInteractions', 'ListGroupedInteractionsCompletionsGrouped', 'ListGroupedInteractionsCompletionsGroupedNodes', 'ListGroupedInteractionsCompletionsGroupedNodesCompletions', 'ListGroupedInteractionsCompletionsGroupedNodesCompletionsNodes', 'ListGroupedInteractionsCompletionsGroupedNodesDirectFeedbacksStats', 'ListGroupedInteractionsCompletionsGroupedNodesDirectFeedbacksStatsMetric', 'ListGroupedInteractionsCompletionsGroupedPageInfo', 'ListHarmonyGroups', 'ListHarmonyGroupsHarmonyGroups', 'ListInteractions', 'ListInteractionsCompletions', 'ListInteractionsCompletionsNodes', 'ListInteractionsCompletionsPageInfo', 'ListJobs', 'ListJobsFilterInput', 'ListJobsJobs', 'ListJobsJobsNodes', 'ListJobsJobsPageInfo', 'ListJudgeVersions', 'ListJudgeVersionsJudgeVersions', 'ListJudges', 'ListJudgesJudges', 'ListMetrics', 'ListMetricsMetrics', 'ListModels', 'ListModelsModels', 'ListModelsModelsBackbone', 'ListPermissions', 'ListRemoteEnvs', 'ListRemoteEnvsRemoteEnvs', 'ListRoles', 'ListRolesRoles', 'ListTeams', 'ListTeamsTeams', 'ListUseCases', 'ListUseCasesUseCases', 'ListUsers', 'ListUsersUsers', 'LoadDataset', 'LoadDatasetCreateDataset', 'LockGrader', 'LockGraderLockGrader', 'Me', 'MeMe', 'MeMeApiKeys', 'MetricAggregation', 'MetricCreate', 'MetricData', 'MetricDataAdmin', 'MetricDataAdminUseCases', 'MetricGetOrCreate', 'MetricKind', 'MetricLink', 'MetricScoringType', 'MetricTrendInput', 'MetricUnlink', 'MetricWithContextData', 'ModelCapabilityFilter', 'ModelComputeConfigInput', 'ModelData', 'ModelDataAdmin', 'ModelDataAdminUseCases', 'ModelDataComputeConfig', 'ModelFilter', 'ModelOnline', 'ModelPlacementInput', 'ModelProviderDataInput', 'ModelServiceData', 'ModelServiceDataModel', 'ModelServiceDataModelBackbone', 'ModelServiceDisconnect', 'ModelServiceFilter', 'ModelserviceStatus', 'NvidiaProviderDataInput', 'OpenAIModel', 'OpenAIProviderDataInput', 'OrderPair', 'PrebuiltConfigInput', 'PrebuiltCriteriaKey', 'PrebuiltJudgeCreate', 'Protocol', 'ProviderName', 'RemoteConfigInput', 'RemoteEnvCreate', 'RemoteEnvData', 'RemoteEnvStatus', 'RemoveRemoteEnv', 'RemoveTeamMember', 'RemoveTeamMemberRemoveTeamMember', 'ResizePartitionInput', 'RoleCreate', 'SampleConfig', 'SelectionTypeInput', 'SessionStatus', 'ShareUseCase', 'ShareUseCaseShareUseCase', 'SortDirection', 'SystemPromptTemplateCreate', 'SystemPromptTemplateUpdate', 'TeamCreate', 'TeamMemberRemove', 'TeamMemberSet', 'TerminateModel', 'TestRemoteEnv', 'TestRemoteEnvTestRemoteEnvRemoteEnvTestOffline', 'TestRemoteEnvTestRemoteEnvRemoteEnvTestOnline', 'TimeRange', 'TimeseriesInput', 'TimeseriesInterval', 'UnitConfigInput', 'UnitPosition', 'UnlinkMetric', 'UpdateCompletion', 'UpdateCustomRecipe', 'UpdateCustomRecipeUpdateCustomRecipe', 'UpdateGrader', 'UpdateGraderUpdateGrader', 'UpdateJudge', 'UpdateJudgeUpdateJudge', 'UpdateModel', 'UpdateModelComputeConfig', 'UpdateModelComputeConfigUpdateModelComputeConfig', 'UpdateModelService', 'UpdateModelUpdateModelService', 'UpdateRecipeInput', 'UpdateToolProviderInput', 'UpdateUser', 'UpdateUserSetTeamMember', 'UpdateUserSetTeamMemberRole', 'UpdateUserSetTeamMemberTeam', 'UpdateUserSetTeamMemberUser', 'Upload', 'UsageFilterInput', 'UsagePerUseCaseFilterInput', 'UseCaseCreate', 'UseCaseData', 'UseCaseDataMetrics', 'UseCaseDataModelServices', 'UseCaseDataShares', 'UseCaseDataSharesRole', 'UseCaseDataSharesTeam', 'UseCaseFilter', 'UseCaseMetadataInput', 'UseCaseSettingsInput', 'UseCaseShareInput', 'UseCaseShares', 'UseCaseUpdate', 'UserCreate', 'UserCreateTeamWithRole', 'UserData', 'UserDataTeams', 'UserDataTeamsRole', 'UserDataTeamsTeam', 'WidgetInput']
|
|
@@ -103,7 +103,7 @@ class AsyncBaseClientOpenTelemetry:
|
|
|
103
103
|
yield message
|
|
104
104
|
|
|
105
105
|
async def _execute(self, query: str, operation_name: Optional[str]=None, variables: Optional[Dict[str, Any]]=None, **kwargs: Any) -> httpx.Response:
|
|
106
|
-
|
|
106
|
+
processed_variables, files, files_map = self._process_variables(variables)
|
|
107
107
|
if files and files_map:
|
|
108
108
|
return await self._execute_multipart(query=query, operation_name=operation_name, variables=processed_variables, files=files, files_map=files_map, **kwargs)
|
|
109
109
|
return await self._execute_json(query=query, operation_name=operation_name, variables=processed_variables, **kwargs)
|
|
@@ -115,7 +115,7 @@ class AsyncBaseClientOpenTelemetry:
|
|
|
115
115
|
return self._get_files_from_variables(serializable_variables)
|
|
116
116
|
|
|
117
117
|
def _convert_dict_to_json_serializable(self, dict_: Dict[str, Any]) -> Dict[str, Any]:
|
|
118
|
-
return {key: self._convert_value(value) for
|
|
118
|
+
return {key: self._convert_value(value) for key, value in dict_.items() if value is not UNSET}
|
|
119
119
|
|
|
120
120
|
def _convert_value(self, value: Any) -> Any:
|
|
121
121
|
if isinstance(value, BaseModel):
|
|
@@ -131,13 +131,13 @@ class AsyncBaseClientOpenTelemetry:
|
|
|
131
131
|
def separate_files(path: str, obj: Any) -> Any:
|
|
132
132
|
if isinstance(obj, list):
|
|
133
133
|
nulled_list = []
|
|
134
|
-
for
|
|
134
|
+
for index, value in enumerate(obj):
|
|
135
135
|
value = separate_files(f'{path}.{index}', value)
|
|
136
136
|
nulled_list.append(value)
|
|
137
137
|
return nulled_list
|
|
138
138
|
if isinstance(obj, dict):
|
|
139
139
|
nulled_dict = {}
|
|
140
|
-
for
|
|
140
|
+
for key, value in obj.items():
|
|
141
141
|
value = separate_files(f'{path}.{key}', value)
|
|
142
142
|
nulled_dict[key] = value
|
|
143
143
|
return nulled_dict
|
|
@@ -152,7 +152,7 @@ class AsyncBaseClientOpenTelemetry:
|
|
|
152
152
|
return None
|
|
153
153
|
return obj
|
|
154
154
|
nulled_variables = separate_files('variables', variables)
|
|
155
|
-
files: Dict[str, Tuple[str, IO[bytes], str]] = {str(i): (file_.filename, cast(IO[bytes], file_.content), file_.content_type) for
|
|
155
|
+
files: Dict[str, Tuple[str, IO[bytes], str]] = {str(i): (file_.filename, cast(IO[bytes], file_.content), file_.content_type) for i, file_ in enumerate(files_list)}
|
|
156
156
|
return (nulled_variables, files, files_map)
|
|
157
157
|
|
|
158
158
|
async def _execute_multipart(self, query: str, operation_name: Optional[str], variables: Dict[str, Any], files: Dict[str, Tuple[str, IO[bytes], str]], files_map: Dict[str, List[str]], **kwargs: Any) -> httpx.Response:
|
|
@@ -220,7 +220,7 @@ class AsyncBaseClientOpenTelemetry:
|
|
|
220
220
|
async def _execute_with_telemetry(self, query: str, operation_name: Optional[str]=None, variables: Optional[Dict[str, Any]]=None, **kwargs: Any) -> httpx.Response:
|
|
221
221
|
with self.tracer.start_as_current_span(self.root_span_name, context=self.root_context) as root_span:
|
|
222
222
|
root_span.set_attribute('component', 'GraphQL Client')
|
|
223
|
-
|
|
223
|
+
processed_variables, files, files_map = self._process_variables(variables)
|
|
224
224
|
if files and files_map:
|
|
225
225
|
return await self._execute_multipart_with_telemetry(root_span=root_span, query=query, operation_name=operation_name, variables=processed_variables, files=files, files_map=files_map, **kwargs)
|
|
226
226
|
return await self._execute_json_with_telemetry(root_span=root_span, query=query, operation_name=operation_name, variables=processed_variables, **kwargs)
|