orca-sdk 0.1.0__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 (175) hide show
  1. orca_sdk/__init__.py +19 -0
  2. orca_sdk/_generated_api_client/__init__.py +3 -0
  3. orca_sdk/_generated_api_client/api/__init__.py +193 -0
  4. orca_sdk/_generated_api_client/api/auth/__init__.py +0 -0
  5. orca_sdk/_generated_api_client/api/auth/check_authentication_auth_get.py +128 -0
  6. orca_sdk/_generated_api_client/api/auth/create_api_key_auth_api_key_post.py +170 -0
  7. orca_sdk/_generated_api_client/api/auth/delete_api_key_auth_api_key_name_or_id_delete.py +156 -0
  8. orca_sdk/_generated_api_client/api/auth/delete_org_auth_org_delete.py +130 -0
  9. orca_sdk/_generated_api_client/api/auth/list_api_keys_auth_api_key_get.py +127 -0
  10. orca_sdk/_generated_api_client/api/classification_model/__init__.py +0 -0
  11. orca_sdk/_generated_api_client/api/classification_model/create_evaluation_classification_model_model_name_or_id_evaluation_post.py +183 -0
  12. orca_sdk/_generated_api_client/api/classification_model/create_model_classification_model_post.py +170 -0
  13. orca_sdk/_generated_api_client/api/classification_model/delete_evaluation_classification_model_model_name_or_id_evaluation_task_id_delete.py +168 -0
  14. orca_sdk/_generated_api_client/api/classification_model/delete_model_classification_model_name_or_id_delete.py +154 -0
  15. orca_sdk/_generated_api_client/api/classification_model/get_evaluation_classification_model_model_name_or_id_evaluation_task_id_get.py +170 -0
  16. orca_sdk/_generated_api_client/api/classification_model/get_model_classification_model_name_or_id_get.py +156 -0
  17. orca_sdk/_generated_api_client/api/classification_model/list_evaluations_classification_model_model_name_or_id_evaluation_get.py +161 -0
  18. orca_sdk/_generated_api_client/api/classification_model/list_models_classification_model_get.py +127 -0
  19. orca_sdk/_generated_api_client/api/classification_model/predict_gpu_classification_model_name_or_id_prediction_post.py +190 -0
  20. orca_sdk/_generated_api_client/api/datasource/__init__.py +0 -0
  21. orca_sdk/_generated_api_client/api/datasource/create_datasource_datasource_post.py +167 -0
  22. orca_sdk/_generated_api_client/api/datasource/delete_datasource_datasource_name_or_id_delete.py +156 -0
  23. orca_sdk/_generated_api_client/api/datasource/get_datasource_datasource_name_or_id_get.py +156 -0
  24. orca_sdk/_generated_api_client/api/datasource/list_datasources_datasource_get.py +127 -0
  25. orca_sdk/_generated_api_client/api/default/__init__.py +0 -0
  26. orca_sdk/_generated_api_client/api/default/healthcheck_get.py +118 -0
  27. orca_sdk/_generated_api_client/api/default/healthcheck_gpu_get.py +118 -0
  28. orca_sdk/_generated_api_client/api/finetuned_embedding_model/__init__.py +0 -0
  29. orca_sdk/_generated_api_client/api/finetuned_embedding_model/create_finetuned_embedding_model_finetuned_embedding_model_post.py +168 -0
  30. orca_sdk/_generated_api_client/api/finetuned_embedding_model/delete_finetuned_embedding_model_finetuned_embedding_model_name_or_id_delete.py +156 -0
  31. orca_sdk/_generated_api_client/api/finetuned_embedding_model/embed_with_finetuned_model_gpu_finetuned_embedding_model_name_or_id_embedding_post.py +189 -0
  32. orca_sdk/_generated_api_client/api/finetuned_embedding_model/get_finetuned_embedding_model_finetuned_embedding_model_name_or_id_get.py +156 -0
  33. orca_sdk/_generated_api_client/api/finetuned_embedding_model/list_finetuned_embedding_models_finetuned_embedding_model_get.py +127 -0
  34. orca_sdk/_generated_api_client/api/memoryset/__init__.py +0 -0
  35. orca_sdk/_generated_api_client/api/memoryset/clone_memoryset_memoryset_name_or_id_clone_post.py +181 -0
  36. orca_sdk/_generated_api_client/api/memoryset/create_analysis_memoryset_name_or_id_analysis_post.py +183 -0
  37. orca_sdk/_generated_api_client/api/memoryset/create_memoryset_memoryset_post.py +168 -0
  38. orca_sdk/_generated_api_client/api/memoryset/delete_memories_memoryset_name_or_id_memories_delete_post.py +181 -0
  39. orca_sdk/_generated_api_client/api/memoryset/delete_memory_memoryset_name_or_id_memory_memory_id_delete.py +167 -0
  40. orca_sdk/_generated_api_client/api/memoryset/delete_memoryset_memoryset_name_or_id_delete.py +156 -0
  41. orca_sdk/_generated_api_client/api/memoryset/get_analysis_memoryset_name_or_id_analysis_analysis_task_id_get.py +169 -0
  42. orca_sdk/_generated_api_client/api/memoryset/get_memories_memoryset_name_or_id_memories_get_post.py +188 -0
  43. orca_sdk/_generated_api_client/api/memoryset/get_memory_memoryset_name_or_id_memory_memory_id_get.py +169 -0
  44. orca_sdk/_generated_api_client/api/memoryset/get_memoryset_memoryset_name_or_id_get.py +156 -0
  45. orca_sdk/_generated_api_client/api/memoryset/insert_memories_gpu_memoryset_name_or_id_memory_post.py +184 -0
  46. orca_sdk/_generated_api_client/api/memoryset/list_analyses_memoryset_name_or_id_analysis_get.py +260 -0
  47. orca_sdk/_generated_api_client/api/memoryset/list_memorysets_memoryset_get.py +127 -0
  48. orca_sdk/_generated_api_client/api/memoryset/memoryset_lookup_gpu_memoryset_name_or_id_lookup_post.py +193 -0
  49. orca_sdk/_generated_api_client/api/memoryset/query_memoryset_memoryset_name_or_id_memories_post.py +188 -0
  50. orca_sdk/_generated_api_client/api/memoryset/update_memories_gpu_memoryset_name_or_id_memories_patch.py +191 -0
  51. orca_sdk/_generated_api_client/api/memoryset/update_memory_gpu_memoryset_name_or_id_memory_patch.py +187 -0
  52. orca_sdk/_generated_api_client/api/pretrained_embedding_model/__init__.py +0 -0
  53. orca_sdk/_generated_api_client/api/pretrained_embedding_model/embed_with_pretrained_model_gpu_pretrained_embedding_model_model_name_embedding_post.py +188 -0
  54. orca_sdk/_generated_api_client/api/pretrained_embedding_model/get_pretrained_embedding_model_pretrained_embedding_model_model_name_get.py +157 -0
  55. orca_sdk/_generated_api_client/api/pretrained_embedding_model/list_pretrained_embedding_models_pretrained_embedding_model_get.py +127 -0
  56. orca_sdk/_generated_api_client/api/task/__init__.py +0 -0
  57. orca_sdk/_generated_api_client/api/task/abort_task_task_task_id_abort_delete.py +154 -0
  58. orca_sdk/_generated_api_client/api/task/get_task_status_task_task_id_status_get.py +156 -0
  59. orca_sdk/_generated_api_client/api/task/list_tasks_task_get.py +243 -0
  60. orca_sdk/_generated_api_client/api/telemetry/__init__.py +0 -0
  61. orca_sdk/_generated_api_client/api/telemetry/drop_feedback_category_with_data_telemetry_feedback_category_name_or_id_delete.py +162 -0
  62. orca_sdk/_generated_api_client/api/telemetry/get_feedback_category_telemetry_feedback_category_name_or_id_get.py +156 -0
  63. orca_sdk/_generated_api_client/api/telemetry/get_prediction_telemetry_prediction_prediction_id_get.py +157 -0
  64. orca_sdk/_generated_api_client/api/telemetry/list_feedback_categories_telemetry_feedback_category_get.py +127 -0
  65. orca_sdk/_generated_api_client/api/telemetry/list_predictions_telemetry_prediction_post.py +175 -0
  66. orca_sdk/_generated_api_client/api/telemetry/record_prediction_feedback_telemetry_prediction_feedback_put.py +171 -0
  67. orca_sdk/_generated_api_client/api/telemetry/update_prediction_telemetry_prediction_prediction_id_patch.py +181 -0
  68. orca_sdk/_generated_api_client/client.py +216 -0
  69. orca_sdk/_generated_api_client/errors.py +38 -0
  70. orca_sdk/_generated_api_client/models/__init__.py +159 -0
  71. orca_sdk/_generated_api_client/models/analyze_neighbor_labels_result.py +84 -0
  72. orca_sdk/_generated_api_client/models/api_key_metadata.py +118 -0
  73. orca_sdk/_generated_api_client/models/base_model.py +55 -0
  74. orca_sdk/_generated_api_client/models/body_create_datasource_datasource_post.py +176 -0
  75. orca_sdk/_generated_api_client/models/classification_evaluation_result.py +114 -0
  76. orca_sdk/_generated_api_client/models/clone_labeled_memoryset_request.py +150 -0
  77. orca_sdk/_generated_api_client/models/column_info.py +114 -0
  78. orca_sdk/_generated_api_client/models/column_type.py +14 -0
  79. orca_sdk/_generated_api_client/models/conflict_error_response.py +80 -0
  80. orca_sdk/_generated_api_client/models/create_api_key_request.py +99 -0
  81. orca_sdk/_generated_api_client/models/create_api_key_response.py +126 -0
  82. orca_sdk/_generated_api_client/models/create_labeled_memoryset_request.py +259 -0
  83. orca_sdk/_generated_api_client/models/create_rac_model_request.py +209 -0
  84. orca_sdk/_generated_api_client/models/datasource_metadata.py +142 -0
  85. orca_sdk/_generated_api_client/models/delete_memories_request.py +70 -0
  86. orca_sdk/_generated_api_client/models/embed_request.py +127 -0
  87. orca_sdk/_generated_api_client/models/embedding_finetuning_method.py +9 -0
  88. orca_sdk/_generated_api_client/models/evaluation_request.py +180 -0
  89. orca_sdk/_generated_api_client/models/evaluation_response.py +140 -0
  90. orca_sdk/_generated_api_client/models/feedback_type.py +9 -0
  91. orca_sdk/_generated_api_client/models/field_validation_error.py +103 -0
  92. orca_sdk/_generated_api_client/models/filter_item.py +231 -0
  93. orca_sdk/_generated_api_client/models/filter_item_field_type_0_item.py +15 -0
  94. orca_sdk/_generated_api_client/models/filter_item_field_type_2_item_type_1.py +16 -0
  95. orca_sdk/_generated_api_client/models/filter_item_op.py +16 -0
  96. orca_sdk/_generated_api_client/models/find_duplicates_analysis_result.py +70 -0
  97. orca_sdk/_generated_api_client/models/finetune_embedding_model_request.py +259 -0
  98. orca_sdk/_generated_api_client/models/finetune_embedding_model_request_training_args.py +66 -0
  99. orca_sdk/_generated_api_client/models/finetuned_embedding_model_metadata.py +166 -0
  100. orca_sdk/_generated_api_client/models/get_memories_request.py +70 -0
  101. orca_sdk/_generated_api_client/models/internal_server_error_response.py +80 -0
  102. orca_sdk/_generated_api_client/models/label_class_metrics.py +108 -0
  103. orca_sdk/_generated_api_client/models/label_prediction_memory_lookup.py +274 -0
  104. orca_sdk/_generated_api_client/models/label_prediction_memory_lookup_metadata.py +68 -0
  105. orca_sdk/_generated_api_client/models/label_prediction_result.py +101 -0
  106. orca_sdk/_generated_api_client/models/label_prediction_with_memories_and_feedback.py +232 -0
  107. orca_sdk/_generated_api_client/models/labeled_memory.py +197 -0
  108. orca_sdk/_generated_api_client/models/labeled_memory_insert.py +108 -0
  109. orca_sdk/_generated_api_client/models/labeled_memory_insert_metadata.py +68 -0
  110. orca_sdk/_generated_api_client/models/labeled_memory_lookup.py +258 -0
  111. orca_sdk/_generated_api_client/models/labeled_memory_lookup_metadata.py +68 -0
  112. orca_sdk/_generated_api_client/models/labeled_memory_metadata.py +68 -0
  113. orca_sdk/_generated_api_client/models/labeled_memory_metrics.py +277 -0
  114. orca_sdk/_generated_api_client/models/labeled_memory_update.py +171 -0
  115. orca_sdk/_generated_api_client/models/labeled_memory_update_metadata_type_0.py +68 -0
  116. orca_sdk/_generated_api_client/models/labeled_memoryset_metadata.py +195 -0
  117. orca_sdk/_generated_api_client/models/list_analyses_memoryset_name_or_id_analysis_get_type_type_0.py +9 -0
  118. orca_sdk/_generated_api_client/models/list_memories_request.py +104 -0
  119. orca_sdk/_generated_api_client/models/list_predictions_request.py +234 -0
  120. orca_sdk/_generated_api_client/models/list_predictions_request_sort_item_item_type_0.py +9 -0
  121. orca_sdk/_generated_api_client/models/list_predictions_request_sort_item_item_type_1.py +9 -0
  122. orca_sdk/_generated_api_client/models/lookup_request.py +81 -0
  123. orca_sdk/_generated_api_client/models/memoryset_analysis_request.py +83 -0
  124. orca_sdk/_generated_api_client/models/memoryset_analysis_request_type.py +9 -0
  125. orca_sdk/_generated_api_client/models/memoryset_analysis_response.py +180 -0
  126. orca_sdk/_generated_api_client/models/memoryset_analysis_response_config.py +66 -0
  127. orca_sdk/_generated_api_client/models/memoryset_analysis_response_type.py +9 -0
  128. orca_sdk/_generated_api_client/models/not_found_error_response.py +100 -0
  129. orca_sdk/_generated_api_client/models/not_found_error_response_resource_type_0.py +20 -0
  130. orca_sdk/_generated_api_client/models/prediction_feedback.py +157 -0
  131. orca_sdk/_generated_api_client/models/prediction_feedback_category.py +115 -0
  132. orca_sdk/_generated_api_client/models/prediction_feedback_request.py +122 -0
  133. orca_sdk/_generated_api_client/models/prediction_feedback_result.py +102 -0
  134. orca_sdk/_generated_api_client/models/prediction_request.py +169 -0
  135. orca_sdk/_generated_api_client/models/pretrained_embedding_model_metadata.py +97 -0
  136. orca_sdk/_generated_api_client/models/pretrained_embedding_model_name.py +11 -0
  137. orca_sdk/_generated_api_client/models/rac_head_type.py +11 -0
  138. orca_sdk/_generated_api_client/models/rac_model_metadata.py +191 -0
  139. orca_sdk/_generated_api_client/models/service_unavailable_error_response.py +80 -0
  140. orca_sdk/_generated_api_client/models/task.py +198 -0
  141. orca_sdk/_generated_api_client/models/task_status.py +14 -0
  142. orca_sdk/_generated_api_client/models/task_status_info.py +133 -0
  143. orca_sdk/_generated_api_client/models/unauthenticated_error_response.py +72 -0
  144. orca_sdk/_generated_api_client/models/unauthorized_error_response.py +80 -0
  145. orca_sdk/_generated_api_client/models/unprocessable_input_error_response.py +94 -0
  146. orca_sdk/_generated_api_client/models/update_prediction_request.py +93 -0
  147. orca_sdk/_generated_api_client/py.typed +1 -0
  148. orca_sdk/_generated_api_client/types.py +56 -0
  149. orca_sdk/_utils/__init__.py +0 -0
  150. orca_sdk/_utils/analysis_ui.py +194 -0
  151. orca_sdk/_utils/analysis_ui_style.css +54 -0
  152. orca_sdk/_utils/auth.py +63 -0
  153. orca_sdk/_utils/auth_test.py +31 -0
  154. orca_sdk/_utils/common.py +37 -0
  155. orca_sdk/_utils/data_parsing.py +99 -0
  156. orca_sdk/_utils/data_parsing_test.py +244 -0
  157. orca_sdk/_utils/prediction_result_ui.css +18 -0
  158. orca_sdk/_utils/prediction_result_ui.py +64 -0
  159. orca_sdk/_utils/task.py +73 -0
  160. orca_sdk/classification_model.py +499 -0
  161. orca_sdk/classification_model_test.py +266 -0
  162. orca_sdk/conftest.py +117 -0
  163. orca_sdk/datasource.py +333 -0
  164. orca_sdk/datasource_test.py +95 -0
  165. orca_sdk/embedding_model.py +336 -0
  166. orca_sdk/embedding_model_test.py +173 -0
  167. orca_sdk/labeled_memoryset.py +1154 -0
  168. orca_sdk/labeled_memoryset_test.py +271 -0
  169. orca_sdk/orca_credentials.py +75 -0
  170. orca_sdk/orca_credentials_test.py +37 -0
  171. orca_sdk/telemetry.py +386 -0
  172. orca_sdk/telemetry_test.py +100 -0
  173. orca_sdk-0.1.0.dist-info/METADATA +39 -0
  174. orca_sdk-0.1.0.dist-info/RECORD +175 -0
  175. orca_sdk-0.1.0.dist-info/WHEEL +4 -0
