athena-intelligence 0.1.227__py3-none-any.whl → 0.1.357__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.
Potentially problematic release.
This version of athena-intelligence might be problematic. Click here for more details.
- athena/__init__.py +223 -69
- athena/agents/__init__.py +33 -1
- athena/agents/client.py +81 -18
- athena/aop/client.py +2 -2
- athena/aop/raw_client.py +2 -2
- athena/assets/client.py +359 -2
- athena/assets/raw_client.py +562 -0
- athena/base_client.py +118 -18
- athena/client.py +23 -21
- athena/core/__init__.py +73 -20
- athena/core/client_wrapper.py +2 -2
- athena/core/force_multipart.py +4 -2
- athena/core/http_response.py +1 -1
- athena/core/pydantic_utilities.py +5 -2
- athena/environment.py +0 -2
- athena/errors/__init__.py +42 -7
- athena/query/__init__.py +28 -1
- athena/query/types/__init__.py +30 -1
- athena/tools/__init__.py +39 -4
- athena/tools/client.py +161 -31
- athena/tools/raw_client.py +12 -9
- athena/tools/sheets/__init__.py +29 -2
- athena/tools/sheets/client.py +66 -101
- athena/tools/sheets/raw_client.py +66 -93
- athena/tools/sheets/types/__init__.py +31 -2
- athena/tools/sheets/types/{insert_table_row_request_row_data_item_value.py → update_sheet_range_request_values_item_item.py} +1 -1
- athena/tools/types/__init__.py +28 -1
- athena/types/__init__.py +187 -52
- athena/types/aop_execute_response_out.py +2 -1
- athena/types/border_model.py +32 -0
- athena/types/border_style.py +7 -0
- athena/types/borders_model.py +58 -0
- athena/types/cell_format.py +60 -0
- athena/types/cell_format_horizontal_alignment.py +5 -0
- athena/types/cell_format_vertical_alignment.py +5 -0
- athena/types/conversation_asset_info.py +8 -2
- athena/types/conversation_message.py +42 -0
- athena/types/conversation_result.py +67 -0
- athena/types/creatable_asset_type.py +5 -0
- athena/types/create_asset_response_out.py +46 -0
- athena/types/create_project_response_out.py +51 -0
- athena/types/dimension_properties.py +49 -0
- athena/types/grid_range.py +39 -0
- athena/types/{file_chunk_request_out.py → number_format_model.py} +8 -4
- athena/types/number_format_type.py +21 -0
- athena/types/sheet.py +83 -0
- athena/types/table_row_data.py +5 -0
- athena/types/text_format_model.py +37 -0
- athena/types/textrotation.py +5 -0
- athena/types/{document_chunk.py → theme_color.py} +3 -7
- athena/types/thread_status_response_out.py +5 -0
- athena/types/wrap_strategy.py +5 -0
- {athena_intelligence-0.1.227.dist-info → athena_intelligence-0.1.357.dist-info}/METADATA +1 -1
- {athena_intelligence-0.1.227.dist-info → athena_intelligence-0.1.357.dist-info}/RECORD +55 -36
- {athena_intelligence-0.1.227.dist-info → athena_intelligence-0.1.357.dist-info}/WHEEL +0 -0
athena/types/__init__.py
CHANGED
|
@@ -2,56 +2,172 @@
|
|
|
2
2
|
|
|
3
3
|
# isort: skip_file
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
from
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
from .
|
|
10
|
-
from .
|
|
11
|
-
from .
|
|
12
|
-
from .
|
|
13
|
-
from .
|
|
14
|
-
from .
|
|
15
|
-
from .
|
|
16
|
-
from .
|
|
17
|
-
from .
|
|
18
|
-
from .
|
|
19
|
-
from .
|
|
20
|
-
from .
|
|
21
|
-
from .
|
|
22
|
-
from .
|
|
23
|
-
from .
|
|
24
|
-
from .
|
|
25
|
-
from .
|
|
26
|
-
from .
|
|
27
|
-
from .
|
|
28
|
-
from .
|
|
29
|
-
from .
|
|
30
|
-
from .
|
|
31
|
-
from .
|
|
32
|
-
from .
|
|
33
|
-
from .
|
|
34
|
-
from .
|
|
35
|
-
from .
|
|
36
|
-
from .
|
|
37
|
-
from .
|
|
38
|
-
from .
|
|
39
|
-
from .
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
from .
|
|
45
|
-
from .
|
|
46
|
-
from .
|
|
47
|
-
from .
|
|
48
|
-
from .
|
|
49
|
-
from .
|
|
50
|
-
from .
|
|
51
|
-
from .
|
|
52
|
-
from .
|
|
53
|
-
from .
|
|
54
|
-
from .
|
|
5
|
+
import typing
|
|
6
|
+
from importlib import import_module
|
|
7
|
+
|
|
8
|
+
if typing.TYPE_CHECKING:
|
|
9
|
+
from .aop_async_execute_response_out import AopAsyncExecuteResponseOut
|
|
10
|
+
from .aop_execute_request_in import AopExecuteRequestIn
|
|
11
|
+
from .aop_execute_response_out import AopExecuteResponseOut
|
|
12
|
+
from .asset_content_request_out import AssetContentRequestOut
|
|
13
|
+
from .asset_node import AssetNode
|
|
14
|
+
from .asset_screenshot_response_out import AssetScreenshotResponseOut
|
|
15
|
+
from .border_model import BorderModel
|
|
16
|
+
from .border_style import BorderStyle
|
|
17
|
+
from .borders_model import BordersModel
|
|
18
|
+
from .cell_format import CellFormat
|
|
19
|
+
from .cell_format_horizontal_alignment import CellFormatHorizontalAlignment
|
|
20
|
+
from .cell_format_vertical_alignment import CellFormatVerticalAlignment
|
|
21
|
+
from .chunk import Chunk
|
|
22
|
+
from .chunk_content_item import ChunkContentItem, ChunkContentItem_ImageUrl, ChunkContentItem_Text
|
|
23
|
+
from .chunk_result import ChunkResult
|
|
24
|
+
from .chunk_result_chunk_id import ChunkResultChunkId
|
|
25
|
+
from .content import Content
|
|
26
|
+
from .conversation_asset_info import ConversationAssetInfo
|
|
27
|
+
from .conversation_message import ConversationMessage
|
|
28
|
+
from .conversation_result import ConversationResult
|
|
29
|
+
from .creatable_asset_type import CreatableAssetType
|
|
30
|
+
from .create_asset_response_out import CreateAssetResponseOut
|
|
31
|
+
from .create_new_sheet_tab_response import CreateNewSheetTabResponse
|
|
32
|
+
from .create_project_response_out import CreateProjectResponseOut
|
|
33
|
+
from .custom_agent_response import CustomAgentResponse
|
|
34
|
+
from .data_frame_request_out import DataFrameRequestOut
|
|
35
|
+
from .data_frame_request_out_columns_item import DataFrameRequestOutColumnsItem
|
|
36
|
+
from .data_frame_request_out_data_item_item import DataFrameRequestOutDataItemItem
|
|
37
|
+
from .data_frame_request_out_index_item import DataFrameRequestOutIndexItem
|
|
38
|
+
from .data_frame_unknown_format_error import DataFrameUnknownFormatError
|
|
39
|
+
from .dimension_properties import DimensionProperties
|
|
40
|
+
from .drive_agent_response import DriveAgentResponse
|
|
41
|
+
from .file_too_large_error import FileTooLargeError
|
|
42
|
+
from .folder_response import FolderResponse
|
|
43
|
+
from .general_agent_config import GeneralAgentConfig
|
|
44
|
+
from .general_agent_config_enabled_tools_item import GeneralAgentConfigEnabledToolsItem
|
|
45
|
+
from .general_agent_request import GeneralAgentRequest
|
|
46
|
+
from .general_agent_response import GeneralAgentResponse
|
|
47
|
+
from .general_agent_response_message import GeneralAgentResponseMessage
|
|
48
|
+
from .general_agent_response_message_kwargs import GeneralAgentResponseMessageKwargs
|
|
49
|
+
from .get_table_response import GetTableResponse
|
|
50
|
+
from .grid_range import GridRange
|
|
51
|
+
from .id import Id
|
|
52
|
+
from .image_url_content import ImageUrlContent
|
|
53
|
+
from .input_message import InputMessage
|
|
54
|
+
from .input_message_content_item import (
|
|
55
|
+
InputMessageContentItem,
|
|
56
|
+
InputMessageContentItem_ImageUrl,
|
|
57
|
+
InputMessageContentItem_Text,
|
|
58
|
+
)
|
|
59
|
+
from .number_format_model import NumberFormatModel
|
|
60
|
+
from .number_format_type import NumberFormatType
|
|
61
|
+
from .paginated_assets_out import PaginatedAssetsOut
|
|
62
|
+
from .prompt_message import PromptMessage
|
|
63
|
+
from .public_asset_out import PublicAssetOut
|
|
64
|
+
from .research_agent_response import ResearchAgentResponse
|
|
65
|
+
from .save_asset_request_out import SaveAssetRequestOut
|
|
66
|
+
from .sheet import Sheet
|
|
67
|
+
from .sheet_operation_response import SheetOperationResponse
|
|
68
|
+
from .sql_agent_response import SqlAgentResponse
|
|
69
|
+
from .structured_data_extractor_response import StructuredDataExtractorResponse
|
|
70
|
+
from .table_row_data import TableRowData
|
|
71
|
+
from .text_content import TextContent
|
|
72
|
+
from .text_format_model import TextFormatModel
|
|
73
|
+
from .textrotation import Textrotation
|
|
74
|
+
from .theme_color import ThemeColor
|
|
75
|
+
from .thread_status_response_out import ThreadStatusResponseOut
|
|
76
|
+
from .type import Type
|
|
77
|
+
from .wrap_strategy import WrapStrategy
|
|
78
|
+
_dynamic_imports: typing.Dict[str, str] = {
|
|
79
|
+
"AopAsyncExecuteResponseOut": ".aop_async_execute_response_out",
|
|
80
|
+
"AopExecuteRequestIn": ".aop_execute_request_in",
|
|
81
|
+
"AopExecuteResponseOut": ".aop_execute_response_out",
|
|
82
|
+
"AssetContentRequestOut": ".asset_content_request_out",
|
|
83
|
+
"AssetNode": ".asset_node",
|
|
84
|
+
"AssetScreenshotResponseOut": ".asset_screenshot_response_out",
|
|
85
|
+
"BorderModel": ".border_model",
|
|
86
|
+
"BorderStyle": ".border_style",
|
|
87
|
+
"BordersModel": ".borders_model",
|
|
88
|
+
"CellFormat": ".cell_format",
|
|
89
|
+
"CellFormatHorizontalAlignment": ".cell_format_horizontal_alignment",
|
|
90
|
+
"CellFormatVerticalAlignment": ".cell_format_vertical_alignment",
|
|
91
|
+
"Chunk": ".chunk",
|
|
92
|
+
"ChunkContentItem": ".chunk_content_item",
|
|
93
|
+
"ChunkContentItem_ImageUrl": ".chunk_content_item",
|
|
94
|
+
"ChunkContentItem_Text": ".chunk_content_item",
|
|
95
|
+
"ChunkResult": ".chunk_result",
|
|
96
|
+
"ChunkResultChunkId": ".chunk_result_chunk_id",
|
|
97
|
+
"Content": ".content",
|
|
98
|
+
"ConversationAssetInfo": ".conversation_asset_info",
|
|
99
|
+
"ConversationMessage": ".conversation_message",
|
|
100
|
+
"ConversationResult": ".conversation_result",
|
|
101
|
+
"CreatableAssetType": ".creatable_asset_type",
|
|
102
|
+
"CreateAssetResponseOut": ".create_asset_response_out",
|
|
103
|
+
"CreateNewSheetTabResponse": ".create_new_sheet_tab_response",
|
|
104
|
+
"CreateProjectResponseOut": ".create_project_response_out",
|
|
105
|
+
"CustomAgentResponse": ".custom_agent_response",
|
|
106
|
+
"DataFrameRequestOut": ".data_frame_request_out",
|
|
107
|
+
"DataFrameRequestOutColumnsItem": ".data_frame_request_out_columns_item",
|
|
108
|
+
"DataFrameRequestOutDataItemItem": ".data_frame_request_out_data_item_item",
|
|
109
|
+
"DataFrameRequestOutIndexItem": ".data_frame_request_out_index_item",
|
|
110
|
+
"DataFrameUnknownFormatError": ".data_frame_unknown_format_error",
|
|
111
|
+
"DimensionProperties": ".dimension_properties",
|
|
112
|
+
"DriveAgentResponse": ".drive_agent_response",
|
|
113
|
+
"FileTooLargeError": ".file_too_large_error",
|
|
114
|
+
"FolderResponse": ".folder_response",
|
|
115
|
+
"GeneralAgentConfig": ".general_agent_config",
|
|
116
|
+
"GeneralAgentConfigEnabledToolsItem": ".general_agent_config_enabled_tools_item",
|
|
117
|
+
"GeneralAgentRequest": ".general_agent_request",
|
|
118
|
+
"GeneralAgentResponse": ".general_agent_response",
|
|
119
|
+
"GeneralAgentResponseMessage": ".general_agent_response_message",
|
|
120
|
+
"GeneralAgentResponseMessageKwargs": ".general_agent_response_message_kwargs",
|
|
121
|
+
"GetTableResponse": ".get_table_response",
|
|
122
|
+
"GridRange": ".grid_range",
|
|
123
|
+
"Id": ".id",
|
|
124
|
+
"ImageUrlContent": ".image_url_content",
|
|
125
|
+
"InputMessage": ".input_message",
|
|
126
|
+
"InputMessageContentItem": ".input_message_content_item",
|
|
127
|
+
"InputMessageContentItem_ImageUrl": ".input_message_content_item",
|
|
128
|
+
"InputMessageContentItem_Text": ".input_message_content_item",
|
|
129
|
+
"NumberFormatModel": ".number_format_model",
|
|
130
|
+
"NumberFormatType": ".number_format_type",
|
|
131
|
+
"PaginatedAssetsOut": ".paginated_assets_out",
|
|
132
|
+
"PromptMessage": ".prompt_message",
|
|
133
|
+
"PublicAssetOut": ".public_asset_out",
|
|
134
|
+
"ResearchAgentResponse": ".research_agent_response",
|
|
135
|
+
"SaveAssetRequestOut": ".save_asset_request_out",
|
|
136
|
+
"Sheet": ".sheet",
|
|
137
|
+
"SheetOperationResponse": ".sheet_operation_response",
|
|
138
|
+
"SqlAgentResponse": ".sql_agent_response",
|
|
139
|
+
"StructuredDataExtractorResponse": ".structured_data_extractor_response",
|
|
140
|
+
"TableRowData": ".table_row_data",
|
|
141
|
+
"TextContent": ".text_content",
|
|
142
|
+
"TextFormatModel": ".text_format_model",
|
|
143
|
+
"Textrotation": ".textrotation",
|
|
144
|
+
"ThemeColor": ".theme_color",
|
|
145
|
+
"ThreadStatusResponseOut": ".thread_status_response_out",
|
|
146
|
+
"Type": ".type",
|
|
147
|
+
"WrapStrategy": ".wrap_strategy",
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
|
|
151
|
+
def __getattr__(attr_name: str) -> typing.Any:
|
|
152
|
+
module_name = _dynamic_imports.get(attr_name)
|
|
153
|
+
if module_name is None:
|
|
154
|
+
raise AttributeError(f"No {attr_name} found in _dynamic_imports for module name -> {__name__}")
|
|
155
|
+
try:
|
|
156
|
+
module = import_module(module_name, __package__)
|
|
157
|
+
if module_name == f".{attr_name}":
|
|
158
|
+
return module
|
|
159
|
+
else:
|
|
160
|
+
return getattr(module, attr_name)
|
|
161
|
+
except ImportError as e:
|
|
162
|
+
raise ImportError(f"Failed to import {attr_name} from {module_name}: {e}") from e
|
|
163
|
+
except AttributeError as e:
|
|
164
|
+
raise AttributeError(f"Failed to get {attr_name} from {module_name}: {e}") from e
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
def __dir__():
|
|
168
|
+
lazy_attrs = list(_dynamic_imports.keys())
|
|
169
|
+
return sorted(lazy_attrs)
|
|
170
|
+
|
|
55
171
|
|
|
56
172
|
__all__ = [
|
|
57
173
|
"AopAsyncExecuteResponseOut",
|
|
@@ -60,6 +176,12 @@ __all__ = [
|
|
|
60
176
|
"AssetContentRequestOut",
|
|
61
177
|
"AssetNode",
|
|
62
178
|
"AssetScreenshotResponseOut",
|
|
179
|
+
"BorderModel",
|
|
180
|
+
"BorderStyle",
|
|
181
|
+
"BordersModel",
|
|
182
|
+
"CellFormat",
|
|
183
|
+
"CellFormatHorizontalAlignment",
|
|
184
|
+
"CellFormatVerticalAlignment",
|
|
63
185
|
"Chunk",
|
|
64
186
|
"ChunkContentItem",
|
|
65
187
|
"ChunkContentItem_ImageUrl",
|
|
@@ -68,16 +190,20 @@ __all__ = [
|
|
|
68
190
|
"ChunkResultChunkId",
|
|
69
191
|
"Content",
|
|
70
192
|
"ConversationAssetInfo",
|
|
193
|
+
"ConversationMessage",
|
|
194
|
+
"ConversationResult",
|
|
195
|
+
"CreatableAssetType",
|
|
196
|
+
"CreateAssetResponseOut",
|
|
71
197
|
"CreateNewSheetTabResponse",
|
|
198
|
+
"CreateProjectResponseOut",
|
|
72
199
|
"CustomAgentResponse",
|
|
73
200
|
"DataFrameRequestOut",
|
|
74
201
|
"DataFrameRequestOutColumnsItem",
|
|
75
202
|
"DataFrameRequestOutDataItemItem",
|
|
76
203
|
"DataFrameRequestOutIndexItem",
|
|
77
204
|
"DataFrameUnknownFormatError",
|
|
78
|
-
"
|
|
205
|
+
"DimensionProperties",
|
|
79
206
|
"DriveAgentResponse",
|
|
80
|
-
"FileChunkRequestOut",
|
|
81
207
|
"FileTooLargeError",
|
|
82
208
|
"FolderResponse",
|
|
83
209
|
"GeneralAgentConfig",
|
|
@@ -87,21 +213,30 @@ __all__ = [
|
|
|
87
213
|
"GeneralAgentResponseMessage",
|
|
88
214
|
"GeneralAgentResponseMessageKwargs",
|
|
89
215
|
"GetTableResponse",
|
|
216
|
+
"GridRange",
|
|
90
217
|
"Id",
|
|
91
218
|
"ImageUrlContent",
|
|
92
219
|
"InputMessage",
|
|
93
220
|
"InputMessageContentItem",
|
|
94
221
|
"InputMessageContentItem_ImageUrl",
|
|
95
222
|
"InputMessageContentItem_Text",
|
|
223
|
+
"NumberFormatModel",
|
|
224
|
+
"NumberFormatType",
|
|
96
225
|
"PaginatedAssetsOut",
|
|
97
226
|
"PromptMessage",
|
|
98
227
|
"PublicAssetOut",
|
|
99
228
|
"ResearchAgentResponse",
|
|
100
229
|
"SaveAssetRequestOut",
|
|
230
|
+
"Sheet",
|
|
101
231
|
"SheetOperationResponse",
|
|
102
232
|
"SqlAgentResponse",
|
|
103
233
|
"StructuredDataExtractorResponse",
|
|
234
|
+
"TableRowData",
|
|
104
235
|
"TextContent",
|
|
236
|
+
"TextFormatModel",
|
|
237
|
+
"Textrotation",
|
|
238
|
+
"ThemeColor",
|
|
105
239
|
"ThreadStatusResponseOut",
|
|
106
240
|
"Type",
|
|
241
|
+
"WrapStrategy",
|
|
107
242
|
]
|
|
@@ -4,6 +4,7 @@ import typing
|
|
|
4
4
|
|
|
5
5
|
import pydantic
|
|
6
6
|
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
7
|
+
from .conversation_result import ConversationResult
|
|
7
8
|
|
|
8
9
|
|
|
9
10
|
class AopExecuteResponseOut(UniversalBaseModel):
|
|
@@ -31,7 +32,7 @@ class AopExecuteResponseOut(UniversalBaseModel):
|
|
|
31
32
|
Base prompt of the AOP before user inputs were added
|
|
32
33
|
"""
|
|
33
34
|
|
|
34
|
-
conversation: typing.Optional[
|
|
35
|
+
conversation: typing.Optional[ConversationResult] = pydantic.Field(default=None)
|
|
35
36
|
"""
|
|
36
37
|
The conversation result from the AOP execution
|
|
37
38
|
"""
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
import pydantic
|
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
7
|
+
from .border_style import BorderStyle
|
|
8
|
+
from .theme_color import ThemeColor
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class BorderModel(UniversalBaseModel):
|
|
12
|
+
color_hex: typing.Optional[str] = pydantic.Field(default=None)
|
|
13
|
+
"""
|
|
14
|
+
Border color as hex string (e.g., '#FF0000'). Use either color_hex or color_theme, not both.
|
|
15
|
+
"""
|
|
16
|
+
|
|
17
|
+
color_theme: typing.Optional[ThemeColor] = pydantic.Field(default=None)
|
|
18
|
+
"""
|
|
19
|
+
Border color as theme reference. Use either color_hex or color_theme, not both. Defaults to theme color 1 if neither is specified.
|
|
20
|
+
"""
|
|
21
|
+
|
|
22
|
+
style: BorderStyle
|
|
23
|
+
width: int
|
|
24
|
+
|
|
25
|
+
if IS_PYDANTIC_V2:
|
|
26
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
27
|
+
else:
|
|
28
|
+
|
|
29
|
+
class Config:
|
|
30
|
+
frozen = True
|
|
31
|
+
smart_union = True
|
|
32
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
import pydantic
|
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
7
|
+
from .border_model import BorderModel
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class BordersModel(UniversalBaseModel):
|
|
11
|
+
"""
|
|
12
|
+
Border configuration for spreadsheet cells. Set individual borders (top, right, bottom, left) to apply borders around cells.
|
|
13
|
+
|
|
14
|
+
Common border patterns:
|
|
15
|
+
- All borders: Set all four sides (top, right, bottom, left) to create borders around every cell
|
|
16
|
+
- Outer border only: For a range A1:C3, only the perimeter cells get borders (first row gets top, last row gets bottom, etc.)
|
|
17
|
+
- Inner borders only: Only borders between cells, not on the outer edges
|
|
18
|
+
- Horizontal lines: Set only top and/or bottom borders
|
|
19
|
+
- Vertical lines: Set only left and/or right borders
|
|
20
|
+
- Single side: Set only one border (e.g., just bottom for underline effect)
|
|
21
|
+
|
|
22
|
+
Note: Borders are applied per-cell. Each cell's border properties control which edges of that specific cell have borders. Overlapping borders between adjacent cells will appear as a single line.
|
|
23
|
+
|
|
24
|
+
Examples:
|
|
25
|
+
- Box around range: Set all four borders on all cells in the range
|
|
26
|
+
- Table with grid: Set all four borders to create a complete grid
|
|
27
|
+
- Underline header: Set only bottom border on header row
|
|
28
|
+
- Separate sections: Set bottom border to divide content
|
|
29
|
+
"""
|
|
30
|
+
|
|
31
|
+
bottom: typing.Optional[BorderModel] = pydantic.Field(default=None)
|
|
32
|
+
"""
|
|
33
|
+
Bottom border of the cell
|
|
34
|
+
"""
|
|
35
|
+
|
|
36
|
+
left: typing.Optional[BorderModel] = pydantic.Field(default=None)
|
|
37
|
+
"""
|
|
38
|
+
Left border of the cell
|
|
39
|
+
"""
|
|
40
|
+
|
|
41
|
+
right: typing.Optional[BorderModel] = pydantic.Field(default=None)
|
|
42
|
+
"""
|
|
43
|
+
Right border of the cell
|
|
44
|
+
"""
|
|
45
|
+
|
|
46
|
+
top: typing.Optional[BorderModel] = pydantic.Field(default=None)
|
|
47
|
+
"""
|
|
48
|
+
Top border of the cell
|
|
49
|
+
"""
|
|
50
|
+
|
|
51
|
+
if IS_PYDANTIC_V2:
|
|
52
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
53
|
+
else:
|
|
54
|
+
|
|
55
|
+
class Config:
|
|
56
|
+
frozen = True
|
|
57
|
+
smart_union = True
|
|
58
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
import pydantic
|
|
6
|
+
import typing_extensions
|
|
7
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
8
|
+
from ..core.serialization import FieldMetadata
|
|
9
|
+
from .borders_model import BordersModel
|
|
10
|
+
from .cell_format_horizontal_alignment import CellFormatHorizontalAlignment
|
|
11
|
+
from .cell_format_vertical_alignment import CellFormatVerticalAlignment
|
|
12
|
+
from .number_format_model import NumberFormatModel
|
|
13
|
+
from .text_format_model import TextFormatModel
|
|
14
|
+
from .textrotation import Textrotation
|
|
15
|
+
from .theme_color import ThemeColor
|
|
16
|
+
from .wrap_strategy import WrapStrategy
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
class CellFormat(UniversalBaseModel):
|
|
20
|
+
background_color_hex: typing_extensions.Annotated[
|
|
21
|
+
typing.Optional[str], FieldMetadata(alias="backgroundColor_hex")
|
|
22
|
+
] = pydantic.Field(default=None)
|
|
23
|
+
"""
|
|
24
|
+
Background color as hex string (e.g., '#FF0000'). Use either backgroundColor_hex or backgroundColor_theme, not both.
|
|
25
|
+
"""
|
|
26
|
+
|
|
27
|
+
background_color_theme: typing_extensions.Annotated[
|
|
28
|
+
typing.Optional[ThemeColor], FieldMetadata(alias="backgroundColor_theme")
|
|
29
|
+
] = pydantic.Field(default=None)
|
|
30
|
+
"""
|
|
31
|
+
Background color as theme reference. Use either backgroundColor_hex or backgroundColor_theme, not both.
|
|
32
|
+
"""
|
|
33
|
+
|
|
34
|
+
borders: typing.Optional[BordersModel] = None
|
|
35
|
+
horizontal_alignment: typing_extensions.Annotated[
|
|
36
|
+
typing.Optional[CellFormatHorizontalAlignment], FieldMetadata(alias="horizontalAlignment")
|
|
37
|
+
] = None
|
|
38
|
+
indent: typing.Optional[int] = None
|
|
39
|
+
number_format: typing_extensions.Annotated[
|
|
40
|
+
typing.Optional[NumberFormatModel], FieldMetadata(alias="numberFormat")
|
|
41
|
+
] = None
|
|
42
|
+
text_format: typing_extensions.Annotated[typing.Optional[TextFormatModel], FieldMetadata(alias="textFormat")] = None
|
|
43
|
+
text_rotation: typing_extensions.Annotated[typing.Optional[Textrotation], FieldMetadata(alias="textRotation")] = (
|
|
44
|
+
None
|
|
45
|
+
)
|
|
46
|
+
vertical_alignment: typing_extensions.Annotated[
|
|
47
|
+
typing.Optional[CellFormatVerticalAlignment], FieldMetadata(alias="verticalAlignment")
|
|
48
|
+
] = None
|
|
49
|
+
wrap_strategy: typing_extensions.Annotated[typing.Optional[WrapStrategy], FieldMetadata(alias="wrapStrategy")] = (
|
|
50
|
+
None
|
|
51
|
+
)
|
|
52
|
+
|
|
53
|
+
if IS_PYDANTIC_V2:
|
|
54
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
55
|
+
else:
|
|
56
|
+
|
|
57
|
+
class Config:
|
|
58
|
+
frozen = True
|
|
59
|
+
smart_union = True
|
|
60
|
+
extra = pydantic.Extra.allow
|
|
@@ -4,6 +4,7 @@ import typing
|
|
|
4
4
|
|
|
5
5
|
import pydantic
|
|
6
6
|
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
7
|
+
from .conversation_message import ConversationMessage
|
|
7
8
|
|
|
8
9
|
|
|
9
10
|
class ConversationAssetInfo(UniversalBaseModel):
|
|
@@ -36,12 +37,17 @@ class ConversationAssetInfo(UniversalBaseModel):
|
|
|
36
37
|
User ID who created the conversation
|
|
37
38
|
"""
|
|
38
39
|
|
|
40
|
+
error: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = pydantic.Field(default=None)
|
|
41
|
+
"""
|
|
42
|
+
Error details if the conversation execution failed
|
|
43
|
+
"""
|
|
44
|
+
|
|
39
45
|
last_channel: typing.Optional[str] = pydantic.Field(default=None)
|
|
40
46
|
"""
|
|
41
47
|
Last active channel for the conversation
|
|
42
48
|
"""
|
|
43
49
|
|
|
44
|
-
last_message: typing.Optional[
|
|
50
|
+
last_message: typing.Optional[ConversationMessage] = pydantic.Field(default=None)
|
|
45
51
|
"""
|
|
46
52
|
Last message in the conversation
|
|
47
53
|
"""
|
|
@@ -60,7 +66,7 @@ class ConversationAssetInfo(UniversalBaseModel):
|
|
|
60
66
|
List of linked project assets
|
|
61
67
|
"""
|
|
62
68
|
|
|
63
|
-
messages: typing.Optional[typing.List[
|
|
69
|
+
messages: typing.Optional[typing.List[ConversationMessage]] = pydantic.Field(default=None)
|
|
64
70
|
"""
|
|
65
71
|
Complete list of messages in the conversation from checkpoints
|
|
66
72
|
"""
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
import pydantic
|
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
7
|
+
from .content import Content
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class ConversationMessage(UniversalBaseModel):
|
|
11
|
+
"""
|
|
12
|
+
Model representing a single conversation message.
|
|
13
|
+
"""
|
|
14
|
+
|
|
15
|
+
additional_kwargs: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = pydantic.Field(default=None)
|
|
16
|
+
"""
|
|
17
|
+
Additional message metadata
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
content: Content = pydantic.Field()
|
|
21
|
+
"""
|
|
22
|
+
Message content as text or structured content blocks
|
|
23
|
+
"""
|
|
24
|
+
|
|
25
|
+
id: str = pydantic.Field()
|
|
26
|
+
"""
|
|
27
|
+
Unique identifier for the message
|
|
28
|
+
"""
|
|
29
|
+
|
|
30
|
+
role: str = pydantic.Field()
|
|
31
|
+
"""
|
|
32
|
+
Role of the message sender (user, assistant, system)
|
|
33
|
+
"""
|
|
34
|
+
|
|
35
|
+
if IS_PYDANTIC_V2:
|
|
36
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
37
|
+
else:
|
|
38
|
+
|
|
39
|
+
class Config:
|
|
40
|
+
frozen = True
|
|
41
|
+
smart_union = True
|
|
42
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
|
|
5
|
+
import pydantic
|
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
7
|
+
from .conversation_message import ConversationMessage
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class ConversationResult(UniversalBaseModel):
|
|
11
|
+
"""
|
|
12
|
+
Model representing the conversation result from task/AOP execution.
|
|
13
|
+
"""
|
|
14
|
+
|
|
15
|
+
conversation_id: typing.Optional[str] = pydantic.Field(default=None)
|
|
16
|
+
"""
|
|
17
|
+
ID of the conversation asset
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
created_at: typing.Optional[str] = pydantic.Field(default=None)
|
|
21
|
+
"""
|
|
22
|
+
ISO timestamp when conversation was created
|
|
23
|
+
"""
|
|
24
|
+
|
|
25
|
+
last_assistant_message: typing.Optional[ConversationMessage] = pydantic.Field(default=None)
|
|
26
|
+
"""
|
|
27
|
+
The last message from the assistant
|
|
28
|
+
"""
|
|
29
|
+
|
|
30
|
+
messages: typing.Optional[typing.List[ConversationMessage]] = pydantic.Field(default=None)
|
|
31
|
+
"""
|
|
32
|
+
Complete list of messages in the conversation
|
|
33
|
+
"""
|
|
34
|
+
|
|
35
|
+
messages_source: str = pydantic.Field()
|
|
36
|
+
"""
|
|
37
|
+
Source of the messages (e.g., 'checkpoints')
|
|
38
|
+
"""
|
|
39
|
+
|
|
40
|
+
metadata: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = pydantic.Field(default=None)
|
|
41
|
+
"""
|
|
42
|
+
Additional conversation metadata
|
|
43
|
+
"""
|
|
44
|
+
|
|
45
|
+
num_messages: int = pydantic.Field()
|
|
46
|
+
"""
|
|
47
|
+
Total number of messages in the conversation
|
|
48
|
+
"""
|
|
49
|
+
|
|
50
|
+
title: typing.Optional[str] = pydantic.Field(default=None)
|
|
51
|
+
"""
|
|
52
|
+
Title of the conversation
|
|
53
|
+
"""
|
|
54
|
+
|
|
55
|
+
updated_at: typing.Optional[str] = pydantic.Field(default=None)
|
|
56
|
+
"""
|
|
57
|
+
ISO timestamp when conversation was last updated
|
|
58
|
+
"""
|
|
59
|
+
|
|
60
|
+
if IS_PYDANTIC_V2:
|
|
61
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
62
|
+
else:
|
|
63
|
+
|
|
64
|
+
class Config:
|
|
65
|
+
frozen = True
|
|
66
|
+
smart_union = True
|
|
67
|
+
extra = pydantic.Extra.allow
|