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,68 @@
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, Type, TypeVar, Union, cast
14
+
15
+ from attrs import define as _attrs_define
16
+ from attrs import field as _attrs_field
17
+
18
+ T = TypeVar("T", bound="LabelPredictionMemoryLookupMetadata")
19
+
20
+
21
+ @_attrs_define
22
+ class LabelPredictionMemoryLookupMetadata:
23
+ """ """
24
+
25
+ additional_properties: dict[str, Union[None, bool, float, int, str]] = _attrs_field(init=False, factory=dict)
26
+
27
+ def to_dict(self) -> dict[str, Any]:
28
+ field_dict: dict[str, Any] = {}
29
+ for prop_name, prop in self.additional_properties.items():
30
+ field_dict[prop_name] = prop
31
+
32
+ return field_dict
33
+
34
+ @classmethod
35
+ def from_dict(cls: Type[T], src_dict: dict[str, Any]) -> T:
36
+ d = src_dict.copy()
37
+ label_prediction_memory_lookup_metadata = cls()
38
+
39
+ additional_properties = {}
40
+ for prop_name, prop_dict in d.items():
41
+
42
+ def _parse_additional_property(data: object) -> Union[None, bool, float, int, str]:
43
+ if data is None:
44
+ return data
45
+ return cast(Union[None, bool, float, int, str], data)
46
+
47
+ additional_property = _parse_additional_property(prop_dict)
48
+
49
+ additional_properties[prop_name] = additional_property
50
+
51
+ label_prediction_memory_lookup_metadata.additional_properties = additional_properties
52
+ return label_prediction_memory_lookup_metadata
53
+
54
+ @property
55
+ def additional_keys(self) -> list[str]:
56
+ return list(self.additional_properties.keys())
57
+
58
+ def __getitem__(self, key: str) -> Union[None, bool, float, int, str]:
59
+ return self.additional_properties[key]
60
+
61
+ def __setitem__(self, key: str, value: Union[None, bool, float, int, str]) -> None:
62
+ self.additional_properties[key] = value
63
+
64
+ def __delitem__(self, key: str) -> None:
65
+ del self.additional_properties[key]
66
+
67
+ def __contains__(self, key: str) -> bool:
68
+ return key in self.additional_properties
@@ -0,0 +1,101 @@
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, Type, TypeVar, Union, cast
14
+
15
+ from attrs import define as _attrs_define
16
+ from attrs import field as _attrs_field
17
+
18
+ T = TypeVar("T", bound="LabelPredictionResult")
19
+
20
+
21
+ @_attrs_define
22
+ class LabelPredictionResult:
23
+ """Predicted label and confidence for a single input.
24
+
25
+ Attributes:
26
+ prediction_id (str):
27
+ label (int):
28
+ label_name (Union[None, str]):
29
+ confidence (float):
30
+ """
31
+
32
+ prediction_id: str
33
+ label: int
34
+ label_name: Union[None, str]
35
+ confidence: float
36
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
37
+
38
+ def to_dict(self) -> dict[str, Any]:
39
+ prediction_id = self.prediction_id
40
+
41
+ label = self.label
42
+
43
+ label_name: Union[None, str]
44
+ label_name = self.label_name
45
+
46
+ confidence = self.confidence
47
+
48
+ field_dict: dict[str, Any] = {}
49
+ field_dict.update(self.additional_properties)
50
+ field_dict.update(
51
+ {
52
+ "prediction_id": prediction_id,
53
+ "label": label,
54
+ "label_name": label_name,
55
+ "confidence": confidence,
56
+ }
57
+ )
58
+
59
+ return field_dict
60
+
61
+ @classmethod
62
+ def from_dict(cls: Type[T], src_dict: dict[str, Any]) -> T:
63
+ d = src_dict.copy()
64
+ prediction_id = d.pop("prediction_id")
65
+
66
+ label = d.pop("label")
67
+
68
+ def _parse_label_name(data: object) -> Union[None, str]:
69
+ if data is None:
70
+ return data
71
+ return cast(Union[None, str], data)
72
+
73
+ label_name = _parse_label_name(d.pop("label_name"))
74
+
75
+ confidence = d.pop("confidence")
76
+
77
+ label_prediction_result = cls(
78
+ prediction_id=prediction_id,
79
+ label=label,
80
+ label_name=label_name,
81
+ confidence=confidence,
82
+ )
83
+
84
+ label_prediction_result.additional_properties = d
85
+ return label_prediction_result
86
+
87
+ @property
88
+ def additional_keys(self) -> list[str]:
89
+ return list(self.additional_properties.keys())
90
+
91
+ def __getitem__(self, key: str) -> Any:
92
+ return self.additional_properties[key]
93
+
94
+ def __setitem__(self, key: str, value: Any) -> None:
95
+ self.additional_properties[key] = value
96
+
97
+ def __delitem__(self, key: str) -> None:
98
+ del self.additional_properties[key]
99
+
100
+ def __contains__(self, key: str) -> bool:
101
+ return key in self.additional_properties
@@ -0,0 +1,232 @@
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 typing import TYPE_CHECKING, Any, List, Type, TypeVar, Union, cast
15
+
16
+ from attrs import define as _attrs_define
17
+ from attrs import field as _attrs_field
18
+ from dateutil.parser import isoparse
19
+
20
+ if TYPE_CHECKING:
21
+ from ..models.label_prediction_memory_lookup import LabelPredictionMemoryLookup
22
+ from ..models.prediction_feedback import PredictionFeedback
23
+
24
+
25
+ T = TypeVar("T", bound="LabelPredictionWithMemoriesAndFeedback")
26
+
27
+
28
+ @_attrs_define
29
+ class LabelPredictionWithMemoriesAndFeedback:
30
+ """
31
+ Attributes:
32
+ prediction_id (str):
33
+ label (int):
34
+ label_name (Union[None, str]):
35
+ confidence (float):
36
+ timestamp (datetime.datetime):
37
+ logits (List[float]):
38
+ input_value (str):
39
+ input_embedding (List[float]):
40
+ expected_label (Union[None, int]):
41
+ memories (List['LabelPredictionMemoryLookup']):
42
+ org_id (str):
43
+ memoryset_id (str):
44
+ model_id (str):
45
+ updated_at (datetime.datetime):
46
+ tags (List[str]):
47
+ feedbacks (List['PredictionFeedback']):
48
+ """
49
+
50
+ prediction_id: str
51
+ label: int
52
+ label_name: Union[None, str]
53
+ confidence: float
54
+ timestamp: datetime.datetime
55
+ logits: List[float]
56
+ input_value: str
57
+ input_embedding: List[float]
58
+ expected_label: Union[None, int]
59
+ memories: List["LabelPredictionMemoryLookup"]
60
+ org_id: str
61
+ memoryset_id: str
62
+ model_id: str
63
+ updated_at: datetime.datetime
64
+ tags: List[str]
65
+ feedbacks: List["PredictionFeedback"]
66
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
67
+
68
+ def to_dict(self) -> dict[str, Any]:
69
+ prediction_id = self.prediction_id
70
+
71
+ label = self.label
72
+
73
+ label_name: Union[None, str]
74
+ label_name = self.label_name
75
+
76
+ confidence = self.confidence
77
+
78
+ timestamp = self.timestamp.isoformat()
79
+
80
+ logits = self.logits
81
+
82
+ input_value: str
83
+ input_value = self.input_value
84
+
85
+ input_embedding = self.input_embedding
86
+
87
+ expected_label: Union[None, int]
88
+ expected_label = self.expected_label
89
+
90
+ memories = []
91
+ for memories_item_data in self.memories:
92
+ memories_item = memories_item_data.to_dict()
93
+ memories.append(memories_item)
94
+
95
+ org_id = self.org_id
96
+
97
+ memoryset_id = self.memoryset_id
98
+
99
+ model_id = self.model_id
100
+
101
+ updated_at = self.updated_at.isoformat()
102
+
103
+ tags = self.tags
104
+
105
+ feedbacks = []
106
+ for feedbacks_item_data in self.feedbacks:
107
+ feedbacks_item = feedbacks_item_data.to_dict()
108
+ feedbacks.append(feedbacks_item)
109
+
110
+ field_dict: dict[str, Any] = {}
111
+ field_dict.update(self.additional_properties)
112
+ field_dict.update(
113
+ {
114
+ "prediction_id": prediction_id,
115
+ "label": label,
116
+ "label_name": label_name,
117
+ "confidence": confidence,
118
+ "timestamp": timestamp,
119
+ "logits": logits,
120
+ "input_value": input_value,
121
+ "input_embedding": input_embedding,
122
+ "expected_label": expected_label,
123
+ "memories": memories,
124
+ "org_id": org_id,
125
+ "memoryset_id": memoryset_id,
126
+ "model_id": model_id,
127
+ "updated_at": updated_at,
128
+ "tags": tags,
129
+ "feedbacks": feedbacks,
130
+ }
131
+ )
132
+
133
+ return field_dict
134
+
135
+ @classmethod
136
+ def from_dict(cls: Type[T], src_dict: dict[str, Any]) -> T:
137
+ from ..models.label_prediction_memory_lookup import LabelPredictionMemoryLookup
138
+ from ..models.prediction_feedback import PredictionFeedback
139
+
140
+ d = src_dict.copy()
141
+ prediction_id = d.pop("prediction_id")
142
+
143
+ label = d.pop("label")
144
+
145
+ def _parse_label_name(data: object) -> Union[None, str]:
146
+ if data is None:
147
+ return data
148
+ return cast(Union[None, str], data)
149
+
150
+ label_name = _parse_label_name(d.pop("label_name"))
151
+
152
+ confidence = d.pop("confidence")
153
+
154
+ timestamp = isoparse(d.pop("timestamp"))
155
+
156
+ logits = cast(List[float], d.pop("logits"))
157
+
158
+ def _parse_input_value(data: object) -> str:
159
+ return cast(str, data)
160
+
161
+ input_value = _parse_input_value(d.pop("input_value"))
162
+
163
+ input_embedding = cast(List[float], d.pop("input_embedding"))
164
+
165
+ def _parse_expected_label(data: object) -> Union[None, int]:
166
+ if data is None:
167
+ return data
168
+ return cast(Union[None, int], data)
169
+
170
+ expected_label = _parse_expected_label(d.pop("expected_label"))
171
+
172
+ memories = []
173
+ _memories = d.pop("memories")
174
+ for memories_item_data in _memories:
175
+ memories_item = LabelPredictionMemoryLookup.from_dict(memories_item_data)
176
+
177
+ memories.append(memories_item)
178
+
179
+ org_id = d.pop("org_id")
180
+
181
+ memoryset_id = d.pop("memoryset_id")
182
+
183
+ model_id = d.pop("model_id")
184
+
185
+ updated_at = isoparse(d.pop("updated_at"))
186
+
187
+ tags = cast(List[str], d.pop("tags"))
188
+
189
+ feedbacks = []
190
+ _feedbacks = d.pop("feedbacks")
191
+ for feedbacks_item_data in _feedbacks:
192
+ feedbacks_item = PredictionFeedback.from_dict(feedbacks_item_data)
193
+
194
+ feedbacks.append(feedbacks_item)
195
+
196
+ label_prediction_with_memories_and_feedback = cls(
197
+ prediction_id=prediction_id,
198
+ label=label,
199
+ label_name=label_name,
200
+ confidence=confidence,
201
+ timestamp=timestamp,
202
+ logits=logits,
203
+ input_value=input_value,
204
+ input_embedding=input_embedding,
205
+ expected_label=expected_label,
206
+ memories=memories,
207
+ org_id=org_id,
208
+ memoryset_id=memoryset_id,
209
+ model_id=model_id,
210
+ updated_at=updated_at,
211
+ tags=tags,
212
+ feedbacks=feedbacks,
213
+ )
214
+
215
+ label_prediction_with_memories_and_feedback.additional_properties = d
216
+ return label_prediction_with_memories_and_feedback
217
+
218
+ @property
219
+ def additional_keys(self) -> list[str]:
220
+ return list(self.additional_properties.keys())
221
+
222
+ def __getitem__(self, key: str) -> Any:
223
+ return self.additional_properties[key]
224
+
225
+ def __setitem__(self, key: str, value: Any) -> None:
226
+ self.additional_properties[key] = value
227
+
228
+ def __delitem__(self, key: str) -> None:
229
+ del self.additional_properties[key]
230
+
231
+ def __contains__(self, key: str) -> bool:
232
+ return key in self.additional_properties
@@ -0,0 +1,197 @@
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 typing import TYPE_CHECKING, Any, Dict, List, Type, TypeVar, Union, cast
15
+
16
+ from attrs import define as _attrs_define
17
+ from attrs import field as _attrs_field
18
+ from dateutil.parser import isoparse
19
+
20
+ if TYPE_CHECKING:
21
+ from ..models.labeled_memory_metadata import LabeledMemoryMetadata
22
+ from ..models.labeled_memory_metrics import LabeledMemoryMetrics
23
+
24
+
25
+ T = TypeVar("T", bound="LabeledMemory")
26
+
27
+
28
+ @_attrs_define
29
+ class LabeledMemory:
30
+ """A labeled memory is a single item that can be stored in the database and has a label.
31
+
32
+ Attributes:
33
+ value (str):
34
+ embedding (List[float]):
35
+ label (int):
36
+ label_name (Union[None, str]):
37
+ source_id (Union[None, str]):
38
+ metadata (LabeledMemoryMetadata):
39
+ memory_id (str):
40
+ memory_version (int):
41
+ created_at (datetime.datetime):
42
+ updated_at (datetime.datetime):
43
+ metrics (Union['LabeledMemoryMetrics', None]):
44
+ """
45
+
46
+ value: str
47
+ embedding: List[float]
48
+ label: int
49
+ label_name: Union[None, str]
50
+ source_id: Union[None, str]
51
+ metadata: "LabeledMemoryMetadata"
52
+ memory_id: str
53
+ memory_version: int
54
+ created_at: datetime.datetime
55
+ updated_at: datetime.datetime
56
+ metrics: Union["LabeledMemoryMetrics", None]
57
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
58
+
59
+ def to_dict(self) -> dict[str, Any]:
60
+ from ..models.labeled_memory_metrics import LabeledMemoryMetrics
61
+
62
+ value: str
63
+ value = self.value
64
+
65
+ embedding = self.embedding
66
+
67
+ label = self.label
68
+
69
+ label_name: Union[None, str]
70
+ label_name = self.label_name
71
+
72
+ source_id: Union[None, str]
73
+ source_id = self.source_id
74
+
75
+ metadata = self.metadata.to_dict()
76
+
77
+ memory_id = self.memory_id
78
+
79
+ memory_version = self.memory_version
80
+
81
+ created_at = self.created_at.isoformat()
82
+
83
+ updated_at = self.updated_at.isoformat()
84
+
85
+ metrics: Union[Dict[str, Any], None]
86
+ if isinstance(self.metrics, LabeledMemoryMetrics):
87
+ metrics = self.metrics.to_dict()
88
+ else:
89
+ metrics = self.metrics
90
+
91
+ field_dict: dict[str, Any] = {}
92
+ field_dict.update(self.additional_properties)
93
+ field_dict.update(
94
+ {
95
+ "value": value,
96
+ "embedding": embedding,
97
+ "label": label,
98
+ "label_name": label_name,
99
+ "source_id": source_id,
100
+ "metadata": metadata,
101
+ "memory_id": memory_id,
102
+ "memory_version": memory_version,
103
+ "created_at": created_at,
104
+ "updated_at": updated_at,
105
+ "metrics": metrics,
106
+ }
107
+ )
108
+
109
+ return field_dict
110
+
111
+ @classmethod
112
+ def from_dict(cls: Type[T], src_dict: dict[str, Any]) -> T:
113
+ from ..models.labeled_memory_metadata import LabeledMemoryMetadata
114
+ from ..models.labeled_memory_metrics import LabeledMemoryMetrics
115
+
116
+ d = src_dict.copy()
117
+
118
+ def _parse_value(data: object) -> str:
119
+ return cast(str, data)
120
+
121
+ value = _parse_value(d.pop("value"))
122
+
123
+ embedding = cast(List[float], d.pop("embedding"))
124
+
125
+ label = d.pop("label")
126
+
127
+ def _parse_label_name(data: object) -> Union[None, str]:
128
+ if data is None:
129
+ return data
130
+ return cast(Union[None, str], data)
131
+
132
+ label_name = _parse_label_name(d.pop("label_name"))
133
+
134
+ def _parse_source_id(data: object) -> Union[None, str]:
135
+ if data is None:
136
+ return data
137
+ return cast(Union[None, str], data)
138
+
139
+ source_id = _parse_source_id(d.pop("source_id"))
140
+
141
+ metadata = LabeledMemoryMetadata.from_dict(d.pop("metadata"))
142
+
143
+ memory_id = d.pop("memory_id")
144
+
145
+ memory_version = d.pop("memory_version")
146
+
147
+ created_at = isoparse(d.pop("created_at"))
148
+
149
+ updated_at = isoparse(d.pop("updated_at"))
150
+
151
+ def _parse_metrics(data: object) -> Union["LabeledMemoryMetrics", None]:
152
+ if data is None:
153
+ return data
154
+ try:
155
+ if not isinstance(data, dict):
156
+ raise TypeError()
157
+ metrics_type_0 = LabeledMemoryMetrics.from_dict(data)
158
+
159
+ return metrics_type_0
160
+ except: # noqa: E722
161
+ pass
162
+ return cast(Union["LabeledMemoryMetrics", None], data)
163
+
164
+ metrics = _parse_metrics(d.pop("metrics"))
165
+
166
+ labeled_memory = cls(
167
+ value=value,
168
+ embedding=embedding,
169
+ label=label,
170
+ label_name=label_name,
171
+ source_id=source_id,
172
+ metadata=metadata,
173
+ memory_id=memory_id,
174
+ memory_version=memory_version,
175
+ created_at=created_at,
176
+ updated_at=updated_at,
177
+ metrics=metrics,
178
+ )
179
+
180
+ labeled_memory.additional_properties = d
181
+ return labeled_memory
182
+
183
+ @property
184
+ def additional_keys(self) -> list[str]:
185
+ return list(self.additional_properties.keys())
186
+
187
+ def __getitem__(self, key: str) -> Any:
188
+ return self.additional_properties[key]
189
+
190
+ def __setitem__(self, key: str, value: Any) -> None:
191
+ self.additional_properties[key] = value
192
+
193
+ def __delitem__(self, key: str) -> None:
194
+ del self.additional_properties[key]
195
+
196
+ def __contains__(self, key: str) -> bool:
197
+ return key in self.additional_properties
@@ -0,0 +1,108 @@
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 TYPE_CHECKING, Any, Dict, Type, TypeVar, Union, cast
14
+
15
+ from attrs import define as _attrs_define
16
+
17
+ from ..types import UNSET, Unset
18
+
19
+ if TYPE_CHECKING:
20
+ from ..models.labeled_memory_insert_metadata import LabeledMemoryInsertMetadata
21
+
22
+
23
+ T = TypeVar("T", bound="LabeledMemoryInsert")
24
+
25
+
26
+ @_attrs_define
27
+ class LabeledMemoryInsert:
28
+ """Model of fields required for inserting a labeled memory
29
+
30
+ Attributes:
31
+ value (str):
32
+ label (int):
33
+ metadata (Union[Unset, LabeledMemoryInsertMetadata]):
34
+ source_id (Union[None, Unset, str]):
35
+ """
36
+
37
+ value: str
38
+ label: int
39
+ metadata: Union[Unset, "LabeledMemoryInsertMetadata"] = UNSET
40
+ source_id: Union[None, Unset, str] = UNSET
41
+
42
+ def to_dict(self) -> dict[str, Any]:
43
+ value: str
44
+ value = self.value
45
+
46
+ label = self.label
47
+
48
+ metadata: Union[Unset, Dict[str, Any]] = UNSET
49
+ if not isinstance(self.metadata, Unset):
50
+ metadata = self.metadata.to_dict()
51
+
52
+ source_id: Union[None, Unset, str]
53
+ if isinstance(self.source_id, Unset):
54
+ source_id = UNSET
55
+ else:
56
+ source_id = self.source_id
57
+
58
+ field_dict: dict[str, Any] = {}
59
+ field_dict.update(
60
+ {
61
+ "value": value,
62
+ "label": label,
63
+ }
64
+ )
65
+ if metadata is not UNSET:
66
+ field_dict["metadata"] = metadata
67
+ if source_id is not UNSET:
68
+ field_dict["source_id"] = source_id
69
+
70
+ return field_dict
71
+
72
+ @classmethod
73
+ def from_dict(cls: Type[T], src_dict: dict[str, Any]) -> T:
74
+ from ..models.labeled_memory_insert_metadata import LabeledMemoryInsertMetadata
75
+
76
+ d = src_dict.copy()
77
+
78
+ def _parse_value(data: object) -> str:
79
+ return cast(str, data)
80
+
81
+ value = _parse_value(d.pop("value"))
82
+
83
+ label = d.pop("label")
84
+
85
+ _metadata = d.pop("metadata", UNSET)
86
+ metadata: Union[Unset, LabeledMemoryInsertMetadata]
87
+ if isinstance(_metadata, Unset):
88
+ metadata = UNSET
89
+ else:
90
+ metadata = LabeledMemoryInsertMetadata.from_dict(_metadata)
91
+
92
+ def _parse_source_id(data: object) -> Union[None, Unset, str]:
93
+ if data is None:
94
+ return data
95
+ if isinstance(data, Unset):
96
+ return data
97
+ return cast(Union[None, Unset, str], data)
98
+
99
+ source_id = _parse_source_id(d.pop("source_id", UNSET))
100
+
101
+ labeled_memory_insert = cls(
102
+ value=value,
103
+ label=label,
104
+ metadata=metadata,
105
+ source_id=source_id,
106
+ )
107
+
108
+ return labeled_memory_insert