@@ -0,0 +1,161 @@
1
+ """
2
+ This file is generated by the openapi-python-client tool via the generate_api_client.py script
3
+
4
+ It is a customized template from the openapi-python-client tool's default template:
5
+ https://github.com/openapi-generators/openapi-python-client/blob/861ef5622f10fc96d240dc9becb0edf94e61446c/openapi_python_client/templates/endpoint_module.py.jinja
6
+
7
+ The main changes are:
8
+ - Update the API call responses to either return the successful response type or raise an error by:
9
+ - Updating the _parse_response function to raise an error if the response status code is not in the 2xx range
10
+ - Inject a client into every method via a context manager
11
+ """
12
+
13
+ from http import HTTPStatus
14
+ from typing import Any, List
15
+
16
+ import httpx
17
+
18
+ from ...client import _client_context
19
+ from ...errors import get_error_for_response
20
+ from ...models.evaluation_response import EvaluationResponse
21
+ from ...types import Response
22
+
23
+
24
+ def _get_kwargs(
25
+ model_name_or_id: str,
26
+ ) -> dict[str, Any]:
27
+ _kwargs: dict[str, Any] = {
28
+ "method": "get",
29
+ "url": f"/classification_model/{model_name_or_id}/evaluation",
30
+ }
31
+
32
+ return _kwargs
33
+
34
+
35
+ def _parse_response(*, response: httpx.Response) -> List["EvaluationResponse"]:
36
+ if response.status_code == 200:
37
+ response_200 = []
38
+ _response_200 = response.json()
39
+ for response_200_item_data in _response_200:
40
+ response_200_item = EvaluationResponse.from_dict(response_200_item_data)
41
+
42
+ response_200.append(response_200_item)
43
+
44
+ return response_200
45
+ if response.status_code == 401:
46
+ raise get_error_for_response(response)
47
+ if response.status_code == 500:
48
+ raise get_error_for_response(response)
49
+ if response.status_code == 503:
50
+ raise get_error_for_response(response)
51
+ if response.status_code == 422:
52
+ raise get_error_for_response(response)
53
+ if response.status_code == 404:
54
+ raise get_error_for_response(response)
55
+
56
+
57
+ def _build_response(*, response: httpx.Response) -> Response[List["EvaluationResponse"]]:
58
+ return Response(
59
+ status_code=HTTPStatus(response.status_code),
60
+ content=response.content,
61
+ headers=response.headers,
62
+ parsed=_parse_response(response=response),
63
+ )
64
+
65
+
66
+ def sync_detailed(
67
+ model_name_or_id: str,
68
+ ) -> Response[List["EvaluationResponse"]]:
69
+ """List Evaluations
70
+
71
+ Args:
72
+ model_name_or_id (str):
73
+
74
+ Raises:
75
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
76
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
77
+
78
+ Returns:
79
+ Response[List['EvaluationResponse']]
80
+ """
81
+
82
+ kwargs = _get_kwargs(
83
+ model_name_or_id=model_name_or_id,
84
+ )
85
+
86
+ with _client_context() as client:
87
+ response = client.get_httpx_client().request(
88
+ **kwargs,
89
+ )
90
+
91
+ return _build_response(response=response)
92
+
93
+
94
+ def sync(
95
+ model_name_or_id: str,
96
+ ) -> List["EvaluationResponse"]:
97
+ """List Evaluations
98
+
99
+ Args:
100
+ model_name_or_id (str):
101
+
102
+ Raises:
103
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
104
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
105
+
106
+ Returns:
107
+ List['EvaluationResponse']
108
+ """
109
+
110
+ return sync_detailed(
111
+ model_name_or_id=model_name_or_id,
112
+ ).parsed
113
+
114
+
115
+ async def asyncio_detailed(
116
+ model_name_or_id: str,
117
+ ) -> Response[List["EvaluationResponse"]]:
118
+ """List Evaluations
119
+
120
+ Args:
121
+ model_name_or_id (str):
122
+
123
+ Raises:
124
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
125
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
126
+
127
+ Returns:
128
+ Response[List['EvaluationResponse']]
129
+ """
130
+
131
+ kwargs = _get_kwargs(
132
+ model_name_or_id=model_name_or_id,
133
+ )
134
+
135
+ with _client_context() as client:
136
+ response = await client.get_async_httpx_client().request(**kwargs)
137
+
138
+ return _build_response(response=response)
139
+
140
+
141
+ async def asyncio(
142
+ model_name_or_id: str,
143
+ ) -> List["EvaluationResponse"]:
144
+ """List Evaluations
145
+
146
+ Args:
147
+ model_name_or_id (str):
148
+
149
+ Raises:
150
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
151
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
152
+
153
+ Returns:
154
+ List['EvaluationResponse']
155
+ """
156
+
157
+ return (
158
+ await asyncio_detailed(
159
+ model_name_or_id=model_name_or_id,
160
+ )
161
+ ).parsed
@@ -0,0 +1,127 @@
1
+ """
2
+ This file is generated by the openapi-python-client tool via the generate_api_client.py script
3
+
4
+ It is a customized template from the openapi-python-client tool's default template:
5
+ https://github.com/openapi-generators/openapi-python-client/blob/861ef5622f10fc96d240dc9becb0edf94e61446c/openapi_python_client/templates/endpoint_module.py.jinja
6
+
7
+ The main changes are:
8
+ - Update the API call responses to either return the successful response type or raise an error by:
9
+ - Updating the _parse_response function to raise an error if the response status code is not in the 2xx range
10
+ - Inject a client into every method via a context manager
11
+ """
12
+
13
+ from http import HTTPStatus
14
+ from typing import Any, List
15
+
16
+ import httpx
17
+
18
+ from ...client import _client_context
19
+ from ...errors import get_error_for_response
20
+ from ...models.rac_model_metadata import RACModelMetadata
21
+ from ...types import Response
22
+
23
+
24
+ def _get_kwargs() -> dict[str, Any]:
25
+ _kwargs: dict[str, Any] = {
26
+ "method": "get",
27
+ "url": "/classification_model/",
28
+ }
29
+
30
+ return _kwargs
31
+
32
+
33
+ def _parse_response(*, response: httpx.Response) -> List["RACModelMetadata"]:
34
+ if response.status_code == 200:
35
+ response_200 = []
36
+ _response_200 = response.json()
37
+ for response_200_item_data in _response_200:
38
+ response_200_item = RACModelMetadata.from_dict(response_200_item_data)
39
+
40
+ response_200.append(response_200_item)
41
+
42
+ return response_200
43
+ if response.status_code == 401:
44
+ raise get_error_for_response(response)
45
+ if response.status_code == 500:
46
+ raise get_error_for_response(response)
47
+ if response.status_code == 503:
48
+ raise get_error_for_response(response)
49
+ if response.status_code == 422:
50
+ raise get_error_for_response(response)
51
+
52
+
53
+ def _build_response(*, response: httpx.Response) -> Response[List["RACModelMetadata"]]:
54
+ return Response(
55
+ status_code=HTTPStatus(response.status_code),
56
+ content=response.content,
57
+ headers=response.headers,
58
+ parsed=_parse_response(response=response),
59
+ )
60
+
61
+
62
+ def sync_detailed() -> Response[List["RACModelMetadata"]]:
63
+ """List Models
64
+
65
+ Raises:
66
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
67
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
68
+
69
+ Returns:
70
+ Response[List['RACModelMetadata']]
71
+ """
72
+
73
+ kwargs = _get_kwargs()
74
+
75
+ with _client_context() as client:
76
+ response = client.get_httpx_client().request(
77
+ **kwargs,
78
+ )
79
+
80
+ return _build_response(response=response)
81
+
82
+
83
+ def sync() -> List["RACModelMetadata"]:
84
+ """List Models
85
+
86
+ Raises:
87
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
88
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
89
+
90
+ Returns:
91
+ List['RACModelMetadata']
92
+ """
93
+
94
+ return sync_detailed().parsed
95
+
96
+
97
+ async def asyncio_detailed() -> Response[List["RACModelMetadata"]]:
98
+ """List Models
99
+
100
+ Raises:
101
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
102
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
103
+
104
+ Returns:
105
+ Response[List['RACModelMetadata']]
106
+ """
107
+
108
+ kwargs = _get_kwargs()
109
+
110
+ with _client_context() as client:
111
+ response = await client.get_async_httpx_client().request(**kwargs)
112
+
113
+ return _build_response(response=response)
114
+
115
+
116
+ async def asyncio() -> List["RACModelMetadata"]:
117
+ """List Models
118
+
119
+ Raises:
120
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
121
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
122
+
123
+ Returns:
124
+ List['RACModelMetadata']
125
+ """
126
+
127
+ return (await asyncio_detailed()).parsed
@@ -0,0 +1,190 @@
1
+ """
2
+ This file is generated by the openapi-python-client tool via the generate_api_client.py script
3
+
4
+ It is a customized template from the openapi-python-client tool's default template:
5
+ https://github.com/openapi-generators/openapi-python-client/blob/861ef5622f10fc96d240dc9becb0edf94e61446c/openapi_python_client/templates/endpoint_module.py.jinja
6
+
7
+ The main changes are:
8
+ - Update the API call responses to either return the successful response type or raise an error by:
9
+ - Updating the _parse_response function to raise an error if the response status code is not in the 2xx range
10
+ - Inject a client into every method via a context manager
11
+ """
12
+
13
+ from http import HTTPStatus
14
+ from typing import Any, Dict, List
15
+
16
+ import httpx
17
+
18
+ from ...client import _client_context
19
+ from ...errors import get_error_for_response
20
+ from ...models.label_prediction_result import LabelPredictionResult
21
+ from ...models.prediction_request import PredictionRequest
22
+ from ...types import Response
23
+
24
+
25
+ def _get_kwargs(
26
+ name_or_id: str,
27
+ *,
28
+ body: PredictionRequest,
29
+ ) -> dict[str, Any]:
30
+ headers: Dict[str, Any] = {}
31
+
32
+ _kwargs: dict[str, Any] = {
33
+ "method": "post",
34
+ "url": f"/gpu/classification_model/{name_or_id}/prediction",
35
+ }
36
+
37
+ _body = body.to_dict()
38
+
39
+ _kwargs["json"] = _body
40
+ headers["Content-Type"] = "application/json"
41
+
42
+ _kwargs["headers"] = headers
43
+ return _kwargs
44
+
45
+
46
+ def _parse_response(*, response: httpx.Response) -> List["LabelPredictionResult"]:
47
+ if response.status_code == 200:
48
+ response_200 = []
49
+ _response_200 = response.json()
50
+ for response_200_item_data in _response_200:
51
+ response_200_item = LabelPredictionResult.from_dict(response_200_item_data)
52
+
53
+ response_200.append(response_200_item)
54
+
55
+ return response_200
56
+ if response.status_code == 401:
57
+ raise get_error_for_response(response)
58
+ if response.status_code == 500:
59
+ raise get_error_for_response(response)
60
+ if response.status_code == 503:
61
+ raise get_error_for_response(response)
62
+ if response.status_code == 422:
63
+ raise get_error_for_response(response)
64
+ if response.status_code == 404:
65
+ raise get_error_for_response(response)
66
+ if response.status_code == 409:
67
+ raise get_error_for_response(response)
68
+
69
+
70
+ def _build_response(*, response: httpx.Response) -> Response[List["LabelPredictionResult"]]:
71
+ return Response(
72
+ status_code=HTTPStatus(response.status_code),
73
+ content=response.content,
74
+ headers=response.headers,
75
+ parsed=_parse_response(response=response),
76
+ )
77
+
78
+
79
+ def sync_detailed(
80
+ name_or_id: str,
81
+ *,
82
+ body: PredictionRequest,
83
+ ) -> Response[List["LabelPredictionResult"]]:
84
+ """Predict
85
+
86
+ Args:
87
+ name_or_id (str):
88
+ body (PredictionRequest):
89
+
90
+ Raises:
91
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
92
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
93
+
94
+ Returns:
95
+ Response[List['LabelPredictionResult']]
96
+ """
97
+
98
+ kwargs = _get_kwargs(
99
+ name_or_id=name_or_id,
100
+ body=body,
101
+ )
102
+
103
+ with _client_context() as client:
104
+ response = client.get_httpx_client().request(
105
+ **kwargs,
106
+ )
107
+
108
+ return _build_response(response=response)
109
+
110
+
111
+ def sync(
112
+ name_or_id: str,
113
+ *,
114
+ body: PredictionRequest,
115
+ ) -> List["LabelPredictionResult"]:
116
+ """Predict
117
+
118
+ Args:
119
+ name_or_id (str):
120
+ body (PredictionRequest):
121
+
122
+ Raises:
123
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
124
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
125
+
126
+ Returns:
127
+ List['LabelPredictionResult']
128
+ """
129
+
130
+ return sync_detailed(
131
+ name_or_id=name_or_id,
132
+ body=body,
133
+ ).parsed
134
+
135
+
136
+ async def asyncio_detailed(
137
+ name_or_id: str,
138
+ *,
139
+ body: PredictionRequest,
140
+ ) -> Response[List["LabelPredictionResult"]]:
141
+ """Predict
142
+
143
+ Args:
144
+ name_or_id (str):
145
+ body (PredictionRequest):
146
+
147
+ Raises:
148
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
149
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
150
+
151
+ Returns:
152
+ Response[List['LabelPredictionResult']]
153
+ """
154
+
155
+ kwargs = _get_kwargs(
156
+ name_or_id=name_or_id,
157
+ body=body,
158
+ )
159
+
160
+ with _client_context() as client:
161
+ response = await client.get_async_httpx_client().request(**kwargs)
162
+
163
+ return _build_response(response=response)
164
+
165
+
166
+ async def asyncio(
167
+ name_or_id: str,
168
+ *,
169
+ body: PredictionRequest,
170
+ ) -> List["LabelPredictionResult"]:
171
+ """Predict
172
+
173
+ Args:
174
+ name_or_id (str):
175
+ body (PredictionRequest):
176
+
177
+ Raises:
178
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
179
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
180
+
181
+ Returns:
182
+ List['LabelPredictionResult']
183
+ """
184
+
185
+ return (
186
+ await asyncio_detailed(
187
+ name_or_id=name_or_id,
188
+ body=body,
189
+ )
190
+ ).parsed
@@ -0,0 +1,167 @@
1
+ """
2
+ This file is generated by the openapi-python-client tool via the generate_api_client.py script
3
+
4
+ It is a customized template from the openapi-python-client tool's default template:
5
+ https://github.com/openapi-generators/openapi-python-client/blob/861ef5622f10fc96d240dc9becb0edf94e61446c/openapi_python_client/templates/endpoint_module.py.jinja
6
+
7
+ The main changes are:
8
+ - Update the API call responses to either return the successful response type or raise an error by:
9
+ - Updating the _parse_response function to raise an error if the response status code is not in the 2xx range
10
+ - Inject a client into every method via a context manager
11
+ """
12
+
13
+ from http import HTTPStatus
14
+ from typing import Any, Dict
15
+
16
+ import httpx
17
+
18
+ from ...client import _client_context
19
+ from ...errors import get_error_for_response
20
+ from ...models.body_create_datasource_datasource_post import BodyCreateDatasourceDatasourcePost
21
+ from ...models.datasource_metadata import DatasourceMetadata
22
+ from ...types import Response
23
+
24
+
25
+ def _get_kwargs(
26
+ *,
27
+ body: BodyCreateDatasourceDatasourcePost,
28
+ ) -> dict[str, Any]:
29
+ headers: Dict[str, Any] = {}
30
+
31
+ _kwargs: dict[str, Any] = {
32
+ "method": "post",
33
+ "url": "/datasource/",
34
+ }
35
+
36
+ _body = body.to_multipart()
37
+
38
+ _kwargs["files"] = _body
39
+
40
+ _kwargs["headers"] = headers
41
+ return _kwargs
42
+
43
+
44
+ def _parse_response(*, response: httpx.Response) -> DatasourceMetadata:
45
+ if response.status_code == 201:
46
+ response_201 = DatasourceMetadata.from_dict(response.json())
47
+
48
+ return response_201
49
+ if response.status_code == 401:
50
+ raise get_error_for_response(response)
51
+ if response.status_code == 500:
52
+ raise get_error_for_response(response)
53
+ if response.status_code == 503:
54
+ raise get_error_for_response(response)
55
+ if response.status_code == 422:
56
+ raise get_error_for_response(response)
57
+
58
+
59
+ def _build_response(*, response: httpx.Response) -> Response[DatasourceMetadata]:
60
+ return Response(
61
+ status_code=HTTPStatus(response.status_code),
62
+ content=response.content,
63
+ headers=response.headers,
64
+ parsed=_parse_response(response=response),
65
+ )
66
+
67
+
68
+ def sync_detailed(
69
+ *,
70
+ body: BodyCreateDatasourceDatasourcePost,
71
+ ) -> Response[DatasourceMetadata]:
72
+ """Create Datasource
73
+
74
+ Args:
75
+ body (BodyCreateDatasourceDatasourcePost):
76
+
77
+ Raises:
78
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
79
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
80
+
81
+ Returns:
82
+ Response[DatasourceMetadata]
83
+ """
84
+
85
+ kwargs = _get_kwargs(
86
+ body=body,
87
+ )
88
+
89
+ with _client_context() as client:
90
+ response = client.get_httpx_client().request(
91
+ **kwargs,
92
+ )
93
+
94
+ return _build_response(response=response)
95
+
96
+
97
+ def sync(
98
+ *,
99
+ body: BodyCreateDatasourceDatasourcePost,
100
+ ) -> DatasourceMetadata:
101
+ """Create Datasource
102
+
103
+ Args:
104
+ body (BodyCreateDatasourceDatasourcePost):
105
+
106
+ Raises:
107
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
108
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
109
+
110
+ Returns:
111
+ DatasourceMetadata
112
+ """
113
+
114
+ return sync_detailed(
115
+ body=body,
116
+ ).parsed
117
+
118
+
119
+ async def asyncio_detailed(
120
+ *,
121
+ body: BodyCreateDatasourceDatasourcePost,
122
+ ) -> Response[DatasourceMetadata]:
123
+ """Create Datasource
124
+
125
+ Args:
126
+ body (BodyCreateDatasourceDatasourcePost):
127
+
128
+ Raises:
129
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
130
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
131
+
132
+ Returns:
133
+ Response[DatasourceMetadata]
134
+ """
135
+
136
+ kwargs = _get_kwargs(
137
+ body=body,
138
+ )
139
+
140
+ with _client_context() as client:
141
+ response = await client.get_async_httpx_client().request(**kwargs)
142
+
143
+ return _build_response(response=response)
144
+
145
+
146
+ async def asyncio(
147
+ *,
148
+ body: BodyCreateDatasourceDatasourcePost,
149
+ ) -> DatasourceMetadata:
150
+ """Create Datasource
151
+
152
+ Args:
153
+ body (BodyCreateDatasourceDatasourcePost):
154
+
155
+ Raises:
156
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
157
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
158
+
159
+ Returns:
160
+ DatasourceMetadata
161
+ """
162
+
163
+ return (
164
+ await asyncio_detailed(
165
+ body=body,
166
+ )
167
+ ).parsed