everyrow 0.1.10__py3-none-any.whl → 0.2.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 (207) hide show
  1. everyrow/__init__.py +8 -1
  2. everyrow/api_utils.py +5 -1
  3. everyrow/billing.py +29 -0
  4. everyrow/constants.py +1 -1
  5. everyrow/generated/__init__.py +1 -1
  6. everyrow/generated/api/{default/interrupt_chat_task_tasks_chat_interrupt_post.py → artifacts/create_artifact_artifacts_post.py} +38 -32
  7. everyrow/generated/api/billing/__init__.py +1 -0
  8. everyrow/generated/api/{default/get_queues_stats_jobs_queues_get.py → billing/get_billing_balance_billing_get.py} +25 -17
  9. everyrow/generated/api/operations/__init__.py +1 -0
  10. everyrow/generated/api/{default/re_execute_task_endpoint_tasks_re_execute_post.py → operations/agent_map_operations_agent_map_post.py} +53 -41
  11. everyrow/generated/api/{default/create_workflow_from_artifact_workflows_from_artifact_post.py → operations/dedupe_operations_dedupe_post.py} +39 -33
  12. everyrow/generated/api/{default/submit_task_tasks_post.py → operations/merge_operations_merge_post.py} +37 -29
  13. everyrow/generated/api/{default/copy_workflow_endpoint_workflows_copy_post.py → operations/rank_operations_rank_post.py} +43 -29
  14. everyrow/generated/api/{default/export_to_google_sheets_export_post.py → operations/screen_operations_screen_post.py} +43 -31
  15. everyrow/generated/api/operations/single_agent_operations_single_agent_post.py +236 -0
  16. everyrow/generated/api/sessions/__init__.py +1 -0
  17. everyrow/generated/api/{default/copy_artifacts_artifacts_copy_post.py → sessions/create_session_endpoint_sessions_post.py} +35 -27
  18. everyrow/generated/api/tasks/__init__.py +1 -0
  19. everyrow/generated/api/{default/get_job_progress_for_task_jobs_progress_get.py → tasks/get_task_result_tasks_task_id_result_get.py} +45 -33
  20. everyrow/generated/api/{default/get_task_status_endpoint_tasks_task_id_status_get.py → tasks/get_task_status_tasks_task_id_status_get.py} +24 -42
  21. everyrow/generated/models/__init__.py +82 -266
  22. everyrow/generated/models/agent_map_operation.py +315 -0
  23. everyrow/generated/models/{artifact_group_record_metadata_type_0.py → agent_map_operation_input_type_1_item.py} +5 -5
  24. everyrow/generated/models/agent_map_operation_input_type_2.py +46 -0
  25. everyrow/generated/models/{standalone_artifact_record_analysis_type_0.py → agent_map_operation_response_schema_type_0.py} +5 -5
  26. everyrow/generated/models/{create_query_params.py → billing_response.py} +13 -12
  27. everyrow/generated/models/{continue_task_request.py → create_artifact_request.py} +43 -43
  28. everyrow/generated/models/create_artifact_request_data_type_0_item.py +46 -0
  29. everyrow/generated/models/{task_metadata_cols_to_rename_type_0.py → create_artifact_request_data_type_1.py} +5 -5
  30. everyrow/generated/models/{copy_artifacts_response.py → create_artifact_response.py} +12 -12
  31. everyrow/generated/models/{create_session_request.py → create_session.py} +6 -7
  32. everyrow/generated/models/dedupe_operation.py +151 -0
  33. everyrow/generated/models/dedupe_operation_input_type_1_item.py +46 -0
  34. everyrow/generated/models/{import_request_token_data.py → dedupe_operation_input_type_2.py} +5 -5
  35. everyrow/generated/models/error_response.py +109 -0
  36. everyrow/generated/models/{task_insert_query_params.py → error_response_details_type_0.py} +5 -5
  37. everyrow/generated/models/insufficient_balance_error.py +8 -0
  38. everyrow/generated/models/{llm_enum.py → llm_enum_public.py} +1 -20
  39. everyrow/generated/models/merge_operation.py +278 -0
  40. everyrow/generated/models/merge_operation_left_input_type_1_item.py +46 -0
  41. everyrow/generated/models/{chat_completion_message_tool_call.py → merge_operation_left_input_type_2.py} +5 -5
  42. everyrow/generated/models/merge_operation_right_input_type_1_item.py +46 -0
  43. everyrow/generated/models/merge_operation_right_input_type_2.py +46 -0
  44. everyrow/generated/models/merge_operation_use_web_search_type_0.py +10 -0
  45. everyrow/generated/models/operation_response.py +131 -0
  46. everyrow/generated/models/{multi_agent_effort_level.py → public_effort_level.py} +1 -1
  47. everyrow/generated/models/public_task_type.py +12 -0
  48. everyrow/generated/models/rank_operation.py +203 -0
  49. everyrow/generated/models/rank_operation_input_type_1_item.py +46 -0
  50. everyrow/generated/models/{export_request_token_data.py → rank_operation_input_type_2.py} +5 -5
  51. everyrow/generated/models/{artifact_group_record_analysis_type_0.py → rank_operation_response_schema_type_0.py} +5 -5
  52. everyrow/generated/models/screen_operation.py +186 -0
  53. everyrow/generated/models/screen_operation_input_type_1_item.py +46 -0
  54. everyrow/generated/models/screen_operation_input_type_2.py +46 -0
  55. everyrow/generated/models/screen_operation_response_schema_type_0.py +46 -0
  56. everyrow/generated/models/{create_session_response.py → session_response.py} +7 -8
  57. everyrow/generated/models/single_agent_operation.py +304 -0
  58. everyrow/generated/models/single_agent_operation_input_type_1_item.py +46 -0
  59. everyrow/generated/models/single_agent_operation_input_type_2.py +46 -0
  60. everyrow/generated/models/single_agent_operation_response_schema_type_0.py +46 -0
  61. everyrow/generated/models/task_result_response.py +185 -0
  62. everyrow/generated/models/task_result_response_data_type_0_item.py +46 -0
  63. everyrow/generated/models/task_result_response_data_type_1.py +46 -0
  64. everyrow/generated/models/task_status_response.py +99 -19
  65. everyrow/ops.py +360 -434
  66. everyrow/session.py +5 -7
  67. everyrow/task.py +68 -115
  68. {everyrow-0.1.10.dist-info → everyrow-0.2.0.dist-info}/METADATA +22 -8
  69. everyrow-0.2.0.dist-info/RECORD +81 -0
  70. everyrow/citations.py +0 -50
  71. everyrow/generated/api/default/continue_task_endpoint_tasks_continue_post.py +0 -208
  72. everyrow/generated/api/default/create_api_key_endpoint_api_keys_create_post.py +0 -186
  73. everyrow/generated/api/default/create_session_endpoint_sessions_create_post.py +0 -198
  74. everyrow/generated/api/default/generate_feedback_endpoint_tasks_generate_feedback_post.py +0 -186
  75. everyrow/generated/api/default/get_artifacts_artifacts_get.py +0 -260
  76. everyrow/generated/api/default/get_default_timeout_seconds_models_default_timeout_seconds_get.py +0 -165
  77. everyrow/generated/api/default/get_metrics_metrics_get.py +0 -80
  78. everyrow/generated/api/default/get_user_usage_usage_get.py +0 -123
  79. everyrow/generated/api/default/healthz_healthz_get.py +0 -127
  80. everyrow/generated/api/default/import_from_google_sheets_import_post.py +0 -170
  81. everyrow/generated/api/default/list_api_keys_endpoint_api_keys_get.py +0 -186
  82. everyrow/generated/api/default/revoke_api_key_endpoint_api_keys_key_id_revoke_post.py +0 -181
  83. everyrow/generated/api/default/revoke_jobs_for_task_jobs_revoke_post.py +0 -164
  84. everyrow/generated/api/default/rollback_to_message_endpoint_tasks_chat_rollback_post.py +0 -186
  85. everyrow/generated/api/default/submit_chat_task_tasks_chat_post.py +0 -164
  86. everyrow/generated/api/default/task_resource_estimation_task_resource_estimation_post.py +0 -319
  87. everyrow/generated/api/default/trigger_workflow_execution_endpoint_workflows_trigger_post.py +0 -166
  88. everyrow/generated/api/default/whoami_whoami_get.py +0 -127
  89. everyrow/generated/models/agent_improvement_instruction.py +0 -69
  90. everyrow/generated/models/agent_query_params.py +0 -383
  91. everyrow/generated/models/agent_query_params_system_prompt_kind_type_0.py +0 -10
  92. everyrow/generated/models/agent_task_args.py +0 -163
  93. everyrow/generated/models/agent_task_args_processing_mode.py +0 -9
  94. everyrow/generated/models/allowed_suggestions.py +0 -9
  95. everyrow/generated/models/api_key_info.py +0 -163
  96. everyrow/generated/models/artifact_changed_payload.py +0 -89
  97. everyrow/generated/models/artifact_group_record.py +0 -363
  98. everyrow/generated/models/artifact_group_record_trace_mapping_type_0.py +0 -46
  99. everyrow/generated/models/artifact_status.py +0 -14
  100. everyrow/generated/models/auto_cohort_conversation_message.py +0 -533
  101. everyrow/generated/models/aux_data.py +0 -128
  102. everyrow/generated/models/aux_data_source_bank.py +0 -59
  103. everyrow/generated/models/chat_message_metadata.py +0 -193
  104. everyrow/generated/models/concatenate_query_params.py +0 -46
  105. everyrow/generated/models/concatenate_request.py +0 -306
  106. everyrow/generated/models/continue_reason.py +0 -9
  107. everyrow/generated/models/controller_improvement_round.py +0 -79
  108. everyrow/generated/models/conversation_changed_payload.py +0 -89
  109. everyrow/generated/models/copy_artifacts_request.py +0 -70
  110. everyrow/generated/models/copy_workflow_request.py +0 -62
  111. everyrow/generated/models/copy_workflow_response.py +0 -70
  112. everyrow/generated/models/create_api_key_request.py +0 -95
  113. everyrow/generated/models/create_api_key_response.py +0 -96
  114. everyrow/generated/models/create_group_query_params.py +0 -61
  115. everyrow/generated/models/create_group_request.py +0 -305
  116. everyrow/generated/models/create_request.py +0 -305
  117. everyrow/generated/models/create_workflow_from_artifact_request.py +0 -92
  118. everyrow/generated/models/create_workflow_from_artifact_response.py +0 -70
  119. everyrow/generated/models/data_frame_method.py +0 -18
  120. everyrow/generated/models/date_cutoffs.py +0 -145
  121. everyrow/generated/models/dedupe_public_params.py +0 -64
  122. everyrow/generated/models/dedupe_request_params.py +0 -311
  123. everyrow/generated/models/deep_merge_public_params.py +0 -143
  124. everyrow/generated/models/deep_merge_request.py +0 -313
  125. everyrow/generated/models/deep_rank_public_params.py +0 -109
  126. everyrow/generated/models/deep_rank_request.py +0 -313
  127. everyrow/generated/models/deep_screen_public_params.py +0 -132
  128. everyrow/generated/models/deep_screen_request.py +0 -313
  129. everyrow/generated/models/derive_expression.py +0 -69
  130. everyrow/generated/models/derive_query_params.py +0 -75
  131. everyrow/generated/models/derive_request.py +0 -307
  132. everyrow/generated/models/document_query_tool.py +0 -12
  133. everyrow/generated/models/drop_columns_query_params.py +0 -61
  134. everyrow/generated/models/drop_columns_request.py +0 -305
  135. everyrow/generated/models/event_type.py +0 -14
  136. everyrow/generated/models/execution_metadata.py +0 -146
  137. everyrow/generated/models/export_request.py +0 -75
  138. everyrow/generated/models/export_to_google_sheets_export_post_response_export_to_google_sheets_export_post.py +0 -46
  139. everyrow/generated/models/filter_query_params.py +0 -91
  140. everyrow/generated/models/filter_request.py +0 -305
  141. everyrow/generated/models/flatten_query_params.py +0 -46
  142. everyrow/generated/models/flatten_request.py +0 -305
  143. everyrow/generated/models/generate_feedback_request.py +0 -62
  144. everyrow/generated/models/group_by_query_params.py +0 -62
  145. everyrow/generated/models/group_by_request.py +0 -305
  146. everyrow/generated/models/healthz_healthz_get_response_healthz_healthz_get.py +0 -46
  147. everyrow/generated/models/image_chat_content_part.py +0 -80
  148. everyrow/generated/models/image_chat_content_part_image_url.py +0 -46
  149. everyrow/generated/models/import_from_google_sheets_import_post_response_import_from_google_sheets_import_post.py +0 -46
  150. everyrow/generated/models/import_request.py +0 -83
  151. everyrow/generated/models/join_query_params.py +0 -73
  152. everyrow/generated/models/join_request.py +0 -305
  153. everyrow/generated/models/map_agent_request_params.py +0 -313
  154. everyrow/generated/models/map_multi_agent_request_params.py +0 -313
  155. everyrow/generated/models/message_created_payload.py +0 -98
  156. everyrow/generated/models/multi_agent_query_params.py +0 -264
  157. everyrow/generated/models/multi_modal_chat_message.py +0 -160
  158. everyrow/generated/models/multi_modal_chat_message_role.py +0 -10
  159. everyrow/generated/models/preview_metadata.py +0 -144
  160. everyrow/generated/models/processing_mode.py +0 -10
  161. everyrow/generated/models/progress_status.py +0 -83
  162. everyrow/generated/models/queue_stats.py +0 -77
  163. everyrow/generated/models/reduce_agent_request_params.py +0 -305
  164. everyrow/generated/models/reduce_multi_agent_request_params.py +0 -305
  165. everyrow/generated/models/resource_estimation_response.py +0 -85
  166. everyrow/generated/models/response_schema_type.py +0 -9
  167. everyrow/generated/models/revoke_api_key_response.py +0 -61
  168. everyrow/generated/models/rollback_to_message_request.py +0 -62
  169. everyrow/generated/models/rollback_to_message_response.py +0 -77
  170. everyrow/generated/models/session_changed_payload.py +0 -69
  171. everyrow/generated/models/simple_chat_message.py +0 -121
  172. everyrow/generated/models/simple_chat_message_role.py +0 -10
  173. everyrow/generated/models/simple_chat_message_with_tool_calls.py +0 -156
  174. everyrow/generated/models/source_database_entry.py +0 -92
  175. everyrow/generated/models/standalone_artifact_record.py +0 -311
  176. everyrow/generated/models/standalone_artifact_record_metadata_type_0.py +0 -46
  177. everyrow/generated/models/standalone_artifact_record_trace_mapping_type_0.py +0 -46
  178. everyrow/generated/models/status_count.py +0 -71
  179. everyrow/generated/models/status_count_status.py +0 -13
  180. everyrow/generated/models/submit_chat_task_body.py +0 -497
  181. everyrow/generated/models/submit_chat_task_body_selected_task_type_type_0.py +0 -11
  182. everyrow/generated/models/submit_task_body.py +0 -745
  183. everyrow/generated/models/task_changed_payload.py +0 -105
  184. everyrow/generated/models/task_effort.py +0 -10
  185. everyrow/generated/models/task_id_request.py +0 -62
  186. everyrow/generated/models/task_insert.py +0 -725
  187. everyrow/generated/models/task_metadata.py +0 -323
  188. everyrow/generated/models/task_response.py +0 -62
  189. everyrow/generated/models/task_type.py +0 -31
  190. everyrow/generated/models/text_chat_content_part.py +0 -74
  191. everyrow/generated/models/tool_response_message.py +0 -127
  192. everyrow/generated/models/toolkit_constants.py +0 -80
  193. everyrow/generated/models/trace_changed_payload.py +0 -94
  194. everyrow/generated/models/trace_info.py +0 -78
  195. everyrow/generated/models/trigger_workflow_execution_request.py +0 -112
  196. everyrow/generated/models/trigger_workflow_execution_request_task_params.py +0 -65
  197. everyrow/generated/models/trigger_workflow_execution_request_task_params_additional_property.py +0 -46
  198. everyrow/generated/models/trigger_workflow_execution_response.py +0 -69
  199. everyrow/generated/models/upload_csv_payload.py +0 -310
  200. everyrow/generated/models/upload_csv_query_params.py +0 -114
  201. everyrow/generated/models/usage_response.py +0 -77
  202. everyrow/generated/models/whoami_whoami_get_response_whoami_whoami_get.py +0 -46
  203. everyrow/generated/models/workflow_leaf_node_input.py +0 -70
  204. everyrow-0.1.10.dist-info/RECORD +0 -183
  205. /everyrow/generated/api/{default → artifacts}/__init__.py +0 -0
  206. {everyrow-0.1.10.dist-info → everyrow-0.2.0.dist-info}/WHEEL +0 -0
  207. {everyrow-0.1.10.dist-info → everyrow-0.2.0.dist-info}/licenses/LICENSE.txt +0 -0
