orca-sdk 0.0.93__py3-none-any.whl → 0.0.95__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 (125) hide show
  1. orca_sdk/__init__.py +13 -4
  2. orca_sdk/_generated_api_client/api/__init__.py +84 -34
  3. orca_sdk/_generated_api_client/api/classification_model/create_classification_model_classification_model_post.py +170 -0
  4. orca_sdk/_generated_api_client/api/classification_model/{get_model_classification_model_name_or_id_get.py → delete_classification_model_classification_model_name_or_id_delete.py} +20 -20
  5. orca_sdk/_generated_api_client/api/classification_model/{delete_evaluation_classification_model_model_name_or_id_evaluation_task_id_delete.py → delete_classification_model_evaluation_classification_model_model_name_or_id_evaluation_task_id_delete.py} +4 -4
  6. orca_sdk/_generated_api_client/api/classification_model/{create_evaluation_classification_model_model_name_or_id_evaluation_post.py → evaluate_classification_model_classification_model_model_name_or_id_evaluation_post.py} +14 -14
  7. orca_sdk/_generated_api_client/api/classification_model/get_classification_model_classification_model_name_or_id_get.py +156 -0
  8. orca_sdk/_generated_api_client/api/classification_model/{get_evaluation_classification_model_model_name_or_id_evaluation_task_id_get.py → get_classification_model_evaluation_classification_model_model_name_or_id_evaluation_task_id_get.py} +16 -16
  9. orca_sdk/_generated_api_client/api/classification_model/{list_evaluations_classification_model_model_name_or_id_evaluation_get.py → list_classification_model_evaluations_classification_model_model_name_or_id_evaluation_get.py} +16 -16
  10. orca_sdk/_generated_api_client/api/classification_model/list_classification_models_classification_model_get.py +127 -0
  11. orca_sdk/_generated_api_client/api/classification_model/{predict_gpu_classification_model_name_or_id_prediction_post.py → predict_label_gpu_classification_model_name_or_id_prediction_post.py} +14 -14
  12. orca_sdk/_generated_api_client/api/classification_model/update_classification_model_classification_model_name_or_id_patch.py +183 -0
  13. orca_sdk/_generated_api_client/api/datasource/download_datasource_datasource_name_or_id_download_get.py +172 -0
  14. orca_sdk/_generated_api_client/api/memoryset/clone_memoryset_memoryset_name_or_id_clone_post.py +22 -22
  15. orca_sdk/_generated_api_client/api/memoryset/create_memoryset_memoryset_post.py +22 -22
  16. orca_sdk/_generated_api_client/api/memoryset/get_memories_memoryset_name_or_id_memories_get_post.py +38 -16
  17. orca_sdk/_generated_api_client/api/memoryset/get_memory_memoryset_name_or_id_memory_memory_id_get.py +29 -12
  18. orca_sdk/_generated_api_client/api/memoryset/get_memoryset_memoryset_name_or_id_get.py +12 -12
  19. orca_sdk/_generated_api_client/api/memoryset/insert_memories_gpu_memoryset_name_or_id_memory_post.py +17 -14
  20. orca_sdk/_generated_api_client/api/memoryset/list_memorysets_memoryset_get.py +72 -19
  21. orca_sdk/_generated_api_client/api/memoryset/memoryset_lookup_gpu_memoryset_name_or_id_lookup_post.py +31 -12
  22. orca_sdk/_generated_api_client/api/memoryset/potential_duplicate_groups_memoryset_name_or_id_potential_duplicate_groups_get.py +49 -20
  23. orca_sdk/_generated_api_client/api/memoryset/query_memoryset_memoryset_name_or_id_memories_post.py +38 -16
  24. orca_sdk/_generated_api_client/api/memoryset/update_memories_gpu_memoryset_name_or_id_memories_patch.py +54 -29
  25. orca_sdk/_generated_api_client/api/memoryset/update_memory_gpu_memoryset_name_or_id_memory_patch.py +44 -26
  26. orca_sdk/_generated_api_client/api/memoryset/update_memoryset_memoryset_name_or_id_patch.py +22 -22
  27. orca_sdk/_generated_api_client/api/predictive_model/__init__.py +0 -0
  28. orca_sdk/_generated_api_client/api/predictive_model/list_predictive_models_predictive_model_get.py +150 -0
  29. orca_sdk/_generated_api_client/api/regression_model/__init__.py +0 -0
  30. orca_sdk/_generated_api_client/api/{classification_model/create_model_classification_model_post.py → regression_model/create_regression_model_regression_model_post.py} +27 -27
  31. orca_sdk/_generated_api_client/api/regression_model/delete_regression_model_evaluation_regression_model_model_name_or_id_evaluation_task_id_delete.py +168 -0
  32. orca_sdk/_generated_api_client/api/{classification_model/delete_model_classification_model_name_or_id_delete.py → regression_model/delete_regression_model_regression_model_name_or_id_delete.py} +5 -5
  33. orca_sdk/_generated_api_client/api/regression_model/evaluate_regression_model_regression_model_model_name_or_id_evaluation_post.py +183 -0
  34. orca_sdk/_generated_api_client/api/regression_model/get_regression_model_evaluation_regression_model_model_name_or_id_evaluation_task_id_get.py +170 -0
  35. orca_sdk/_generated_api_client/api/regression_model/get_regression_model_regression_model_name_or_id_get.py +156 -0
  36. orca_sdk/_generated_api_client/api/regression_model/list_regression_model_evaluations_regression_model_model_name_or_id_evaluation_get.py +161 -0
  37. orca_sdk/_generated_api_client/api/{classification_model/list_models_classification_model_get.py → regression_model/list_regression_models_regression_model_get.py} +17 -17
  38. orca_sdk/_generated_api_client/api/regression_model/predict_score_gpu_regression_model_name_or_id_prediction_post.py +190 -0
  39. orca_sdk/_generated_api_client/api/{classification_model/update_model_classification_model_name_or_id_patch.py → regression_model/update_regression_model_regression_model_name_or_id_patch.py} +27 -27
  40. orca_sdk/_generated_api_client/api/task/get_task_task_task_id_get.py +156 -0
  41. orca_sdk/_generated_api_client/api/task/list_tasks_task_get.py +60 -10
  42. orca_sdk/_generated_api_client/api/telemetry/count_predictions_telemetry_prediction_count_post.py +10 -10
  43. orca_sdk/_generated_api_client/api/telemetry/get_prediction_telemetry_prediction_prediction_id_get.py +35 -12
  44. orca_sdk/_generated_api_client/api/telemetry/list_memories_with_feedback_telemetry_memories_post.py +20 -12
  45. orca_sdk/_generated_api_client/api/telemetry/list_predictions_telemetry_prediction_post.py +35 -12
  46. orca_sdk/_generated_api_client/models/__init__.py +90 -24
  47. orca_sdk/_generated_api_client/models/base_score_prediction_result.py +108 -0
  48. orca_sdk/_generated_api_client/models/{evaluation_request.py → classification_evaluation_request.py} +13 -45
  49. orca_sdk/_generated_api_client/models/{classification_evaluation_result.py → classification_metrics.py} +106 -56
  50. orca_sdk/_generated_api_client/models/{rac_model_metadata.py → classification_model_metadata.py} +51 -43
  51. orca_sdk/_generated_api_client/models/{prediction_request.py → classification_prediction_request.py} +31 -6
  52. orca_sdk/_generated_api_client/models/{clone_labeled_memoryset_request.py → clone_memoryset_request.py} +5 -5
  53. orca_sdk/_generated_api_client/models/column_info.py +31 -0
  54. orca_sdk/_generated_api_client/models/count_predictions_request.py +195 -0
  55. orca_sdk/_generated_api_client/models/{create_rac_model_request.py → create_classification_model_request.py} +25 -57
  56. orca_sdk/_generated_api_client/models/{create_labeled_memoryset_request.py → create_memoryset_request.py} +73 -56
  57. orca_sdk/_generated_api_client/models/create_memoryset_request_index_params.py +66 -0
  58. orca_sdk/_generated_api_client/models/create_memoryset_request_index_type.py +13 -0
  59. orca_sdk/_generated_api_client/models/create_regression_model_request.py +137 -0
  60. orca_sdk/_generated_api_client/models/embedding_evaluation_payload.py +187 -0
  61. orca_sdk/_generated_api_client/models/embedding_evaluation_response.py +10 -0
  62. orca_sdk/_generated_api_client/models/evaluation_response.py +22 -9
  63. orca_sdk/_generated_api_client/models/evaluation_response_classification_metrics.py +140 -0
  64. orca_sdk/_generated_api_client/models/evaluation_response_regression_metrics.py +140 -0
  65. orca_sdk/_generated_api_client/models/http_validation_error.py +86 -0
  66. orca_sdk/_generated_api_client/models/list_predictions_request.py +62 -0
  67. orca_sdk/_generated_api_client/models/memory_type.py +9 -0
  68. orca_sdk/_generated_api_client/models/memoryset_analysis_configs.py +0 -20
  69. orca_sdk/_generated_api_client/models/{labeled_memoryset_metadata.py → memoryset_metadata.py} +73 -13
  70. orca_sdk/_generated_api_client/models/memoryset_metadata_index_params.py +55 -0
  71. orca_sdk/_generated_api_client/models/memoryset_metadata_index_type.py +13 -0
  72. orca_sdk/_generated_api_client/models/{labeled_memoryset_update.py → memoryset_update.py} +19 -31
  73. orca_sdk/_generated_api_client/models/not_found_error_response_resource_type_0.py +1 -0
  74. orca_sdk/_generated_api_client/models/{paginated_labeled_memory_with_feedback_metrics.py → paginated_union_labeled_memory_with_feedback_metrics_scored_memory_with_feedback_metrics.py} +37 -10
  75. orca_sdk/_generated_api_client/models/{precision_recall_curve.py → pr_curve.py} +5 -13
  76. orca_sdk/_generated_api_client/models/{rac_model_update.py → predictive_model_update.py} +14 -5
  77. orca_sdk/_generated_api_client/models/pretrained_embedding_model_metadata.py +11 -1
  78. orca_sdk/_generated_api_client/models/pretrained_embedding_model_name.py +5 -0
  79. orca_sdk/_generated_api_client/models/rar_head_type.py +8 -0
  80. orca_sdk/_generated_api_client/models/regression_evaluation_request.py +148 -0
  81. orca_sdk/_generated_api_client/models/regression_metrics.py +172 -0
  82. orca_sdk/_generated_api_client/models/regression_model_metadata.py +177 -0
  83. orca_sdk/_generated_api_client/models/regression_prediction_request.py +195 -0
  84. orca_sdk/_generated_api_client/models/roc_curve.py +0 -8
  85. orca_sdk/_generated_api_client/models/score_prediction_memory_lookup.py +196 -0
  86. orca_sdk/_generated_api_client/models/score_prediction_memory_lookup_metadata.py +68 -0
  87. orca_sdk/_generated_api_client/models/score_prediction_with_memories_and_feedback.py +252 -0
  88. orca_sdk/_generated_api_client/models/scored_memory.py +172 -0
  89. orca_sdk/_generated_api_client/models/scored_memory_insert.py +128 -0
  90. orca_sdk/_generated_api_client/models/scored_memory_insert_metadata.py +68 -0
  91. orca_sdk/_generated_api_client/models/scored_memory_lookup.py +180 -0
  92. orca_sdk/_generated_api_client/models/scored_memory_lookup_metadata.py +68 -0
  93. orca_sdk/_generated_api_client/models/scored_memory_metadata.py +68 -0
  94. orca_sdk/_generated_api_client/models/scored_memory_update.py +171 -0
  95. orca_sdk/_generated_api_client/models/scored_memory_update_metadata_type_0.py +68 -0
  96. orca_sdk/_generated_api_client/models/scored_memory_with_feedback_metrics.py +193 -0
  97. orca_sdk/_generated_api_client/models/scored_memory_with_feedback_metrics_feedback_metrics.py +68 -0
  98. orca_sdk/_generated_api_client/models/scored_memory_with_feedback_metrics_metadata.py +68 -0
  99. orca_sdk/_generated_api_client/models/update_prediction_request.py +20 -0
  100. orca_sdk/_generated_api_client/models/validation_error.py +99 -0
  101. orca_sdk/_shared/__init__.py +9 -1
  102. orca_sdk/_shared/metrics.py +257 -87
  103. orca_sdk/_shared/metrics_test.py +136 -77
  104. orca_sdk/_utils/data_parsing.py +0 -3
  105. orca_sdk/_utils/data_parsing_test.py +0 -3
  106. orca_sdk/_utils/prediction_result_ui.py +55 -23
  107. orca_sdk/classification_model.py +184 -174
  108. orca_sdk/classification_model_test.py +178 -142
  109. orca_sdk/conftest.py +77 -26
  110. orca_sdk/datasource.py +34 -0
  111. orca_sdk/datasource_test.py +9 -1
  112. orca_sdk/embedding_model.py +136 -14
  113. orca_sdk/embedding_model_test.py +10 -6
  114. orca_sdk/job.py +329 -0
  115. orca_sdk/job_test.py +48 -0
  116. orca_sdk/memoryset.py +882 -161
  117. orca_sdk/memoryset_test.py +58 -23
  118. orca_sdk/regression_model.py +647 -0
  119. orca_sdk/regression_model_test.py +338 -0
  120. orca_sdk/telemetry.py +225 -106
  121. orca_sdk/telemetry_test.py +34 -30
  122. {orca_sdk-0.0.93.dist-info → orca_sdk-0.0.95.dist-info}/METADATA +2 -4
  123. {orca_sdk-0.0.93.dist-info → orca_sdk-0.0.95.dist-info}/RECORD +124 -74
  124. orca_sdk/_utils/task.py +0 -73
  125. {orca_sdk-0.0.93.dist-info → orca_sdk-0.0.95.dist-info}/WHEEL +0 -0
