everyrow 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 (183) hide show
  1. everyrow/__init__.py +4 -0
  2. everyrow/api_utils.py +45 -0
  3. everyrow/citations.py +46 -0
  4. everyrow/constants.py +4 -0
  5. everyrow/generated/__init__.py +8 -0
  6. everyrow/generated/api/__init__.py +1 -0
  7. everyrow/generated/api/default/__init__.py +1 -0
  8. everyrow/generated/api/default/continue_task_endpoint_tasks_continue_post.py +208 -0
  9. everyrow/generated/api/default/copy_artifacts_artifacts_copy_post.py +166 -0
  10. everyrow/generated/api/default/copy_workflow_endpoint_workflows_copy_post.py +166 -0
  11. everyrow/generated/api/default/create_api_key_endpoint_api_keys_create_post.py +186 -0
  12. everyrow/generated/api/default/create_session_endpoint_sessions_create_post.py +198 -0
  13. everyrow/generated/api/default/create_workflow_from_artifact_workflows_from_artifact_post.py +174 -0
  14. everyrow/generated/api/default/export_to_google_sheets_export_post.py +168 -0
  15. everyrow/generated/api/default/generate_feedback_endpoint_tasks_generate_feedback_post.py +186 -0
  16. everyrow/generated/api/default/get_artifacts_artifacts_get.py +260 -0
  17. everyrow/generated/api/default/get_default_timeout_seconds_models_default_timeout_seconds_get.py +165 -0
  18. everyrow/generated/api/default/get_job_progress_for_task_jobs_progress_get.py +167 -0
  19. everyrow/generated/api/default/get_metrics_metrics_get.py +80 -0
  20. everyrow/generated/api/default/get_queues_stats_jobs_queues_get.py +123 -0
  21. everyrow/generated/api/default/get_task_status_endpoint_tasks_task_id_status_get.py +193 -0
  22. everyrow/generated/api/default/get_user_usage_usage_get.py +123 -0
  23. everyrow/generated/api/default/healthz_healthz_get.py +127 -0
  24. everyrow/generated/api/default/import_from_google_sheets_import_post.py +170 -0
  25. everyrow/generated/api/default/interrupt_chat_task_tasks_chat_interrupt_post.py +172 -0
  26. everyrow/generated/api/default/list_api_keys_endpoint_api_keys_get.py +186 -0
  27. everyrow/generated/api/default/re_execute_task_endpoint_tasks_re_execute_post.py +192 -0
  28. everyrow/generated/api/default/revoke_api_key_endpoint_api_keys_key_id_revoke_post.py +181 -0
  29. everyrow/generated/api/default/revoke_jobs_for_task_jobs_revoke_post.py +164 -0
  30. everyrow/generated/api/default/rollback_to_message_endpoint_tasks_chat_rollback_post.py +186 -0
  31. everyrow/generated/api/default/submit_chat_task_tasks_chat_post.py +164 -0
  32. everyrow/generated/api/default/submit_task_tasks_post.py +172 -0
  33. everyrow/generated/api/default/task_resource_estimation_task_resource_estimation_post.py +319 -0
  34. everyrow/generated/api/default/trigger_workflow_execution_endpoint_workflows_trigger_post.py +166 -0
  35. everyrow/generated/api/default/whoami_whoami_get.py +127 -0
  36. everyrow/generated/client.py +268 -0
  37. everyrow/generated/errors.py +16 -0
  38. everyrow/generated/models/__init__.py +281 -0
  39. everyrow/generated/models/agent_improvement_instruction.py +69 -0
  40. everyrow/generated/models/agent_query_params.py +362 -0
  41. everyrow/generated/models/agent_query_params_system_prompt_kind_type_0.py +10 -0
  42. everyrow/generated/models/agent_task_args.py +163 -0
  43. everyrow/generated/models/agent_task_args_processing_mode.py +9 -0
  44. everyrow/generated/models/allowed_suggestions.py +8 -0
  45. everyrow/generated/models/api_key_info.py +163 -0
  46. everyrow/generated/models/artifact_changed_payload.py +89 -0
  47. everyrow/generated/models/artifact_group_record.py +330 -0
  48. everyrow/generated/models/artifact_group_record_metadata_type_0.py +46 -0
  49. everyrow/generated/models/artifact_group_record_trace_mapping_type_0.py +46 -0
  50. everyrow/generated/models/artifact_status.py +14 -0
  51. everyrow/generated/models/auto_cohort_conversation_message.py +533 -0
  52. everyrow/generated/models/aux_data.py +128 -0
  53. everyrow/generated/models/aux_data_source_bank.py +59 -0
  54. everyrow/generated/models/chat_completion_message_tool_call.py +46 -0
  55. everyrow/generated/models/chat_message_metadata.py +193 -0
  56. everyrow/generated/models/concatenate_query_params.py +46 -0
  57. everyrow/generated/models/concatenate_request.py +306 -0
  58. everyrow/generated/models/continue_reason.py +9 -0
  59. everyrow/generated/models/continue_task_request.py +133 -0
  60. everyrow/generated/models/controller_improvement_round.py +79 -0
  61. everyrow/generated/models/conversation_changed_payload.py +89 -0
  62. everyrow/generated/models/copy_artifacts_request.py +70 -0
  63. everyrow/generated/models/copy_artifacts_response.py +70 -0
  64. everyrow/generated/models/copy_workflow_request.py +62 -0
  65. everyrow/generated/models/copy_workflow_response.py +70 -0
  66. everyrow/generated/models/create_api_key_request.py +95 -0
  67. everyrow/generated/models/create_api_key_response.py +96 -0
  68. everyrow/generated/models/create_group_query_params.py +61 -0
  69. everyrow/generated/models/create_group_request.py +305 -0
  70. everyrow/generated/models/create_query_params.py +61 -0
  71. everyrow/generated/models/create_request.py +305 -0
  72. everyrow/generated/models/create_session_request.py +62 -0
  73. everyrow/generated/models/create_session_response.py +63 -0
  74. everyrow/generated/models/create_workflow_from_artifact_request.py +92 -0
  75. everyrow/generated/models/create_workflow_from_artifact_response.py +70 -0
  76. everyrow/generated/models/data_frame_method.py +18 -0
  77. everyrow/generated/models/date_cutoffs.py +145 -0
  78. everyrow/generated/models/dedupe_mode.py +9 -0
  79. everyrow/generated/models/dedupe_query_params.py +174 -0
  80. everyrow/generated/models/dedupe_request_params.py +311 -0
  81. everyrow/generated/models/deep_merge_public_params.py +143 -0
  82. everyrow/generated/models/deep_merge_request.py +313 -0
  83. everyrow/generated/models/deep_rank_public_params.py +99 -0
  84. everyrow/generated/models/deep_rank_request.py +313 -0
  85. everyrow/generated/models/deep_screen_public_params.py +122 -0
  86. everyrow/generated/models/deep_screen_request.py +313 -0
  87. everyrow/generated/models/derive_expression.py +69 -0
  88. everyrow/generated/models/derive_query_params.py +75 -0
  89. everyrow/generated/models/derive_request.py +307 -0
  90. everyrow/generated/models/document_query_tool.py +12 -0
  91. everyrow/generated/models/drop_columns_query_params.py +61 -0
  92. everyrow/generated/models/drop_columns_request.py +305 -0
  93. everyrow/generated/models/embedding_models.py +9 -0
  94. everyrow/generated/models/event_type.py +14 -0
  95. everyrow/generated/models/execution_metadata.py +146 -0
  96. everyrow/generated/models/export_request.py +75 -0
  97. everyrow/generated/models/export_request_token_data.py +46 -0
  98. everyrow/generated/models/export_to_google_sheets_export_post_response_export_to_google_sheets_export_post.py +46 -0
  99. everyrow/generated/models/filter_query_params.py +91 -0
  100. everyrow/generated/models/filter_request.py +305 -0
  101. everyrow/generated/models/flatten_query_params.py +46 -0
  102. everyrow/generated/models/flatten_request.py +305 -0
  103. everyrow/generated/models/generate_feedback_request.py +62 -0
  104. everyrow/generated/models/group_by_query_params.py +62 -0
  105. everyrow/generated/models/group_by_request.py +305 -0
  106. everyrow/generated/models/healthz_healthz_get_response_healthz_healthz_get.py +46 -0
  107. everyrow/generated/models/http_validation_error.py +79 -0
  108. everyrow/generated/models/image_chat_content_part.py +80 -0
  109. everyrow/generated/models/image_chat_content_part_image_url.py +46 -0
  110. everyrow/generated/models/import_from_google_sheets_import_post_response_import_from_google_sheets_import_post.py +46 -0
  111. everyrow/generated/models/import_request.py +83 -0
  112. everyrow/generated/models/import_request_token_data.py +46 -0
  113. everyrow/generated/models/insufficient_balance_error.py +81 -0
  114. everyrow/generated/models/join_query_params.py +73 -0
  115. everyrow/generated/models/join_request.py +305 -0
  116. everyrow/generated/models/llm_enum.py +54 -0
  117. everyrow/generated/models/map_agent_request_params.py +313 -0
  118. everyrow/generated/models/map_multi_agent_request_params.py +313 -0
  119. everyrow/generated/models/message_created_payload.py +98 -0
  120. everyrow/generated/models/multi_agent_effort_level.py +10 -0
  121. everyrow/generated/models/multi_agent_query_params.py +264 -0
  122. everyrow/generated/models/multi_modal_chat_message.py +160 -0
  123. everyrow/generated/models/multi_modal_chat_message_role.py +10 -0
  124. everyrow/generated/models/preview_metadata.py +144 -0
  125. everyrow/generated/models/processing_mode.py +10 -0
  126. everyrow/generated/models/progress_status.py +83 -0
  127. everyrow/generated/models/queue_stats.py +77 -0
  128. everyrow/generated/models/reduce_agent_request_params.py +305 -0
  129. everyrow/generated/models/reduce_multi_agent_request_params.py +305 -0
  130. everyrow/generated/models/resource_estimation_response.py +85 -0
  131. everyrow/generated/models/response_schema_type.py +9 -0
  132. everyrow/generated/models/revoke_api_key_response.py +61 -0
  133. everyrow/generated/models/rollback_to_message_request.py +62 -0
  134. everyrow/generated/models/rollback_to_message_response.py +77 -0
  135. everyrow/generated/models/session_changed_payload.py +69 -0
  136. everyrow/generated/models/simple_chat_message.py +121 -0
  137. everyrow/generated/models/simple_chat_message_role.py +10 -0
  138. everyrow/generated/models/simple_chat_message_with_tool_calls.py +156 -0
  139. everyrow/generated/models/source_database_entry.py +92 -0
  140. everyrow/generated/models/standalone_artifact_record.py +278 -0
  141. everyrow/generated/models/standalone_artifact_record_metadata_type_0.py +46 -0
  142. everyrow/generated/models/standalone_artifact_record_trace_mapping_type_0.py +46 -0
  143. everyrow/generated/models/status_count.py +71 -0
  144. everyrow/generated/models/status_count_status.py +13 -0
  145. everyrow/generated/models/submit_chat_task_body.py +497 -0
  146. everyrow/generated/models/submit_chat_task_body_selected_task_type_type_0.py +11 -0
  147. everyrow/generated/models/submit_task_body.py +745 -0
  148. everyrow/generated/models/task_changed_payload.py +105 -0
  149. everyrow/generated/models/task_effort.py +10 -0
  150. everyrow/generated/models/task_id_request.py +62 -0
  151. everyrow/generated/models/task_insert.py +725 -0
  152. everyrow/generated/models/task_insert_query_params.py +46 -0
  153. everyrow/generated/models/task_metadata.py +323 -0
  154. everyrow/generated/models/task_metadata_cols_to_rename_type_0.py +46 -0
  155. everyrow/generated/models/task_response.py +62 -0
  156. everyrow/generated/models/task_status.py +12 -0
  157. everyrow/generated/models/task_status_response.py +112 -0
  158. everyrow/generated/models/task_type.py +31 -0
  159. everyrow/generated/models/text_chat_content_part.py +74 -0
  160. everyrow/generated/models/tool_response_message.py +127 -0
  161. everyrow/generated/models/toolkit_constants.py +80 -0
  162. everyrow/generated/models/trace_changed_payload.py +94 -0
  163. everyrow/generated/models/trace_info.py +78 -0
  164. everyrow/generated/models/trigger_workflow_execution_request.py +112 -0
  165. everyrow/generated/models/trigger_workflow_execution_request_task_params.py +65 -0
  166. everyrow/generated/models/trigger_workflow_execution_request_task_params_additional_property.py +46 -0
  167. everyrow/generated/models/trigger_workflow_execution_response.py +69 -0
  168. everyrow/generated/models/upload_csv_payload.py +310 -0
  169. everyrow/generated/models/upload_csv_query_params.py +114 -0
  170. everyrow/generated/models/usage_response.py +77 -0
  171. everyrow/generated/models/validation_error.py +90 -0
  172. everyrow/generated/models/whoami_whoami_get_response_whoami_whoami_get.py +46 -0
  173. everyrow/generated/models/workflow_leaf_node_input.py +70 -0
  174. everyrow/generated/py.typed +1 -0
  175. everyrow/generated/types.py +54 -0
  176. everyrow/ops.py +672 -0
  177. everyrow/result.py +25 -0
  178. everyrow/session.py +53 -0
  179. everyrow/task.py +143 -0
  180. everyrow-0.1.0.dist-info/METADATA +238 -0
  181. everyrow-0.1.0.dist-info/RECORD +183 -0
  182. everyrow-0.1.0.dist-info/WHEEL +4 -0
  183. everyrow-0.1.0.dist-info/licenses/LICENSE.txt +21 -0
