everyrow 0.1.9__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.9.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.9.dist-info/RECORD +0 -183
  205. /everyrow/generated/api/{default → artifacts}/__init__.py +0 -0
  206. {everyrow-0.1.9.dist-info → everyrow-0.2.0.dist-info}/WHEEL +0 -0
  207. {everyrow-0.1.9.dist-info → everyrow-0.2.0.dist-info}/licenses/LICENSE.txt +0 -0
@@ -1,383 +0,0 @@
1
- from __future__ import annotations
2
-
3
- from collections.abc import Mapping
4
- from typing import Any, TypeVar, cast
5
-
6
- from attrs import define as _attrs_define
7
- from attrs import field as _attrs_field
8
-
9
- from ..models.agent_query_params_system_prompt_kind_type_0 import AgentQueryParamsSystemPromptKindType0
10
- from ..models.document_query_tool import DocumentQueryTool
11
- from ..models.llm_enum import LLMEnum
12
- from ..models.response_schema_type import ResponseSchemaType
13
- from ..models.task_effort import TaskEffort
14
- from ..types import UNSET, Unset
15
-
16
- T = TypeVar("T", bound="AgentQueryParams")
17
-
18
-
19
- @_attrs_define
20
- class AgentQueryParams:
21
- """
22
- Attributes:
23
- task (str): The user-specified task
24
- llm (LLMEnum | Unset):
25
- agenda (str | Unset): Research agenda, if any Default: ''.
26
- selected_input_fields (list[str] | None | Unset): Fields to select from the input artifacts. If None, select all
27
- fields.
28
- apply_at_depth (int | Unset): Default: -1.
29
- preview (bool | Unset): When true, process only the first 5 inputs in map/map-expand operations Default: False.
30
- is_expand (bool | Unset): When true, treat outputs as lists (expand behavior) Default: False.
31
- flatten_map_expand (bool | Unset): When true with MAP mode and is_expand, flatten expanded results into single
32
- group instead of nested groups Default: True.
33
- response_schema (Any | Unset): Default: {'_model_name': 'Root', 'answer': {'description': 'The response
34
- answer', 'optional': False, 'type': 'str'}}.
35
- response_schema_type (ResponseSchemaType | Unset): Type of response schema format.
36
- number_of_steps (int | None | Unset): The number of agent iterations allowed to complete the task, after which
37
- the agent is forced to provide an answer, if it has not already done so. If not specified, defaults based on
38
- effort_level.
39
- generate_assumptions (bool | Unset): Default: False.
40
- include_provenance_and_notes (bool | Unset): Whether to include an additional provenance and notes field in the
41
- output and prompt Default: True.
42
- agent_step_timeout_seconds (int | Unset): Agent step timeout in seconds (8-1400) Default: 300.
43
- timeout_seconds (int | Unset): Full task timeout in seconds (20-360000) Default: 600.
44
- retries (int | Unset): Number of retries (0-5) Default: 2.
45
- enable_communication (bool | Unset): Whether to enable communication between agents Default: False.
46
- max_feedback_rounds (int | Unset): Maximum number of rounds in orchestrator v2 mode.1 is equivalent to a
47
- standard map task. 2 is map -> feedback -> map Default: 1.
48
- document_query_tool (DocumentQueryTool | Unset): Document query tool to use.
49
- effort_level (TaskEffort | Unset): Effort level for task execution (includes MINIMAL for non-agent execution).
50
- system_prompt_kind (AgentQueryParamsSystemPromptKindType0 | None | Unset): System prompt variant to use. If not
51
- specified, defaults based on effort_level (speed_focused for LOW, persistent for HIGH)
52
- batch_size (int | None | Unset): The number of artifacts to process in a single batch. If set, enables batched
53
- agent processing.
54
- minimal_llm_system_prompt (None | str | Unset): Custom system prompt for minimal LLM calls (number_of_steps=0).
55
- If not provided, a default prompt with today's date is used.
56
- """
57
-
58
- task: str
59
- llm: LLMEnum | Unset = UNSET
60
- agenda: str | Unset = ""
61
- selected_input_fields: list[str] | None | Unset = UNSET
62
- apply_at_depth: int | Unset = -1
63
- preview: bool | Unset = False
64
- is_expand: bool | Unset = False
65
- flatten_map_expand: bool | Unset = True
66
- response_schema: Any | Unset = {
67
- "_model_name": "Root",
68
- "answer": {"description": "The response answer", "optional": False, "type": "str"},
69
- }
70
- response_schema_type: ResponseSchemaType | Unset = UNSET
71
- number_of_steps: int | None | Unset = UNSET
72
- generate_assumptions: bool | Unset = False
73
- include_provenance_and_notes: bool | Unset = True
74
- agent_step_timeout_seconds: int | Unset = 300
75
- timeout_seconds: int | Unset = 600
76
- retries: int | Unset = 2
77
- enable_communication: bool | Unset = False
78
- max_feedback_rounds: int | Unset = 1
79
- document_query_tool: DocumentQueryTool | Unset = UNSET
80
- effort_level: TaskEffort | Unset = UNSET
81
- system_prompt_kind: AgentQueryParamsSystemPromptKindType0 | None | Unset = UNSET
82
- batch_size: int | None | Unset = UNSET
83
- minimal_llm_system_prompt: None | str | Unset = UNSET
84
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
85
-
86
- def to_dict(self) -> dict[str, Any]:
87
- task = self.task
88
-
89
- llm: str | Unset = UNSET
90
- if not isinstance(self.llm, Unset):
91
- llm = self.llm.value
92
-
93
- agenda = self.agenda
94
-
95
- selected_input_fields: list[str] | None | Unset
96
- if isinstance(self.selected_input_fields, Unset):
97
- selected_input_fields = UNSET
98
- elif isinstance(self.selected_input_fields, list):
99
- selected_input_fields = self.selected_input_fields
100
-
101
- else:
102
- selected_input_fields = self.selected_input_fields
103
-
104
- apply_at_depth = self.apply_at_depth
105
-
106
- preview = self.preview
107
-
108
- is_expand = self.is_expand
109
-
110
- flatten_map_expand = self.flatten_map_expand
111
-
112
- response_schema = self.response_schema
113
-
114
- response_schema_type: str | Unset = UNSET
115
- if not isinstance(self.response_schema_type, Unset):
116
- response_schema_type = self.response_schema_type.value
117
-
118
- number_of_steps: int | None | Unset
119
- if isinstance(self.number_of_steps, Unset):
120
- number_of_steps = UNSET
121
- else:
122
- number_of_steps = self.number_of_steps
123
-
124
- generate_assumptions = self.generate_assumptions
125
-
126
- include_provenance_and_notes = self.include_provenance_and_notes
127
-
128
- agent_step_timeout_seconds = self.agent_step_timeout_seconds
129
-
130
- timeout_seconds = self.timeout_seconds
131
-
132
- retries = self.retries
133
-
134
- enable_communication = self.enable_communication
135
-
136
- max_feedback_rounds = self.max_feedback_rounds
137
-
138
- document_query_tool: str | Unset = UNSET
139
- if not isinstance(self.document_query_tool, Unset):
140
- document_query_tool = self.document_query_tool.value
141
-
142
- effort_level: str | Unset = UNSET
143
- if not isinstance(self.effort_level, Unset):
144
- effort_level = self.effort_level.value
145
-
146
- system_prompt_kind: None | str | Unset
147
- if isinstance(self.system_prompt_kind, Unset):
148
- system_prompt_kind = UNSET
149
- elif isinstance(self.system_prompt_kind, AgentQueryParamsSystemPromptKindType0):
150
- system_prompt_kind = self.system_prompt_kind.value
151
- else:
152
- system_prompt_kind = self.system_prompt_kind
153
-
154
- batch_size: int | None | Unset
155
- if isinstance(self.batch_size, Unset):
156
- batch_size = UNSET
157
- else:
158
- batch_size = self.batch_size
159
-
160
- minimal_llm_system_prompt: None | str | Unset
161
- if isinstance(self.minimal_llm_system_prompt, Unset):
162
- minimal_llm_system_prompt = UNSET
163
- else:
164
- minimal_llm_system_prompt = self.minimal_llm_system_prompt
165
-
166
- field_dict: dict[str, Any] = {}
167
- field_dict.update(self.additional_properties)
168
- field_dict.update(
169
- {
170
- "task": task,
171
- }
172
- )
173
- if llm is not UNSET:
174
- field_dict["llm"] = llm
175
- if agenda is not UNSET:
176
- field_dict["agenda"] = agenda
177
- if selected_input_fields is not UNSET:
178
- field_dict["selected_input_fields"] = selected_input_fields
179
- if apply_at_depth is not UNSET:
180
- field_dict["apply_at_depth"] = apply_at_depth
181
- if preview is not UNSET:
182
- field_dict["preview"] = preview
183
- if is_expand is not UNSET:
184
- field_dict["is_expand"] = is_expand
185
- if flatten_map_expand is not UNSET:
186
- field_dict["flatten_map_expand"] = flatten_map_expand
187
- if response_schema is not UNSET:
188
- field_dict["response_schema"] = response_schema
189
- if response_schema_type is not UNSET:
190
- field_dict["response_schema_type"] = response_schema_type
191
- if number_of_steps is not UNSET:
192
- field_dict["number_of_steps"] = number_of_steps
193
- if generate_assumptions is not UNSET:
194
- field_dict["generate_assumptions"] = generate_assumptions
195
- if include_provenance_and_notes is not UNSET:
196
- field_dict["include_provenance_and_notes"] = include_provenance_and_notes
197
- if agent_step_timeout_seconds is not UNSET:
198
- field_dict["agent_step_timeout_seconds"] = agent_step_timeout_seconds
199
- if timeout_seconds is not UNSET:
200
- field_dict["timeout_seconds"] = timeout_seconds
201
- if retries is not UNSET:
202
- field_dict["retries"] = retries
203
- if enable_communication is not UNSET:
204
- field_dict["enable_communication"] = enable_communication
205
- if max_feedback_rounds is not UNSET:
206
- field_dict["max_feedback_rounds"] = max_feedback_rounds
207
- if document_query_tool is not UNSET:
208
- field_dict["document_query_tool"] = document_query_tool
209
- if effort_level is not UNSET:
210
- field_dict["effort_level"] = effort_level
211
- if system_prompt_kind is not UNSET:
212
- field_dict["system_prompt_kind"] = system_prompt_kind
213
- if batch_size is not UNSET:
214
- field_dict["batch_size"] = batch_size
215
- if minimal_llm_system_prompt is not UNSET:
216
- field_dict["minimal_llm_system_prompt"] = minimal_llm_system_prompt
217
-
218
- return field_dict
219
-
220
- @classmethod
221
- def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
222
- d = dict(src_dict)
223
- task = d.pop("task")
224
-
225
- _llm = d.pop("llm", UNSET)
226
- llm: LLMEnum | Unset
227
- if isinstance(_llm, Unset):
228
- llm = UNSET
229
- else:
230
- llm = LLMEnum(_llm)
231
-
232
- agenda = d.pop("agenda", UNSET)
233
-
234
- def _parse_selected_input_fields(data: object) -> list[str] | None | Unset:
235
- if data is None:
236
- return data
237
- if isinstance(data, Unset):
238
- return data
239
- try:
240
- if not isinstance(data, list):
241
- raise TypeError()
242
- selected_input_fields_type_0 = cast(list[str], data)
243
-
244
- return selected_input_fields_type_0
245
- except (TypeError, ValueError, AttributeError, KeyError):
246
- pass
247
- return cast(list[str] | None | Unset, data)
248
-
249
- selected_input_fields = _parse_selected_input_fields(d.pop("selected_input_fields", UNSET))
250
-
251
- apply_at_depth = d.pop("apply_at_depth", UNSET)
252
-
253
- preview = d.pop("preview", UNSET)
254
-
255
- is_expand = d.pop("is_expand", UNSET)
256
-
257
- flatten_map_expand = d.pop("flatten_map_expand", UNSET)
258
-
259
- response_schema = d.pop("response_schema", UNSET)
260
-
261
- _response_schema_type = d.pop("response_schema_type", UNSET)
262
- response_schema_type: ResponseSchemaType | Unset
263
- if isinstance(_response_schema_type, Unset):
264
- response_schema_type = UNSET
265
- else:
266
- response_schema_type = ResponseSchemaType(_response_schema_type)
267
-
268
- def _parse_number_of_steps(data: object) -> int | None | Unset:
269
- if data is None:
270
- return data
271
- if isinstance(data, Unset):
272
- return data
273
- return cast(int | None | Unset, data)
274
-
275
- number_of_steps = _parse_number_of_steps(d.pop("number_of_steps", UNSET))
276
-
277
- generate_assumptions = d.pop("generate_assumptions", UNSET)
278
-
279
- include_provenance_and_notes = d.pop("include_provenance_and_notes", UNSET)
280
-
281
- agent_step_timeout_seconds = d.pop("agent_step_timeout_seconds", UNSET)
282
-
283
- timeout_seconds = d.pop("timeout_seconds", UNSET)
284
-
285
- retries = d.pop("retries", UNSET)
286
-
287
- enable_communication = d.pop("enable_communication", UNSET)
288
-
289
- max_feedback_rounds = d.pop("max_feedback_rounds", UNSET)
290
-
291
- _document_query_tool = d.pop("document_query_tool", UNSET)
292
- document_query_tool: DocumentQueryTool | Unset
293
- if isinstance(_document_query_tool, Unset):
294
- document_query_tool = UNSET
295
- else:
296
- document_query_tool = DocumentQueryTool(_document_query_tool)
297
-
298
- _effort_level = d.pop("effort_level", UNSET)
299
- effort_level: TaskEffort | Unset
300
- if isinstance(_effort_level, Unset):
301
- effort_level = UNSET
302
- else:
303
- effort_level = TaskEffort(_effort_level)
304
-
305
- def _parse_system_prompt_kind(data: object) -> AgentQueryParamsSystemPromptKindType0 | None | Unset:
306
- if data is None:
307
- return data
308
- if isinstance(data, Unset):
309
- return data
310
- try:
311
- if not isinstance(data, str):
312
- raise TypeError()
313
- system_prompt_kind_type_0 = AgentQueryParamsSystemPromptKindType0(data)
314
-
315
- return system_prompt_kind_type_0
316
- except (TypeError, ValueError, AttributeError, KeyError):
317
- pass
318
- return cast(AgentQueryParamsSystemPromptKindType0 | None | Unset, data)
319
-
320
- system_prompt_kind = _parse_system_prompt_kind(d.pop("system_prompt_kind", UNSET))
321
-
322
- def _parse_batch_size(data: object) -> int | None | Unset:
323
- if data is None:
324
- return data
325
- if isinstance(data, Unset):
326
- return data
327
- return cast(int | None | Unset, data)
328
-
329
- batch_size = _parse_batch_size(d.pop("batch_size", UNSET))
330
-
331
- def _parse_minimal_llm_system_prompt(data: object) -> None | str | Unset:
332
- if data is None:
333
- return data
334
- if isinstance(data, Unset):
335
- return data
336
- return cast(None | str | Unset, data)
337
-
338
- minimal_llm_system_prompt = _parse_minimal_llm_system_prompt(d.pop("minimal_llm_system_prompt", UNSET))
339
-
340
- agent_query_params = cls(
341
- task=task,
342
- llm=llm,
343
- agenda=agenda,
344
- selected_input_fields=selected_input_fields,
345
- apply_at_depth=apply_at_depth,
346
- preview=preview,
347
- is_expand=is_expand,
348
- flatten_map_expand=flatten_map_expand,
349
- response_schema=response_schema,
350
- response_schema_type=response_schema_type,
351
- number_of_steps=number_of_steps,
352
- generate_assumptions=generate_assumptions,
353
- include_provenance_and_notes=include_provenance_and_notes,
354
- agent_step_timeout_seconds=agent_step_timeout_seconds,
355
- timeout_seconds=timeout_seconds,
356
- retries=retries,
357
- enable_communication=enable_communication,
358
- max_feedback_rounds=max_feedback_rounds,
359
- document_query_tool=document_query_tool,
360
- effort_level=effort_level,
361
- system_prompt_kind=system_prompt_kind,
362
- batch_size=batch_size,
363
- minimal_llm_system_prompt=minimal_llm_system_prompt,
364
- )
365
-
366
- agent_query_params.additional_properties = d
367
- return agent_query_params
368
-
369
- @property
370
- def additional_keys(self) -> list[str]:
371
- return list(self.additional_properties.keys())
372
-
373
- def __getitem__(self, key: str) -> Any:
374
- return self.additional_properties[key]
375
-
376
- def __setitem__(self, key: str, value: Any) -> None:
377
- self.additional_properties[key] = value
378
-
379
- def __delitem__(self, key: str) -> None:
380
- del self.additional_properties[key]
381
-
382
- def __contains__(self, key: str) -> bool:
383
- return key in self.additional_properties
@@ -1,10 +0,0 @@
1
- from enum import Enum
2
-
3
-
4
- class AgentQueryParamsSystemPromptKindType0(str, Enum):
5
- PERSISTENT = "persistent"
6
- SPEED_FOCUSED = "speed_focused"
7
- TONED_DOWN_WITH_ALLOWED_CONFLICTS = "toned_down_with_allowed_conflicts"
8
-
9
- def __str__(self) -> str:
10
- return str(self.value)
@@ -1,163 +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 ..models.agent_task_args_processing_mode import AgentTaskArgsProcessingMode
11
- from ..types import UNSET, Unset
12
-
13
- if TYPE_CHECKING:
14
- from ..models.agent_query_params import AgentQueryParams
15
-
16
-
17
- T = TypeVar("T", bound="AgentTaskArgs")
18
-
19
-
20
- @_attrs_define
21
- class AgentTaskArgs:
22
- """
23
- Attributes:
24
- processing_mode (AgentTaskArgsProcessingMode):
25
- query (AgentQueryParams):
26
- input_artifacts (list[UUID]):
27
- context_artifacts (list[UUID]):
28
- label (None | str | Unset): Very short label (a few words) clearly stating the action, e.g. 'Find third-party
29
- claims'.
30
- description (None | str | Unset): One to two sentence, high-level description of what this task does. If the
31
- output has many columns or parameters, do not list them all; give a holistic description instead.
32
- join_with_input (bool | Unset): Whether to include input columns alongside the generated columns in the output
33
- artifact. Only used for `map` processing mode. Default: True.
34
- """
35
-
36
- processing_mode: AgentTaskArgsProcessingMode
37
- query: AgentQueryParams
38
- input_artifacts: list[UUID]
39
- context_artifacts: list[UUID]
40
- label: None | str | Unset = UNSET
41
- description: None | str | Unset = UNSET
42
- join_with_input: bool | Unset = True
43
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
44
-
45
- def to_dict(self) -> dict[str, Any]:
46
- processing_mode = self.processing_mode.value
47
-
48
- query = self.query.to_dict()
49
-
50
- input_artifacts = []
51
- for componentsschemas_input_artifacts_ids_item_data in self.input_artifacts:
52
- componentsschemas_input_artifacts_ids_item = str(componentsschemas_input_artifacts_ids_item_data)
53
- input_artifacts.append(componentsschemas_input_artifacts_ids_item)
54
-
55
- context_artifacts = []
56
- for componentsschemas_context_artifacts_ids_item_data in self.context_artifacts:
57
- componentsschemas_context_artifacts_ids_item = str(componentsschemas_context_artifacts_ids_item_data)
58
- context_artifacts.append(componentsschemas_context_artifacts_ids_item)
59
-
60
- label: None | str | Unset
61
- if isinstance(self.label, Unset):
62
- label = UNSET
63
- else:
64
- label = self.label
65
-
66
- description: None | str | Unset
67
- if isinstance(self.description, Unset):
68
- description = UNSET
69
- else:
70
- description = self.description
71
-
72
- join_with_input = self.join_with_input
73
-
74
- field_dict: dict[str, Any] = {}
75
- field_dict.update(self.additional_properties)
76
- field_dict.update(
77
- {
78
- "processing_mode": processing_mode,
79
- "query": query,
80
- "input_artifacts": input_artifacts,
81
- "context_artifacts": context_artifacts,
82
- }
83
- )
84
- if label is not UNSET:
85
- field_dict["label"] = label
86
- if description is not UNSET:
87
- field_dict["description"] = description
88
- if join_with_input is not UNSET:
89
- field_dict["join_with_input"] = join_with_input
90
-
91
- return field_dict
92
-
93
- @classmethod
94
- def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
95
- from ..models.agent_query_params import AgentQueryParams
96
-
97
- d = dict(src_dict)
98
- processing_mode = AgentTaskArgsProcessingMode(d.pop("processing_mode"))
99
-
100
- query = AgentQueryParams.from_dict(d.pop("query"))
101
-
102
- input_artifacts = []
103
- _input_artifacts = d.pop("input_artifacts")
104
- for componentsschemas_input_artifacts_ids_item_data in _input_artifacts:
105
- componentsschemas_input_artifacts_ids_item = UUID(componentsschemas_input_artifacts_ids_item_data)
106
-
107
- input_artifacts.append(componentsschemas_input_artifacts_ids_item)
108
-
109
- context_artifacts = []
110
- _context_artifacts = d.pop("context_artifacts")
111
- for componentsschemas_context_artifacts_ids_item_data in _context_artifacts:
112
- componentsschemas_context_artifacts_ids_item = UUID(componentsschemas_context_artifacts_ids_item_data)
113
-
114
- context_artifacts.append(componentsschemas_context_artifacts_ids_item)
115
-
116
- def _parse_label(data: object) -> None | str | Unset:
117
- if data is None:
118
- return data
119
- if isinstance(data, Unset):
120
- return data
121
- return cast(None | str | Unset, data)
122
-
123
- label = _parse_label(d.pop("label", UNSET))
124
-
125
- def _parse_description(data: object) -> None | str | Unset:
126
- if data is None:
127
- return data
128
- if isinstance(data, Unset):
129
- return data
130
- return cast(None | str | Unset, data)
131
-
132
- description = _parse_description(d.pop("description", UNSET))
133
-
134
- join_with_input = d.pop("join_with_input", UNSET)
135
-
136
- agent_task_args = cls(
137
- processing_mode=processing_mode,
138
- query=query,
139
- input_artifacts=input_artifacts,
140
- context_artifacts=context_artifacts,
141
- label=label,
142
- description=description,
143
- join_with_input=join_with_input,
144
- )
145
-
146
- agent_task_args.additional_properties = d
147
- return agent_task_args
148
-
149
- @property
150
- def additional_keys(self) -> list[str]:
151
- return list(self.additional_properties.keys())
152
-
153
- def __getitem__(self, key: str) -> Any:
154
- return self.additional_properties[key]
155
-
156
- def __setitem__(self, key: str, value: Any) -> None:
157
- self.additional_properties[key] = value
158
-
159
- def __delitem__(self, key: str) -> None:
160
- del self.additional_properties[key]
161
-
162
- def __contains__(self, key: str) -> bool:
163
- return key in self.additional_properties
@@ -1,9 +0,0 @@
1
- from enum import Enum
2
-
3
-
4
- class AgentTaskArgsProcessingMode(str, Enum):
5
- MAP = "map"
6
- REDUCE = "reduce"
7
-
8
- def __str__(self) -> str:
9
- return str(self.value)
@@ -1,9 +0,0 @@
1
- from enum import Enum
2
-
3
-
4
- class AllowedSuggestions(str, Enum):
5
- FILTER_DEDUPE_RESULTS = "filter_dedupe_results"
6
- RUN_ON_ALL_ROWS = "run_on_all_rows"
7
-
8
- def __str__(self) -> str:
9
- return str(self.value)