@@ -0,0 +1,171 @@
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.memory_metrics import MemoryMetrics
21
+ from ..models.scored_memory_update_metadata_type_0 import ScoredMemoryUpdateMetadataType0
22
+
23
+
24
+ T = TypeVar("T", bound="ScoredMemoryUpdate")
25
+
26
+
27
+ @_attrs_define
28
+ class ScoredMemoryUpdate:
29
+ """Model for updating a scored memory (unset fields are kept as is).
30
+
31
+ Attributes:
32
+ memory_id (str):
33
+ value (Union[Unset, str]):
34
+ metadata (Union['ScoredMemoryUpdateMetadataType0', None, Unset]):
35
+ source_id (Union[None, Unset, str]):
36
+ score (Union[Unset, float]):
37
+ metrics (Union['MemoryMetrics', None, Unset]):
38
+ """
39
+
40
+ memory_id: str
41
+ value: Union[Unset, str] = UNSET
42
+ metadata: Union["ScoredMemoryUpdateMetadataType0", None, Unset] = UNSET
43
+ source_id: Union[None, Unset, str] = UNSET
44
+ score: Union[Unset, float] = UNSET
45
+ metrics: Union["MemoryMetrics", None, Unset] = UNSET
46
+
47
+ def to_dict(self) -> dict[str, Any]:
48
+ from ..models.memory_metrics import MemoryMetrics
49
+ from ..models.scored_memory_update_metadata_type_0 import ScoredMemoryUpdateMetadataType0
50
+
51
+ memory_id = self.memory_id
52
+
53
+ value: Union[Unset, str]
54
+ if isinstance(self.value, Unset):
55
+ value = UNSET
56
+ else:
57
+ value = self.value
58
+
59
+ metadata: Union[Dict[str, Any], None, Unset]
60
+ if isinstance(self.metadata, Unset):
61
+ metadata = UNSET
62
+ elif isinstance(self.metadata, ScoredMemoryUpdateMetadataType0):
63
+ metadata = self.metadata.to_dict()
64
+ else:
65
+ metadata = self.metadata
66
+
67
+ source_id: Union[None, Unset, str]
68
+ if isinstance(self.source_id, Unset):
69
+ source_id = UNSET
70
+ else:
71
+ source_id = self.source_id
72
+
73
+ score = self.score
74
+
75
+ metrics: Union[Dict[str, Any], None, Unset]
76
+ if isinstance(self.metrics, Unset):
77
+ metrics = UNSET
78
+ elif isinstance(self.metrics, MemoryMetrics):
79
+ metrics = self.metrics.to_dict()
80
+ else:
81
+ metrics = self.metrics
82
+
83
+ field_dict: dict[str, Any] = {}
84
+ field_dict.update(
85
+ {
86
+ "memory_id": memory_id,
87
+ }
88
+ )
89
+ if value is not UNSET:
90
+ field_dict["value"] = value
91
+ if metadata is not UNSET:
92
+ field_dict["metadata"] = metadata
93
+ if source_id is not UNSET:
94
+ field_dict["source_id"] = source_id
95
+ if score is not UNSET:
96
+ field_dict["score"] = score
97
+ if metrics is not UNSET:
98
+ field_dict["metrics"] = metrics
99
+
100
+ return field_dict
101
+
102
+ @classmethod
103
+ def from_dict(cls: Type[T], src_dict: dict[str, Any]) -> T:
104
+ from ..models.memory_metrics import MemoryMetrics
105
+ from ..models.scored_memory_update_metadata_type_0 import ScoredMemoryUpdateMetadataType0
106
+
107
+ d = src_dict.copy()
108
+ memory_id = d.pop("memory_id")
109
+
110
+ def _parse_value(data: object) -> Union[Unset, str]:
111
+ if isinstance(data, Unset):
112
+ return data
113
+ return cast(Union[Unset, str], data)
114
+
115
+ value = _parse_value(d.pop("value", UNSET))
116
+
117
+ def _parse_metadata(data: object) -> Union["ScoredMemoryUpdateMetadataType0", None, Unset]:
118
+ if data is None:
119
+ return data
120
+ if isinstance(data, Unset):
121
+ return data
122
+ try:
123
+ if not isinstance(data, dict):
124
+ raise TypeError()
125
+ metadata_type_0 = ScoredMemoryUpdateMetadataType0.from_dict(data)
126
+
127
+ return metadata_type_0
128
+ except: # noqa: E722
129
+ pass
130
+ return cast(Union["ScoredMemoryUpdateMetadataType0", None, Unset], data)
131
+
132
+ metadata = _parse_metadata(d.pop("metadata", UNSET))
133
+
134
+ def _parse_source_id(data: object) -> Union[None, Unset, str]:
135
+ if data is None:
136
+ return data
137
+ if isinstance(data, Unset):
138
+ return data
139
+ return cast(Union[None, Unset, str], data)
140
+
141
+ source_id = _parse_source_id(d.pop("source_id", UNSET))
142
+
143
+ score = d.pop("score", UNSET)
144
+
145
+ def _parse_metrics(data: object) -> Union["MemoryMetrics", None, Unset]:
146
+ if data is None:
147
+ return data
148
+ if isinstance(data, Unset):
149
+ return data
150
+ try:
151
+ if not isinstance(data, dict):
152
+ raise TypeError()
153
+ metrics_type_0 = MemoryMetrics.from_dict(data)
154
+
155
+ return metrics_type_0
156
+ except: # noqa: E722
157
+ pass
158
+ return cast(Union["MemoryMetrics", None, Unset], data)
159
+
160
+ metrics = _parse_metrics(d.pop("metrics", UNSET))
161
+
162
+ scored_memory_update = cls(
163
+ memory_id=memory_id,
164
+ value=value,
165
+ metadata=metadata,
166
+ source_id=source_id,
167
+ score=score,
168
+ metrics=metrics,
169
+ )
170
+
171
+ return scored_memory_update
@@ -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="ScoredMemoryUpdateMetadataType0")
19
+
20
+
21
+ @_attrs_define
22
+ class ScoredMemoryUpdateMetadataType0:
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
+ scored_memory_update_metadata_type_0 = 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
+ scored_memory_update_metadata_type_0.additional_properties = additional_properties
52
+ return scored_memory_update_metadata_type_0
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,193 @@
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.memory_metrics import MemoryMetrics
22
+ from ..models.scored_memory_with_feedback_metrics_feedback_metrics import (
23
+ ScoredMemoryWithFeedbackMetricsFeedbackMetrics,
24
+ )
25
+ from ..models.scored_memory_with_feedback_metrics_metadata import ScoredMemoryWithFeedbackMetricsMetadata
26
+
27
+
28
+ T = TypeVar("T", bound="ScoredMemoryWithFeedbackMetrics")
29
+
30
+
31
+ @_attrs_define
32
+ class ScoredMemoryWithFeedbackMetrics:
33
+ """
34
+ Attributes:
35
+ value (str):
36
+ embedding (List[float]):
37
+ source_id (Union[None, str]):
38
+ metadata (ScoredMemoryWithFeedbackMetricsMetadata):
39
+ memory_id (str):
40
+ memory_version (int):
41
+ created_at (datetime.datetime):
42
+ updated_at (datetime.datetime):
43
+ edited_at (datetime.datetime):
44
+ metrics (MemoryMetrics):
45
+ score (float):
46
+ feedback_metrics (ScoredMemoryWithFeedbackMetricsFeedbackMetrics):
47
+ lookup_count (int):
48
+ """
49
+
50
+ value: str
51
+ embedding: List[float]
52
+ source_id: Union[None, str]
53
+ metadata: "ScoredMemoryWithFeedbackMetricsMetadata"
54
+ memory_id: str
55
+ memory_version: int
56
+ created_at: datetime.datetime
57
+ updated_at: datetime.datetime
58
+ edited_at: datetime.datetime
59
+ metrics: "MemoryMetrics"
60
+ score: float
61
+ feedback_metrics: "ScoredMemoryWithFeedbackMetricsFeedbackMetrics"
62
+ lookup_count: int
63
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
64
+
65
+ def to_dict(self) -> dict[str, Any]:
66
+ value: str
67
+ value = self.value
68
+
69
+ embedding = self.embedding
70
+
71
+ source_id: Union[None, str]
72
+ source_id = self.source_id
73
+
74
+ metadata = self.metadata.to_dict()
75
+
76
+ memory_id = self.memory_id
77
+
78
+ memory_version = self.memory_version
79
+
80
+ created_at = self.created_at.isoformat()
81
+
82
+ updated_at = self.updated_at.isoformat()
83
+
84
+ edited_at = self.edited_at.isoformat()
85
+
86
+ metrics = self.metrics.to_dict()
87
+
88
+ score = self.score
89
+
90
+ feedback_metrics = self.feedback_metrics.to_dict()
91
+
92
+ lookup_count = self.lookup_count
93
+
94
+ field_dict: dict[str, Any] = {}
95
+ field_dict.update(self.additional_properties)
96
+ field_dict.update(
97
+ {
98
+ "value": value,
99
+ "embedding": embedding,
100
+ "source_id": source_id,
101
+ "metadata": metadata,
102
+ "memory_id": memory_id,
103
+ "memory_version": memory_version,
104
+ "created_at": created_at,
105
+ "updated_at": updated_at,
106
+ "edited_at": edited_at,
107
+ "metrics": metrics,
108
+ "score": score,
109
+ "feedback_metrics": feedback_metrics,
110
+ "lookup_count": lookup_count,
111
+ }
112
+ )
113
+
114
+ return field_dict
115
+
116
+ @classmethod
117
+ def from_dict(cls: Type[T], src_dict: dict[str, Any]) -> T:
118
+ from ..models.memory_metrics import MemoryMetrics
119
+ from ..models.scored_memory_with_feedback_metrics_feedback_metrics import (
120
+ ScoredMemoryWithFeedbackMetricsFeedbackMetrics,
121
+ )
122
+ from ..models.scored_memory_with_feedback_metrics_metadata import ScoredMemoryWithFeedbackMetricsMetadata
123
+
124
+ d = src_dict.copy()
125
+
126
+ def _parse_value(data: object) -> str:
127
+ return cast(str, data)
128
+
129
+ value = _parse_value(d.pop("value"))
130
+
131
+ embedding = cast(List[float], d.pop("embedding"))
132
+
133
+ def _parse_source_id(data: object) -> Union[None, str]:
134
+ if data is None:
135
+ return data
136
+ return cast(Union[None, str], data)
137
+
138
+ source_id = _parse_source_id(d.pop("source_id"))
139
+
140
+ metadata = ScoredMemoryWithFeedbackMetricsMetadata.from_dict(d.pop("metadata"))
141
+
142
+ memory_id = d.pop("memory_id")
143
+
144
+ memory_version = d.pop("memory_version")
145
+
146
+ created_at = isoparse(d.pop("created_at"))
147
+
148
+ updated_at = isoparse(d.pop("updated_at"))
149
+
150
+ edited_at = isoparse(d.pop("edited_at"))
151
+
152
+ metrics = MemoryMetrics.from_dict(d.pop("metrics"))
153
+
154
+ score = d.pop("score")
155
+
156
+ feedback_metrics = ScoredMemoryWithFeedbackMetricsFeedbackMetrics.from_dict(d.pop("feedback_metrics"))
157
+
158
+ lookup_count = d.pop("lookup_count")
159
+
160
+ scored_memory_with_feedback_metrics = cls(
161
+ value=value,
162
+ embedding=embedding,
163
+ source_id=source_id,
164
+ metadata=metadata,
165
+ memory_id=memory_id,
166
+ memory_version=memory_version,
167
+ created_at=created_at,
168
+ updated_at=updated_at,
169
+ edited_at=edited_at,
170
+ metrics=metrics,
171
+ score=score,
172
+ feedback_metrics=feedback_metrics,
173
+ lookup_count=lookup_count,
174
+ )
175
+
176
+ scored_memory_with_feedback_metrics.additional_properties = d
177
+ return scored_memory_with_feedback_metrics
178
+
179
+ @property
180
+ def additional_keys(self) -> list[str]:
181
+ return list(self.additional_properties.keys())
182
+
183
+ def __getitem__(self, key: str) -> Any:
184
+ return self.additional_properties[key]
185
+
186
+ def __setitem__(self, key: str, value: Any) -> None:
187
+ self.additional_properties[key] = value
188
+
189
+ def __delitem__(self, key: str) -> None:
190
+ del self.additional_properties[key]
191
+
192
+ def __contains__(self, key: str) -> bool:
193
+ return key in self.additional_properties
@@ -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 TYPE_CHECKING, Any, Type, TypeVar
14
+
15
+ from attrs import define as _attrs_define
16
+ from attrs import field as _attrs_field
17
+
18
+ if TYPE_CHECKING:
19
+ from ..models.feedback_metrics import FeedbackMetrics
20
+
21
+
22
+ T = TypeVar("T", bound="ScoredMemoryWithFeedbackMetricsFeedbackMetrics")
23
+
24
+
25
+ @_attrs_define
26
+ class ScoredMemoryWithFeedbackMetricsFeedbackMetrics:
27
+ """ """
28
+
29
+ additional_properties: dict[str, "FeedbackMetrics"] = _attrs_field(init=False, factory=dict)
30
+
31
+ def to_dict(self) -> dict[str, Any]:
32
+ field_dict: dict[str, Any] = {}
33
+ for prop_name, prop in self.additional_properties.items():
34
+ field_dict[prop_name] = prop.to_dict()
35
+
36
+ return field_dict
37
+
38
+ @classmethod
39
+ def from_dict(cls: Type[T], src_dict: dict[str, Any]) -> T:
40
+ from ..models.feedback_metrics import FeedbackMetrics
41
+
42
+ d = src_dict.copy()
43
+ scored_memory_with_feedback_metrics_feedback_metrics = cls()
44
+
45
+ additional_properties = {}
46
+ for prop_name, prop_dict in d.items():
47
+ additional_property = FeedbackMetrics.from_dict(prop_dict)
48
+
49
+ additional_properties[prop_name] = additional_property
50
+
51
+ scored_memory_with_feedback_metrics_feedback_metrics.additional_properties = additional_properties
52
+ return scored_memory_with_feedback_metrics_feedback_metrics
53
+
54
+ @property
55
+ def additional_keys(self) -> list[str]:
56
+ return list(self.additional_properties.keys())
57
+
58
+ def __getitem__(self, key: str) -> "FeedbackMetrics":
59
+ return self.additional_properties[key]
60
+
61
+ def __setitem__(self, key: str, value: "FeedbackMetrics") -> 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,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="ScoredMemoryWithFeedbackMetricsMetadata")
19
+
20
+
21
+ @_attrs_define
22
+ class ScoredMemoryWithFeedbackMetricsMetadata:
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
+ scored_memory_with_feedback_metrics_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
+ scored_memory_with_feedback_metrics_metadata.additional_properties = additional_properties
52
+ return scored_memory_with_feedback_metrics_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
@@ -25,11 +25,13 @@ class UpdatePredictionRequest:
25
25
  """
26
26
  Attributes:
27
27
  expected_label (Union[None, Unset, int]):
28
+ expected_score (Union[None, Unset, float]):
28
29
  tags (Union[Unset, List[str]]):
29
30
  memory_id (Union[None, Unset, str]):
30
31
  """