@@ -1,745 +0,0 @@
1
- from __future__ import annotations
2
-
3
- from collections.abc import Mapping
4
- from typing import TYPE_CHECKING, 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
- if TYPE_CHECKING:
13
- from ..models.concatenate_request import ConcatenateRequest
14
- from ..models.create_group_request import CreateGroupRequest
15
- from ..models.create_request import CreateRequest
16
- from ..models.dedupe_request_params import DedupeRequestParams
17
- from ..models.deep_merge_request import DeepMergeRequest
18
- from ..models.deep_rank_request import DeepRankRequest
19
- from ..models.deep_screen_request import DeepScreenRequest
20
- from ..models.derive_request import DeriveRequest
21
- from ..models.drop_columns_request import DropColumnsRequest
22
- from ..models.filter_request import FilterRequest
23
- from ..models.flatten_request import FlattenRequest
24
- from ..models.group_by_request import GroupByRequest
25
- from ..models.join_request import JoinRequest
26
- from ..models.map_agent_request_params import MapAgentRequestParams
27
- from ..models.map_multi_agent_request_params import MapMultiAgentRequestParams
28
- from ..models.multi_modal_chat_message import MultiModalChatMessage
29
- from ..models.reduce_agent_request_params import ReduceAgentRequestParams
30
- from ..models.reduce_multi_agent_request_params import ReduceMultiAgentRequestParams
31
- from ..models.simple_chat_message import SimpleChatMessage
32
- from ..models.simple_chat_message_with_tool_calls import SimpleChatMessageWithToolCalls
33
- from ..models.task_metadata import TaskMetadata
34
- from ..models.tool_response_message import ToolResponseMessage
35
- from ..models.upload_csv_payload import UploadCsvPayload
36
-
37
-
38
- T = TypeVar("T", bound="SubmitTaskBody")
39
-
40
-
41
- @_attrs_define
42
- class SubmitTaskBody:
43
- """
44
- Attributes:
45
- payload (ConcatenateRequest | CreateGroupRequest | CreateRequest | DedupeRequestParams | DeepMergeRequest |
46
- DeepRankRequest | DeepScreenRequest | DeriveRequest | DropColumnsRequest | FilterRequest | FlattenRequest |
47
- GroupByRequest | JoinRequest | MapAgentRequestParams | MapMultiAgentRequestParams | ReduceAgentRequestParams |
48
- ReduceMultiAgentRequestParams | UploadCsvPayload):
49
- session_id (UUID):
50
- task_id (UUID | Unset): Cohort task ID
51
- label (None | str | Unset):
52
- description (None | str | Unset):
53
- message_history (list[MultiModalChatMessage | SimpleChatMessage | SimpleChatMessageWithToolCalls |
54
- ToolResponseMessage] | Unset): Additional context for generating task descriptions
55
- workflow_run_id (None | Unset | UUID):
56
- workflow_task_id (None | Unset | UUID):
57
- replaces_task_id (None | Unset | UUID): The ID of the task that this task replaces, e.g. full version of a task
58
- that replaces a preview version
59
- original_task_id (None | Unset | UUID): The ID of the original task of this chain. In other words, the task
60
- you'd reach by following the chain of replaces_task_id.
61
- conversation_id (None | Unset | UUID): The chat conversation this task is associated with (agent loop)
62
- yolo_mode (bool | Unset): When true, automatically schedule non-preview map tasks without user confirmation.
63
- Default: False.
64
- metadata (None | TaskMetadata | Unset): Optional metadata for the task, such as re-execution information
65
- n_preview_iteration (int | None | Unset):
66
- enable_preview_loop (bool | Unset): When true, enable the preview loop for the task Default: False.
67
- twin_artifact_id (None | Unset | UUID): The ID of a reference artifact, e.g. the right table in Deep Merge
68
- operation.
69
- """
70
-
71
- payload: (
72
- ConcatenateRequest
73
- | CreateGroupRequest
74
- | CreateRequest
75
- | DedupeRequestParams
76
- | DeepMergeRequest
77
- | DeepRankRequest
78
- | DeepScreenRequest
79
- | DeriveRequest
80
- | DropColumnsRequest
81
- | FilterRequest
82
- | FlattenRequest
83
- | GroupByRequest
84
- | JoinRequest
85
- | MapAgentRequestParams
86
- | MapMultiAgentRequestParams
87
- | ReduceAgentRequestParams
88
- | ReduceMultiAgentRequestParams
89
- | UploadCsvPayload
90
- )
91
- session_id: UUID
92
- task_id: UUID | Unset = UNSET
93
- label: None | str | Unset = UNSET
94
- description: None | str | Unset = UNSET
95
- message_history: (
96
- list[MultiModalChatMessage | SimpleChatMessage | SimpleChatMessageWithToolCalls | ToolResponseMessage] | Unset
97
- ) = UNSET
98
- workflow_run_id: None | Unset | UUID = UNSET
99
- workflow_task_id: None | Unset | UUID = UNSET
100
- replaces_task_id: None | Unset | UUID = UNSET
101
- original_task_id: None | Unset | UUID = UNSET
102
- conversation_id: None | Unset | UUID = UNSET
103
- yolo_mode: bool | Unset = False
104
- metadata: None | TaskMetadata | Unset = UNSET
105
- n_preview_iteration: int | None | Unset = UNSET
106
- enable_preview_loop: bool | Unset = False
107
- twin_artifact_id: None | Unset | UUID = UNSET
108
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
109
-
110
- def to_dict(self) -> dict[str, Any]:
111
- from ..models.concatenate_request import ConcatenateRequest
112
- from ..models.create_group_request import CreateGroupRequest
113
- from ..models.create_request import CreateRequest
114
- from ..models.dedupe_request_params import DedupeRequestParams
115
- from ..models.deep_merge_request import DeepMergeRequest
116
- from ..models.deep_rank_request import DeepRankRequest
117
- from ..models.derive_request import DeriveRequest
118
- from ..models.drop_columns_request import DropColumnsRequest
119
- from ..models.filter_request import FilterRequest
120
- from ..models.flatten_request import FlattenRequest
121
- from ..models.group_by_request import GroupByRequest
122
- from ..models.join_request import JoinRequest
123
- from ..models.map_agent_request_params import MapAgentRequestParams
124
- from ..models.map_multi_agent_request_params import MapMultiAgentRequestParams
125
- from ..models.multi_modal_chat_message import MultiModalChatMessage
126
- from ..models.reduce_agent_request_params import ReduceAgentRequestParams
127
- from ..models.reduce_multi_agent_request_params import ReduceMultiAgentRequestParams
128
- from ..models.simple_chat_message import SimpleChatMessage
129
- from ..models.simple_chat_message_with_tool_calls import SimpleChatMessageWithToolCalls
130
- from ..models.task_metadata import TaskMetadata
131
- from ..models.upload_csv_payload import UploadCsvPayload
132
-
133
- payload: dict[str, Any]
134
- if isinstance(self.payload, MapAgentRequestParams):
135
- payload = self.payload.to_dict()
136
- elif isinstance(self.payload, ReduceAgentRequestParams):
137
- payload = self.payload.to_dict()
138
- elif isinstance(self.payload, FilterRequest):
139
- payload = self.payload.to_dict()
140
- elif isinstance(self.payload, DeriveRequest):
141
- payload = self.payload.to_dict()
142
- elif isinstance(self.payload, JoinRequest):
143
- payload = self.payload.to_dict()
144
- elif isinstance(self.payload, ConcatenateRequest):
145
- payload = self.payload.to_dict()
146
- elif isinstance(self.payload, DropColumnsRequest):
147
- payload = self.payload.to_dict()
148
- elif isinstance(self.payload, DedupeRequestParams):
149
- payload = self.payload.to_dict()
150
- elif isinstance(self.payload, UploadCsvPayload):
151
- payload = self.payload.to_dict()
152
- elif isinstance(self.payload, MapMultiAgentRequestParams):
153
- payload = self.payload.to_dict()
154
- elif isinstance(self.payload, ReduceMultiAgentRequestParams):
155
- payload = self.payload.to_dict()
156
- elif isinstance(self.payload, CreateRequest):
157
- payload = self.payload.to_dict()
158
- elif isinstance(self.payload, CreateGroupRequest):
159
- payload = self.payload.to_dict()
160
- elif isinstance(self.payload, FlattenRequest):
161
- payload = self.payload.to_dict()
162
- elif isinstance(self.payload, GroupByRequest):
163
- payload = self.payload.to_dict()
164
- elif isinstance(self.payload, DeepRankRequest):
165
- payload = self.payload.to_dict()
166
- elif isinstance(self.payload, DeepMergeRequest):
167
- payload = self.payload.to_dict()
168
- else:
169
- payload = self.payload.to_dict()
170
-
171
- session_id = str(self.session_id)
172
-
173
- task_id: str | Unset = UNSET
174
- if not isinstance(self.task_id, Unset):
175
- task_id = str(self.task_id)
176
-
177
- label: None | str | Unset
178
- if isinstance(self.label, Unset):
179
- label = UNSET
180
- else:
181
- label = self.label
182
-
183
- description: None | str | Unset
184
- if isinstance(self.description, Unset):
185
- description = UNSET
186
- else:
187
- description = self.description
188
-
189
- message_history: list[dict[str, Any]] | Unset = UNSET
190
- if not isinstance(self.message_history, Unset):
191
- message_history = []
192
- for message_history_item_data in self.message_history:
193
- message_history_item: dict[str, Any]
194
- if isinstance(message_history_item_data, SimpleChatMessage):
195
- message_history_item = message_history_item_data.to_dict()
196
- elif isinstance(message_history_item_data, MultiModalChatMessage):
197
- message_history_item = message_history_item_data.to_dict()
198
- elif isinstance(message_history_item_data, SimpleChatMessageWithToolCalls):
199
- message_history_item = message_history_item_data.to_dict()
200
- else:
201
- message_history_item = message_history_item_data.to_dict()
202
-
203
- message_history.append(message_history_item)
204
-
205
- workflow_run_id: None | str | Unset
206
- if isinstance(self.workflow_run_id, Unset):
207
- workflow_run_id = UNSET
208
- elif isinstance(self.workflow_run_id, UUID):
209
- workflow_run_id = str(self.workflow_run_id)
210
- else:
211
- workflow_run_id = self.workflow_run_id
212
-
213
- workflow_task_id: None | str | Unset
214
- if isinstance(self.workflow_task_id, Unset):
215
- workflow_task_id = UNSET
216
- elif isinstance(self.workflow_task_id, UUID):
217
- workflow_task_id = str(self.workflow_task_id)
218
- else:
219
- workflow_task_id = self.workflow_task_id
220
-
221
- replaces_task_id: None | str | Unset
222
- if isinstance(self.replaces_task_id, Unset):
223
- replaces_task_id = UNSET
224
- elif isinstance(self.replaces_task_id, UUID):
225
- replaces_task_id = str(self.replaces_task_id)
226
- else:
227
- replaces_task_id = self.replaces_task_id
228
-
229
- original_task_id: None | str | Unset
230
- if isinstance(self.original_task_id, Unset):
231
- original_task_id = UNSET
232
- elif isinstance(self.original_task_id, UUID):
233
- original_task_id = str(self.original_task_id)
234
- else:
235
- original_task_id = self.original_task_id
236
-
237
- conversation_id: None | str | Unset
238
- if isinstance(self.conversation_id, Unset):
239
- conversation_id = UNSET
240
- elif isinstance(self.conversation_id, UUID):
241
- conversation_id = str(self.conversation_id)
242
- else:
243
- conversation_id = self.conversation_id
244
-
245
- yolo_mode = self.yolo_mode
246
-
247
- metadata: dict[str, Any] | None | Unset
248
- if isinstance(self.metadata, Unset):
249
- metadata = UNSET
250
- elif isinstance(self.metadata, TaskMetadata):
251
- metadata = self.metadata.to_dict()
252
- else:
253
- metadata = self.metadata
254
-
255
- n_preview_iteration: int | None | Unset
256
- if isinstance(self.n_preview_iteration, Unset):
257
- n_preview_iteration = UNSET
258
- else:
259
- n_preview_iteration = self.n_preview_iteration
260
-
261
- enable_preview_loop = self.enable_preview_loop
262
-
263
- twin_artifact_id: None | str | Unset
264
- if isinstance(self.twin_artifact_id, Unset):
265
- twin_artifact_id = UNSET
266
- elif isinstance(self.twin_artifact_id, UUID):
267
- twin_artifact_id = str(self.twin_artifact_id)
268
- else:
269
- twin_artifact_id = self.twin_artifact_id
270
-
271
- field_dict: dict[str, Any] = {}
272
- field_dict.update(self.additional_properties)
273
- field_dict.update(
274
- {
275
- "payload": payload,
276
- "session_id": session_id,
277
- }
278
- )
279
- if task_id is not UNSET:
280
- field_dict["task_id"] = task_id
281
- if label is not UNSET:
282
- field_dict["label"] = label
283
- if description is not UNSET:
284
- field_dict["description"] = description
285
- if message_history is not UNSET:
286
- field_dict["message_history"] = message_history
287
- if workflow_run_id is not UNSET:
288
- field_dict["workflow_run_id"] = workflow_run_id
289
- if workflow_task_id is not UNSET:
290
- field_dict["workflow_task_id"] = workflow_task_id
291
- if replaces_task_id is not UNSET:
292
- field_dict["replaces_task_id"] = replaces_task_id
293
- if original_task_id is not UNSET:
294
- field_dict["original_task_id"] = original_task_id
295
- if conversation_id is not UNSET:
296
- field_dict["conversation_id"] = conversation_id
297
- if yolo_mode is not UNSET:
298
- field_dict["yolo_mode"] = yolo_mode
299
- if metadata is not UNSET:
300
- field_dict["metadata"] = metadata
301
- if n_preview_iteration is not UNSET:
302
- field_dict["n_preview_iteration"] = n_preview_iteration
303
- if enable_preview_loop is not UNSET:
304
- field_dict["enable_preview_loop"] = enable_preview_loop
305
- if twin_artifact_id is not UNSET:
306
- field_dict["twin_artifact_id"] = twin_artifact_id
307
-
308
- return field_dict
309
-
310
- @classmethod
311
- def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
312
- from ..models.concatenate_request import ConcatenateRequest
313
- from ..models.create_group_request import CreateGroupRequest
314
- from ..models.create_request import CreateRequest
315
- from ..models.dedupe_request_params import DedupeRequestParams
316
- from ..models.deep_merge_request import DeepMergeRequest
317
- from ..models.deep_rank_request import DeepRankRequest
318
- from ..models.deep_screen_request import DeepScreenRequest
319
- from ..models.derive_request import DeriveRequest
320
- from ..models.drop_columns_request import DropColumnsRequest
321
- from ..models.filter_request import FilterRequest
322
- from ..models.flatten_request import FlattenRequest
323
- from ..models.group_by_request import GroupByRequest
324
- from ..models.join_request import JoinRequest
325
- from ..models.map_agent_request_params import MapAgentRequestParams
326
- from ..models.map_multi_agent_request_params import MapMultiAgentRequestParams
327
- from ..models.multi_modal_chat_message import MultiModalChatMessage
328
- from ..models.reduce_agent_request_params import ReduceAgentRequestParams
329
- from ..models.reduce_multi_agent_request_params import ReduceMultiAgentRequestParams
330
- from ..models.simple_chat_message import SimpleChatMessage
331
- from ..models.simple_chat_message_with_tool_calls import SimpleChatMessageWithToolCalls
332
- from ..models.task_metadata import TaskMetadata
333
- from ..models.tool_response_message import ToolResponseMessage
334
- from ..models.upload_csv_payload import UploadCsvPayload
335
-
336
- d = dict(src_dict)
337
-
338
- def _parse_payload(
339
- data: object,
340
- ) -> (
341
- ConcatenateRequest
342
- | CreateGroupRequest
343
- | CreateRequest
344
- | DedupeRequestParams
345
- | DeepMergeRequest
346
- | DeepRankRequest
347
- | DeepScreenRequest
348
- | DeriveRequest
349
- | DropColumnsRequest
350
- | FilterRequest
351
- | FlattenRequest
352
- | GroupByRequest
353
- | JoinRequest
354
- | MapAgentRequestParams
355
- | MapMultiAgentRequestParams
356
- | ReduceAgentRequestParams
357
- | ReduceMultiAgentRequestParams
358
- | UploadCsvPayload
359
- ):
360
- try:
361
- if not isinstance(data, dict):
362
- raise TypeError()
363
- componentsschemas_agent_request_payload_type_0 = MapAgentRequestParams.from_dict(data)
364
-
365
- return componentsschemas_agent_request_payload_type_0
366
- except (TypeError, ValueError, AttributeError, KeyError):
367
- pass
368
- try:
369
- if not isinstance(data, dict):
370
- raise TypeError()
371
- componentsschemas_agent_request_payload_type_1 = ReduceAgentRequestParams.from_dict(data)
372
-
373
- return componentsschemas_agent_request_payload_type_1
374
- except (TypeError, ValueError, AttributeError, KeyError):
375
- pass
376
- try:
377
- if not isinstance(data, dict):
378
- raise TypeError()
379
- payload_type_1 = FilterRequest.from_dict(data)
380
-
381
- return payload_type_1
382
- except (TypeError, ValueError, AttributeError, KeyError):
383
- pass
384
- try:
385
- if not isinstance(data, dict):
386
- raise TypeError()
387
- payload_type_2 = DeriveRequest.from_dict(data)
388
-
389
- return payload_type_2
390
- except (TypeError, ValueError, AttributeError, KeyError):
391
- pass
392
- try:
393
- if not isinstance(data, dict):
394
- raise TypeError()
395
- payload_type_3 = JoinRequest.from_dict(data)
396
-
397
- return payload_type_3
398
- except (TypeError, ValueError, AttributeError, KeyError):
399
- pass
400
- try:
401
- if not isinstance(data, dict):
402
- raise TypeError()
403
- payload_type_4 = ConcatenateRequest.from_dict(data)
404
-
405
- return payload_type_4
406
- except (TypeError, ValueError, AttributeError, KeyError):
407
- pass
408
- try:
409
- if not isinstance(data, dict):
410
- raise TypeError()
411
- payload_type_5 = DropColumnsRequest.from_dict(data)
412
-
413
- return payload_type_5
414
- except (TypeError, ValueError, AttributeError, KeyError):
415
- pass
416
- try:
417
- if not isinstance(data, dict):
418
- raise TypeError()
419
- payload_type_6 = DedupeRequestParams.from_dict(data)
420
-
421
- return payload_type_6
422
- except (TypeError, ValueError, AttributeError, KeyError):
423
- pass
424
- try:
425
- if not isinstance(data, dict):
426
- raise TypeError()
427
- payload_type_7 = UploadCsvPayload.from_dict(data)
428
-
429
- return payload_type_7
430
- except (TypeError, ValueError, AttributeError, KeyError):
431
- pass
432
- try:
433
- if not isinstance(data, dict):
434
- raise TypeError()
435
- componentsschemas_multi_agent_request_payload_type_0 = MapMultiAgentRequestParams.from_dict(data)
436
-
437
- return componentsschemas_multi_agent_request_payload_type_0
438
- except (TypeError, ValueError, AttributeError, KeyError):
439
- pass
440
- try:
441
- if not isinstance(data, dict):
442
- raise TypeError()
443
- componentsschemas_multi_agent_request_payload_type_1 = ReduceMultiAgentRequestParams.from_dict(data)
444
-
445
- return componentsschemas_multi_agent_request_payload_type_1
446
- except (TypeError, ValueError, AttributeError, KeyError):
447
- pass
448
- try:
449
- if not isinstance(data, dict):
450
- raise TypeError()
451
- payload_type_9 = CreateRequest.from_dict(data)
452
-
453
- return payload_type_9
454
- except (TypeError, ValueError, AttributeError, KeyError):
455
- pass
456
- try:
457
- if not isinstance(data, dict):
458
- raise TypeError()
459
- payload_type_10 = CreateGroupRequest.from_dict(data)
460
-
461
- return payload_type_10
462
- except (TypeError, ValueError, AttributeError, KeyError):
463
- pass
464
- try:
465
- if not isinstance(data, dict):
466
- raise TypeError()
467
- payload_type_11 = FlattenRequest.from_dict(data)
468
-
469
- return payload_type_11
470
- except (TypeError, ValueError, AttributeError, KeyError):
471
- pass
472
- try:
473
- if not isinstance(data, dict):
474
- raise TypeError()
475
- payload_type_12 = GroupByRequest.from_dict(data)
476
-
477
- return payload_type_12
478
- except (TypeError, ValueError, AttributeError, KeyError):
479
- pass
480
- try:
481
- if not isinstance(data, dict):
482
- raise TypeError()
483
- payload_type_13 = DeepRankRequest.from_dict(data)
484
-
485
- return payload_type_13
486
- except (TypeError, ValueError, AttributeError, KeyError):
487
- pass
488
- try:
489
- if not isinstance(data, dict):
490
- raise TypeError()
491
- payload_type_14 = DeepMergeRequest.from_dict(data)
492
-
493
- return payload_type_14
494
- except (TypeError, ValueError, AttributeError, KeyError):
495
- pass
496
- if not isinstance(data, dict):
497
- raise TypeError()
498
- payload_type_15 = DeepScreenRequest.from_dict(data)
499
-
500
- return payload_type_15
501
-
502
- payload = _parse_payload(d.pop("payload"))
503
-
504
- session_id = UUID(d.pop("session_id"))
505
-
506
- _task_id = d.pop("task_id", UNSET)
507
- task_id: UUID | Unset
508
- if isinstance(_task_id, Unset):
509
- task_id = UNSET
510
- else:
511
- task_id = UUID(_task_id)
512
-
513
- def _parse_label(data: object) -> None | str | Unset:
514
- if data is None:
515
- return data
516
- if isinstance(data, Unset):
517
- return data
518
- return cast(None | str | Unset, data)
519
-
520
- label = _parse_label(d.pop("label", UNSET))
521
-
522
- def _parse_description(data: object) -> None | str | Unset:
523
- if data is None:
524
- return data
525
- if isinstance(data, Unset):
526
- return data
527
- return cast(None | str | Unset, data)
528
-
529
- description = _parse_description(d.pop("description", UNSET))
530
-
531
- _message_history = d.pop("message_history", UNSET)
532
- message_history: (
533
- list[MultiModalChatMessage | SimpleChatMessage | SimpleChatMessageWithToolCalls | ToolResponseMessage]
534
- | Unset
535
- ) = UNSET
536
- if _message_history is not UNSET:
537
- message_history = []
538
- for message_history_item_data in _message_history:
539
-
540
- def _parse_message_history_item(
541
- data: object,
542
- ) -> MultiModalChatMessage | SimpleChatMessage | SimpleChatMessageWithToolCalls | ToolResponseMessage:
543
- try:
544
- if not isinstance(data, dict):
545
- raise TypeError()
546
- message_history_item_type_0 = SimpleChatMessage.from_dict(data)
547
-
548
- return message_history_item_type_0
549
- except (TypeError, ValueError, AttributeError, KeyError):
550
- pass
551
- try:
552
- if not isinstance(data, dict):
553
- raise TypeError()
554
- message_history_item_type_1 = MultiModalChatMessage.from_dict(data)
555
-
556
- return message_history_item_type_1
557
- except (TypeError, ValueError, AttributeError, KeyError):
558
- pass
559
- try:
560
- if not isinstance(data, dict):
561
- raise TypeError()
562
- message_history_item_type_2 = SimpleChatMessageWithToolCalls.from_dict(data)
563
-
564
- return message_history_item_type_2
565
- except (TypeError, ValueError, AttributeError, KeyError):
566
- pass
567
- if not isinstance(data, dict):
568
- raise TypeError()
569
- message_history_item_type_3 = ToolResponseMessage.from_dict(data)
570
-
571
- return message_history_item_type_3
572
-
573
- message_history_item = _parse_message_history_item(message_history_item_data)
574
-
575
- message_history.append(message_history_item)
576
-
577
- def _parse_workflow_run_id(data: object) -> None | Unset | UUID:
578
- if data is None:
579
- return data
580
- if isinstance(data, Unset):
581
- return data
582
- try:
583
- if not isinstance(data, str):
584
- raise TypeError()
585
- workflow_run_id_type_0 = UUID(data)
586
-
587
- return workflow_run_id_type_0
588
- except (TypeError, ValueError, AttributeError, KeyError):
589
- pass
590
- return cast(None | Unset | UUID, data)
591
-
592
- workflow_run_id = _parse_workflow_run_id(d.pop("workflow_run_id", UNSET))
593
-
594
- def _parse_workflow_task_id(data: object) -> None | Unset | UUID:
595
- if data is None:
596
- return data
597
- if isinstance(data, Unset):
598
- return data
599
- try:
600
- if not isinstance(data, str):
601
- raise TypeError()
602
- workflow_task_id_type_0 = UUID(data)
603
-
604
- return workflow_task_id_type_0
605
- except (TypeError, ValueError, AttributeError, KeyError):
606
- pass
607
- return cast(None | Unset | UUID, data)
608
-
609
- workflow_task_id = _parse_workflow_task_id(d.pop("workflow_task_id", UNSET))
610
-
611
- def _parse_replaces_task_id(data: object) -> None | Unset | UUID:
612
- if data is None:
613
- return data
614
- if isinstance(data, Unset):
615
- return data
616
- try:
617
- if not isinstance(data, str):
618
- raise TypeError()
619
- replaces_task_id_type_0 = UUID(data)
620
-
621
- return replaces_task_id_type_0
622
- except (TypeError, ValueError, AttributeError, KeyError):
623
- pass
624
- return cast(None | Unset | UUID, data)
625
-
626
- replaces_task_id = _parse_replaces_task_id(d.pop("replaces_task_id", UNSET))
627
-
628
- def _parse_original_task_id(data: object) -> None | Unset | UUID:
629
- if data is None:
630
- return data
631
- if isinstance(data, Unset):
632
- return data
633
- try:
634
- if not isinstance(data, str):
635
- raise TypeError()
636
- original_task_id_type_0 = UUID(data)
637
-
638
- return original_task_id_type_0
639
- except (TypeError, ValueError, AttributeError, KeyError):
640
- pass
641
- return cast(None | Unset | UUID, data)
642
-
643
- original_task_id = _parse_original_task_id(d.pop("original_task_id", UNSET))
644
-
645
- def _parse_conversation_id(data: object) -> None | Unset | UUID:
646
- if data is None:
647
- return data
648
- if isinstance(data, Unset):
649
- return data
650
- try:
651
- if not isinstance(data, str):
652
- raise TypeError()
653
- conversation_id_type_0 = UUID(data)
654
-
655
- return conversation_id_type_0
656
- except (TypeError, ValueError, AttributeError, KeyError):
657
- pass
658
- return cast(None | Unset | UUID, data)
659
-
660
- conversation_id = _parse_conversation_id(d.pop("conversation_id", UNSET))
661
-
662
- yolo_mode = d.pop("yolo_mode", UNSET)
663
-
664
- def _parse_metadata(data: object) -> None | TaskMetadata | Unset:
665
- if data is None:
666
- return data
667
- if isinstance(data, Unset):
668
- return data
669
- try:
670
- if not isinstance(data, dict):
671
- raise TypeError()
672
- metadata_type_0 = TaskMetadata.from_dict(data)
673
-
674
- return metadata_type_0
675
- except (TypeError, ValueError, AttributeError, KeyError):
676
- pass
677
- return cast(None | TaskMetadata | Unset, data)
678
-
679
- metadata = _parse_metadata(d.pop("metadata", UNSET))
680
-
681
- def _parse_n_preview_iteration(data: object) -> int | None | Unset:
682
- if data is None:
683
- return data
684
- if isinstance(data, Unset):
685
- return data
686
- return cast(int | None | Unset, data)
687
-
688
- n_preview_iteration = _parse_n_preview_iteration(d.pop("n_preview_iteration", UNSET))
689
-
690
- enable_preview_loop = d.pop("enable_preview_loop", UNSET)
691
-
692
- def _parse_twin_artifact_id(data: object) -> None | Unset | UUID:
693
- if data is None:
694
- return data
695
- if isinstance(data, Unset):
696
- return data
697
- try:
698
- if not isinstance(data, str):
699
- raise TypeError()
700
- twin_artifact_id_type_0 = UUID(data)
701
-
702
- return twin_artifact_id_type_0
703
- except (TypeError, ValueError, AttributeError, KeyError):
704
- pass
705
- return cast(None | Unset | UUID, data)
706
-
707
- twin_artifact_id = _parse_twin_artifact_id(d.pop("twin_artifact_id", UNSET))
708
-
709
- submit_task_body = cls(
710
- payload=payload,
711
- session_id=session_id,
712
- task_id=task_id,
713
- label=label,
714
- description=description,
715
- message_history=message_history,
716
- workflow_run_id=workflow_run_id,
717
- workflow_task_id=workflow_task_id,
718
- replaces_task_id=replaces_task_id,
719
- original_task_id=original_task_id,
720
- conversation_id=conversation_id,
721
- yolo_mode=yolo_mode,
722
- metadata=metadata,
723
- n_preview_iteration=n_preview_iteration,
724
- enable_preview_loop=enable_preview_loop,
725
- twin_artifact_id=twin_artifact_id,
726
- )
727
-
728
- submit_task_body.additional_properties = d
729
- return submit_task_body
730
-
731
- @property
732
- def additional_keys(self) -> list[str]:
733
- return list(self.additional_properties.keys())
734
-
735
- def __getitem__(self, key: str) -> Any:
736
- return self.additional_properties[key]
737
-
738
- def __setitem__(self, key: str, value: Any) -> None:
739
- self.additional_properties[key] = value
740
-
741
- def __delitem__(self, key: str) -> None:
742
- del self.additional_properties[key]
743
-
744
- def __contains__(self, key: str) -> bool:
745
- return key in self.additional_properties