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,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/model.py.jinja
6
+
7
+ The main change is:
8
+ - Fix typing issues
9
+ """
10
+
11
+ # flake8: noqa: C901
12
+
13
+ from typing import Any, List, Type, TypeVar, Union, cast
14
+
15
+ from attrs import define as _attrs_define
16
+ from attrs import field as _attrs_field
17
+
18
+ from ..types import UNSET, Unset
19
+
20
+ T = TypeVar("T", bound="EmbedRequest")
21
+
22
+
23
+ @_attrs_define
24
+ class EmbedRequest:
25
+ """
26
+ Attributes:
27
+ values (List[str]):
28
+ max_seq_length (Union[None, Unset, int]):
29
+ """
30
+
31
+ values: List[str]
32
+ max_seq_length: Union[None, Unset, int] = UNSET
33
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
34
+
35
+ def to_dict(self) -> dict[str, Any]:
36
+ values: List[str]
37
+ if isinstance(self.values, list):
38
+ values = self.values
39
+
40
+ max_seq_length: Union[None, Unset, int]
41
+ if isinstance(self.max_seq_length, Unset):
42
+ max_seq_length = UNSET
43
+ else:
44
+ max_seq_length = self.max_seq_length
45
+
46
+ field_dict: dict[str, Any] = {}
47
+ field_dict.update(self.additional_properties)
48
+ field_dict.update(
49
+ {
50
+ "values": values,
51
+ }
52
+ )
53
+ if max_seq_length is not UNSET:
54
+ field_dict["max_seq_length"] = max_seq_length
55
+
56
+ return field_dict
57
+
58
+ @classmethod
59
+ def from_dict(cls: Type[T], src_dict: dict[str, Any]) -> T:
60
+ d = src_dict.copy()
61
+
62
+ def _parse_values(data: object) -> List[str]:
63
+ try:
64
+ if not isinstance(data, list):
65
+ raise TypeError()
66
+ values_type_0 = cast(List[str], data)
67
+
68
+ return values_type_0
69
+ except: # noqa: E722
70
+ pass
71
+ try:
72
+ if not isinstance(data, list):
73
+ raise TypeError()
74
+ values_type_1 = cast(List[str], data)
75
+
76
+ return values_type_1
77
+ except: # noqa: E722
78
+ pass
79
+ if not isinstance(data, list):
80
+ raise TypeError()
81
+ values_type_2 = []
82
+ _values_type_2 = data
83
+ for values_type_2_item_data in _values_type_2:
84
+
85
+ def _parse_values_type_2_item(data: object) -> str:
86
+ return cast(str, data)
87
+
88
+ values_type_2_item = _parse_values_type_2_item(values_type_2_item_data)
89
+
90
+ values_type_2.append(values_type_2_item)
91
+
92
+ return values_type_2
93
+
94
+ values = _parse_values(d.pop("values"))
95
+
96
+ def _parse_max_seq_length(data: object) -> Union[None, Unset, int]:
97
+ if data is None:
98
+ return data
99
+ if isinstance(data, Unset):
100
+ return data
101
+ return cast(Union[None, Unset, int], data)
102
+
103
+ max_seq_length = _parse_max_seq_length(d.pop("max_seq_length", UNSET))
104
+
105
+ embed_request = cls(
106
+ values=values,
107
+ max_seq_length=max_seq_length,
108
+ )
109
+
110
+ embed_request.additional_properties = d
111
+ return embed_request
112
+
113
+ @property
114
+ def additional_keys(self) -> list[str]:
115
+ return list(self.additional_properties.keys())
116
+
117
+ def __getitem__(self, key: str) -> Any:
118
+ return self.additional_properties[key]
119
+
120
+ def __setitem__(self, key: str, value: Any) -> None:
121
+ self.additional_properties[key] = value
122
+
123
+ def __delitem__(self, key: str) -> None:
124
+ del self.additional_properties[key]
125
+
126
+ def __contains__(self, key: str) -> bool:
127
+ return key in self.additional_properties
@@ -0,0 +1,9 @@
1
+ from enum import Enum
2
+
3
+
4
+ class EmbeddingFinetuningMethod(str, Enum):
5
+ BATCH_TRIPLET_LOSS = "batch_triplet_loss"
6
+ CLASSIFICATION = "classification"
7
+
8
+ def __str__(self) -> str:
9
+ return str(self.value)
@@ -0,0 +1,180 @@
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/model.py.jinja
6
+
7
+ The main change is:
8
+ - Fix typing issues
9
+ """
10
+
11
+ # flake8: noqa: C901
12
+
13
+ from typing import Any, List, Type, TypeVar, Union, cast
14
+
15
+ from attrs import define as _attrs_define
16
+ from attrs import field as _attrs_field
17
+
18
+ from ..types import UNSET, Unset
19
+
20
+ T = TypeVar("T", bound="EvaluationRequest")
21
+
22
+
23
+ @_attrs_define
24
+ class EvaluationRequest:
25
+ """
26
+ Attributes:
27
+ datasource_label_column (str):
28
+ datasource_value_column (str):
29
+ datasource_id (Union[None, Unset, str]):
30
+ datasource_name (Union[None, Unset, str]):
31
+ memoryset_override_id (Union[None, Unset, str]):
32
+ record_telemetry (Union[Unset, bool]): Default: False.
33
+ telemetry_tags (Union[List[str], None, Unset]):
34
+ """
35
+
36
+ datasource_label_column: str
37
+ datasource_value_column: str
38
+ datasource_id: Union[None, Unset, str] = UNSET
39
+ datasource_name: Union[None, Unset, str] = UNSET
40
+ memoryset_override_id: Union[None, Unset, str] = UNSET
41
+ record_telemetry: Union[Unset, bool] = False
42
+ telemetry_tags: Union[List[str], None, Unset] = UNSET
43
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
44
+
45
+ def to_dict(self) -> dict[str, Any]:
46
+ datasource_label_column = self.datasource_label_column
47
+
48
+ datasource_value_column = self.datasource_value_column
49
+
50
+ datasource_id: Union[None, Unset, str]
51
+ if isinstance(self.datasource_id, Unset):
52
+ datasource_id = UNSET
53
+ else:
54
+ datasource_id = self.datasource_id
55
+
56
+ datasource_name: Union[None, Unset, str]
57
+ if isinstance(self.datasource_name, Unset):
58
+ datasource_name = UNSET
59
+ else:
60
+ datasource_name = self.datasource_name
61
+
62
+ memoryset_override_id: Union[None, Unset, str]
63
+ if isinstance(self.memoryset_override_id, Unset):
64
+ memoryset_override_id = UNSET
65
+ else:
66
+ memoryset_override_id = self.memoryset_override_id
67
+
68
+ record_telemetry = self.record_telemetry
69
+
70
+ telemetry_tags: Union[List[str], None, Unset]
71
+ if isinstance(self.telemetry_tags, Unset):
72
+ telemetry_tags = UNSET
73
+ elif isinstance(self.telemetry_tags, list):
74
+ telemetry_tags = self.telemetry_tags
75
+
76
+ else:
77
+ telemetry_tags = self.telemetry_tags
78
+
79
+ field_dict: dict[str, Any] = {}
80
+ field_dict.update(self.additional_properties)
81
+ field_dict.update(
82
+ {
83
+ "datasource_label_column": datasource_label_column,
84
+ "datasource_value_column": datasource_value_column,
85
+ }
86
+ )
87
+ if datasource_id is not UNSET:
88
+ field_dict["datasource_id"] = datasource_id
89
+ if datasource_name is not UNSET:
90
+ field_dict["datasource_name"] = datasource_name
91
+ if memoryset_override_id is not UNSET:
92
+ field_dict["memoryset_override_id"] = memoryset_override_id
93
+ if record_telemetry is not UNSET:
94
+ field_dict["record_telemetry"] = record_telemetry
95
+ if telemetry_tags is not UNSET:
96
+ field_dict["telemetry_tags"] = telemetry_tags
97
+
98
+ return field_dict
99
+
100
+ @classmethod
101
+ def from_dict(cls: Type[T], src_dict: dict[str, Any]) -> T:
102
+ d = src_dict.copy()
103
+ datasource_label_column = d.pop("datasource_label_column")
104
+
105
+ datasource_value_column = d.pop("datasource_value_column")
106
+
107
+ def _parse_datasource_id(data: object) -> Union[None, Unset, str]:
108
+ if data is None:
109
+ return data
110
+ if isinstance(data, Unset):
111
+ return data
112
+ return cast(Union[None, Unset, str], data)
113
+
114
+ datasource_id = _parse_datasource_id(d.pop("datasource_id", UNSET))
115
+
116
+ def _parse_datasource_name(data: object) -> Union[None, Unset, str]:
117
+ if data is None:
118
+ return data
119
+ if isinstance(data, Unset):
120
+ return data
121
+ return cast(Union[None, Unset, str], data)
122
+
123
+ datasource_name = _parse_datasource_name(d.pop("datasource_name", UNSET))
124
+
125
+ def _parse_memoryset_override_id(data: object) -> Union[None, Unset, str]:
126
+ if data is None:
127
+ return data
128
+ if isinstance(data, Unset):
129
+ return data
130
+ return cast(Union[None, Unset, str], data)
131
+
132
+ memoryset_override_id = _parse_memoryset_override_id(d.pop("memoryset_override_id", UNSET))
133
+
134
+ record_telemetry = d.pop("record_telemetry", UNSET)
135
+
136
+ def _parse_telemetry_tags(data: object) -> Union[List[str], None, Unset]:
137
+ if data is None:
138
+ return data
139
+ if isinstance(data, Unset):
140
+ return data
141
+ try:
142
+ if not isinstance(data, list):
143
+ raise TypeError()
144
+ telemetry_tags_type_0 = cast(List[str], data)
145
+
146
+ return telemetry_tags_type_0
147
+ except: # noqa: E722
148
+ pass
149
+ return cast(Union[List[str], None, Unset], data)
150
+
151
+ telemetry_tags = _parse_telemetry_tags(d.pop("telemetry_tags", UNSET))
152
+
153
+ evaluation_request = cls(
154
+ datasource_label_column=datasource_label_column,
155
+ datasource_value_column=datasource_value_column,
156
+ datasource_id=datasource_id,
157
+ datasource_name=datasource_name,
158
+ memoryset_override_id=memoryset_override_id,
159
+ record_telemetry=record_telemetry,
160
+ telemetry_tags=telemetry_tags,
161
+ )
162
+
163
+ evaluation_request.additional_properties = d
164
+ return evaluation_request
165
+
166
+ @property
167
+ def additional_keys(self) -> list[str]:
168
+ return list(self.additional_properties.keys())
169
+
170
+ def __getitem__(self, key: str) -> Any:
171
+ return self.additional_properties[key]
172
+
173
+ def __setitem__(self, key: str, value: Any) -> None:
174
+ self.additional_properties[key] = value
175
+
176
+ def __delitem__(self, key: str) -> None:
177
+ del self.additional_properties[key]
178
+
179
+ def __contains__(self, key: str) -> bool:
180
+ return key in self.additional_properties
@@ -0,0 +1,140 @@
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/model.py.jinja
6
+
7
+ The main change is:
8
+ - Fix typing issues
9
+ """
10
+
11
+ # flake8: noqa: C901
12
+
13
+ import datetime
14
+ from enum import Enum
15
+ from typing import TYPE_CHECKING, Any, Dict, Type, TypeVar, Union, cast
16
+
17
+ from attrs import define as _attrs_define
18
+ from attrs import field as _attrs_field
19
+ from dateutil.parser import isoparse
20
+
21
+ from ..models.task_status import TaskStatus
22
+
23
+ if TYPE_CHECKING:
24
+ from ..models.classification_evaluation_result import ClassificationEvaluationResult
25
+
26
+
27
+ T = TypeVar("T", bound="EvaluationResponse")
28
+
29
+
30
+ @_attrs_define
31
+ class EvaluationResponse:
32
+ """
33
+ Attributes:
34
+ task_id (str):
35
+ org_id (str):
36
+ status (TaskStatus): Status of task in the task queue
37
+ result (Union['ClassificationEvaluationResult', None]):
38
+ created_at (datetime.datetime):
39
+ updated_at (datetime.datetime):
40
+ """
41
+
42
+ task_id: str
43
+ org_id: str
44
+ status: TaskStatus
45
+ result: Union["ClassificationEvaluationResult", None]
46
+ created_at: datetime.datetime
47
+ updated_at: datetime.datetime
48
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
49
+
50
+ def to_dict(self) -> dict[str, Any]:
51
+ from ..models.classification_evaluation_result import ClassificationEvaluationResult
52
+
53
+ task_id = self.task_id
54
+
55
+ org_id = self.org_id
56
+
57
+ status = self.status.value if isinstance(self.status, Enum) else self.status
58
+
59
+ result: Union[Dict[str, Any], None]
60
+ if isinstance(self.result, ClassificationEvaluationResult):
61
+ result = self.result.to_dict()
62
+ else:
63
+ result = self.result
64
+
65
+ created_at = self.created_at.isoformat()
66
+
67
+ updated_at = self.updated_at.isoformat()
68
+
69
+ field_dict: dict[str, Any] = {}
70
+ field_dict.update(self.additional_properties)
71
+ field_dict.update(
72
+ {
73
+ "task_id": task_id,
74
+ "org_id": org_id,
75
+ "status": status,
76
+ "result": result,
77
+ "created_at": created_at,
78
+ "updated_at": updated_at,
79
+ }
80
+ )
81
+
82
+ return field_dict
83
+
84
+ @classmethod
85
+ def from_dict(cls: Type[T], src_dict: dict[str, Any]) -> T:
86
+ from ..models.classification_evaluation_result import ClassificationEvaluationResult
87
+
88
+ d = src_dict.copy()
89
+ task_id = d.pop("task_id")
90
+
91
+ org_id = d.pop("org_id")
92
+
93
+ status = TaskStatus(d.pop("status"))
94
+
95
+ def _parse_result(data: object) -> Union["ClassificationEvaluationResult", None]:
96
+ if data is None:
97
+ return data
98
+ try:
99
+ if not isinstance(data, dict):
100
+ raise TypeError()
101
+ result_type_0 = ClassificationEvaluationResult.from_dict(data)
102
+
103
+ return result_type_0
104
+ except: # noqa: E722
105
+ pass
106
+ return cast(Union["ClassificationEvaluationResult", None], data)
107
+
108
+ result = _parse_result(d.pop("result"))
109
+
110
+ created_at = isoparse(d.pop("created_at"))
111
+
112
+ updated_at = isoparse(d.pop("updated_at"))
113
+
114
+ evaluation_response = cls(
115
+ task_id=task_id,
116
+ org_id=org_id,
117
+ status=status,
118
+ result=result,
119
+ created_at=created_at,
120
+ updated_at=updated_at,
121
+ )
122
+
123
+ evaluation_response.additional_properties = d
124
+ return evaluation_response
125
+
126
+ @property
127
+ def additional_keys(self) -> list[str]:
128
+ return list(self.additional_properties.keys())
129
+
130
+ def __getitem__(self, key: str) -> Any:
131
+ return self.additional_properties[key]
132
+
133
+ def __setitem__(self, key: str, value: Any) -> None:
134
+ self.additional_properties[key] = value
135
+
136
+ def __delitem__(self, key: str) -> None:
137
+ del self.additional_properties[key]
138
+
139
+ def __contains__(self, key: str) -> bool:
140
+ return key in self.additional_properties
@@ -0,0 +1,9 @@
1
+ from enum import Enum
2
+
3
+
4
+ class FeedbackType(str, Enum):
5
+ BINARY = "BINARY"
6
+ CONTINUOUS = "CONTINUOUS"
7
+
8
+ def __str__(self) -> str:
9
+ return str(self.value)
@@ -0,0 +1,103 @@
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/model.py.jinja
6
+
7
+ The main change is:
8
+ - Fix typing issues
9
+ """
10
+
11
+ # flake8: noqa: C901
12
+
13
+ from typing import Any, List, Type, TypeVar, Union, cast
14
+
15
+ from attrs import define as _attrs_define
16
+ from attrs import field as _attrs_field
17
+
18
+ from ..types import UNSET, Unset
19
+
20
+ T = TypeVar("T", bound="FieldValidationError")
21
+
22
+
23
+ @_attrs_define
24
+ class FieldValidationError:
25
+ """Validation error for a field that mirrors pydantic.ValidationError
26
+
27
+ Attributes:
28
+ loc (List[Union[int, str]]):
29
+ msg (str):
30
+ type (Union[Unset, str]): Default: 'custom'.
31
+ """
32
+
33
+ loc: List[Union[int, str]]
34
+ msg: str
35
+ type: Union[Unset, str] = "custom"
36
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
37
+
38
+ def to_dict(self) -> dict[str, Any]:
39
+ loc = []
40
+ for loc_item_data in self.loc:
41
+ loc_item: Union[int, str]
42
+ loc_item = loc_item_data
43
+ loc.append(loc_item)
44
+
45
+ msg = self.msg
46
+
47
+ type = self.type
48
+
49
+ field_dict: dict[str, Any] = {}
50
+ field_dict.update(self.additional_properties)
51
+ field_dict.update(
52
+ {
53
+ "loc": loc,
54
+ "msg": msg,
55
+ }
56
+ )
57
+ if type is not UNSET:
58
+ field_dict["type"] = type
59
+
60
+ return field_dict
61
+
62
+ @classmethod
63
+ def from_dict(cls: Type[T], src_dict: dict[str, Any]) -> T:
64
+ d = src_dict.copy()
65
+ loc = []
66
+ _loc = d.pop("loc")
67
+ for loc_item_data in _loc:
68
+
69
+ def _parse_loc_item(data: object) -> Union[int, str]:
70
+ return cast(Union[int, str], data)
71
+
72
+ loc_item = _parse_loc_item(loc_item_data)
73
+
74
+ loc.append(loc_item)
75
+
76
+ msg = d.pop("msg")
77
+
78
+ type = d.pop("type", UNSET)
79
+
80
+ field_validation_error = cls(
81
+ loc=loc,
82
+ msg=msg,
83
+ type=type,
84
+ )
85
+
86
+ field_validation_error.additional_properties = d
87
+ return field_validation_error
88
+
89
+ @property
90
+ def additional_keys(self) -> list[str]:
91
+ return list(self.additional_properties.keys())
92
+
93
+ def __getitem__(self, key: str) -> Any:
94
+ return self.additional_properties[key]
95
+
96
+ def __setitem__(self, key: str, value: Any) -> None:
97
+ self.additional_properties[key] = value
98
+
99
+ def __delitem__(self, key: str) -> None:
100
+ del self.additional_properties[key]
101
+
102
+ def __contains__(self, key: str) -> bool:
103
+ return key in self.additional_properties