31
32
 
32
33
  expected_label: Union[None, Unset, int] = UNSET
34
+ expected_score: Union[None, Unset, float] = UNSET
33
35
  tags: Union[Unset, List[str]] = UNSET
34
36
  memory_id: Union[None, Unset, str] = UNSET
35
37
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
@@ -41,6 +43,12 @@ class UpdatePredictionRequest:
41
43
  else:
42
44
  expected_label = self.expected_label
43
45
 
46
+ expected_score: Union[None, Unset, float]
47
+ if isinstance(self.expected_score, Unset):
48
+ expected_score = UNSET
49
+ else:
50
+ expected_score = self.expected_score
51
+
44
52
  tags: Union[Unset, List[str]] = UNSET
45
53
  if not isinstance(self.tags, Unset):
46
54
  tags = self.tags
@@ -56,6 +64,8 @@ class UpdatePredictionRequest:
56
64
  field_dict.update({})
57
65
  if expected_label is not UNSET:
58
66
  field_dict["expected_label"] = expected_label
67
+ if expected_score is not UNSET:
68
+ field_dict["expected_score"] = expected_score
59
69
  if tags is not UNSET:
60
70
  field_dict["tags"] = tags
61
71
  if memory_id is not UNSET:
@@ -76,6 +86,15 @@ class UpdatePredictionRequest:
76
86
 
77
87
  expected_label = _parse_expected_label(d.pop("expected_label", UNSET))
78
88
 
89
+ def _parse_expected_score(data: object) -> Union[None, Unset, float]:
90
+ if data is None:
91
+ return data
92
+ if isinstance(data, Unset):
93
+ return data
94
+ return cast(Union[None, Unset, float], data)
95
+
96
+ expected_score = _parse_expected_score(d.pop("expected_score", UNSET))
97
+
79
98
  tags = cast(List[str], d.pop("tags", UNSET))
80
99
 
81
100
  def _parse_memory_id(data: object) -> Union[None, Unset, str]:
@@ -89,6 +108,7 @@ class UpdatePredictionRequest:
89
108
 
90
109
  update_prediction_request = cls(
91
110
  expected_label=expected_label,
111
+ expected_score=expected_score,
92
112
  tags=tags,
93
113
  memory_id=memory_id,
94
114
  )