@@ -0,0 +1,305 @@
1
+ from __future__ import annotations
2
+
3
+ from collections.abc import Mapping
4
+ from typing import TYPE_CHECKING, Any, Literal, TypeVar, cast
5
+ from uuid import UUID
6
+
7
+ from attrs import define as _attrs_define
8
+ from attrs import field as _attrs_field
9
+
10
+ from ..types import UNSET, Unset
11
+
12
+ if TYPE_CHECKING:
13
+ from ..models.create_query_params import CreateQueryParams
14
+
15
+
16
+ T = TypeVar("T", bound="CreateRequest")
17
+
18
+
19
+ @_attrs_define
20
+ class CreateRequest:
21
+ """Request to create a standalone artifact from provided data.
22
+
23
+ Attributes:
24
+ query (CreateQueryParams):
25
+ input_artifacts (list[UUID] | None | Unset):
26
+ context_artifacts (list[UUID] | None | Unset):
27
+ label (None | str | Unset): Short task label for use in the UI
28
+ description (None | str | Unset): Task description for use in the UI
29
+ task_id (None | Unset | UUID):
30
+ replaces_task_id (None | Unset | UUID): The ID of the task that this task replaces. Used e.g. by the full
31
+ version of a task that replaces a preview version.
32
+ twin_artifact_id (None | Unset | UUID): The ID of a reference artifact, e.g. the right table in Deep Merge
33
+ operation.
34
+ task_type (Literal['create'] | Unset): Default: 'create'.
35
+ processing_mode (Literal['transform'] | Unset): Default: 'transform'.
36
+ """
37
+
38
+ query: CreateQueryParams
39
+ input_artifacts: list[UUID] | None | Unset = UNSET
40
+ context_artifacts: list[UUID] | None | Unset = UNSET
41
+ label: None | str | Unset = UNSET
42
+ description: None | str | Unset = UNSET
43
+ task_id: None | Unset | UUID = UNSET
44
+ replaces_task_id: None | Unset | UUID = UNSET
45
+ twin_artifact_id: None | Unset | UUID = UNSET
46
+ task_type: Literal["create"] | Unset = "create"
47
+ processing_mode: Literal["transform"] | Unset = "transform"
48
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
49
+
50
+ def to_dict(self) -> dict[str, Any]:
51
+ query = self.query.to_dict()
52
+
53
+ input_artifacts: list[str] | None | Unset
54
+ if isinstance(self.input_artifacts, Unset):
55
+ input_artifacts = UNSET
56
+ elif isinstance(self.input_artifacts, list):
57
+ input_artifacts = []
58
+ for componentsschemas_input_artifacts_ids_item_data in self.input_artifacts:
59
+ componentsschemas_input_artifacts_ids_item = str(componentsschemas_input_artifacts_ids_item_data)
60
+ input_artifacts.append(componentsschemas_input_artifacts_ids_item)
61
+
62
+ else:
63
+ input_artifacts = self.input_artifacts
64
+
65
+ context_artifacts: list[str] | None | Unset
66
+ if isinstance(self.context_artifacts, Unset):
67
+ context_artifacts = UNSET
68
+ elif isinstance(self.context_artifacts, list):
69
+ context_artifacts = []
70
+ for componentsschemas_context_artifacts_ids_item_data in self.context_artifacts:
71
+ componentsschemas_context_artifacts_ids_item = str(componentsschemas_context_artifacts_ids_item_data)
72
+ context_artifacts.append(componentsschemas_context_artifacts_ids_item)
73
+
74
+ else:
75
+ context_artifacts = self.context_artifacts
76
+
77
+ label: None | str | Unset
78
+ if isinstance(self.label, Unset):
79
+ label = UNSET
80
+ else:
81
+ label = self.label
82
+
83
+ description: None | str | Unset
84
+ if isinstance(self.description, Unset):
85
+ description = UNSET
86
+ else:
87
+ description = self.description
88
+
89
+ task_id: None | str | Unset
90
+ if isinstance(self.task_id, Unset):
91
+ task_id = UNSET
92
+ elif isinstance(self.task_id, UUID):
93
+ task_id = str(self.task_id)
94
+ else:
95
+ task_id = self.task_id
96
+
97
+ replaces_task_id: None | str | Unset
98
+ if isinstance(self.replaces_task_id, Unset):
99
+ replaces_task_id = UNSET
100
+ elif isinstance(self.replaces_task_id, UUID):
101
+ replaces_task_id = str(self.replaces_task_id)
102
+ else:
103
+ replaces_task_id = self.replaces_task_id
104
+
105
+ twin_artifact_id: None | str | Unset
106
+ if isinstance(self.twin_artifact_id, Unset):
107
+ twin_artifact_id = UNSET
108
+ elif isinstance(self.twin_artifact_id, UUID):
109
+ twin_artifact_id = str(self.twin_artifact_id)
110
+ else:
111
+ twin_artifact_id = self.twin_artifact_id
112
+
113
+ task_type = self.task_type
114
+
115
+ processing_mode = self.processing_mode
116
+
117
+ field_dict: dict[str, Any] = {}
118
+ field_dict.update(self.additional_properties)
119
+ field_dict.update(
120
+ {
121
+ "query": query,
122
+ }
123
+ )
124
+ if input_artifacts is not UNSET:
125
+ field_dict["input_artifacts"] = input_artifacts
126
+ if context_artifacts is not UNSET:
127
+ field_dict["context_artifacts"] = context_artifacts
128
+ if label is not UNSET:
129
+ field_dict["label"] = label
130
+ if description is not UNSET:
131
+ field_dict["description"] = description
132
+ if task_id is not UNSET:
133
+ field_dict["task_id"] = task_id
134
+ if replaces_task_id is not UNSET:
135
+ field_dict["replaces_task_id"] = replaces_task_id
136
+ if twin_artifact_id is not UNSET:
137
+ field_dict["twin_artifact_id"] = twin_artifact_id
138
+ if task_type is not UNSET:
139
+ field_dict["task_type"] = task_type
140
+ if processing_mode is not UNSET:
141
+ field_dict["processing_mode"] = processing_mode
142
+
143
+ return field_dict
144
+
145
+ @classmethod
146
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
147
+ from ..models.create_query_params import CreateQueryParams
148
+
149
+ d = dict(src_dict)
150
+ query = CreateQueryParams.from_dict(d.pop("query"))
151
+
152
+ def _parse_input_artifacts(data: object) -> list[UUID] | None | Unset:
153
+ if data is None:
154
+ return data
155
+ if isinstance(data, Unset):
156
+ return data
157
+ try:
158
+ if not isinstance(data, list):
159
+ raise TypeError()
160
+ input_artifacts_type_0 = []
161
+ _input_artifacts_type_0 = data
162
+ for componentsschemas_input_artifacts_ids_item_data in _input_artifacts_type_0:
163
+ componentsschemas_input_artifacts_ids_item = UUID(componentsschemas_input_artifacts_ids_item_data)
164
+
165
+ input_artifacts_type_0.append(componentsschemas_input_artifacts_ids_item)
166
+
167
+ return input_artifacts_type_0
168
+ except (TypeError, ValueError, AttributeError, KeyError):
169
+ pass
170
+ return cast(list[UUID] | None | Unset, data)
171
+
172
+ input_artifacts = _parse_input_artifacts(d.pop("input_artifacts", UNSET))
173
+
174
+ def _parse_context_artifacts(data: object) -> list[UUID] | None | Unset:
175
+ if data is None:
176
+ return data
177
+ if isinstance(data, Unset):
178
+ return data
179
+ try:
180
+ if not isinstance(data, list):
181
+ raise TypeError()
182
+ context_artifacts_type_0 = []
183
+ _context_artifacts_type_0 = data
184
+ for componentsschemas_context_artifacts_ids_item_data in _context_artifacts_type_0:
185
+ componentsschemas_context_artifacts_ids_item = UUID(
186
+ componentsschemas_context_artifacts_ids_item_data
187
+ )
188
+
189
+ context_artifacts_type_0.append(componentsschemas_context_artifacts_ids_item)
190
+
191
+ return context_artifacts_type_0
192
+ except (TypeError, ValueError, AttributeError, KeyError):
193
+ pass
194
+ return cast(list[UUID] | None | Unset, data)
195
+
196
+ context_artifacts = _parse_context_artifacts(d.pop("context_artifacts", UNSET))
197
+
198
+ def _parse_label(data: object) -> None | str | Unset:
199
+ if data is None:
200
+ return data
201
+ if isinstance(data, Unset):
202
+ return data
203
+ return cast(None | str | Unset, data)
204
+
205
+ label = _parse_label(d.pop("label", UNSET))
206
+
207
+ def _parse_description(data: object) -> None | str | Unset:
208
+ if data is None:
209
+ return data
210
+ if isinstance(data, Unset):
211
+ return data
212
+ return cast(None | str | Unset, data)
213
+
214
+ description = _parse_description(d.pop("description", UNSET))
215
+
216
+ def _parse_task_id(data: object) -> None | Unset | UUID:
217
+ if data is None:
218
+ return data
219
+ if isinstance(data, Unset):
220
+ return data
221
+ try:
222
+ if not isinstance(data, str):
223
+ raise TypeError()
224
+ task_id_type_0 = UUID(data)
225
+
226
+ return task_id_type_0
227
+ except (TypeError, ValueError, AttributeError, KeyError):
228
+ pass
229
+ return cast(None | Unset | UUID, data)
230
+
231
+ task_id = _parse_task_id(d.pop("task_id", UNSET))
232
+
233
+ def _parse_replaces_task_id(data: object) -> None | Unset | UUID:
234
+ if data is None:
235
+ return data
236
+ if isinstance(data, Unset):
237
+ return data
238
+ try:
239
+ if not isinstance(data, str):
240
+ raise TypeError()
241
+ replaces_task_id_type_0 = UUID(data)
242
+
243
+ return replaces_task_id_type_0
244
+ except (TypeError, ValueError, AttributeError, KeyError):
245
+ pass
246
+ return cast(None | Unset | UUID, data)
247
+
248
+ replaces_task_id = _parse_replaces_task_id(d.pop("replaces_task_id", UNSET))
249
+
250
+ def _parse_twin_artifact_id(data: object) -> None | Unset | UUID:
251
+ if data is None:
252
+ return data
253
+ if isinstance(data, Unset):
254
+ return data
255
+ try:
256
+ if not isinstance(data, str):
257
+ raise TypeError()
258
+ twin_artifact_id_type_0 = UUID(data)
259
+
260
+ return twin_artifact_id_type_0
261
+ except (TypeError, ValueError, AttributeError, KeyError):
262
+ pass
263
+ return cast(None | Unset | UUID, data)
264
+
265
+ twin_artifact_id = _parse_twin_artifact_id(d.pop("twin_artifact_id", UNSET))
266
+
267
+ task_type = cast(Literal["create"] | Unset, d.pop("task_type", UNSET))
268
+ if task_type != "create" and not isinstance(task_type, Unset):
269
+ raise ValueError(f"task_type must match const 'create', got '{task_type}'")
270
+
271
+ processing_mode = cast(Literal["transform"] | Unset, d.pop("processing_mode", UNSET))
272
+ if processing_mode != "transform" and not isinstance(processing_mode, Unset):
273
+ raise ValueError(f"processing_mode must match const 'transform', got '{processing_mode}'")
274
+
275
+ create_request = cls(
276
+ query=query,
277
+ input_artifacts=input_artifacts,
278
+ context_artifacts=context_artifacts,
279
+ label=label,
280
+ description=description,
281
+ task_id=task_id,
282
+ replaces_task_id=replaces_task_id,
283
+ twin_artifact_id=twin_artifact_id,
284
+ task_type=task_type,
285
+ processing_mode=processing_mode,
286
+ )
287
+
288
+ create_request.additional_properties = d
289
+ return create_request
290
+
291
+ @property
292
+ def additional_keys(self) -> list[str]:
293
+ return list(self.additional_properties.keys())
294
+
295
+ def __getitem__(self, key: str) -> Any:
296
+ return self.additional_properties[key]
297
+
298
+ def __setitem__(self, key: str, value: Any) -> None:
299
+ self.additional_properties[key] = value
300
+
301
+ def __delitem__(self, key: str) -> None:
302
+ del self.additional_properties[key]
303
+
304
+ def __contains__(self, key: str) -> bool:
305
+ return key in self.additional_properties
@@ -0,0 +1,62 @@
1
+ from __future__ import annotations
2
+
3
+ from collections.abc import Mapping
4
+ from typing import Any, TypeVar
5
+
6
+ from attrs import define as _attrs_define
7
+ from attrs import field as _attrs_field
8
+
9
+ T = TypeVar("T", bound="CreateSessionRequest")
10
+
11
+
12
+ @_attrs_define
13
+ class CreateSessionRequest:
14
+ """Request to create a new session.
15
+
16
+ Attributes:
17
+ name (str): Name of the session
18
+ """
19
+
20
+ name: str
21
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
22
+
23
+ def to_dict(self) -> dict[str, Any]:
24
+ name = self.name
25
+
26
+ field_dict: dict[str, Any] = {}
27
+ field_dict.update(self.additional_properties)
28
+ field_dict.update(
29
+ {
30
+ "name": name,
31
+ }
32
+ )
33
+
34
+ return field_dict
35
+
36
+ @classmethod
37
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
38
+ d = dict(src_dict)
39
+ name = d.pop("name")
40
+
41
+ create_session_request = cls(
42
+ name=name,
43
+ )
44
+
45
+ create_session_request.additional_properties = d
46
+ return create_session_request
47
+
48
+ @property
49
+ def additional_keys(self) -> list[str]:
50
+ return list(self.additional_properties.keys())
51
+
52
+ def __getitem__(self, key: str) -> Any:
53
+ return self.additional_properties[key]
54
+
55
+ def __setitem__(self, key: str, value: Any) -> None:
56
+ self.additional_properties[key] = value
57
+
58
+ def __delitem__(self, key: str) -> None:
59
+ del self.additional_properties[key]
60
+
61
+ def __contains__(self, key: str) -> bool:
62
+ return key in self.additional_properties
@@ -0,0 +1,63 @@
1
+ from __future__ import annotations
2
+
3
+ from collections.abc import Mapping
4
+ from typing import Any, TypeVar
5
+ from uuid import UUID
6
+
7
+ from attrs import define as _attrs_define
8
+ from attrs import field as _attrs_field
9
+
10
+ T = TypeVar("T", bound="CreateSessionResponse")
11
+
12
+
13
+ @_attrs_define
14
+ class CreateSessionResponse:
15
+ """Response containing the created session ID.
16
+
17
+ Attributes:
18
+ session_id (UUID):
19
+ """
20
+
21
+ session_id: UUID
22
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
23
+
24
+ def to_dict(self) -> dict[str, Any]:
25
+ session_id = str(self.session_id)
26
+
27
+ field_dict: dict[str, Any] = {}
28
+ field_dict.update(self.additional_properties)
29
+ field_dict.update(
30
+ {
31
+ "session_id": session_id,
32
+ }
33
+ )
34
+
35
+ return field_dict
36
+
37
+ @classmethod
38
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
39
+ d = dict(src_dict)
40
+ session_id = UUID(d.pop("session_id"))
41
+
42
+ create_session_response = cls(
43
+ session_id=session_id,
44
+ )
45
+
46
+ create_session_response.additional_properties = d
47
+ return create_session_response
48
+
49
+ @property
50
+ def additional_keys(self) -> list[str]:
51
+ return list(self.additional_properties.keys())
52
+
53
+ def __getitem__(self, key: str) -> Any:
54
+ return self.additional_properties[key]
55
+
56
+ def __setitem__(self, key: str, value: Any) -> None:
57
+ self.additional_properties[key] = value
58
+
59
+ def __delitem__(self, key: str) -> None:
60
+ del self.additional_properties[key]
61
+
62
+ def __contains__(self, key: str) -> bool:
63
+ return key in self.additional_properties
@@ -0,0 +1,92 @@
1
+ from __future__ import annotations
2
+
3
+ from collections.abc import Mapping
4
+ from typing import Any, TypeVar, cast
5
+ from uuid import UUID
6
+
7
+ from attrs import define as _attrs_define
8
+ from attrs import field as _attrs_field
9
+
10
+ from ..types import UNSET, Unset
11
+
12
+ T = TypeVar("T", bound="CreateWorkflowFromArtifactRequest")
13
+
14
+
15
+ @_attrs_define
16
+ class CreateWorkflowFromArtifactRequest:
17
+ """
18
+ Attributes:
19
+ artifact_id (UUID):
20
+ name (str):
21
+ description (None | str | Unset):
22
+ """
23
+
24
+ artifact_id: UUID
25
+ name: str
26
+ description: None | str | Unset = UNSET
27
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
28
+
29
+ def to_dict(self) -> dict[str, Any]:
30
+ artifact_id = str(self.artifact_id)
31
+
32
+ name = self.name
33
+
34
+ description: None | str | Unset
35
+ if isinstance(self.description, Unset):
36
+ description = UNSET
37
+ else:
38
+ description = self.description
39
+
40
+ field_dict: dict[str, Any] = {}
41
+ field_dict.update(self.additional_properties)
42
+ field_dict.update(
43
+ {
44
+ "artifact_id": artifact_id,
45
+ "name": name,
46
+ }
47
+ )
48
+ if description is not UNSET:
49
+ field_dict["description"] = description
50
+
51
+ return field_dict
52
+
53
+ @classmethod
54
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
55
+ d = dict(src_dict)
56
+ artifact_id = UUID(d.pop("artifact_id"))
57
+
58
+ name = d.pop("name")
59
+
60
+ def _parse_description(data: object) -> None | str | Unset:
61
+ if data is None:
62
+ return data
63
+ if isinstance(data, Unset):
64
+ return data
65
+ return cast(None | str | Unset, data)
66
+
67
+ description = _parse_description(d.pop("description", UNSET))
68
+
69
+ create_workflow_from_artifact_request = cls(
70
+ artifact_id=artifact_id,
71
+ name=name,
72
+ description=description,
73
+ )
74
+
75
+ create_workflow_from_artifact_request.additional_properties = d
76
+ return create_workflow_from_artifact_request
77
+
78
+ @property
79
+ def additional_keys(self) -> list[str]:
80
+ return list(self.additional_properties.keys())
81
+
82
+ def __getitem__(self, key: str) -> Any:
83
+ return self.additional_properties[key]
84
+
85
+ def __setitem__(self, key: str, value: Any) -> None:
86
+ self.additional_properties[key] = value
87
+
88
+ def __delitem__(self, key: str) -> None:
89
+ del self.additional_properties[key]
90
+
91
+ def __contains__(self, key: str) -> bool:
92
+ return key in self.additional_properties
@@ -0,0 +1,70 @@
1
+ from __future__ import annotations
2
+
3
+ from collections.abc import Mapping
4
+ from typing import Any, TypeVar
5
+ from uuid import UUID
6
+
7
+ from attrs import define as _attrs_define
8
+ from attrs import field as _attrs_field
9
+
10
+ T = TypeVar("T", bound="CreateWorkflowFromArtifactResponse")
11
+
12
+
13
+ @_attrs_define
14
+ class CreateWorkflowFromArtifactResponse:
15
+ """
16
+ Attributes:
17
+ workflow_id (UUID):
18
+ message (str):
19
+ """
20
+
21
+ workflow_id: UUID
22
+ message: str
23
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
24
+
25
+ def to_dict(self) -> dict[str, Any]:
26
+ workflow_id = str(self.workflow_id)
27
+
28
+ message = self.message
29
+
30
+ field_dict: dict[str, Any] = {}
31
+ field_dict.update(self.additional_properties)
32
+ field_dict.update(
33
+ {
34
+ "workflow_id": workflow_id,
35
+ "message": message,
36
+ }
37
+ )
38
+
39
+ return field_dict
40
+
41
+ @classmethod
42
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
43
+ d = dict(src_dict)
44
+ workflow_id = UUID(d.pop("workflow_id"))
45
+
46
+ message = d.pop("message")
47
+
48
+ create_workflow_from_artifact_response = cls(
49
+ workflow_id=workflow_id,
50
+ message=message,
51
+ )
52
+
53
+ create_workflow_from_artifact_response.additional_properties = d
54
+ return create_workflow_from_artifact_response
55
+
56
+ @property
57
+ def additional_keys(self) -> list[str]:
58
+ return list(self.additional_properties.keys())
59
+
60
+ def __getitem__(self, key: str) -> Any:
61
+ return self.additional_properties[key]
62
+
63
+ def __setitem__(self, key: str, value: Any) -> None:
64
+ self.additional_properties[key] = value
65
+
66
+ def __delitem__(self, key: str) -> None:
67
+ del self.additional_properties[key]
68
+
69
+ def __contains__(self, key: str) -> bool:
70
+ return key in self.additional_properties
@@ -0,0 +1,18 @@
1
+ from enum import Enum
2
+
3
+
4
+ class DataFrameMethod(str, Enum):
5
+ EQ = "eq"
6
+ GE = "ge"
7
+ GT = "gt"
8
+ LE = "le"
9
+ LT = "lt"
10
+ NE = "ne"
11
+ NLARGEST = "nlargest"
12
+ NSMALLEST = "nsmallest"
13
+ STR_CONTAINS = "str.contains"
14
+ STR_ENDSWITH = "str.endswith"
15
+ STR_STARTSWITH = "str.startswith"
16
+
17
+ def __str__(self) -> str:
18
+ return str(self.value)